@schukai/monster 3.4.2 → 3.7.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 (109) hide show
  1. package/example/i18n/providers/embed.mjs +5 -0
  2. package/package.json +1 -1
  3. package/source/constants.mjs +4 -9
  4. package/source/constraints/abstract.mjs +4 -6
  5. package/source/constraints/abstractoperator.mjs +6 -12
  6. package/source/constraints/andoperator.mjs +3 -6
  7. package/source/constraints/invalid.mjs +3 -6
  8. package/source/constraints/isarray.mjs +6 -9
  9. package/source/constraints/isobject.mjs +4 -7
  10. package/source/constraints/namespace.mjs +1 -3
  11. package/source/constraints/oroperator.mjs +26 -25
  12. package/source/constraints/valid.mjs +3 -6
  13. package/source/data/buildmap.mjs +20 -36
  14. package/source/data/buildtree.mjs +29 -29
  15. package/source/data/datasource/namespace.mjs +1 -1
  16. package/source/data/datasource/server/restapi/writeerror.mjs +6 -6
  17. package/source/data/datasource/server/restapi.mjs +51 -65
  18. package/source/data/datasource/server/webconnect.mjs +26 -35
  19. package/source/data/datasource/server.mjs +17 -21
  20. package/source/data/datasource/storage/localstorage.mjs +8 -11
  21. package/source/data/datasource/storage/sessionstorage.mjs +8 -10
  22. package/source/data/datasource/storage.mjs +18 -22
  23. package/source/data/datasource.mjs +27 -43
  24. package/source/data/diff.mjs +20 -32
  25. package/source/data/extend.mjs +20 -14
  26. package/source/data/namespace.mjs +1 -3
  27. package/source/data/pathfinder.mjs +40 -67
  28. package/source/data/pipe.mjs +6 -10
  29. package/source/data/transformer.mjs +141 -157
  30. package/source/dom/assembler.mjs +6 -9
  31. package/source/dom/attributes.mjs +36 -48
  32. package/source/dom/constants.mjs +55 -71
  33. package/source/dom/customcontrol.mjs +16 -21
  34. package/source/dom/customelement.mjs +140 -164
  35. package/source/dom/events.mjs +17 -24
  36. package/source/dom/focusmanager.mjs +30 -48
  37. package/source/dom/locale.mjs +41 -10
  38. package/source/dom/namespace.mjs +1 -1
  39. package/source/dom/ready.mjs +7 -10
  40. package/source/dom/resource/data.mjs +38 -46
  41. package/source/dom/resource/link/namespace.mjs +1 -3
  42. package/source/dom/resource/link/stylesheet.mjs +7 -11
  43. package/source/dom/resource/link.mjs +36 -17
  44. package/source/dom/resource/namespace.mjs +1 -1
  45. package/source/dom/resource/script.mjs +23 -13
  46. package/source/dom/resource.mjs +47 -60
  47. package/source/dom/resourcemanager.mjs +36 -43
  48. package/source/dom/template.mjs +17 -24
  49. package/source/dom/theme.mjs +8 -12
  50. package/source/dom/updater.mjs +150 -196
  51. package/source/dom/util.mjs +11 -12
  52. package/source/dom/worker/factory.mjs +21 -25
  53. package/source/dom/worker/namespace.mjs +1 -1
  54. package/source/i18n/formatter.mjs +20 -24
  55. package/source/i18n/locale.mjs +40 -42
  56. package/source/i18n/namespace.mjs +1 -1
  57. package/source/i18n/provider.mjs +4 -7
  58. package/source/i18n/providers/embed.mjs +115 -0
  59. package/source/i18n/providers/fetch.mjs +33 -38
  60. package/source/i18n/translations.mjs +16 -20
  61. package/source/logging/handler/console.mjs +6 -10
  62. package/source/logging/handler.mjs +15 -18
  63. package/source/logging/logentry.mjs +8 -9
  64. package/source/logging/logger.mjs +73 -55
  65. package/source/logging/namespace.mjs +1 -1
  66. package/source/math/namespace.mjs +1 -1
  67. package/source/math/random.mjs +13 -14
  68. package/source/monster.mjs +132 -100
  69. package/source/net/namespace.mjs +1 -3
  70. package/source/net/webconnect/message.mjs +6 -8
  71. package/source/net/webconnect/namespace.mjs +1 -3
  72. package/source/net/webconnect.mjs +28 -39
  73. package/source/text/formatter.mjs +44 -55
  74. package/source/types/base.mjs +16 -26
  75. package/source/types/basewithoptions.mjs +8 -14
  76. package/source/types/binary.mjs +4 -5
  77. package/source/types/dataurl.mjs +19 -27
  78. package/source/types/global.mjs +14 -26
  79. package/source/types/id.mjs +4 -6
  80. package/source/types/is.mjs +11 -16
  81. package/source/types/mediatype.mjs +29 -44
  82. package/source/types/namespace.mjs +0 -1
  83. package/source/types/node.mjs +16 -22
  84. package/source/types/nodelist.mjs +10 -14
  85. package/source/types/noderecursiveiterator.mjs +11 -14
  86. package/source/types/observablequeue.mjs +13 -16
  87. package/source/types/observer.mjs +16 -23
  88. package/source/types/observerlist.mjs +18 -21
  89. package/source/types/proxyobserver.mjs +24 -37
  90. package/source/types/queue.mjs +8 -13
  91. package/source/types/randomid.mjs +10 -10
  92. package/source/types/regex.mjs +3 -5
  93. package/source/types/stack.mjs +4 -8
  94. package/source/types/tokenlist.mjs +24 -31
  95. package/source/types/typeof.mjs +5 -7
  96. package/source/types/uniquequeue.mjs +8 -13
  97. package/source/types/uuid.mjs +18 -25
  98. package/source/types/validate.mjs +26 -27
  99. package/source/types/version.mjs +17 -25
  100. package/source/util/clone.mjs +23 -32
  101. package/source/util/comparator.mjs +7 -15
  102. package/source/util/deadmansswitch.mjs +16 -23
  103. package/source/util/freeze.mjs +5 -7
  104. package/source/util/namespace.mjs +1 -1
  105. package/source/util/processing.mjs +33 -39
  106. package/source/util/trimspaces.mjs +17 -24
  107. package/test/cases/dom/locale.mjs +15 -0
  108. package/test/cases/i18n/providers/embed.mjs +72 -0
  109. package/test/cases/monster.mjs +1 -1
