@stencil/core 2.16.0 → 2.17.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/cli/index.cjs +124 -16
- package/cli/index.js +124 -16
- package/cli/package.json +1 -1
- package/compiler/package.json +1 -1
- package/compiler/stencil.js +728 -263
- package/compiler/stencil.min.js +2 -2
- package/dependencies.json +1 -1
- package/dev-server/client/index.js +1 -1
- package/dev-server/client/package.json +1 -1
- package/dev-server/connector.html +3 -3
- package/dev-server/index.js +1 -1
- package/dev-server/package.json +1 -1
- package/dev-server/server-process.js +4 -2
- package/internal/app-data/package.json +1 -1
- package/internal/client/css-shim.js +1 -1
- package/internal/client/dom.js +1 -1
- package/internal/client/index.js +1 -1
- package/internal/client/package.json +1 -1
- package/internal/client/patch-browser.js +1 -1
- package/internal/client/patch-esm.js +1 -1
- package/internal/client/shadow-css.js +1 -1
- package/internal/hydrate/index.js +3 -3
- package/internal/hydrate/package.json +1 -1
- package/internal/package.json +1 -1
- package/internal/stencil-private.d.ts +4 -0
- package/internal/stencil-public-compiler.d.ts +3 -2
- package/internal/testing/index.js +1 -1
- package/internal/testing/package.json +1 -1
- package/mock-doc/index.cjs +142 -5
- package/mock-doc/index.d.ts +77 -1
- package/mock-doc/index.js +142 -5
- package/mock-doc/package.json +1 -1
- package/package.json +2 -1
- package/screenshot/index.js +2 -0
- package/screenshot/package.json +1 -1
- package/sys/node/index.js +325 -314
- package/sys/node/package.json +1 -1
- package/sys/node/worker.js +1 -1
- package/testing/index.d.ts +1 -1
- package/testing/index.js +105 -62
- package/testing/mocks.d.ts +22 -2
- package/testing/package.json +1 -1
package/mock-doc/index.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
Stencil Mock Doc (CommonJS) v2.
|
|
2
|
+
Stencil Mock Doc (CommonJS) v2.17.0 | MIT Licensed | https://stenciljs.com
|
|
3
3
|
*/
|
|
4
4
|
var mockDoc = (function(exports) {
|
|
5
5
|
'use strict';
|
|
@@ -1601,6 +1601,9 @@ class MockElement extends MockNode {
|
|
|
1601
1601
|
this.shadowRoot = shadowRoot;
|
|
1602
1602
|
return shadowRoot;
|
|
1603
1603
|
}
|
|
1604
|
+
blur() {
|
|
1605
|
+
/**/
|
|
1606
|
+
}
|
|
1604
1607
|
get shadowRoot() {
|
|
1605
1608
|
return this.__shadowRoot || null;
|
|
1606
1609
|
}
|
|
@@ -1669,6 +1672,7 @@ class MockElement extends MockNode {
|
|
|
1669
1672
|
get firstElementChild() {
|
|
1670
1673
|
return this.children[0] || null;
|
|
1671
1674
|
}
|
|
1675
|
+
focus(_options) { }
|
|
1672
1676
|
getAttribute(attrName) {
|
|
1673
1677
|
if (attrName === 'style') {
|
|
1674
1678
|
if (this.__style != null && this.__style.length > 0) {
|
|
@@ -2572,7 +2576,28 @@ function createElementNS(ownerDocument, namespaceURI, tagName) {
|
|
|
2572
2576
|
return createElement(ownerDocument, tagName);
|
|
2573
2577
|
}
|
|
2574
2578
|
else if (namespaceURI === 'http://www.w3.org/2000/svg') {
|
|
2575
|
-
|
|
2579
|
+
switch (tagName.toLowerCase()) {
|
|
2580
|
+
case 'text':
|
|
2581
|
+
case 'tspan':
|
|
2582
|
+
case 'tref':
|
|
2583
|
+
case 'altglyph':
|
|
2584
|
+
case 'textpath':
|
|
2585
|
+
return new MockSVGTextContentElement(ownerDocument, tagName);
|
|
2586
|
+
case 'circle':
|
|
2587
|
+
case 'ellipse':
|
|
2588
|
+
case 'image':
|
|
2589
|
+
case 'line':
|
|
2590
|
+
case 'path':
|
|
2591
|
+
case 'polygon':
|
|
2592
|
+
case 'polyline':
|
|
2593
|
+
case 'rect':
|
|
2594
|
+
case 'use':
|
|
2595
|
+
return new MockSVGGraphicsElement(ownerDocument, tagName);
|
|
2596
|
+
case 'svg':
|
|
2597
|
+
return new MockSVGSVGElement(ownerDocument, tagName);
|
|
2598
|
+
default:
|
|
2599
|
+
return new MockSVGElement(ownerDocument, tagName);
|
|
2600
|
+
}
|
|
2576
2601
|
}
|
|
2577
2602
|
else {
|
|
2578
2603
|
return new MockElement(ownerDocument, tagName);
|
|
@@ -2719,6 +2744,98 @@ class MockScriptElement extends MockHTMLElement {
|
|
|
2719
2744
|
patchPropAttributes(MockScriptElement.prototype, {
|
|
2720
2745
|
type: String,
|
|
2721
2746
|
});
|
|
2747
|
+
class MockDOMMatrix {
|
|
2748
|
+
constructor() {
|
|
2749
|
+
this.a = 1;
|
|
2750
|
+
this.b = 0;
|
|
2751
|
+
this.c = 0;
|
|
2752
|
+
this.d = 1;
|
|
2753
|
+
this.e = 0;
|
|
2754
|
+
this.f = 0;
|
|
2755
|
+
this.m11 = 1;
|
|
2756
|
+
this.m12 = 0;
|
|
2757
|
+
this.m13 = 0;
|
|
2758
|
+
this.m14 = 0;
|
|
2759
|
+
this.m21 = 0;
|
|
2760
|
+
this.m22 = 1;
|
|
2761
|
+
this.m23 = 0;
|
|
2762
|
+
this.m24 = 0;
|
|
2763
|
+
this.m31 = 0;
|
|
2764
|
+
this.m32 = 0;
|
|
2765
|
+
this.m33 = 1;
|
|
2766
|
+
this.m34 = 0;
|
|
2767
|
+
this.m41 = 0;
|
|
2768
|
+
this.m42 = 0;
|
|
2769
|
+
this.m43 = 0;
|
|
2770
|
+
this.m44 = 1;
|
|
2771
|
+
this.is2D = true;
|
|
2772
|
+
this.isIdentity = true;
|
|
2773
|
+
}
|
|
2774
|
+
static fromMatrix() {
|
|
2775
|
+
return new MockDOMMatrix();
|
|
2776
|
+
}
|
|
2777
|
+
inverse() {
|
|
2778
|
+
return new MockDOMMatrix();
|
|
2779
|
+
}
|
|
2780
|
+
flipX() {
|
|
2781
|
+
return new MockDOMMatrix();
|
|
2782
|
+
}
|
|
2783
|
+
flipY() {
|
|
2784
|
+
return new MockDOMMatrix();
|
|
2785
|
+
}
|
|
2786
|
+
multiply() {
|
|
2787
|
+
return new MockDOMMatrix();
|
|
2788
|
+
}
|
|
2789
|
+
rotate() {
|
|
2790
|
+
return new MockDOMMatrix();
|
|
2791
|
+
}
|
|
2792
|
+
rotateAxisAngle() {
|
|
2793
|
+
return new MockDOMMatrix();
|
|
2794
|
+
}
|
|
2795
|
+
rotateFromVector() {
|
|
2796
|
+
return new MockDOMMatrix();
|
|
2797
|
+
}
|
|
2798
|
+
scale() {
|
|
2799
|
+
return new MockDOMMatrix();
|
|
2800
|
+
}
|
|
2801
|
+
scaleNonUniform() {
|
|
2802
|
+
return new MockDOMMatrix();
|
|
2803
|
+
}
|
|
2804
|
+
skewX() {
|
|
2805
|
+
return new MockDOMMatrix();
|
|
2806
|
+
}
|
|
2807
|
+
skewY() {
|
|
2808
|
+
return new MockDOMMatrix();
|
|
2809
|
+
}
|
|
2810
|
+
toJSON() { }
|
|
2811
|
+
toString() { }
|
|
2812
|
+
transformPoint() {
|
|
2813
|
+
return new MockDOMPoint();
|
|
2814
|
+
}
|
|
2815
|
+
translate() {
|
|
2816
|
+
return new MockDOMMatrix();
|
|
2817
|
+
}
|
|
2818
|
+
}
|
|
2819
|
+
class MockDOMPoint {
|
|
2820
|
+
constructor() {
|
|
2821
|
+
this.w = 1;
|
|
2822
|
+
this.x = 0;
|
|
2823
|
+
this.y = 0;
|
|
2824
|
+
this.z = 0;
|
|
2825
|
+
}
|
|
2826
|
+
toJSON() { }
|
|
2827
|
+
matrixTransform() {
|
|
2828
|
+
return new MockDOMMatrix();
|
|
2829
|
+
}
|
|
2830
|
+
}
|
|
2831
|
+
class MockSVGRect {
|
|
2832
|
+
constructor() {
|
|
2833
|
+
this.height = 10;
|
|
2834
|
+
this.width = 10;
|
|
2835
|
+
this.x = 0;
|
|
2836
|
+
this.y = 0;
|
|
2837
|
+
}
|
|
2838
|
+
}
|
|
2722
2839
|
class MockStyleElement extends MockHTMLElement {
|
|
2723
2840
|
constructor(ownerDocument) {
|
|
2724
2841
|
super(ownerDocument, 'style');
|
|
@@ -2751,9 +2868,6 @@ class MockSVGElement extends MockElement {
|
|
|
2751
2868
|
get viewportElement() {
|
|
2752
2869
|
return null;
|
|
2753
2870
|
}
|
|
2754
|
-
focus() {
|
|
2755
|
-
/**/
|
|
2756
|
-
}
|
|
2757
2871
|
onunload() {
|
|
2758
2872
|
/**/
|
|
2759
2873
|
}
|
|
@@ -2771,6 +2885,27 @@ class MockSVGElement extends MockElement {
|
|
|
2771
2885
|
return 0;
|
|
2772
2886
|
}
|
|
2773
2887
|
}
|
|
2888
|
+
class MockSVGGraphicsElement extends MockSVGElement {
|
|
2889
|
+
getBBox(_options) {
|
|
2890
|
+
return new MockSVGRect();
|
|
2891
|
+
}
|
|
2892
|
+
getCTM() {
|
|
2893
|
+
return new MockDOMMatrix();
|
|
2894
|
+
}
|
|
2895
|
+
getScreenCTM() {
|
|
2896
|
+
return new MockDOMMatrix();
|
|
2897
|
+
}
|
|
2898
|
+
}
|
|
2899
|
+
class MockSVGSVGElement extends MockSVGGraphicsElement {
|
|
2900
|
+
createSVGPoint() {
|
|
2901
|
+
return new MockDOMPoint();
|
|
2902
|
+
}
|
|
2903
|
+
}
|
|
2904
|
+
class MockSVGTextContentElement extends MockSVGGraphicsElement {
|
|
2905
|
+
getComputedTextLength() {
|
|
2906
|
+
return 0;
|
|
2907
|
+
}
|
|
2908
|
+
}
|
|
2774
2909
|
class MockBaseElement extends MockHTMLElement {
|
|
2775
2910
|
constructor(ownerDocument) {
|
|
2776
2911
|
super(ownerDocument, 'base');
|
|
@@ -4267,9 +4402,11 @@ function cloneDocument(srcDoc) {
|
|
|
4267
4402
|
const dstWin = cloneWindow(srcDoc.defaultView);
|
|
4268
4403
|
return dstWin.document;
|
|
4269
4404
|
}
|
|
4405
|
+
// TODO(STENCIL-345) - Evaluate reconciling MockWindow, Window differences
|
|
4270
4406
|
/**
|
|
4271
4407
|
* Constrain setTimeout() to 1ms, but still async. Also
|
|
4272
4408
|
* only allow setInterval() to fire once, also constrained to 1ms.
|
|
4409
|
+
* @param win the mock window instance to update
|
|
4273
4410
|
*/
|
|
4274
4411
|
function constrainTimeouts(win) {
|
|
4275
4412
|
win.__allowInterval = false;
|
package/mock-doc/index.d.ts
CHANGED
|
@@ -199,6 +199,62 @@ declare class MockScriptElement extends MockHTMLElement {
|
|
|
199
199
|
get src(): string;
|
|
200
200
|
set src(value: string);
|
|
201
201
|
}
|
|
202
|
+
declare class MockDOMMatrix {
|
|
203
|
+
static fromMatrix(): MockDOMMatrix;
|
|
204
|
+
a: number;
|
|
205
|
+
b: number;
|
|
206
|
+
c: number;
|
|
207
|
+
d: number;
|
|
208
|
+
e: number;
|
|
209
|
+
f: number;
|
|
210
|
+
m11: number;
|
|
211
|
+
m12: number;
|
|
212
|
+
m13: number;
|
|
213
|
+
m14: number;
|
|
214
|
+
m21: number;
|
|
215
|
+
m22: number;
|
|
216
|
+
m23: number;
|
|
217
|
+
m24: number;
|
|
218
|
+
m31: number;
|
|
219
|
+
m32: number;
|
|
220
|
+
m33: number;
|
|
221
|
+
m34: number;
|
|
222
|
+
m41: number;
|
|
223
|
+
m42: number;
|
|
224
|
+
m43: number;
|
|
225
|
+
m44: number;
|
|
226
|
+
is2D: boolean;
|
|
227
|
+
isIdentity: boolean;
|
|
228
|
+
inverse(): MockDOMMatrix;
|
|
229
|
+
flipX(): MockDOMMatrix;
|
|
230
|
+
flipY(): MockDOMMatrix;
|
|
231
|
+
multiply(): MockDOMMatrix;
|
|
232
|
+
rotate(): MockDOMMatrix;
|
|
233
|
+
rotateAxisAngle(): MockDOMMatrix;
|
|
234
|
+
rotateFromVector(): MockDOMMatrix;
|
|
235
|
+
scale(): MockDOMMatrix;
|
|
236
|
+
scaleNonUniform(): MockDOMMatrix;
|
|
237
|
+
skewX(): MockDOMMatrix;
|
|
238
|
+
skewY(): MockDOMMatrix;
|
|
239
|
+
toJSON(): void;
|
|
240
|
+
toString(): void;
|
|
241
|
+
transformPoint(): MockDOMPoint;
|
|
242
|
+
translate(): MockDOMMatrix;
|
|
243
|
+
}
|
|
244
|
+
declare class MockDOMPoint {
|
|
245
|
+
w: number;
|
|
246
|
+
x: number;
|
|
247
|
+
y: number;
|
|
248
|
+
z: number;
|
|
249
|
+
toJSON(): void;
|
|
250
|
+
matrixTransform(): MockDOMMatrix;
|
|
251
|
+
}
|
|
252
|
+
declare class MockSVGRect {
|
|
253
|
+
height: number;
|
|
254
|
+
width: number;
|
|
255
|
+
x: number;
|
|
256
|
+
y: number;
|
|
257
|
+
}
|
|
202
258
|
declare class MockStyleElement extends MockHTMLElement {
|
|
203
259
|
sheet: MockCSSStyleSheet;
|
|
204
260
|
constructor(ownerDocument: any);
|
|
@@ -212,13 +268,28 @@ declare class MockStyleElement extends MockHTMLElement {
|
|
|
212
268
|
declare class MockSVGElement extends MockElement {
|
|
213
269
|
get ownerSVGElement(): SVGSVGElement;
|
|
214
270
|
get viewportElement(): SVGElement;
|
|
215
|
-
focus(): void;
|
|
216
271
|
onunload(): void;
|
|
217
272
|
get pathLength(): number;
|
|
218
273
|
isPointInFill(_pt: DOMPoint): boolean;
|
|
219
274
|
isPointInStroke(_pt: DOMPoint): boolean;
|
|
220
275
|
getTotalLength(): number;
|
|
221
276
|
}
|
|
277
|
+
declare class MockSVGGraphicsElement extends MockSVGElement {
|
|
278
|
+
getBBox(_options?: {
|
|
279
|
+
clipped: boolean;
|
|
280
|
+
fill: boolean;
|
|
281
|
+
markers: boolean;
|
|
282
|
+
stroke: boolean;
|
|
283
|
+
}): MockSVGRect;
|
|
284
|
+
getCTM(): MockDOMMatrix;
|
|
285
|
+
getScreenCTM(): MockDOMMatrix;
|
|
286
|
+
}
|
|
287
|
+
declare class MockSVGSVGElement extends MockSVGGraphicsElement {
|
|
288
|
+
createSVGPoint(): MockDOMPoint;
|
|
289
|
+
}
|
|
290
|
+
declare class MockSVGTextContentElement extends MockSVGGraphicsElement {
|
|
291
|
+
getComputedTextLength(): number;
|
|
292
|
+
}
|
|
222
293
|
declare class MockBaseElement extends MockHTMLElement {
|
|
223
294
|
constructor(ownerDocument: any);
|
|
224
295
|
get href(): string;
|
|
@@ -438,6 +509,7 @@ declare class MockElement extends MockNode {
|
|
|
438
509
|
constructor(ownerDocument: any, nodeName: string);
|
|
439
510
|
addEventListener(type: string, handler: (ev?: any) => void): void;
|
|
440
511
|
attachShadow(_opts: ShadowRootInit): any;
|
|
512
|
+
blur(): void;
|
|
441
513
|
get shadowRoot(): any;
|
|
442
514
|
set shadowRoot(shadowRoot: any);
|
|
443
515
|
get attributes(): MockAttributeMap;
|
|
@@ -455,6 +527,9 @@ declare class MockElement extends MockNode {
|
|
|
455
527
|
set dir(value: string);
|
|
456
528
|
dispatchEvent(ev: MockEvent): boolean;
|
|
457
529
|
get firstElementChild(): MockElement | null;
|
|
530
|
+
focus(_options?: {
|
|
531
|
+
preventScroll?: boolean;
|
|
532
|
+
}): void;
|
|
458
533
|
getAttribute(attrName: string): any;
|
|
459
534
|
getAttributeNS(namespaceURI: string, attrName: string): string;
|
|
460
535
|
getBoundingClientRect(): {
|
|
@@ -923,6 +998,7 @@ declare function cloneDocument(srcDoc: Document): Document;
|
|
|
923
998
|
/**
|
|
924
999
|
* Constrain setTimeout() to 1ms, but still async. Also
|
|
925
1000
|
* only allow setInterval() to fire once, also constrained to 1ms.
|
|
1001
|
+
* @param win the mock window instance to update
|
|
926
1002
|
*/
|
|
927
1003
|
declare function constrainTimeouts(win: any): void;
|
|
928
1004
|
export { MockAttr, MockAttributeMap, MockComment, MockCustomEvent, MockDocument, MockElement, MockHTMLElement, MockHeaders, MockKeyboardEvent, MockMouseEvent, MockNode, MockRequest, MockRequestInfo, MockRequestInit, MockResponse, MockResponseInit, MockTextNode, MockWindow, NODE_TYPES, SerializeNodeToHtmlOptions, cloneAttributes, cloneDocument, cloneWindow, constrainTimeouts, createDocument, createFragment, parseHtmlToDocument, parseHtmlToFragment, patchWindow, resetDocument, serializeNodeToHtml, setupGlobal, teardownGlobal }
|
package/mock-doc/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
Stencil Mock Doc v2.
|
|
2
|
+
Stencil Mock Doc v2.17.0 | MIT Licensed | https://stenciljs.com
|
|
3
3
|
*/
|
|
4
4
|
const CONTENT_REF_ID = 'r';
|
|
5
5
|
const ORG_LOCATION_ID = 'o';
|
|
@@ -1598,6 +1598,9 @@ class MockElement extends MockNode {
|
|
|
1598
1598
|
this.shadowRoot = shadowRoot;
|
|
1599
1599
|
return shadowRoot;
|
|
1600
1600
|
}
|
|
1601
|
+
blur() {
|
|
1602
|
+
/**/
|
|
1603
|
+
}
|
|
1601
1604
|
get shadowRoot() {
|
|
1602
1605
|
return this.__shadowRoot || null;
|
|
1603
1606
|
}
|
|
@@ -1666,6 +1669,7 @@ class MockElement extends MockNode {
|
|
|
1666
1669
|
get firstElementChild() {
|
|
1667
1670
|
return this.children[0] || null;
|
|
1668
1671
|
}
|
|
1672
|
+
focus(_options) { }
|
|
1669
1673
|
getAttribute(attrName) {
|
|
1670
1674
|
if (attrName === 'style') {
|
|
1671
1675
|
if (this.__style != null && this.__style.length > 0) {
|
|
@@ -2569,7 +2573,28 @@ function createElementNS(ownerDocument, namespaceURI, tagName) {
|
|
|
2569
2573
|
return createElement(ownerDocument, tagName);
|
|
2570
2574
|
}
|
|
2571
2575
|
else if (namespaceURI === 'http://www.w3.org/2000/svg') {
|
|
2572
|
-
|
|
2576
|
+
switch (tagName.toLowerCase()) {
|
|
2577
|
+
case 'text':
|
|
2578
|
+
case 'tspan':
|
|
2579
|
+
case 'tref':
|
|
2580
|
+
case 'altglyph':
|
|
2581
|
+
case 'textpath':
|
|
2582
|
+
return new MockSVGTextContentElement(ownerDocument, tagName);
|
|
2583
|
+
case 'circle':
|
|
2584
|
+
case 'ellipse':
|
|
2585
|
+
case 'image':
|
|
2586
|
+
case 'line':
|
|
2587
|
+
case 'path':
|
|
2588
|
+
case 'polygon':
|
|
2589
|
+
case 'polyline':
|
|
2590
|
+
case 'rect':
|
|
2591
|
+
case 'use':
|
|
2592
|
+
return new MockSVGGraphicsElement(ownerDocument, tagName);
|
|
2593
|
+
case 'svg':
|
|
2594
|
+
return new MockSVGSVGElement(ownerDocument, tagName);
|
|
2595
|
+
default:
|
|
2596
|
+
return new MockSVGElement(ownerDocument, tagName);
|
|
2597
|
+
}
|
|
2573
2598
|
}
|
|
2574
2599
|
else {
|
|
2575
2600
|
return new MockElement(ownerDocument, tagName);
|
|
@@ -2716,6 +2741,98 @@ class MockScriptElement extends MockHTMLElement {
|
|
|
2716
2741
|
patchPropAttributes(MockScriptElement.prototype, {
|
|
2717
2742
|
type: String,
|
|
2718
2743
|
});
|
|
2744
|
+
class MockDOMMatrix {
|
|
2745
|
+
constructor() {
|
|
2746
|
+
this.a = 1;
|
|
2747
|
+
this.b = 0;
|
|
2748
|
+
this.c = 0;
|
|
2749
|
+
this.d = 1;
|
|
2750
|
+
this.e = 0;
|
|
2751
|
+
this.f = 0;
|
|
2752
|
+
this.m11 = 1;
|
|
2753
|
+
this.m12 = 0;
|
|
2754
|
+
this.m13 = 0;
|
|
2755
|
+
this.m14 = 0;
|
|
2756
|
+
this.m21 = 0;
|
|
2757
|
+
this.m22 = 1;
|
|
2758
|
+
this.m23 = 0;
|
|
2759
|
+
this.m24 = 0;
|
|
2760
|
+
this.m31 = 0;
|
|
2761
|
+
this.m32 = 0;
|
|
2762
|
+
this.m33 = 1;
|
|
2763
|
+
this.m34 = 0;
|
|
2764
|
+
this.m41 = 0;
|
|
2765
|
+
this.m42 = 0;
|
|
2766
|
+
this.m43 = 0;
|
|
2767
|
+
this.m44 = 1;
|
|
2768
|
+
this.is2D = true;
|
|
2769
|
+
this.isIdentity = true;
|
|
2770
|
+
}
|
|
2771
|
+
static fromMatrix() {
|
|
2772
|
+
return new MockDOMMatrix();
|
|
2773
|
+
}
|
|
2774
|
+
inverse() {
|
|
2775
|
+
return new MockDOMMatrix();
|
|
2776
|
+
}
|
|
2777
|
+
flipX() {
|
|
2778
|
+
return new MockDOMMatrix();
|
|
2779
|
+
}
|
|
2780
|
+
flipY() {
|
|
2781
|
+
return new MockDOMMatrix();
|
|
2782
|
+
}
|
|
2783
|
+
multiply() {
|
|
2784
|
+
return new MockDOMMatrix();
|
|
2785
|
+
}
|
|
2786
|
+
rotate() {
|
|
2787
|
+
return new MockDOMMatrix();
|
|
2788
|
+
}
|
|
2789
|
+
rotateAxisAngle() {
|
|
2790
|
+
return new MockDOMMatrix();
|
|
2791
|
+
}
|
|
2792
|
+
rotateFromVector() {
|
|
2793
|
+
return new MockDOMMatrix();
|
|
2794
|
+
}
|
|
2795
|
+
scale() {
|
|
2796
|
+
return new MockDOMMatrix();
|
|
2797
|
+
}
|
|
2798
|
+
scaleNonUniform() {
|
|
2799
|
+
return new MockDOMMatrix();
|
|
2800
|
+
}
|
|
2801
|
+
skewX() {
|
|
2802
|
+
return new MockDOMMatrix();
|
|
2803
|
+
}
|
|
2804
|
+
skewY() {
|
|
2805
|
+
return new MockDOMMatrix();
|
|
2806
|
+
}
|
|
2807
|
+
toJSON() { }
|
|
2808
|
+
toString() { }
|
|
2809
|
+
transformPoint() {
|
|
2810
|
+
return new MockDOMPoint();
|
|
2811
|
+
}
|
|
2812
|
+
translate() {
|
|
2813
|
+
return new MockDOMMatrix();
|
|
2814
|
+
}
|
|
2815
|
+
}
|
|
2816
|
+
class MockDOMPoint {
|
|
2817
|
+
constructor() {
|
|
2818
|
+
this.w = 1;
|
|
2819
|
+
this.x = 0;
|
|
2820
|
+
this.y = 0;
|
|
2821
|
+
this.z = 0;
|
|
2822
|
+
}
|
|
2823
|
+
toJSON() { }
|
|
2824
|
+
matrixTransform() {
|
|
2825
|
+
return new MockDOMMatrix();
|
|
2826
|
+
}
|
|
2827
|
+
}
|
|
2828
|
+
class MockSVGRect {
|
|
2829
|
+
constructor() {
|
|
2830
|
+
this.height = 10;
|
|
2831
|
+
this.width = 10;
|
|
2832
|
+
this.x = 0;
|
|
2833
|
+
this.y = 0;
|
|
2834
|
+
}
|
|
2835
|
+
}
|
|
2719
2836
|
class MockStyleElement extends MockHTMLElement {
|
|
2720
2837
|
constructor(ownerDocument) {
|
|
2721
2838
|
super(ownerDocument, 'style');
|
|
@@ -2748,9 +2865,6 @@ class MockSVGElement extends MockElement {
|
|
|
2748
2865
|
get viewportElement() {
|
|
2749
2866
|
return null;
|
|
2750
2867
|
}
|
|
2751
|
-
focus() {
|
|
2752
|
-
/**/
|
|
2753
|
-
}
|
|
2754
2868
|
onunload() {
|
|
2755
2869
|
/**/
|
|
2756
2870
|
}
|
|
@@ -2768,6 +2882,27 @@ class MockSVGElement extends MockElement {
|
|
|
2768
2882
|
return 0;
|
|
2769
2883
|
}
|
|
2770
2884
|
}
|
|
2885
|
+
class MockSVGGraphicsElement extends MockSVGElement {
|
|
2886
|
+
getBBox(_options) {
|
|
2887
|
+
return new MockSVGRect();
|
|
2888
|
+
}
|
|
2889
|
+
getCTM() {
|
|
2890
|
+
return new MockDOMMatrix();
|
|
2891
|
+
}
|
|
2892
|
+
getScreenCTM() {
|
|
2893
|
+
return new MockDOMMatrix();
|
|
2894
|
+
}
|
|
2895
|
+
}
|
|
2896
|
+
class MockSVGSVGElement extends MockSVGGraphicsElement {
|
|
2897
|
+
createSVGPoint() {
|
|
2898
|
+
return new MockDOMPoint();
|
|
2899
|
+
}
|
|
2900
|
+
}
|
|
2901
|
+
class MockSVGTextContentElement extends MockSVGGraphicsElement {
|
|
2902
|
+
getComputedTextLength() {
|
|
2903
|
+
return 0;
|
|
2904
|
+
}
|
|
2905
|
+
}
|
|
2771
2906
|
class MockBaseElement extends MockHTMLElement {
|
|
2772
2907
|
constructor(ownerDocument) {
|
|
2773
2908
|
super(ownerDocument, 'base');
|
|
@@ -4264,9 +4399,11 @@ function cloneDocument(srcDoc) {
|
|
|
4264
4399
|
const dstWin = cloneWindow(srcDoc.defaultView);
|
|
4265
4400
|
return dstWin.document;
|
|
4266
4401
|
}
|
|
4402
|
+
// TODO(STENCIL-345) - Evaluate reconciling MockWindow, Window differences
|
|
4267
4403
|
/**
|
|
4268
4404
|
* Constrain setTimeout() to 1ms, but still async. Also
|
|
4269
4405
|
* only allow setInterval() to fire once, also constrained to 1ms.
|
|
4406
|
+
* @param win the mock window instance to update
|
|
4270
4407
|
*/
|
|
4271
4408
|
function constrainTimeouts(win) {
|
|
4272
4409
|
win.__allowInterval = false;
|
package/mock-doc/package.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stencil/core",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.17.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "./internal/stencil-core/index.cjs",
|
|
6
6
|
"module": "./internal/stencil-core/index.js",
|
|
@@ -98,6 +98,7 @@
|
|
|
98
98
|
"dts-bundle-generator": "~5.3.0",
|
|
99
99
|
"eslint": "^8.13.0",
|
|
100
100
|
"eslint-config-prettier": "^8.5.0",
|
|
101
|
+
"eslint-plugin-jsdoc": "^39.3.1",
|
|
101
102
|
"execa": "4.1.0",
|
|
102
103
|
"exit": "^0.1.2",
|
|
103
104
|
"fast-deep-equal": "3.1.3",
|
package/screenshot/index.js
CHANGED
|
@@ -437,6 +437,8 @@ class ScreenshotConnector {
|
|
|
437
437
|
* Forward-slash paths can be used in Windows as long as they're not
|
|
438
438
|
* extended-length paths and don't contain any non-ascii characters.
|
|
439
439
|
* This was created since the path methods in Node.js outputs \\ paths on Windows.
|
|
440
|
+
* @param path the Windows-based path to convert
|
|
441
|
+
* @returns the converted path
|
|
440
442
|
*/
|
|
441
443
|
const normalizePath = (path) => {
|
|
442
444
|
if (typeof path !== 'string') {
|