UNPKG

web-atoms-core

Version:
39 lines (31 loc) 990 B
import AtomMap from "../core/AtomMap"; export class TypeKey { public static get(c: any): string { // for (const iterator of this.keys) { // if (iterator.c === c) { // return iterator.key; // } // } // const key = `${c.name || "key"}${this.keys.length}`; // this.keys.push({ c, key}); // return key; return TypeKey.keys.getOrCreate(c, (c1) => { const key = `${c1.name || "key"}${TypeKey.keys.size}`; return key; }); } private static keys: AtomMap<any, any> = new AtomMap(); } // if (Map !== undefined) { // const map = new Map<any, string>(); // const oldGet = TypeKey.get; // TypeKey.get = (c: any): string => { // const v = map.get(c); // if (!v) { // return v; // } // const v1 = oldGet(c); // map.set(c, v1); // return v1; // }; // }