@spearwolf/shadow-objects 0.30.1 → 0.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +34 -10
  3. package/bundle.js +13 -13
  4. package/package.json +3 -3
  5. package/src/bundle.js +4 -4
  6. package/src/bundle.js.map +7 -1
  7. package/src/constants.js +53 -40
  8. package/src/constants.js.map +7 -1
  9. package/src/create-worker.bundle.js +6 -8
  10. package/src/create-worker.bundle.js.map +7 -1
  11. package/src/create-worker.js +5 -2
  12. package/src/create-worker.js.map +7 -1
  13. package/src/elements/ShaeElement.js +57 -54
  14. package/src/elements/ShaeElement.js.map +7 -1
  15. package/src/elements/ShaeEntElement.d.ts.map +1 -1
  16. package/src/elements/ShaeEntElement.js +320 -341
  17. package/src/elements/ShaeEntElement.js.map +7 -1
  18. package/src/elements/ShaePropElement.js +312 -320
  19. package/src/elements/ShaePropElement.js.map +7 -1
  20. package/src/elements/ShaeWorkerElement.js +234 -229
  21. package/src/elements/ShaeWorkerElement.js.map +7 -1
  22. package/src/elements/constants.js +37 -22
  23. package/src/elements/constants.js.map +7 -1
  24. package/src/elements/events.d.ts +1 -1
  25. package/src/elements/events.d.ts.map +1 -1
  26. package/src/elements/events.js +1 -2
  27. package/src/elements/events.js.map +7 -1
  28. package/src/elements.js +4 -4
  29. package/src/elements.js.map +7 -1
  30. package/src/in-the-dark/Entity.d.ts +3 -1
  31. package/src/in-the-dark/Entity.d.ts.map +1 -1
  32. package/src/in-the-dark/Entity.js +299 -275
  33. package/src/in-the-dark/Entity.js.map +7 -1
  34. package/src/in-the-dark/Kernel.d.ts +1 -1
  35. package/src/in-the-dark/Kernel.d.ts.map +1 -1
  36. package/src/in-the-dark/Kernel.js +556 -532
  37. package/src/in-the-dark/Kernel.js.map +7 -1
  38. package/src/in-the-dark/Registry.d.ts.map +1 -1
  39. package/src/in-the-dark/Registry.js +101 -104
  40. package/src/in-the-dark/Registry.js.map +7 -1
  41. package/src/in-the-dark/ShadowObject.d.ts.map +1 -1
  42. package/src/in-the-dark/ShadowObject.js +21 -23
  43. package/src/in-the-dark/ShadowObject.js.map +7 -1
  44. package/src/in-the-dark/SignalsPath.d.ts.map +1 -1
  45. package/src/in-the-dark/SignalsPath.js +139 -123
  46. package/src/in-the-dark/SignalsPath.js.map +7 -1
  47. package/src/in-the-dark/events.js +11 -9
  48. package/src/in-the-dark/events.js.map +7 -1
  49. package/src/in-the-dark/importModule.js +31 -29
  50. package/src/in-the-dark/importModule.js.map +7 -1
  51. package/src/index.d.ts +2 -2
  52. package/src/index.d.ts.map +1 -1
  53. package/src/index.js +14 -14
  54. package/src/index.js.map +7 -1
  55. package/src/shadow-objects.js +6 -6
  56. package/src/shadow-objects.js.map +7 -1
  57. package/src/shadow-objects.worker.js +3 -3
  58. package/src/shadow-objects.worker.js.map +7 -1
  59. package/src/shae-ent.js +3 -3
  60. package/src/shae-ent.js.map +7 -1
  61. package/src/shae-prop.js +3 -3
  62. package/src/shae-prop.js.map +7 -1
  63. package/src/shae-worker.js +3 -3
  64. package/src/shae-worker.js.map +7 -1
  65. package/src/types.d.ts +5 -4
  66. package/src/types.d.ts.map +1 -1
  67. package/src/types.js +1 -2
  68. package/src/types.js.map +7 -1
  69. package/src/utils/ConsoleLogger.js +179 -185
  70. package/src/utils/ConsoleLogger.js.map +7 -1
  71. package/src/utils/FrameLoop.js +41 -40
  72. package/src/utils/FrameLoop.js.map +7 -1
  73. package/src/utils/array-utils.js +22 -24
  74. package/src/utils/array-utils.js.map +7 -1
  75. package/src/utils/attr-utils.js +15 -11
  76. package/src/utils/attr-utils.js.map +7 -1
  77. package/src/utils/constants.js +5 -2
  78. package/src/utils/constants.js.map +7 -1
  79. package/src/utils/generateUUID.d.ts.map +1 -1
  80. package/src/utils/generateUUID.js +269 -32
  81. package/src/utils/generateUUID.js.map +7 -1
  82. package/src/utils/props-utils.js +34 -43
  83. package/src/utils/props-utils.js.map +7 -1
  84. package/src/utils/toMaybe.js +5 -2
  85. package/src/utils/toMaybe.js.map +7 -1
  86. package/src/utils/toNamespace.js +6 -3
  87. package/src/utils/toNamespace.js.map +7 -1
  88. package/src/utils/toUrlString.js +9 -6
  89. package/src/utils/toUrlString.js.map +7 -1
  90. package/src/utils/waitForMessageOfType.js +30 -32
  91. package/src/utils/waitForMessageOfType.js.map +7 -1
  92. package/src/view/ComponentChanges.d.ts +1 -1
  93. package/src/view/ComponentChanges.d.ts.map +1 -1
  94. package/src/view/ComponentChanges.js +249 -251
  95. package/src/view/ComponentChanges.js.map +7 -1
  96. package/src/view/ComponentContext.d.ts.map +1 -1
  97. package/src/view/ComponentContext.js +303 -331
  98. package/src/view/ComponentContext.js.map +7 -1
  99. package/src/view/ComponentMemory.d.ts +1 -0
  100. package/src/view/ComponentMemory.d.ts.map +1 -1
  101. package/src/view/ComponentMemory.js +73 -76
  102. package/src/view/ComponentMemory.js.map +7 -1
  103. package/src/view/IShadowObjectEnvProxy.js +1 -2
  104. package/src/view/IShadowObjectEnvProxy.js.map +7 -1
  105. package/src/view/LocalShadowObjectEnv.d.ts.map +1 -1
  106. package/src/view/LocalShadowObjectEnv.js +57 -52
  107. package/src/view/LocalShadowObjectEnv.js.map +7 -1
  108. package/src/view/RemoteWorkerEnv.js +134 -123
  109. package/src/view/RemoteWorkerEnv.js.map +7 -1
  110. package/src/view/ShadowEnv.d.ts.map +1 -1
  111. package/src/view/ShadowEnv.js +232 -228
  112. package/src/view/ShadowEnv.js.map +7 -1
  113. package/src/view/ViewComponent.d.ts +9 -0
  114. package/src/view/ViewComponent.d.ts.map +1 -1
  115. package/src/view/ViewComponent.js +142 -130
  116. package/src/view/ViewComponent.js.map +7 -1
  117. package/src/view/cloneChangeTrail.js +13 -11
  118. package/src/view/cloneChangeTrail.js.map +7 -1
  119. package/src/worker/MessageRouter.d.ts.map +1 -1
  120. package/src/worker/MessageRouter.js +78 -67
  121. package/src/worker/MessageRouter.js.map +7 -1
  122. package/src/worker/WorkerRuntime.js +22 -21
  123. package/src/worker/WorkerRuntime.js.map +7 -1
  124. package/tsconfig.lib.tsbuildinfo +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
