From d6be2896033cfc1c49e5e8b8bdad32a1a1132867 Mon Sep 17 00:00:00 2001 From: hawkgs Date: Mon, 17 Nov 2025 15:29:49 +0200 Subject: [PATCH] fix(devtools): don't round decimal vals previews in the state serializer The actual numerical data can only be checked in the prop edit mode. This fixes that and makes the real value visible all the time. --- .../serialized-descriptor-factory.ts | 2 +- .../state-serializer/state-serializer.spec.ts | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/devtools/projects/ng-devtools-backend/src/lib/state-serializer/serialized-descriptor-factory.ts b/devtools/projects/ng-devtools-backend/src/lib/state-serializer/serialized-descriptor-factory.ts index 0509826bfc6..24a3e4dd1cc 100644 --- a/devtools/projects/ng-devtools-backend/src/lib/state-serializer/serialized-descriptor-factory.ts +++ b/devtools/projects/ng-devtools-backend/src/lib/state-serializer/serialized-descriptor-factory.ts @@ -60,7 +60,7 @@ const typeToDescriptorPreview: Formatter = { [PropType.Function]: (prop: Function) => `${prop.name}(...)`, [PropType.HTMLNode]: (prop: Node) => prop.constructor.name, [PropType.Null]: (_: null) => 'null', - [PropType.Number]: (prop: any) => parseInt(prop, 10).toString(), + [PropType.Number]: (prop: any) => prop.toString(), [PropType.Object]: (prop: Object) => (getKeys(prop).length > 0 ? '{...}' : '{}'), [PropType.Symbol]: (symbol: symbol) => `Symbol(${symbol.description})`, [PropType.Undefined]: (_: undefined) => 'undefined', diff --git a/devtools/projects/ng-devtools-backend/src/lib/state-serializer/state-serializer.spec.ts b/devtools/projects/ng-devtools-backend/src/lib/state-serializer/state-serializer.spec.ts index 5424474b116..ec59e254955 100644 --- a/devtools/projects/ng-devtools-backend/src/lib/state-serializer/state-serializer.spec.ts +++ b/devtools/projects/ng-devtools-backend/src/lib/state-serializer/state-serializer.spec.ts @@ -51,6 +51,7 @@ const QUERY_1_2 = [ const dir1 = { one: 1, + pi: 3.14159, nested: { arr: [ { @@ -95,6 +96,14 @@ describe('deeplySerializeSelectedProperties', () => { value: 1, containerType: null, }, + pi: { + type: PropType.Number, + expandable: false, + editable: true, + preview: '3.14159', + value: 3.14159, + containerType: null, + }, nested: { type: PropType.Object, editable: false, @@ -125,6 +134,14 @@ describe('deeplySerializeSelectedProperties', () => { value: 1, containerType: null, }, + pi: { + type: PropType.Number, + expandable: false, + editable: true, + preview: '3.14159', + value: 3.14159, + containerType: null, + }, nested: { type: PropType.Object, editable: false,