@nativescript/canvas-polyfill 2.0.0-beta.17 → 2.0.0-beta.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/DOM/DOMPointReadOnly.d.ts +27 -0
  2. package/DOM/DOMPointReadOnly.js +43 -0
  3. package/DOM/DOMPointReadOnly.js.map +1 -0
  4. package/DOM/Document.d.ts +8 -7
  5. package/DOM/Document.js +20 -7
  6. package/DOM/Document.js.map +1 -1
  7. package/DOM/Element.d.ts +2 -0
  8. package/DOM/Element.js +57 -9
  9. package/DOM/Element.js.map +1 -1
  10. package/DOM/HTMLCollection.d.ts +4 -0
  11. package/DOM/HTMLCollection.js +10 -0
  12. package/DOM/HTMLCollection.js.map +1 -0
  13. package/DOM/XMLDocument.d.ts +1 -1
  14. package/DOM/XMLDocument.js +7 -0
  15. package/DOM/XMLDocument.js.map +1 -1
  16. package/DOM/svg/SVGAnimatedLength.d.ts +40 -0
  17. package/DOM/svg/SVGAnimatedLength.js +237 -0
  18. package/DOM/svg/SVGAnimatedLength.js.map +1 -0
  19. package/DOM/svg/SVGAnimatedRect.d.ts +10 -0
  20. package/DOM/svg/SVGAnimatedRect.js +52 -0
  21. package/DOM/svg/SVGAnimatedRect.js.map +1 -0
  22. package/DOM/svg/SVGAnimatedString.d.ts +8 -0
  23. package/DOM/svg/SVGAnimatedString.js +14 -0
  24. package/DOM/svg/SVGAnimatedString.js.map +1 -0
  25. package/DOM/svg/SVGCircleElement.d.ts +9 -2
  26. package/DOM/svg/SVGCircleElement.js +15 -3
  27. package/DOM/svg/SVGCircleElement.js.map +1 -1
  28. package/DOM/svg/SVGElement.d.ts +11 -2
  29. package/DOM/svg/SVGElement.js +76 -10
  30. package/DOM/svg/SVGElement.js.map +1 -1
  31. package/DOM/svg/SVGEllipseElement.d.ts +13 -0
  32. package/DOM/svg/SVGEllipseElement.js +26 -0
  33. package/DOM/svg/SVGEllipseElement.js.map +1 -0
  34. package/DOM/svg/SVGGGElement.d.ts +2 -2
  35. package/DOM/svg/SVGGGElement.js +2 -2
  36. package/DOM/svg/SVGGGElement.js.map +1 -1
  37. package/DOM/svg/SVGGeometryElement.d.ts +3 -0
  38. package/DOM/svg/SVGGeometryElement.js +4 -0
  39. package/DOM/svg/SVGGeometryElement.js.map +1 -0
  40. package/DOM/svg/SVGGraphicsElement.d.ts +3 -0
  41. package/DOM/svg/SVGGraphicsElement.js +4 -0
  42. package/DOM/svg/SVGGraphicsElement.js.map +1 -0
  43. package/DOM/svg/SVGLineElement.d.ts +13 -0
  44. package/DOM/svg/SVGLineElement.js +26 -0
  45. package/DOM/svg/SVGLineElement.js.map +1 -0
  46. package/DOM/svg/SVGMaskElement.d.ts +4 -0
  47. package/DOM/svg/SVGMaskElement.js +8 -0
  48. package/DOM/svg/SVGMaskElement.js.map +1 -0
  49. package/DOM/svg/SVGMatrix.d.ts +21 -0
  50. package/DOM/svg/SVGMatrix.js +68 -0
  51. package/DOM/svg/SVGMatrix.js.map +1 -0
  52. package/DOM/svg/SVGPathElement.d.ts +2 -2
  53. package/DOM/svg/SVGPathElement.js +2 -2
  54. package/DOM/svg/SVGPathElement.js.map +1 -1
  55. package/DOM/svg/SVGPolygonElement.d.ts +9 -0
  56. package/DOM/svg/SVGPolygonElement.js +23 -0
  57. package/DOM/svg/SVGPolygonElement.js.map +1 -0
  58. package/DOM/svg/SVGPolylineElement.d.ts +9 -0
  59. package/DOM/svg/SVGPolylineElement.js +23 -0
  60. package/DOM/svg/SVGPolylineElement.js.map +1 -0
  61. package/DOM/svg/SVGRectElement.d.ts +15 -2
  62. package/DOM/svg/SVGRectElement.js +31 -2
  63. package/DOM/svg/SVGRectElement.js.map +1 -1
  64. package/DOM/svg/SVGSVGElement.d.ts +28 -0
  65. package/DOM/svg/SVGSVGElement.js +73 -0
  66. package/DOM/svg/SVGSVGElement.js.map +1 -0
  67. package/DOM/svg/SVGTransform.d.ts +25 -0
  68. package/DOM/svg/SVGTransform.js +75 -0
  69. package/DOM/svg/SVGTransform.js.map +1 -0
  70. package/DOM/svg/SVGUnits.d.ts +51 -0
  71. package/DOM/svg/SVGUnits.js +154 -0
  72. package/DOM/svg/SVGUnits.js.map +1 -0
  73. package/DOM/svg/index.d.ts +17 -2
  74. package/DOM/svg/index.js +17 -2
  75. package/DOM/svg/index.js.map +1 -1
  76. package/async/file/file.ios.js +0 -3
  77. package/async/file/file.ios.js.map +1 -1
  78. package/async/http/http.android.js +2 -1
  79. package/async/http/http.android.js.map +1 -1
  80. package/async/http/http.ios.js +30 -47
  81. package/async/http/http.ios.js.map +1 -1
  82. package/package.json +2 -3
  83. package/window.js +33 -5
  84. package/window.js.map +1 -1
