@schukai/monster 1.28.1 → 1.29.3
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 +21 -1
- package/README.md +3 -3
- package/dist/modules/constants.js +1 -1
- package/dist/modules/constraints/abstract.js +1 -1
- package/dist/modules/constraints/abstractoperator.js +1 -1
- package/dist/modules/constraints/andoperator.js +1 -1
- package/dist/modules/constraints/invalid.js +1 -1
- package/dist/modules/constraints/isarray.js +1 -1
- package/dist/modules/constraints/isobject.js +1 -1
- package/dist/modules/constraints/namespace.js +1 -1
- package/dist/modules/constraints/oroperator.js +1 -1
- package/dist/modules/constraints/valid.js +1 -1
- package/dist/modules/data/buildmap.js +2 -2
- package/dist/modules/data/buildtree.js +1 -1
- package/dist/modules/data/datasource/namespace.js +1 -1
- package/dist/modules/data/datasource/restapi/writeerror.js +1 -1
- package/dist/modules/data/datasource/restapi.js +1 -1
- package/dist/modules/data/datasource/storage/localstorage.js +1 -1
- package/dist/modules/data/datasource/storage/namespace.js +1 -1
- package/dist/modules/data/datasource/storage/sessionstorage.js +1 -1
- package/dist/modules/data/datasource/storage.js +1 -1
- package/dist/modules/data/datasource.js +1 -1
- package/dist/modules/data/diff.js +1 -1
- package/dist/modules/data/extend.js +1 -1
- package/dist/modules/data/namespace.js +1 -1
- package/dist/modules/data/pathfinder.js +1 -1
- package/dist/modules/data/pipe.js +1 -1
- package/dist/modules/data/transformer.js +1 -1
- package/dist/modules/dom/assembler.js +1 -1
- package/dist/modules/dom/attributes.js +1 -1
- package/dist/modules/dom/constants.js +1 -1
- package/dist/modules/dom/customcontrol.js +1 -1
- package/dist/modules/dom/customelement.js +2 -2
- package/dist/modules/dom/events.js +1 -1
- package/dist/modules/dom/focusmanager.js +1 -1
- package/dist/modules/dom/locale.js +1 -1
- package/dist/modules/dom/namespace.js +1 -1
- package/dist/modules/dom/resource/data.js +1 -1
- package/dist/modules/dom/resource/link/stylesheet.js +1 -1
- package/dist/modules/dom/resource/link.js +1 -1
- package/dist/modules/dom/resource/script.js +1 -1
- package/dist/modules/dom/resource.js +1 -1
- package/dist/modules/dom/resourcemanager.js +1 -1
- package/dist/modules/dom/template.js +1 -1
- package/dist/modules/dom/theme.js +1 -1
- package/dist/modules/dom/updater.js +2 -2
- package/dist/modules/dom/util.js +1 -1
- package/dist/modules/dom/worker/factory.js +1 -1
- package/dist/modules/i18n/formatter.js +1 -1
- package/dist/modules/i18n/locale.js +1 -1
- package/dist/modules/i18n/namespace.js +1 -1
- package/dist/modules/i18n/provider.js +1 -1
- package/dist/modules/i18n/providers/fetch.js +1 -1
- package/dist/modules/i18n/providers/namespace.js +1 -1
- package/dist/modules/i18n/translations.js +1 -1
- package/dist/modules/logging/handler/console.js +1 -1
- package/dist/modules/logging/handler/namespace.js +1 -1
- package/dist/modules/logging/handler.js +1 -1
- package/dist/modules/logging/logentry.js +1 -1
- package/dist/modules/logging/logger.js +1 -1
- package/dist/modules/logging/namespace.js +1 -1
- package/dist/modules/math/namespace.js +1 -1
- package/dist/modules/math/random.js +1 -1
- package/dist/modules/monster.js +1 -1
- package/dist/modules/namespace.js +1 -1
- package/dist/modules/text/formatter.js +1 -1
- package/dist/modules/text/namespace.js +1 -1
- package/dist/modules/types/base.js +1 -1
- package/dist/modules/types/basewithoptions.js +1 -1
- package/dist/modules/types/binary.js +1 -1
- package/dist/modules/types/dataurl.js +1 -1
- package/dist/modules/types/global.js +1 -1
- package/dist/modules/types/id.js +1 -1
- package/dist/modules/types/is.js +1 -1
- package/dist/modules/types/mediatype.js +1 -1
- package/dist/modules/types/namespace.js +1 -1
- package/dist/modules/types/node.js +1 -1
- package/dist/modules/types/nodelist.js +1 -1
- package/dist/modules/types/noderecursiveiterator.js +1 -1
- package/dist/modules/types/observer.js +1 -1
- package/dist/modules/types/observerlist.js +1 -1
- package/dist/modules/types/proxyobserver.js +1 -1
- package/dist/modules/types/queue.js +1 -1
- package/dist/modules/types/randomid.js +1 -1
- package/dist/modules/types/regex.js +1 -1
- package/dist/modules/types/stack.js +1 -1
- package/dist/modules/types/tokenlist.js +1 -1
- package/dist/modules/types/typeof.js +1 -1
- package/dist/modules/types/uniquequeue.js +1 -1
- package/dist/modules/types/uuid.js +1 -1
- package/dist/modules/types/validate.js +1 -1
- package/dist/modules/types/version.js +2 -2
- package/dist/modules/util/clone.js +1 -1
- package/dist/modules/util/comparator.js +1 -1
- package/dist/modules/util/deadmansswitch.js +2 -0
- package/dist/modules/util/freeze.js +1 -1
- package/dist/modules/util/namespace.js +1 -1
- package/dist/modules/util/processing.js +1 -1
- package/dist/modules/util/trimspaces.js +1 -1
- package/dist/monster.dev.js +465 -318
- package/dist/monster.dev.js.map +1 -1
- package/dist/monster.js +2 -2
- package/package.json +1 -1
- package/source/constraints/andoperator.js +5 -5
- package/source/constraints/invalid.js +3 -3
- package/source/constraints/isarray.js +3 -3
- package/source/constraints/isobject.js +3 -3
- package/source/constraints/oroperator.js +5 -5
- package/source/constraints/valid.js +3 -3
- package/source/data/buildmap.js +14 -6
- package/source/data/buildtree.js +2 -2
- package/source/data/datasource/restapi.js +3 -3
- package/source/data/datasource/storage/localstorage.js +2 -2
- package/source/data/datasource/storage/sessionstorage.js +2 -2
- package/source/data/datasource/storage.js +3 -3
- package/source/data/datasource.js +3 -3
- package/source/data/diff.js +3 -3
- package/source/data/extend.js +2 -2
- package/source/data/pathfinder.js +5 -4
- package/source/data/pipe.js +3 -3
- package/source/data/transformer.js +3 -3
- package/source/dom/assembler.js +2 -2
- package/source/dom/attributes.js +27 -27
- package/source/dom/customcontrol.js +1 -1
- package/source/dom/customelement.js +70 -22
- package/source/dom/events.js +7 -7
- package/source/dom/focusmanager.js +2 -2
- package/source/dom/locale.js +2 -2
- package/source/dom/resource/data.js +2 -2
- package/source/dom/resource/link/stylesheet.js +2 -2
- package/source/dom/resource/link.js +2 -2
- package/source/dom/resource/script.js +2 -2
- package/source/dom/resource.js +2 -2
- package/source/dom/resourcemanager.js +2 -2
- package/source/dom/template.js +5 -5
- package/source/dom/theme.js +3 -3
- package/source/dom/updater.js +45 -14
- package/source/dom/util.js +6 -6
- package/source/dom/worker/factory.js +2 -2
- package/source/i18n/formatter.js +4 -4
- package/source/i18n/locale.js +4 -4
- package/source/i18n/provider.js +2 -2
- package/source/i18n/providers/fetch.js +3 -3
- package/source/i18n/translations.js +4 -4
- package/source/logging/handler/console.js +2 -2
- package/source/logging/handler.js +2 -2
- package/source/logging/logentry.js +2 -2
- package/source/logging/logger.js +2 -2
- package/source/math/random.js +2 -2
- package/source/namespace.js +1 -1
- package/source/text/formatter.js +3 -3
- package/source/types/base.js +2 -2
- package/source/types/basewithoptions.js +32 -6
- package/source/types/binary.js +4 -4
- package/source/types/dataurl.js +4 -4
- package/source/types/global.js +4 -4
- package/source/types/id.js +2 -2
- package/source/types/is.js +20 -20
- package/source/types/mediatype.js +4 -4
- package/source/types/node.js +2 -2
- package/source/types/nodelist.js +2 -2
- package/source/types/noderecursiveiterator.js +4 -4
- package/source/types/observer.js +5 -13
- package/source/types/observerlist.js +2 -2
- package/source/types/proxyobserver.js +5 -5
- package/source/types/queue.js +3 -3
- package/source/types/randomid.js +2 -2
- package/source/types/regex.js +2 -2
- package/source/types/stack.js +2 -2
- package/source/types/tokenlist.js +2 -2
- package/source/types/typeof.js +3 -3
- package/source/types/uniquequeue.js +2 -2
- package/source/types/uuid.js +2 -2
- package/source/types/validate.js +20 -20
- package/source/types/version.js +6 -6
- package/source/util/clone.js +2 -2
- package/source/util/comparator.js +3 -3
- package/source/util/deadmansswitch.js +124 -0
- package/source/util/freeze.js +2 -2
- package/source/util/processing.js +3 -3
- package/source/util/trimspaces.js +2 -2
- package/test/cases/dom/customelement.js +213 -3
- package/test/cases/dom/resource/link.js +3 -5
- package/test/cases/dom/updater.js +76 -3
- package/test/cases/math/random.js +3 -0
- package/test/cases/monster.js +1 -1
- package/test/cases/util/deadmansswitch.js +71 -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 -2
- package/test/web/tests.js +2 -2
package/source/dom/template.js
CHANGED
|
@@ -15,7 +15,7 @@ import {getDocumentTheme} from "./theme.js";
|
|
|
15
15
|
*
|
|
16
16
|
* ```
|
|
17
17
|
* <script type="module">
|
|
18
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
18
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
19
19
|
* new Monster.DOM.Template()
|
|
20
20
|
* </script>
|
|
21
21
|
* ```
|
|
@@ -24,7 +24,7 @@ import {getDocumentTheme} from "./theme.js";
|
|
|
24
24
|
*
|
|
25
25
|
* ```
|
|
26
26
|
* <script type="module">
|
|
27
|
-
* import {Template} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
27
|
+
* import {Template} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/dom/template.js';
|
|
28
28
|
* new Template()
|
|
29
29
|
* </script>
|
|
30
30
|
* ```
|
|
@@ -86,7 +86,7 @@ class Template extends Base {
|
|
|
86
86
|
*
|
|
87
87
|
* ```
|
|
88
88
|
* <script type="module">
|
|
89
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
89
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
90
90
|
* Monster.DOM.findDocumentTemplate()
|
|
91
91
|
* </script>
|
|
92
92
|
* ```
|
|
@@ -95,14 +95,14 @@ class Template extends Base {
|
|
|
95
95
|
*
|
|
96
96
|
* ```
|
|
97
97
|
* <script type="module">
|
|
98
|
-
* import {findTemplate} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
98
|
+
* import {findTemplate} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/dom/template.js';
|
|
99
99
|
* findDocumentTemplate()
|
|
100
100
|
* </script>
|
|
101
101
|
* ```
|
|
102
102
|
*
|
|
103
103
|
* @example
|
|
104
104
|
*
|
|
105
|
-
* import { findDocumentTemplate } from "https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
105
|
+
* import { findDocumentTemplate } from "https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/dom/template.js";
|
|
106
106
|
*
|
|
107
107
|
* const template = document.createElement("template");
|
|
108
108
|
* template.id = "myTemplate";
|
package/source/dom/theme.js
CHANGED
|
@@ -15,7 +15,7 @@ import {ATTRIBUTE_THEME_NAME, DEFAULT_THEME} from "./constants.js";
|
|
|
15
15
|
*
|
|
16
16
|
* ```
|
|
17
17
|
* <script type="module">
|
|
18
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
18
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
19
19
|
* console.log(new Monster.DOM.Theme())
|
|
20
20
|
* </script>
|
|
21
21
|
* ```
|
|
@@ -24,14 +24,14 @@ import {ATTRIBUTE_THEME_NAME, DEFAULT_THEME} from "./constants.js";
|
|
|
24
24
|
*
|
|
25
25
|
* ```
|
|
26
26
|
* <script type="module">
|
|
27
|
-
* import {Theme} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
27
|
+
* import {Theme} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/dom/theme.js';
|
|
28
28
|
* console.log(new Theme())
|
|
29
29
|
* </script>
|
|
30
30
|
* ```
|
|
31
31
|
*
|
|
32
32
|
* @example
|
|
33
33
|
*
|
|
34
|
-
* import {getDocumentTheme} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
34
|
+
* import {getDocumentTheme} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/dom/theme.js';
|
|
35
35
|
*
|
|
36
36
|
* const theme = getDocumentTheme();
|
|
37
37
|
* console.log(theme.getName());
|
package/source/dom/updater.js
CHANGED
|
@@ -44,7 +44,7 @@ import {getDocument} from "./util.js";
|
|
|
44
44
|
*
|
|
45
45
|
* ```
|
|
46
46
|
* <script type="module">
|
|
47
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
47
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
48
48
|
* new Monster.DOM.Updater()
|
|
49
49
|
* </script>
|
|
50
50
|
* ```
|
|
@@ -53,14 +53,14 @@ import {getDocument} from "./util.js";
|
|
|
53
53
|
*
|
|
54
54
|
* ```
|
|
55
55
|
* <script type="module">
|
|
56
|
-
* import {Updater} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
56
|
+
* import {Updater} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/dom/updater.js';
|
|
57
57
|
* new Updater()
|
|
58
58
|
* </script>
|
|
59
59
|
* ```
|
|
60
60
|
*
|
|
61
61
|
* @example
|
|
62
62
|
*
|
|
63
|
-
* import {Updater} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
63
|
+
* import {Updater} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/dom/updater.js';
|
|
64
64
|
*
|
|
65
65
|
* // First we prepare the html document.
|
|
66
66
|
* // This is done here via script, but can also be inserted into the document as pure html.
|
|
@@ -332,6 +332,8 @@ function getControlEventHandler() {
|
|
|
332
332
|
* @throws {Error} the bind argument must start as a value with a path
|
|
333
333
|
* @param {HTMLElement} element
|
|
334
334
|
* @return void
|
|
335
|
+
* @memberOf Monster.DOM
|
|
336
|
+
* @private
|
|
335
337
|
*/
|
|
336
338
|
function retrieveAndSetValue(element) {
|
|
337
339
|
|
|
@@ -402,6 +404,7 @@ function retrieveAndSetValue(element) {
|
|
|
402
404
|
/**
|
|
403
405
|
* @since 1.27.0
|
|
404
406
|
* @return void
|
|
407
|
+
* @private
|
|
405
408
|
*/
|
|
406
409
|
function retrieveFromBindings() {
|
|
407
410
|
const self = this;
|
|
@@ -449,19 +452,34 @@ function insertElement(change) {
|
|
|
449
452
|
let mem = new WeakSet;
|
|
450
453
|
let wd = 0;
|
|
451
454
|
|
|
455
|
+
const container = self[internalSymbol].element;
|
|
452
456
|
|
|
453
457
|
while (true) {
|
|
454
458
|
let found = false;
|
|
455
459
|
wd++;
|
|
456
460
|
|
|
457
461
|
let p = clone(change?.['path']);
|
|
458
|
-
if (!isArray(p)) return
|
|
462
|
+
if (!isArray(p)) return self;
|
|
459
463
|
|
|
460
464
|
while (p.length > 0) {
|
|
461
465
|
const current = p.join('.');
|
|
462
|
-
const list = this[internalSymbol].element.querySelectorAll(':scope [' + ATTRIBUTE_UPDATER_INSERT + '*="path:' + current + '"]').entries()
|
|
463
466
|
|
|
464
|
-
|
|
467
|
+
let iterator = new Set;
|
|
468
|
+
const query = '[' + ATTRIBUTE_UPDATER_INSERT + '*="path:' + current + '"]';
|
|
469
|
+
|
|
470
|
+
const e = container.querySelectorAll(query);
|
|
471
|
+
|
|
472
|
+
if (e.length > 0) {
|
|
473
|
+
iterator = new Set(
|
|
474
|
+
[...e]
|
|
475
|
+
)
|
|
476
|
+
}
|
|
477
|
+
|
|
478
|
+
if (container.matches(query)) {
|
|
479
|
+
iterator.add(container);
|
|
480
|
+
}
|
|
481
|
+
|
|
482
|
+
for (const [, containerElement] of iterator.entries()) {
|
|
465
483
|
|
|
466
484
|
if (mem.has(containerElement)) continue;
|
|
467
485
|
mem.add(containerElement)
|
|
@@ -481,7 +499,7 @@ function insertElement(change) {
|
|
|
481
499
|
}
|
|
482
500
|
|
|
483
501
|
let pipe = new Pipe(cmd);
|
|
484
|
-
|
|
502
|
+
self[internalSymbol].callbacks.forEach((f, n) => {
|
|
485
503
|
pipe.setCallback(n, f);
|
|
486
504
|
})
|
|
487
505
|
|
|
@@ -524,7 +542,12 @@ function insertElement(change) {
|
|
|
524
542
|
let nodes = containerElement.querySelectorAll('[' + ATTRIBUTE_UPDATER_INSERT_REFERENCE + '*="' + refPrefix + '"]');
|
|
525
543
|
for (const [, node] of Object.entries(nodes)) {
|
|
526
544
|
if (!available.has(node.getAttribute(ATTRIBUTE_UPDATER_INSERT_REFERENCE))) {
|
|
527
|
-
|
|
545
|
+
try {
|
|
546
|
+
containerElement.removeChild(node);
|
|
547
|
+
} catch (e) {
|
|
548
|
+
containerElement.setAttribute(ATTRIBUTE_ERRORMESSAGE, (containerElement.getAttribute(ATTRIBUTE_ERRORMESSAGE) + ", " + e.message).trim());
|
|
549
|
+
}
|
|
550
|
+
|
|
528
551
|
}
|
|
529
552
|
}
|
|
530
553
|
}
|
|
@@ -653,7 +676,10 @@ function runUpdateContent(container, parts, subject) {
|
|
|
653
676
|
iterator.add(container);
|
|
654
677
|
}
|
|
655
678
|
|
|
656
|
-
|
|
679
|
+
/**
|
|
680
|
+
* @type {HTMLElement} element
|
|
681
|
+
*/
|
|
682
|
+
for (const [element] of iterator.entries()) {
|
|
657
683
|
|
|
658
684
|
if (mem.has(element)) return;
|
|
659
685
|
mem.add(element)
|
|
@@ -678,12 +704,18 @@ function runUpdateContent(container, parts, subject) {
|
|
|
678
704
|
while (element.firstChild) {
|
|
679
705
|
element.removeChild(element.firstChild);
|
|
680
706
|
}
|
|
681
|
-
|
|
707
|
+
|
|
708
|
+
try {
|
|
709
|
+
element.appendChild(value);
|
|
710
|
+
} catch (e) {
|
|
711
|
+
element.setAttribute(ATTRIBUTE_ERRORMESSAGE, (element.getAttribute(ATTRIBUTE_ERRORMESSAGE) + ", " + e.message).trim());
|
|
712
|
+
}
|
|
713
|
+
|
|
682
714
|
} else {
|
|
683
715
|
element.innerHTML = value;
|
|
684
716
|
}
|
|
685
717
|
|
|
686
|
-
}
|
|
718
|
+
}
|
|
687
719
|
|
|
688
720
|
|
|
689
721
|
}
|
|
@@ -740,7 +772,7 @@ function runUpdateAttributes(container, parts, subject) {
|
|
|
740
772
|
iterator.add(container);
|
|
741
773
|
}
|
|
742
774
|
|
|
743
|
-
iterator.
|
|
775
|
+
for (const [element] of iterator.entries()) {
|
|
744
776
|
|
|
745
777
|
if (mem.has(element)) return;
|
|
746
778
|
mem.add(element)
|
|
@@ -778,8 +810,7 @@ function runUpdateAttributes(container, parts, subject) {
|
|
|
778
810
|
handleInputControlAttributeUpdate.call(this, element, name, value);
|
|
779
811
|
|
|
780
812
|
}
|
|
781
|
-
}
|
|
782
|
-
|
|
813
|
+
}
|
|
783
814
|
}
|
|
784
815
|
|
|
785
816
|
}
|
package/source/dom/util.js
CHANGED
|
@@ -13,7 +13,7 @@ import {validateString} from "../types/validate.js";
|
|
|
13
13
|
*
|
|
14
14
|
* ```
|
|
15
15
|
* <script type="module">
|
|
16
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
16
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
17
17
|
* console.log(Monster.DOM.getDocument())
|
|
18
18
|
* </script>
|
|
19
19
|
* ```
|
|
@@ -22,7 +22,7 @@ import {validateString} from "../types/validate.js";
|
|
|
22
22
|
*
|
|
23
23
|
* ```
|
|
24
24
|
* <script type="module">
|
|
25
|
-
* import {getDocument} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
25
|
+
* import {getDocument} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/dom/util.js';
|
|
26
26
|
* console.log(getDocument())
|
|
27
27
|
* </script>
|
|
28
28
|
* ```
|
|
@@ -74,7 +74,7 @@ function getDocument() {
|
|
|
74
74
|
*
|
|
75
75
|
* ```
|
|
76
76
|
* <script type="module">
|
|
77
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
77
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
78
78
|
* console.log(Monster.DOM.getWindow())
|
|
79
79
|
* </script>
|
|
80
80
|
* ```
|
|
@@ -83,7 +83,7 @@ function getDocument() {
|
|
|
83
83
|
*
|
|
84
84
|
* ```
|
|
85
85
|
* <script type="module">
|
|
86
|
-
* import {getWindow} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
86
|
+
* import {getWindow} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/dom/util.js';
|
|
87
87
|
* console.log(getWindow(null))
|
|
88
88
|
* </script>
|
|
89
89
|
* ```
|
|
@@ -140,7 +140,7 @@ function getWindow() {
|
|
|
140
140
|
*
|
|
141
141
|
* ```
|
|
142
142
|
* <script type="module">
|
|
143
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
143
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
144
144
|
* console.log(Monster.DOM.getDocumentFragmentFromString())
|
|
145
145
|
* </script>
|
|
146
146
|
* ```
|
|
@@ -149,7 +149,7 @@ function getWindow() {
|
|
|
149
149
|
*
|
|
150
150
|
* ```
|
|
151
151
|
* <script type="module">
|
|
152
|
-
* import {getDocumentFragmentFromString} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
152
|
+
* import {getDocumentFragmentFromString} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/dom/util.js';
|
|
153
153
|
* console.log(getDocumentFragmentFromString('<div></div>'))
|
|
154
154
|
* </script>
|
|
155
155
|
* ```
|
|
@@ -20,7 +20,7 @@ import {validateInstance, validateString} from "../../types/validate.js";
|
|
|
20
20
|
*
|
|
21
21
|
* ```
|
|
22
22
|
* <script type="module">
|
|
23
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
23
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
24
24
|
* console.log(new Monster.DOM.Worker.Factory())
|
|
25
25
|
* </script>
|
|
26
26
|
* ```
|
|
@@ -29,7 +29,7 @@ import {validateInstance, validateString} from "../../types/validate.js";
|
|
|
29
29
|
*
|
|
30
30
|
* ```
|
|
31
31
|
* <script type="module">
|
|
32
|
-
* import {Factory} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
32
|
+
* import {Factory} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/dom/worker/factory.js';
|
|
33
33
|
* console.log(new Factory())
|
|
34
34
|
* </script>
|
|
35
35
|
* ```
|
package/source/i18n/formatter.js
CHANGED
|
@@ -25,7 +25,7 @@ const internalTranslationSymbol = Symbol('internalTranslation')
|
|
|
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.29.3/dist/monster.js';
|
|
29
29
|
* new Monster.I18n.Formatter()
|
|
30
30
|
* </script>
|
|
31
31
|
* ```
|
|
@@ -34,15 +34,15 @@ const internalTranslationSymbol = Symbol('internalTranslation')
|
|
|
34
34
|
*
|
|
35
35
|
* ```
|
|
36
36
|
* <script type="module">
|
|
37
|
-
* import {Formatter} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
37
|
+
* import {Formatter} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/i18n/formatter.js';
|
|
38
38
|
* new Formatter()
|
|
39
39
|
* </script>
|
|
40
40
|
* ```
|
|
41
41
|
*
|
|
42
42
|
* @example
|
|
43
43
|
*
|
|
44
|
-
* import {Formatter} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
45
|
-
* import {Translations} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
44
|
+
* import {Formatter} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/i18n/formatter.js';
|
|
45
|
+
* import {Translations} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/i18n/translations.js';
|
|
46
46
|
*
|
|
47
47
|
* const translations = new Translations('en')
|
|
48
48
|
* .assignTranslations({
|
package/source/i18n/locale.js
CHANGED
|
@@ -25,7 +25,7 @@ const localeStringSymbol = Symbol('localeString');
|
|
|
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.29.3/dist/monster.js';
|
|
29
29
|
* new Monster.I18n.Locale()
|
|
30
30
|
* </script>
|
|
31
31
|
* ```
|
|
@@ -34,7 +34,7 @@ const localeStringSymbol = Symbol('localeString');
|
|
|
34
34
|
*
|
|
35
35
|
* ```
|
|
36
36
|
* <script type="module">
|
|
37
|
-
* import {Locale} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
37
|
+
* import {Locale} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/i18n/locale.js';
|
|
38
38
|
* new Locale()
|
|
39
39
|
* </script>
|
|
40
40
|
* ```
|
|
@@ -203,7 +203,7 @@ class Locale extends Base {
|
|
|
203
203
|
*
|
|
204
204
|
* ```
|
|
205
205
|
* <script type="module">
|
|
206
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
206
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
207
207
|
* new Monster.I18n.createLocale()
|
|
208
208
|
* </script>
|
|
209
209
|
* ```
|
|
@@ -212,7 +212,7 @@ class Locale extends Base {
|
|
|
212
212
|
*
|
|
213
213
|
* ```
|
|
214
214
|
* <script type="module">
|
|
215
|
-
* import {createLocale} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
215
|
+
* import {createLocale} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/i18n/locale.js';
|
|
216
216
|
* createLocale()
|
|
217
217
|
* </script>
|
|
218
218
|
* ```
|
package/source/i18n/provider.js
CHANGED
|
@@ -15,7 +15,7 @@ import {Translations} from "./translations.js"
|
|
|
15
15
|
*
|
|
16
16
|
* ```
|
|
17
17
|
* <script type="module">
|
|
18
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
18
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
19
19
|
* new Monster.I18n.Provider()
|
|
20
20
|
* </script>
|
|
21
21
|
* ```
|
|
@@ -24,7 +24,7 @@ import {Translations} from "./translations.js"
|
|
|
24
24
|
*
|
|
25
25
|
* ```
|
|
26
26
|
* <script type="module">
|
|
27
|
-
* import {Provider} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
27
|
+
* import {Provider} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/i18n/provider.js';
|
|
28
28
|
* new Provider()
|
|
29
29
|
* </script>
|
|
30
30
|
* ```
|
|
@@ -22,7 +22,7 @@ import {Translations} from "../translations.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.29.3/dist/monster.js';
|
|
26
26
|
* new Monster.I18n.Providers.Fetch()
|
|
27
27
|
* </script>
|
|
28
28
|
* ```
|
|
@@ -31,14 +31,14 @@ import {Translations} from "../translations.js";
|
|
|
31
31
|
*
|
|
32
32
|
* ```
|
|
33
33
|
* <script type="module">
|
|
34
|
-
* import {Fetch} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
34
|
+
* import {Fetch} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/i18n/providers/fetch.js';
|
|
35
35
|
* new Fetch()
|
|
36
36
|
* </script>
|
|
37
37
|
* ```
|
|
38
38
|
*
|
|
39
39
|
* @example <caption>das ist ein test</caption>
|
|
40
40
|
*
|
|
41
|
-
* import {Fetch} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
41
|
+
* import {Fetch} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/i18n/providers/fetch.js';
|
|
42
42
|
*
|
|
43
43
|
* // fetch from API
|
|
44
44
|
* const translation = new Fetch('https://example.com/${language}.json').getTranslation('en-GB');
|
|
@@ -17,7 +17,7 @@ import {Locale, parseLocale} from "./locale.js";
|
|
|
17
17
|
*
|
|
18
18
|
* ```
|
|
19
19
|
* <script type="module">
|
|
20
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
20
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
21
21
|
* new Monster.I18n.Translations()
|
|
22
22
|
* </script>
|
|
23
23
|
* ```
|
|
@@ -26,15 +26,15 @@ import {Locale, parseLocale} from "./locale.js";
|
|
|
26
26
|
*
|
|
27
27
|
* ```
|
|
28
28
|
* <script type="module">
|
|
29
|
-
* import {Translations} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
29
|
+
* import {Translations} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/i18n/translations.js';
|
|
30
30
|
* new Translations()
|
|
31
31
|
* </script>
|
|
32
32
|
* ```
|
|
33
33
|
*
|
|
34
34
|
* @example
|
|
35
35
|
*
|
|
36
|
-
* import {Translations} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
37
|
-
* import {parseLocale} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
36
|
+
* import {Translations} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/i18n/translations.js';
|
|
37
|
+
* import {parseLocale} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/i18n/locale.js';
|
|
38
38
|
*
|
|
39
39
|
* const translation = new Translations(parseLocale('en-GB'));
|
|
40
40
|
*
|
|
@@ -15,7 +15,7 @@ import {LogEntry} from "../logentry.js";
|
|
|
15
15
|
*
|
|
16
16
|
* ```
|
|
17
17
|
* <script type="module">
|
|
18
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
18
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
19
19
|
* console.log(new Monster.Logging.Handler.ConsoleHandler())
|
|
20
20
|
* </script>
|
|
21
21
|
* ```
|
|
@@ -24,7 +24,7 @@ import {LogEntry} from "../logentry.js";
|
|
|
24
24
|
*
|
|
25
25
|
* ```
|
|
26
26
|
* <script type="module">
|
|
27
|
-
* import {ConsoleHandler} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
27
|
+
* import {ConsoleHandler} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/logging/handler/console.js';
|
|
28
28
|
* console.log(new ConsoleHandler())
|
|
29
29
|
* </script>
|
|
30
30
|
* ```
|
|
@@ -15,7 +15,7 @@ import {ALL, DEBUG, ERROR, FATAL, INFO, OFF, TRACE, WARN} from "./logger.js";
|
|
|
15
15
|
*
|
|
16
16
|
* ```
|
|
17
17
|
* <script type="module">
|
|
18
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
18
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
19
19
|
* console.log(new Monster.Logging.Handler())
|
|
20
20
|
* </script>
|
|
21
21
|
* ```
|
|
@@ -24,7 +24,7 @@ import {ALL, DEBUG, ERROR, FATAL, INFO, OFF, TRACE, WARN} from "./logger.js";
|
|
|
24
24
|
*
|
|
25
25
|
* ```
|
|
26
26
|
* <script type="module">
|
|
27
|
-
* import {ID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
27
|
+
* import {ID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/logging/handler.js';
|
|
28
28
|
* console.log(new Handler())
|
|
29
29
|
* </script>
|
|
30
30
|
* ```
|
|
@@ -14,7 +14,7 @@ import {validateInteger} 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.
|
|
17
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
18
18
|
* console.log(new Monster.Logging.LogEntry())
|
|
19
19
|
* </script>
|
|
20
20
|
* ```
|
|
@@ -23,7 +23,7 @@ import {validateInteger} from '../types/validate.js';
|
|
|
23
23
|
*
|
|
24
24
|
* ```
|
|
25
25
|
* <script type="module">
|
|
26
|
-
* import {ID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
26
|
+
* import {ID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/logging/logentry.js';
|
|
27
27
|
* console.log(new LogEntry())
|
|
28
28
|
* </script>
|
|
29
29
|
* ```
|
package/source/logging/logger.js
CHANGED
|
@@ -65,7 +65,7 @@ const OFF = 0;
|
|
|
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.29.3/dist/monster.js';
|
|
69
69
|
* new Monster.Logging.Logger()
|
|
70
70
|
* </script>
|
|
71
71
|
* ```
|
|
@@ -74,7 +74,7 @@ const OFF = 0;
|
|
|
74
74
|
*
|
|
75
75
|
* ```
|
|
76
76
|
* <script type="module">
|
|
77
|
-
* import {ID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
77
|
+
* import {ID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/logging/logger.js';
|
|
78
78
|
* new Logger()
|
|
79
79
|
* </script>
|
|
80
80
|
* ```
|
package/source/math/random.js
CHANGED
|
@@ -15,7 +15,7 @@ import {getGlobal} from '../types/global.js';
|
|
|
15
15
|
*
|
|
16
16
|
* ```
|
|
17
17
|
* <script type="module">
|
|
18
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
18
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
19
19
|
* Monster.Math.random(1,10)
|
|
20
20
|
* // ↦ 5
|
|
21
21
|
* </script>
|
|
@@ -25,7 +25,7 @@ import {getGlobal} from '../types/global.js';
|
|
|
25
25
|
*
|
|
26
26
|
* ```
|
|
27
27
|
* <script type="module">
|
|
28
|
-
* import {random} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
28
|
+
* import {random} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/math/random.js';
|
|
29
29
|
* random(1,10)
|
|
30
30
|
* // ↦ 5
|
|
31
31
|
* </script>
|
package/source/namespace.js
CHANGED
|
@@ -65,7 +65,7 @@ export const Monster = new Namespace("Monster");
|
|
|
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.29.3/dist/monster.js';
|
|
69
69
|
* function hello() {
|
|
70
70
|
* console.log('Hello World!');
|
|
71
71
|
* }
|
package/source/text/formatter.js
CHANGED
|
@@ -53,7 +53,7 @@ const workingDataSymbol = Symbol('workingData');
|
|
|
53
53
|
*
|
|
54
54
|
* ```
|
|
55
55
|
* <script type="module">
|
|
56
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
56
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
57
57
|
* new Monster.Text.Formatter()
|
|
58
58
|
* </script>
|
|
59
59
|
* ```
|
|
@@ -62,7 +62,7 @@ const workingDataSymbol = Symbol('workingData');
|
|
|
62
62
|
*
|
|
63
63
|
* ```
|
|
64
64
|
* <script type="module">
|
|
65
|
-
* import {Formatter} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
65
|
+
* import {Formatter} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/text/formatter.js';
|
|
66
66
|
* new Formatter()
|
|
67
67
|
* </script>
|
|
68
68
|
* ```
|
|
@@ -107,7 +107,7 @@ const workingDataSymbol = Symbol('workingData');
|
|
|
107
107
|
*
|
|
108
108
|
* @example
|
|
109
109
|
*
|
|
110
|
-
* import {Formatter} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
110
|
+
* import {Formatter} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/text/formatter.js';
|
|
111
111
|
*
|
|
112
112
|
* new Formatter({
|
|
113
113
|
* a: {
|
package/source/types/base.js
CHANGED
|
@@ -13,7 +13,7 @@ import {assignToNamespace, Monster} from '../namespace.js';
|
|
|
13
13
|
*
|
|
14
14
|
* ```
|
|
15
15
|
* <script type="module">
|
|
16
|
-
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
16
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/monster.js';
|
|
17
17
|
* new Monster.Types.Base()
|
|
18
18
|
* </script>
|
|
19
19
|
* ```
|
|
@@ -22,7 +22,7 @@ import {assignToNamespace, Monster} from '../namespace.js';
|
|
|
22
22
|
*
|
|
23
23
|
* ```
|
|
24
24
|
* <script type="module">
|
|
25
|
-
* import {Base} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.
|
|
25
|
+
* import {Base} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/dist/modules/types/base.js';
|
|
26
26
|
* new Base()
|
|
27
27
|
* </script>
|
|
28
28
|
* ```
|
|
@@ -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
|
-
*
|
|
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.
|
|
23
|
+
* import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/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.
|
|
32
|
+
* import {BaseWithOptions} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.29.3/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
|
-
*
|
|
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
|
*/
|