@schukai/monster 1.28.0 → 1.29.2

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 (192) hide show
  1. package/CHANGELOG +21 -0
  2. package/README.md +4 -4
  3. package/dist/modules/constants.js +1 -1
  4. package/dist/modules/constraints/abstract.js +1 -1
  5. package/dist/modules/constraints/abstractoperator.js +1 -1
  6. package/dist/modules/constraints/andoperator.js +1 -1
  7. package/dist/modules/constraints/invalid.js +1 -1
  8. package/dist/modules/constraints/isarray.js +1 -1
  9. package/dist/modules/constraints/isobject.js +1 -1
  10. package/dist/modules/constraints/namespace.js +1 -1
  11. package/dist/modules/constraints/oroperator.js +1 -1
  12. package/dist/modules/constraints/valid.js +1 -1
  13. package/dist/modules/data/buildmap.js +2 -2
  14. package/dist/modules/data/buildtree.js +1 -1
  15. package/dist/modules/data/datasource/namespace.js +1 -1
  16. package/dist/modules/data/datasource/restapi/writeerror.js +1 -1
  17. package/dist/modules/data/datasource/restapi.js +1 -1
  18. package/dist/modules/data/datasource/storage/localstorage.js +1 -1
  19. package/dist/modules/data/datasource/storage/namespace.js +1 -1
  20. package/dist/modules/data/datasource/storage/sessionstorage.js +1 -1
  21. package/dist/modules/data/datasource/storage.js +1 -1
  22. package/dist/modules/data/datasource.js +1 -1
  23. package/dist/modules/data/diff.js +1 -1
  24. package/dist/modules/data/extend.js +1 -1
  25. package/dist/modules/data/namespace.js +1 -1
  26. package/dist/modules/data/pathfinder.js +1 -1
  27. package/dist/modules/data/pipe.js +1 -1
  28. package/dist/modules/data/transformer.js +1 -1
  29. package/dist/modules/dom/assembler.js +1 -1
  30. package/dist/modules/dom/attributes.js +1 -1
  31. package/dist/modules/dom/constants.js +1 -1
  32. package/dist/modules/dom/customcontrol.js +1 -1
  33. package/dist/modules/dom/customelement.js +2 -2
  34. package/dist/modules/dom/events.js +2 -2
  35. package/dist/modules/dom/focusmanager.js +1 -1
  36. package/dist/modules/dom/locale.js +1 -1
  37. package/dist/modules/dom/namespace.js +1 -1
  38. package/dist/modules/dom/resource/data.js +1 -1
  39. package/dist/modules/dom/resource/link/stylesheet.js +1 -1
  40. package/dist/modules/dom/resource/link.js +1 -1
  41. package/dist/modules/dom/resource/script.js +1 -1
  42. package/dist/modules/dom/resource.js +1 -1
  43. package/dist/modules/dom/resourcemanager.js +1 -1
  44. package/dist/modules/dom/template.js +1 -1
  45. package/dist/modules/dom/theme.js +1 -1
  46. package/dist/modules/dom/updater.js +2 -2
  47. package/dist/modules/dom/util.js +1 -1
  48. package/dist/modules/dom/worker/factory.js +1 -1
  49. package/dist/modules/i18n/formatter.js +1 -1
  50. package/dist/modules/i18n/locale.js +1 -1
  51. package/dist/modules/i18n/namespace.js +1 -1
  52. package/dist/modules/i18n/provider.js +1 -1
  53. package/dist/modules/i18n/providers/fetch.js +1 -1
  54. package/dist/modules/i18n/providers/namespace.js +1 -1
  55. package/dist/modules/i18n/translations.js +1 -1
  56. package/dist/modules/logging/handler/console.js +1 -1
  57. package/dist/modules/logging/handler/namespace.js +1 -1
  58. package/dist/modules/logging/handler.js +1 -1
  59. package/dist/modules/logging/logentry.js +1 -1
  60. package/dist/modules/logging/logger.js +1 -1
  61. package/dist/modules/logging/namespace.js +1 -1
  62. package/dist/modules/math/namespace.js +1 -1
  63. package/dist/modules/math/random.js +1 -1
  64. package/dist/modules/monster.js +1 -1
  65. package/dist/modules/namespace.js +1 -1
  66. package/dist/modules/text/formatter.js +1 -1
  67. package/dist/modules/text/namespace.js +1 -1
  68. package/dist/modules/types/base.js +1 -1
  69. package/dist/modules/types/basewithoptions.js +1 -1
  70. package/dist/modules/types/binary.js +1 -1
  71. package/dist/modules/types/dataurl.js +1 -1
  72. package/dist/modules/types/global.js +1 -1
  73. package/dist/modules/types/id.js +1 -1
  74. package/dist/modules/types/is.js +1 -1
  75. package/dist/modules/types/mediatype.js +1 -1
  76. package/dist/modules/types/namespace.js +1 -1
  77. package/dist/modules/types/node.js +1 -1
  78. package/dist/modules/types/nodelist.js +1 -1
  79. package/dist/modules/types/noderecursiveiterator.js +1 -1
  80. package/dist/modules/types/observer.js +1 -1
  81. package/dist/modules/types/observerlist.js +1 -1
  82. package/dist/modules/types/proxyobserver.js +1 -1
  83. package/dist/modules/types/queue.js +1 -1
  84. package/dist/modules/types/randomid.js +1 -1
  85. package/dist/modules/types/regex.js +1 -1
  86. package/dist/modules/types/stack.js +1 -1
  87. package/dist/modules/types/tokenlist.js +1 -1
  88. package/dist/modules/types/typeof.js +1 -1
  89. package/dist/modules/types/uniquequeue.js +1 -1
  90. package/dist/modules/types/uuid.js +1 -1
  91. package/dist/modules/types/validate.js +1 -1
  92. package/dist/modules/types/version.js +2 -2
  93. package/dist/modules/util/clone.js +1 -1
  94. package/dist/modules/util/comparator.js +1 -1
  95. package/dist/modules/util/deadmansswitch.js +2 -0
  96. package/dist/modules/util/freeze.js +1 -1
  97. package/dist/modules/util/namespace.js +1 -1
  98. package/dist/modules/util/processing.js +1 -1
  99. package/dist/modules/util/trimspaces.js +1 -1
  100. package/dist/monster.dev.js +497 -314
  101. package/dist/monster.dev.js.map +1 -1
  102. package/dist/monster.js +2 -2
  103. package/package.json +1 -1
  104. package/source/constraints/andoperator.js +5 -5
  105. package/source/constraints/invalid.js +3 -3
  106. package/source/constraints/isarray.js +3 -3
  107. package/source/constraints/isobject.js +3 -3
  108. package/source/constraints/oroperator.js +5 -5
  109. package/source/constraints/valid.js +3 -3
  110. package/source/data/buildmap.js +6 -5
  111. package/source/data/buildtree.js +2 -2
  112. package/source/data/datasource/restapi.js +3 -3
  113. package/source/data/datasource/storage/localstorage.js +2 -2
  114. package/source/data/datasource/storage/sessionstorage.js +2 -2
  115. package/source/data/datasource/storage.js +3 -3
  116. package/source/data/datasource.js +3 -3
  117. package/source/data/diff.js +3 -3
  118. package/source/data/extend.js +2 -2
  119. package/source/data/pathfinder.js +4 -4
  120. package/source/data/pipe.js +3 -3
  121. package/source/data/transformer.js +3 -3
  122. package/source/dom/assembler.js +2 -2
  123. package/source/dom/attributes.js +27 -27
  124. package/source/dom/customcontrol.js +1 -1
  125. package/source/dom/customelement.js +44 -18
  126. package/source/dom/events.js +66 -9
  127. package/source/dom/focusmanager.js +2 -2
  128. package/source/dom/locale.js +2 -2
  129. package/source/dom/resource/data.js +2 -2
  130. package/source/dom/resource/link/stylesheet.js +2 -2
  131. package/source/dom/resource/link.js +2 -2
  132. package/source/dom/resource/script.js +2 -2
  133. package/source/dom/resource.js +2 -2
  134. package/source/dom/resourcemanager.js +2 -2
  135. package/source/dom/template.js +5 -5
  136. package/source/dom/theme.js +3 -3
  137. package/source/dom/updater.js +45 -14
  138. package/source/dom/util.js +6 -6
  139. package/source/dom/worker/factory.js +2 -2
  140. package/source/i18n/formatter.js +4 -4
  141. package/source/i18n/locale.js +4 -4
  142. package/source/i18n/provider.js +2 -2
  143. package/source/i18n/providers/fetch.js +3 -3
  144. package/source/i18n/translations.js +4 -4
  145. package/source/logging/handler/console.js +2 -2
  146. package/source/logging/handler.js +2 -2
  147. package/source/logging/logentry.js +2 -2
  148. package/source/logging/logger.js +2 -2
  149. package/source/math/random.js +2 -2
  150. package/source/namespace.js +1 -1
  151. package/source/text/formatter.js +3 -3
  152. package/source/types/base.js +2 -2
  153. package/source/types/basewithoptions.js +32 -6
  154. package/source/types/binary.js +4 -4
  155. package/source/types/dataurl.js +4 -4
  156. package/source/types/global.js +4 -4
  157. package/source/types/id.js +2 -2
  158. package/source/types/is.js +20 -20
  159. package/source/types/mediatype.js +4 -4
  160. package/source/types/node.js +2 -2
  161. package/source/types/nodelist.js +2 -2
  162. package/source/types/noderecursiveiterator.js +4 -4
  163. package/source/types/observer.js +5 -13
  164. package/source/types/observerlist.js +2 -2
  165. package/source/types/proxyobserver.js +5 -5
  166. package/source/types/queue.js +3 -3
  167. package/source/types/randomid.js +2 -2
  168. package/source/types/regex.js +2 -2
  169. package/source/types/stack.js +2 -2
  170. package/source/types/tokenlist.js +2 -2
  171. package/source/types/typeof.js +3 -3
  172. package/source/types/uniquequeue.js +2 -2
  173. package/source/types/uuid.js +2 -2
  174. package/source/types/validate.js +20 -20
  175. package/source/types/version.js +6 -6
  176. package/source/util/clone.js +2 -2
  177. package/source/util/comparator.js +3 -3
  178. package/source/util/deadmansswitch.js +124 -0
  179. package/source/util/freeze.js +2 -2
  180. package/source/util/processing.js +3 -3
  181. package/source/util/trimspaces.js +2 -2
  182. package/test/cases/dom/customelement.js +55 -3
  183. package/test/cases/dom/events.js +66 -1
  184. package/test/cases/dom/updater.js +76 -3
  185. package/test/cases/math/random.js +3 -0
  186. package/test/cases/monster.js +1 -1
  187. package/test/cases/util/deadmansswitch.js +71 -0
  188. package/test/web/import.js +1 -0
  189. package/test/web/monster-dev.html +3 -3
  190. package/test/web/monster.html +2 -2
  191. package/test/web/test.html +4 -3
  192. package/test/web/tests.js +2 -2