@@ -5,7 +5,6 @@
5
5
  * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
6
6
  */
7
7
 
8
-
9
8
  export {
10
9
  DEFAULT_THEME,
11
10
  ATTRIBUTE_PREFIX,
@@ -59,16 +58,15 @@ export {
59
58
  ATTRIBUTE_EXPORTPARTS,
60
59
  ATTRIBUTE_HIDDEN,
61
60
  objectUpdaterLinkSymbol,
62
- customElementUpdaterLinkSymbol
63
-
64
- }
61
+ customElementUpdaterLinkSymbol,
62
+ };
65
63
 
66
64
  /**
67
65
  * default theme
68
66
  * @memberOf Monster.DOM
69
67
  * @type {string}
70
68
  */
71
- const DEFAULT_THEME = 'monster';
69
+ const DEFAULT_THEME = "monster";
72
70
 
73
71
  /**
74
72
  * @memberOf Monster.DOM
@@ -76,7 +74,7 @@ const DEFAULT_THEME = 'monster';
76
74
  * @since 1.8.0
77
75
  * @type {string}
78
76
  */
79
- const ATTRIBUTE_PREFIX = 'data-monster-';
77
+ const ATTRIBUTE_PREFIX = "data-monster-";
80
78
 
81
79
  /**
82
80
  * This is the name of the attribute to pass options to a control
@@ -86,7 +84,7 @@ const ATTRIBUTE_PREFIX = 'data-monster-';
86
84
  * @since 1.8.0
87
85
  * @type {string}
88
86
  */
89
- const ATTRIBUTE_OPTIONS = ATTRIBUTE_PREFIX + 'options';
87
+ const ATTRIBUTE_OPTIONS = `${ATTRIBUTE_PREFIX}options`;
90
88
 
91
89
  /**
92
90
  * This is the name of the attribute to pass options to a control
@@ -96,7 +94,7 @@ const ATTRIBUTE_OPTIONS = ATTRIBUTE_PREFIX + 'options';
96
94
  * @since 1.30.0
97
95
  * @type {string}
98
96
  */
99
- const ATTRIBUTE_OPTIONS_SELECTOR = ATTRIBUTE_PREFIX + 'options-selector';
97
+ const ATTRIBUTE_OPTIONS_SELECTOR = `${ATTRIBUTE_PREFIX}options-selector`;
100
98
 
101
99
  /**
102
100
  * @memberOf Monster.DOM
@@ -104,13 +102,13 @@ const ATTRIBUTE_OPTIONS_SELECTOR = ATTRIBUTE_PREFIX + 'options-selector';
104
102
  * @license AGPLv3
105
103
  * @since 1.8.0
106
104
  */
