@nativescript/canvas-svg 2.0.0-webgpu.8 → 2.0.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/index.android.d.ts +10 -2
- package/index.android.js +62 -59
- package/index.android.js.map +1 -1
- package/index.d.ts +13 -2
- package/index.ios.d.ts +13 -5
- package/index.ios.js +54 -52
- package/index.ios.js.map +1 -1
- package/package.json +2 -2
- package/platforms/android/canvassvg-release.aar +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/CanvasSVG +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Headers/CanvasSVG-Swift.h +28 -11
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Headers/canvas_svg.h +9 -5
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Info.plist +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios.abi.json +458 -106
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios.private.swiftinterface +54 -23
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios.swiftinterface +54 -23
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/dSYMs/CanvasSVG.framework.dSYM/Contents/Resources/DWARF/CanvasSVG +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/dSYMs/CanvasSVG.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasSVG.yml +135 -217
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/CanvasSVG +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Headers/CanvasSVG-Swift.h +56 -22
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Headers/canvas_svg.h +9 -5
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Info.plist +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios-simulator.abi.json +458 -106
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +54 -23
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios-simulator.swiftinterface +54 -23
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/x86_64-apple-ios-simulator.abi.json +458 -106
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +54 -23
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +54 -23
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/_CodeSignature/CodeResources +29 -29
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasSVG.framework.dSYM/Contents/Resources/DWARF/CanvasSVG +0 -0
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasSVG.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasSVG.yml +136 -217
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasSVG.framework.dSYM/Contents/Resources/Relocations/x86_64/CanvasSVG.yml +115 -286
package/index.android.d.ts
CHANGED
|
@@ -1,16 +1,24 @@
|
|
|
1
1
|
import { SVGBase } from './common';
|
|
2
2
|
import { SVGItem } from './Elements/SVGItem';
|
|
3
3
|
export * from './Elements';
|
|
4
|
+
export declare class SvgData {
|
|
5
|
+
native: any;
|
|
6
|
+
static fromNative(value: any): SvgData;
|
|
7
|
+
get width(): number;
|
|
8
|
+
get height(): number;
|
|
9
|
+
get data(): ArrayBuffer | null;
|
|
10
|
+
}
|
|
4
11
|
export declare class Svg extends SVGBase {
|
|
5
12
|
_svg: any;
|
|
6
13
|
constructor();
|
|
7
14
|
createNativeView(): any;
|
|
8
15
|
get native(): any;
|
|
16
|
+
setSvgData(value: SvgData): void;
|
|
9
17
|
__redraw(): void;
|
|
10
18
|
onLoaded(): void;
|
|
11
19
|
onUnloaded(): void;
|
|
12
20
|
addChild(view: SVGItem): void;
|
|
13
21
|
removeChild(view: SVGItem): void;
|
|
14
|
-
static fromSrcSync(value: string):
|
|
15
|
-
static fromSrc(value: string): Promise<
|
|
22
|
+
static fromSrcSync(value: string): SvgData | null;
|
|
23
|
+
static fromSrc(value: string): Promise<SvgData>;
|
|
16
24
|
}
|
package/index.android.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { initialSVG, SVGBase, srcProperty, syncProperty } from './common';
|
|
2
|
-
import { Application, Http, knownFolders, path,
|
|
2
|
+
import { Application, Http, knownFolders, path, Utils } from '@nativescript/core';
|
|
3
3
|
export * from './Elements';
|
|
4
4
|
function parseSVGDimensions(svgString) {
|
|
5
5
|
const svgRegex = /<svg([^>]*)>/i;
|
|
@@ -8,45 +8,59 @@ function parseSVGDimensions(svgString) {
|
|
|
8
8
|
return { width: 0, height: 0 };
|
|
9
9
|
}
|
|
10
10
|
const svgAttributes = match[1];
|
|
11
|
-
const regex = /\b(
|
|
12
|
-
const matches = svgAttributes.match(regex);
|
|
11
|
+
const regex = /\b(width|height|viewBox)\s*=\s*"([^"]+)"/g;
|
|
13
12
|
let width, height, viewBox;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
else if (attributeName === 'viewBox') {
|
|
30
|
-
if (viewBox === undefined) {
|
|
31
|
-
viewBox = attributeValue.split(' ').map(parseFloat).splice(0, 4);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
});
|
|
13
|
+
let attributeMatch;
|
|
14
|
+
while ((attributeMatch = regex.exec(svgAttributes)) !== null) {
|
|
15
|
+
const attributeName = attributeMatch[1];
|
|
16
|
+
const attributeValue = attributeMatch[2];
|
|
17
|
+
if (attributeName === 'width') {
|
|
18
|
+
width = parseFloat(attributeValue) || undefined;
|
|
19
|
+
}
|
|
20
|
+
else if (attributeName === 'height') {
|
|
21
|
+
height = parseFloat(attributeValue) || undefined;
|
|
22
|
+
}
|
|
23
|
+
else if (attributeName === 'viewBox') {
|
|
24
|
+
viewBox = attributeValue.split(' ').map(Number);
|
|
25
|
+
}
|
|
35
26
|
}
|
|
36
27
|
if (!width && viewBox && viewBox.length === 4) {
|
|
37
28
|
const viewBoxWidth = viewBox[2];
|
|
38
29
|
const viewBoxHeight = viewBox[3];
|
|
39
30
|
const aspectRatio = viewBoxWidth / viewBoxHeight;
|
|
40
|
-
width =
|
|
31
|
+
width = height ? height * aspectRatio : 150 * aspectRatio;
|
|
41
32
|
}
|
|
42
33
|
if (!height && viewBox && viewBox.length === 4) {
|
|
43
34
|
const viewBoxWidth = viewBox[2];
|
|
44
35
|
const viewBoxHeight = viewBox[3];
|
|
45
36
|
const aspectRatio = viewBoxWidth / viewBoxHeight;
|
|
46
|
-
height =
|
|
37
|
+
height = width ? width / aspectRatio : 300 / aspectRatio;
|
|
47
38
|
}
|
|
48
39
|
return { width: width ?? 0, height: height ?? 0 };
|
|
49
40
|
}
|
|
41
|
+
export class SvgData {
|
|
42
|
+
static fromNative(value) {
|
|
43
|
+
if (value) {
|
|
44
|
+
const data = new SvgData();
|
|
45
|
+
data.native = value;
|
|
46
|
+
return data;
|
|
47
|
+
}
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
get width() {
|
|
51
|
+
return this.native?.getWidth?.() ?? 0;
|
|
52
|
+
}
|
|
53
|
+
get height() {
|
|
54
|
+
return this.native?.getHeight?.() ?? 0;
|
|
55
|
+
}
|
|
56
|
+
get data() {
|
|
57
|
+
const data = this.native?.getData?.();
|
|
58
|
+
if (data) {
|
|
59
|
+
return ArrayBuffer.from(data);
|
|
60
|
+
}
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
50
64
|
export class Svg extends SVGBase {
|
|
51
65
|
constructor() {
|
|
52
66
|
super();
|
|
@@ -62,6 +76,11 @@ export class Svg extends SVGBase {
|
|
|
62
76
|
get native() {
|
|
63
77
|
return this._svg;
|
|
64
78
|
}
|
|
79
|
+
setSvgData(value) {
|
|
80
|
+
if (value && value.native) {
|
|
81
|
+
this._svg.loadData(value.native);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
65
84
|
[srcProperty.setNative](value) {
|
|
66
85
|
if (typeof value === 'string') {
|
|
67
86
|
if (value.indexOf('<svg') > -1) {
|
|
@@ -92,17 +111,17 @@ export class Svg extends SVGBase {
|
|
|
92
111
|
__redraw() {
|
|
93
112
|
if (this._attachedToDom) {
|
|
94
113
|
const domCopy = this.__domElement.valueOf();
|
|
95
|
-
|
|
96
|
-
|
|
114
|
+
const width = domCopy.getAttribute('width');
|
|
115
|
+
const height = domCopy.getAttribute('height');
|
|
97
116
|
const viewBox = domCopy.getAttribute('viewBox');
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
117
|
+
if (!width) {
|
|
118
|
+
domCopy.setAttribute('width', `300`);
|
|
119
|
+
}
|
|
120
|
+
if (!height) {
|
|
121
|
+
domCopy.setAttribute('height', `150`);
|
|
122
|
+
}
|
|
104
123
|
if (!viewBox) {
|
|
105
|
-
domCopy.setAttribute('viewBox', '0 0
|
|
124
|
+
domCopy.setAttribute('viewBox', '0 0 100 100');
|
|
106
125
|
}
|
|
107
126
|
const serialized = this._serializer.serializeToString(domCopy);
|
|
108
127
|
if (serialized !== initialSVG) {
|
|
@@ -136,12 +155,8 @@ export class Svg extends SVGBase {
|
|
|
136
155
|
if (value.indexOf('<svg') > -1) {
|
|
137
156
|
const { width, height } = parseSVGDimensions(value);
|
|
138
157
|
if (width > 0 && height > 0) {
|
|
139
|
-
const svg = org.nativescript.canvas.svg.NSCSVG.fromStringSync(context, width
|
|
140
|
-
|
|
141
|
-
view._svg = svg;
|
|
142
|
-
view.width = width;
|
|
143
|
-
view.height = height;
|
|
144
|
-
return view;
|
|
158
|
+
const svg = org.nativescript.canvas.svg.NSCSVG.fromStringSync(context, width, height, value);
|
|
159
|
+
return SvgData.fromNative(svg);
|
|
145
160
|
}
|
|
146
161
|
}
|
|
147
162
|
else {
|
|
@@ -159,12 +174,7 @@ export class Svg extends SVGBase {
|
|
|
159
174
|
}
|
|
160
175
|
catch (error) { }
|
|
161
176
|
if (nativeSvg) {
|
|
162
|
-
|
|
163
|
-
view._svg = nativeSvg;
|
|
164
|
-
const lp = nativeSvg.getLayoutParams();
|
|
165
|
-
view.width = lp.width / Screen.mainScreen.scale;
|
|
166
|
-
view.height = lp.height / Screen.mainScreen.scale;
|
|
167
|
-
return view;
|
|
177
|
+
return SvgData.fromNative(nativeSvg);
|
|
168
178
|
}
|
|
169
179
|
}
|
|
170
180
|
}
|
|
@@ -177,13 +187,10 @@ export class Svg extends SVGBase {
|
|
|
177
187
|
if (value.indexOf('<svg') > -1) {
|
|
178
188
|
const { width, height } = parseSVGDimensions(value);
|
|
179
189
|
if (width > 0 && height > 0) {
|
|
180
|
-
org.nativescript.canvas.svg.NSCSVG.fromString(context, width
|
|
190
|
+
org.nativescript.canvas.svg.NSCSVG.fromString(context, width, height, value, new org.nativescript.canvas.svg.NSCSVG.Callback({
|
|
181
191
|
onSuccess(svg) {
|
|
182
|
-
const
|
|
183
|
-
|
|
184
|
-
view.width = width;
|
|
185
|
-
view.height = height;
|
|
186
|
-
resolve(view);
|
|
192
|
+
const ret = SvgData.fromNative(svg);
|
|
193
|
+
resolve(ret);
|
|
187
194
|
},
|
|
188
195
|
}));
|
|
189
196
|
return;
|
|
@@ -193,12 +200,8 @@ export class Svg extends SVGBase {
|
|
|
193
200
|
const cb = new org.nativescript.canvas.svg.NSCSVG.Callback({
|
|
194
201
|
onSuccess(nativeSvg) {
|
|
195
202
|
if (nativeSvg) {
|
|
196
|
-
const
|
|
197
|
-
|
|
198
|
-
view._svg = nativeSvg;
|
|
199
|
-
view.width = lp.width / Screen.mainScreen.scale;
|
|
200
|
-
view.height = lp.height / Screen.mainScreen.scale;
|
|
201
|
-
resolve(view);
|
|
203
|
+
const ret = SvgData.fromNative(nativeSvg);
|
|
204
|
+
resolve(ret);
|
|
202
205
|
}
|
|
203
206
|
else {
|
|
204
207
|
reject(new Error('Failed to parse SVG'));
|
package/index.android.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.android.js","sourceRoot":"","sources":["../../../packages/canvas-svg/index.android.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"index.android.js","sourceRoot":"","sources":["../../../packages/canvas-svg/index.android.ts"],"names":[],"mappings":"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"}
|
package/index.d.ts
CHANGED
|
@@ -2,6 +2,17 @@ export * from './Elements';
|
|
|
2
2
|
import { SVGBase } from './common';
|
|
3
3
|
|
|
4
4
|
export class Svg extends SVGBase {
|
|
5
|
-
static fromSrcSync(value: string):
|
|
6
|
-
static fromSrc(value: string): Promise<
|
|
5
|
+
static fromSrcSync(value: string): SvgData | null;
|
|
6
|
+
static fromSrc(value: string): Promise<SvgData>;
|
|
7
|
+
setSvgData(value: SvgData);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export class SvgData {
|
|
11
|
+
readonly native: any;
|
|
12
|
+
|
|
13
|
+
readonly width: number;
|
|
14
|
+
|
|
15
|
+
readonly height: number;
|
|
16
|
+
|
|
17
|
+
readonly data: ArrayBuffer | null;
|
|
7
18
|
}
|
package/index.ios.d.ts
CHANGED
|
@@ -1,11 +1,19 @@
|
|
|
1
1
|
import { SVGBase } from './common';
|
|
2
2
|
import { SVGItem } from './Elements/SVGItem';
|
|
3
3
|
export * from './Elements';
|
|
4
|
+
export declare class SvgData {
|
|
5
|
+
native: any;
|
|
6
|
+
static fromNative(value: any): SvgData;
|
|
7
|
+
get width(): number;
|
|
8
|
+
get height(): number;
|
|
9
|
+
get data(): ArrayBuffer | null;
|
|
10
|
+
}
|
|
4
11
|
export declare class Svg extends SVGBase {
|
|
5
|
-
_svg:
|
|
12
|
+
_svg: NSCSVG;
|
|
6
13
|
constructor();
|
|
7
|
-
createNativeView():
|
|
8
|
-
get native():
|
|
14
|
+
createNativeView(): NSCSVG;
|
|
15
|
+
get native(): NSCSVG;
|
|
16
|
+
setSvgData(value: SvgData): void;
|
|
9
17
|
onLayout(left: number, top: number, right: number, bottom: number): void;
|
|
10
18
|
onMeasure(widthMeasureSpec: number, heightMeasureSpec: number): void;
|
|
11
19
|
__redraw(): void;
|
|
@@ -13,6 +21,6 @@ export declare class Svg extends SVGBase {
|
|
|
13
21
|
onUnloaded(): void;
|
|
14
22
|
addChild(view: SVGItem): void;
|
|
15
23
|
removeChild(view: SVGItem): void;
|
|
16
|
-
static fromSrcSync(value: string):
|
|
17
|
-
static fromSrc(value: string): Promise<
|
|
24
|
+
static fromSrcSync(value: string): SvgData | null;
|
|
25
|
+
static fromSrc(value: string): Promise<SvgData>;
|
|
18
26
|
}
|
package/index.ios.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SVGBase, srcProperty, syncProperty, initialSVG } from './common';
|
|
2
|
-
import { Http, knownFolders, path,
|
|
2
|
+
import { Http, knownFolders, path, Utils } from '@nativescript/core';
|
|
3
3
|
export * from './Elements';
|
|
4
4
|
function parseSVGDimensions(svgString) {
|
|
5
5
|
const svgRegex = /<svg([^>]*)>/i;
|
|
@@ -8,45 +8,59 @@ function parseSVGDimensions(svgString) {
|
|
|
8
8
|
return { width: 0, height: 0 };
|
|
9
9
|
}
|
|
10
10
|
const svgAttributes = match[1];
|
|
11
|
-
const regex = /\b(
|
|
12
|
-
const matches = svgAttributes.match(regex);
|
|
11
|
+
const regex = /\b(width|height|viewBox)\s*=\s*"([^"]+)"/g;
|
|
13
12
|
let width, height, viewBox;
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
else if (attributeName === 'viewBox') {
|
|
30
|
-
if (viewBox === undefined) {
|
|
31
|
-
viewBox = attributeValue.split(' ').map(parseFloat).splice(0, 4);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
});
|
|
13
|
+
let attributeMatch;
|
|
14
|
+
while ((attributeMatch = regex.exec(svgAttributes)) !== null) {
|
|
15
|
+
const attributeName = attributeMatch[1];
|
|
16
|
+
const attributeValue = attributeMatch[2];
|
|
17
|
+
if (attributeName === 'width') {
|
|
18
|
+
width = parseFloat(attributeValue) || undefined;
|
|
19
|
+
}
|
|
20
|
+
else if (attributeName === 'height') {
|
|
21
|
+
height = parseFloat(attributeValue) || undefined;
|
|
22
|
+
}
|
|
23
|
+
else if (attributeName === 'viewBox') {
|
|
24
|
+
viewBox = attributeValue.split(' ').map(Number);
|
|
25
|
+
}
|
|
35
26
|
}
|
|
36
27
|
if (!width && viewBox && viewBox.length === 4) {
|
|
37
28
|
const viewBoxWidth = viewBox[2];
|
|
38
29
|
const viewBoxHeight = viewBox[3];
|
|
39
30
|
const aspectRatio = viewBoxWidth / viewBoxHeight;
|
|
40
|
-
width =
|
|
31
|
+
width = height ? height * aspectRatio : 150 * aspectRatio;
|
|
41
32
|
}
|
|
42
33
|
if (!height && viewBox && viewBox.length === 4) {
|
|
43
34
|
const viewBoxWidth = viewBox[2];
|
|
44
35
|
const viewBoxHeight = viewBox[3];
|
|
45
36
|
const aspectRatio = viewBoxWidth / viewBoxHeight;
|
|
46
|
-
height =
|
|
37
|
+
height = width ? width / aspectRatio : 300 / aspectRatio;
|
|
47
38
|
}
|
|
48
39
|
return { width: width ?? 0, height: height ?? 0 };
|
|
49
40
|
}
|
|
41
|
+
export class SvgData {
|
|
42
|
+
static fromNative(value) {
|
|
43
|
+
if (value) {
|
|
44
|
+
const data = new SvgData();
|
|
45
|
+
data.native = value;
|
|
46
|
+
return data;
|
|
47
|
+
}
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
get width() {
|
|
51
|
+
return this.native?.width ?? 0;
|
|
52
|
+
}
|
|
53
|
+
get height() {
|
|
54
|
+
return this.native?.height ?? 0;
|
|
55
|
+
}
|
|
56
|
+
get data() {
|
|
57
|
+
const data = this.native?.data;
|
|
58
|
+
if (data) {
|
|
59
|
+
return interop.bufferFromData(data);
|
|
60
|
+
}
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
50
64
|
export class Svg extends SVGBase {
|
|
51
65
|
constructor() {
|
|
52
66
|
super();
|
|
@@ -59,6 +73,11 @@ export class Svg extends SVGBase {
|
|
|
59
73
|
get native() {
|
|
60
74
|
return this._svg;
|
|
61
75
|
}
|
|
76
|
+
setSvgData(value) {
|
|
77
|
+
if (value && value.native) {
|
|
78
|
+
this._svg.loadData(value.native);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
62
81
|
[srcProperty.setNative](value) {
|
|
63
82
|
if (typeof value === 'string') {
|
|
64
83
|
if (value.indexOf('<svg') > -1) {
|
|
@@ -105,10 +124,10 @@ export class Svg extends SVGBase {
|
|
|
105
124
|
const height = domCopy.getAttribute('height');
|
|
106
125
|
const viewBox = domCopy.getAttribute('viewBox');
|
|
107
126
|
if (!width) {
|
|
108
|
-
domCopy.setAttribute('width',
|
|
127
|
+
domCopy.setAttribute('width', `300`);
|
|
109
128
|
}
|
|
110
129
|
if (!height) {
|
|
111
|
-
domCopy.setAttribute('height',
|
|
130
|
+
domCopy.setAttribute('height', `150`);
|
|
112
131
|
}
|
|
113
132
|
if (!viewBox) {
|
|
114
133
|
domCopy.setAttribute('viewBox', '0 0 100 100');
|
|
@@ -144,13 +163,8 @@ export class Svg extends SVGBase {
|
|
|
144
163
|
if (value.indexOf('<svg') > -1) {
|
|
145
164
|
const { width, height } = parseSVGDimensions(value);
|
|
146
165
|
if (width > 0 && height > 0) {
|
|
147
|
-
const
|
|
148
|
-
|
|
149
|
-
const view = new Svg();
|
|
150
|
-
view._svg = svg;
|
|
151
|
-
view.width = svg.frame.size.width;
|
|
152
|
-
view.height = svg.frame.size.height;
|
|
153
|
-
return view;
|
|
166
|
+
const native = NSCSVG.fromSVGStringSync(value);
|
|
167
|
+
return SvgData.fromNative(native);
|
|
154
168
|
}
|
|
155
169
|
}
|
|
156
170
|
else {
|
|
@@ -168,12 +182,7 @@ export class Svg extends SVGBase {
|
|
|
168
182
|
}
|
|
169
183
|
catch (error) { }
|
|
170
184
|
if (nativeSvg) {
|
|
171
|
-
|
|
172
|
-
view._svg = nativeSvg;
|
|
173
|
-
const frame = nativeSvg.frame.size;
|
|
174
|
-
view.width = frame.width;
|
|
175
|
-
view.height = frame.height;
|
|
176
|
-
return view;
|
|
185
|
+
return SvgData.fromNative(nativeSvg);
|
|
177
186
|
}
|
|
178
187
|
}
|
|
179
188
|
}
|
|
@@ -186,11 +195,8 @@ export class Svg extends SVGBase {
|
|
|
186
195
|
const { width, height } = parseSVGDimensions(value);
|
|
187
196
|
if (width > 0 && height > 0) {
|
|
188
197
|
NSCSVG.fromString(value, (svg) => {
|
|
189
|
-
const
|
|
190
|
-
|
|
191
|
-
view.width = width;
|
|
192
|
-
view.height = height;
|
|
193
|
-
resolve(view);
|
|
198
|
+
const ret = SvgData.fromNative(svg);
|
|
199
|
+
resolve(ret);
|
|
194
200
|
});
|
|
195
201
|
return;
|
|
196
202
|
}
|
|
@@ -198,12 +204,8 @@ export class Svg extends SVGBase {
|
|
|
198
204
|
else {
|
|
199
205
|
const cb = (nativeSvg) => {
|
|
200
206
|
if (nativeSvg) {
|
|
201
|
-
const
|
|
202
|
-
|
|
203
|
-
view._svg = nativeSvg;
|
|
204
|
-
view.width = lp.width;
|
|
205
|
-
view.height = lp.height;
|
|
206
|
-
resolve(view);
|
|
207
|
+
const ret = SvgData.fromNative(nativeSvg);
|
|
208
|
+
resolve(ret);
|
|
207
209
|
}
|
|
208
210
|
else {
|
|
209
211
|
reject(new Error('Failed to parse SVG'));
|
package/index.ios.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.ios.js","sourceRoot":"","sources":["../../../packages/canvas-svg/index.ios.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"index.ios.js","sourceRoot":"","sources":["../../../packages/canvas-svg/index.ios.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nativescript/canvas-svg",
|
|
3
|
-
"version": "2.0.0
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"description": "Add a plugin description",
|
|
5
5
|
"main": "index",
|
|
6
6
|
"typings": "index.d.ts",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"readmeFilename": "README.md",
|
|
34
34
|
"bootstrapper": "@nativescript/plugin-seed",
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@xmldom/xmldom": "0.8.
|
|
36
|
+
"@xmldom/xmldom": ">=0.8.12",
|
|
37
37
|
"query-selector": "2.0.0",
|
|
38
38
|
"set-value": "4.1.0"
|
|
39
39
|
},
|
|
Binary file
|