@nativescript/canvas-svg 2.0.0-webgpu.35 → 2.0.0-webgpu.36
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 +9 -2
- package/index.android.js +57 -47
- package/index.android.js.map +1 -1
- package/index.d.ts +12 -2
- package/index.ios.d.ts +9 -2
- package/index.ios.js +52 -43
- package/index.ios.js.map +1 -1
- package/package.json +1 -1
- 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 +20 -9
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Headers/canvas_svg.h +10 -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 +260 -95
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios.private.swiftinterface +21 -13
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios.swiftinterface +21 -13
- 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 +251 -214
- 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 +40 -18
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Headers/canvas_svg.h +10 -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 +260 -95
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +21 -13
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/arm64-apple-ios-simulator.swiftinterface +21 -13
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/x86_64-apple-ios-simulator.abi.json +260 -95
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +21 -13
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/Modules/CanvasSVG.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +21 -13
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/CanvasSVG.framework/_CodeSignature/CodeResources +24 -24
- 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 +254 -217
- package/platforms/ios/CanvasSVG.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasSVG.framework.dSYM/Contents/Resources/Relocations/x86_64/CanvasSVG.yml +304 -286
package/index.android.d.ts
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
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();
|
|
@@ -11,6 +18,6 @@ export declare class Svg extends SVGBase {
|
|
|
11
18
|
onUnloaded(): void;
|
|
12
19
|
addChild(view: SVGItem): void;
|
|
13
20
|
removeChild(view: SVGItem): void;
|
|
14
|
-
static fromSrcSync(value: string):
|
|
15
|
-
static fromSrc(value: string): Promise<
|
|
21
|
+
static fromSrcSync(value: string): SvgData | null;
|
|
22
|
+
static fromSrc(value: string): Promise<SvgData>;
|
|
16
23
|
}
|
package/index.android.js
CHANGED
|
@@ -13,22 +13,25 @@ function parseSVGDimensions(svgString) {
|
|
|
13
13
|
let width, height, viewBox;
|
|
14
14
|
if (matches) {
|
|
15
15
|
matches.forEach((match) => {
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
16
|
+
const split = match.split(' ');
|
|
17
|
+
for (const part of split) {
|
|
18
|
+
const parts = part.split('=');
|
|
19
|
+
const attributeName = parts[0].trim();
|
|
20
|
+
const attributeValue = parts[1].trim().replace(/"/g, '');
|
|
21
|
+
if (attributeName === 'width') {
|
|
22
|
+
if (width === undefined) {
|
|
23
|
+
width = parseFloat(attributeValue) ?? 0;
|
|
24
|
+
}
|
|
22
25
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
26
|
+
else if (attributeName === 'height') {
|
|
27
|
+
if (height === undefined) {
|
|
28
|
+
height = parseFloat(attributeValue) ?? 0;
|
|
29
|
+
}
|
|
27
30
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
31
|
+
else if (attributeName === 'viewBox') {
|
|
32
|
+
if (viewBox === undefined) {
|
|
33
|
+
viewBox = attributeValue.split(' ').map(parseFloat).splice(0, 4);
|
|
34
|
+
}
|
|
32
35
|
}
|
|
33
36
|
}
|
|
34
37
|
});
|
|
@@ -47,6 +50,29 @@ function parseSVGDimensions(svgString) {
|
|
|
47
50
|
}
|
|
48
51
|
return { width: width ?? 0, height: height ?? 0 };
|
|
49
52
|
}
|
|
53
|
+
export class SvgData {
|
|
54
|
+
static fromNative(value) {
|
|
55
|
+
if (value) {
|
|
56
|
+
const data = new SvgData();
|
|
57
|
+
data.native = value;
|
|
58
|
+
return data;
|
|
59
|
+
}
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
get width() {
|
|
63
|
+
return this.native?.getWidth?.() ?? 0;
|
|
64
|
+
}
|
|
65
|
+
get height() {
|
|
66
|
+
return this.native?.getHeight?.() ?? 0;
|
|
67
|
+
}
|
|
68
|
+
get data() {
|
|
69
|
+
const data = this.native?.getData?.();
|
|
70
|
+
if (data) {
|
|
71
|
+
return ArrayBuffer.from(data);
|
|
72
|
+
}
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
50
76
|
export class Svg extends SVGBase {
|
|
51
77
|
constructor() {
|
|
52
78
|
super();
|
|
@@ -92,17 +118,17 @@ export class Svg extends SVGBase {
|
|
|
92
118
|
__redraw() {
|
|
93
119
|
if (this._attachedToDom) {
|
|
94
120
|
const domCopy = this.__domElement.valueOf();
|
|
95
|
-
|
|
96
|
-
|
|
121
|
+
const width = domCopy.getAttribute('width');
|
|
122
|
+
const height = domCopy.getAttribute('height');
|
|
97
123
|
const viewBox = domCopy.getAttribute('viewBox');
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
124
|
+
if (!width) {
|
|
125
|
+
domCopy.setAttribute('width', `300`);
|
|
126
|
+
}
|
|
127
|
+
if (!height) {
|
|
128
|
+
domCopy.setAttribute('height', `150`);
|
|
129
|
+
}
|
|
104
130
|
if (!viewBox) {
|
|
105
|
-
domCopy.setAttribute('viewBox', '0 0
|
|
131
|
+
domCopy.setAttribute('viewBox', '0 0 100 100');
|
|
106
132
|
}
|
|
107
133
|
const serialized = this._serializer.serializeToString(domCopy);
|
|
108
134
|
if (serialized !== initialSVG) {
|
|
@@ -136,12 +162,8 @@ export class Svg extends SVGBase {
|
|
|
136
162
|
if (value.indexOf('<svg') > -1) {
|
|
137
163
|
const { width, height } = parseSVGDimensions(value);
|
|
138
164
|
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;
|
|
165
|
+
const svg = org.nativescript.canvas.svg.NSCSVG.fromStringSync(context, width, height, value);
|
|
166
|
+
return SvgData.fromNative(svg);
|
|
145
167
|
}
|
|
146
168
|
}
|
|
147
169
|
else {
|
|
@@ -159,12 +181,7 @@ export class Svg extends SVGBase {
|
|
|
159
181
|
}
|
|
160
182
|
catch (error) { }
|
|
161
183
|
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;
|
|
184
|
+
return SvgData.fromNative(nativeSvg);
|
|
168
185
|
}
|
|
169
186
|
}
|
|
170
187
|
}
|
|
@@ -177,13 +194,10 @@ export class Svg extends SVGBase {
|
|
|
177
194
|
if (value.indexOf('<svg') > -1) {
|
|
178
195
|
const { width, height } = parseSVGDimensions(value);
|
|
179
196
|
if (width > 0 && height > 0) {
|
|
180
|
-
org.nativescript.canvas.svg.NSCSVG.fromString(context, width
|
|
197
|
+
org.nativescript.canvas.svg.NSCSVG.fromString(context, width, height, value, new org.nativescript.canvas.svg.NSCSVG.Callback({
|
|
181
198
|
onSuccess(svg) {
|
|
182
|
-
const
|
|
183
|
-
|
|
184
|
-
view.width = width;
|
|
185
|
-
view.height = height;
|
|
186
|
-
resolve(view);
|
|
199
|
+
const ret = SvgData.fromNative(svg);
|
|
200
|
+
resolve(ret);
|
|
187
201
|
},
|
|
188
202
|
}));
|
|
189
203
|
return;
|
|
@@ -193,12 +207,8 @@ export class Svg extends SVGBase {
|
|
|
193
207
|
const cb = new org.nativescript.canvas.svg.NSCSVG.Callback({
|
|
194
208
|
onSuccess(nativeSvg) {
|
|
195
209
|
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);
|
|
210
|
+
const ret = SvgData.fromNative(nativeSvg);
|
|
211
|
+
resolve(ret);
|
|
202
212
|
}
|
|
203
213
|
else {
|
|
204
214
|
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,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE1F,cAAc,YAAY,CAAC;AAI3B,SAAS,kBAAkB,CAAC,SAAS;IACpC,MAAM,QAAQ,GAAG,eAAe,CAAC;IAEjC,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAExC,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IAChC,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAE/B,MAAM,KAAK,GAAG,8DAA8D,CAAC;IAE7E,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC;IAE3B,IAAI,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACzB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;
|
|
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,16 @@ 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
|
+
}
|
|
8
|
+
|
|
9
|
+
export class SvgData {
|
|
10
|
+
readonly native: any;
|
|
11
|
+
|
|
12
|
+
readonly width: number;
|
|
13
|
+
|
|
14
|
+
readonly height: number;
|
|
15
|
+
|
|
16
|
+
readonly data: ArrayBuffer | null;
|
|
7
17
|
}
|
package/index.ios.d.ts
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
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();
|
|
@@ -13,6 +20,6 @@ export declare class Svg extends SVGBase {
|
|
|
13
20
|
onUnloaded(): void;
|
|
14
21
|
addChild(view: SVGItem): void;
|
|
15
22
|
removeChild(view: SVGItem): void;
|
|
16
|
-
static fromSrcSync(value: string):
|
|
17
|
-
static fromSrc(value: string): Promise<
|
|
23
|
+
static fromSrcSync(value: string): SvgData | null;
|
|
24
|
+
static fromSrc(value: string): Promise<SvgData>;
|
|
18
25
|
}
|
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;
|
|
@@ -13,22 +13,25 @@ function parseSVGDimensions(svgString) {
|
|
|
13
13
|
let width, height, viewBox;
|
|
14
14
|
if (matches) {
|
|
15
15
|
matches.forEach((match) => {
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
16
|
+
const split = match.split(' ');
|
|
17
|
+
for (const part of split) {
|
|
18
|
+
const parts = part.split('=');
|
|
19
|
+
const attributeName = parts[0].trim();
|
|
20
|
+
const attributeValue = parts[1].trim().replace(/"/g, '');
|
|
21
|
+
if (attributeName === 'width') {
|
|
22
|
+
if (width === undefined) {
|
|
23
|
+
width = parseFloat(attributeValue) ?? 0;
|
|
24
|
+
}
|
|
22
25
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
26
|
+
else if (attributeName === 'height') {
|
|
27
|
+
if (height === undefined) {
|
|
28
|
+
height = parseFloat(attributeValue) ?? 0;
|
|
29
|
+
}
|
|
27
30
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
31
|
+
else if (attributeName === 'viewBox') {
|
|
32
|
+
if (viewBox === undefined) {
|
|
33
|
+
viewBox = attributeValue.split(' ').map(parseFloat).splice(0, 4);
|
|
34
|
+
}
|
|
32
35
|
}
|
|
33
36
|
}
|
|
34
37
|
});
|
|
@@ -37,16 +40,39 @@ function parseSVGDimensions(svgString) {
|
|
|
37
40
|
const viewBoxWidth = viewBox[2];
|
|
38
41
|
const viewBoxHeight = viewBox[3];
|
|
39
42
|
const aspectRatio = viewBoxWidth / viewBoxHeight;
|
|
40
|
-
width = (height ??
|
|
43
|
+
width = (height ?? 150) * aspectRatio;
|
|
41
44
|
}
|
|
42
45
|
if (!height && viewBox && viewBox.length === 4) {
|
|
43
46
|
const viewBoxWidth = viewBox[2];
|
|
44
47
|
const viewBoxHeight = viewBox[3];
|
|
45
48
|
const aspectRatio = viewBoxWidth / viewBoxHeight;
|
|
46
|
-
height = (width ??
|
|
49
|
+
height = (width ?? 300) / aspectRatio;
|
|
47
50
|
}
|
|
48
51
|
return { width: width ?? 0, height: height ?? 0 };
|
|
49
52
|
}
|
|
53
|
+
export class SvgData {
|
|
54
|
+
static fromNative(value) {
|
|
55
|
+
if (value) {
|
|
56
|
+
const data = new SvgData();
|
|
57
|
+
data.native = value;
|
|
58
|
+
return data;
|
|
59
|
+
}
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
get width() {
|
|
63
|
+
return this.native?.width ?? 0;
|
|
64
|
+
}
|
|
65
|
+
get height() {
|
|
66
|
+
return this.native?.height ?? 0;
|
|
67
|
+
}
|
|
68
|
+
get data() {
|
|
69
|
+
const data = this.native?.data;
|
|
70
|
+
if (data) {
|
|
71
|
+
return interop.bufferFromData(data);
|
|
72
|
+
}
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
50
76
|
export class Svg extends SVGBase {
|
|
51
77
|
constructor() {
|
|
52
78
|
super();
|
|
@@ -105,10 +131,10 @@ export class Svg extends SVGBase {
|
|
|
105
131
|
const height = domCopy.getAttribute('height');
|
|
106
132
|
const viewBox = domCopy.getAttribute('viewBox');
|
|
107
133
|
if (!width) {
|
|
108
|
-
domCopy.setAttribute('width',
|
|
134
|
+
domCopy.setAttribute('width', `300`);
|
|
109
135
|
}
|
|
110
136
|
if (!height) {
|
|
111
|
-
domCopy.setAttribute('height',
|
|
137
|
+
domCopy.setAttribute('height', `150`);
|
|
112
138
|
}
|
|
113
139
|
if (!viewBox) {
|
|
114
140
|
domCopy.setAttribute('viewBox', '0 0 100 100');
|
|
@@ -144,13 +170,8 @@ export class Svg extends SVGBase {
|
|
|
144
170
|
if (value.indexOf('<svg') > -1) {
|
|
145
171
|
const { width, height } = parseSVGDimensions(value);
|
|
146
172
|
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;
|
|
173
|
+
const native = NSCSVG.fromSVGStringSync(value);
|
|
174
|
+
return SvgData.fromNative(native);
|
|
154
175
|
}
|
|
155
176
|
}
|
|
156
177
|
else {
|
|
@@ -168,12 +189,7 @@ export class Svg extends SVGBase {
|
|
|
168
189
|
}
|
|
169
190
|
catch (error) { }
|
|
170
191
|
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;
|
|
192
|
+
return SvgData.fromNative(nativeSvg);
|
|
177
193
|
}
|
|
178
194
|
}
|
|
179
195
|
}
|
|
@@ -186,11 +202,8 @@ export class Svg extends SVGBase {
|
|
|
186
202
|
const { width, height } = parseSVGDimensions(value);
|
|
187
203
|
if (width > 0 && height > 0) {
|
|
188
204
|
NSCSVG.fromString(value, (svg) => {
|
|
189
|
-
const
|
|
190
|
-
|
|
191
|
-
view.width = width;
|
|
192
|
-
view.height = height;
|
|
193
|
-
resolve(view);
|
|
205
|
+
const ret = SvgData.fromNative(svg);
|
|
206
|
+
resolve(ret);
|
|
194
207
|
});
|
|
195
208
|
return;
|
|
196
209
|
}
|
|
@@ -198,12 +211,8 @@ export class Svg extends SVGBase {
|
|
|
198
211
|
else {
|
|
199
212
|
const cb = (nativeSvg) => {
|
|
200
213
|
if (nativeSvg) {
|
|
201
|
-
const
|
|
202
|
-
|
|
203
|
-
view._svg = nativeSvg;
|
|
204
|
-
view.width = lp.width;
|
|
205
|
-
view.height = lp.height;
|
|
206
|
-
resolve(view);
|
|
214
|
+
const ret = SvgData.fromNative(nativeSvg);
|
|
215
|
+
resolve(ret);
|
|
207
216
|
}
|
|
208
217
|
else {
|
|
209
218
|
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
|
Binary file
|
|
Binary file
|
package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Headers/CanvasSVG-Swift.h
CHANGED
|
@@ -278,6 +278,7 @@ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
|
|
|
278
278
|
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
|
|
279
279
|
#endif
|
|
280
280
|
@import CoreFoundation;
|
|
281
|
+
@import ObjectiveC;
|
|
281
282
|
@import UIKit;
|
|
282
283
|
#endif
|
|
283
284
|
|
|
@@ -303,12 +304,10 @@ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
|
|
|
303
304
|
@class NSCoder;
|
|
304
305
|
@class UIImage;
|
|
305
306
|
@class NSData;
|
|
307
|
+
@class NSCSVGData;
|
|
306
308
|
|
|
307
309
|
SWIFT_CLASS_NAMED("NSCSVG")
|
|
308
310
|
@interface NSCSVG : UIView
|
|
309
|
-
@property (nonatomic, readonly) void * _Nullable data;
|
|
310
|
-
@property (nonatomic, readonly) CGSize data_size;
|
|
311
|
-
@property (nonatomic, readonly) NSUInteger buf_size;
|
|
312
311
|
@property (nonatomic) BOOL autoScale;
|
|
313
312
|
@property (nonatomic, copy) NSString * _Nullable src;
|
|
314
313
|
@property (nonatomic, copy) NSString * _Nullable srcPath;
|
|
@@ -319,12 +318,24 @@ SWIFT_CLASS_NAMED("NSCSVG")
|
|
|
319
318
|
- (void)drawRect:(CGRect)rect;
|
|
320
319
|
- (UIImage * _Nullable)toImage SWIFT_WARN_UNUSED_RESULT;
|
|
321
320
|
- (NSData * _Nullable)toData SWIFT_WARN_UNUSED_RESULT;
|
|
322
|
-
+ (
|
|
323
|
-
+ (
|
|
324
|
-
+ (
|
|
325
|
-
+ (void)fromString:(NSString * _Nonnull)source :(void (^ _Nonnull)(
|
|
326
|
-
+ (void)fromPath:(NSString * _Nonnull)path :(void (^ _Nonnull)(
|
|
327
|
-
+ (void)fromRemote:(NSString * _Nonnull)path :(void (^ _Nonnull)(
|
|
321
|
+
+ (NSCSVGData * _Nullable)fromStringSync:(NSString * _Nonnull)source SWIFT_WARN_UNUSED_RESULT;
|
|
322
|
+
+ (NSCSVGData * _Nullable)fromPathSync:(NSString * _Nonnull)path SWIFT_WARN_UNUSED_RESULT;
|
|
323
|
+
+ (NSCSVGData * _Nullable)fromRemoteSync:(NSString * _Nonnull)path SWIFT_WARN_UNUSED_RESULT;
|
|
324
|
+
+ (void)fromString:(NSString * _Nonnull)source :(void (^ _Nonnull)(NSCSVGData * _Nullable))callback;
|
|
325
|
+
+ (void)fromPath:(NSString * _Nonnull)path :(void (^ _Nonnull)(NSCSVGData * _Nullable))callback;
|
|
326
|
+
+ (void)fromRemote:(NSString * _Nonnull)path :(void (^ _Nonnull)(NSCSVGData * _Nullable))callback;
|
|
327
|
+
@end
|
|
328
|
+
|
|
329
|
+
@class NSMutableData;
|
|
330
|
+
|
|
331
|
+
SWIFT_CLASS_NAMED("NSCSVGData")
|
|
332
|
+
@interface NSCSVGData : NSObject
|
|
333
|
+
@property (nonatomic, readonly) CGFloat width;
|
|
334
|
+
@property (nonatomic, readonly) CGFloat height;
|
|
335
|
+
@property (nonatomic, readonly) void * _Nullable rawData;
|
|
336
|
+
@property (nonatomic, readonly, strong) NSMutableData * _Nullable data;
|
|
337
|
+
- (UIImage * _Nullable)getImage SWIFT_WARN_UNUSED_RESULT;
|
|
338
|
+
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
|
|
328
339
|
@end
|
|
329
340
|
|
|
330
341
|
#endif
|
package/platforms/ios/CanvasSVG.xcframework/ios-arm64/CanvasSVG.framework/Headers/canvas_svg.h
CHANGED
|
@@ -8,6 +8,16 @@
|
|
|
8
8
|
#include <stdint.h>
|
|
9
9
|
#include <stdlib.h>
|
|
10
10
|
|
|
11
|
+
#if defined(TARGET_OS_IOS)
|
|
12
|
+
void canvas_native_svg_draw_from_bytes(uint8_t *data,
|
|
13
|
+
uintptr_t size,
|
|
14
|
+
float width,
|
|
15
|
+
float height,
|
|
16
|
+
float scale,
|
|
17
|
+
const uint8_t *svg_data,
|
|
18
|
+
uintptr_t svg_size);
|
|
19
|
+
#endif
|
|
20
|
+
|
|
11
21
|
#if defined(TARGET_OS_IOS)
|
|
12
22
|
void canvas_native_svg_draw_from_string(uint8_t *data,
|
|
13
23
|
uintptr_t size,
|