107
- const ATTRIBUTE_THEME_PREFIX = ATTRIBUTE_PREFIX + 'theme-';
105
+ const ATTRIBUTE_THEME_PREFIX = `${ATTRIBUTE_PREFIX}theme-`;
108
106
 
109
107
  /**
110
108
  * @memberOf Monster.DOM
111
109
  * @type {string}
112
110
  */
113
- const ATTRIBUTE_THEME_NAME = ATTRIBUTE_THEME_PREFIX + 'name';
111
+ const ATTRIBUTE_THEME_NAME = `${ATTRIBUTE_THEME_PREFIX}name`;
114
112
 
115
113
  /**
116
114
  * @memberOf Monster.DOM
@@ -118,7 +116,7 @@ const ATTRIBUTE_THEME_NAME = ATTRIBUTE_THEME_PREFIX + 'name';
118
116
  * @license AGPLv3
119
117
  * @since 1.8.0
120
118
  */
121
- const ATTRIBUTE_UPDATER_ATTRIBUTES = ATTRIBUTE_PREFIX + 'attributes';
119
+ const ATTRIBUTE_UPDATER_ATTRIBUTES = `${ATTRIBUTE_PREFIX}attributes`;
122
120
 
123
121
  /**
124
122
  * @memberOf Monster.DOM
@@ -126,7 +124,7 @@ const ATTRIBUTE_UPDATER_ATTRIBUTES = ATTRIBUTE_PREFIX + 'attributes';
126
124
  * @license AGPLv3
127
125
  * @since 1.27.1
128
126
  */
129
- const ATTRIBUTE_UPDATER_SELECT_THIS = ATTRIBUTE_PREFIX + 'select-this';
127
+ const ATTRIBUTE_UPDATER_SELECT_THIS = `${ATTRIBUTE_PREFIX}select-this`;
130
128
 
131
129
  /**
132
130
  * @memberOf Monster.DOM
@@ -134,7 +132,7 @@ const ATTRIBUTE_UPDATER_SELECT_THIS = ATTRIBUTE_PREFIX + 'select-this';
134
132
  * @license AGPLv3
135
133
  * @since 1.8.0
136
134
  */
137
- const ATTRIBUTE_UPDATER_REPLACE = ATTRIBUTE_PREFIX + 'replace';
135
+ const ATTRIBUTE_UPDATER_REPLACE = `${ATTRIBUTE_PREFIX}replace`;
138
136
 
139
137
  /**
140
138
  * @memberOf Monster.DOM
@@ -142,7 +140,7 @@ const ATTRIBUTE_UPDATER_REPLACE = ATTRIBUTE_PREFIX + 'replace';
142
140
  * @license AGPLv3
143
141
  * @since 1.8.0
144
142
  */
145
- const ATTRIBUTE_UPDATER_INSERT = ATTRIBUTE_PREFIX + 'insert';
143
+ const ATTRIBUTE_UPDATER_INSERT = `${ATTRIBUTE_PREFIX}insert`;
146
144
 
147
145
  /**
148
146
  * @memberOf Monster.DOM
@@ -150,7 +148,7 @@ const ATTRIBUTE_UPDATER_INSERT = ATTRIBUTE_PREFIX + 'insert';
150
148
  * @license AGPLv3
151
149
  * @since 1.8.0
152
150
  */
153
- const ATTRIBUTE_UPDATER_INSERT_REFERENCE = ATTRIBUTE_PREFIX + 'insert-reference';
151
+ const ATTRIBUTE_UPDATER_INSERT_REFERENCE = `${ATTRIBUTE_PREFIX}insert-reference`;
154
152
 
155
153
  /**
156
154
  * @memberOf Monster.DOM
@@ -158,7 +156,7 @@ const ATTRIBUTE_UPDATER_INSERT_REFERENCE = ATTRIBUTE_PREFIX + 'insert-reference'
158
156
  * @license AGPLv3
159
157
  * @since 1.8.0
160
158
  */
161
- const ATTRIBUTE_UPDATER_REMOVE = ATTRIBUTE_PREFIX + 'remove';
159
+ const ATTRIBUTE_UPDATER_REMOVE = `${ATTRIBUTE_PREFIX}remove`;
162
160
 
163
161
  /**
164
162
  * @memberOf Monster.DOM
@@ -166,7 +164,7 @@ const ATTRIBUTE_UPDATER_REMOVE = ATTRIBUTE_PREFIX + 'remove';
166
164
  * @license AGPLv3
167
165
  * @since 1.9.0
168
166
  */