@@ -0,0 +1,27 @@
1
+ export declare class DOMPointReadOnly {
2
+ x: number;
3
+ y: number;
4
+ z: number;
5
+ w: number;
6
+ constructor(x?: number, y?: number, z?: number, w?: number);
7
+ static fromPoint(value: DOMPointReadOnly | {
8
+ x?: number;
9
+ y?: number;
10
+ z?: number;
11
+ w?: number;
12
+ }): DOMPointReadOnly;
13
+ toJSON(): {
14
+ x: number;
15
+ y: number;
16
+ z: number;
17
+ w: number;
18
+ };
19
+ }
20
+ export declare class DOMPoint extends DOMPointReadOnly {
21
+ static fromPoint(value: DOMPointReadOnly | DOMPoint | {
22
+ x?: number;
23
+ y?: number;
24
+ z?: number;
25
+ w?: number;
26
+ }): DOMPoint;
27
+ }
@@ -0,0 +1,43 @@
1
+ export class DOMPointReadOnly {
2
+ constructor(x = 0, y = 0, z = 0, w = 1) {
3
+ this.x = 0;
4
+ this.y = 0;
5
+ this.z = 0;
6
+ this.w = 1;
7
+ if (typeof x === 'number') {
8
+ this.x = x;
9
+ }
10
+ if (typeof y === 'number') {
11
+ this.y = y;
12
+ }
13
+ if (typeof z === 'number') {
14
+ this.z = z;
15
+ }
16
+ if (typeof w === 'number') {
17
+ this.w = w;
18
+ }
19
+ }
20
+ static fromPoint(value) {
21
+ if (value instanceof DOMPointReadOnly) {
22
+ return new DOMPointReadOnly(value.x, value.y, value.z, value.y);
23
+ }
24
+ return new DOMPointReadOnly(value?.x ?? 0, value?.y ?? 0, value?.z ?? 0, value?.w ?? 1);
25
+ }
26
+ toJSON() {
27
+ return {
28
+ x: this.x,
29
+ y: this.y,
30
+ z: this.z,
31
+ w: this.w,
32
+ };
33
+ }
34
+ }
35
+ export class DOMPoint extends DOMPointReadOnly {
36
+ static fromPoint(value) {
37
+ if (value instanceof DOMPointReadOnly) {
38
+ return new DOMPoint(value.x, value.y, value.z, value.y);
39
+ }
40
+ return new DOMPoint(value?.x ?? 0, value?.y ?? 0, value?.z ?? 0, value?.w ?? 1);
41
+ }
42
+ }
43
+ //# sourceMappingURL=DOMPointReadOnly.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DOMPointReadOnly.js","sourceRoot":"","sources":["../../../../packages/canvas-polyfill/DOM/DOMPointReadOnly.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,gBAAgB;IAK5B,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC;QAJtC,MAAC,GAAW,CAAC,CAAC;QACd,MAAC,GAAW,CAAC,CAAC;QACd,MAAC,GAAW,CAAC,CAAC;QACd,MAAC,GAAW,CAAC,CAAC;QAEb,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;YAC1B,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;SACX;QACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;YAC1B,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;SACX;QACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;YAC1B,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;SACX;QACD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;YAC1B,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;SACX;IACF,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,KAA4E;QAC5F,IAAI,KAAK,YAAY,gBAAgB,EAAE;YACtC,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;SAChE;QACD,OAAO,IAAI,gBAAgB,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACzF,CAAC;IAED,MAAM;QACL,OAAO;YACN,CAAC,EAAE,IAAI,CAAC,CAAC;YACT,CAAC,EAAE,IAAI,CAAC,CAAC;YACT,CAAC,EAAE,IAAI,CAAC,CAAC;YACT,CAAC,EAAE,IAAI,CAAC,CAAC;SACT,CAAC;IACH,CAAC;CACD;AAED,MAAM,OAAO,QAAS,SAAQ,gBAAgB;IAC7C,MAAM,CAAC,SAAS,CAAC,KAAuF;QACvG,IAAI,KAAK,YAAY,gBAAgB,EAAE;YACtC,OAAO,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;SACxD;QACD,OAAO,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACjF,CAAC;CACD"}
package/DOM/Document.d.ts CHANGED
@@ -1,23 +1,24 @@
1
- import { HTMLElement } from './HTMLElement';
2
1
  import { HTMLVideoElement } from './HTMLVideoElement';