package/src/types.js CHANGED
@@ -1,2 +1 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
1
+ //# sourceMappingURL=types.js.map
package/src/types.js.map CHANGED
@@ -1 +1,7 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""}
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -1,195 +1,189 @@
1
- // https://developer.chrome.com/docs/devtools/console/format-style?hl=de
2
- export const CONSOLE_LOGGER = 'ConsoleLogger';
3
- export const CONSOLE_LOGGER_STORAGE = `${CONSOLE_LOGGER}Storage`;
4
- const IS_LOCALHOST = Boolean(globalThis.location?.host?.startsWith('localhost') ?? false);
5
- const HAS_LOCAL_STORAGE = 'localStorage' in globalThis;
1
+ const CONSOLE_LOGGER = "ConsoleLogger";
2
+ const CONSOLE_LOGGER_STORAGE = `${CONSOLE_LOGGER}Storage`;
3
+ const IS_LOCALHOST = Boolean(globalThis.location?.host?.startsWith("localhost") ?? false);
4
+ const HAS_LOCAL_STORAGE = "localStorage" in globalThis;
6
5
  const ConsoleLogger$ = Symbol.for(CONSOLE_LOGGER);
7
6
  let gInitialized = false;
8
7
  const asBoolean = (val) => {
9
- if (typeof val === 'boolean')
10
- return val;
11
- switch (val.toLowerCase()) {
12
- case 'true':
13
- case 'yes':
14
- case 'on':
15
- return true;
16
- default:
17
- return false;
18
- }
8
+ if (typeof val === "boolean") return val;
9
+ switch (val.toLowerCase()) {
10
+ case "true":
11
+ case "yes":
12
+ case "on":
13
+ return true;
14
+ default:
15
+ return false;
16
+ }
19
17
  };
