diff --git a/packages/svelte/src/internal/client/dev/tracing.js b/packages/svelte/src/internal/client/dev/tracing.js index 0b0304fe7f..e424ebed6a 100644 --- a/packages/svelte/src/internal/client/dev/tracing.js +++ b/packages/svelte/src/internal/client/dev/tracing.js @@ -189,3 +189,13 @@ export function tag(source, name) { source.trace_name = name; return source; } + +/** + * @param {unknown} value + */ +export function label(value) { + if (typeof value === 'symbol') return `Symbol(${value.description})`; + if (typeof value === 'function') return ''; + if (typeof value === 'object' && value) return ''; + return String(value); +} diff --git a/packages/svelte/src/reactivity/map.js b/packages/svelte/src/reactivity/map.js index bfa03e1a8b..eed163dbf2 100644 --- a/packages/svelte/src/reactivity/map.js +++ b/packages/svelte/src/reactivity/map.js @@ -1,7 +1,7 @@ /** @import { Source } from '#client' */ import { DEV } from 'esm-env'; import { set, source } from '../internal/client/reactivity/sources.js'; -import { tag } from '../internal/client/dev/tracing.js'; +import { label, tag } from '../internal/client/dev/tracing.js'; import { get } from '../internal/client/runtime.js'; import { increment } from './utils.js'; @@ -90,8 +90,7 @@ export class SvelteMap extends Map { s = source(0); if (DEV) { - var label = `SvelteMap Entry [${typeof key === 'symbol' ? `Symbol(${key.description})` : key}]`; - tag(s, label); + tag(s, `SvelteMap get(${label(key)})`); } sources.set(key, s); @@ -127,8 +126,7 @@ export class SvelteMap extends Map { s = source(0); if (DEV) { - var label = `SvelteMap Entry [${typeof key === 'symbol' ? `Symbol(${key.description})` : key}]`; - tag(s, label); + tag(s, `SvelteMap get(${label(key)})`); } sources.set(key, s); @@ -159,8 +157,7 @@ export class SvelteMap extends Map { s = source(0); if (DEV) { - var label = `SvelteMap Entry [${typeof key === 'symbol' ? `Symbol(${key.description})` : key}]`; - tag(s, label); + tag(s, `SvelteMap get(${label(key)})`); } sources.set(key, s); @@ -225,8 +222,7 @@ export class SvelteMap extends Map { var s = source(0); if (DEV) { - var label = `SvelteMap Entry [${typeof key === 'symbol' ? `Symbol(${key.description})` : key}]`; - tag(s, label); + tag(s, `SvelteMap get(${label(key)})`); } sources.set(key, s); diff --git a/packages/svelte/src/reactivity/set.js b/packages/svelte/src/reactivity/set.js index 30d5d272f9..fd22014cb3 100644 --- a/packages/svelte/src/reactivity/set.js +++ b/packages/svelte/src/reactivity/set.js @@ -1,7 +1,7 @@ /** @import { Source } from '#client' */ import { DEV } from 'esm-env'; import { source, set } from '../internal/client/reactivity/sources.js'; -import { tag } from '../internal/client/dev/tracing.js'; +import { label, tag } from '../internal/client/dev/tracing.js'; import { get } from '../internal/client/runtime.js'; import { increment } from './utils.js'; @@ -119,8 +119,7 @@ export class SvelteSet extends Set { s = source(true); if (DEV) { - var label = `SvelteSet Entry [${typeof value === 'symbol' ? `Symbol(${value.description})` : value}]`; - tag(s, label); + tag(s, `SvelteSet has(${label(value)})`); } sources.set(value, s);