3
2
  import { HTMLCanvasElement } from './HTMLCanvasElement';
4
3
  import { Text } from './Text';
5
4
  import { Node } from './Node';
6
5
  import { Element } from './Element';
6
+ import { SVGSVGElement } from './svg/SVGSVGElement';
7
7
  export declare class Document extends Node {
8
8
  readonly body: Element;
9
9
  private _documentElement;
10
10
  private readyState;
11
11
  readonly head: Element;
12
+ __instance: Document;
12
13
  get defaultView(): Window & typeof globalThis;
13
14
  constructor();
14
- createElement(tagName: string): Element | HTMLVideoElement | HTMLCanvasElement | SVGElement;
15
+ createElement(tagName: string): Element | SVGGElement | HTMLVideoElement | HTMLCanvasElement | SVGSVGElement;
15
16
  createElementNS(namespaceURI: string, qualifiedName?: string, options?: {}): any;
16
17
  createTextNode(data: any): Text;
17
- getElementById(id: string): HTMLElement | HTMLCanvasElement;
18
- getElementsByTagName(tagname: string): any[];
19
- get documentElement(): Element;
20
- set documentElement(value: Element);
21
- querySelectorAll(selector: any): any[];
18
+ getElementById(id: string): any;
19
+ getElementsByTagName(tagname: string): any;
20
+ get documentElement(): any;
21
+ set documentElement(value: any);
22
+ querySelectorAll(selector: any): any;
22
23
  querySelector(selector: any): any;
23
24
  }
package/DOM/Document.js CHANGED
@@ -8,6 +8,7 @@ import { Canvas } from '@nativescript/canvas';
8
8
  import { Frame, StackLayout } from '@nativescript/core';
9
9
  import { Node } from './Node';
10
10
  import { Element } from './Element';
