@schukai/monster 3.32.0 → 3.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/package.json +1 -1
- package/source/dom/customelement.mjs +1 -52
- package/source/dom/dimension.mjs +105 -0
- package/source/dom/slotted.mjs +111 -0
- package/source/types/version.mjs +1 -1
- package/source/util/runtime.mjs +96 -0
- package/test/cases/dom/assembler.mjs +0 -2
- package/test/cases/dom/attributes.mjs +0 -1
- package/test/cases/dom/customelement.mjs +1 -37
- package/test/cases/dom/dimension.mjs +128 -0
- package/test/cases/dom/find.mjs +16 -25
- package/test/cases/dom/slotted-nodes.mjs +14 -0
- package/test/cases/monster.mjs +1 -1
- package/test/util/chai-dom.mjs +2 -2
- package/test/util/jsdom.mjs +3 -1
- package/test/web/import.js +6 -0
- package/test/web/test.html +4 -4
- package/test/web/tests.js +3594 -2134
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import {expect} from 'chai';
|
|
2
|
+
import {getSlottedNodes} from "../../../../application/source/dom/slotted.mjs";
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
describe('getSlottedNodes', () => {
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
it('should return an empty Set if there is no ShadowRoot', () => {
|
|
9
|
+
expect(getSlottedNodes).is.a('function');
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
});
|
|
14
|
+
|
package/test/cases/monster.mjs
CHANGED
package/test/util/chai-dom.mjs
CHANGED
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
**********/
|
|
16
16
|
|
|
17
17
|
export function chaiDom(chai, utils) {
|
|
18
|
-
|
|
18
|
+
let flag = utils.flag,
|
|
19
19
|
|
|
20
20
|
elToString = function(el) {
|
|
21
|
-
|
|
21
|
+
let desc
|
|
22
22
|
if (isNodeList(el)) {
|
|
23
23
|
if (el.length === 0) return 'empty NodeList'
|
|
24
24
|
desc = Array.prototype.slice.call(el, 0, 5).map(elToString).join(', ')
|
package/test/util/jsdom.mjs
CHANGED
|
@@ -6,6 +6,7 @@ import {getGlobal} from "../../../application/source/types/global.mjs";
|
|
|
6
6
|
export const isBrowser = new Function("try {return this===window;}catch(e){ return false;}");
|
|
7
7
|
export const isNode = new Function("try {return this===global;}catch(e){return false;}");
|
|
8
8
|
|
|
9
|
+
let JSDOMExport = null;
|
|
9
10
|
|
|
10
11
|
/**
|
|
11
12
|
* this helper function creates the dom stack in the node environment
|
|
@@ -27,6 +28,7 @@ function initJSDOM(options) {
|
|
|
27
28
|
}, options || {})
|
|
28
29
|
|
|
29
30
|
return import("jsdom").then(({JSDOM}) => {
|
|
31
|
+
JSDOMExport = JSDOM;
|
|
30
32
|
const {window} = new JSDOM(`<html>
|
|
31
33
|
<head>
|
|
32
34
|
</head>
|
|
@@ -85,5 +87,5 @@ function initJSDOM(options) {
|
|
|
85
87
|
});
|
|
86
88
|
}
|
|
87
89
|
|
|
88
|
-
export {initJSDOM}
|
|
90
|
+
export {initJSDOM,JSDOMExport}
|
|
89
91
|
|
package/test/web/import.js
CHANGED
|
@@ -6,6 +6,8 @@ import "../cases/logging/logentry.mjs";
|
|
|
6
6
|
import "../cases/logging/handler/console.mjs";
|
|
7
7
|
import "../cases/logging/handler.mjs";
|
|
8
8
|
import "../cases/text/formatter.mjs";
|
|
9
|
+
import "../cases/text/util.mjs";
|
|
10
|
+
import "../cases/dom/slotted-nodes.mjs";
|
|
9
11
|
import "../cases/dom/resource/link/stylesheet.mjs";
|
|
10
12
|
import "../cases/dom/resource/data.mjs";
|
|
11
13
|
import "../cases/dom/resource/link.mjs";
|
|
@@ -17,6 +19,8 @@ import "../cases/dom/theme.mjs";
|
|
|
17
19
|
import "../cases/dom/resource.mjs";
|
|
18
20
|
import "../cases/dom/resourcemanager.mjs";
|
|
19
21
|
import "../cases/dom/util.mjs";
|
|
22
|
+
import "../cases/dom/find.mjs";
|
|
23
|
+
import "../cases/dom/dimension.mjs";
|
|
20
24
|
import "../cases/dom/customelement.mjs";
|
|
21
25
|
import "../cases/dom/attributes.mjs";
|
|
22
26
|
import "../cases/dom/events.mjs";
|
|
@@ -40,6 +44,7 @@ import "../cases/types/randomid.mjs";
|
|
|
40
44
|
import "../cases/types/observablequeue.mjs";
|
|
41
45
|
import "../cases/types/uuid.mjs";
|
|
42
46
|
import "../cases/types/observer.mjs";
|
|
47
|
+
import "../cases/types/internal.mjs";
|
|
43
48
|
import "../cases/types/tokenlist.mjs";
|
|
44
49
|
import "../cases/types/queue.mjs";
|
|
45
50
|
import "../cases/types/stack.mjs";
|
|
@@ -82,6 +87,7 @@ import "../cases/data/diff.mjs";
|
|
|
82
87
|
import "../cases/data/datasource/server.mjs";
|
|
83
88
|
import "../cases/data/datasource/storage/sessionstorage.mjs";
|
|
84
89
|
import "../cases/data/datasource/storage/localstorage.mjs";
|
|
90
|
+
import "../cases/data/datasource/dom.mjs";
|
|
85
91
|
import "../cases/data/datasource/server/restapi.mjs";
|
|
86
92
|
import "../cases/data/datasource/server/websocket.mjs";
|
|
87
93
|
import "../cases/math/random.mjs";
|
package/test/web/test.html
CHANGED
|
@@ -5,17 +5,17 @@
|
|
|
5
5
|
<title>Mocha Monster</title>
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
|
7
7
|
<link rel="stylesheet" href="mocha.css"/>
|
|
8
|
-
<script id="polyfill" src="https://polyfill.io/v3/polyfill.min.js?features=Array.from,Array.isArray,Array.prototype.entries,Array.prototype.fill,Array.prototype.filter,Array.prototype.forEach,Array.prototype.indexOf,Array.prototype.keys,Array.prototype.lastIndexOf,Array.prototype.map,Array.prototype.reduce,Array.prototype.sort,ArrayBuffer,atob,Blob,CustomEvent,DataView,document,Document,DocumentFragment,Element,Event,fetch,globalThis,HTMLDocument,HTMLTemplateElement,Intl,JSON,Map,Math.log2,Number.isInteger,Object.assign,Object.defineProperty,Object.entries,Object.freeze,Object.getOwnPropertyDescriptor,Object.getOwnPropertyNames,Object.getPrototypeOf,Object.keys,Promise,Reflect,Reflect.defineProperty,Reflect.get,Reflect.getOwnPropertyDescriptor,Reflect.setPrototypeOf,Set,String.prototype.endsWith,String.prototype.matchAll,String.prototype.padStart,String.prototype.startsWith,String.prototype.trim,Symbol,Symbol.for,Symbol.hasInstance,Symbol.iterator,Uint16Array,Uint8Array,URL,WeakMap,WeakSet"
|
|
8
|
+
<script id="polyfill" src="https://polyfill.io/v3/polyfill.min.js?features=Array.from,Array.isArray,Array.prototype.entries,Array.prototype.fill,Array.prototype.filter,Array.prototype.forEach,Array.prototype.includes,Array.prototype.indexOf,Array.prototype.keys,Array.prototype.lastIndexOf,Array.prototype.map,Array.prototype.reduce,Array.prototype.sort,ArrayBuffer,atob,Blob,CustomEvent,DataView,document,Document,DocumentFragment,Element,Event,fetch,globalThis,HTMLDocument,HTMLTemplateElement,Intl,JSON,Map,Math.log2,Number.isInteger,Object.assign,Object.defineProperty,Object.entries,Object.freeze,Object.getOwnPropertyDescriptor,Object.getOwnPropertyNames,Object.getPrototypeOf,Object.keys,Promise,Reflect,Reflect.defineProperty,Reflect.get,Reflect.getOwnPropertyDescriptor,Reflect.setPrototypeOf,Set,String.prototype.endsWith,String.prototype.includes,String.prototype.matchAll,String.prototype.padStart,String.prototype.startsWith,String.prototype.trim,Symbol,Symbol.for,Symbol.hasInstance,Symbol.iterator,Uint16Array,Uint8Array,URL,WeakMap,WeakSet"
|
|
9
9
|
src="https://polyfill.io/v3/polyfill.min.js?features=Array.from,Array.isArray,Array.prototype.entries,Array.prototype.fill,Array.prototype.forEach,Array.prototype.indexOf,Array.prototype.keys,Array.prototype.lastIndexOf,Array.prototype.map,Array.prototype.reduce,Array.prototype.sort,ArrayBuffer,atob,DataView,document,DocumentFragment,Element,Event,globalThis,HTMLDocument,HTMLTemplateElement,JSON,Map,Math.log2,Number.isInteger,Object.assign,Object.defineProperty,Object.entries,Object.getOwnPropertyDescriptor,Object.getPrototypeOf,Object.keys,Promise,Reflect,Reflect.defineProperty,Reflect.get,Reflect.getOwnPropertyDescriptor,Reflect.setPrototypeOf,Set,String.prototype.endsWith,String.prototype.matchAll,String.prototype.padStart,String.prototype.startsWith,String.prototype.trim,Symbol,Symbol.iterator,WeakMap,WeakSet"
|
|
10
10
|
crossorigin="anonymous"
|
|
11
11
|
referrerpolicy="no-referrer"></script>
|
|
12
|
-
<script src="https://cdn.jsdelivr.net/npm/element-internals-polyfill
|
|
12
|
+
<script src="https://cdn.jsdelivr.net/npm/element-internals-polyfill"></script>
|
|
13
13
|
|
|
14
14
|
</head>
|
|
15
15
|
<body>
|
|
16
16
|
<div id="headline" style="display: flex;align-items: center;justify-content: center;flex-direction: column;">
|
|
17
|
-
<h1 style='margin-bottom: 0.1em;'>Monster 3.
|
|
18
|
-
<div id="lastupdate" style='font-size:0.7em'>last update
|
|
17
|
+
<h1 style='margin-bottom: 0.1em;'>Monster 3.33.0</h1>
|
|
18
|
+
<div id="lastupdate" style='font-size:0.7em'>last update Mo 27. Mär 18:10:51 CEST 2023</div>
|
|
19
19
|
</div>
|
|
20
20
|
<div id="mocks"></div>
|
|
21
21
|
<div id="mocha"></div>
|