@@ -14,24 +14,39 @@ import {validateObject} from "./validate.js";
14
14
  /**
15
15
  * This is the base class with options from which some monster classes are derived.
16
16
  *
17
- * You can call the method via the monster namespace `new Monster.Types.BaseWithOptions()`.
17
+ * This class is actually only used as a base class.
18
+ *
19
+ * However, you can also create an instance directly via the monster namespace `new Monster.Types.BaseWithOptions()`.
18
20
  *
19
- * ```
21
+ * ```html
20
22
  * <script type="module">
21
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
23
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
22
24
  * new Monster.Types.BaseWithOptions()
23
25
  * </script>
24
26
  * ```
25
27
  *
26
28
  * Alternatively, you can also integrate this function individually.
27
29
  *
28
- * ```
30
+ * ```html
29
31
  * <script type="module">
30
- * import {BaseWithOptions} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/basewithoptions.js';
32
+ * import {BaseWithOptions} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/basewithoptions.js';
31
33
  * new BaseWithOptions()
32
34
  * </script>
33
35
  * ```
36
+ *
37
+ * Classes that require the possibility of options can be derived directly from this class.
38
+ * Derived classes almost always override the `defaul` getter with their own values.
34
39
  *
40
+ * ```javascript
41
+ * class My extends BaseWithOptions {
42
+ * get defaults() {
43
+ * return Object.assign({}, super.defaults, {
44
+ * mykey: true
45
+ * });
46
+ * }
47
+ * }
48
+ * ```
49
+ *
35
50
  * The class was formerly called Object.
36
51
  *
37
52
  * @since 1.13.0
@@ -56,7 +71,18 @@ class BaseWithOptions extends Base {
56
71
  }
57
72
 
58
73
  /**
59
- * can be overridden by child class values
74
+ * This getter provides the options. Derived classes overwrite
75
+ * this getter with their own values. It is good karma to always include
76
+ * the values from the parent class.
77
+ *
78
+ * ```javascript
79
+ * get defaults() {
80
+ * return Object.assign({}, super.defaults, {
81
+ * mykey: true
82
+ * });
83
+ * }
84
+ *
85
+ * ```
60
86
  *
61
87
  * @return {object}
62
88
  */