169
- const ATTRIBUTE_UPDATER_BIND = ATTRIBUTE_PREFIX + 'bind';
167
+ const ATTRIBUTE_UPDATER_BIND = `${ATTRIBUTE_PREFIX}bind`;
170
168
 
171
169
  /**
172
170
  * @memberOf Monster.DOM
@@ -174,7 +172,7 @@ const ATTRIBUTE_UPDATER_BIND = ATTRIBUTE_PREFIX + 'bind';
174
172
  * @license AGPLv3
175
173
  * @since 1.27.0
176
174
  */
177
- const ATTRIBUTE_TEMPLATE_PREFIX = ATTRIBUTE_PREFIX + 'template-prefix';
175
+ const ATTRIBUTE_TEMPLATE_PREFIX = `${ATTRIBUTE_PREFIX}template-prefix`;
178
176
 
179
177
  /**
180
178
  * @memberOf Monster.DOM
@@ -182,7 +180,7 @@ const ATTRIBUTE_TEMPLATE_PREFIX = ATTRIBUTE_PREFIX + 'template-prefix';
182
180
  * @license AGPLv3
183
181
  * @since 1.14.0
184
182
  */
185
- const ATTRIBUTE_ROLE = ATTRIBUTE_PREFIX + 'role';
183
+ const ATTRIBUTE_ROLE = `${ATTRIBUTE_PREFIX}role`;
186
184
 
187
185
  /**
188
186
  * @memberOf Monster.DOM
@@ -190,7 +188,7 @@ const ATTRIBUTE_ROLE = ATTRIBUTE_PREFIX + 'role';
190
188
  * @license AGPLv3
191
189
  * @since 1.24.0
192
190
  */
193
- const ATTRIBUTE_DISABLED = 'disabled';
191
+ const ATTRIBUTE_DISABLED = "disabled";
194
192
 
195
193
  /**
196
194
  * @memberOf Monster.DOM
@@ -198,7 +196,7 @@ const ATTRIBUTE_DISABLED = 'disabled';
198
196
  * @license AGPLv3
199
197
  * @since 1.24.0
200
198
  */
201
- const ATTRIBUTE_VALUE = 'value';
199
+ const ATTRIBUTE_VALUE = "value";
202
200
 
203
201
  /**
204
202
  * @memberOf Monster.DOM
@@ -206,7 +204,7 @@ const ATTRIBUTE_VALUE = 'value';
206
204
  * @license AGPLv3
207
205
  * @since 1.9.0
208
206
  */
209
- const ATTRIBUTE_OBJECTLINK = ATTRIBUTE_PREFIX + 'objectlink';
207
+ const ATTRIBUTE_OBJECTLINK = `${ATTRIBUTE_PREFIX}objectlink`;
210
208
 
211
209
  /**
212
210
  * @memberOf Monster.DOM
@@ -214,7 +212,7 @@ const ATTRIBUTE_OBJECTLINK = ATTRIBUTE_PREFIX + 'objectlink';
214
212
  * @license AGPLv3
215
213
  * @since 1.24.0
216
214
  */
217
- const ATTRIBUTE_ERRORMESSAGE = ATTRIBUTE_PREFIX + 'error';
215
+ const ATTRIBUTE_ERRORMESSAGE = `${ATTRIBUTE_PREFIX}error`;
218
216
 
219
217
  /**
220
218
  * @memberOf Monster.DOM
@@ -222,7 +220,7 @@ const ATTRIBUTE_ERRORMESSAGE = ATTRIBUTE_PREFIX + 'error';
222
220
  * @license AGPLv3
223
221
  * @since 1.24.0
224
222
  */
225
- const objectUpdaterLinkSymbol = Symbol.for('@schukai/monster/dom/@@object-updater-link');
223
+ const objectUpdaterLinkSymbol = Symbol.for("@schukai/monster/dom/@@object-updater-link");
226
224
 
227
225
  /**
228
226
  * @memberOf Monster.DOM
@@ -230,7 +228,7 @@ const objectUpdaterLinkSymbol = Symbol.for('@schukai/monster/dom/@@object-update
230
228
  * @license AGPLv3
231
229
  * @since 1.24.0
232
230
  */
233
- const customElementUpdaterLinkSymbol = Symbol.for('@schukai/monster/dom/custom-element@@options-updater-link');
231
+ const customElementUpdaterLinkSymbol = Symbol.for("@schukai/monster/dom/custom-element@@options-updater-link");
234
232
 
