@shopify/react-native-skia 0.1.125 → 0.1.128
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/cpp/jsi/JsiSimpleValueWrapper.h +14 -4
- package/lib/commonjs/renderer/processors/math/Matrix3.js +2 -2
- package/lib/commonjs/renderer/processors/math/Matrix3.js.map +1 -1
- package/lib/module/renderer/processors/math/Matrix3.js +2 -2
- package/lib/module/renderer/processors/math/Matrix3.js.map +1 -1
- package/package.json +1 -1
- package/react-native-skia.podspec +1 -1
- package/src/renderer/processors/math/Matrix3.ts +2 -2
|
@@ -9,6 +9,7 @@ using namespace facebook;
|
|
|
9
9
|
|
|
10
10
|
enum JsiWrapperValueType
|
|
11
11
|
{
|
|
12
|
+
NonInitialized,
|
|
12
13
|
Undefined,
|
|
13
14
|
Null,
|
|
14
15
|
Bool,
|
|
@@ -25,7 +26,7 @@ class JsiSimpleValueWrapper
|
|
|
25
26
|
{
|
|
26
27
|
public:
|
|
27
28
|
JsiSimpleValueWrapper(jsi::Runtime& runtime) :
|
|
28
|
-
_type(JsiWrapperValueType::
|
|
29
|
+
_type(JsiWrapperValueType::NonInitialized),
|
|
29
30
|
_propNameId(jsi::PropNameID::forUtf8(runtime, "value"))
|
|
30
31
|
{}
|
|
31
32
|
|
|
@@ -33,6 +34,8 @@ public:
|
|
|
33
34
|
{
|
|
34
35
|
switch (_type)
|
|
35
36
|
{
|
|
37
|
+
case JsiWrapperValueType::NonInitialized:
|
|
38
|
+
return nullptr;
|
|
36
39
|
case JsiWrapperValueType::Undefined:
|
|
37
40
|
return jsi::Value::undefined();
|
|
38
41
|
case JsiWrapperValueType::Null:
|
|
@@ -72,16 +75,23 @@ public:
|
|
|
72
75
|
}
|
|
73
76
|
|
|
74
77
|
bool equals(jsi::Runtime& runtime, const jsi::Value &value) {
|
|
75
|
-
if(
|
|
78
|
+
if (_type == JsiWrapperValueType::NonInitialized) {
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
81
|
+
if(value.isNumber() && _type == JsiWrapperValueType::Number) {
|
|
76
82
|
return _numberValue == value.asNumber();
|
|
77
|
-
} else if(value.isBool()) {
|
|
83
|
+
} else if(value.isBool() && _type == JsiWrapperValueType::Bool) {
|
|
78
84
|
return _boolValue == value.getBool();
|
|
79
85
|
} else if(value.isUndefined()) {
|
|
80
86
|
return _type == JsiWrapperValueType::Undefined;
|
|
81
87
|
} else if(value.isNull()) {
|
|
82
88
|
return _type == JsiWrapperValueType::Null;
|
|
83
89
|
} else if(value.isString()) {
|
|
84
|
-
|
|
90
|
+
auto current = getCurrent(runtime);
|
|
91
|
+
if (current.isString()) {
|
|
92
|
+
return jsi::String::strictEquals(runtime, value.asString(runtime), current.asString(runtime));
|
|
93
|
+
}
|
|
94
|
+
return false;
|
|
85
95
|
}
|
|
86
96
|
return false;
|
|
87
97
|
}
|
|
@@ -32,12 +32,12 @@ const processTransform2d = transforms => {
|
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
if (key === "scaleX") {
|
|
35
|
-
m.preScale(value,
|
|
35
|
+
m.preScale(value, 1);
|
|
36
36
|
continue;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
if (key === "scaleY") {
|
|
40
|
-
m.preScale(
|
|
40
|
+
m.preScale(1, value);
|
|
41
41
|
continue;
|
|
42
42
|
}
|
|
43
43
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Matrix3.ts"],"names":["processTransform2d","transforms","m","Skia","Matrix","transform","key","Object","keys","value","preTranslate","preScale","preSkew","preRotate","Math","PI"],"mappings":";;;;;;;AAAA;;AACA;;AA+BO,MAAMA,kBAAkB,GAAIC,UAAD,IAA8B;AAC9D,QAAMC,CAAC,GAAGC,WAAKC,MAAL,EAAV;;AACA,OAAK,MAAMC,SAAX,IAAwBJ,UAAxB,EAAoC;AAClC,UAAMK,GAAG,GAAGC,MAAM,CAACC,IAAP,CAAYH,SAAZ,EAAuB,CAAvB,CAAZ;AACA,UAAMI,KAAK,GAAIJ,SAAD,CAAiDC,GAAjD,CAAd;;AACA,QAAIA,GAAG,KAAK,YAAZ,EAA0B;AACxBJ,MAAAA,CAAC,CAACQ,YAAF,CAAeD,KAAf,EAAsB,CAAtB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,YAAZ,EAA0B;AACxBJ,MAAAA,CAAC,CAACQ,YAAF,CAAe,CAAf,EAAkBD,KAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBJ,MAAAA,CAAC,CAACS,QAAF,CAAWF,KAAX,EAAkBA,KAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAZ,EAAsB;AACpBJ,MAAAA,CAAC,CAACS,QAAF,CAAWF,KAAX,EAAkB,CAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAZ,EAAsB;AACpBJ,MAAAA,CAAC,CAACS,QAAF,CAAW,CAAX,EAAcF,KAAd;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBJ,MAAAA,CAAC,CAACU,OAAF,CAAUH,KAAV,EAAiB,CAAjB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBJ,MAAAA,CAAC,CAACU,OAAF,CAAU,CAAV,EAAaH,KAAb;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAR,IAAoBA,GAAG,KAAK,SAAhC,EAA2C;AACzCJ,MAAAA,CAAC,CAACW,SAAF,CAAaJ,KAAK,GAAG,GAAT,GAAgBK,IAAI,CAACC,EAAjC;AACA;AACD;;AACD,oCAAgBT,GAAhB;AACD;;AACD,SAAOJ,CAAP;AACD,CAxCM","sourcesContent":["import { exhaustiveCheck } from \"../../typeddash\";\nimport { Skia } from \"../../../skia\";\n\ntype Transform2dName =\n | \"translateX\"\n | \"translateY\"\n | \"scale\"\n | \"skewX\"\n | \"skewY\"\n | \"scaleX\"\n | \"scaleY\"\n | \"rotateZ\"\n | \"rotate\";\n\nexport interface TransformProp {\n transform?: Transforms2d;\n}\n\ntype Transformations = {\n readonly [Name in Transform2dName]: number;\n};\nexport type Transforms2d = readonly (\n | Pick<Transformations, \"translateX\">\n | Pick<Transformations, \"translateY\">\n | Pick<Transformations, \"scale\">\n | Pick<Transformations, \"scaleX\">\n | Pick<Transformations, \"scaleY\">\n | Pick<Transformations, \"skewX\">\n | Pick<Transformations, \"skewY\">\n | Pick<Transformations, \"rotate\">\n)[];\n\nexport const processTransform2d = (transforms: Transforms2d) => {\n const m = Skia.Matrix();\n for (const transform of transforms) {\n const key = Object.keys(transform)[0] as Transform2dName;\n const value = (transform as Pick<Transformations, typeof key>)[key];\n if (key === \"translateX\") {\n m.preTranslate(value, 0);\n continue;\n }\n if (key === \"translateY\") {\n m.preTranslate(0, value);\n continue;\n }\n if (key === \"scale\") {\n m.preScale(value, value);\n continue;\n }\n if (key === \"scaleX\") {\n m.preScale(value,
|
|
1
|
+
{"version":3,"sources":["Matrix3.ts"],"names":["processTransform2d","transforms","m","Skia","Matrix","transform","key","Object","keys","value","preTranslate","preScale","preSkew","preRotate","Math","PI"],"mappings":";;;;;;;AAAA;;AACA;;AA+BO,MAAMA,kBAAkB,GAAIC,UAAD,IAA8B;AAC9D,QAAMC,CAAC,GAAGC,WAAKC,MAAL,EAAV;;AACA,OAAK,MAAMC,SAAX,IAAwBJ,UAAxB,EAAoC;AAClC,UAAMK,GAAG,GAAGC,MAAM,CAACC,IAAP,CAAYH,SAAZ,EAAuB,CAAvB,CAAZ;AACA,UAAMI,KAAK,GAAIJ,SAAD,CAAiDC,GAAjD,CAAd;;AACA,QAAIA,GAAG,KAAK,YAAZ,EAA0B;AACxBJ,MAAAA,CAAC,CAACQ,YAAF,CAAeD,KAAf,EAAsB,CAAtB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,YAAZ,EAA0B;AACxBJ,MAAAA,CAAC,CAACQ,YAAF,CAAe,CAAf,EAAkBD,KAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBJ,MAAAA,CAAC,CAACS,QAAF,CAAWF,KAAX,EAAkBA,KAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAZ,EAAsB;AACpBJ,MAAAA,CAAC,CAACS,QAAF,CAAWF,KAAX,EAAkB,CAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAZ,EAAsB;AACpBJ,MAAAA,CAAC,CAACS,QAAF,CAAW,CAAX,EAAcF,KAAd;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBJ,MAAAA,CAAC,CAACU,OAAF,CAAUH,KAAV,EAAiB,CAAjB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBJ,MAAAA,CAAC,CAACU,OAAF,CAAU,CAAV,EAAaH,KAAb;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAR,IAAoBA,GAAG,KAAK,SAAhC,EAA2C;AACzCJ,MAAAA,CAAC,CAACW,SAAF,CAAaJ,KAAK,GAAG,GAAT,GAAgBK,IAAI,CAACC,EAAjC;AACA;AACD;;AACD,oCAAgBT,GAAhB;AACD;;AACD,SAAOJ,CAAP;AACD,CAxCM","sourcesContent":["import { exhaustiveCheck } from \"../../typeddash\";\nimport { Skia } from \"../../../skia\";\n\ntype Transform2dName =\n | \"translateX\"\n | \"translateY\"\n | \"scale\"\n | \"skewX\"\n | \"skewY\"\n | \"scaleX\"\n | \"scaleY\"\n | \"rotateZ\"\n | \"rotate\";\n\nexport interface TransformProp {\n transform?: Transforms2d;\n}\n\ntype Transformations = {\n readonly [Name in Transform2dName]: number;\n};\nexport type Transforms2d = readonly (\n | Pick<Transformations, \"translateX\">\n | Pick<Transformations, \"translateY\">\n | Pick<Transformations, \"scale\">\n | Pick<Transformations, \"scaleX\">\n | Pick<Transformations, \"scaleY\">\n | Pick<Transformations, \"skewX\">\n | Pick<Transformations, \"skewY\">\n | Pick<Transformations, \"rotate\">\n)[];\n\nexport const processTransform2d = (transforms: Transforms2d) => {\n const m = Skia.Matrix();\n for (const transform of transforms) {\n const key = Object.keys(transform)[0] as Transform2dName;\n const value = (transform as Pick<Transformations, typeof key>)[key];\n if (key === \"translateX\") {\n m.preTranslate(value, 0);\n continue;\n }\n if (key === \"translateY\") {\n m.preTranslate(0, value);\n continue;\n }\n if (key === \"scale\") {\n m.preScale(value, value);\n continue;\n }\n if (key === \"scaleX\") {\n m.preScale(value, 1);\n continue;\n }\n if (key === \"scaleY\") {\n m.preScale(1, value);\n continue;\n }\n if (key === \"skewX\") {\n m.preSkew(value, 0);\n continue;\n }\n if (key === \"skewY\") {\n m.preSkew(0, value);\n continue;\n }\n if (key === \"rotate\" || key === \"rotateZ\") {\n m.preRotate((value * 180) / Math.PI);\n continue;\n }\n exhaustiveCheck(key);\n }\n return m;\n};\n"]}
|
|
@@ -23,12 +23,12 @@ export const processTransform2d = transforms => {
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
if (key === "scaleX") {
|
|
26
|
-
m.preScale(value,
|
|
26
|
+
m.preScale(value, 1);
|
|
27
27
|
continue;
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
if (key === "scaleY") {
|
|
31
|
-
m.preScale(
|
|
31
|
+
m.preScale(1, value);
|
|
32
32
|
continue;
|
|
33
33
|
}
|
|
34
34
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Matrix3.ts"],"names":["exhaustiveCheck","Skia","processTransform2d","transforms","m","Matrix","transform","key","Object","keys","value","preTranslate","preScale","preSkew","preRotate","Math","PI"],"mappings":"AAAA,SAASA,eAAT,QAAgC,iBAAhC;AACA,SAASC,IAAT,QAAqB,eAArB;AA+BA,OAAO,MAAMC,kBAAkB,GAAIC,UAAD,IAA8B;AAC9D,QAAMC,CAAC,GAAGH,IAAI,CAACI,MAAL,EAAV;;AACA,OAAK,MAAMC,SAAX,IAAwBH,UAAxB,EAAoC;AAClC,UAAMI,GAAG,GAAGC,MAAM,CAACC,IAAP,CAAYH,SAAZ,EAAuB,CAAvB,CAAZ;AACA,UAAMI,KAAK,GAAIJ,SAAD,CAAiDC,GAAjD,CAAd;;AACA,QAAIA,GAAG,KAAK,YAAZ,EAA0B;AACxBH,MAAAA,CAAC,CAACO,YAAF,CAAeD,KAAf,EAAsB,CAAtB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,YAAZ,EAA0B;AACxBH,MAAAA,CAAC,CAACO,YAAF,CAAe,CAAf,EAAkBD,KAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBH,MAAAA,CAAC,CAACQ,QAAF,CAAWF,KAAX,EAAkBA,KAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAZ,EAAsB;AACpBH,MAAAA,CAAC,CAACQ,QAAF,CAAWF,KAAX,EAAkB,CAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAZ,EAAsB;AACpBH,MAAAA,CAAC,CAACQ,QAAF,CAAW,CAAX,EAAcF,KAAd;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBH,MAAAA,CAAC,CAACS,OAAF,CAAUH,KAAV,EAAiB,CAAjB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBH,MAAAA,CAAC,CAACS,OAAF,CAAU,CAAV,EAAaH,KAAb;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAR,IAAoBA,GAAG,KAAK,SAAhC,EAA2C;AACzCH,MAAAA,CAAC,CAACU,SAAF,CAAaJ,KAAK,GAAG,GAAT,GAAgBK,IAAI,CAACC,EAAjC;AACA;AACD;;AACDhB,IAAAA,eAAe,CAACO,GAAD,CAAf;AACD;;AACD,SAAOH,CAAP;AACD,CAxCM","sourcesContent":["import { exhaustiveCheck } from \"../../typeddash\";\nimport { Skia } from \"../../../skia\";\n\ntype Transform2dName =\n | \"translateX\"\n | \"translateY\"\n | \"scale\"\n | \"skewX\"\n | \"skewY\"\n | \"scaleX\"\n | \"scaleY\"\n | \"rotateZ\"\n | \"rotate\";\n\nexport interface TransformProp {\n transform?: Transforms2d;\n}\n\ntype Transformations = {\n readonly [Name in Transform2dName]: number;\n};\nexport type Transforms2d = readonly (\n | Pick<Transformations, \"translateX\">\n | Pick<Transformations, \"translateY\">\n | Pick<Transformations, \"scale\">\n | Pick<Transformations, \"scaleX\">\n | Pick<Transformations, \"scaleY\">\n | Pick<Transformations, \"skewX\">\n | Pick<Transformations, \"skewY\">\n | Pick<Transformations, \"rotate\">\n)[];\n\nexport const processTransform2d = (transforms: Transforms2d) => {\n const m = Skia.Matrix();\n for (const transform of transforms) {\n const key = Object.keys(transform)[0] as Transform2dName;\n const value = (transform as Pick<Transformations, typeof key>)[key];\n if (key === \"translateX\") {\n m.preTranslate(value, 0);\n continue;\n }\n if (key === \"translateY\") {\n m.preTranslate(0, value);\n continue;\n }\n if (key === \"scale\") {\n m.preScale(value, value);\n continue;\n }\n if (key === \"scaleX\") {\n m.preScale(value,
|
|
1
|
+
{"version":3,"sources":["Matrix3.ts"],"names":["exhaustiveCheck","Skia","processTransform2d","transforms","m","Matrix","transform","key","Object","keys","value","preTranslate","preScale","preSkew","preRotate","Math","PI"],"mappings":"AAAA,SAASA,eAAT,QAAgC,iBAAhC;AACA,SAASC,IAAT,QAAqB,eAArB;AA+BA,OAAO,MAAMC,kBAAkB,GAAIC,UAAD,IAA8B;AAC9D,QAAMC,CAAC,GAAGH,IAAI,CAACI,MAAL,EAAV;;AACA,OAAK,MAAMC,SAAX,IAAwBH,UAAxB,EAAoC;AAClC,UAAMI,GAAG,GAAGC,MAAM,CAACC,IAAP,CAAYH,SAAZ,EAAuB,CAAvB,CAAZ;AACA,UAAMI,KAAK,GAAIJ,SAAD,CAAiDC,GAAjD,CAAd;;AACA,QAAIA,GAAG,KAAK,YAAZ,EAA0B;AACxBH,MAAAA,CAAC,CAACO,YAAF,CAAeD,KAAf,EAAsB,CAAtB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,YAAZ,EAA0B;AACxBH,MAAAA,CAAC,CAACO,YAAF,CAAe,CAAf,EAAkBD,KAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBH,MAAAA,CAAC,CAACQ,QAAF,CAAWF,KAAX,EAAkBA,KAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAZ,EAAsB;AACpBH,MAAAA,CAAC,CAACQ,QAAF,CAAWF,KAAX,EAAkB,CAAlB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAZ,EAAsB;AACpBH,MAAAA,CAAC,CAACQ,QAAF,CAAW,CAAX,EAAcF,KAAd;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBH,MAAAA,CAAC,CAACS,OAAF,CAAUH,KAAV,EAAiB,CAAjB;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,OAAZ,EAAqB;AACnBH,MAAAA,CAAC,CAACS,OAAF,CAAU,CAAV,EAAaH,KAAb;AACA;AACD;;AACD,QAAIH,GAAG,KAAK,QAAR,IAAoBA,GAAG,KAAK,SAAhC,EAA2C;AACzCH,MAAAA,CAAC,CAACU,SAAF,CAAaJ,KAAK,GAAG,GAAT,GAAgBK,IAAI,CAACC,EAAjC;AACA;AACD;;AACDhB,IAAAA,eAAe,CAACO,GAAD,CAAf;AACD;;AACD,SAAOH,CAAP;AACD,CAxCM","sourcesContent":["import { exhaustiveCheck } from \"../../typeddash\";\nimport { Skia } from \"../../../skia\";\n\ntype Transform2dName =\n | \"translateX\"\n | \"translateY\"\n | \"scale\"\n | \"skewX\"\n | \"skewY\"\n | \"scaleX\"\n | \"scaleY\"\n | \"rotateZ\"\n | \"rotate\";\n\nexport interface TransformProp {\n transform?: Transforms2d;\n}\n\ntype Transformations = {\n readonly [Name in Transform2dName]: number;\n};\nexport type Transforms2d = readonly (\n | Pick<Transformations, \"translateX\">\n | Pick<Transformations, \"translateY\">\n | Pick<Transformations, \"scale\">\n | Pick<Transformations, \"scaleX\">\n | Pick<Transformations, \"scaleY\">\n | Pick<Transformations, \"skewX\">\n | Pick<Transformations, \"skewY\">\n | Pick<Transformations, \"rotate\">\n)[];\n\nexport const processTransform2d = (transforms: Transforms2d) => {\n const m = Skia.Matrix();\n for (const transform of transforms) {\n const key = Object.keys(transform)[0] as Transform2dName;\n const value = (transform as Pick<Transformations, typeof key>)[key];\n if (key === \"translateX\") {\n m.preTranslate(value, 0);\n continue;\n }\n if (key === \"translateY\") {\n m.preTranslate(0, value);\n continue;\n }\n if (key === \"scale\") {\n m.preScale(value, value);\n continue;\n }\n if (key === \"scaleX\") {\n m.preScale(value, 1);\n continue;\n }\n if (key === \"scaleY\") {\n m.preScale(1, value);\n continue;\n }\n if (key === \"skewX\") {\n m.preSkew(value, 0);\n continue;\n }\n if (key === \"skewY\") {\n m.preSkew(0, value);\n continue;\n }\n if (key === \"rotate\" || key === \"rotateZ\") {\n m.preRotate((value * 180) / Math.PI);\n continue;\n }\n exhaustiveCheck(key);\n }\n return m;\n};\n"]}
|
package/package.json
CHANGED
|
@@ -21,7 +21,7 @@ Pod::Spec.new do |s|
|
|
|
21
21
|
s.source = { :git => "https://github.com/shopify/react-native-skia/react-native-skia.git", :tag => "#{s.version}" }
|
|
22
22
|
|
|
23
23
|
s.requires_arc = true
|
|
24
|
-
s.
|
|
24
|
+
s.pod_target_xcconfig = {
|
|
25
25
|
'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) SK_GL=1 SK_METAL=1',
|
|
26
26
|
'CLANG_CXX_LANGUAGE_STANDARD' => 'c++17'
|
|
27
27
|
}
|
|
@@ -48,11 +48,11 @@ export const processTransform2d = (transforms: Transforms2d) => {
|
|
|
48
48
|
continue;
|
|
49
49
|
}
|
|
50
50
|
if (key === "scaleX") {
|
|
51
|
-
m.preScale(value,
|
|
51
|
+
m.preScale(value, 1);
|
|
52
52
|
continue;
|
|
53
53
|
}
|
|
54
54
|
if (key === "scaleY") {
|
|
55
|
-
m.preScale(
|
|
55
|
+
m.preScale(1, value);
|
|
56
56
|
continue;
|
|
57
57
|
}
|
|
58
58
|
if (key === "skewX") {
|