Compare commits

..

No commits in common. "dfc24d3c58e2dbd009dff4fb2dd2ae9a96be1131" and "097351a7aa89bb9b4d79b0eb9b21ed039fdf092a" have entirely different histories.

7 changed files with 21 additions and 93 deletions

View file

@ -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({});

View file

@ -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",

View file

@ -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",

View file

@ -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.

View file

@ -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';

View file

@ -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';

View file

@ -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: