@schukai/monster 1.13.0 → 1.15.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.
- package/CHANGELOG +46 -1
- package/README.md +5 -5
- package/dist/modules/constants.js +2 -2
- package/dist/modules/constraints/abstract.js +2 -2
- package/dist/modules/constraints/abstractoperator.js +2 -2
- package/dist/modules/constraints/andoperator.js +2 -2
- package/dist/modules/constraints/invalid.js +2 -2
- package/dist/modules/constraints/isarray.js +2 -2
- package/dist/modules/constraints/isobject.js +2 -2
- package/dist/modules/constraints/namespace.js +1 -1
- package/dist/modules/constraints/oroperator.js +2 -2
- package/dist/modules/constraints/valid.js +2 -2
- package/dist/modules/data/buildmap.js +2 -2
- package/dist/modules/data/diff.js +2 -2
- package/dist/modules/data/extend.js +2 -2
- package/dist/modules/data/namespace.js +1 -1
- package/dist/modules/data/pathfinder.js +2 -2
- package/dist/modules/data/pipe.js +2 -2
- package/dist/modules/data/transformer.js +2 -2
- package/dist/modules/dom/assembler.js +2 -2
- package/dist/modules/dom/attributes.js +2 -2
- package/dist/modules/dom/constants.js +2 -2
- package/dist/modules/dom/customcontrol.js +2 -0
- package/dist/modules/dom/customelement.js +2 -2
- package/dist/modules/dom/events.js +2 -2
- package/dist/modules/dom/locale.js +2 -2
- package/dist/modules/dom/namespace.js +1 -1
- package/dist/modules/dom/template.js +2 -2
- package/dist/modules/dom/theme.js +2 -2
- package/dist/modules/dom/updater.js +2 -2
- package/dist/modules/dom/util.js +2 -2
- package/dist/modules/i18n/locale.js +2 -2
- package/dist/modules/i18n/namespace.js +1 -1
- package/dist/modules/i18n/provider.js +2 -2
- package/dist/modules/i18n/providers/fetch.js +2 -2
- package/dist/modules/i18n/providers/namespace.js +1 -1
- package/dist/modules/i18n/translations.js +2 -2
- package/dist/modules/logging/handler/console.js +2 -2
- package/dist/modules/logging/handler/namespace.js +1 -1
- package/dist/modules/logging/handler.js +2 -2
- package/dist/modules/logging/logentry.js +2 -2
- package/dist/modules/logging/logger.js +2 -2
- package/dist/modules/logging/namespace.js +1 -1
- package/dist/modules/math/namespace.js +1 -1
- package/dist/modules/math/random.js +2 -2
- package/dist/modules/monster.js +2 -2
- package/dist/modules/namespace.js +2 -2
- package/dist/modules/text/formatter.js +2 -2
- package/dist/modules/text/namespace.js +1 -1
- package/dist/modules/types/base.js +2 -2
- package/dist/modules/types/basewithoptions.js +2 -2
- package/dist/modules/types/global.js +2 -2
- package/dist/modules/types/id.js +2 -2
- package/dist/modules/types/is.js +2 -2
- package/dist/modules/types/namespace.js +1 -1
- package/dist/modules/types/observer.js +2 -2
- package/dist/modules/types/observerlist.js +2 -2
- package/dist/modules/types/proxyobserver.js +2 -2
- package/dist/modules/types/queue.js +2 -2
- package/dist/modules/types/randomid.js +2 -2
- package/dist/modules/types/stack.js +2 -2
- package/dist/modules/types/tokenlist.js +2 -2
- package/dist/modules/types/typeof.js +2 -2
- package/dist/modules/types/uniquequeue.js +2 -2
- package/dist/modules/types/validate.js +2 -2
- package/dist/modules/types/version.js +2 -2
- package/dist/modules/util/clone.js +2 -2
- package/dist/modules/util/comparator.js +2 -2
- package/dist/modules/util/freeze.js +2 -2
- package/dist/modules/util/namespace.js +1 -1
- package/dist/monster.dev.js +8622 -7709
- package/dist/monster.dev.js.map +1 -1
- package/dist/monster.js +2 -9
- package/package.json +1 -1
- package/source/constants.js +7 -6
- package/source/constraints/abstract.js +2 -2
- package/source/constraints/abstractoperator.js +4 -4
- package/source/constraints/andoperator.js +8 -8
- package/source/constraints/invalid.js +6 -6
- package/source/constraints/isarray.js +7 -7
- package/source/constraints/isobject.js +7 -7
- package/source/constraints/namespace.js +2 -2
- package/source/constraints/oroperator.js +8 -8
- package/source/constraints/valid.js +7 -7
- package/source/data/buildmap.js +15 -15
- package/source/data/diff.js +9 -9
- package/source/data/extend.js +55 -13
- package/source/data/namespace.js +2 -2
- package/source/data/pathfinder.js +13 -14
- package/source/data/pipe.js +8 -8
- package/source/data/transformer.js +11 -11
- package/source/dom/assembler.js +7 -7
- package/source/dom/attributes.js +89 -46
- package/source/dom/constants.js +9 -2
- package/source/dom/customcontrol.js +299 -0
- package/source/dom/customelement.js +181 -66
- package/source/dom/events.js +58 -8
- package/source/dom/locale.js +5 -5
- package/source/dom/namespace.js +2 -2
- package/source/dom/template.js +24 -19
- package/source/dom/theme.js +8 -9
- package/source/dom/updater.js +46 -24
- package/source/dom/util.js +10 -10
- package/source/i18n/locale.js +7 -7
- package/source/i18n/namespace.js +1 -1
- package/source/i18n/provider.js +6 -6
- package/source/i18n/providers/fetch.js +10 -10
- package/source/i18n/translations.js +5 -5
- package/source/logging/handler/console.js +5 -5
- package/source/logging/handler/namespace.js +1 -1
- package/source/logging/handler.js +8 -8
- package/source/logging/logentry.js +5 -5
- package/source/logging/logger.js +5 -5
- package/source/logging/namespace.js +2 -2
- package/source/math/namespace.js +2 -2
- package/source/math/random.js +5 -5
- package/source/monster.js +48 -44
- package/source/namespace.js +2 -2
- package/source/text/formatter.js +6 -7
- package/source/text/namespace.js +1 -1
- package/source/types/base.js +4 -5
- package/source/types/basewithoptions.js +10 -9
- package/source/types/global.js +7 -7
- package/source/types/id.js +7 -7
- package/source/types/is.js +22 -22
- package/source/types/namespace.js +2 -2
- package/source/types/observer.js +7 -7
- package/source/types/observerlist.js +4 -4
- package/source/types/proxyobserver.js +32 -26
- package/source/types/queue.js +13 -7
- package/source/types/randomid.js +6 -6
- package/source/types/stack.js +11 -4
- package/source/types/tokenlist.js +9 -9
- package/source/types/typeof.js +5 -5
- package/source/types/uniquequeue.js +14 -7
- package/source/types/validate.js +27 -27
- package/source/types/version.js +9 -9
- package/source/util/clone.js +6 -6
- package/source/util/comparator.js +7 -7
- package/source/util/freeze.js +7 -7
- package/source/util/namespace.js +2 -2
- package/test/cases/data/extend.js +66 -13
- package/test/cases/dom/attributes.js +56 -1
- package/test/cases/dom/customcontrol.js +264 -0
- package/test/cases/dom/customelement.js +112 -51
- package/test/cases/dom/events.js +32 -14
- package/test/cases/dom/template.js +40 -1
- package/test/cases/monster.js +1 -1
- package/test/cases/types/proxyobserver.js +9 -0
- package/test/util/jsdom.js +3 -0
- package/test/web/import.js +1 -0
- package/test/web/monster-dev.html +3 -3
- package/test/web/monster.html +2 -2
- package/test/web/test.html +3 -3
- package/test/web/tests.js +3 -3
package/source/types/stack.js
CHANGED
|
@@ -1,11 +1,18 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @author schukai GmbH
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import {assignToNamespace, Monster} from '../namespace.js';
|
|
8
|
+
import {Base} from './base.js';
|
|
2
9
|
|
|
3
10
|
/**
|
|
4
11
|
* You can call the method via the monster namespace `new Monster.Types.Queue()`.
|
|
5
12
|
*
|
|
6
13
|
* ```
|
|
7
14
|
* <script type="module">
|
|
8
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
15
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/stack.js';
|
|
9
16
|
* console.log(new Monster.Types.Stack())
|
|
10
17
|
* </script>
|
|
11
18
|
* ```
|
|
@@ -14,7 +21,7 @@ import {Monster, Base} from './base.js';
|
|
|
14
21
|
*
|
|
15
22
|
* ```
|
|
16
23
|
* <script type="module">
|
|
17
|
-
* import {ID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
24
|
+
* import {ID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/stack.js';
|
|
18
25
|
* console.log(new Stack())
|
|
19
26
|
* </script>
|
|
20
27
|
* ```
|
|
@@ -92,5 +99,5 @@ class Stack extends Base {
|
|
|
92
99
|
|
|
93
100
|
}
|
|
94
101
|
|
|
95
|
-
|
|
102
|
+
assignToNamespace('Monster.Types', Stack);
|
|
96
103
|
export {Monster, Stack}
|
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
* @author schukai GmbH
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import {Monster} from '../namespace.js';
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
7
|
+
import {assignToNamespace, Monster} from '../namespace.js';
|
|
8
|
+
import {isIterable, isString} from '../types/is.js';
|
|
9
|
+
import {validateFunction, validateString} from '../types/validate.js';
|
|
10
|
+
import {Base} from './base.js';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* A tokenlist allows you to manage tokens (individual character strings such as css classes in an attribute string).
|
|
@@ -18,7 +18,7 @@ import {validateString, validateFunction} from '../types/validate.js';
|
|
|
18
18
|
*
|
|
19
19
|
* ```
|
|
20
20
|
* <script type="module">
|
|
21
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
21
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/tokenlist.js';
|
|
22
22
|
* console.log(new Monster.Types.TokenList("myclass row"))
|
|
23
23
|
* console.log(new Monster.Types.TokenList("myclass row"))
|
|
24
24
|
* </script>
|
|
@@ -28,7 +28,7 @@ import {validateString, validateFunction} from '../types/validate.js';
|
|
|
28
28
|
*
|
|
29
29
|
* ```
|
|
30
30
|
* <script type="module">
|
|
31
|
-
* import {TokenList} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
31
|
+
* import {TokenList} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/tokenlist.js';
|
|
32
32
|
* console.log(new TokenList("myclass row"))
|
|
33
33
|
* console.log(new TokenList("myclass row"))
|
|
34
34
|
* </script>
|
|
@@ -232,13 +232,13 @@ class TokenList extends Base {
|
|
|
232
232
|
|
|
233
233
|
/**
|
|
234
234
|
* Removes token from string. If token doesn't exist it's added.
|
|
235
|
-
*
|
|
235
|
+
*
|
|
236
236
|
* ```
|
|
237
237
|
* new TokenList("abc def ghi").toggle("def xyz").toString(); // ↦ "abc ghi xyz"
|
|
238
238
|
* new TokenList("abc def ghi").toggle(["abc","xyz"]).toString(); // ↦ "def ghi xyz"
|
|
239
239
|
* new TokenList().toggle(undefined); // ↦ nothing
|
|
240
240
|
* ```
|
|
241
|
-
*
|
|
241
|
+
*
|
|
242
242
|
* @param {array|string|iteratable} value
|
|
243
243
|
* @returns {boolean}
|
|
244
244
|
* @throws {TypeError} unsupported value
|
|
@@ -311,5 +311,5 @@ function toggleValue(token) {
|
|
|
311
311
|
return this;
|
|
312
312
|
}
|
|
313
313
|
|
|
314
|
-
|
|
314
|
+
assignToNamespace('Monster.Types', TokenList);
|
|
315
315
|
export {Monster, TokenList}
|
package/source/types/typeof.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
import {Monster} from
|
|
8
|
+
import {assignToNamespace, Monster} from '../namespace.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* The built-in typeof method is known to have some historical weaknesses. This function tries to provide a better and more accurate result.
|
|
@@ -14,7 +14,7 @@ import {Monster} from "../namespace.js";
|
|
|
14
14
|
*
|
|
15
15
|
* ```
|
|
16
16
|
* <script type="module">
|
|
17
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
17
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/typeof.js';
|
|
18
18
|
* console.log(Monster.Types.typeOf())
|
|
19
19
|
* </script>
|
|
20
20
|
* ```
|
|
@@ -23,14 +23,14 @@ import {Monster} from "../namespace.js";
|
|
|
23
23
|
*
|
|
24
24
|
* ```
|
|
25
25
|
* <script type="module">
|
|
26
|
-
* import {typeOf} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
26
|
+
* import {typeOf} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/typeof.js';
|
|
27
27
|
* console.log(typeOf())
|
|
28
28
|
* </script>
|
|
29
29
|
* ```
|
|
30
30
|
*
|
|
31
31
|
* @example
|
|
32
32
|
*
|
|
33
|
-
* import {typeOf} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
33
|
+
* import {typeOf} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/typeof.js';
|
|
34
34
|
*
|
|
35
35
|
* console.log(typeOf(undefined)); // ↦ undefined
|
|
36
36
|
* console.log(typeOf("")); // ↦ string
|
|
@@ -56,7 +56,7 @@ function typeOf(value) {
|
|
|
56
56
|
return type.toLowerCase();
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
assignToNamespace('Monster.Types', typeOf);
|
|
60
60
|
export {
|
|
61
61
|
Monster,
|
|
62
62
|
typeOf
|
|
@@ -1,4 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @author schukai GmbH
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import {assignToNamespace, Monster} from '../namespace.js';
|
|
8
|
+
import {Queue} from "./queue.js";
|
|
2
9
|
import {validateObject} from "./validate.js";
|
|
3
10
|
|
|
4
11
|
/**
|
|
@@ -6,7 +13,7 @@ import {validateObject} from "./validate.js";
|
|
|
6
13
|
*
|
|
7
14
|
* ```
|
|
8
15
|
* <script type="module">
|
|
9
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
16
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/uniquequeue.js';
|
|
10
17
|
* console.log(new Monster.Types.UniqueQueue())
|
|
11
18
|
* </script>
|
|
12
19
|
* ```
|
|
@@ -15,7 +22,7 @@ import {validateObject} from "./validate.js";
|
|
|
15
22
|
*
|
|
16
23
|
* ```
|
|
17
24
|
* <script type="module">
|
|
18
|
-
* import {UniqueQueue} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
25
|
+
* import {UniqueQueue} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/uniquequeue.js';
|
|
19
26
|
* console.log(new UniqueQueue())
|
|
20
27
|
* </script>
|
|
21
28
|
* ```
|
|
@@ -42,14 +49,14 @@ class UniqueQueue extends Queue {
|
|
|
42
49
|
* @throws {TypeError} value is not a object
|
|
43
50
|
*/
|
|
44
51
|
add(value) {
|
|
45
|
-
|
|
52
|
+
|
|
46
53
|
validateObject(value);
|
|
47
|
-
|
|
54
|
+
|
|
48
55
|
if (!this.unique.has(value)) {
|
|
49
56
|
this.unique.add(value);
|
|
50
57
|
super.add(value);
|
|
51
58
|
}
|
|
52
|
-
|
|
59
|
+
|
|
53
60
|
return this;
|
|
54
61
|
}
|
|
55
62
|
|
|
@@ -83,5 +90,5 @@ class UniqueQueue extends Queue {
|
|
|
83
90
|
|
|
84
91
|
}
|
|
85
92
|
|
|
86
|
-
|
|
93
|
+
assignToNamespace('Monster.Types', UniqueQueue);
|
|
87
94
|
export {Monster, UniqueQueue}
|
package/source/types/validate.js
CHANGED
|
@@ -4,17 +4,17 @@
|
|
|
4
4
|
* @author schukai GmbH
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import {Monster} from '../namespace.js';
|
|
7
|
+
import {assignToNamespace, Monster} from '../namespace.js';
|
|
8
8
|
import {
|
|
9
|
-
isPrimitive,
|
|
10
|
-
isBoolean,
|
|
11
|
-
isString,
|
|
12
|
-
isObject,
|
|
13
9
|
isArray,
|
|
10
|
+
isBoolean,
|
|
14
11
|
isFunction,
|
|
15
|
-
isIterable,
|
|
16
12
|
isInstance,
|
|
17
13
|
isInteger,
|
|
14
|
+
isIterable,
|
|
15
|
+
isObject,
|
|
16
|
+
isPrimitive,
|
|
17
|
+
isString,
|
|
18
18
|
isSymbol
|
|
19
19
|
} from './is.js';
|
|
20
20
|
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
*
|
|
26
26
|
* ```
|
|
27
27
|
* <script type="module">
|
|
28
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
28
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
29
29
|
* console.log(Monster.Types.validateIterable('2')) // ↦ TypeError
|
|
30
30
|
* console.log(Monster.Types.validateIterable([])) // ↦ value
|
|
31
31
|
* </script>
|
|
@@ -35,7 +35,7 @@ import {
|
|
|
35
35
|
*
|
|
36
36
|
* ```
|
|
37
37
|
* <script type="module">
|
|
38
|
-
* import {validateIterable} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
38
|
+
* import {validateIterable} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
39
39
|
* console.log(validateIterable('2')) // ↦ TypeError
|
|
40
40
|
* console.log(validateIterable([])) // ↦ value
|
|
41
41
|
* </script>
|
|
@@ -65,7 +65,7 @@ function validateIterable(value) {
|
|
|
65
65
|
*
|
|
66
66
|
* ```
|
|
67
67
|
* <script type="module">
|
|
68
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
68
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
69
69
|
* console.log(Monster.Types.validatePrimitive('2')) // ↦ value
|
|
70
70
|
* console.log(Monster.Types.validatePrimitive([])) // ↦ TypeError
|
|
71
71
|
* </script>
|
|
@@ -75,7 +75,7 @@ function validateIterable(value) {
|
|
|
75
75
|
*
|
|
76
76
|
* ```
|
|
77
77
|
* <script type="module">
|
|
78
|
-
* import {validatePrimitive} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
78
|
+
* import {validatePrimitive} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
79
79
|
* console.log(validatePrimitive('2')) // ↦ value
|
|
80
80
|
* console.log(validatePrimitive([])) // ↦ TypeError
|
|
81
81
|
* </script>
|
|
@@ -105,7 +105,7 @@ function validatePrimitive(value) {
|
|
|
105
105
|
*
|
|
106
106
|
* ```
|
|
107
107
|
* <script type="module">
|
|
108
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
108
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
109
109
|
* console.log(Monster.Types.validateBoolean(true)) // ↦ value
|
|
110
110
|
* console.log(Monster.Types.validateBoolean('2')) // ↦ TypeError
|
|
111
111
|
* console.log(Monster.Types.validateBoolean([])) // ↦ TypeError
|
|
@@ -116,7 +116,7 @@ function validatePrimitive(value) {
|
|
|
116
116
|
*
|
|
117
117
|
* ```
|
|
118
118
|
* <script type="module">
|
|
119
|
-
* import {validateBoolean} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
119
|
+
* import {validateBoolean} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
120
120
|
* console.log(validateBoolean(false)) // ↦ value
|
|
121
121
|
* console.log(validateBoolean('2')) // ↦ TypeError
|
|
122
122
|
* console.log(validateBoolean([])) // ↦ TypeError
|
|
@@ -145,7 +145,7 @@ function validateBoolean(value) {
|
|
|
145
145
|
*
|
|
146
146
|
* ```
|
|
147
147
|
* <script type="module">
|
|
148
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
148
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
149
149
|
* console.log(Monster.Types.validateString('2')) // ↦ value
|
|
150
150
|
* console.log(Monster.Types.validateString([])) // ↦ TypeError
|
|
151
151
|
* </script>
|
|
@@ -155,7 +155,7 @@ function validateBoolean(value) {
|
|
|
155
155
|
*
|
|
156
156
|
* ```
|
|
157
157
|
* <script type="module">
|
|
158
|
-
* import {validateString} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
158
|
+
* import {validateString} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
159
159
|
* console.log(validateString('2')) // ↦ value
|
|
160
160
|
* console.log(validateString([])) // ↦ TypeError
|
|
161
161
|
* </script>
|
|
@@ -183,7 +183,7 @@ function validateString(value) {
|
|
|
183
183
|
*
|
|
184
184
|
* ```
|
|
185
185
|
* <script type="module">
|
|
186
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
186
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
187
187
|
* console.log(Monster.Types.validateObject({})) // ↦ value
|
|
188
188
|
* console.log(Monster.Types.validateObject('2')) // ↦ TypeError
|
|
189
189
|
* console.log(Monster.Types.validateObject([])) // ↦ TypeError
|
|
@@ -194,7 +194,7 @@ function validateString(value) {
|
|
|
194
194
|
*
|
|
195
195
|
* ```
|
|
196
196
|
* <script type="module">
|
|
197
|
-
* import {validateObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
197
|
+
* import {validateObject} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
198
198
|
* console.log(validateObject({})) // ↦ value
|
|
199
199
|
* console.log(validateObject('2')) // ↦ TypeError
|
|
200
200
|
* console.log(validateObject([])) // ↦ TypeError
|
|
@@ -222,7 +222,7 @@ function validateObject(value) {
|
|
|
222
222
|
*
|
|
223
223
|
* ```
|
|
224
224
|
* <script type="module">
|
|
225
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
225
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
226
226
|
* console.log(Monster.Types.validateInstance({}, Object)) // ↦ value
|
|
227
227
|
* console.log(Monster.Types.validateInstance('2', Object)) // ↦ TypeError
|
|
228
228
|
* console.log(Monster.Types.validateInstance([], Object)) // ↦ TypeError
|
|
@@ -233,7 +233,7 @@ function validateObject(value) {
|
|
|
233
233
|
*
|
|
234
234
|
* ```
|
|
235
235
|
* <script type="module">
|
|
236
|
-
* import {validateInstance} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
236
|
+
* import {validateInstance} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
237
237
|
* console.log(validateInstance({}, Object)) // ↦ value
|
|
238
238
|
* console.log(validateInstance('2', Object)) // ↦ TypeError
|
|
239
239
|
* console.log(validateInstance([], Object)) // ↦ TypeError
|
|
@@ -270,7 +270,7 @@ function validateInstance(value, instance) {
|
|
|
270
270
|
*
|
|
271
271
|
* ```
|
|
272
272
|
* <script type="module">
|
|
273
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
273
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
274
274
|
* console.log(Monster.Types.validateArray('2')) // ↦ TypeError
|
|
275
275
|
* console.log(Monster.Types.validateArray([])) // ↦ value
|
|
276
276
|
* </script>
|
|
@@ -280,7 +280,7 @@ function validateInstance(value, instance) {
|
|
|
280
280
|
*
|
|
281
281
|
* ```
|
|
282
282
|
* <script type="module">
|
|
283
|
-
* import {validateArray} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
283
|
+
* import {validateArray} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
284
284
|
* console.log(validateArray('2')) // ↦ TypeError
|
|
285
285
|
* console.log(validateArray([])) // ↦ value
|
|
286
286
|
* </script>
|
|
@@ -307,7 +307,7 @@ function validateArray(value) {
|
|
|
307
307
|
*
|
|
308
308
|
* ```
|
|
309
309
|
* <script type="module">
|
|
310
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
310
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
311
311
|
* console.log(Monster.Types.validateSymbol('2')) // ↦ TypeError
|
|
312
312
|
* console.log(Monster.Types.validateSymbol([])) // ↦ value
|
|
313
313
|
* </script>
|
|
@@ -317,7 +317,7 @@ function validateArray(value) {
|
|
|
317
317
|
*
|
|
318
318
|
* ```
|
|
319
319
|
* <script type="module">
|
|
320
|
-
* import {validateSymbol} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
320
|
+
* import {validateSymbol} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
321
321
|
* console.log(validateSymbol('2')) // ↦ TypeError
|
|
322
322
|
* console.log(validateSymbol()) // ↦ value
|
|
323
323
|
* </script>
|
|
@@ -344,7 +344,7 @@ function validateSymbol(value) {
|
|
|
344
344
|
*
|
|
345
345
|
* ```
|
|
346
346
|
* <script type="module">
|
|
347
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
347
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
348
348
|
* console.log(Monster.Types.validateFunction(()=>{})) // ↦ value
|
|
349
349
|
* console.log(Monster.Types.validateFunction('2')) // ↦ TypeError
|
|
350
350
|
* console.log(Monster.Types.validateFunction([])) // ↦ TypeError
|
|
@@ -355,7 +355,7 @@ function validateSymbol(value) {
|
|
|
355
355
|
*
|
|
356
356
|
* ```
|
|
357
357
|
* <script type="module">
|
|
358
|
-
* import {validateFunction} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
358
|
+
* import {validateFunction} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
359
359
|
* console.log(validateFunction(()=>{})) // ↦ value
|
|
360
360
|
* console.log(validateFunction('2')) // ↦ TypeError
|
|
361
361
|
* console.log(validateFunction([])) // ↦ TypeError
|
|
@@ -383,7 +383,7 @@ function validateFunction(value) {
|
|
|
383
383
|
*
|
|
384
384
|
* ```
|
|
385
385
|
* <script type="module">
|
|
386
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
386
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
387
387
|
* console.log(Monster.Types.validateInteger(true)) // ↦ TypeError
|
|
388
388
|
* console.log(Monster.Types.validateInteger('2')) // ↦ TypeError
|
|
389
389
|
* console.log(Monster.Types.validateInteger(2)) // ↦ value
|
|
@@ -394,7 +394,7 @@ function validateFunction(value) {
|
|
|
394
394
|
*
|
|
395
395
|
* ```
|
|
396
396
|
* <script type="module">
|
|
397
|
-
* import {validateFunction} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
397
|
+
* import {validateFunction} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/validate.js';
|
|
398
398
|
* console.log(validateInteger(true)) // ↦ TypeError
|
|
399
399
|
* console.log(validateInteger('2')) // ↦ TypeError
|
|
400
400
|
* console.log(validateInteger(2)) // ↦ value
|
|
@@ -415,7 +415,7 @@ function validateInteger(value) {
|
|
|
415
415
|
return value
|
|
416
416
|
}
|
|
417
417
|
|
|
418
|
-
|
|
418
|
+
assignToNamespace('Monster.Types', validatePrimitive, validateBoolean, validateString, validateObject, validateArray, validateFunction, validateIterable, validateInteger);
|
|
419
419
|
export {
|
|
420
420
|
Monster,
|
|
421
421
|
validatePrimitive,
|
package/source/types/version.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
import {Monster} from '../namespace.js';
|
|
3
|
+
import {assignToNamespace, Monster} from '../namespace.js';
|
|
4
4
|
import {Base} from './base.js';
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -10,7 +10,7 @@ import {Base} from './base.js';
|
|
|
10
10
|
*
|
|
11
11
|
* ```
|
|
12
12
|
* <script type="module">
|
|
13
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
13
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/version.js';
|
|
14
14
|
* console.log(new Monster.Types.Version('1.2.3')) // ↦ 1.2.3
|
|
15
15
|
* console.log(new Monster.Types.Version('1')) // ↦ 1.0.0
|
|
16
16
|
* </script>
|
|
@@ -20,7 +20,7 @@ import {Base} from './base.js';
|
|
|
20
20
|
*
|
|
21
21
|
* ```
|
|
22
22
|
* <script type="module">
|
|
23
|
-
* import {Version} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
23
|
+
* import {Version} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/version.js';
|
|
24
24
|
* console.log(new Version('1.2.3')) // ↦ 1.2.3
|
|
25
25
|
* console.log(new Version('1')) // ↦ 1.0.0
|
|
26
26
|
* </script>
|
|
@@ -28,7 +28,7 @@ import {Base} from './base.js';
|
|
|
28
28
|
*
|
|
29
29
|
* @example
|
|
30
30
|
*
|
|
31
|
-
* import {Version} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
31
|
+
* import {Version} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/version.js';
|
|
32
32
|
*
|
|
33
33
|
* new Version('1.0.0') // ↦ 1.0.0
|
|
34
34
|
* new Version(1) // ↦ 1.0.0
|
|
@@ -138,7 +138,7 @@ class Version extends Base {
|
|
|
138
138
|
|
|
139
139
|
}
|
|
140
140
|
|
|
141
|
-
|
|
141
|
+
assignToNamespace('Monster.Types', Version);
|
|
142
142
|
|
|
143
143
|
|
|
144
144
|
let monsterVersion;
|
|
@@ -150,7 +150,7 @@ let monsterVersion;
|
|
|
150
150
|
*
|
|
151
151
|
* ```
|
|
152
152
|
* <script type="module">
|
|
153
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
153
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/version.js';
|
|
154
154
|
* console.log(Monster.getVersion())
|
|
155
155
|
* </script>
|
|
156
156
|
* ```
|
|
@@ -159,7 +159,7 @@ let monsterVersion;
|
|
|
159
159
|
*
|
|
160
160
|
* ```
|
|
161
161
|
* <script type="module">
|
|
162
|
-
* import {getVersion} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
162
|
+
* import {getVersion} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/types/version.js';
|
|
163
163
|
* console.log(getVersion())
|
|
164
164
|
* </script>
|
|
165
165
|
* ```
|
|
@@ -175,12 +175,12 @@ function getVersion() {
|
|
|
175
175
|
return monsterVersion;
|
|
176
176
|
}
|
|
177
177
|
/**#@+ dont touch, replaced by make with package.json version */
|
|
178
|
-
monsterVersion = new Version('1.
|
|
178
|
+
monsterVersion = new Version('1.15.2')
|
|
179
179
|
/**#@-*/
|
|
180
180
|
|
|
181
181
|
return monsterVersion;
|
|
182
182
|
|
|
183
183
|
}
|
|
184
184
|
|
|
185
|
-
|
|
185
|
+
assignToNamespace('Monster', getVersion);
|
|
186
186
|
export {Monster, Version, getVersion}
|
package/source/util/clone.js
CHANGED
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
* @author schukai GmbH
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import {Monster} from '../namespace.js';
|
|
8
|
-
import {isObject, isFunction, isPrimitive, isArray} from '../types/is.js';
|
|
7
|
+
import {assignToNamespace, Monster} from '../namespace.js';
|
|
9
8
|
import {getGlobal} from '../types/global.js';
|
|
9
|
+
import {isArray, isFunction, isObject, isPrimitive} from '../types/is.js';
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
/**
|
|
@@ -22,7 +22,7 @@ import {getGlobal} from '../types/global.js';
|
|
|
22
22
|
*
|
|
23
23
|
* ```
|
|
24
24
|
* <script type="module">
|
|
25
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
25
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/util/clone.js';
|
|
26
26
|
* console.log(Monster.Util.clone({}))
|
|
27
27
|
* </script>
|
|
28
28
|
* ```
|
|
@@ -31,7 +31,7 @@ import {getGlobal} from '../types/global.js';
|
|
|
31
31
|
*
|
|
32
32
|
* ```
|
|
33
33
|
* <script type="module">
|
|
34
|
-
* import {clone} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
34
|
+
* import {clone} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/util/clone.js';
|
|
35
35
|
* console.log(clone({}))
|
|
36
36
|
* </script>
|
|
37
37
|
* ```
|
|
@@ -55,7 +55,7 @@ function clone(obj) {
|
|
|
55
55
|
if (isPrimitive(obj)) {
|
|
56
56
|
return obj;
|
|
57
57
|
}
|
|
58
|
-
|
|
58
|
+
|
|
59
59
|
// Handle the two simple types, null and undefined
|
|
60
60
|
if (isFunction(obj)) {
|
|
61
61
|
return obj;
|
|
@@ -147,5 +147,5 @@ function cloneObject(obj) {
|
|
|
147
147
|
return copy;
|
|
148
148
|
}
|
|
149
149
|
|
|
150
|
-
|
|
150
|
+
assignToNamespace('Monster.Util', clone);
|
|
151
151
|
export {Monster, clone}
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
/**
|
|
4
4
|
* @author schukai GmbH
|
|
5
5
|
*/
|
|
6
|
-
|
|
7
|
-
import {
|
|
6
|
+
import {assignToNamespace, Monster} from '../namespace.js';
|
|
7
|
+
import {Base} from '../types/base.js';
|
|
8
8
|
import {isFunction} from '../types/is.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -12,7 +12,7 @@ import {isFunction} from '../types/is.js';
|
|
|
12
12
|
*
|
|
13
13
|
* ```
|
|
14
14
|
* <script type="module">
|
|
15
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
15
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/util/comparator.js';
|
|
16
16
|
* console.log(new Monster.Util.Comparator())
|
|
17
17
|
* </script>
|
|
18
18
|
* ```
|
|
@@ -21,7 +21,7 @@ import {isFunction} from '../types/is.js';
|
|
|
21
21
|
*
|
|
22
22
|
* ```
|
|
23
23
|
* <script type="module">
|
|
24
|
-
* import {Comparator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
24
|
+
* import {Comparator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/util/comparator.js';
|
|
25
25
|
* console.log(new Comparator())
|
|
26
26
|
* </script>
|
|
27
27
|
* ```
|
|
@@ -43,10 +43,10 @@ import {isFunction} from '../types/is.js';
|
|
|
43
43
|
* return a.v < b.v ? -1 : 1;
|
|
44
44
|
* }).equal({v: 2}, {v: 2}); // ↦ true
|
|
45
45
|
* ```
|
|
46
|
-
*
|
|
46
|
+
*
|
|
47
47
|
* @example
|
|
48
48
|
*
|
|
49
|
-
* import {Comparator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
49
|
+
* import {Comparator} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/util/comparator.js';
|
|
50
50
|
*
|
|
51
51
|
* console.log(new Comparator().lessThanOrEqual(2, 5))
|
|
52
52
|
* // ↦ true
|
|
@@ -168,5 +168,5 @@ class Comparator extends Base {
|
|
|
168
168
|
|
|
169
169
|
}
|
|
170
170
|
|
|
171
|
-
|
|
171
|
+
assignToNamespace('Monster.Util', Comparator);
|
|
172
172
|
export {Monster, Comparator}
|
package/source/util/freeze.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @author schukai GmbH
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import {Monster} from '../namespace.js';
|
|
7
|
+
import {assignToNamespace, Monster} from '../namespace.js';
|
|
8
8
|
import {validateObject} from '../types/validate.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -14,8 +14,8 @@ import {validateObject} from '../types/validate.js';
|
|
|
14
14
|
*
|
|
15
15
|
* ```
|
|
16
16
|
* <script type="module">
|
|
17
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
18
|
-
* console.log(Monster.Util.deepFreeze({}))
|
|
17
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/util/freeze.js';
|
|
18
|
+
* console.log(Monster.Util.deepFreeze({}))
|
|
19
19
|
* </script>
|
|
20
20
|
* ```
|
|
21
21
|
*
|
|
@@ -23,8 +23,8 @@ import {validateObject} from '../types/validate.js';
|
|
|
23
23
|
*
|
|
24
24
|
* ```
|
|
25
25
|
* <script type="module">
|
|
26
|
-
* import {deepFreeze} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
27
|
-
* console.log(deepFreeze({}))
|
|
26
|
+
* import {deepFreeze} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.15.2/dist/modules/util/freeze.js';
|
|
27
|
+
* console.log(deepFreeze({}))
|
|
28
28
|
* </script>
|
|
29
29
|
* ```
|
|
30
30
|
*
|
|
@@ -36,7 +36,7 @@ import {validateObject} from '../types/validate.js';
|
|
|
36
36
|
* @throws {TypeError} value is not a object
|
|
37
37
|
*/
|
|
38
38
|
function deepFreeze(object) {
|
|
39
|
-
|
|
39
|
+
|
|
40
40
|
validateObject(object)
|
|
41
41
|
|
|
42
42
|
// Retrieve the defined property names of the object
|
|
@@ -53,5 +53,5 @@ function deepFreeze(object) {
|
|
|
53
53
|
return Object.freeze(object);
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
|
|
56
|
+
assignToNamespace('Monster.Util', deepFreeze);
|
|
57
57
|
export {Monster, deepFreeze}
|
package/source/util/namespace.js
CHANGED