@@ -13,7 +13,7 @@ import {Monster, validateString} from "./validate.js";
13
13
  *
14
14
  * ```
15
15
  * <script type="module">
16
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
16
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
17
17
  * Monster.Types.toBinary()
18
18
  * </script>
19
19
  * ```
@@ -22,7 +22,7 @@ import {Monster, validateString} from "./validate.js";
22
22
  *
23
23
  * ```
24
24
  * <script type="module">
25
- * import {toBinary} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/binary.js';
25
+ * import {toBinary} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/binary.js';
26
26
  * toBinary()
27
27
  * </script>
28
28
  * ```
@@ -54,7 +54,7 @@ function toBinary(string) {
54
54
  *
55
55
  * ```
56
56
  * <script type="module">
57
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
57
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
58
58
  * Monster.Types.fromBinary()
59
59
  * </script>
60
60
  * ```
@@ -63,7 +63,7 @@ function toBinary(string) {
63
63
  *
64
64
  * ```
65
65
  * <script type="module">
66
- * import {fromBinary} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/binary.js';
66
+ * import {fromBinary} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/binary.js';
67
67
  * fromBinary()
68
68
  * </script>
69
69
  * ```
@@ -20,7 +20,7 @@ const internal = Symbol('internal');
20
20
  *
21
21
  * ```
22
22
  * <script type="module">
23
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
23
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
24
24
  * new Monster.Types.DataUrl()
25
25
  * </script>
26
26
  * ```
@@ -29,7 +29,7 @@ const internal = Symbol('internal');
29
29
  *
30
30
  * ```
31
31
  * <script type="module">
32
- * import {DataUrl} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/dataurl.js';
32
+ * import {DataUrl} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/dataurl.js';
33
33
  * new DataUrl()
34
34
  * </script>
35
35
  * ```
@@ -98,7 +98,7 @@ class DataUrl extends Base {
98
98
  *
99
99
  * ```
100
100
  * <script type="module">
101
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
101
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
102
102
  * console.log(Monster.Types.parseDataURL())
103
103
  * </script>
104
104
  * ```
@@ -107,7 +107,7 @@ class DataUrl extends Base {
107
107
  *
108
108
  * ```
109
109
  * <script type="module">
110
- * import {parseDataURL} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/dataurl.js';
110
+ * import {parseDataURL} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/dataurl.js';
111
111
  * console.log(parseDataURL())
112
112
  * </script>
113
113
  * ```
@@ -78,7 +78,7 @@ function getGlobal() {
78
78
  *
79
79
  * ```
80
80
  * <script type="module">
81
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
81
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
82
82
  * Monster.Types.getGlobalObject('document')
83
83
  * // ↦ { }
84
84
  * </script>
@@ -88,7 +88,7 @@ function getGlobal() {
88
88
  *
89
89
  * ```
90
90
  * <script type="module">
91
- * import {getGlobalObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/global.js';
91
+ * import {getGlobalObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/global.js';
92
92
  * getGlobalObject('document')
93
93
  * // ↦ { }
94
94
  * </script>
@@ -117,7 +117,7 @@ function getGlobalObject(name) {
117
117
  *
118
118
  * ```
119
119
  * <script type="module">
120
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
120
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
121
121
  * console.log(Monster.Types.getGlobalFunction('parseInt')) // ↦ f parseInt() { }
122
122
  * </script>
123
123
  * ```
@@ -126,7 +126,7 @@ function getGlobalObject(name) {
126
126
  *
127
127
  * ```
128
128
  * <script type="module">
129
- * import {getGlobalFunction} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/global.js';
129
+ * import {getGlobalFunction} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/global.js';
130
130
  * console.log(getGlobalFunction('parseInt')) // ↦ f parseInt() { }
131
131
  * </script>
132
132
  * ```
@@ -24,7 +24,7 @@ let internalCounter = new Map;
24
24
  *
25
25
  * ```
26
26
  * <script type="module">
27
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
27
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
28
28
  * console.log(new Monster.Types.ID())
29
29
  * </script>
30
30
  * ```
@@ -33,7 +33,7 @@ let internalCounter = new Map;
33
33
  *
34
34
  * ```
35
35
  * <script type="module">
36
- * import {ID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/id.js';
36
+ * import {ID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/id.js';
37
37
  * console.log(new ID())
38
38
  * </script>
39
39
  * ```
@@ -15,7 +15,7 @@ import {assignToNamespace, Monster} from '../namespace.js';
15
15
  *
16
16
  * ```
17
17
  * <script type="module">
18
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
18
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
19
19
  * Monster.Types.isIterable(null) // ↦ false
20
20
  * Monster.Types.isIterable('hello') // ↦ true
21
21
  * Monster.Types.isIterable([]) // ↦ true
@@ -26,7 +26,7 @@ import {assignToNamespace, Monster} from '../namespace.js';
26
26
  *
27
27
  * ```
28
28
  * <script type="module">
29
- * import {isIterable} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/is.js';
29
+ * import {isIterable} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/is.js';
30
30
  * isIterable(null) // ↦ false
31
31
  * isIterable('hello') // ↦ true
32
32
  * isIterable([]) // ↦ true
@@ -55,7 +55,7 @@ function isIterable(value) {
55
55
  *
56
56
  * ```
57
57
  * <script type="module">
58
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
58
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
59
59
  * Monster.Types.isPrimitive('2') // ↦ false
60
60
  * Monster.Types.isPrimitive([]) // ↦ true
61
61
  * </script>
@@ -65,7 +65,7 @@ function isIterable(value) {
65
65
  *
66
66
  * ```
67
67
  * <script type="module">
68
- * import {isPrimitive} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/is.js';
68
+ * import {isPrimitive} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/is.js';
69
69
  * isPrimitive('2')) // ↦ true
70
70
  * isPrimitive([])) // ↦ false
71
71
  * </script>
@@ -102,7 +102,7 @@ function isPrimitive(value) {
102
102
  *
103
103
  * ```
104
104
  * <script type="module">
105
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
105
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
106
106
  * Monster.Types.isSymbol('2') // ↦ false
107
107
  * Monster.Types.isSymbol(Symbol('test') // ↦ true
108
108
  * </script>
@@ -112,7 +112,7 @@ function isPrimitive(value) {
112
112
  *
113
113
  * ```
114
114
  * <script type="module">
115
- * import {isSymbol} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/is.js';
115
+ * import {isSymbol} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/is.js';
116
116
  * isSymbol(Symbol('a'))) // ↦ true
117
117
  * isSymbol([]) // ↦ false
118
118
  * </script>
@@ -137,7 +137,7 @@ function isSymbol(value) {
137
137
  *
138
138
  * ```
139
139
  * <script type="module">
140
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
140
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
141
141
  * Monster.Types.isBoolean('2') // ↦ false
142
142
  * Monster.Types.isBoolean([]) // ↦ false
143
143
  * Monster.Types.isBoolean(true) // ↦ true
@@ -148,7 +148,7 @@ function isSymbol(value) {
148
148
  *
149
149
  * ```
150
150
  * <script type="module">
151
- * import {isBoolean} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/is.js';
151
+ * import {isBoolean} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/is.js';
152
152
  * isBoolean('2')) // ↦ false
153
153
  * isBoolean([])) // ↦ false
154
154
  * isBoolean(2>4)) // ↦ true
@@ -179,7 +179,7 @@ function isBoolean(value) {
179
179
  *
180
180
  * ```
181
181
  * <script type="module">
182
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
182
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
183
183
  * Monster.Types.isString('2') // ↦ true
184
184
  * Monster.Types.isString([]) // ↦ false
185
185
  * </script>
@@ -189,7 +189,7 @@ function isBoolean(value) {
189
189
  *
190
190
  * ```
191
191
  * <script type="module">
192
- * import {isString} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/is.js';
192
+ * import {isString} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/is.js';
193
193
  * isString('2')) // ↦ true
194
194
  * isString([])) // ↦ false
195
195
  * </script>
@@ -217,7 +217,7 @@ function isString(value) {
217
217
  *
218
218
  * ```
219
219
  * <script type="module">
220
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
220
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
221
221
  * Monster.Types.isObject('2') // ↦ false
222
222
  * Monster.Types.isObject([]) // ↦ false
223
223
  * Monster.Types.isObject({}) // ↦ true
@@ -228,7 +228,7 @@ function isString(value) {
228
228
  *
229
229
  * ```
230
230
  * <script type="module">
231
- * import {isObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/is.js';
231
+ * import {isObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/is.js';
232
232
  * isObject('2')) // ↦ false
233
233
  * isObject([])) // ↦ false
234
234
  * </script>
@@ -261,7 +261,7 @@ function isObject(value) {
261
261
  *
262
262
  * ```
263
263
  * <script type="module">
264
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
264
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
265
265
  * Monster.Types.isInstance('2') // ↦ false
266
266
  * Monster.Types.isInstance([]) // ↦ false
267
267
  * Monster.Types.isInstance({}) // ↦ true
@@ -272,7 +272,7 @@ function isObject(value) {
272
272
  *
273
273
  * ```
274
274
  * <script type="module">
275
- * import {isInstance} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/is.js';
275
+ * import {isInstance} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/is.js';
276
276
  * isInstance('2')) // ↦ false
277
277
  * isInstance([])) // ↦ false
278
278
  * </script>
@@ -303,7 +303,7 @@ function isInstance(value, instance) {
303
303
  *
304
304
  * ```
305
305
  * <script type="module">
306
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
306
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
307
307
  * Monster.Types.isArray('2') // ↦ false
308
308
  * Monster.Types.isArray([]) // ↦ true
309
309
  * </script>
@@ -313,7 +313,7 @@ function isInstance(value, instance) {
313
313
  *
314
314
  * ```
315
315
  * <script type="module">
316
- * import {isArray} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/is.js';
316
+ * import {isArray} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/is.js';
317
317
  * isArray('2')) // ↦ false
318
318
  * isArray([])) // ↦ true
319
319
  * </script>
@@ -339,7 +339,7 @@ function isArray(value) {
339
339
  *
340
340
  * ```
341
341
  * <script type="module">
342
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
342
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
343
343
  * Monster.Types.isFunction(()=>{}) // ↦ true
344
344
  * Monster.Types.isFunction('2') // ↦ false
345
345
  * Monster.Types.isFunction([]) // ↦ false
@@ -350,7 +350,7 @@ function isArray(value) {
350
350
  *
351
351
  * ```
352
352
  * <script type="module">
353
- * import {isFunction} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/is.js';
353
+ * import {isFunction} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/is.js';
354
354
  * isFunction(()=>{}) // ↦ true
355
355
  * isFunction('2')) // ↦ false
356
356
  * isFunction([])) // ↦ false
@@ -384,7 +384,7 @@ function isFunction(value) {
384
384
  *
385
385
  * ```
386
386
  * <script type="module">
387
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
387
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
388
388
  * Monster.Types.isInteger(()=>{}) // ↦ true
389
389
  * Monster.Types.isInteger('2') // ↦ false
390
390
  * Monster.Types.isInteger(2) // ↦ true
@@ -395,7 +395,7 @@ function isFunction(value) {
395
395
  *
396
396
  * ```
397
397
  * <script type="module">
398
- * import {isInteger} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/is.js';
398
+ * import {isInteger} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/is.js';
399
399
  * isInteger(()=>{}) // ↦ true
400
400
  * isInteger('2')) // ↦ false
401
401
  * isInteger(2)) // ↦ true
@@ -28,7 +28,7 @@ const internal = Symbol('internal');
28
28
  *
29
29
  * ```
30
30
  * <script type="module">
31
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
31
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
32
32
  * console.log(new Monster.Types.MediaType())
33
33
  * </script>
34
34
  * ```
@@ -37,7 +37,7 @@ const internal = Symbol('internal');
37
37
  *
38
38
  * ```
39
39
  * <script type="module">
40
- * import {MediaType} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/mediatype.js';
40
+ * import {MediaType} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/mediatype.js';
41
41
  * console.log(new MediaType())
42
42
  * </script>
43
43
  * ```
@@ -137,7 +137,7 @@ class MediaType extends Base {
137
137
  *
138
138
  * ```
139
139
  * <script type="module">
140
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
140
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
141
141
  * console.log(Monster.Types.parseMediaType())
142
142
  * </script>
143
143
  * ```
@@ -146,7 +146,7 @@ class MediaType extends Base {
146
146
  *
147
147
  * ```
148
148
  * <script type="module">
149
- * import {parseMediaType} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/dataurl.js';
149
+ * import {parseMediaType} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/dataurl.js';
150
150
  * console.log(parseMediaType())
151
151
  * </script>
152
152
  * ```
@@ -29,7 +29,7 @@ const treeStructureSymbol = Symbol('treeStructure');
29
29
  *
30
30
  * ```
31
31
  * <script type="module">
32
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
32
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
33
33
  * new Monster.Types.Node()
34
34
  * </script>
35
35
  * ```
@@ -38,7 +38,7 @@ const treeStructureSymbol = Symbol('treeStructure');
38
38
  *
39
39
  * ```
40
40
  * <script type="module">
41
- * import {Node} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/node.js';
41
+ * import {Node} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/node.js';
42
42
  * new Node()
43
43
  * </script>
44
44
  * ```
@@ -13,7 +13,7 @@ import {validateInstance} from "./validate.js";
13
13
  *
14
14
  * ```
15
15
  * <script type="module">
16
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
16
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
17
17
  * new Monster.Types.NodeList()
18
18
  * </script>
19
19
  * ```
@@ -22,7 +22,7 @@ import {validateInstance} from "./validate.js";
22
22
  *
23
23
  * ```
24
24
  * <script type="module">
25
- * import {NodeList} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/nodelist.js';
25
+ * import {NodeList} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/nodelist.js';
26
26
  * new NodeList()
27
27
  * </script>
28
28
  * ```
@@ -25,7 +25,7 @@ const isNodeListSymbol = Symbol('isNodeList');
25
25
  *
26
26
  * ```
27
27
  * <script type="module">
28
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
28
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
29
29
  * new Monster.Types.NodeRecursiveIterator()
30
30
  * </script>
31
31
  * ```
@@ -34,14 +34,14 @@ const isNodeListSymbol = Symbol('isNodeList');
34
34
  *
35
35
  * ```
36
36
  * <script type="module">
37
- * import {NodeRecursiveIterator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/noderecursiveiterator.js';
37
+ * import {NodeRecursiveIterator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/noderecursiveiterator.js';
38
38
  * new NodeRecursiveIterator()
39
39
  * </script>
40
40
  * ```
41
41
  *
42
42
  * @example
43
- * import {Node} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/node.js';
44
- * import {NodeRecursiveIterator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/noderecursiveiterator.js';
43
+ * import {Node} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/node.js';
44
+ * import {NodeRecursiveIterator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/noderecursiveiterator.js';
45
45
  *
46
46
  * const node =new Node('1')
47
47
  *
@@ -16,26 +16,21 @@ import {UniqueQueue} from './uniquequeue.js';
16
16
  * You can call the method via the monster namespace `new Monster.Types.Observer()`.
17
17
  *
18
18
  * ```
19
- * <script type="module">
20
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
21
- * console.log(new Monster.Types.Observer())
22
- * </script>
19
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
20
+ * new Monster.Types.Observer()
23
21
  * ```
24
22
  *
25
23
  * Alternatively, you can also integrate this function individually.
26
24
  *
27
25
  * ```
28
- * <script type="module">
29
- * import {Observer} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/observer.js';
30
- * console.log(new Observer())
31
- * </script>
26
+ * import {Observer} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/observer.js';
27
+ * new Observer()
32
28
  * ```
33
29
  *
34
30
  * The update method is called with the subject object as this pointer. For this reason the callback should not
35
31
  * be an arrow function, because it gets the this pointer of its own context.
36
32
  *
37
33
  * ```
38
- * <script>
39
34
  * new Observer(()=>{
40
35
  * // this is not subject
41
36
  * })
@@ -43,24 +38,21 @@ import {UniqueQueue} from './uniquequeue.js';
43
38
  * new Observer(function() {
44
39
  * // this is subject
45
40
  * })
46
- * </script>
47
41
  * ```
48
42
  *
49
43
  * Additional arguments can be passed to the callback. To do this, simply specify them.
50
44
  *
51
45
  * ```
52
- * <script>
53
46
  * Observer(function(a, b, c) {
54
47
  * console.log(a, b, c); // ↦ "a", 2, true
55
48
  * }, "a", 2, true)
56
- * </script>
57
49
  * ```
58
50
  *
59
51
  * The callback function must have as many parameters as arguments are given.
60
52
  *
61
53
  * @example
62
54
  *
63
- * import {Observer} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/observer.js';
55
+ * import {Observer} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/observer.js';
64
56
  *
65
57
  * const observer = new Observer(function(a, b, c) {
66
58
  * console.log(this, a, b, c); // ↦ "a", 2, true
@@ -16,7 +16,7 @@ import {validateInstance} from "./validate.js";
16
16
  *
17
17
  * ```
18
18
  * <script type="module">
19
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
19
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
20
20
  * console.log(new Monster.Types.ObserverList())
21
21
  * console.log(new Monster.Types.ObserverList())
22
22
  * </script>
@@ -26,7 +26,7 @@ import {validateInstance} from "./validate.js";
26
26
  *
27
27
  * ```
28
28
  * <script type="module">
29
- * import {ObserverList} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/observerlist.js';
29
+ * import {ObserverList} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/observerlist.js';
30
30
  * console.log(ObserverList())
31
31
  * console.log(ObserverList())
32
32
  * </script>
@@ -18,7 +18,7 @@ import {extend} from "../data/extend.js";
18
18
  *
19
19
  * ```
20
20
  * <script type="module">
21
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
21
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
22
22
  * new Monster.Types.ProxyObserver()
23
23
  * </script>
24
24
  * ```
@@ -27,7 +27,7 @@ import {extend} from "../data/extend.js";
27
27
  *
28
28
  * ```
29
29
  * <script type="module">
30
- * import {ProxyObserver} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/proxyobserver.js';
30
+ * import {ProxyObserver} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/proxyobserver.js';
31
31
  * new ProxyObserver()
32
32
  * </script>
33
33
  * ```
@@ -38,9 +38,9 @@ import {extend} from "../data/extend.js";
38
38
  *
39
39
  * @example
40
40
  *
41
- * import {ProxyObserver} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/proxyobserver.js';
42
- * import {Observer} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/observer.js';
43
- * import {isObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/is.js';
41
+ * import {ProxyObserver} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/proxyobserver.js';
42
+ * import {Observer} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/observer.js';
43
+ * import {isObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/is.js';
44
44
  *
45
45
  * const o = new Observer(function () {
46
46
  * if (isObject(this) && this instanceof ProxyObserver) {
@@ -11,7 +11,7 @@ import {Base} from './base.js';
11
11
  *
12
12
  * ```
13
13
  * <script type="module">
14
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
14
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
15
15
  * new Monster.Types.Queue()
16
16
  * </script>
17
17
  * ```
@@ -20,14 +20,14 @@ import {Base} from './base.js';
20
20
  *
21
21
  * ```
22
22
  * <script type="module">
23
- * import {Queue} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/queue.js';
23
+ * import {Queue} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/queue.js';
24
24
  * new Queue()
25
25
  * </script>
26
26
  * ```
27
27
  *
28
28
  * @example
29
29
  *
30
- * import {Queue} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/queue.js';
30
+ * import {Queue} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/queue.js';
31
31
  *
32
32
  * const queue = new Queue;
33
33
  *
@@ -19,7 +19,7 @@ let internalCounter = 0;
19
19
  *
20
20
  * ```
21
21
  * <script type="module">
22
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
22
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
23
23
  * console.log(new Monster.Types.RandomID())
24
24
  * </script>
25
25
  * ```
@@ -28,7 +28,7 @@ let internalCounter = 0;
28
28
  *
29
29
  * ```
30
30
  * <script type="module">
31
- * import {RandomID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/randomid.js';
31
+ * import {RandomID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/randomid.js';
32
32
  * console.log(new RandomID())
33
33
  * </script>
34
34
  * ```
@@ -15,7 +15,7 @@ import {validateString} from "./validate.js";
15
15
  *
16
16
  * ```
17
17
  * <script type="module">
18
- * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/monster.js';
18
+ * import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/monster.js';
19
19
  * Monster.Types.escapeString()
20
20
  * </script>
21
21
  * ```
@@ -24,7 +24,7 @@ import {validateString} from "./validate.js";
24
24
  *
25
25
  * ```
26
26
  * <script type="module">
27
- * import {escapeString} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.28.0/dist/modules/types/validate.js';
27
+ * import {escapeString} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.2/dist/modules/types/validate.js';
28
28
  * escapeString()
29
29
  * </script>
30
30
  * ```