20
- const getKeyPath = (key) => [HAS_LOCAL_STORAGE ? CONSOLE_LOGGER : undefined, ...(Array.isArray(key) ? key : [key])].filter(Boolean).join('.');
21
- function loadConfigValue(key, as = undefined, defaultValue) {
22
- const _key = getKeyPath(key);
23
- // @ts-ignore
24
- const value = HAS_LOCAL_STORAGE ? localStorage.getItem(_key) : globalThis[CONSOLE_LOGGER_STORAGE]?.[_key];
25
- return value != undefined ? as(value) : defaultValue;
18
+ const getKeyPath = (key) => [HAS_LOCAL_STORAGE ? CONSOLE_LOGGER : void 0, ...Array.isArray(key) ? key : [key]].filter(Boolean).join(".");
19
+ function loadConfigValue(key, as = void 0, defaultValue) {
20
+ const _key = getKeyPath(key);
21
+ const value = HAS_LOCAL_STORAGE ? localStorage.getItem(_key) : globalThis[CONSOLE_LOGGER_STORAGE]?.[_key];
22
+ return value != void 0 ? as(value) : defaultValue;
26
23
  }
27
24
  function saveConfigValue(key, val) {
25
+ if (HAS_LOCAL_STORAGE) {
26
+ localStorage.setItem(getKeyPath(key), val);
27
+ } else {
28
+ if (globalThis[CONSOLE_LOGGER_STORAGE] == void 0) {
29
+ globalThis[CONSOLE_LOGGER_STORAGE] = {};
30
+ console.debug(`${CONSOLE_LOGGER}: Initialize`, { [CONSOLE_LOGGER_STORAGE]: globalThis[CONSOLE_LOGGER_STORAGE] });
31
+ }
32
+ globalThis[CONSOLE_LOGGER_STORAGE][getKeyPath(key)] = val;
33
+ }
34
+ }
35
+ class ConsoleLogger {
36
+ constructor(namespace) {
37
+ this.enable = true;
38
+ this.namespace = (namespace || "").trim() || CONSOLE_LOGGER;
39
+ if (!gInitialized) {
40
+ ConsoleLogger.loadConfig();
41
+ gInitialized = true;
42
+ }
43
+ const key = [this.namespace, "enable"];
44
+ this.enable = loadConfigValue(key, asBoolean, this.enable);
45
+ saveConfigValue(key, HAS_LOCAL_STORAGE ? this.enable ? "true" : "false" : this.enable);
46
+ }
47
+ static {
48
+ this.sharedConfig = {
49
+ enable: IS_LOCALHOST,
50
+ debug: false,
51
+ info: true,
52
+ warn: true,
53
+ "styles.debug": "color: #111; background: #999; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em",
54
+ "styles.info": "color: #020; background: #8a8; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em",
55
+ "styles.warn": "color: #fa0; background: #a98; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em",
56
+ "styles.error": "color: #ff0; background: #a00; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em"
57
+ };
58
+ }
59
+ static get isEnabled() {
60
+ return ConsoleLogger.sharedConfig.enable;
61
+ }
62
+ static get isDebug() {
63
+ return ConsoleLogger.sharedConfig.enable && ConsoleLogger.sharedConfig.debug;
64
+ }
65
+ static {
66
+ this.sharedStyles = {
67
+ get debug() {
68
+ return ConsoleLogger.sharedConfig["styles.debug"];
69
+ },
70
+ set debug(val) {
71
+ ConsoleLogger.sharedConfig["styles.debug"] = val;
72
+ },
73
+ get info() {
74
+ return ConsoleLogger.sharedConfig["styles.info"];
75
+ },
76
+ set info(val) {
77
+ ConsoleLogger.sharedConfig["styles.info"] = val;
78
+ },
79
+ get warn() {
80
+ return ConsoleLogger.sharedConfig["styles.warn"];
81
+ },
82
+ set warn(val) {
83
+ ConsoleLogger.sharedConfig["styles.warn"] = val;
84
+ },
85
+ get error() {
86
+ return ConsoleLogger.sharedConfig["styles.error"];
87
+ },
88
+ set error(val) {
89
+ ConsoleLogger.sharedConfig["styles.error"] = val;
90
+ }
91
+ };
92
+ }
93
+ static loadConfig() {
28
94
  if (HAS_LOCAL_STORAGE) {
29
- localStorage.setItem(getKeyPath(key), val);
30
- }
31
- else {
32
- // @ts-ignore
33
- if (globalThis[CONSOLE_LOGGER_STORAGE] == undefined) {
34
- // @ts-ignore
35
- globalThis[CONSOLE_LOGGER_STORAGE] = {};
95
+ ["enable", "debug", "info", "warn"].forEach((key) => {
96
+ this.sharedConfig[key] = loadConfigValue(key, asBoolean, this.sharedConfig[key]);
97
+ });
98
+ ["debug", "info", "warn", "error"].forEach((key) => {
99
+ this.sharedStyles[key] = loadConfigValue(["styles", key], void 0, this.sharedStyles[key]);
100
+ });
101
+ if (ConsoleLogger.isDebug) {
102
+ console.debug(`${CONSOLE_LOGGER}: Load config from localStorage`, ConsoleLogger.sharedConfig);
103
+ }
104
+ if (!globalThis[CONSOLE_LOGGER]?.[ConsoleLogger$]) {
105
+ globalThis[CONSOLE_LOGGER] ??= {
106
+ [ConsoleLogger$]: true,
107
+ get enable() {
108
+ return ConsoleLogger.sharedConfig.enable;
109
+ },
110
+ set enable(val) {
111
+ ConsoleLogger.sharedConfig.enable = val;
112
+ saveConfigValue("enable", val ? "true" : "false");
113
+ },
114
+ get debug() {
115
+ return ConsoleLogger.sharedConfig.debug;
116
+ },
117
+ set debug(val) {
118
+ ConsoleLogger.sharedConfig.debug = val;
119
+ saveConfigValue("debug", val ? "true" : "false");
120
+ },
121
+ get info() {
122
+ return ConsoleLogger.sharedConfig.info;
123
+ },
124
+ set info(val) {
125
+ ConsoleLogger.sharedConfig.info = val;
126
+ saveConfigValue("info", val ? "true" : "false");
127
+ },
128
+ get warn() {
129
+ return ConsoleLogger.sharedConfig.warn;
130
+ },
131
+ set warn(val) {
132
+ ConsoleLogger.sharedConfig.warn = val;
133
+ saveConfigValue("warn", val ? "true" : "false");
134
+ }
135
+ };
136
+ }
137
+ } else {
138
+ if (!globalThis[CONSOLE_LOGGER_STORAGE]?.[ConsoleLogger$]) {
139
+ globalThis[CONSOLE_LOGGER_STORAGE] = {
140
+ [ConsoleLogger$]: true,
141
+ ...ConsoleLogger.sharedConfig,
142
+ // @ts-ignore
143
+ ...globalThis[CONSOLE_LOGGER_STORAGE]
144
+ };
145
+ ConsoleLogger.sharedConfig = globalThis[CONSOLE_LOGGER_STORAGE];
146
+ if (ConsoleLogger.isDebug) {
147
+ console.debug(
148
+ `${CONSOLE_LOGGER}: Load config from ${CONSOLE_LOGGER_STORAGE}`,
36
149
  // @ts-ignore
37
- console.debug(`${CONSOLE_LOGGER}: Initialize`, { [CONSOLE_LOGGER_STORAGE]: globalThis[CONSOLE_LOGGER_STORAGE] });
150
+ globalThis[CONSOLE_LOGGER_STORAGE]
151
+ );
38
152
  }
39
- // @ts-ignore
40
- globalThis[CONSOLE_LOGGER_STORAGE][getKeyPath(key)] = val;
41
- }
153
+ }
154
+ }
155
+ }
156
+ get isEnabled() {
157
+ return this.enable && ConsoleLogger.sharedConfig.enable;
158
+ }
159
+ get isDebug() {
160
+ return this.isEnabled && ConsoleLogger.sharedConfig.debug;
161
+ }
162
+ get isInfo() {
163
+ return this.isEnabled && ConsoleLogger.sharedConfig.info;
164
+ }
165
+ get isWarn() {
166
+ return this.isEnabled && ConsoleLogger.sharedConfig.warn;
167
+ }
168
+ debug(...args) {
169
+ this.#print("debug", ConsoleLogger.sharedStyles.debug, args);
170
+ }
171
+ info(...args) {
172
+ this.#print("info", ConsoleLogger.sharedStyles.info, args);
173
+ }
174
+ warn(...args) {
175
+ this.#print("warn", ConsoleLogger.sharedStyles.warn, args);
176
+ }
177
+ error(...args) {
178
+ this.#print("error", ConsoleLogger.sharedStyles.error, args);
179
+ }
180
+ #print(level, styles, args) {
181
+ console[level](`%c${this.namespace}`, styles, ...args);
182
+ }
42
183
  }
