@schukai/monster 1.15.0 → 1.15.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (146) hide show
  1. package/CHANGELOG +6 -0
  2. package/README.md +5 -5
  3. package/dist/modules/constants.js +1 -1
  4. package/dist/modules/constraints/abstract.js +2 -2
  5. package/dist/modules/constraints/abstractoperator.js +2 -2
  6. package/dist/modules/constraints/andoperator.js +2 -2
  7. package/dist/modules/constraints/invalid.js +2 -2
  8. package/dist/modules/constraints/isarray.js +2 -2
  9. package/dist/modules/constraints/isobject.js +2 -2
  10. package/dist/modules/constraints/namespace.js +1 -1
  11. package/dist/modules/constraints/oroperator.js +2 -2
  12. package/dist/modules/constraints/valid.js +2 -2
  13. package/dist/modules/data/buildmap.js +2 -2
  14. package/dist/modules/data/diff.js +2 -2
  15. package/dist/modules/data/extend.js +2 -2
  16. package/dist/modules/data/namespace.js +1 -1
  17. package/dist/modules/data/pathfinder.js +2 -2
  18. package/dist/modules/data/pipe.js +2 -2
  19. package/dist/modules/data/transformer.js +2 -2
  20. package/dist/modules/dom/assembler.js +2 -2
  21. package/dist/modules/dom/attributes.js +2 -2
  22. package/dist/modules/dom/constants.js +2 -2
  23. package/dist/modules/dom/customcontrol.js +2 -2
  24. package/dist/modules/dom/customelement.js +2 -2
  25. package/dist/modules/dom/events.js +2 -2
  26. package/dist/modules/dom/locale.js +2 -2
  27. package/dist/modules/dom/namespace.js +1 -1
  28. package/dist/modules/dom/template.js +2 -2
  29. package/dist/modules/dom/theme.js +2 -2
  30. package/dist/modules/dom/updater.js +2 -2
  31. package/dist/modules/dom/util.js +2 -2
  32. package/dist/modules/i18n/locale.js +2 -2
  33. package/dist/modules/i18n/namespace.js +1 -1
  34. package/dist/modules/i18n/provider.js +2 -2
  35. package/dist/modules/i18n/providers/fetch.js +2 -2
  36. package/dist/modules/i18n/providers/namespace.js +1 -1
  37. package/dist/modules/i18n/translations.js +2 -2
  38. package/dist/modules/logging/handler/console.js +2 -2
  39. package/dist/modules/logging/handler/namespace.js +1 -1
  40. package/dist/modules/logging/handler.js +2 -2
  41. package/dist/modules/logging/logentry.js +2 -2
  42. package/dist/modules/logging/logger.js +2 -2
  43. package/dist/modules/logging/namespace.js +1 -1
  44. package/dist/modules/math/namespace.js +1 -1
  45. package/dist/modules/math/random.js +2 -2
  46. package/dist/modules/monster.js +2 -2
  47. package/dist/modules/namespace.js +2 -2
  48. package/dist/modules/text/formatter.js +2 -2
  49. package/dist/modules/text/namespace.js +1 -1
  50. package/dist/modules/types/base.js +2 -2
  51. package/dist/modules/types/basewithoptions.js +2 -2
  52. package/dist/modules/types/global.js +2 -2
  53. package/dist/modules/types/id.js +2 -2
  54. package/dist/modules/types/is.js +2 -2
  55. package/dist/modules/types/namespace.js +1 -1
  56. package/dist/modules/types/observer.js +2 -2
  57. package/dist/modules/types/observerlist.js +2 -2
  58. package/dist/modules/types/proxyobserver.js +2 -2
  59. package/dist/modules/types/queue.js +2 -2
  60. package/dist/modules/types/randomid.js +2 -2
  61. package/dist/modules/types/stack.js +2 -2
  62. package/dist/modules/types/tokenlist.js +2 -2
  63. package/dist/modules/types/typeof.js +2 -2
  64. package/dist/modules/types/uniquequeue.js +2 -2
  65. package/dist/modules/types/validate.js +2 -2
  66. package/dist/modules/types/version.js +2 -2
  67. package/dist/modules/util/clone.js +2 -2
  68. package/dist/modules/util/comparator.js +2 -2
  69. package/dist/modules/util/freeze.js +2 -2
  70. package/dist/modules/util/namespace.js +1 -1
  71. package/dist/monster.dev.js +7321 -7322
  72. package/dist/monster.dev.js.map +1 -1
  73. package/dist/monster.js +2 -9
  74. package/package.json +1 -1
  75. package/source/constraints/abstract.js +1 -1
  76. package/source/constraints/abstractoperator.js +2 -2
  77. package/source/constraints/andoperator.js +7 -7
  78. package/source/constraints/invalid.js +4 -4
  79. package/source/constraints/isarray.js +6 -6
  80. package/source/constraints/isobject.js +6 -6
  81. package/source/constraints/namespace.js +2 -2
  82. package/source/constraints/oroperator.js +7 -7
  83. package/source/constraints/valid.js +6 -6
  84. package/source/data/buildmap.js +3 -3
  85. package/source/data/diff.js +8 -8
  86. package/source/data/extend.js +6 -6
  87. package/source/data/namespace.js +2 -2
  88. package/source/data/pathfinder.js +12 -12
  89. package/source/data/pipe.js +7 -7
  90. package/source/data/transformer.js +9 -9
  91. package/source/dom/assembler.js +6 -6
  92. package/source/dom/attributes.js +26 -27
  93. package/source/dom/constants.js +1 -1
  94. package/source/dom/customcontrol.js +80 -82
  95. package/source/dom/customelement.js +87 -87
  96. package/source/dom/events.js +7 -7
  97. package/source/dom/locale.js +4 -4
  98. package/source/dom/namespace.js +2 -2
  99. package/source/dom/template.js +23 -18
  100. package/source/dom/theme.js +7 -8
  101. package/source/dom/updater.js +18 -23
  102. package/source/dom/util.js +10 -10
  103. package/source/i18n/locale.js +5 -5
  104. package/source/i18n/namespace.js +1 -1
  105. package/source/i18n/provider.js +4 -4
  106. package/source/i18n/providers/fetch.js +7 -7
  107. package/source/i18n/translations.js +4 -4
  108. package/source/logging/handler/console.js +4 -4
  109. package/source/logging/handler/namespace.js +1 -1
  110. package/source/logging/handler.js +7 -7
  111. package/source/logging/logentry.js +4 -4
  112. package/source/logging/logger.js +4 -4
  113. package/source/logging/namespace.js +2 -2
  114. package/source/math/namespace.js +2 -2
  115. package/source/math/random.js +4 -4
  116. package/source/monster.js +42 -44
  117. package/source/namespace.js +2 -2
  118. package/source/text/formatter.js +5 -5
  119. package/source/text/namespace.js +1 -1
  120. package/source/types/base.js +3 -3
  121. package/source/types/basewithoptions.js +7 -7
  122. package/source/types/global.js +6 -6
  123. package/source/types/id.js +5 -5
  124. package/source/types/is.js +21 -21
  125. package/source/types/namespace.js +2 -2
  126. package/source/types/observer.js +6 -6
  127. package/source/types/observerlist.js +3 -3
  128. package/source/types/proxyobserver.js +21 -21
  129. package/source/types/queue.js +4 -4
  130. package/source/types/randomid.js +5 -5
  131. package/source/types/stack.js +3 -3
  132. package/source/types/tokenlist.js +8 -8
  133. package/source/types/typeof.js +4 -4
  134. package/source/types/uniquequeue.js +7 -7
  135. package/source/types/validate.js +26 -26
  136. package/source/types/version.js +7 -7
  137. package/source/util/clone.js +5 -5
  138. package/source/util/comparator.js +6 -6
  139. package/source/util/freeze.js +6 -6
  140. package/source/util/namespace.js +2 -2
  141. package/test/cases/dom/template.js +40 -1
  142. package/test/cases/monster.js +1 -1
  143. package/test/web/monster-dev.html +3 -3
  144. package/test/web/monster.html +2 -2
  145. package/test/web/test.html +3 -3
  146. package/test/web/tests.js +2 -2
@@ -4,9 +4,8 @@
4
4
  * @author schukai GmbH
5
5
  */
6
6
 
7
- import {Monster, assignToNamespace} from '../namespace.js';
7
+ import {assignToNamespace, Monster} from '../namespace.js';
8
8
  import {getGlobalFunction} from "../types/global.js";
9
- import {isInstance} from "../types/is.js";
10
9
  import {TokenList} from "../types/tokenlist.js";
11
10
  import {validateInstance, validateString, validateSymbol} from "../types/validate.js";
12
11
  import {ATTRIBUTE_OBJECTLINK} from "./constants.js";
@@ -21,7 +20,7 @@ import {ATTRIBUTE_OBJECTLINK} from "./constants.js";
21
20
  *
22
21
  * ```
23
22
  * <script type="module">
24
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/updater.js';
23
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/updater.js';
25
24
  * console.log(Monster.DOM.findClosestObjectLink())
26
25
  * </script>
27
26
  * ```
@@ -30,7 +29,7 @@ import {ATTRIBUTE_OBJECTLINK} from "./constants.js";
30
29
  *
31
30
  * ```
32
31
  * <script type="module">
33
- * import {getUpdaterFromNode} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/updater.js';
32
+ * import {getUpdaterFromNode} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/updater.js';
34
33
  * console.log(findClosestObjectLink())
35
34
  * </script>
36
35
  * ```
@@ -51,7 +50,7 @@ function findClosestObjectLink(element) {
51
50
  *
52
51
  * ```
53
52
  * <script type="module">
54
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
53
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
55
54
  * Monster.DOM.addToObjectLink();
56
55
  * </script>
57
56
  * ```
@@ -60,7 +59,7 @@ function findClosestObjectLink(element) {
60
59
  *
61
60
  * ```
62
61
  * <script type="module">
63
- * import {addToObjectLink} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
62
+ * import {addToObjectLink} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
64
63
  * addToObjectLink();
65
64
  * </script>
66
65
  * ```
@@ -93,7 +92,7 @@ function addToObjectLink(element, symbol, object) {
93
92
  *
94
93
  * ```
95
94
  * <script type="module">
96
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
95
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
97
96
  * Monster.DOM.removeObjectLink();
98
97
  * </script>
99
98
  * ```
@@ -102,7 +101,7 @@ function addToObjectLink(element, symbol, object) {
102
101
  *
103
102
  * ```
104
103
  * <script type="module">
105
- * import {removeObjectLink} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
104
+ * import {removeObjectLink} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
106
105
  * removeObjectLink();
107
106
  * </script>
108
107
  * ```
@@ -135,7 +134,7 @@ function removeObjectLink(element, symbol) {
135
134
  *
136
135
  * ```
137
136
  * <script type="module">
138
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
137
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
139
138
  * Monster.DOM.hasObjectLink();
140
139
  * </script>
141
140
  * ```
@@ -144,7 +143,7 @@ function removeObjectLink(element, symbol) {
144
143
  *
145
144
  * ```
146
145
  * <script type="module">
147
- * import {hasObjectLink} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
146
+ * import {hasObjectLink} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
148
147
  * hasObjectLink();
149
148
  * </script>
150
149
  * ```
@@ -181,7 +180,7 @@ function hasObjectLink(element, symbol) {
181
180
  *
182
181
  * ```
183
182
  * <script type="module">
184
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
183
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
185
184
  * Monster.DOM.getLinkedObjects();
186
185
  * </script>
187
186
  * ```
@@ -190,7 +189,7 @@ function hasObjectLink(element, symbol) {
190
189
  *
191
190
  * ```
192
191
  * <script type="module">
193
- * import {getLinkedObjects} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
192
+ * import {getLinkedObjects} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
194
193
  * getLinkedObjects();
195
194
  * </script>
196
195
  * ```
@@ -226,7 +225,7 @@ function getLinkedObjects(element, symbol) {
226
225
  *
227
226
  * ```
228
227
  * <script type="module">
229
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
228
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
230
229
  * Monster.DOM.toggleAttributeToken();
231
230
  * </script>
232
231
  * ```
@@ -235,7 +234,7 @@ function getLinkedObjects(element, symbol) {
235
234
  *
236
235
  * ```
237
236
  * <script type="module">
238
- * import {toggleAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
237
+ * import {toggleAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
239
238
  * toggleAttributeToken();
240
239
  * </script>
241
240
  * ```
@@ -270,7 +269,7 @@ function toggleAttributeToken(element, key, token) {
270
269
  *
271
270
  * ```
272
271
  * <script type="module">
273
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
272
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
274
273
  * Monster.DOM.addAttributeToken();
275
274
  * </script>
276
275
  * ```
@@ -279,7 +278,7 @@ function toggleAttributeToken(element, key, token) {
279
278
  *
280
279
  * ```
281
280
  * <script type="module">
282
- * import {addAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
281
+ * import {addAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
283
282
  * addAttributeToken();
284
283
  * </script>
285
284
  * ```
@@ -316,7 +315,7 @@ function addAttributeToken(element, key, token) {
316
315
  *
317
316
  * ```
318
317
  * <script type="module">
319
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
318
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
320
319
  * Monster.DOM.removeAttributeToken();
321
320
  * </script>
322
321
  * ```
@@ -325,7 +324,7 @@ function addAttributeToken(element, key, token) {
325
324
  *
326
325
  * ```
327
326
  * <script type="module">
328
- * import {removeAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
327
+ * import {removeAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
329
328
  * removeAttributeToken();
330
329
  * </script>
331
330
  * ```
@@ -361,7 +360,7 @@ function removeAttributeToken(element, key, token) {
361
360
  *
362
361
  * ```
363
362
  * <script type="module">
364
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
363
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
365
364
  * Monster.DOM.containsAttributeToken();
366
365
  * </script>
367
366
  * ```
@@ -370,7 +369,7 @@ function removeAttributeToken(element, key, token) {
370
369
  *
371
370
  * ```
372
371
  * <script type="module">
373
- * import {containsAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
372
+ * import {containsAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
374
373
  * containsAttributeToken();
375
374
  * </script>
376
375
  * ```
@@ -403,7 +402,7 @@ function containsAttributeToken(element, key, token) {
403
402
  *
404
403
  * ```
405
404
  * <script type="module">
406
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
405
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
407
406
  * Monster.DOM.replaceAttributeToken();
408
407
  * </script>
409
408
  * ```
@@ -412,7 +411,7 @@ function containsAttributeToken(element, key, token) {
412
411
  *
413
412
  * ```
414
413
  * <script type="module">
415
- * import {replaceAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
414
+ * import {replaceAttributeToken} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
416
415
  * replaceAttributeToken();
417
416
  * </script>
418
417
  * ```
@@ -448,7 +447,7 @@ function replaceAttributeToken(element, key, from, to) {
448
447
  *
449
448
  * ```
450
449
  * <script type="module">
451
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
450
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
452
451
  * Monster.DOM.clearAttributeTokens();
453
452
  * </script>
454
453
  * ```
@@ -457,7 +456,7 @@ function replaceAttributeToken(element, key, from, to) {
457
456
  *
458
457
  * ```
459
458
  * <script type="module">
460
- * import {clearAttributeTokens} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
459
+ * import {clearAttributeTokens} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
461
460
  * clearAttributeTokens();
462
461
  * </script>
463
462
  * ```
@@ -487,7 +486,7 @@ function clearAttributeTokens(element, key) {
487
486
  *
488
487
  * ```
489
488
  * <script type="module">
490
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
489
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
491
490
  * Monster.DOM.findClosestByAttribute();
492
491
  * </script>
493
492
  * ```
@@ -496,7 +495,7 @@ function clearAttributeTokens(element, key) {
496
495
  *
497
496
  * ```
498
497
  * <script type="module">
499
- * import {clearAttributeTokens} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/attributes.js';
498
+ * import {clearAttributeTokens} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/attributes.js';
500
499
  * findClosestByAttribute();
501
500
  * </script>
502
501
  * ```
@@ -512,7 +511,7 @@ function clearAttributeTokens(element, key) {
512
511
  */
513
512
 
514
513
  /**
515
- *
514
+ *
516
515
  * @since 1.14.0
517
516
  * @param {HTMLElement} element
518
517
  * @param {string} key
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- import {Monster, assignToNamespace} from '../namespace.js';
3
+ import {Monster} from '../namespace.js';
4
4
  /**
5
5
  * @author schukai GmbH
6
6
  */
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
+ import {extend} from "../data/extend.js";
3
4
  /**
4
5
  * @author schukai GmbH
5
6
  */
6
- import {Monster, assignToNamespace} from '../namespace.js';
7
- import {extend} from "../data/extend.js";
8
- import { CustomElement} from "./customelement.js";
7
+ import {assignToNamespace, Monster} from '../namespace.js';
8
+ import {CustomElement} from "./customelement.js";
9
9
 
10
10
 
11
11
  /**
@@ -27,7 +27,7 @@ const internalSymbol = Symbol('internalSymbol');
27
27
  *
28
28
  * ```
29
29
  * <script type="module">
30
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/customcontrol.js';
30
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/customcontrol.js';
31
31
  * console.log(new Monster.DOM.CustomControl())
32
32
  * </script>
33
33
  * ```
@@ -36,7 +36,7 @@ const internalSymbol = Symbol('internalSymbol');
36
36
  *
37
37
  * ```
38
38
  * <script type="module">
39
- * import {CustomControl} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.0/dist/modules/dom/customcontrol.js';
39
+ * import {CustomControl} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/dom/customcontrol.js';
40
40
  * console.log(new CustomControl())
41
41
  * </script>
42
42
  * ```
@@ -64,6 +64,16 @@ class CustomControl extends CustomElement {
64
64
 
65
65
  }
66
66
 
67
+ /**
68
+ *
69
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/attachInternals
70
+ * @since 1.14.0
71
+ * @return {boolean}
72
+ */
73
+ static get formAssociated() {
74
+ return true;
75
+ }
76
+
67
77
  /**
68
78
  * | option | description |
69
79
  * |----------------|---------------------------------|
@@ -88,16 +98,6 @@ class CustomControl extends CustomElement {
88
98
  return extend({}, super.defaults);
89
99
  }
90
100
 
91
- /**
92
- *
93
- * @see https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/attachInternals
94
- * @since 1.14.0
95
- * @return {boolean}
96
- */
97
- static get formAssociated() {
98
- return true;
99
- }
100
-
101
101
  /**
102
102
  * Must be overridden by a derived class and return the value of the control.
103
103
  *
@@ -123,73 +123,6 @@ class CustomControl extends CustomElement {
123
123
  throw Error('the value setter must be overwritten by the derived class');
124
124
  }
125
125
 
126
- /**
127
- * This is a method of [internal api](https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals)
128
- *
129
- * ```
130
- * // Use the control's name as the base name for submitted data
131
- * const n = this.getAttribute('name');
132
- * const entries = new FormData();
133
- * entries.append(n + '-first-name', this.firstName_);
134
- * entries.append(n + '-last-name', this.lastName_);
135
- * this.setFormValue(entries);
136
- * ```
137
- *
138
- * @param {File|string|FormData} value
139
- * @param {File|string|FormData} state
140
- * @since 1.14.0
141
- * @return {undefined}
142
- * @throws {DOMException} NotSupportedError
143
- * @throws {Error} the ElementInternals is not supported and a polyfill is necessary
144
- * @see https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/setFormValue
145
- */
146
- setFormValue(value, state) {
147
- getInternal.call(this).setFormValue(value, state);
148
- }
149
-
150
- /**
151
- *
152
- * @param {object} flags
153
- * @param {string|undefined} message
154
- * @param {HTMLElement} anchor
155
- * @see https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/setValidity
156
- * @since 1.14.0
157
- * @return {undefined}
158
- * @throws {DOMException} NotSupportedError
159
- * @throws {Error} the ElementInternals is not supported and a polyfill is necessary
160
- */
161
- setValidity(flags, message, anchor) {
162
- getInternal.call(this).setValidity(flags, message, anchor);
163
- }
164
-
165
-
166
- /**
167
- * This is a method of [internal api](https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals)
168
- *
169
- * @see https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/checkValidity
170
- * @since 1.14.0
171
- * @return {boolean}
172
- * @throws {DOMException} NotSupportedError
173
- * @throws {Error} the ElementInternals is not supported and a polyfill is necessary
174
- */
175
- checkValidity() {
176
- return getInternal.call(this)?.checkValidity();
177
- }
178
-
179
-
180
- /**
181
- * This is a method of [internal api](https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals)
182
- *
183
- * @return {boolean}
184
- * @since 1.14.0
185
- * @see https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/reportValidity
186
- * @throws {Error} the ElementInternals is not supported and a polyfill is necessary
187
- * @throws {DOMException} NotSupportedError
188
- */
189
- reportValidity() {
190
- return getInternal.call(this)?.reportValidity();
191
- }
192
-
193
126
  /**
194
127
  * This is a method of [internal api](https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals)
195
128
  *
@@ -280,6 +213,71 @@ class CustomControl extends CustomElement {
280
213
  return getInternal.call(this)?.form;
281
214
  }
282
215
 
216
+ /**
217
+ * This is a method of [internal api](https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals)
218
+ *
219
+ * ```
220
+ * // Use the control's name as the base name for submitted data
221
+ * const n = this.getAttribute('name');
222
+ * const entries = new FormData();
223
+ * entries.append(n + '-first-name', this.firstName_);
224
+ * entries.append(n + '-last-name', this.lastName_);
225
+ * this.setFormValue(entries);
226
+ * ```
227
+ *
228
+ * @param {File|string|FormData} value
229
+ * @param {File|string|FormData} state
230
+ * @since 1.14.0
231
+ * @return {undefined}
232
+ * @throws {DOMException} NotSupportedError
233
+ * @throws {Error} the ElementInternals is not supported and a polyfill is necessary
234
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/setFormValue
235
+ */
236
+ setFormValue(value, state) {
237
+ getInternal.call(this).setFormValue(value, state);
238
+ }
239
+
240
+ /**
241
+ *
242
+ * @param {object} flags
243
+ * @param {string|undefined} message
244
+ * @param {HTMLElement} anchor
245
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/setValidity
246
+ * @since 1.14.0
247
+ * @return {undefined}
248
+ * @throws {DOMException} NotSupportedError
249
+ * @throws {Error} the ElementInternals is not supported and a polyfill is necessary
250
+ */
251
+ setValidity(flags, message, anchor) {
252
+ getInternal.call(this).setValidity(flags, message, anchor);
253
+ }
254
+
255
+ /**
256
+ * This is a method of [internal api](https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals)
257
+ *
258
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/checkValidity
259
+ * @since 1.14.0
260
+ * @return {boolean}
261
+ * @throws {DOMException} NotSupportedError
262
+ * @throws {Error} the ElementInternals is not supported and a polyfill is necessary
263
+ */
264
+ checkValidity() {
265
+ return getInternal.call(this)?.checkValidity();
266
+ }
267
+
268
+ /**
269
+ * This is a method of [internal api](https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals)
270
+ *
271
+ * @return {boolean}
272
+ * @since 1.14.0
273
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/ElementInternals/reportValidity
274
+ * @throws {Error} the ElementInternals is not supported and a polyfill is necessary
275
+ * @throws {DOMException} NotSupportedError
276
+ */
277
+ reportValidity() {
278
+ return getInternal.call(this)?.reportValidity();
279
+ }
280
+
283
281
  }
284
282
 
285
283
  /**