Compare commits
No commits in common. "dfc24d3c58e2dbd009dff4fb2dd2ae9a96be1131" and "097351a7aa89bb9b4d79b0eb9b21ed039fdf092a" have entirely different histories.
dfc24d3c58
...
097351a7aa
7 changed files with 21 additions and 93 deletions
|
|
@ -187,42 +187,6 @@ void main() {
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Seed two demo flows so the Flows page shows the real list
|
|
||||||
// instead of its empty state (and proves the missing-module
|
|
||||||
// logic both ways): hello needs debug.echo — not installed on
|
|
||||||
// the fixture hub, so it must carry the "1 module missing"
|
|
||||||
// note; the approval flow only uses the hub builtin
|
|
||||||
// system.approval and must show a plain play button.
|
|
||||||
final flowsDir = Directory(
|
|
||||||
'${Platform.environment['HOME']}/.chain/data/flows',
|
|
||||||
)..createSync(recursive: true);
|
|
||||||
File('${flowsDir.path}/hello.yaml').writeAsStringSync(
|
|
||||||
'# F∆I sample flow\n'
|
|
||||||
'inputs:\n'
|
|
||||||
' name:\n'
|
|
||||||
' type: string\n'
|
|
||||||
'steps:\n'
|
|
||||||
' - id: echo\n'
|
|
||||||
' use: debug.echo@^0\n'
|
|
||||||
' with:\n'
|
|
||||||
' text: "Hello, {{ inputs.name }}!"\n'
|
|
||||||
'outputs:\n'
|
|
||||||
' greeting: "{{ steps.echo.text }}"\n',
|
|
||||||
);
|
|
||||||
File('${flowsDir.path}/genehmigung-demo.yaml').writeAsStringSync(
|
|
||||||
'# F∆I sample flow\n'
|
|
||||||
'inputs:\n'
|
|
||||||
' antrag:\n'
|
|
||||||
' type: string\n'
|
|
||||||
'steps:\n'
|
|
||||||
' - id: freigabe\n'
|
|
||||||
' use: system.approval@^0\n'
|
|
||||||
' with:\n'
|
|
||||||
' show: "{{ inputs.antrag }}"\n'
|
|
||||||
'outputs:\n'
|
|
||||||
' entscheidung: "{{ steps.freigabe.decision }}"\n',
|
|
||||||
);
|
|
||||||
|
|
||||||
// Hermetic prefs: never read or write the operator's real ones.
|
// Hermetic prefs: never read or write the operator's real ones.
|
||||||
SharedPreferences.setMockInitialValues({});
|
SharedPreferences.setMockInitialValues({});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1067,7 +1067,7 @@
|
||||||
"approvalsTabPending": "Offen",
|
"approvalsTabPending": "Offen",
|
||||||
"approvalsTabHistory": "Verlauf",
|
"approvalsTabHistory": "Verlauf",
|
||||||
"approvalsInboxZero": "Posteingang leer",
|
"approvalsInboxZero": "Posteingang leer",
|
||||||
"approvalsInboxHint": "Alles erledigt. Wenn ein Flow eine menschliche Freigabe verlangt, erscheint die Anfrage automatisch hier.",
|
"approvalsInboxHint": "Alles erledigt. Neue `system.approval@^0`-Schritte landen automatisch hier.",
|
||||||
"approvalsReloadTooltip": "Aktualisieren",
|
"approvalsReloadTooltip": "Aktualisieren",
|
||||||
"approvalsPillPending": "offen",
|
"approvalsPillPending": "offen",
|
||||||
"approvalsPillApproved": "freigegeben",
|
"approvalsPillApproved": "freigegeben",
|
||||||
|
|
@ -1149,7 +1149,7 @@
|
||||||
"doctorSummaryApprovals": "Freigaben",
|
"doctorSummaryApprovals": "Freigaben",
|
||||||
"doctorSummaryAudit": "Protokoll",
|
"doctorSummaryAudit": "Protokoll",
|
||||||
"doctorSummaryServices": "Dienste",
|
"doctorSummaryServices": "Dienste",
|
||||||
"doctorSummaryCapabilities": "{n, plural, =1{1 Fähigkeit} other{{n} Fähigkeiten}}",
|
"doctorSummaryCapabilities": "{n} Fähigkeiten",
|
||||||
"@doctorSummaryCapabilities": {
|
"@doctorSummaryCapabilities": {
|
||||||
"placeholders": {
|
"placeholders": {
|
||||||
"n": {
|
"n": {
|
||||||
|
|
@ -1170,7 +1170,7 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"doctorSummaryDeclared": "deklariert",
|
"doctorSummaryDeclared": "deklariert",
|
||||||
"doctorModulesPanelSummary": "{n, plural, =1{1 Modul} other{{n} Module}} · {m, plural, =1{1 Fähigkeit} other{{m} Fähigkeiten}}",
|
"doctorModulesPanelSummary": "{n} Module · {m} Fähigkeiten",
|
||||||
"@doctorModulesPanelSummary": {
|
"@doctorModulesPanelSummary": {
|
||||||
"placeholders": {
|
"placeholders": {
|
||||||
"n": {
|
"n": {
|
||||||
|
|
@ -1225,7 +1225,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"doctorChainPillOk": "Integritätskette geprüft",
|
"doctorChainPillOk": "Integritätskette v1",
|
||||||
"doctorChainPillTamper": "MANIPULIERT",
|
"doctorChainPillTamper": "MANIPULIERT",
|
||||||
"doctorVerifyNow": "Jetzt prüfen",
|
"doctorVerifyNow": "Jetzt prüfen",
|
||||||
"doctorRestart": "Neustart",
|
"doctorRestart": "Neustart",
|
||||||
|
|
|
||||||
|
|
@ -1085,7 +1085,7 @@
|
||||||
"approvalsTabPending": "Pending",
|
"approvalsTabPending": "Pending",
|
||||||
"approvalsTabHistory": "History",
|
"approvalsTabHistory": "History",
|
||||||
"approvalsInboxZero": "Inbox zero",
|
"approvalsInboxZero": "Inbox zero",
|
||||||
"approvalsInboxHint": "All caught up. When a flow asks for a human approval, the request appears here automatically.",
|
"approvalsInboxHint": "All caught up. New `system.approval@^0` steps land here automatically.",
|
||||||
"approvalsReloadTooltip": "Reload",
|
"approvalsReloadTooltip": "Reload",
|
||||||
"approvalsPillPending": "pending",
|
"approvalsPillPending": "pending",
|
||||||
"approvalsPillApproved": "approved",
|
"approvalsPillApproved": "approved",
|
||||||
|
|
@ -1173,7 +1173,7 @@
|
||||||
"doctorSummaryApprovals": "Approvals",
|
"doctorSummaryApprovals": "Approvals",
|
||||||
"doctorSummaryAudit": "Audit",
|
"doctorSummaryAudit": "Audit",
|
||||||
"doctorSummaryServices": "Services",
|
"doctorSummaryServices": "Services",
|
||||||
"doctorSummaryCapabilities": "{n, plural, =1{1 capability} other{{n} capabilities}}",
|
"doctorSummaryCapabilities": "{n} capabilities",
|
||||||
"@doctorSummaryCapabilities": {
|
"@doctorSummaryCapabilities": {
|
||||||
"placeholders": {
|
"placeholders": {
|
||||||
"n": {
|
"n": {
|
||||||
|
|
@ -1194,7 +1194,7 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"doctorSummaryDeclared": "declared",
|
"doctorSummaryDeclared": "declared",
|
||||||
"doctorModulesPanelSummary": "{n, plural, =1{1 module} other{{n} modules}} · {m, plural, =1{1 capability} other{{m} capabilities}}",
|
"doctorModulesPanelSummary": "{n} modules · {m} capabilities",
|
||||||
"@doctorModulesPanelSummary": {
|
"@doctorModulesPanelSummary": {
|
||||||
"placeholders": {
|
"placeholders": {
|
||||||
"n": {
|
"n": {
|
||||||
|
|
@ -1249,7 +1249,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"doctorChainPillOk": "Integrity chain verified",
|
"doctorChainPillOk": "Integrity chain v1",
|
||||||
"doctorChainPillTamper": "TAMPER",
|
"doctorChainPillTamper": "TAMPER",
|
||||||
"doctorVerifyNow": "Verify now",
|
"doctorVerifyNow": "Verify now",
|
||||||
"doctorRestart": "Restart",
|
"doctorRestart": "Restart",
|
||||||
|
|
|
||||||
|
|
@ -3359,7 +3359,7 @@ abstract class AppLocalizations {
|
||||||
/// No description provided for @approvalsInboxHint.
|
/// No description provided for @approvalsInboxHint.
|
||||||
///
|
///
|
||||||
/// In en, this message translates to:
|
/// In en, this message translates to:
|
||||||
/// **'All caught up. When a flow asks for a human approval, the request appears here automatically.'**
|
/// **'All caught up. New `system.approval@^0` steps land here automatically.'**
|
||||||
String get approvalsInboxHint;
|
String get approvalsInboxHint;
|
||||||
|
|
||||||
/// No description provided for @approvalsReloadTooltip.
|
/// No description provided for @approvalsReloadTooltip.
|
||||||
|
|
@ -3563,7 +3563,7 @@ abstract class AppLocalizations {
|
||||||
/// No description provided for @doctorSummaryCapabilities.
|
/// No description provided for @doctorSummaryCapabilities.
|
||||||
///
|
///
|
||||||
/// In en, this message translates to:
|
/// In en, this message translates to:
|
||||||
/// **'{n, plural, =1{1 capability} other{{n} capabilities}}'**
|
/// **'{n} capabilities'**
|
||||||
String doctorSummaryCapabilities(int n);
|
String doctorSummaryCapabilities(int n);
|
||||||
|
|
||||||
/// No description provided for @doctorSummaryPending.
|
/// No description provided for @doctorSummaryPending.
|
||||||
|
|
@ -3587,7 +3587,7 @@ abstract class AppLocalizations {
|
||||||
/// No description provided for @doctorModulesPanelSummary.
|
/// No description provided for @doctorModulesPanelSummary.
|
||||||
///
|
///
|
||||||
/// In en, this message translates to:
|
/// In en, this message translates to:
|
||||||
/// **'{n, plural, =1{1 module} other{{n} modules}} · {m, plural, =1{1 capability} other{{m} capabilities}}'**
|
/// **'{n} modules · {m} capabilities'**
|
||||||
String doctorModulesPanelSummary(int n, int m);
|
String doctorModulesPanelSummary(int n, int m);
|
||||||
|
|
||||||
/// No description provided for @doctorApprovalsNone.
|
/// No description provided for @doctorApprovalsNone.
|
||||||
|
|
@ -3695,7 +3695,7 @@ abstract class AppLocalizations {
|
||||||
/// No description provided for @doctorChainPillOk.
|
/// No description provided for @doctorChainPillOk.
|
||||||
///
|
///
|
||||||
/// In en, this message translates to:
|
/// In en, this message translates to:
|
||||||
/// **'Integrity chain verified'**
|
/// **'Integrity chain v1'**
|
||||||
String get doctorChainPillOk;
|
String get doctorChainPillOk;
|
||||||
|
|
||||||
/// No description provided for @doctorChainPillTamper.
|
/// No description provided for @doctorChainPillTamper.
|
||||||
|
|
|
||||||
|
|
@ -1941,7 +1941,7 @@ class AppLocalizationsDe extends AppLocalizations {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get approvalsInboxHint =>
|
String get approvalsInboxHint =>
|
||||||
'Alles erledigt. Wenn ein Flow eine menschliche Freigabe verlangt, erscheint die Anfrage automatisch hier.';
|
'Alles erledigt. Neue `system.approval@^0`-Schritte landen automatisch hier.';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get approvalsReloadTooltip => 'Aktualisieren';
|
String get approvalsReloadTooltip => 'Aktualisieren';
|
||||||
|
|
@ -2063,13 +2063,7 @@ class AppLocalizationsDe extends AppLocalizations {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String doctorSummaryCapabilities(int n) {
|
String doctorSummaryCapabilities(int n) {
|
||||||
String _temp0 = intl.Intl.pluralLogic(
|
return '$n Fähigkeiten';
|
||||||
n,
|
|
||||||
locale: localeName,
|
|
||||||
other: '$n Fähigkeiten',
|
|
||||||
one: '1 Fähigkeit',
|
|
||||||
);
|
|
||||||
return '$_temp0';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|
@ -2085,19 +2079,7 @@ class AppLocalizationsDe extends AppLocalizations {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String doctorModulesPanelSummary(int n, int m) {
|
String doctorModulesPanelSummary(int n, int m) {
|
||||||
String _temp0 = intl.Intl.pluralLogic(
|
return '$n Module · $m Fähigkeiten';
|
||||||
n,
|
|
||||||
locale: localeName,
|
|
||||||
other: '$n Module',
|
|
||||||
one: '1 Modul',
|
|
||||||
);
|
|
||||||
String _temp1 = intl.Intl.pluralLogic(
|
|
||||||
m,
|
|
||||||
locale: localeName,
|
|
||||||
other: '$m Fähigkeiten',
|
|
||||||
one: '1 Fähigkeit',
|
|
||||||
);
|
|
||||||
return '$_temp0 · $_temp1';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|
@ -2171,7 +2153,7 @@ class AppLocalizationsDe extends AppLocalizations {
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get doctorChainPillOk => 'Integritätskette geprüft';
|
String get doctorChainPillOk => 'Integritätskette v1';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get doctorChainPillTamper => 'MANIPULIERT';
|
String get doctorChainPillTamper => 'MANIPULIERT';
|
||||||
|
|
|
||||||
|
|
@ -1950,7 +1950,7 @@ class AppLocalizationsEn extends AppLocalizations {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get approvalsInboxHint =>
|
String get approvalsInboxHint =>
|
||||||
'All caught up. When a flow asks for a human approval, the request appears here automatically.';
|
'All caught up. New `system.approval@^0` steps land here automatically.';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get approvalsReloadTooltip => 'Reload';
|
String get approvalsReloadTooltip => 'Reload';
|
||||||
|
|
@ -2070,13 +2070,7 @@ class AppLocalizationsEn extends AppLocalizations {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String doctorSummaryCapabilities(int n) {
|
String doctorSummaryCapabilities(int n) {
|
||||||
String _temp0 = intl.Intl.pluralLogic(
|
return '$n capabilities';
|
||||||
n,
|
|
||||||
locale: localeName,
|
|
||||||
other: '$n capabilities',
|
|
||||||
one: '1 capability',
|
|
||||||
);
|
|
||||||
return '$_temp0';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|
@ -2092,19 +2086,7 @@ class AppLocalizationsEn extends AppLocalizations {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String doctorModulesPanelSummary(int n, int m) {
|
String doctorModulesPanelSummary(int n, int m) {
|
||||||
String _temp0 = intl.Intl.pluralLogic(
|
return '$n modules · $m capabilities';
|
||||||
n,
|
|
||||||
locale: localeName,
|
|
||||||
other: '$n modules',
|
|
||||||
one: '1 module',
|
|
||||||
);
|
|
||||||
String _temp1 = intl.Intl.pluralLogic(
|
|
||||||
m,
|
|
||||||
locale: localeName,
|
|
||||||
other: '$m capabilities',
|
|
||||||
one: '1 capability',
|
|
||||||
);
|
|
||||||
return '$_temp0 · $_temp1';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|
@ -2178,7 +2160,7 @@ class AppLocalizationsEn extends AppLocalizations {
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get doctorChainPillOk => 'Integrity chain verified';
|
String get doctorChainPillOk => 'Integrity chain v1';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get doctorChainPillTamper => 'TAMPER';
|
String get doctorChainPillTamper => 'TAMPER';
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ packages:
|
||||||
path: "../fai_chain_studio_flow_editor"
|
path: "../fai_chain_studio_flow_editor"
|
||||||
relative: true
|
relative: true
|
||||||
source: path
|
source: path
|
||||||
version: "0.24.0"
|
version: "0.23.0"
|
||||||
characters:
|
characters:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue