diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index f68e6081996..18d2617c177 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -207,7 +207,7 @@ To ensure consistency throughout the source code, keep these rules in mind as yo
* All public API methods **must be documented**.
* We follow [Google's TypeScript Style Guide][ts-style-guide], but wrap all code at **100 characters**.
- An automated formatter is available, see [DEVELOPER.md](contributing-docs/building-and-testing-angular.md#formatting-your-source-code).
+ An automated formatter is available, see [building-and-testing-angular.md](./contributing-docs/building-and-testing-angular.md#formatting-your-source-code).
## Commit Message Guidelines
diff --git a/devtools/projects/demo-standalone/src/app/demo-app/demo-app.component.ts b/devtools/projects/demo-standalone/src/app/demo-app/demo-app.component.ts
index 147168f9af0..86ef912e195 100644
--- a/devtools/projects/demo-standalone/src/app/demo-app/demo-app.component.ts
+++ b/devtools/projects/demo-standalone/src/app/demo-app/demo-app.component.ts
@@ -14,6 +14,7 @@ import {
ElementRef,
EventEmitter,
inject,
+ InjectionToken,
Injector,
Input,
Output,
@@ -30,6 +31,9 @@ import {ZoneUnawareIFrameMessageBus} from '../../../../../src/zone-unaware-ifram
import {HeavyComponent} from './heavy.component';
import {ZippyComponent} from './zippy.component';
+const NUMBER_TOKEN = new InjectionToken('number-token');
+const SYMBOL_TOKEN = new InjectionToken('symbol-token');
+
@Component({
selector: 'app-demo-component',
templateUrl: './demo-app.component.html',
@@ -37,8 +41,15 @@ import {ZippyComponent} from './zippy.component';
encapsulation: ViewEncapsulation.None,
imports: [HeavyComponent, RouterOutlet, JsonPipe],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
+ providers: [
+ {provide: NUMBER_TOKEN, useValue: 42},
+ {provide: SYMBOL_TOKEN, useValue: Symbol('symbol_token')},
+ ],
})
export class DemoAppComponent {
+ readonly myNumber = inject(NUMBER_TOKEN);
+ readonly mySymbol = inject(SYMBOL_TOKEN);
+
@ViewChild(ZippyComponent) zippy!: ZippyComponent;
@ViewChild('elementReference') elementRef!: ElementRef;
diff --git a/devtools/projects/ng-devtools-backend/src/lib/component-tree/component-tree.ts b/devtools/projects/ng-devtools-backend/src/lib/component-tree/component-tree.ts
index 6e0a8875eda..a0ac488d7f1 100644
--- a/devtools/projects/ng-devtools-backend/src/lib/component-tree/component-tree.ts
+++ b/devtools/projects/ng-devtools-backend/src/lib/component-tree/component-tree.ts
@@ -402,6 +402,10 @@ const valueToLabel = (value: any): string => {
return stripUnderscore(value.name);
}
+ if (typeof value !== 'string') {
+ return String(value);
+ }
+
return stripUnderscore(value);
};