feat(doctor): deep-link findings to the page where they are actioned
Doctor findings used to be dead-end statements — 'approvals waiting for review' left the operator to find the approvals inbox on their own. Every finding with a dedicated surface is now one tap away from it: - summary tiles: modules -> store, approvals -> approvals inbox, audit chain -> audit log (chevron affordance, tooltip + semantics button; the services tile stays plain — no dedicated page) - modules/approvals panel rows link the same way - the event-log headline opens the audit page next to the existing verify button - host-services empty state gains a 'view the configuration' button opening the in-Studio config viewer the hint refers to - the update banner's release-notes URL is now an underlined, clickable link instead of dead text Tiles and the panel are public callback-driven widgets so the widget tests pump them without a live hub. New DE+EN link labels. Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
This commit is contained in:
parent
c18bb7f357
commit
e67e0c9e73
7 changed files with 525 additions and 139 deletions
|
|
@ -1184,6 +1184,11 @@
|
|||
}
|
||||
},
|
||||
"doctorSummaryDeclared": "deklariert",
|
||||
"doctorLinkStore": "Store öffnen",
|
||||
"doctorLinkApprovals": "Freigaben öffnen",
|
||||
"doctorLinkAudit": "Protokoll öffnen",
|
||||
"doctorLinkConfig": "Konfiguration ansehen",
|
||||
"doctorLinkReleaseNotes": "Versionshinweise im Browser öffnen",
|
||||
"doctorModulesPanelSummary": "{n, plural, =1{1 Modul} other{{n} Module}} · {m, plural, =1{1 Fähigkeit} other{{m} Fähigkeiten}}",
|
||||
"@doctorModulesPanelSummary": {
|
||||
"placeholders": {
|
||||
|
|
|
|||
|
|
@ -1208,6 +1208,11 @@
|
|||
}
|
||||
},
|
||||
"doctorSummaryDeclared": "declared",
|
||||
"doctorLinkStore": "Open the store",
|
||||
"doctorLinkApprovals": "Open approvals",
|
||||
"doctorLinkAudit": "Open the audit log",
|
||||
"doctorLinkConfig": "View the configuration",
|
||||
"doctorLinkReleaseNotes": "Open the release notes in the browser",
|
||||
"doctorModulesPanelSummary": "{n, plural, =1{1 module} other{{n} modules}} · {m, plural, =1{1 capability} other{{m} capabilities}}",
|
||||
"@doctorModulesPanelSummary": {
|
||||
"placeholders": {
|
||||
|
|
|
|||
|
|
@ -3662,6 +3662,36 @@ abstract class AppLocalizations {
|
|||
/// **'declared'**
|
||||
String get doctorSummaryDeclared;
|
||||
|
||||
/// No description provided for @doctorLinkStore.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Open the store'**
|
||||
String get doctorLinkStore;
|
||||
|
||||
/// No description provided for @doctorLinkApprovals.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Open approvals'**
|
||||
String get doctorLinkApprovals;
|
||||
|
||||
/// No description provided for @doctorLinkAudit.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Open the audit log'**
|
||||
String get doctorLinkAudit;
|
||||
|
||||
/// No description provided for @doctorLinkConfig.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'View the configuration'**
|
||||
String get doctorLinkConfig;
|
||||
|
||||
/// No description provided for @doctorLinkReleaseNotes.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Open the release notes in the browser'**
|
||||
String get doctorLinkReleaseNotes;
|
||||
|
||||
/// No description provided for @doctorModulesPanelSummary.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
|
|
|||
|
|
@ -2132,6 +2132,21 @@ class AppLocalizationsDe extends AppLocalizations {
|
|||
@override
|
||||
String get doctorSummaryDeclared => 'deklariert';
|
||||
|
||||
@override
|
||||
String get doctorLinkStore => 'Store öffnen';
|
||||
|
||||
@override
|
||||
String get doctorLinkApprovals => 'Freigaben öffnen';
|
||||
|
||||
@override
|
||||
String get doctorLinkAudit => 'Protokoll öffnen';
|
||||
|
||||
@override
|
||||
String get doctorLinkConfig => 'Konfiguration ansehen';
|
||||
|
||||
@override
|
||||
String get doctorLinkReleaseNotes => 'Versionshinweise im Browser öffnen';
|
||||
|
||||
@override
|
||||
String doctorModulesPanelSummary(int n, int m) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
|
|
|
|||
|
|
@ -2136,6 +2136,21 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
@override
|
||||
String get doctorSummaryDeclared => 'declared';
|
||||
|
||||
@override
|
||||
String get doctorLinkStore => 'Open the store';
|
||||
|
||||
@override
|
||||
String get doctorLinkApprovals => 'Open approvals';
|
||||
|
||||
@override
|
||||
String get doctorLinkAudit => 'Open the audit log';
|
||||
|
||||
@override
|
||||
String get doctorLinkConfig => 'View the configuration';
|
||||
|
||||
@override
|
||||
String get doctorLinkReleaseNotes => 'Open the release notes in the browser';
|
||||
|
||||
@override
|
||||
String doctorModulesPanelSummary(int n, int m) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue