From ba87e5c8df587672e0ec7dc26ed092bcfaa24ec3 Mon Sep 17 00:00:00 2001 From: Kam Date: Mon, 20 Jul 2026 17:26:35 +0300 Subject: [PATCH] feat(devtools): show Angie on the remaining empty-state screens Extend the Angie illustrations to the empty states that were still plain text: the injector providers "No such providers" result, the injector tree unsupported-version notice, the two profiler timeline placeholders, and the router tree unsupported-version notice. Adds the magnifying-glass and question poses as assets; the orthos-back and sad poses are already in the tree. --- .../src/assets/angie-magnifying-glass.svg | 1 + .../ng-devtools/src/assets/angie-question.svg | 1 + .../injector-providers.component.html | 5 ++++- .../injector-providers.component.scss | 16 +++++++++++++++- .../injector-tree/injector-tree.component.html | 7 ++++--- .../injector-tree/injector-tree.component.scss | 15 +++++++++++++++ .../recording-timeline.component.html | 10 ++++++++-- .../recording-timeline.component.scss | 16 +++++++++++++++- .../router-tree/router-tree.component.html | 1 + .../router-tree/router-tree.component.scss | 8 ++++++++ 10 files changed, 72 insertions(+), 8 deletions(-) create mode 100644 devtools/projects/ng-devtools/src/assets/angie-magnifying-glass.svg create mode 100644 devtools/projects/ng-devtools/src/assets/angie-question.svg diff --git a/devtools/projects/ng-devtools/src/assets/angie-magnifying-glass.svg b/devtools/projects/ng-devtools/src/assets/angie-magnifying-glass.svg new file mode 100644 index 000000000000..6565b0101dd4 --- /dev/null +++ b/devtools/projects/ng-devtools/src/assets/angie-magnifying-glass.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/devtools/projects/ng-devtools/src/assets/angie-question.svg b/devtools/projects/ng-devtools/src/assets/angie-question.svg new file mode 100644 index 000000000000..cb0db0de9342 --- /dev/null +++ b/devtools/projects/ng-devtools/src/assets/angie-question.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-providers/injector-providers.component.html b/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-providers/injector-providers.component.html index ae888d4a5329..2185863f638a 100644 --- a/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-providers/injector-providers.component.html +++ b/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-providers/injector-providers.component.html @@ -85,6 +85,9 @@

Providers for {{ injector().name }}

} @else { -

No such providers

+
+ Angie illustration +

No such providers

+
} } diff --git a/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-providers/injector-providers.component.scss b/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-providers/injector-providers.component.scss index aacc1dd2e9eb..9aca1506db1d 100644 --- a/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-providers/injector-providers.component.scss +++ b/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-providers/injector-providers.component.scss @@ -82,8 +82,22 @@ } .no-providers-label { - padding-block: 0.5rem; + flex: 1; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; text-align: center; + + img { + height: 150px; + width: auto; + margin-bottom: 0.5rem; + } + + p { + margin: 0; + } } table { diff --git a/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-tree.component.html b/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-tree.component.html index fe9e42621e7b..a8e8b5bb3ed7 100644 --- a/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-tree.component.html +++ b/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-tree.component.html @@ -1,7 +1,8 @@ @if (!diDebugAPIsAvailable()) { -

- This feature is only available on version 17.0.0 or higher of Angular. -

+
+ Angie illustration +

This feature is only available on version 17.0.0 or higher of Angular.

+
} @else {
diff --git a/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-tree.component.scss b/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-tree.component.scss index 8c3129599394..d6b14b9b0917 100644 --- a/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-tree.component.scss +++ b/devtools/projects/ng-devtools/src/lib/devtools-tabs/injector-tree/injector-tree.component.scss @@ -7,8 +7,23 @@ position: relative; .not-supported { + height: 100%; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; padding: 1rem; text-align: center; + + img { + height: 160px; + width: auto; + margin-bottom: 1rem; + } + + p { + margin: 0; + } } .wrapper { diff --git a/devtools/projects/ng-devtools/src/lib/devtools-tabs/profiler/recording-timeline/recording-timeline.component.html b/devtools/projects/ng-devtools/src/lib/devtools-tabs/profiler/recording-timeline/recording-timeline.component.html index 8323aa36937c..cf7fbbba722d 100644 --- a/devtools/projects/ng-devtools/src/lib/devtools-tabs/profiler/recording-timeline/recording-timeline.component.html +++ b/devtools/projects/ng-devtools/src/lib/devtools-tabs/profiler/recording-timeline/recording-timeline.component.html @@ -1,5 +1,8 @@ @if (!hasFrames() && visualizing()) { -

There's no information to show.

+
+ Angie illustration +

There's no information to show.

+
} @if (hasFrames()) { @@ -13,7 +16,10 @@ @let frame = this.frame(); @if (hasFrames() && !frame) { -

Select a bar to preview a particular change detection cycle.

+
+ Angie illustration +

Select a bar to preview a particular change detection cycle.

+
} @else if (hasFrames() && frame) { Routes Details } @else {
+ Angie illustration

Router tree visualization is available for Angular applications using the latest Angular 20.3.5 release and above. Please upgrade your application to Angular 20.3.5 or newer to use diff --git a/devtools/projects/ng-devtools/src/lib/devtools-tabs/router-tree/router-tree.component.scss b/devtools/projects/ng-devtools/src/lib/devtools-tabs/router-tree/router-tree.component.scss index ee2a054a4c7d..60235de87047 100644 --- a/devtools/projects/ng-devtools/src/lib/devtools-tabs/router-tree/router-tree.component.scss +++ b/devtools/projects/ng-devtools/src/lib/devtools-tabs/router-tree/router-tree.component.scss @@ -117,4 +117,12 @@ .unsupported-version { width: 50%; margin: auto; + text-align: center; + + img { + display: block; + height: 160px; + width: auto; + margin: 0 auto 1rem; + } }