235
233
  /**
236
234
  * @memberOf Monster.DOM
@@ -238,7 +236,7 @@ const customElementUpdaterLinkSymbol = Symbol.for('@schukai/monster/dom/custom-e
238
236
  * @license AGPLv3
239
237
  * @since 1.25.0
240
238
  */
241
- const TAG_SCRIPT = 'script';
239
+ const TAG_SCRIPT = "script";
242
240
 
243
241
  /**
244
242
  * @memberOf Monster.DOM
@@ -246,7 +244,7 @@ const TAG_SCRIPT = 'script';
246
244
  * @license AGPLv3
247
245
  * @since 1.25.0
248
246
  */
249
- const TAG_STYLE = 'style';
247
+ const TAG_STYLE = "style";
250
248
 
251
249
  /**
252
250
  * @memberOf Monster.DOM
@@ -254,7 +252,7 @@ const TAG_STYLE = 'style';
254
252
  * @license AGPLv3
255
253
  * @since 1.25.0
256
254
  */
257
- const TAG_LINK = 'link';
255
+ const TAG_LINK = "link";
258
256
 
259
257
  /**
260
258
  * @memberOf Monster.DOM
@@ -263,7 +261,7 @@ const TAG_LINK = 'link';
263
261
  * @since 1.25.0
264
262
  */
265
263
 
266
- const ATTRIBUTE_ID = 'id';
264
+ const ATTRIBUTE_ID = "id";
267
265
 
268
266
  /**
269
267
  * @memberOf Monster.DOM
@@ -272,7 +270,7 @@ const ATTRIBUTE_ID = 'id';
272
270
  * @since 1.25.0
273
271
  */
274
272
 
275
- const ATTRIBUTE_CLASS = 'class';
273
+ const ATTRIBUTE_CLASS = "class";
276
274
 
277
275
  /**
278
276
  * @memberOf Monster.DOM
@@ -280,7 +278,7 @@ const ATTRIBUTE_CLASS = 'class';
280
278
  * @license AGPLv3
281
279
  * @since 1.25.0
282
280
  */
283
- const ATTRIBUTE_TITLE = 'title';
281
+ const ATTRIBUTE_TITLE = "title";
284
282
 
285
283
  /**
286
284
  * @memberOf Monster.DOM
@@ -288,14 +286,14 @@ const ATTRIBUTE_TITLE = 'title';
288
286
  * @license AGPLv3
289
287
  * @since 1.25.0
290
288
  */
291
- const ATTRIBUTE_SRC = 'src';
289
+ const ATTRIBUTE_SRC = "src";
292
290
  /**
293
291
  * @memberOf Monster.DOM
294
292
  * @type {string}
295
293
  * @license AGPLv3
296
294
  * @since 1.25.0
297
295
  */
298
- const ATTRIBUTE_HREF = 'href';
296
+ const ATTRIBUTE_HREF = "href";
299
297
 
300
298
  /**
301
299
  * @memberOf Monster.DOM
@@ -303,7 +301,7 @@ const ATTRIBUTE_HREF = 'href';
303
301
  * @license AGPLv3
304
302
  * @since 1.25.0
305
303
  */
306
- const ATTRIBUTE_TYPE = 'type';
304
+ const ATTRIBUTE_TYPE = "type";
307
305
 
308
306
  /**
309
307
  * @memberOf Monster.DOM
@@ -311,7 +309,7 @@ const ATTRIBUTE_TYPE = 'type';
311
309
  * @license AGPLv3
312
310
  * @since 1.25.0
313
311
  */
314
- const ATTRIBUTE_NONCE = 'nonce';
312
+ const ATTRIBUTE_NONCE = "nonce";
315
313
 
316
314
  /**
317
315
  * @memberOf Monster.DOM
@@ -319,8 +317,7 @@ const ATTRIBUTE_NONCE = 'nonce';
319
317
  * @license AGPLv3
320
318
  * @since 1.25.0
321
319
  */
322
- const ATTRIBUTE_TRANSLATE = 'translate';
323
-
320
+ const ATTRIBUTE_TRANSLATE = "translate";
324
321
 
325
322
  /**
326
323
  * @memberOf Monster.DOM
@@ -328,8 +325,7 @@ const ATTRIBUTE_TRANSLATE = 'translate';
328
325
  * @license AGPLv3
329
326
  * @since 1.25.0
330
327
  */
331
- const ATTRIBUTE_TABINDEX = 'tabindex';
332
-
328
+ const ATTRIBUTE_TABINDEX = "tabindex";
333
329
 
334
330
  /**
335
331
  * @memberOf Monster.DOM
@@ -337,8 +333,7 @@ const ATTRIBUTE_TABINDEX = 'tabindex';
337
333
  * @license AGPLv3
338
334
  * @since 1.25.0
339
335
  */
340
- const ATTRIBUTE_SPELLCHECK = 'spellcheck';
341
-
336
+ const ATTRIBUTE_SPELLCHECK = "spellcheck";
342
337
 
343
338
  /**
344
339
  * @memberOf Monster.DOM
@@ -346,8 +341,7 @@ const ATTRIBUTE_SPELLCHECK = 'spellcheck';
346
341
  * @license AGPLv3
347
342
  * @since 1.25.0
348
343
  */
349
- const ATTRIBUTE_SLOT = 'slot';
350
-
344
+ const ATTRIBUTE_SLOT = "slot";
351
345
 
352
346
  /**
353
347
  * @memberOf Monster.DOM
@@ -355,8 +349,7 @@ const ATTRIBUTE_SLOT = 'slot';
355
349
  * @license AGPLv3
356
350
  * @since 1.25.0
357
351
  */
358
- const ATTRIBUTE_PART = 'part';
359
-
352
+ const ATTRIBUTE_PART = "part";
360
353
 
361
354
  /**
362
355
  * @memberOf Monster.DOM
@@ -364,8 +357,7 @@ const ATTRIBUTE_PART = 'part';
364
357
  * @license AGPLv3
365
358
  * @since 1.25.0
366
359
  */
367
- const ATTRIBUTE_LANG = 'lang';
368
-
360
+ const ATTRIBUTE_LANG = "lang";
369
361
 
370
362
  /**
371
363
  * @memberOf Monster.DOM
@@ -373,8 +365,7 @@ const ATTRIBUTE_LANG = 'lang';
373
365
  * @license AGPLv3
374
366
  * @since 1.25.0
375
367
  */
376
- const ATTRIBUTE_ITEMTYPE = 'itemtype';
377
-
368
+ const ATTRIBUTE_ITEMTYPE = "itemtype";
378
369
 
379
370
  /**
380
371
  * @memberOf Monster.DOM
@@ -382,8 +373,7 @@ const ATTRIBUTE_ITEMTYPE = 'itemtype';
382
373
  * @license AGPLv3
383
374
  * @since 1.25.0
384
375
  */
385
- const ATTRIBUTE_ITEMSCOPE = 'itemscope';
386
-
376
+ const ATTRIBUTE_ITEMSCOPE = "itemscope";
387
377
 
388
378
  /**
389
379
  * @memberOf Monster.DOM
@@ -391,8 +381,7 @@ const ATTRIBUTE_ITEMSCOPE = 'itemscope';
391
381
  * @license AGPLv3
392
382
  * @since 1.25.0
393
383
  */
394
- const ATTRIBUTE_ITEMREF = 'itemref';
395
-
384
+ const ATTRIBUTE_ITEMREF = "itemref";
396
385
 
397
386
  /**
398
387
  * @memberOf Monster.DOM
@@ -400,8 +389,7 @@ const ATTRIBUTE_ITEMREF = 'itemref';
400
389
  * @license AGPLv3
401
390
  * @since 1.25.0
402
391
  */
403
- const ATTRIBUTE_ITEMID = 'itemid';
404
-
392
+ const ATTRIBUTE_ITEMID = "itemid";
405
393
 
406
394
  /**
407
395
  * @memberOf Monster.DOM
@@ -409,8 +397,7 @@ const ATTRIBUTE_ITEMID = 'itemid';
409
397
  * @license AGPLv3
410
398
  * @since 1.25.0
411
399
  */
412
- const ATTRIBUTE_ITEMPROP = 'itemprop';
413
-
400
+ const ATTRIBUTE_ITEMPROP = "itemprop";
414
401
 
415
402
  /**
416
403
  * @memberOf Monster.DOM
@@ -418,8 +405,7 @@ const ATTRIBUTE_ITEMPROP = 'itemprop';
418
405
  * @license AGPLv3
419
406
  * @since 1.25.0
420
407
  */
421
- const ATTRIBUTE_IS = 'is';
422
-
408
+ const ATTRIBUTE_IS = "is";
423
409
 