11
+ import { SVGSVGElement } from './svg/SVGSVGElement';
11
12
  export class Document extends Node {
12
13
  constructor() {
13
14
  super('#document');
@@ -19,7 +20,6 @@ export class Document extends Node {
19
20
  get defaultView() {
20
21
  return global.window;
21
22
  }
22
- ;
23
23
  createElement(tagName) {
24
24
  switch ((tagName || '').toLowerCase()) {
25
25
  case 'div':
@@ -34,7 +34,7 @@ export class Document extends Node {
34
34
  // Return nothing to keep firebase working.
35
35
  return null;
36
36
  case 'svg':
37
- return new SVGElement();
37
+ return new SVGSVGElement('svg');
38
38
  case 'rect':
39
39
  return new SVGRectElement();
40
40
  case 'circle':
@@ -59,6 +59,9 @@ export class Document extends Node {
59
59
  return new Text(data);
60
60
  }
61
61
  getElementById(id) {
62
+ if (this.__instance) {
63
+ return this.__instance.getElementById(id);
64
+ }
62
65
  const topmost = Frame.topmost();
63
66
  if (topmost) {
64
67
  const nativeElement = topmost.getViewById(id);
@@ -81,20 +84,30 @@ export class Document extends Node {
81
84
  return null;
82
85
  }
83
86
  getElementsByTagName(tagname) {
87
+ if (this.__instance) {
88
+ return this.__instance.getElementsByTagName(tagname);
89
+ }
84
90
  return [];
85
91
  }
86
92
  get documentElement() {
87
- return this._documentElement;
93
+ if (this._documentElement) {
94
+ return this._documentElement;
95
+ }
96
+ if (this.__instance) {
97
+ return this.__instance?.documentElement;
98
+ }
99
+ return null;
88
100
  }
89
101
  //@ts-ignore
90
- set documentElement(value) {
91
- }
102
+ set documentElement(value) { }
92
103
  querySelectorAll(selector) {
104
+ if (this.__instance) {
105
+ return this.__instance.querySelectorAll?.(selector) ?? [];
106
+ }
93
107
  return [];
94
- //return (this as any)._instance?.querySelectorAll?.(selector) ?? [];
95
108
  }
96
109
  querySelector(selector) {
97
- // const ret = (this as any)._instance?.querySelectorAll?.(selector);
110
+ const ret = this.__instance?.querySelectorAll?.(selector);
98
111
  // let element = ret?.[0] ?? null;
99
112
  // if (ret === undefined) {
100
113
  // const items = (this as any)._instance.getElementsByTagName(selector);
@@ -1 +1 @@
1
- {"version":3,"file":"Document.js","sourceRoot":"","sources":["../../../../packages/canvas-polyfill/DOM/Document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Document.js","sourceRoot":"","sources":["../../../../packages/canvas-polyfill/DOM/Document.ts"],"names":[],"mappings":"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"}
package/DOM/Element.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Node } from './Node';
2
2
  import { ViewBase } from '@nativescript/core';
3
+ import { HTMLCollection } from './HTMLCollection';
3
4
  export declare class DOMRectReadOnly {
4
5
  readonly bottom: number;
5
6
  readonly height: number;
@@ -28,6 +29,7 @@ export declare class Element extends Node {
28
29
  constructor(tagName: string);
29
30
  get classList(): Set<unknown>;
30
31
  get tagName(): string;
32
+ get children(): any[] | HTMLCollection;
31
33
  getAttribute(key: string): unknown;
32
34
  setAttribute(key: string, value: unknown): void;
33
35
  removeAttribute(key: string): void;
package/DOM/Element.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { Node } from './Node';
2
2
  import setValue from 'set-value';
3
3
  import querySelector from 'query-selector';
4
+ import { HTMLCollection } from './HTMLCollection';
4
5
  export class DOMRectReadOnly {
5
6
  constructor(x, y, width, height, top, right, bottom, left) {
6
7
  this.x = x;
@@ -49,6 +50,57 @@ export class Element extends Node {
49
50
  get tagName() {
50
51
  return this.nodeName;
51
52
  }
53
+ get children() {
54
+ const element = this._xmlDom?.documentElement ?? this._xmlDom;
55
+ if (element) {
56
+ const ret = new HTMLCollection();
57
+ const length = element?.childNodes?.length ?? 0;
58
+ for (let i = 0; i < length; i++) {
59
+ const node = element.childNodes.item(i);
60
+ if (node) {
61
+ switch (node.nodeName) {
62
+ case 'line':
63
+ {
64
+ const line = new SVGLineElement();
65
+ line.__instance = node;
66
+ ret.push(line);
67
+ }
68
+ break;
69
+ case 'polyline':
70
+ {
71
+ const polyline = new SVGPolylineElement();
72
+ polyline.__instance = node;
73
+ ret.push(polyline);
74
+ }
75
+ break;
76
+ case 'g':
77
+ {
78
+ const g = new SVGGElement();
79
+ g.__instance = node;
80
+ ret.push(g);
81
+ }
82
+ break;
83
+ case 'path':
84
+ {
85
+ const path = new SVGPathElement();
86
+ path.__instance = node;
87
+ ret.push(path);
88
+ }
89
+ break;
90
+ case 'rect':
91
+ {
92
+ const rect = new SVGRectElement();
93
+ rect.__instance = node;
94
+ ret.push(rect);
95
+ }
96
+ break;
97
+ }
98
+ }
99
+ }
100
+ return ret;
101
+ }
102
+ return [];
103
+ }
52
104
  getAttribute(key) {
53
105
  if (this.nativeElement) {
54
106
  return this.nativeElement[key];
@@ -79,10 +131,8 @@ export class Element extends Node {
79
131
  setValue(this._attrs, key, originalValue);
80
132
  }
81
133
  }
82
- setAttributeNS() {
83
- }
84
- removeAttributeNS() {
85
- }
134
+ setAttributeNS() { }
135
+ removeAttributeNS() { }
86
136
  querySelector(selector) {
87
137
  const selection = querySelector(selector, this);
88
138
  if (Array.isArray(selection)) {
@@ -116,7 +166,7 @@ export class Element extends Node {
116
166
  x: 0,
117
167
  y: 0,
118
168
  width: this.innerWidth,
119
- height: this.innerHeight
169
+ height: this.innerHeight,
120
170
  };
121
171
  }
122
172
  get attributes() {
@@ -167,9 +217,7 @@ export class Element extends Node {
167
217
  get ontouchstart() {
168
218
  return {};
169
219
  }
170
- setPointerCapture(id) {
171
- }
172
- releasePointerCapture(id) {
173
- }
220
+ setPointerCapture(id) { }
221
+ releasePointerCapture(id) { }
174
222
  }
175
223
  //# sourceMappingURL=Element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Element.js","sourceRoot":"","sources":["../../../../packages/canvas-polyfill/DOM/Element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,aAAa,MAAM,gBAAgB,CAAC;AAI3C,MAAM,OAAO,eAAe;IAU3B,YAAY,CAAS,EAAE,CAAS,EAAE,KAAa,EAAE,MAAc,EAAE,GAAY,EAAE,KAAc,EAAE,MAAe,EAAE,IAAa;QAC5H,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,MAAM,CAAC;IACpC,CAAC;CACD;AAED,MAAM,OAAO,OAAQ,SAAQ,eAAe;IAC3C,YAAY,CAAS,EAAE,CAAS,EAAE,KAAa,EAAE,MAAc,EAAE,GAAY,EAAE,KAAc,EAAE,MAAe,EAAE,IAAa;QAC5H,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;CACD;AAGD,MAAM,OAAO,OAAQ,SAAQ,IAAI;IA8BhC,YAAY,OAAe;QAC1B,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QA9BtB,eAAU,GAAG,IAAI,GAAG,EAAE,CAAC;QAIvB,WAAM,GAAqB,IAAI,GAAG,EAAmB,CAAC;QACtD,4BAAuB,GAAyB,IAAI,GAAG,EAAE,CAAC;IA0BlE,CAAC;IAtBD,IAAI,aAAa,CAAC,KAAK;QACtB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,IAAI,KAAK,EAAE;YACV,IAAI,CAAC,QAAQ,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;SACnC;aAAM;YACN,IAAI,CAAC,QAAQ,GAAG,KAAc,CAAC;SAC/B;IACF,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC5B,CAAC;IAED,IAAY,mBAAmB;QAC9B,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE;YACjC,IAAI,CAAC,SAAS,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;SACrC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAMD,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IAED,IAAI,OAAO;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC;IACtB,CAAC;IAED,YAAY,CAAC,GAAW;QACvB,IAAI,IAAI,CAAC,aAAa,EAAE;YACvB,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;SAC/B;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,YAAY,CAAC,GAAW,EAAE,KAAc;QACvC,IAAI,IAAI,CAAC,aAAa,EAAE;YACvB,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC3C,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC/D,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;aACzC;SACD;aAAM;YACN,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC3C,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC5D,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;aAClC;SACD;IACF,CAAC;IAED,eAAe,CAAC,GAAW;QAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5D,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAEzC,IAAI,IAAI,CAAC,aAAa,EAAE;YACvB,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;SACjD;aAAM;YACN,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;SAC1C;IACF,CAAC;IAED,cAAc;IACd,CAAC;IAED,iBAAiB;IACjB,CAAC;IAED,aAAa,CAAC,QAAgB;QAC7B,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAChD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC7B,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;SACpB;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,gBAAgB,CAAC,QAAgB;QAChC,OAAO,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACtC,CAAC;IAGD,qBAAqB;QACpB,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE;YAC/B,OAAa,aAAc,CAAC,qBAAqB,EAAE,CAAC;SACpD;QACD,IAAI,aAAa,EAAE;YAClB,IAAI,MAAM,CAAC,KAAK,EAAE;gBACjB,QAAQ,CAAC,qBAAqB,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;aACnF;YAED,IAAI,UAAU,CAAC,SAAS,EAAE;gBACzB,aAAa,CAAC,UAAU,CAAC,qBAAqB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;aACzE;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC;YAC5C,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3I;QACD,OAAO;YACN,IAAI,EAAE,CAAC;YACP,GAAG,EAAE,CAAC;YACN,KAAK,EAAE,IAAI,CAAC,UAAU;YACtB,MAAM,EAAE,IAAI,CAAC,WAAW;YACxB,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YACJ,KAAK,EAAE,IAAI,CAAC,UAAU;YACtB,MAAM,EAAE,IAAI,CAAC,WAAW;SACxB,CAAC;IACH,CAAC;IAED,IAAI,UAAU;QACb,OAAO,EAAE,CAAC;IACX,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED,IAAI,WAAW;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED,IAAI,KAAK;QACR,IAAI,IAAI,CAAC,aAAa,EAAE;YACvB,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;SACnC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED,IAAI,KAAK,CAAC,KAAa;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,IAAI,CAAC,aAAa,EAAE;YACvB,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;SAC7C;IACF,CAAC;IAED,IAAI,MAAM;QACT,IAAI,IAAI,CAAC,aAAa,EAAE;YACvB,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;SACpC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,IAAI,MAAM,CAAC,KAAa;QACvB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,IAAI,CAAC,aAAa,EAAE;YACvB,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;SAC9C;IACF,CAAC;IAED,IAAI,YAAY;QACf,OAAO,EAAE,CAAC;IACX,CAAC;IAED,iBAAiB,CAAC,EAAU;IAC5B,CAAC;IAED,qBAAqB,CAAC,EAAU;IAChC,CAAC;CACD"}
1
+ {"version":3,"file":"Element.js","sourceRoot":"","sources":["../../../../packages/canvas-polyfill/DOM/Element.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare class HTMLCollection extends Array {
2
+ item(index: number): any;
3
+ namedItem(nameOrId: string): any;
4
+ }
@@ -0,0 +1,10 @@
1
+ export class HTMLCollection extends Array {
2
+ item(index) {
3
+ return this[index];
4
+ }
5
+ namedItem(nameOrId) {
6
+ // todo
7
+ return null;
8
+ }
9
+ }
10
+ //# sourceMappingURL=HTMLCollection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HTMLCollection.js","sourceRoot":"","sources":["../../../../packages/canvas-polyfill/DOM/HTMLCollection.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,cAAe,SAAQ,KAAK;IACxC,IAAI,CAAC,KAAa;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED,SAAS,CAAC,QAAgB;QACzB,OAAO;QACP,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
@@ -1,5 +1,5 @@
1
1
  import { Document as Doc } from './Document';
2
2
  export declare class XMLDocument extends Doc {
3
- private __instance;
3
+ __instance: Document;
4
4
  static fromParser(instance: any): XMLDocument;
5
5
  }
@@ -1,5 +1,6 @@
1
1
  import { Document as Doc } from './Document';
2
2
  import querySelector from 'query-selector';
3
+ import { SVGSVGElement } from './svg/SVGSVGElement';
3
4
  export class XMLDocument extends Doc {
4
5
  static fromParser(instance) {
5
6
  if (instance) {
@@ -9,6 +10,12 @@ export class XMLDocument extends Doc {
9
10
  };
10
11
  const doc = new XMLDocument();
11
12
  doc.__instance = instance;
13
+ const documentElement = instance?.documentElement;
14
+ if (documentElement?.nodeName === 'svg' && documentElement?.namespaceURI === 'http://www.w3.org/2000/svg') {
15
+ const svg = new SVGSVGElement('svg');
16
+ svg.__instance = instance.documentElement;
17
+ doc._documentElement = svg;
18
+ }
12
19
  return doc;
13
20
  }
14
21
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"XMLDocument.js","sourceRoot":"","sources":["../../../../packages/canvas-polyfill/DOM/XMLDocument.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,GAAG,EAAC,MAAM,YAAY,CAAC;AAE5C,OAAO,aAAa,MAAM,gBAAgB,CAAC;AAI3C,MAAM,OAAO,WAAY,SAAQ,GAAG;IAEnC,MAAM,CAAC,UAAU,CAAC,QAAQ;QACzB,IAAI,QAAQ,EAAE;YACb,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC1D,iBAAiB,CAAC,gBAAgB,GAAG,UAAU,QAAgB;gBAC9D,OAAO,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACtC,CAAC,CAAC;YAEF,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC;YAC1B,OAAO,GAAG,CAAC;SACX;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
1
+ {"version":3,"file":"XMLDocument.js","sourceRoot":"","sources":["../../../../packages/canvas-polyfill/DOM/XMLDocument.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,GAAG,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,aAAa,MAAM,gBAAgB,CAAC;AAI3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,OAAO,WAAY,SAAQ,GAAG;IAGnC,MAAM,CAAC,UAAU,CAAC,QAAQ;QACzB,IAAI,QAAQ,EAAE;YACb,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC1D,iBAAiB,CAAC,gBAAgB,GAAG,UAAU,QAAgB;gBAC9D,OAAO,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACtC,CAAC,CAAC;YAEF,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;YAC9B,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC;YAC1B,MAAM,eAAe,GAAG,QAAQ,EAAE,eAAe,CAAC;YAElD,IAAI,eAAe,EAAE,QAAQ,KAAK,KAAK,IAAI,eAAe,EAAE,YAAY,KAAK,4BAA4B,EAAE;gBAC1G,MAAM,GAAG,GAAG,IAAI,aAAa,CAAC,KAAK,CAAQ,CAAC;gBAC5C,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC,eAAe,CAAC;gBACpC,GAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC;aAClC;YACD,OAAO,GAAG,CAAC;SACX;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
@@ -0,0 +1,40 @@
1
+ export declare class SVGLength {
2
+ _element: any;
3
+ _unitType: number;
4
+ _value: number;
5
+ _valueInSpecifiedUnits: number;
6
+ _valueAsString: string;
7
+ _key: string;
8
+ constructor(element?: any, key?: string);
9
+ newValueSpecifiedUnits(unitType: number, valueInSpecifiedUnits: number): void;
10
+ convertToSpecifiedUnits(unitType: number): void;
11
+ set unitType(value: unknown);
12
+ get unitType(): unknown;
13
+ set value(value: unknown);
14
+ get value(): unknown;
15
+ set valueInSpecifiedUnits(value: unknown);
16
+ get valueInSpecifiedUnits(): unknown;
17
+ set valueAsString(value: unknown);
18
+ get valueAsString(): unknown;
19
+ static SVG_LENGTHTYPE_UNKNOWN: number;
20
+ static SVG_LENGTHTYPE_NUMBER: number;
21
+ static SVG_LENGTHTYPE_PERCENTAGE: number;
22
+ static SVG_LENGTHTYPE_EMS: number;
23
+ static SVG_LENGTHTYPE_EXS: number;
24
+ static SVG_LENGTHTYPE_PX: number;
25
+ static SVG_LENGTHTYPE_CM: number;
26
+ static SVG_LENGTHTYPE_MM: number;
27
+ static SVG_LENGTHTYPE_IN: number;
28
+ static SVG_LENGTHTYPE_PT: number;
29
+ static SVG_LENGTHTYPE_PC: number;
30
+ }
31
+ export declare class SVGAnimatedLength {
32
+ _baseVal: SVGLength;
33
+ _animVal: SVGLength;
34
+ _element: any;
35
+ _key: string;
36
+ constructor(element?: any, key?: string);
37
+ get baseVal(): SVGLength;
38
+ get animVal(): SVGLength;
39
+ }
40
+ export declare const SVGAnimatedLengthEmpty: SVGAnimatedLength;