22import { DEV } from 'esm-env' ;
33import { set , source } from '../internal/client/reactivity/sources.js' ;
44import { get } from '../internal/client/runtime.js' ;
5- import { increment } from './utils.js' ;
5+ import { increment , tag_if_necessary } from './utils.js' ;
66
77/**
88 * A reactive version of the built-in [`Map`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) object.
@@ -53,8 +53,8 @@ import { increment } from './utils.js';
5353export class SvelteMap extends Map {
5454 /** @type {Map<K, Source<number>> } */
5555 #sources = new Map ( ) ;
56- #version = source ( 0 ) ;
57- #size = source ( 0 ) ;
56+ #version = tag_if_necessary ( source ( 0 ) , 'SvelteMap version' ) ;
57+ #size = tag_if_necessary ( source ( 0 ) , 'SvelteMap.size' ) ;
5858
5959 /**
6060 * @param {Iterable<readonly [K, V]> | null | undefined } [value]
@@ -81,7 +81,10 @@ export class SvelteMap extends Map {
8181 if ( s === undefined ) {
8282 var ret = super . get ( key ) ;
8383 if ( ret !== undefined ) {
84- s = source ( 0 ) ;
84+ s = tag_if_necessary (
85+ source ( 0 ) ,
86+ `SvelteMap Entry [${ typeof key === 'symbol' ? `Symbol(${ key . description } )` : key } ]`
87+ ) ;
8588 sources . set ( key , s ) ;
8689 } else {
8790 // We should always track the version in case
@@ -112,7 +115,10 @@ export class SvelteMap extends Map {
112115 if ( s === undefined ) {
113116 var ret = super . get ( key ) ;
114117 if ( ret !== undefined ) {
115- s = source ( 0 ) ;
118+ s = tag_if_necessary (
119+ source ( 0 ) ,
120+ `SvelteMap Entry [${ typeof key === 'symbol' ? `Symbol(${ key . description } )` : key } ]`
121+ ) ;
116122 sources . set ( key , s ) ;
117123 } else {
118124 // We should always track the version in case
@@ -138,7 +144,13 @@ export class SvelteMap extends Map {
138144 var version = this . #version;
139145
140146 if ( s === undefined ) {
141- sources . set ( key , source ( 0 ) ) ;
147+ sources . set (
148+ key ,
149+ tag_if_necessary (
150+ source ( 0 ) ,
151+ `SvelteMap Entry [${ typeof key === 'symbol' ? `Symbol(${ key . description } )` : key } ]`
152+ )
153+ ) ;
142154 set ( this . #size, super . size ) ;
143155 increment ( version ) ;
144156 } else if ( prev_res !== value ) {
@@ -197,7 +209,13 @@ export class SvelteMap extends Map {
197209 if ( this . #size. v !== sources . size ) {
198210 for ( var key of super . keys ( ) ) {
199211 if ( ! sources . has ( key ) ) {
200- sources . set ( key , source ( 0 ) ) ;
212+ sources . set (
213+ key ,
214+ tag_if_necessary (
215+ source ( 0 ) ,
216+ `SvelteMap Entry [${ typeof key === 'symbol' ? `Symbol(${ key . description } )` : key } ]`
217+ )
218+ ) ;
201219 }
202220 }
203221 }
0 commit comments