424
410
  /**
425
411
  * @memberOf Monster.DOM
@@ -427,8 +413,7 @@ const ATTRIBUTE_IS = 'is';
427
413
  * @license AGPLv3
428
414
  * @since 1.25.0
429
415
  */
430
- const ATTRIBUTE_INPUTMODE = 'inputmode';
431
-
416
+ const ATTRIBUTE_INPUTMODE = "inputmode";
432
417
 
433
418
  /**
434
419
  * @memberOf Monster.DOM
@@ -436,7 +421,7 @@ const ATTRIBUTE_INPUTMODE = 'inputmode';
436
421
  * @license AGPLv3
437
422
  * @since 1.25.0
438
423
  */
439
- const ATTRIBUTE_ACCESSKEY = 'accesskey';
424
+ const ATTRIBUTE_ACCESSKEY = "accesskey";
440
425
 
441
426
  /**
442
427
  * @memberOf Monster.DOM
@@ -444,7 +429,7 @@ const ATTRIBUTE_ACCESSKEY = 'accesskey';
444
429
  * @license AGPLv3
445
430
  * @since 1.25.0
446
431
  */
447
- const ATTRIBUTE_AUTOCAPITALIZE = 'autocapitalize';
432
+ const ATTRIBUTE_AUTOCAPITALIZE = "autocapitalize";
448
433
 
449
434
  /**
450
435
  * @memberOf Monster.DOM
@@ -452,7 +437,7 @@ const ATTRIBUTE_AUTOCAPITALIZE = 'autocapitalize';
452
437
  * @license AGPLv3
453
438
  * @since 1.25.0
454
439
  */
455
- const ATTRIBUTE_AUTOFOCUS = 'autofocus';
440
+ const ATTRIBUTE_AUTOFOCUS = "autofocus";
456
441
 
457
442
  /**
458
443
  * @memberOf Monster.DOM
@@ -460,7 +445,7 @@ const ATTRIBUTE_AUTOFOCUS = 'autofocus';
460
445
  * @license AGPLv3
461
446
  * @since 1.25.0
462
447
  */
463
- const ATTRIBUTE_CONTENTEDITABLE = 'contenteditable';
448
+ const ATTRIBUTE_CONTENTEDITABLE = "contenteditable";
464
449
 
465
450
  /**
466
451
  * @memberOf Monster.DOM
@@ -468,7 +453,7 @@ const ATTRIBUTE_CONTENTEDITABLE = 'contenteditable';
468
453
  * @license AGPLv3
469
454
  * @since 1.25.0
470
455
  */
471
- const ATTRIBUTE_DIR = 'dir';
456
+ const ATTRIBUTE_DIR = "dir";
472
457
 
473
458
  /**
474
459
  * @memberOf Monster.DOM
@@ -476,8 +461,7 @@ const ATTRIBUTE_DIR = 'dir';
476
461
  * @license AGPLv3
477
462
  * @since 1.25.0
478
463
  */
479
- const ATTRIBUTE_DRAGGABLE = 'draggable';
480
-
464
+ const ATTRIBUTE_DRAGGABLE = "draggable";
481
465
 
482
466
  /**
483
467
  * @memberOf Monster.DOM
@@ -485,18 +469,18 @@ const ATTRIBUTE_DRAGGABLE = 'draggable';
485
469
  * @license AGPLv3
486
470
  * @since 1.25.0
487
471
  */
488
- const ATTRIBUTE_ENTERKEYHINT = 'enterkeyhint';
472
+ const ATTRIBUTE_ENTERKEYHINT = "enterkeyhint";
489
473
  /**
490
474
  * @memberOf Monster.DOM
491
475
  * @type {string}
492
476
  * @license AGPLv3
493
477
  * @since 1.25.0
494
478
  */
495
- const ATTRIBUTE_EXPORTPARTS = 'exportparts';
479
+ const ATTRIBUTE_EXPORTPARTS = "exportparts";
496
480
  /**
497
481
  * @memberOf Monster.DOM
498
482
  * @type {string}
499
483
  * @license AGPLv3
500
484
  * @since 1.25.0
501
485
  */
502
- const ATTRIBUTE_HIDDEN = 'hidden';
486
+ const ATTRIBUTE_HIDDEN = "hidden";
@@ -5,17 +5,17 @@
5
5
  * License text available at https://www.gnu.org/licenses/agpl-3.0.en.html
6
6
  */
7
7
 