43
- export class ConsoleLogger {
44
- static { this.sharedConfig = {
45
- enable: IS_LOCALHOST,
46
- debug: false,
47
- info: true,
48
- warn: true,
49
- 'styles.debug': 'color: #111; background: #999; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em',
50
- 'styles.info': 'color: #020; background: #8a8; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em',
51
- 'styles.warn': 'color: #fa0; background: #a98; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em',
52
- 'styles.error': 'color: #ff0; background: #a00; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em',
53
- }; }
54
- static get isEnabled() {
55
- return ConsoleLogger.sharedConfig.enable;
56
- }
57
- static get isDebug() {
58
- return ConsoleLogger.sharedConfig.enable && ConsoleLogger.sharedConfig.debug;
59
- }
60
- static { this.sharedStyles = {
61
- get debug() {
62
- return ConsoleLogger.sharedConfig['styles.debug'];
63
- },
64
- set debug(val) {
65
- ConsoleLogger.sharedConfig['styles.debug'] = val;
66
- },
67
- get info() {
68
- return ConsoleLogger.sharedConfig['styles.info'];
69
- },
70
- set info(val) {
71
- ConsoleLogger.sharedConfig['styles.info'] = val;
72
- },
73
- get warn() {
74
- return ConsoleLogger.sharedConfig['styles.warn'];
75
- },
76
- set warn(val) {
77
- ConsoleLogger.sharedConfig['styles.warn'] = val;
78
- },
79
- get error() {
80
- return ConsoleLogger.sharedConfig['styles.error'];
81
- },
82
- set error(val) {
83
- ConsoleLogger.sharedConfig['styles.error'] = val;
84
- },
85
- }; }
86
- static loadConfig() {
87
- if (HAS_LOCAL_STORAGE) {
88
- ['enable', 'debug', 'info', 'warn'].forEach((key) => {
89
- // @ts-ignore
90
- this.sharedConfig[key] = loadConfigValue(key, asBoolean, this.sharedConfig[key]);
91
- });
92
- ['debug', 'info', 'warn', 'error'].forEach((key) => {
93
- // @ts-ignore
94
- this.sharedStyles[key] = loadConfigValue(['styles', key], undefined, this.sharedStyles[key]);
95
- });
96
- if (ConsoleLogger.isDebug) {
97
- console.debug(`${CONSOLE_LOGGER}: Load config from localStorage`, ConsoleLogger.sharedConfig);
98
- }
99
- // @ts-ignore
100
- if (!globalThis[CONSOLE_LOGGER]?.[ConsoleLogger$]) {
101
- // @ts-ignore
102
- globalThis[CONSOLE_LOGGER] ??= {
103
- [ConsoleLogger$]: true,
104
- get enable() {
105
- return ConsoleLogger.sharedConfig.enable;
106
- },
107
- set enable(val) {
108
- ConsoleLogger.sharedConfig.enable = val;
109
- saveConfigValue('enable', val ? 'true' : 'false');
110
- },
111
- get debug() {
112
- return ConsoleLogger.sharedConfig.debug;
113
- },
114
- set debug(val) {
115
- ConsoleLogger.sharedConfig.debug = val;
116
- saveConfigValue('debug', val ? 'true' : 'false');
117
- },
118
- get info() {
119
- return ConsoleLogger.sharedConfig.info;
120
- },
121
- set info(val) {
122
- ConsoleLogger.sharedConfig.info = val;
123
- saveConfigValue('info', val ? 'true' : 'false');
124
- },
125
- get warn() {
126
- return ConsoleLogger.sharedConfig.warn;
127
- },
128
- set warn(val) {
129
- ConsoleLogger.sharedConfig.warn = val;
130
- saveConfigValue('warn', val ? 'true' : 'false');
131
- },
132
- };
133
- }
134
- }
135
- else {
136
- // no localStorage available: in this case we just use globalThis[STORAGE_KEY]
137
- // @ts-ignore
138
- if (!globalThis[CONSOLE_LOGGER_STORAGE]?.[ConsoleLogger$]) {
139
- // @ts-ignore
140
- globalThis[CONSOLE_LOGGER_STORAGE] = {
141
- [ConsoleLogger$]: true,
142
- ...ConsoleLogger.sharedConfig,
143
- // @ts-ignore
144
- ...globalThis[CONSOLE_LOGGER_STORAGE],
145
- };
146
- // @ts-ignore
147
- ConsoleLogger.sharedConfig = globalThis[CONSOLE_LOGGER_STORAGE];
148
- if (ConsoleLogger.isDebug) {
149
- console.debug(`${CONSOLE_LOGGER}: Load config from ${CONSOLE_LOGGER_STORAGE}`,
150
- // @ts-ignore
151
- globalThis[CONSOLE_LOGGER_STORAGE]);
152
- }
153
- }
154
- }
155
- }
156
- constructor(namespace) {
157
- this.enable = true;
158
- this.namespace = (namespace || '').trim() || CONSOLE_LOGGER;
159
- if (!gInitialized) {
160
- ConsoleLogger.loadConfig();
161
- gInitialized = true;
162
- }
163
- const key = [this.namespace, 'enable'];
164
- this.enable = loadConfigValue(key, asBoolean, this.enable);
165
- saveConfigValue(key, HAS_LOCAL_STORAGE ? (this.enable ? 'true' : 'false') : this.enable);
166
- }
167
- get isEnabled() {
168
- return this.enable && ConsoleLogger.sharedConfig.enable;
169
- }
170
- get isDebug() {
171
- return this.isEnabled && ConsoleLogger.sharedConfig.debug;
172
- }
173
- get isInfo() {
174
- return this.isEnabled && ConsoleLogger.sharedConfig.info;
175
- }
176
- get isWarn() {
177
- return this.isEnabled && ConsoleLogger.sharedConfig.warn;
178
- }
179
- debug(...args) {
180
- this.#print('debug', ConsoleLogger.sharedStyles.debug, args);
181
- }
182
- info(...args) {
183
- this.#print('info', ConsoleLogger.sharedStyles.info, args);
184
- }
185
- warn(...args) {
186
- this.#print('warn', ConsoleLogger.sharedStyles.warn, args);
187
- }
188
- error(...args) {
189
- this.#print('error', ConsoleLogger.sharedStyles.error, args);
190
- }
191
- #print(level, styles, args) {
192
- console[level](`%c${this.namespace}`, styles, ...args);
193
- }
194
- }
195
- //# sourceMappingURL=ConsoleLogger.js.map
184
+ export {
185
+ CONSOLE_LOGGER,
186
+ CONSOLE_LOGGER_STORAGE,
187
+ ConsoleLogger
188
+ };
189
+ //# sourceMappingURL=ConsoleLogger.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"ConsoleLogger.js","sourceRoot":"","sources":["../../../src/utils/ConsoleLogger.ts"],"names":[],"mappings":"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"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/utils/ConsoleLogger.ts"],
4
+ "sourcesContent": ["// https://developer.chrome.com/docs/devtools/console/format-style?hl=de\n\nexport const CONSOLE_LOGGER = 'ConsoleLogger';\nexport const CONSOLE_LOGGER_STORAGE = `${CONSOLE_LOGGER}Storage`;\n\nconst IS_LOCALHOST = Boolean(globalThis.location?.host?.startsWith('localhost') ?? false);\n\nconst HAS_LOCAL_STORAGE = 'localStorage' in globalThis;\n\nconst ConsoleLogger$ = Symbol.for(CONSOLE_LOGGER);\n\nlet gInitialized = false;\n\nconst asBoolean = (val: string | boolean) => {\n if (typeof val === 'boolean') return val;\n switch (val.toLowerCase()) {\n case 'true':\n case 'yes':\n case 'on':\n return true;\n default:\n return false;\n }\n};\n\nconst getKeyPath = (key: string | string[]): string =>\n [HAS_LOCAL_STORAGE ? CONSOLE_LOGGER : undefined, ...(Array.isArray(key) ? key : [key])].filter(Boolean).join('.');\n\nfunction loadConfigValue<T>(key: string | string[], as: (val: string) => T = undefined, defaultValue: T): T {\n const _key = getKeyPath(key);\n // @ts-ignore\n const value = HAS_LOCAL_STORAGE ? localStorage.getItem(_key) : globalThis[CONSOLE_LOGGER_STORAGE]?.[_key];\n return value != undefined ? as(value) : defaultValue;\n}\n\nfunction saveConfigValue(key: string | string[], val: any) {\n if (HAS_LOCAL_STORAGE) {\n localStorage.setItem(getKeyPath(key), val);\n } else {\n // @ts-ignore\n if (globalThis[CONSOLE_LOGGER_STORAGE] == undefined) {\n // @ts-ignore\n globalThis[CONSOLE_LOGGER_STORAGE] = {};\n // @ts-ignore\n console.debug(`${CONSOLE_LOGGER}: Initialize`, {[CONSOLE_LOGGER_STORAGE]: globalThis[CONSOLE_LOGGER_STORAGE]});\n }\n // @ts-ignore\n globalThis[CONSOLE_LOGGER_STORAGE][getKeyPath(key)] = val;\n }\n}\n\nexport class ConsoleLogger {\n namespace?: string;\n\n enable = true;\n\n static sharedConfig = {\n enable: IS_LOCALHOST,\n\n debug: false,\n info: true,\n warn: true,\n\n 'styles.debug': 'color: #111; background: #999; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em',\n 'styles.info': 'color: #020; background: #8a8; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em',\n 'styles.warn': 'color: #fa0; background: #a98; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em',\n 'styles.error': 'color: #ff0; background: #a00; display: inline-block; padding: 0 0.25em; margin: 0; border-radius: 0.25em',\n };\n\n static get isEnabled() {\n return ConsoleLogger.sharedConfig.enable;\n }\n\n static get isDebug() {\n return ConsoleLogger.sharedConfig.enable && ConsoleLogger.sharedConfig.debug;\n }\n\n static sharedStyles = {\n get debug() {\n return ConsoleLogger.sharedConfig['styles.debug'];\n },\n set debug(val: string) {\n ConsoleLogger.sharedConfig['styles.debug'] = val;\n },\n get info() {\n return ConsoleLogger.sharedConfig['styles.info'];\n },\n set info(val: string) {\n ConsoleLogger.sharedConfig['styles.info'] = val;\n },\n get warn() {\n return ConsoleLogger.sharedConfig['styles.warn'];\n },\n set warn(val: string) {\n ConsoleLogger.sharedConfig['styles.warn'] = val;\n },\n get error() {\n return ConsoleLogger.sharedConfig['styles.error'];\n },\n set error(val: string) {\n ConsoleLogger.sharedConfig['styles.error'] = val;\n },\n };\n\n static loadConfig() {\n if (HAS_LOCAL_STORAGE) {\n ['enable', 'debug', 'info', 'warn'].forEach((key) => {\n // @ts-ignore\n this.sharedConfig[key] = loadConfigValue(key, asBoolean, this.sharedConfig[key]);\n });\n\n ['debug', 'info', 'warn', 'error'].forEach((key) => {\n // @ts-ignore\n this.sharedStyles[key] = loadConfigValue(['styles', key], undefined, this.sharedStyles[key]);\n });\n\n if (ConsoleLogger.isDebug) {\n console.debug(`${CONSOLE_LOGGER}: Load config from localStorage`, ConsoleLogger.sharedConfig);\n }\n\n // @ts-ignore\n if (!globalThis[CONSOLE_LOGGER]?.[ConsoleLogger$]) {\n // @ts-ignore\n globalThis[CONSOLE_LOGGER] ??= {\n [ConsoleLogger$]: true,\n\n get enable() {\n return ConsoleLogger.sharedConfig.enable;\n },\n set enable(val: boolean) {\n ConsoleLogger.sharedConfig.enable = val;\n saveConfigValue('enable', val ? 'true' : 'false');\n },\n get debug() {\n return ConsoleLogger.sharedConfig.debug;\n },\n set debug(val: boolean) {\n ConsoleLogger.sharedConfig.debug = val;\n saveConfigValue('debug', val ? 'true' : 'false');\n },\n get info() {\n return ConsoleLogger.sharedConfig.info;\n },\n set info(val: boolean) {\n ConsoleLogger.sharedConfig.info = val;\n saveConfigValue('info', val ? 'true' : 'false');\n },\n get warn() {\n return ConsoleLogger.sharedConfig.warn;\n },\n set warn(val: boolean) {\n ConsoleLogger.sharedConfig.warn = val;\n saveConfigValue('warn', val ? 'true' : 'false');\n },\n };\n }\n } else {\n // no localStorage available: in this case we just use globalThis[STORAGE_KEY]\n // @ts-ignore\n if (!globalThis[CONSOLE_LOGGER_STORAGE]?.[ConsoleLogger$]) {\n // @ts-ignore\n globalThis[CONSOLE_LOGGER_STORAGE] = {\n [ConsoleLogger$]: true,\n ...ConsoleLogger.sharedConfig,\n // @ts-ignore\n ...globalThis[CONSOLE_LOGGER_STORAGE],\n };\n // @ts-ignore\n ConsoleLogger.sharedConfig = globalThis[CONSOLE_LOGGER_STORAGE];\n if (ConsoleLogger.isDebug) {\n console.debug(\n `${CONSOLE_LOGGER}: Load config from ${CONSOLE_LOGGER_STORAGE}`,\n // @ts-ignore\n globalThis[CONSOLE_LOGGER_STORAGE],\n );\n }\n }\n }\n }\n\n constructor(namespace: string) {\n this.namespace = (namespace || '').trim() || CONSOLE_LOGGER;\n\n if (!gInitialized) {\n ConsoleLogger.loadConfig();\n gInitialized = true;\n }\n\n const key = [this.namespace, 'enable'];\n this.enable = loadConfigValue(key, asBoolean, this.enable);\n saveConfigValue(key, HAS_LOCAL_STORAGE ? (this.enable ? 'true' : 'false') : this.enable);\n }\n\n get isEnabled() {\n return this.enable && ConsoleLogger.sharedConfig.enable;\n }\n\n get isDebug() {\n return this.isEnabled && ConsoleLogger.sharedConfig.debug;\n }\n\n get isInfo() {\n return this.isEnabled && ConsoleLogger.sharedConfig.info;\n }\n\n get isWarn() {\n return this.isEnabled && ConsoleLogger.sharedConfig.warn;\n }\n\n debug(...args: any[]) {\n this.#print('debug', ConsoleLogger.sharedStyles.debug, args);\n }\n\n info(...args: any[]) {\n this.#print('info', ConsoleLogger.sharedStyles.info, args);\n }\n\n warn(...args: any[]) {\n this.#print('warn', ConsoleLogger.sharedStyles.warn, args);\n }\n\n error(...args: any[]) {\n this.#print('error', ConsoleLogger.sharedStyles.error, args);\n }\n\n #print(level: 'debug' | 'info' | 'warn' | 'error', styles: string, args: any[]) {\n console[level](`%c${this.namespace}`, styles, ...args);\n }\n}"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,45 +1,46 @@
1
- var _a;
2
- import { emit, eventize, getSubscriptionCount, off, on } from '@spearwolf/eventize';
1
+ import { emit, eventize, getSubscriptionCount, off, on } from "@spearwolf/eventize";
3
2
  let gUniqInstance = null;
4
- export class FrameLoop {
5
- static { this.OnFrame = Symbol('onFrame'); }
6
- #rafID = 0;
7
- #subscriptionCount = 0;
8
- constructor() {
9
- if (gUniqInstance)
10
- return gUniqInstance;
11
- eventize(this);
12
- gUniqInstance = this;
3
+ class FrameLoop {
4
+ static {
5
+ this.OnFrame = /* @__PURE__ */ Symbol("onFrame");
6
+ }
7
+ #rafID = 0;
8
+ #subscriptionCount = 0;
9
+ constructor() {
10
+ if (gUniqInstance) return gUniqInstance;
11
+ eventize(this);
12
+ gUniqInstance = this;
13
+ }
14
+ start(target) {
15
+ if (target == null) return;
16
+ if (getSubscriptionCount(this) === 0) {
17
+ this.#requestAnimationFrame();
13
18
  }
14
- start(target) {
15
- if (target == null)
16
- return;
17
- if (getSubscriptionCount(this) === 0) {
18
- this.#requestAnimationFrame();
19
- }
20
- on(this, _a.OnFrame, target);
21
- this.#subscriptionCount++;
22
- return () => {
23
- this.stop(target);
24
- };
25
- }
26
- stop(target) {
27
- off(this, _a.OnFrame, target);
28
- if (getSubscriptionCount(this) === 0) {
29
- this.#cancelAnimationFrame();
30
- }
31
- }
32
- #onFrame = (now) => {
33
- emit(this, _a.OnFrame, now);
34
- this.#requestAnimationFrame();
19
+ on(this, FrameLoop.OnFrame, target);
20
+ this.#subscriptionCount++;
21
+ return () => {
22
+ this.stop(target);
35
23
  };
36
- #requestAnimationFrame() {
37
- this.#rafID = requestAnimationFrame(this.#onFrame);
38
- }
39
- #cancelAnimationFrame() {
40
- cancelAnimationFrame(this.#rafID);
41
- this.#rafID = 0;
24
+ }
25
+ stop(target) {
26
+ off(this, FrameLoop.OnFrame, target);
27
+ if (getSubscriptionCount(this) === 0) {
28
+ this.#cancelAnimationFrame();
42
29
  }
30
+ }
31
+ #onFrame = (now) => {
32
+ emit(this, FrameLoop.OnFrame, now);
33
+ this.#requestAnimationFrame();
34
+ };
35
+ #requestAnimationFrame() {
36
+ this.#rafID = requestAnimationFrame(this.#onFrame);
37
+ }
38
+ #cancelAnimationFrame() {
39
+ cancelAnimationFrame(this.#rafID);
40
+ this.#rafID = 0;
41
+ }
43
42
  }
44
- _a = FrameLoop;
45
- //# sourceMappingURL=FrameLoop.js.map
43
+ export {
44
+ FrameLoop
45
+ };
46
+ //# sourceMappingURL=FrameLoop.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"FrameLoop.js","sourceRoot":"","sources":["../../../src/utils/FrameLoop.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,GAAG,EAAE,EAAE,EAAC,MAAM,qBAAqB,CAAC;AAElF,IAAI,aAAa,GAAc,IAAI,CAAC;AAEpC,MAAM,OAAO,SAAS;aACb,YAAO,GAAG,MAAM,CAAC,SAAS,CAAC,AAApB,CAAqB;IAEnC,MAAM,GAAG,CAAC,CAAC;IACX,kBAAkB,GAAG,CAAC,CAAC;IAEvB;QACE,IAAI,aAAa;YAAE,OAAO,aAAa,CAAC;QACxC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,aAAa,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,MAAyB;QAC7B,IAAI,MAAM,IAAI,IAAI;YAAE,OAAO;QAE3B,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAChC,CAAC;QAED,EAAE,CAAC,IAAI,EAAE,EAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEpC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpB,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,MAAyB;QAC5B,GAAG,CAAC,IAAI,EAAE,EAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAErC,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAE;QACzB,IAAI,CAAC,IAAI,EAAE,EAAS,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,sBAAsB,EAAE,CAAC;IAChC,CAAC,CAAC;IAEF,sBAAsB;QACpB,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED,qBAAqB;QACnB,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAClB,CAAC"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/utils/FrameLoop.ts"],
4
+ "sourcesContent": ["import {emit, eventize, getSubscriptionCount, off, on} from '@spearwolf/eventize';\n\nlet gUniqInstance: FrameLoop = null;\n\nexport class FrameLoop {\n static OnFrame = Symbol('onFrame');\n\n #rafID = 0;\n #subscriptionCount = 0;\n\n constructor() {\n if (gUniqInstance) return gUniqInstance;\n eventize(this);\n gUniqInstance = this;\n }\n\n start(target: object | Function) {\n if (target == null) return;\n\n if (getSubscriptionCount(this) === 0) {\n this.#requestAnimationFrame();\n }\n\n on(this as FrameLoop, FrameLoop.OnFrame, target);\n\n this.#subscriptionCount++;\n\n return () => {\n this.stop(target);\n };\n }\n\n stop(target: object | Function) {\n off(this, FrameLoop.OnFrame, target);\n\n if (getSubscriptionCount(this) === 0) {\n this.#cancelAnimationFrame();\n }\n }\n\n #onFrame = (now: number) => {\n emit(this as FrameLoop, FrameLoop.OnFrame, now);\n this.#requestAnimationFrame();\n };\n\n #requestAnimationFrame() {\n this.#rafID = requestAnimationFrame(this.#onFrame);\n }\n\n #cancelAnimationFrame() {\n cancelAnimationFrame(this.#rafID);\n this.#rafID = 0;\n }\n}"],
5
+ "mappings": "AAAA,SAAQ,MAAM,UAAU,sBAAsB,KAAK,UAAS;AAE5D,IAAI,gBAA2B;AAExB,MAAM,UAAU;AAAA,EACrB;AAAA,SAAO,UAAU,uBAAO,SAAS;AAAA;AAAA,EAEjC,SAAS;AAAA,EACT,qBAAqB;AAAA,EAErB,cAAc;AACZ,QAAI,cAAe,QAAO;AAC1B,aAAS,IAAI;AACb,oBAAgB;AAAA,EAClB;AAAA,EAEA,MAAM,QAA2B;AAC/B,QAAI,UAAU,KAAM;AAEpB,QAAI,qBAAqB,IAAI,MAAM,GAAG;AACpC,WAAK,uBAAuB;AAAA,IAC9B;AAEA,OAAG,MAAmB,UAAU,SAAS,MAAM;AAE/C,SAAK;AAEL,WAAO,MAAM;AACX,WAAK,KAAK,MAAM;AAAA,IAClB;AAAA,EACF;AAAA,EAEA,KAAK,QAA2B;AAC9B,QAAI,MAAM,UAAU,SAAS,MAAM;AAEnC,QAAI,qBAAqB,IAAI,MAAM,GAAG;AACpC,WAAK,sBAAsB;AAAA,IAC7B;AAAA,EACF;AAAA,EAEA,WAAW,CAAC,QAAgB;AAC1B,SAAK,MAAmB,UAAU,SAAS,GAAG;AAC9C,SAAK,uBAAuB;AAAA,EAC9B;AAAA,EAEA,yBAAyB;AACvB,SAAK,SAAS,sBAAsB,KAAK,QAAQ;AAAA,EACnD;AAAA,EAEA,wBAAwB;AACtB,yBAAqB,KAAK,MAAM;AAChC,SAAK,SAAS;AAAA,EAChB;AACF;",
6
+ "names": []
7
+ }
@@ -1,27 +1,25 @@
1
- /**
2
- * Add a new item to the array, but only if it does not already exist
3
- */
4
- export function appendTo(array, item) {
5
- const index = array.indexOf(item);
6
- if (index === -1) {
7
- array.push(item);
8
- }
9
- }
10
- /**
11
- * Append a new item to the end of the array.
12
- * If the item exists, remove the previous item first.
13
- */
14
- export function appendToEnd(array, item) {
15
- const index = array.indexOf(item);
16
- if (index !== -1) {
17
- array.splice(index, 1);
18
- }
1
+ function appendTo(array, item) {
2
+ const index = array.indexOf(item);
3
+ if (index === -1) {
19
4
  array.push(item);
5
+ }
6
+ }
7
+ function appendToEnd(array, item) {
8
+ const index = array.indexOf(item);
9
+ if (index !== -1) {
10
+ array.splice(index, 1);
11
+ }
12
+ array.push(item);
20
13
  }
21
- export function removeFrom(array, item) {
22
- const index = array.indexOf(item);
23
- if (index !== -1) {
24
- array.splice(index, 1);
25
- }
14
+ function removeFrom(array, item) {
15
+ const index = array.indexOf(item);
16
+ if (index !== -1) {
17
+ array.splice(index, 1);
18
+ }
26
19
  }
27
- //# sourceMappingURL=array-utils.js.map
20
+ export {
21
+ appendTo,
22
+ appendToEnd,
23
+ removeFrom
24
+ };
25
+ //# sourceMappingURL=array-utils.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"array-utils.js","sourceRoot":"","sources":["../../../src/utils/array-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAc,KAAU,EAAE,IAAO;IACvD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAc,KAAU,EAAE,IAAO;IAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,UAAU,CAAc,KAAU,EAAE,IAAO;IACzD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACzB,CAAC;AACH,CAAC"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/utils/array-utils.ts"],
4
+ "sourcesContent": ["/**\n * Add a new item to the array, but only if it does not already exist\n */\nexport function appendTo<T = unknown>(array: T[], item: T) {\n const index = array.indexOf(item);\n if (index === -1) {\n array.push(item);\n }\n}\n\n/**\n * Append a new item to the end of the array.\n * If the item exists, remove the previous item first.\n */\nexport function appendToEnd<T = unknown>(array: T[], item: T) {\n const index = array.indexOf(item);\n if (index !== -1) {\n array.splice(index, 1);\n }\n array.push(item);\n}\n\nexport function removeFrom<T = unknown>(array: T[], item: T) {\n const index = array.indexOf(item);\n if (index !== -1) {\n array.splice(index, 1);\n }\n}"],
5
+ "mappings": "AAGO,SAAS,SAAsB,OAAY,MAAS;AACzD,QAAM,QAAQ,MAAM,QAAQ,IAAI;AAChC,MAAI,UAAU,IAAI;AAChB,UAAM,KAAK,IAAI;AAAA,EACjB;AACF;AAMO,SAAS,YAAyB,OAAY,MAAS;AAC5D,QAAM,QAAQ,MAAM,QAAQ,IAAI;AAChC,MAAI,UAAU,IAAI;AAChB,UAAM,OAAO,OAAO,CAAC;AAAA,EACvB;AACA,QAAM,KAAK,IAAI;AACjB;AAEO,SAAS,WAAwB,OAAY,MAAS;AAC3D,QAAM,QAAQ,MAAM,QAAQ,IAAI;AAChC,MAAI,UAAU,IAAI;AAChB,UAAM,OAAO,OAAO,CAAC;AAAA,EACvB;AACF;",
6
+ "names": []
7
+ }