8
- import {extend} from "../data/extend.mjs";
9
- import {ATTRIBUTE_VALUE} from "./constants.mjs";
10
- import {CustomElement, attributeObserverSymbol} from "./customelement.mjs";
11
- import {instanceSymbol} from '../constants.mjs';
12
- export {CustomControl}
8
+ import { extend } from "../data/extend.mjs";
9
+ import { ATTRIBUTE_VALUE } from "./constants.mjs";
10
+ import { CustomElement, attributeObserverSymbol } from "./customelement.mjs";
11
+ import { instanceSymbol } from "../constants.mjs";
12
+ export { CustomControl };
13
13
 
14
14
  /**
15
15
  * @private
16
16
  * @type {symbol}
17
17
  */
18
- const attachedInternalSymbol = Symbol('attachedInternal');
18
+ const attachedInternalSymbol = Symbol("attachedInternal");
19
19
 
20
20
  /**
21
21
  * To define a new HTML control we need the power of CustomElement
@@ -47,7 +47,6 @@ const attachedInternalSymbol = Symbol('attachedInternal');
47
47
  * @memberOf Monster.DOM
48
48
  */
49
49
  class CustomControl extends CustomElement {
50
-
51
50
  /**
52
51
  * IMPORTANT: CustomControls instances are not created via the constructor, but either via a tag in the HTML or via <code>document.createElement()</code>.
53
52
  *
@@ -57,7 +56,7 @@ class CustomControl extends CustomElement {
57
56
  constructor() {
58
57
  super();
59
58
 
60
- if (typeof this['attachInternals'] === 'function') {
59
+ if (typeof this["attachInternals"] === "function") {
61
60
  /**
62
61
  * currently only supported by chrome
63
62
  * @property {Object}
@@ -67,7 +66,6 @@ class CustomControl extends CustomElement {
67
66
  }
68
67
 
69
68
  initObserver.call(this);
70
-
71
69
  }
72
70
 
73
71
  /**
@@ -79,7 +77,6 @@ class CustomControl extends CustomElement {
79
77
  return Symbol.for("@schukai/monster/dom/custom-control");
80
78
  }
81
79
 
82
-
83
80
  /**
84
81
  * This method determines which attributes are to be monitored by `attributeChangedCallback()`.
85
82
  *
@@ -90,8 +87,8 @@ class CustomControl extends CustomElement {
90
87
  const list = super.observedAttributes;
91
88
  list.push(ATTRIBUTE_VALUE);
92
89
  return list;
93
- }
94
-
90
+ }
91
+
95
92
  /**
96
93
  *
97
94
  * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/attachInternals}
@@ -131,7 +128,7 @@ class CustomControl extends CustomElement {
131
128
  * @throws {Error} the value getter must be overwritten by the derived class
132
129
  */
133
130
  get value() {
134
- throw Error('the value getter must be overwritten by the derived class');
131
+ throw Error("the value getter must be overwritten by the derived class");
135
132
  }
136
133
 
137
134
  /**
@@ -144,7 +141,7 @@ class CustomControl extends CustomElement {
144
141
  * @throws {Error} the value setter must be overwritten by the derived class
145
142
  */
146
143
  set value(value) {
147
- throw Error('the value setter must be overwritten by the derived class');
144
+ throw Error("the value setter must be overwritten by the derived class");
148
145
  }
149
146
 
150
147
  /**
@@ -165,7 +162,7 @@ class CustomControl extends CustomElement {
165
162
  * @return {string|null}
166
163
  */
167
164
  get name() {
168
- return this.getAttribute('name');
165
+ return this.getAttribute("name");
169
166
  }
170
167
 
171
168
  /**
@@ -301,7 +298,6 @@ class CustomControl extends CustomElement {
301
298
  reportValidity() {
302
299
  return getInternal.call(this)?.reportValidity();
303
300
  }
304
-
305
301
  }
306
302
 
307
303
  /**
@@ -314,7 +310,7 @@ function getInternal() {
314
310
  const self = this;
315
311
 
316
312
  if (!(attachedInternalSymbol in this)) {
317
- throw new Error('ElementInternals is not supported and a polyfill is necessary');
313
+ throw new Error("ElementInternals is not supported and a polyfill is necessary");
318
314
  }
319
315
 
320
316
  return this[attachedInternalSymbol];
@@ -329,8 +325,7 @@ function initObserver() {
329
325
  const self = this;
330
326
 
331
327
  // value
332
- self[attributeObserverSymbol]['value'] = () => {
333
- self.setOption('value', self.getAttribute('value'));
334
- }
335
-
328
+ self[attributeObserverSymbol]["value"] = () => {
329
+ self.setOption("value", self.getAttribute("value"));
330
+ };
336
331
  }