@shopify/react-native-skia 0.1.142 → 0.1.143

Sign up to get free protection for your applications and to get access to all the features.
Files changed (147) hide show
  1. package/cpp/api/JsiSkPathFactory.h +1 -1
  2. package/cpp/api/JsiSkPicture.h +7 -1
  3. package/cpp/rnskia/RNSkDrawView.cpp +4 -4
  4. package/cpp/rnskia/RNSkDrawView.h +1 -1
  5. package/lib/commonjs/renderer/components/Blend.js +20 -5
  6. package/lib/commonjs/renderer/components/Blend.js.map +1 -1
  7. package/lib/commonjs/renderer/components/imageFilters/Morphology.js +1 -1
  8. package/lib/commonjs/renderer/components/imageFilters/Morphology.js.map +1 -1
  9. package/lib/commonjs/renderer/components/imageFilters/Shadow.js +1 -1
  10. package/lib/commonjs/renderer/components/imageFilters/Shadow.js.map +1 -1
  11. package/lib/commonjs/skia/web/Host.js +12 -21
  12. package/lib/commonjs/skia/web/Host.js.map +1 -1
  13. package/lib/commonjs/skia/web/JsiSkCanvas.js +46 -26
  14. package/lib/commonjs/skia/web/JsiSkCanvas.js.map +1 -1
  15. package/lib/commonjs/skia/web/JsiSkColorFilterFactory.js +4 -4
  16. package/lib/commonjs/skia/web/JsiSkColorFilterFactory.js.map +1 -1
  17. package/lib/commonjs/skia/web/JsiSkFont.js +7 -3
  18. package/lib/commonjs/skia/web/JsiSkFont.js.map +1 -1
  19. package/lib/commonjs/skia/web/JsiSkImage.js +4 -2
  20. package/lib/commonjs/skia/web/JsiSkImage.js.map +1 -1
  21. package/lib/commonjs/skia/web/JsiSkImageFactory.js +4 -2
  22. package/lib/commonjs/skia/web/JsiSkImageFactory.js.map +1 -1
  23. package/lib/commonjs/skia/web/JsiSkImageFilterFactory.js +61 -19
  24. package/lib/commonjs/skia/web/JsiSkImageFilterFactory.js.map +1 -1
  25. package/lib/commonjs/skia/web/JsiSkMatrix.js +1 -1
  26. package/lib/commonjs/skia/web/JsiSkMatrix.js.map +1 -1
  27. package/lib/commonjs/skia/web/JsiSkPaint.js +15 -6
  28. package/lib/commonjs/skia/web/JsiSkPaint.js.map +1 -1
  29. package/lib/commonjs/skia/web/JsiSkPath.js +9 -55
  30. package/lib/commonjs/skia/web/JsiSkPath.js.map +1 -1
  31. package/lib/commonjs/skia/web/JsiSkPathEffectFactory.js +7 -3
  32. package/lib/commonjs/skia/web/JsiSkPathEffectFactory.js.map +1 -1
  33. package/lib/commonjs/skia/web/JsiSkPathFactory.js +1 -1
  34. package/lib/commonjs/skia/web/JsiSkPathFactory.js.map +1 -1
  35. package/lib/commonjs/skia/web/JsiSkPicture.js +5 -1
  36. package/lib/commonjs/skia/web/JsiSkPicture.js.map +1 -1
  37. package/lib/commonjs/skia/web/JsiSkPictureRecorder.js +3 -1
  38. package/lib/commonjs/skia/web/JsiSkPictureRecorder.js.map +1 -1
  39. package/lib/commonjs/skia/web/JsiSkPoint.js +9 -1
  40. package/lib/commonjs/skia/web/JsiSkPoint.js.map +1 -1
  41. package/lib/commonjs/skia/web/JsiSkRRect.js +1 -1
  42. package/lib/commonjs/skia/web/JsiSkRRect.js.map +1 -1
  43. package/lib/commonjs/skia/web/JsiSkRSXform.js.map +1 -1
  44. package/lib/commonjs/skia/web/JsiSkRect.js +1 -1
  45. package/lib/commonjs/skia/web/JsiSkRect.js.map +1 -1
  46. package/lib/commonjs/skia/web/JsiSkRuntimeEffect.js +4 -2
  47. package/lib/commonjs/skia/web/JsiSkRuntimeEffect.js.map +1 -1
  48. package/lib/commonjs/skia/web/JsiSkShaderFactory.js +10 -6
  49. package/lib/commonjs/skia/web/JsiSkShaderFactory.js.map +1 -1
  50. package/lib/commonjs/skia/web/JsiSkSurface.js +3 -1
  51. package/lib/commonjs/skia/web/JsiSkSurface.js.map +1 -1
  52. package/lib/commonjs/skia/web/JsiSkTextBlobFactory.js +8 -4
  53. package/lib/commonjs/skia/web/JsiSkTextBlobFactory.js.map +1 -1
  54. package/lib/commonjs/skia/web/JsiSkTypefaceFactory.js +1 -1
  55. package/lib/commonjs/skia/web/JsiSkTypefaceFactory.js.map +1 -1
  56. package/lib/commonjs/skia/web/JsiSkia.js +12 -6
  57. package/lib/commonjs/skia/web/JsiSkia.js.map +1 -1
  58. package/lib/module/renderer/components/Blend.js +21 -5
  59. package/lib/module/renderer/components/Blend.js.map +1 -1
  60. package/lib/module/renderer/components/imageFilters/Morphology.js +1 -1
  61. package/lib/module/renderer/components/imageFilters/Morphology.js.map +1 -1
  62. package/lib/module/renderer/components/imageFilters/Shadow.js +1 -1
  63. package/lib/module/renderer/components/imageFilters/Shadow.js.map +1 -1
  64. package/lib/module/skia/web/Host.js +9 -9
  65. package/lib/module/skia/web/Host.js.map +1 -1
  66. package/lib/module/skia/web/JsiSkCanvas.js +37 -27
  67. package/lib/module/skia/web/JsiSkCanvas.js.map +1 -1
  68. package/lib/module/skia/web/JsiSkColorFilterFactory.js +5 -5
  69. package/lib/module/skia/web/JsiSkColorFilterFactory.js.map +1 -1
  70. package/lib/module/skia/web/JsiSkFont.js +6 -4
  71. package/lib/module/skia/web/JsiSkFont.js.map +1 -1
  72. package/lib/module/skia/web/JsiSkImage.js +4 -3
  73. package/lib/module/skia/web/JsiSkImage.js.map +1 -1
  74. package/lib/module/skia/web/JsiSkImageFactory.js +4 -3
  75. package/lib/module/skia/web/JsiSkImageFactory.js.map +1 -1
  76. package/lib/module/skia/web/JsiSkImageFilterFactory.js +61 -20
  77. package/lib/module/skia/web/JsiSkImageFilterFactory.js.map +1 -1
  78. package/lib/module/skia/web/JsiSkMatrix.js +2 -2
  79. package/lib/module/skia/web/JsiSkMatrix.js.map +1 -1
  80. package/lib/module/skia/web/JsiSkPaint.js +11 -7
  81. package/lib/module/skia/web/JsiSkPaint.js.map +1 -1
  82. package/lib/module/skia/web/JsiSkPath.js +9 -57
  83. package/lib/module/skia/web/JsiSkPath.js.map +1 -1
  84. package/lib/module/skia/web/JsiSkPathEffectFactory.js +6 -4
  85. package/lib/module/skia/web/JsiSkPathEffectFactory.js.map +1 -1
  86. package/lib/module/skia/web/JsiSkPathFactory.js +2 -2
  87. package/lib/module/skia/web/JsiSkPathFactory.js.map +1 -1
  88. package/lib/module/skia/web/JsiSkPicture.js +4 -2
  89. package/lib/module/skia/web/JsiSkPicture.js.map +1 -1
  90. package/lib/module/skia/web/JsiSkPictureRecorder.js +3 -2
  91. package/lib/module/skia/web/JsiSkPictureRecorder.js.map +1 -1
  92. package/lib/module/skia/web/JsiSkPoint.js +10 -2
  93. package/lib/module/skia/web/JsiSkPoint.js.map +1 -1
  94. package/lib/module/skia/web/JsiSkRRect.js +2 -2
  95. package/lib/module/skia/web/JsiSkRRect.js.map +1 -1
  96. package/lib/module/skia/web/JsiSkRSXform.js.map +1 -1
  97. package/lib/module/skia/web/JsiSkRect.js +2 -2
  98. package/lib/module/skia/web/JsiSkRect.js.map +1 -1
  99. package/lib/module/skia/web/JsiSkRuntimeEffect.js +4 -3
  100. package/lib/module/skia/web/JsiSkRuntimeEffect.js.map +1 -1
  101. package/lib/module/skia/web/JsiSkShaderFactory.js +9 -7
  102. package/lib/module/skia/web/JsiSkShaderFactory.js.map +1 -1
  103. package/lib/module/skia/web/JsiSkSurface.js +3 -2
  104. package/lib/module/skia/web/JsiSkSurface.js.map +1 -1
  105. package/lib/module/skia/web/JsiSkTextBlobFactory.js +7 -5
  106. package/lib/module/skia/web/JsiSkTextBlobFactory.js.map +1 -1
  107. package/lib/module/skia/web/JsiSkTypefaceFactory.js +2 -2
  108. package/lib/module/skia/web/JsiSkTypefaceFactory.js.map +1 -1
  109. package/lib/module/skia/web/JsiSkia.js +10 -5
  110. package/lib/module/skia/web/JsiSkia.js.map +1 -1
  111. package/lib/typescript/src/skia/types/Picture/Picture.d.ts +2 -1
  112. package/lib/typescript/src/skia/web/Host.d.ts +5 -7
  113. package/lib/typescript/src/skia/web/JsiSkImageFilterFactory.d.ts +8 -8
  114. package/lib/typescript/src/skia/web/JsiSkPoint.d.ts +3 -2
  115. package/lib/typescript/src/skia/web/JsiSkRRect.d.ts +2 -2
  116. package/lib/typescript/src/skia/web/JsiSkRSXform.d.ts +1 -2
  117. package/lib/typescript/src/skia/web/JsiSkRect.d.ts +2 -2
  118. package/lib/typescript/src/skia/web/JsiSkTextBlobFactory.d.ts +2 -1
  119. package/package.json +2 -2
  120. package/src/renderer/components/Blend.tsx +25 -5
  121. package/src/renderer/components/imageFilters/Morphology.tsx +2 -2
  122. package/src/renderer/components/imageFilters/Shadow.tsx +2 -2
  123. package/src/skia/types/Picture/Picture.ts +2 -1
  124. package/src/skia/web/Host.ts +11 -21
  125. package/src/skia/web/JsiSkCanvas.ts +78 -47
  126. package/src/skia/web/JsiSkColorFilterFactory.ts +15 -5
  127. package/src/skia/web/JsiSkFont.ts +11 -4
  128. package/src/skia/web/JsiSkImage.ts +4 -3
  129. package/src/skia/web/JsiSkImageFactory.ts +6 -3
  130. package/src/skia/web/JsiSkImageFilterFactory.ts +124 -52
  131. package/src/skia/web/JsiSkMatrix.ts +4 -2
  132. package/src/skia/web/JsiSkPaint.ts +11 -7
  133. package/src/skia/web/JsiSkPath.ts +16 -51
  134. package/src/skia/web/JsiSkPathEffectFactory.ts +10 -5
  135. package/src/skia/web/JsiSkPathFactory.ts +3 -3
  136. package/src/skia/web/JsiSkPicture.ts +5 -3
  137. package/src/skia/web/JsiSkPictureRecorder.ts +3 -2
  138. package/src/skia/web/JsiSkPoint.ts +12 -2
  139. package/src/skia/web/JsiSkRRect.ts +5 -2
  140. package/src/skia/web/JsiSkRSXform.ts +1 -1
  141. package/src/skia/web/JsiSkRect.ts +2 -2
  142. package/src/skia/web/JsiSkRuntimeEffect.ts +9 -4
  143. package/src/skia/web/JsiSkShaderFactory.ts +24 -15
  144. package/src/skia/web/JsiSkSurface.ts +7 -2
  145. package/src/skia/web/JsiSkTextBlobFactory.ts +14 -8
  146. package/src/skia/web/JsiSkTypefaceFactory.tsx +4 -2
  147. package/src/skia/web/JsiSkia.ts +17 -5
@@ -1 +1 @@
1
- {"version":3,"sources":["JsiSkFont.ts"],"names":["JsiSkFont","HostObject","constructor","CanvasKit","ref","getTextWidth","text","paint","ids","getGlyphIDs","widths","getGlyphWidths","reduce","a","b","getMetrics","result","ascent","descent","leading","bounds","JsiSkRect","undefined","str","numCodePoints","glyphs","getGlyphIntercepts","positions","top","bottom","map","p","getScaleX","getSize","getSkewX","isEmbolden","getTypeface","tf","JsiSkTypeface","setEdging","edging","setEmbeddedBitmaps","embeddedBitmaps","setHinting","hinting","setLinearMetrics","linearMetrics","setScaleX","sx","setSize","points","setSkewX","setEmbolden","embolden","setSubpixel","subpixel","setTypeface","face"],"mappings":"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","sourcesContent":["import type { CanvasKit, Font } from \"canvaskit-wasm\";\n\nimport type {\n FontEdging,\n FontHinting,\n SkFont,\n SkPaint,\n SkPoint,\n SkTypeface,\n} from \"../types\";\n\nimport { HostObject, toValue, ckEnum } from \"./Host\";\nimport { JsiSkRect } from \"./JsiSkRect\";\nimport { JsiSkTypeface } from \"./JsiSkTypeface\";\n\nexport class JsiSkFont extends HostObject<Font, \"Font\"> implements SkFont {\n constructor(CanvasKit: CanvasKit, ref: Font) {\n super(CanvasKit, ref, \"Font\");\n }\n\n getTextWidth(text: string, paint?: SkPaint | undefined) {\n const ids = this.getGlyphIDs(text);\n const widths = this.getGlyphWidths(ids, paint);\n return widths.reduce((a, b) => a + b, 0);\n }\n\n getMetrics() {\n const result = this.ref.getMetrics();\n return {\n ascent: result.ascent,\n descent: result.descent,\n leading: result.leading,\n bounds: result.bounds\n ? new JsiSkRect(this.CanvasKit, result.bounds)\n : undefined,\n };\n }\n\n getGlyphIDs(str: string, numCodePoints?: number) {\n // TODO: Fix return value in the C++ implementation\n return [...this.ref.getGlyphIDs(str, numCodePoints)];\n }\n\n // TODO: Fix return value in the C++ implementation, it return float32\n getGlyphWidths(glyphs: number[], paint?: SkPaint | null) {\n return [...this.ref.getGlyphWidths(glyphs, paint ? toValue(paint) : null)];\n }\n\n getGlyphIntercepts(\n glyphs: number[],\n positions: SkPoint[],\n top: number,\n bottom: number\n ) {\n return [\n ...this.ref.getGlyphIntercepts(\n glyphs,\n positions.map((p) => toValue(p)),\n top,\n bottom\n ),\n ];\n }\n\n getScaleX() {\n return this.ref.getScaleX();\n }\n\n getSize() {\n return this.ref.getSize();\n }\n\n getSkewX() {\n return this.ref.getSkewX();\n }\n\n isEmbolden() {\n return this.ref.isEmbolden();\n }\n\n getTypeface() {\n const tf = this.ref.getTypeface();\n return tf ? new JsiSkTypeface(this.CanvasKit, tf) : null;\n }\n\n setEdging(edging: FontEdging) {\n this.ref.setEdging(ckEnum(edging));\n }\n\n setEmbeddedBitmaps(embeddedBitmaps: boolean) {\n this.ref.setEmbeddedBitmaps(embeddedBitmaps);\n }\n\n setHinting(hinting: FontHinting) {\n this.ref.setHinting(ckEnum(hinting));\n }\n\n setLinearMetrics(linearMetrics: boolean) {\n this.ref.setLinearMetrics(linearMetrics);\n }\n\n setScaleX(sx: number) {\n this.ref.setScaleX(sx);\n }\n\n setSize(points: number) {\n this.ref.setSize(points);\n }\n\n setSkewX(sx: number) {\n this.ref.setSkewX(sx);\n }\n\n setEmbolden(embolden: boolean) {\n this.ref.setEmbolden(embolden);\n }\n\n setSubpixel(subpixel: boolean) {\n this.ref.setSubpixel(subpixel);\n }\n\n setTypeface(face: SkTypeface | null) {\n this.ref.setTypeface(face ? toValue(face) : null);\n }\n}\n"]}
1
+ {"version":3,"sources":["JsiSkFont.ts"],"names":["JsiSkFont","HostObject","constructor","CanvasKit","ref","getTextWidth","text","paint","ids","getGlyphIDs","widths","getGlyphWidths","reduce","a","b","getMetrics","result","ascent","descent","leading","bounds","JsiSkRect","undefined","str","numCodePoints","glyphs","JsiSkPaint","fromValue","getGlyphIntercepts","positions","top","bottom","map","p","Array","from","JsiSkPoint","flat","getScaleX","getSize","getSkewX","isEmbolden","getTypeface","tf","JsiSkTypeface","setEdging","edging","setEmbeddedBitmaps","embeddedBitmaps","setHinting","hinting","setLinearMetrics","linearMetrics","setScaleX","sx","setSize","points","setSkewX","setEmbolden","embolden","setSubpixel","subpixel","setTypeface","face"],"mappings":"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","sourcesContent":["import type { CanvasKit, Font } from \"canvaskit-wasm\";\n\nimport type {\n FontEdging,\n FontHinting,\n SkFont,\n SkPaint,\n SkPoint,\n SkTypeface,\n} from \"../types\";\n\nimport { HostObject, ckEnum } from \"./Host\";\nimport { JsiSkPaint } from \"./JsiSkPaint\";\nimport { JsiSkPoint } from \"./JsiSkPoint\";\nimport { JsiSkRect } from \"./JsiSkRect\";\nimport { JsiSkTypeface } from \"./JsiSkTypeface\";\n\nexport class JsiSkFont extends HostObject<Font, \"Font\"> implements SkFont {\n constructor(CanvasKit: CanvasKit, ref: Font) {\n super(CanvasKit, ref, \"Font\");\n }\n\n getTextWidth(text: string, paint?: SkPaint | undefined) {\n const ids = this.getGlyphIDs(text);\n const widths = this.getGlyphWidths(ids, paint);\n return widths.reduce((a, b) => a + b, 0);\n }\n\n getMetrics() {\n const result = this.ref.getMetrics();\n return {\n ascent: result.ascent,\n descent: result.descent,\n leading: result.leading,\n bounds: result.bounds\n ? new JsiSkRect(this.CanvasKit, result.bounds)\n : undefined,\n };\n }\n\n getGlyphIDs(str: string, numCodePoints?: number) {\n // TODO: Fix return value in the C++ implementation\n return [...this.ref.getGlyphIDs(str, numCodePoints)];\n }\n\n // TODO: Fix return value in the C++ implementation, it return float32\n getGlyphWidths(glyphs: number[], paint?: SkPaint | null) {\n return [\n ...this.ref.getGlyphWidths(\n glyphs,\n paint ? JsiSkPaint.fromValue(paint) : null\n ),\n ];\n }\n\n getGlyphIntercepts(\n glyphs: number[],\n positions: SkPoint[],\n top: number,\n bottom: number\n ) {\n return [\n ...this.ref.getGlyphIntercepts(\n glyphs,\n positions.map((p) => Array.from(JsiSkPoint.fromValue(p))).flat(),\n top,\n bottom\n ),\n ];\n }\n\n getScaleX() {\n return this.ref.getScaleX();\n }\n\n getSize() {\n return this.ref.getSize();\n }\n\n getSkewX() {\n return this.ref.getSkewX();\n }\n\n isEmbolden() {\n return this.ref.isEmbolden();\n }\n\n getTypeface() {\n const tf = this.ref.getTypeface();\n return tf ? new JsiSkTypeface(this.CanvasKit, tf) : null;\n }\n\n setEdging(edging: FontEdging) {\n this.ref.setEdging(ckEnum(edging));\n }\n\n setEmbeddedBitmaps(embeddedBitmaps: boolean) {\n this.ref.setEmbeddedBitmaps(embeddedBitmaps);\n }\n\n setHinting(hinting: FontHinting) {\n this.ref.setHinting(ckEnum(hinting));\n }\n\n setLinearMetrics(linearMetrics: boolean) {\n this.ref.setLinearMetrics(linearMetrics);\n }\n\n setScaleX(sx: number) {\n this.ref.setScaleX(sx);\n }\n\n setSize(points: number) {\n this.ref.setSize(points);\n }\n\n setSkewX(sx: number) {\n this.ref.setSkewX(sx);\n }\n\n setEmbolden(embolden: boolean) {\n this.ref.setEmbolden(embolden);\n }\n\n setSubpixel(subpixel: boolean) {\n this.ref.setSubpixel(subpixel);\n }\n\n setTypeface(face: SkTypeface | null) {\n this.ref.setTypeface(face ? JsiSkTypeface.fromValue(face) : null);\n }\n}\n"]}
@@ -7,6 +7,8 @@ exports.JsiSkImage = void 0;
7
7
 
8
8
  var _Host = require("./Host");
9
9
 
10
+ var _JsiSkMatrix = require("./JsiSkMatrix");
11
+
10
12
  var _JsiSkShader = require("./JsiSkShader");
11
13
 
12
14
  /*global btoa, atob*/
@@ -24,11 +26,11 @@ class JsiSkImage extends _Host.HostObject {
24
26
  }
25
27
 
26
28
  makeShaderOptions(tx, ty, fm, mm, localMatrix) {
27
- return new _JsiSkShader.JsiSkShader(this.CanvasKit, this.ref.makeShaderOptions((0, _Host.ckEnum)(tx), (0, _Host.ckEnum)(ty), (0, _Host.ckEnum)(fm), (0, _Host.ckEnum)(mm), localMatrix ? (0, _Host.toValue)(localMatrix) : undefined));
29
+ return new _JsiSkShader.JsiSkShader(this.CanvasKit, this.ref.makeShaderOptions((0, _Host.ckEnum)(tx), (0, _Host.ckEnum)(ty), (0, _Host.ckEnum)(fm), (0, _Host.ckEnum)(mm), localMatrix ? _JsiSkMatrix.JsiSkMatrix.fromValue(localMatrix) : undefined));
28
30
  }
29
31
 
30
32
  makeShaderCubic(tx, ty, B, C, localMatrix) {
31
- return new _JsiSkShader.JsiSkShader(this.CanvasKit, this.ref.makeShaderCubic((0, _Host.ckEnum)(tx), (0, _Host.ckEnum)(ty), B, C, localMatrix ? (0, _Host.toValue)(localMatrix) : undefined));
33
+ return new _JsiSkShader.JsiSkShader(this.CanvasKit, this.ref.makeShaderCubic((0, _Host.ckEnum)(tx), (0, _Host.ckEnum)(ty), B, C, localMatrix ? _JsiSkMatrix.JsiSkMatrix.fromValue(localMatrix) : undefined));
32
34
  }
33
35
 
34
36
  encodeToBytes(fmt, quality) {
@@ -1 +1 @@
1
- {"version":3,"sources":["JsiSkImage.ts"],"names":["JsiSkImage","HostObject","constructor","CanvasKit","ref","height","width","makeShaderOptions","tx","ty","fm","mm","localMatrix","JsiSkShader","undefined","makeShaderCubic","B","C","encodeToBytes","fmt","quality","result","Error","encodeToBase64","bytes","btoa","String","fromCharCode"],"mappings":";;;;;;;AAaA;;AACA;;AAdA;AAgBO,MAAMA,UAAN,SAAyBC,gBAAzB,CAAuE;AAC5EC,EAAAA,WAAW,CAACC,SAAD,EAAuBC,GAAvB,EAAmC;AAC5C,UAAMD,SAAN,EAAiBC,GAAjB,EAAsB,OAAtB;AACD;;AAEDC,EAAAA,MAAM,GAAG;AACP,WAAO,KAAKD,GAAL,CAASC,MAAT,EAAP;AACD;;AAEDC,EAAAA,KAAK,GAAG;AACN,WAAO,KAAKF,GAAL,CAASE,KAAT,EAAP;AACD;;AAEDC,EAAAA,iBAAiB,CACfC,EADe,EAEfC,EAFe,EAGfC,EAHe,EAIfC,EAJe,EAKfC,WALe,EAML;AACV,WAAO,IAAIC,wBAAJ,CACL,KAAKV,SADA,EAEL,KAAKC,GAAL,CAASG,iBAAT,CACE,kBAAOC,EAAP,CADF,EAEE,kBAAOC,EAAP,CAFF,EAGE,kBAAOC,EAAP,CAHF,EAIE,kBAAOC,EAAP,CAJF,EAKEC,WAAW,GAAG,mBAAQA,WAAR,CAAH,GAA0BE,SALvC,CAFK,CAAP;AAUD;;AAEDC,EAAAA,eAAe,CACbP,EADa,EAEbC,EAFa,EAGbO,CAHa,EAIbC,CAJa,EAKbL,WALa,EAMH;AACV,WAAO,IAAIC,wBAAJ,CACL,KAAKV,SADA,EAEL,KAAKC,GAAL,CAASW,eAAT,CACE,kBAAOP,EAAP,CADF,EAEE,kBAAOC,EAAP,CAFF,EAGEO,CAHF,EAIEC,CAJF,EAKEL,WAAW,GAAG,mBAAQA,WAAR,CAAH,GAA0BE,SALvC,CAFK,CAAP;AAUD;;AAEDI,EAAAA,aAAa,CAACC,GAAD,EAAoBC,OAApB,EAAsC;AACjD,QAAIC,MAAJ;;AACA,QAAIF,GAAG,IAAIC,OAAX,EAAoB;AAClBC,MAAAA,MAAM,GAAG,KAAKjB,GAAL,CAASc,aAAT,CAAuB,kBAAOC,GAAP,CAAvB,EAAoCC,OAApC,CAAT;AACD,KAFD,MAEO,IAAID,GAAJ,EAAS;AACdE,MAAAA,MAAM,GAAG,KAAKjB,GAAL,CAASc,aAAT,CAAuB,kBAAOC,GAAP,CAAvB,CAAT;AACD,KAFM,MAEA;AACLE,MAAAA,MAAM,GAAG,KAAKjB,GAAL,CAASc,aAAT,EAAT;AACD;;AACD,QAAI,CAACG,MAAL,EAAa;AACX,YAAM,IAAIC,KAAJ,CAAU,sBAAV,CAAN;AACD;;AACD,WAAOD,MAAP;AACD;;AAEDE,EAAAA,cAAc,CAACJ,GAAD,EAAoBC,OAApB,EAAsC;AAClD,UAAMI,KAAK,GAAG,KAAKN,aAAL,CAAmBC,GAAnB,EAAwBC,OAAxB,CAAd;AACA,WAAOK,IAAI,CAACC,MAAM,CAACC,YAAP,CAAoB,GAAGH,KAAvB,CAAD,CAAX;AACD;;AArE2E","sourcesContent":["/*global btoa, atob*/\nimport type { CanvasKit, Image } from \"canvaskit-wasm\";\n\nimport type {\n ImageFormat,\n FilterMode,\n MipmapMode,\n SkImage,\n SkMatrix,\n SkShader,\n TileMode,\n} from \"../types\";\n\nimport { ckEnum, HostObject, toValue } from \"./Host\";\nimport { JsiSkShader } from \"./JsiSkShader\";\n\nexport class JsiSkImage extends HostObject<Image, \"Image\"> implements SkImage {\n constructor(CanvasKit: CanvasKit, ref: Image) {\n super(CanvasKit, ref, \"Image\");\n }\n\n height() {\n return this.ref.height();\n }\n\n width() {\n return this.ref.width();\n }\n\n makeShaderOptions(\n tx: TileMode,\n ty: TileMode,\n fm: FilterMode,\n mm: MipmapMode,\n localMatrix?: SkMatrix\n ): SkShader {\n return new JsiSkShader(\n this.CanvasKit,\n this.ref.makeShaderOptions(\n ckEnum(tx),\n ckEnum(ty),\n ckEnum(fm),\n ckEnum(mm),\n localMatrix ? toValue(localMatrix) : undefined\n )\n );\n }\n\n makeShaderCubic(\n tx: TileMode,\n ty: TileMode,\n B: number,\n C: number,\n localMatrix?: SkMatrix\n ): SkShader {\n return new JsiSkShader(\n this.CanvasKit,\n this.ref.makeShaderCubic(\n ckEnum(tx),\n ckEnum(ty),\n B,\n C,\n localMatrix ? toValue(localMatrix) : undefined\n )\n );\n }\n\n encodeToBytes(fmt?: ImageFormat, quality?: number) {\n let result: Uint8Array | null;\n if (fmt && quality) {\n result = this.ref.encodeToBytes(ckEnum(fmt), quality);\n } else if (fmt) {\n result = this.ref.encodeToBytes(ckEnum(fmt));\n } else {\n result = this.ref.encodeToBytes();\n }\n if (!result) {\n throw new Error(\"encodeToBytes failed\");\n }\n return result;\n }\n\n encodeToBase64(fmt?: ImageFormat, quality?: number) {\n const bytes = this.encodeToBytes(fmt, quality);\n return btoa(String.fromCharCode(...bytes));\n }\n}\n"]}
1
+ {"version":3,"sources":["JsiSkImage.ts"],"names":["JsiSkImage","HostObject","constructor","CanvasKit","ref","height","width","makeShaderOptions","tx","ty","fm","mm","localMatrix","JsiSkShader","JsiSkMatrix","fromValue","undefined","makeShaderCubic","B","C","encodeToBytes","fmt","quality","result","Error","encodeToBase64","bytes","btoa","String","fromCharCode"],"mappings":";;;;;;;AAaA;;AACA;;AACA;;AAfA;AAiBO,MAAMA,UAAN,SAAyBC,gBAAzB,CAAuE;AAC5EC,EAAAA,WAAW,CAACC,SAAD,EAAuBC,GAAvB,EAAmC;AAC5C,UAAMD,SAAN,EAAiBC,GAAjB,EAAsB,OAAtB;AACD;;AAEDC,EAAAA,MAAM,GAAG;AACP,WAAO,KAAKD,GAAL,CAASC,MAAT,EAAP;AACD;;AAEDC,EAAAA,KAAK,GAAG;AACN,WAAO,KAAKF,GAAL,CAASE,KAAT,EAAP;AACD;;AAEDC,EAAAA,iBAAiB,CACfC,EADe,EAEfC,EAFe,EAGfC,EAHe,EAIfC,EAJe,EAKfC,WALe,EAML;AACV,WAAO,IAAIC,wBAAJ,CACL,KAAKV,SADA,EAEL,KAAKC,GAAL,CAASG,iBAAT,CACE,kBAAOC,EAAP,CADF,EAEE,kBAAOC,EAAP,CAFF,EAGE,kBAAOC,EAAP,CAHF,EAIE,kBAAOC,EAAP,CAJF,EAKEC,WAAW,GAAGE,yBAAYC,SAAZ,CAAsBH,WAAtB,CAAH,GAAwCI,SALrD,CAFK,CAAP;AAUD;;AAEDC,EAAAA,eAAe,CACbT,EADa,EAEbC,EAFa,EAGbS,CAHa,EAIbC,CAJa,EAKbP,WALa,EAMH;AACV,WAAO,IAAIC,wBAAJ,CACL,KAAKV,SADA,EAEL,KAAKC,GAAL,CAASa,eAAT,CACE,kBAAOT,EAAP,CADF,EAEE,kBAAOC,EAAP,CAFF,EAGES,CAHF,EAIEC,CAJF,EAKEP,WAAW,GAAGE,yBAAYC,SAAZ,CAAsBH,WAAtB,CAAH,GAAwCI,SALrD,CAFK,CAAP;AAUD;;AAEDI,EAAAA,aAAa,CAACC,GAAD,EAAoBC,OAApB,EAAsC;AACjD,QAAIC,MAAJ;;AACA,QAAIF,GAAG,IAAIC,OAAX,EAAoB;AAClBC,MAAAA,MAAM,GAAG,KAAKnB,GAAL,CAASgB,aAAT,CAAuB,kBAAOC,GAAP,CAAvB,EAAoCC,OAApC,CAAT;AACD,KAFD,MAEO,IAAID,GAAJ,EAAS;AACdE,MAAAA,MAAM,GAAG,KAAKnB,GAAL,CAASgB,aAAT,CAAuB,kBAAOC,GAAP,CAAvB,CAAT;AACD,KAFM,MAEA;AACLE,MAAAA,MAAM,GAAG,KAAKnB,GAAL,CAASgB,aAAT,EAAT;AACD;;AACD,QAAI,CAACG,MAAL,EAAa;AACX,YAAM,IAAIC,KAAJ,CAAU,sBAAV,CAAN;AACD;;AACD,WAAOD,MAAP;AACD;;AAEDE,EAAAA,cAAc,CAACJ,GAAD,EAAoBC,OAApB,EAAsC;AAClD,UAAMI,KAAK,GAAG,KAAKN,aAAL,CAAmBC,GAAnB,EAAwBC,OAAxB,CAAd;AACA,WAAOK,IAAI,CAACC,MAAM,CAACC,YAAP,CAAoB,GAAGH,KAAvB,CAAD,CAAX;AACD;;AArE2E","sourcesContent":["/*global btoa, atob*/\nimport type { CanvasKit, Image } from \"canvaskit-wasm\";\n\nimport type {\n ImageFormat,\n FilterMode,\n MipmapMode,\n SkImage,\n SkMatrix,\n SkShader,\n TileMode,\n} from \"../types\";\n\nimport { ckEnum, HostObject } from \"./Host\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\nimport { JsiSkShader } from \"./JsiSkShader\";\n\nexport class JsiSkImage extends HostObject<Image, \"Image\"> implements SkImage {\n constructor(CanvasKit: CanvasKit, ref: Image) {\n super(CanvasKit, ref, \"Image\");\n }\n\n height() {\n return this.ref.height();\n }\n\n width() {\n return this.ref.width();\n }\n\n makeShaderOptions(\n tx: TileMode,\n ty: TileMode,\n fm: FilterMode,\n mm: MipmapMode,\n localMatrix?: SkMatrix\n ): SkShader {\n return new JsiSkShader(\n this.CanvasKit,\n this.ref.makeShaderOptions(\n ckEnum(tx),\n ckEnum(ty),\n ckEnum(fm),\n ckEnum(mm),\n localMatrix ? JsiSkMatrix.fromValue(localMatrix) : undefined\n )\n );\n }\n\n makeShaderCubic(\n tx: TileMode,\n ty: TileMode,\n B: number,\n C: number,\n localMatrix?: SkMatrix\n ): SkShader {\n return new JsiSkShader(\n this.CanvasKit,\n this.ref.makeShaderCubic(\n ckEnum(tx),\n ckEnum(ty),\n B,\n C,\n localMatrix ? JsiSkMatrix.fromValue(localMatrix) : undefined\n )\n );\n }\n\n encodeToBytes(fmt?: ImageFormat, quality?: number) {\n let result: Uint8Array | null;\n if (fmt && quality) {\n result = this.ref.encodeToBytes(ckEnum(fmt), quality);\n } else if (fmt) {\n result = this.ref.encodeToBytes(ckEnum(fmt));\n } else {\n result = this.ref.encodeToBytes();\n }\n if (!result) {\n throw new Error(\"encodeToBytes failed\");\n }\n return result;\n }\n\n encodeToBase64(fmt?: ImageFormat, quality?: number) {\n const bytes = this.encodeToBytes(fmt, quality);\n return btoa(String.fromCharCode(...bytes));\n }\n}\n"]}
@@ -9,13 +9,15 @@ var _Host = require("./Host");
9
9
 
10
10
  var _JsiSkImage = require("./JsiSkImage");
11
11
 
12
+ var _JsiSkData = require("./JsiSkData");
13
+
12
14
  class JsiSkImageFactory extends _Host.Host {
13
15
  constructor(CanvasKit) {
14
16
  super(CanvasKit);
15
17
  }
16
18
 
17
19
  MakeImageFromEncoded(encoded) {
18
- const image = this.CanvasKit.MakeImageFromEncoded((0, _Host.toValue)(encoded));
20
+ const image = this.CanvasKit.MakeImageFromEncoded(_JsiSkData.JsiSkData.fromValue(encoded));
19
21
 
20
22
  if (image === null) {
21
23
  return null;
@@ -32,7 +34,7 @@ class JsiSkImageFactory extends _Host.Host {
32
34
  colorType: (0, _Host.ckEnum)(info.colorType),
33
35
  height: info.height,
34
36
  width: info.width
35
- }, (0, _Host.toValue)(data), bytesPerRow);
37
+ }, _JsiSkData.JsiSkData.fromValue(data), bytesPerRow);
36
38
 
37
39
  if (image === null) {
38
40
  return null;
@@ -1 +1 @@
1
- {"version":3,"sources":["JsiSkImageFactory.ts"],"names":["JsiSkImageFactory","Host","constructor","CanvasKit","MakeImageFromEncoded","encoded","image","JsiSkImage","MakeImage","info","data","bytesPerRow","alphaType","colorSpace","ColorSpace","SRGB","colorType","height","width"],"mappings":";;;;;;;AAKA;;AACA;;AAEO,MAAMA,iBAAN,SAAgCC,UAAhC,CAA6D;AAClEC,EAAAA,WAAW,CAACC,SAAD,EAAuB;AAChC,UAAMA,SAAN;AACD;;AAEDC,EAAAA,oBAAoB,CAACC,OAAD,EAAkB;AACpC,UAAMC,KAAK,GAAG,KAAKH,SAAL,CAAeC,oBAAf,CAAoC,mBAAQC,OAAR,CAApC,CAAd;;AACA,QAAIC,KAAK,KAAK,IAAd,EAAoB;AAClB,aAAO,IAAP;AACD;;AACD,WAAO,IAAIC,sBAAJ,CAAe,KAAKJ,SAApB,EAA+BG,KAA/B,CAAP;AACD;;AAEDE,EAAAA,SAAS,CAACC,IAAD,EAAkBC,IAAlB,EAAgCC,WAAhC,EAAqD;AAC5D;AACA,UAAML,KAAK,GAAG,KAAKH,SAAL,CAAeK,SAAf,CACZ;AACEI,MAAAA,SAAS,EAAE,kBAAOH,IAAI,CAACG,SAAZ,CADb;AAEEC,MAAAA,UAAU,EAAE,KAAKV,SAAL,CAAeW,UAAf,CAA0BC,IAFxC;AAGEC,MAAAA,SAAS,EAAE,kBAAOP,IAAI,CAACO,SAAZ,CAHb;AAIEC,MAAAA,MAAM,EAAER,IAAI,CAACQ,MAJf;AAKEC,MAAAA,KAAK,EAAET,IAAI,CAACS;AALd,KADY,EAQZ,mBAAQR,IAAR,CARY,EASZC,WATY,CAAd;;AAWA,QAAIL,KAAK,KAAK,IAAd,EAAoB;AAClB,aAAO,IAAP;AACD;;AACD,WAAO,IAAIC,sBAAJ,CAAe,KAAKJ,SAApB,EAA+BG,KAA/B,CAAP;AACD;;AA9BiE","sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type { SkData, ImageInfo } from \"../types\";\nimport type { ImageFactory } from \"../types/Image/ImageFactory\";\n\nimport { Host, toValue, ckEnum } from \"./Host\";\nimport { JsiSkImage } from \"./JsiSkImage\";\n\nexport class JsiSkImageFactory extends Host implements ImageFactory {\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n MakeImageFromEncoded(encoded: SkData) {\n const image = this.CanvasKit.MakeImageFromEncoded(toValue(encoded));\n if (image === null) {\n return null;\n }\n return new JsiSkImage(this.CanvasKit, image);\n }\n\n MakeImage(info: ImageInfo, data: SkData, bytesPerRow: number) {\n // see toSkImageInfo() from canvaskit\n const image = this.CanvasKit.MakeImage(\n {\n alphaType: ckEnum(info.alphaType),\n colorSpace: this.CanvasKit.ColorSpace.SRGB,\n colorType: ckEnum(info.colorType),\n height: info.height,\n width: info.width,\n },\n toValue(data),\n bytesPerRow\n );\n if (image === null) {\n return null;\n }\n return new JsiSkImage(this.CanvasKit, image);\n }\n}\n"]}
1
+ {"version":3,"sources":["JsiSkImageFactory.ts"],"names":["JsiSkImageFactory","Host","constructor","CanvasKit","MakeImageFromEncoded","encoded","image","JsiSkData","fromValue","JsiSkImage","MakeImage","info","data","bytesPerRow","alphaType","colorSpace","ColorSpace","SRGB","colorType","height","width"],"mappings":";;;;;;;AAKA;;AACA;;AACA;;AAEO,MAAMA,iBAAN,SAAgCC,UAAhC,CAA6D;AAClEC,EAAAA,WAAW,CAACC,SAAD,EAAuB;AAChC,UAAMA,SAAN;AACD;;AAEDC,EAAAA,oBAAoB,CAACC,OAAD,EAAkB;AACpC,UAAMC,KAAK,GAAG,KAAKH,SAAL,CAAeC,oBAAf,CACZG,qBAAUC,SAAV,CAAoBH,OAApB,CADY,CAAd;;AAGA,QAAIC,KAAK,KAAK,IAAd,EAAoB;AAClB,aAAO,IAAP;AACD;;AACD,WAAO,IAAIG,sBAAJ,CAAe,KAAKN,SAApB,EAA+BG,KAA/B,CAAP;AACD;;AAEDI,EAAAA,SAAS,CAACC,IAAD,EAAkBC,IAAlB,EAAgCC,WAAhC,EAAqD;AAC5D;AACA,UAAMP,KAAK,GAAG,KAAKH,SAAL,CAAeO,SAAf,CACZ;AACEI,MAAAA,SAAS,EAAE,kBAAOH,IAAI,CAACG,SAAZ,CADb;AAEEC,MAAAA,UAAU,EAAE,KAAKZ,SAAL,CAAea,UAAf,CAA0BC,IAFxC;AAGEC,MAAAA,SAAS,EAAE,kBAAOP,IAAI,CAACO,SAAZ,CAHb;AAIEC,MAAAA,MAAM,EAAER,IAAI,CAACQ,MAJf;AAKEC,MAAAA,KAAK,EAAET,IAAI,CAACS;AALd,KADY,EAQZb,qBAAUC,SAAV,CAAoBI,IAApB,CARY,EASZC,WATY,CAAd;;AAWA,QAAIP,KAAK,KAAK,IAAd,EAAoB;AAClB,aAAO,IAAP;AACD;;AACD,WAAO,IAAIG,sBAAJ,CAAe,KAAKN,SAApB,EAA+BG,KAA/B,CAAP;AACD;;AAhCiE","sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type { SkData, ImageInfo } from \"../types\";\nimport type { ImageFactory } from \"../types/Image/ImageFactory\";\n\nimport { Host, ckEnum } from \"./Host\";\nimport { JsiSkImage } from \"./JsiSkImage\";\nimport { JsiSkData } from \"./JsiSkData\";\n\nexport class JsiSkImageFactory extends Host implements ImageFactory {\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n MakeImageFromEncoded(encoded: SkData) {\n const image = this.CanvasKit.MakeImageFromEncoded(\n JsiSkData.fromValue(encoded)\n );\n if (image === null) {\n return null;\n }\n return new JsiSkImage(this.CanvasKit, image);\n }\n\n MakeImage(info: ImageInfo, data: SkData, bytesPerRow: number) {\n // see toSkImageInfo() from canvaskit\n const image = this.CanvasKit.MakeImage(\n {\n alphaType: ckEnum(info.alphaType),\n colorSpace: this.CanvasKit.ColorSpace.SRGB,\n colorType: ckEnum(info.colorType),\n height: info.height,\n width: info.width,\n },\n JsiSkData.fromValue(data),\n bytesPerRow\n );\n if (image === null) {\n return null;\n }\n return new JsiSkImage(this.CanvasKit, image);\n }\n}\n"]}
@@ -9,53 +9,95 @@ var _Host = require("./Host");
9
9
 
10
10
  var _JsiSkImageFilter = require("./JsiSkImageFilter");
11
11
 
12
+ var _JsiSkColorFilter = require("./JsiSkColorFilter");
13
+
12
14
  class JsiSkImageFilterFactory extends _Host.Host {
13
15
  constructor(CanvasKit) {
14
16
  super(CanvasKit);
15
17
  }
16
18
 
17
- MakeOffset(_dx, _dy, _input) {
18
- throw new _Host.NotImplementedOnRNWeb();
19
+ MakeOffset(dx, dy, input) {
20
+ const inputFilter = input === null ? null : _JsiSkImageFilter.JsiSkImageFilter.fromValue(input);
21
+ const filter = this.CanvasKit.ImageFilter.MakeOffset(dx, dy, inputFilter);
22
+ return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, filter);
19
23
  }
20
24
 
21
- MakeDisplacementMap(_channelX, _channelY, _scale, _in1, _input) {
22
- throw new _Host.NotImplementedOnRNWeb();
25
+ MakeDisplacementMap(channelX, channelY, scale, in1, input) {
26
+ const inputFilter = input === null ? null : _JsiSkImageFilter.JsiSkImageFilter.fromValue(input);
27
+ const filter = this.CanvasKit.ImageFilter.MakeDisplacementMap((0, _Host.ckEnum)(channelX), (0, _Host.ckEnum)(channelY), scale, _JsiSkImageFilter.JsiSkImageFilter.fromValue(in1), inputFilter);
28
+ return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, filter);
23
29
  }
24
30
 
25
- MakeShader(_shader, _input) {
26
- throw new _Host.NotImplementedOnRNWeb();
31
+ MakeShader(shader, _input) {
32
+ const filter = this.CanvasKit.ImageFilter.MakeShader(_JsiSkImageFilter.JsiSkImageFilter.fromValue(shader));
33
+ return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, filter);
27
34
  }
28
35
 
29
36
  MakeBlur(sigmaX, sigmaY, mode, input) {
30
- return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, this.CanvasKit.ImageFilter.MakeBlur(sigmaX, sigmaY, (0, _Host.ckEnum)(mode), input === null ? null : (0, _Host.toValue)(input)));
37
+ return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, this.CanvasKit.ImageFilter.MakeBlur(sigmaX, sigmaY, (0, _Host.ckEnum)(mode), input === null ? null : _JsiSkImageFilter.JsiSkImageFilter.fromValue(input)));
31
38
  }
32
39
 
33
40
  MakeColorFilter(cf, input) {
34
- return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, this.CanvasKit.ImageFilter.MakeColorFilter((0, _Host.toValue)(cf), input === null ? null : (0, _Host.toValue)(input)));
41
+ return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, this.CanvasKit.ImageFilter.MakeColorFilter(_JsiSkColorFilter.JsiSkColorFilter.fromValue(cf), input === null ? null : _JsiSkImageFilter.JsiSkImageFilter.fromValue(input)));
35
42
  }
36
43
 
37
44
  MakeCompose(outer, inner) {
38
- return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, this.CanvasKit.ImageFilter.MakeCompose(outer === null ? null : (0, _Host.toValue)(outer), inner === null ? null : (0, _Host.toValue)(inner)));
45
+ return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, this.CanvasKit.ImageFilter.MakeCompose(outer === null ? null : _JsiSkImageFilter.JsiSkImageFilter.fromValue(outer), inner === null ? null : _JsiSkImageFilter.JsiSkImageFilter.fromValue(inner)));
39
46
  }
40
47
 
41
- MakeDropShadow(_dx, _dy, _sigmaX, _sigmaY, _color, _input, _cropRect) {
42
- throw new _Host.NotImplementedOnRNWeb();
48
+ MakeDropShadow(dx, dy, sigmaX, sigmaY, color, input, cropRect) {
49
+ const inputFilter = input === null ? null : _JsiSkImageFilter.JsiSkImageFilter.fromValue(input);
50
+
51
+ if (cropRect) {
52
+ throw new _Host.NotImplementedOnRNWeb("The cropRect argument is not yet supported on React Native Web.");
53
+ }
54
+
55
+ const filter = this.CanvasKit.ImageFilter.MakeDropShadow(dx, dy, sigmaX, sigmaY, color, inputFilter);
56
+ return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, filter);
43
57
  }
44
58
 
45
- MakeDropShadowOnly(_dx, _dy, _sigmaX, _sigmaY, _color, _input, _cropRect) {
46
- throw new _Host.NotImplementedOnRNWeb();
59
+ MakeDropShadowOnly(dx, dy, sigmaX, sigmaY, color, input, cropRect) {
60
+ const inputFilter = input === null ? null : _JsiSkImageFilter.JsiSkImageFilter.fromValue(input);
61
+
62
+ if (cropRect) {
63
+ throw new _Host.NotImplementedOnRNWeb("The cropRect argument is not yet supported on React Native Web.");
64
+ }
65
+
66
+ const filter = this.CanvasKit.ImageFilter.MakeDropShadowOnly(dx, dy, sigmaX, sigmaY, color, inputFilter);
67
+ return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, filter);
47
68
  }
48
69
 
49
- MakeErode(_rx, _ry, _input, _cropRect) {
50
- throw new _Host.NotImplementedOnRNWeb();
70
+ MakeErode(rx, ry, input, cropRect) {
71
+ const inputFilter = input === null ? null : _JsiSkImageFilter.JsiSkImageFilter.fromValue(input);
72
+
73
+ if (cropRect) {
74
+ throw new _Host.NotImplementedOnRNWeb("The cropRect argument is not yet supported on React Native Web.");
75
+ }
76
+
77
+ const filter = this.CanvasKit.ImageFilter.MakeErode(rx, ry, inputFilter);
78
+ return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, filter);
51
79
  }
52
80
 
53
- MakeDilate(_rx, _ry, _input, _cropRect) {
54
- throw new _Host.NotImplementedOnRNWeb();
81
+ MakeDilate(rx, ry, input, cropRect) {
82
+ const inputFilter = input === null ? null : _JsiSkImageFilter.JsiSkImageFilter.fromValue(input);
83
+
84
+ if (cropRect) {
85
+ throw new _Host.NotImplementedOnRNWeb("The cropRect argument is not yet supported on React Native Web.");
86
+ }
87
+
88
+ const filter = this.CanvasKit.ImageFilter.MakeDilate(rx, ry, inputFilter);
89
+ return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, filter);
55
90
  }
56
91
 
57
- MakeBlend(_mode, _background, _foreground, _cropRect) {
58
- throw new _Host.NotImplementedOnRNWeb();
92
+ MakeBlend(mode, background, foreground, cropRect) {
93
+ const inputFilter = foreground === null ? null : _JsiSkImageFilter.JsiSkImageFilter.fromValue(foreground);
94
+
95
+ if (cropRect) {
96
+ throw new _Host.NotImplementedOnRNWeb("The cropRect argument is not yet supported on React Native Web.");
97
+ }
98
+
99
+ const filter = this.CanvasKit.ImageFilter.MakeBlend((0, _Host.ckEnum)(mode), _JsiSkImageFilter.JsiSkImageFilter.fromValue(background), inputFilter);
100
+ return new _JsiSkImageFilter.JsiSkImageFilter(this.CanvasKit, filter);
59
101
  }
60
102
 
61
103
  MakeRuntimeShader(_builder, _childShaderName, _input) {
@@ -1 +1 @@
1
- {"version":3,"sources":["JsiSkImageFilterFactory.ts"],"names":["JsiSkImageFilterFactory","Host","constructor","CanvasKit","MakeOffset","_dx","_dy","_input","NotImplementedOnRNWeb","MakeDisplacementMap","_channelX","_channelY","_scale","_in1","MakeShader","_shader","MakeBlur","sigmaX","sigmaY","mode","input","JsiSkImageFilter","ImageFilter","MakeColorFilter","cf","MakeCompose","outer","inner","MakeDropShadow","_sigmaX","_sigmaY","_color","_cropRect","MakeDropShadowOnly","MakeErode","_rx","_ry","MakeDilate","MakeBlend","_mode","_background","_foreground","MakeRuntimeShader","_builder","_childShaderName"],"mappings":";;;;;;;AAeA;;AACA;;AAEO,MAAMA,uBAAN,SACGC,UADH,CAGP;AACEC,EAAAA,WAAW,CAACC,SAAD,EAAuB;AAChC,UAAMA,SAAN;AACD;;AAEDC,EAAAA,UAAU,CACRC,GADQ,EAERC,GAFQ,EAGRC,MAHQ,EAIO;AACf,UAAM,IAAIC,2BAAJ,EAAN;AACD;;AAEDC,EAAAA,mBAAmB,CACjBC,SADiB,EAEjBC,SAFiB,EAGjBC,MAHiB,EAIjBC,IAJiB,EAKjBN,MALiB,EAMF;AACf,UAAM,IAAIC,2BAAJ,EAAN;AACD;;AAEDM,EAAAA,UAAU,CAACC,OAAD,EAAoBR,MAApB,EAAiE;AACzE,UAAM,IAAIC,2BAAJ,EAAN;AACD;;AAEDQ,EAAAA,QAAQ,CACNC,MADM,EAENC,MAFM,EAGNC,IAHM,EAINC,KAJM,EAKN;AACA,WAAO,IAAIC,kCAAJ,CACL,KAAKlB,SADA,EAEL,KAAKA,SAAL,CAAemB,WAAf,CAA2BN,QAA3B,CACEC,MADF,EAEEC,MAFF,EAGE,kBAAOC,IAAP,CAHF,EAIEC,KAAK,KAAK,IAAV,GAAiB,IAAjB,GAAwB,mBAAQA,KAAR,CAJ1B,CAFK,CAAP;AASD;;AAEDG,EAAAA,eAAe,CAACC,EAAD,EAAoBJ,KAApB,EAAiD;AAC9D,WAAO,IAAIC,kCAAJ,CACL,KAAKlB,SADA,EAEL,KAAKA,SAAL,CAAemB,WAAf,CAA2BC,eAA3B,CACE,mBAAQC,EAAR,CADF,EAEEJ,KAAK,KAAK,IAAV,GAAiB,IAAjB,GAAwB,mBAAQA,KAAR,CAF1B,CAFK,CAAP;AAOD;;AAEDK,EAAAA,WAAW,CAACC,KAAD,EAA8BC,KAA9B,EAA2D;AACpE,WAAO,IAAIN,kCAAJ,CACL,KAAKlB,SADA,EAEL,KAAKA,SAAL,CAAemB,WAAf,CAA2BG,WAA3B,CACEC,KAAK,KAAK,IAAV,GAAiB,IAAjB,GAAwB,mBAAQA,KAAR,CAD1B,EAEEC,KAAK,KAAK,IAAV,GAAiB,IAAjB,GAAwB,mBAAQA,KAAR,CAF1B,CAFK,CAAP;AAOD;;AAEDC,EAAAA,cAAc,CACZvB,GADY,EAEZC,GAFY,EAGZuB,OAHY,EAIZC,OAJY,EAKZC,MALY,EAMZxB,MANY,EAOZyB,SAPY,EAQG;AACf,UAAM,IAAIxB,2BAAJ,EAAN;AACD;;AAEDyB,EAAAA,kBAAkB,CAChB5B,GADgB,EAEhBC,GAFgB,EAGhBuB,OAHgB,EAIhBC,OAJgB,EAKhBC,MALgB,EAMhBxB,MANgB,EAOhByB,SAPgB,EAQD;AACf,UAAM,IAAIxB,2BAAJ,EAAN;AACD;;AAED0B,EAAAA,SAAS,CACPC,GADO,EAEPC,GAFO,EAGP7B,MAHO,EAIPyB,SAJO,EAKQ;AACf,UAAM,IAAIxB,2BAAJ,EAAN;AACD;;AAED6B,EAAAA,UAAU,CACRF,GADQ,EAERC,GAFQ,EAGR7B,MAHQ,EAIRyB,SAJQ,EAKO;AACf,UAAM,IAAIxB,2BAAJ,EAAN;AACD;;AAED8B,EAAAA,SAAS,CACPC,KADO,EAEPC,WAFO,EAGPC,WAHO,EAIPT,SAJO,EAKQ;AACf,UAAM,IAAIxB,2BAAJ,EAAN;AACD;;AAEDkC,EAAAA,iBAAiB,CACfC,QADe,EAEfC,gBAFe,EAGfrC,MAHe,EAIA;AACf,UAAM,IAAIC,2BAAJ,EAAN;AACD;;AAzHH","sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type {\n ColorChannel,\n ImageFilterFactory,\n SkColor,\n SkColorFilter,\n SkImageFilter,\n BlendMode,\n SkRect,\n SkRuntimeShaderBuilder,\n SkShader,\n TileMode,\n} from \"../types\";\n\nimport { Host, NotImplementedOnRNWeb, ckEnum, toValue } from \"./Host\";\nimport { JsiSkImageFilter } from \"./JsiSkImageFilter\";\n\nexport class JsiSkImageFilterFactory\n extends Host\n implements ImageFilterFactory\n{\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n MakeOffset(\n _dx: number,\n _dy: number,\n _input: SkImageFilter | null\n ): SkImageFilter {\n throw new NotImplementedOnRNWeb();\n }\n\n MakeDisplacementMap(\n _channelX: ColorChannel,\n _channelY: ColorChannel,\n _scale: number,\n _in1: SkImageFilter,\n _input: SkImageFilter | null\n ): SkImageFilter {\n throw new NotImplementedOnRNWeb();\n }\n\n MakeShader(_shader: SkShader, _input: SkImageFilter | null): SkImageFilter {\n throw new NotImplementedOnRNWeb();\n }\n\n MakeBlur(\n sigmaX: number,\n sigmaY: number,\n mode: TileMode,\n input: SkImageFilter | null\n ) {\n return new JsiSkImageFilter(\n this.CanvasKit,\n this.CanvasKit.ImageFilter.MakeBlur(\n sigmaX,\n sigmaY,\n ckEnum(mode),\n input === null ? null : toValue(input)\n )\n );\n }\n\n MakeColorFilter(cf: SkColorFilter, input: SkImageFilter | null) {\n return new JsiSkImageFilter(\n this.CanvasKit,\n this.CanvasKit.ImageFilter.MakeColorFilter(\n toValue(cf),\n input === null ? null : toValue(input)\n )\n );\n }\n\n MakeCompose(outer: SkImageFilter | null, inner: SkImageFilter | null) {\n return new JsiSkImageFilter(\n this.CanvasKit,\n this.CanvasKit.ImageFilter.MakeCompose(\n outer === null ? null : toValue(outer),\n inner === null ? null : toValue(inner)\n )\n );\n }\n\n MakeDropShadow(\n _dx: number,\n _dy: number,\n _sigmaX: number,\n _sigmaY: number,\n _color: SkColor,\n _input: SkImageFilter | null,\n _cropRect?: SkRect\n ): SkImageFilter {\n throw new NotImplementedOnRNWeb();\n }\n\n MakeDropShadowOnly(\n _dx: number,\n _dy: number,\n _sigmaX: number,\n _sigmaY: number,\n _color: SkColor,\n _input: SkImageFilter | null,\n _cropRect?: SkRect\n ): SkImageFilter {\n throw new NotImplementedOnRNWeb();\n }\n\n MakeErode(\n _rx: number,\n _ry: number,\n _input: SkImageFilter | null,\n _cropRect?: SkRect\n ): SkImageFilter {\n throw new NotImplementedOnRNWeb();\n }\n\n MakeDilate(\n _rx: number,\n _ry: number,\n _input: SkImageFilter | null,\n _cropRect?: SkRect\n ): SkImageFilter {\n throw new NotImplementedOnRNWeb();\n }\n\n MakeBlend(\n _mode: BlendMode,\n _background: SkImageFilter,\n _foreground: SkImageFilter | null,\n _cropRect?: SkRect\n ): SkImageFilter {\n throw new NotImplementedOnRNWeb();\n }\n\n MakeRuntimeShader(\n _builder: SkRuntimeShaderBuilder,\n _childShaderName: string | null,\n _input: SkImageFilter | null\n ): SkImageFilter {\n throw new NotImplementedOnRNWeb();\n }\n}\n"]}
1
+ {"version":3,"sources":["JsiSkImageFilterFactory.ts"],"names":["JsiSkImageFilterFactory","Host","constructor","CanvasKit","MakeOffset","dx","dy","input","inputFilter","JsiSkImageFilter","fromValue","filter","ImageFilter","MakeDisplacementMap","channelX","channelY","scale","in1","MakeShader","shader","_input","MakeBlur","sigmaX","sigmaY","mode","MakeColorFilter","cf","JsiSkColorFilter","MakeCompose","outer","inner","MakeDropShadow","color","cropRect","NotImplementedOnRNWeb","MakeDropShadowOnly","MakeErode","rx","ry","MakeDilate","MakeBlend","background","foreground","MakeRuntimeShader","_builder","_childShaderName"],"mappings":"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","sourcesContent":["import type { CanvasKit, ImageFilter } from \"canvaskit-wasm\";\n\nimport type {\n ColorChannel,\n ImageFilterFactory,\n SkColor,\n SkColorFilter,\n SkImageFilter,\n BlendMode,\n SkRect,\n SkRuntimeShaderBuilder,\n SkShader,\n TileMode,\n} from \"../types\";\n\nimport { Host, NotImplementedOnRNWeb, ckEnum } from \"./Host\";\nimport { JsiSkImageFilter } from \"./JsiSkImageFilter\";\nimport { JsiSkColorFilter } from \"./JsiSkColorFilter\";\n\nexport class JsiSkImageFilterFactory\n extends Host\n implements ImageFilterFactory\n{\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n MakeOffset(dx: number, dy: number, input: SkImageFilter | null) {\n const inputFilter =\n input === null ? null : JsiSkImageFilter.fromValue<ImageFilter>(input);\n const filter = this.CanvasKit.ImageFilter.MakeOffset(dx, dy, inputFilter);\n return new JsiSkImageFilter(this.CanvasKit, filter);\n }\n\n MakeDisplacementMap(\n channelX: ColorChannel,\n channelY: ColorChannel,\n scale: number,\n in1: SkImageFilter,\n input: SkImageFilter | null\n ): SkImageFilter {\n const inputFilter =\n input === null ? null : JsiSkImageFilter.fromValue<ImageFilter>(input);\n const filter = this.CanvasKit.ImageFilter.MakeDisplacementMap(\n ckEnum(channelX),\n ckEnum(channelY),\n scale,\n JsiSkImageFilter.fromValue(in1),\n inputFilter\n );\n return new JsiSkImageFilter(this.CanvasKit, filter);\n }\n\n MakeShader(shader: SkShader, _input: SkImageFilter | null): SkImageFilter {\n const filter = this.CanvasKit.ImageFilter.MakeShader(\n JsiSkImageFilter.fromValue(shader)\n );\n return new JsiSkImageFilter(this.CanvasKit, filter);\n }\n\n MakeBlur(\n sigmaX: number,\n sigmaY: number,\n mode: TileMode,\n input: SkImageFilter | null\n ) {\n return new JsiSkImageFilter(\n this.CanvasKit,\n this.CanvasKit.ImageFilter.MakeBlur(\n sigmaX,\n sigmaY,\n ckEnum(mode),\n input === null ? null : JsiSkImageFilter.fromValue(input)\n )\n );\n }\n\n MakeColorFilter(cf: SkColorFilter, input: SkImageFilter | null) {\n return new JsiSkImageFilter(\n this.CanvasKit,\n this.CanvasKit.ImageFilter.MakeColorFilter(\n JsiSkColorFilter.fromValue(cf),\n input === null ? null : JsiSkImageFilter.fromValue(input)\n )\n );\n }\n\n MakeCompose(outer: SkImageFilter | null, inner: SkImageFilter | null) {\n return new JsiSkImageFilter(\n this.CanvasKit,\n this.CanvasKit.ImageFilter.MakeCompose(\n outer === null ? null : JsiSkImageFilter.fromValue(outer),\n inner === null ? null : JsiSkImageFilter.fromValue(inner)\n )\n );\n }\n\n MakeDropShadow(\n dx: number,\n dy: number,\n sigmaX: number,\n sigmaY: number,\n color: SkColor,\n input: SkImageFilter | null,\n cropRect?: SkRect\n ): SkImageFilter {\n const inputFilter =\n input === null ? null : JsiSkImageFilter.fromValue<ImageFilter>(input);\n if (cropRect) {\n throw new NotImplementedOnRNWeb(\n \"The cropRect argument is not yet supported on React Native Web.\"\n );\n }\n const filter = this.CanvasKit.ImageFilter.MakeDropShadow(\n dx,\n dy,\n sigmaX,\n sigmaY,\n color,\n inputFilter\n );\n return new JsiSkImageFilter(this.CanvasKit, filter);\n }\n\n MakeDropShadowOnly(\n dx: number,\n dy: number,\n sigmaX: number,\n sigmaY: number,\n color: SkColor,\n input: SkImageFilter | null,\n cropRect?: SkRect\n ): SkImageFilter {\n const inputFilter =\n input === null ? null : JsiSkImageFilter.fromValue<ImageFilter>(input);\n if (cropRect) {\n throw new NotImplementedOnRNWeb(\n \"The cropRect argument is not yet supported on React Native Web.\"\n );\n }\n const filter = this.CanvasKit.ImageFilter.MakeDropShadowOnly(\n dx,\n dy,\n sigmaX,\n sigmaY,\n color,\n inputFilter\n );\n return new JsiSkImageFilter(this.CanvasKit, filter);\n }\n\n MakeErode(\n rx: number,\n ry: number,\n input: SkImageFilter | null,\n cropRect?: SkRect\n ): SkImageFilter {\n const inputFilter =\n input === null ? null : JsiSkImageFilter.fromValue<ImageFilter>(input);\n if (cropRect) {\n throw new NotImplementedOnRNWeb(\n \"The cropRect argument is not yet supported on React Native Web.\"\n );\n }\n const filter = this.CanvasKit.ImageFilter.MakeErode(rx, ry, inputFilter);\n return new JsiSkImageFilter(this.CanvasKit, filter);\n }\n\n MakeDilate(\n rx: number,\n ry: number,\n input: SkImageFilter | null,\n cropRect?: SkRect\n ): SkImageFilter {\n const inputFilter =\n input === null ? null : JsiSkImageFilter.fromValue<ImageFilter>(input);\n if (cropRect) {\n throw new NotImplementedOnRNWeb(\n \"The cropRect argument is not yet supported on React Native Web.\"\n );\n }\n const filter = this.CanvasKit.ImageFilter.MakeDilate(rx, ry, inputFilter);\n return new JsiSkImageFilter(this.CanvasKit, filter);\n }\n\n MakeBlend(\n mode: BlendMode,\n background: SkImageFilter,\n foreground: SkImageFilter | null,\n cropRect?: SkRect\n ): SkImageFilter {\n const inputFilter =\n foreground === null\n ? null\n : JsiSkImageFilter.fromValue<ImageFilter>(foreground);\n if (cropRect) {\n throw new NotImplementedOnRNWeb(\n \"The cropRect argument is not yet supported on React Native Web.\"\n );\n }\n const filter = this.CanvasKit.ImageFilter.MakeBlend(\n ckEnum(mode),\n JsiSkImageFilter.fromValue(background),\n inputFilter\n );\n return new JsiSkImageFilter(this.CanvasKit, filter);\n }\n\n MakeRuntimeShader(\n _builder: SkRuntimeShaderBuilder,\n _childShaderName: string | null,\n _input: SkImageFilter | null\n ): SkImageFilter {\n throw new NotImplementedOnRNWeb();\n }\n}\n"]}
@@ -13,7 +13,7 @@ class JsiSkMatrix extends _Host.HostObject {
13
13
  }
14
14
 
15
15
  concat(matrix) {
16
- this.ref.set(this.CanvasKit.Matrix.multiply(this.ref, (0, _Host.toValue)(matrix)));
16
+ this.ref.set(this.CanvasKit.Matrix.multiply(this.ref, JsiSkMatrix.fromValue(matrix)));
17
17
  }
18
18
 
19
19
  translate(x, y) {
@@ -1 +1 @@
1
- {"version":3,"sources":["JsiSkMatrix.ts"],"names":["JsiSkMatrix","HostObject","constructor","CanvasKit","ref","concat","matrix","set","Matrix","multiply","translate","x","y","Float32Array","of","translated","scale","scaled","skew","skewed","rotate","value","rotated","identity"],"mappings":";;;;;;;AAIA;;AAEO,MAAMA,WAAN,SACGC,gBADH,CAGP;AACEC,EAAAA,WAAW,CAACC,SAAD,EAAuBC,GAAvB,EAAuC;AAChD,UAAMD,SAAN,EAAiBC,GAAjB,EAAsB,QAAtB;AACD;;AAEDC,EAAAA,MAAM,CAACC,MAAD,EAAmB;AACvB,SAAKF,GAAL,CAASG,GAAT,CAAa,KAAKJ,SAAL,CAAeK,MAAf,CAAsBC,QAAtB,CAA+B,KAAKL,GAApC,EAAyC,mBAAQE,MAAR,CAAzC,CAAb;AACD;;AAEDI,EAAAA,SAAS,CAACC,CAAD,EAAYC,CAAZ,EAAuB;AAC9B,SAAKP,MAAL,CACE,IAAIL,WAAJ,CACE,KAAKG,SADP,EAEEU,YAAY,CAACC,EAAb,CAAgB,GAAG,KAAKX,SAAL,CAAeK,MAAf,CAAsBO,UAAtB,CAAiCJ,CAAjC,EAAoCC,CAApC,CAAnB,CAFF,CADF;AAMD;;AAEDI,EAAAA,KAAK,CAACL,CAAD,EAAYC,CAAZ,EAAwB;AAC3B,SAAKP,MAAL,CACE,IAAIL,WAAJ,CACE,KAAKG,SADP,EAEEU,YAAY,CAACC,EAAb,CAAgB,GAAG,KAAKX,SAAL,CAAeK,MAAf,CAAsBS,MAAtB,CAA6BN,CAA7B,EAAgCC,CAAhC,aAAgCA,CAAhC,cAAgCA,CAAhC,GAAqCD,CAArC,CAAnB,CAFF,CADF;AAMD;;AAEDO,EAAAA,IAAI,CAACP,CAAD,EAAYC,CAAZ,EAAuB;AACzB,SAAKP,MAAL,CACE,IAAIL,WAAJ,CACE,KAAKG,SADP,EAEEU,YAAY,CAACC,EAAb,CAAgB,GAAG,KAAKX,SAAL,CAAeK,MAAf,CAAsBW,MAAtB,CAA6BR,CAA7B,EAAgCC,CAAhC,CAAnB,CAFF,CADF;AAMD;;AAEDQ,EAAAA,MAAM,CAACC,KAAD,EAAgB;AACpB,SAAKhB,MAAL,CACE,IAAIL,WAAJ,CACE,KAAKG,SADP,EAEEU,YAAY,CAACC,EAAb,CAAgB,GAAG,KAAKX,SAAL,CAAeK,MAAf,CAAsBc,OAAtB,CAA8BD,KAA9B,CAAnB,CAFF,CADF;AAMD;;AAEDE,EAAAA,QAAQ,GAAG;AACT,SAAKnB,GAAL,CAASG,GAAT,CAAa,KAAKJ,SAAL,CAAeK,MAAf,CAAsBe,QAAtB,EAAb;AACD;;AA/CH","sourcesContent":["import type { CanvasKit, Matrix3x3 } from \"canvaskit-wasm\";\n\nimport type { SkMatrix } from \"../types\";\n\nimport { HostObject, toValue } from \"./Host\";\n\nexport class JsiSkMatrix\n extends HostObject<Matrix3x3, \"Matrix\">\n implements SkMatrix\n{\n constructor(CanvasKit: CanvasKit, ref: Matrix3x3) {\n super(CanvasKit, ref, \"Matrix\");\n }\n\n concat(matrix: SkMatrix) {\n this.ref.set(this.CanvasKit.Matrix.multiply(this.ref, toValue(matrix)));\n }\n\n translate(x: number, y: number) {\n this.concat(\n new JsiSkMatrix(\n this.CanvasKit,\n Float32Array.of(...this.CanvasKit.Matrix.translated(x, y))\n )\n );\n }\n\n scale(x: number, y?: number) {\n this.concat(\n new JsiSkMatrix(\n this.CanvasKit,\n Float32Array.of(...this.CanvasKit.Matrix.scaled(x, y ?? x))\n )\n );\n }\n\n skew(x: number, y: number) {\n this.concat(\n new JsiSkMatrix(\n this.CanvasKit,\n Float32Array.of(...this.CanvasKit.Matrix.skewed(x, y))\n )\n );\n }\n\n rotate(value: number) {\n this.concat(\n new JsiSkMatrix(\n this.CanvasKit,\n Float32Array.of(...this.CanvasKit.Matrix.rotated(value))\n )\n );\n }\n\n identity() {\n this.ref.set(this.CanvasKit.Matrix.identity());\n }\n}\n"]}
1
+ {"version":3,"sources":["JsiSkMatrix.ts"],"names":["JsiSkMatrix","HostObject","constructor","CanvasKit","ref","concat","matrix","set","Matrix","multiply","fromValue","translate","x","y","Float32Array","of","translated","scale","scaled","skew","skewed","rotate","value","rotated","identity"],"mappings":";;;;;;;AAIA;;AAEO,MAAMA,WAAN,SACGC,gBADH,CAGP;AACEC,EAAAA,WAAW,CAACC,SAAD,EAAuBC,GAAvB,EAAuC;AAChD,UAAMD,SAAN,EAAiBC,GAAjB,EAAsB,QAAtB;AACD;;AAEDC,EAAAA,MAAM,CAACC,MAAD,EAAmB;AACvB,SAAKF,GAAL,CAASG,GAAT,CACE,KAAKJ,SAAL,CAAeK,MAAf,CAAsBC,QAAtB,CAA+B,KAAKL,GAApC,EAAyCJ,WAAW,CAACU,SAAZ,CAAsBJ,MAAtB,CAAzC,CADF;AAGD;;AAEDK,EAAAA,SAAS,CAACC,CAAD,EAAYC,CAAZ,EAAuB;AAC9B,SAAKR,MAAL,CACE,IAAIL,WAAJ,CACE,KAAKG,SADP,EAEEW,YAAY,CAACC,EAAb,CAAgB,GAAG,KAAKZ,SAAL,CAAeK,MAAf,CAAsBQ,UAAtB,CAAiCJ,CAAjC,EAAoCC,CAApC,CAAnB,CAFF,CADF;AAMD;;AAEDI,EAAAA,KAAK,CAACL,CAAD,EAAYC,CAAZ,EAAwB;AAC3B,SAAKR,MAAL,CACE,IAAIL,WAAJ,CACE,KAAKG,SADP,EAEEW,YAAY,CAACC,EAAb,CAAgB,GAAG,KAAKZ,SAAL,CAAeK,MAAf,CAAsBU,MAAtB,CAA6BN,CAA7B,EAAgCC,CAAhC,aAAgCA,CAAhC,cAAgCA,CAAhC,GAAqCD,CAArC,CAAnB,CAFF,CADF;AAMD;;AAEDO,EAAAA,IAAI,CAACP,CAAD,EAAYC,CAAZ,EAAuB;AACzB,SAAKR,MAAL,CACE,IAAIL,WAAJ,CACE,KAAKG,SADP,EAEEW,YAAY,CAACC,EAAb,CAAgB,GAAG,KAAKZ,SAAL,CAAeK,MAAf,CAAsBY,MAAtB,CAA6BR,CAA7B,EAAgCC,CAAhC,CAAnB,CAFF,CADF;AAMD;;AAEDQ,EAAAA,MAAM,CAACC,KAAD,EAAgB;AACpB,SAAKjB,MAAL,CACE,IAAIL,WAAJ,CACE,KAAKG,SADP,EAEEW,YAAY,CAACC,EAAb,CAAgB,GAAG,KAAKZ,SAAL,CAAeK,MAAf,CAAsBe,OAAtB,CAA8BD,KAA9B,CAAnB,CAFF,CADF;AAMD;;AAEDE,EAAAA,QAAQ,GAAG;AACT,SAAKpB,GAAL,CAASG,GAAT,CAAa,KAAKJ,SAAL,CAAeK,MAAf,CAAsBgB,QAAtB,EAAb;AACD;;AAjDH","sourcesContent":["import type { CanvasKit, Matrix3x3 } from \"canvaskit-wasm\";\n\nimport type { SkMatrix } from \"../types\";\n\nimport { HostObject } from \"./Host\";\n\nexport class JsiSkMatrix\n extends HostObject<Matrix3x3, \"Matrix\">\n implements SkMatrix\n{\n constructor(CanvasKit: CanvasKit, ref: Matrix3x3) {\n super(CanvasKit, ref, \"Matrix\");\n }\n\n concat(matrix: SkMatrix) {\n this.ref.set(\n this.CanvasKit.Matrix.multiply(this.ref, JsiSkMatrix.fromValue(matrix))\n );\n }\n\n translate(x: number, y: number) {\n this.concat(\n new JsiSkMatrix(\n this.CanvasKit,\n Float32Array.of(...this.CanvasKit.Matrix.translated(x, y))\n )\n );\n }\n\n scale(x: number, y?: number) {\n this.concat(\n new JsiSkMatrix(\n this.CanvasKit,\n Float32Array.of(...this.CanvasKit.Matrix.scaled(x, y ?? x))\n )\n );\n }\n\n skew(x: number, y: number) {\n this.concat(\n new JsiSkMatrix(\n this.CanvasKit,\n Float32Array.of(...this.CanvasKit.Matrix.skewed(x, y))\n )\n );\n }\n\n rotate(value: number) {\n this.concat(\n new JsiSkMatrix(\n this.CanvasKit,\n Float32Array.of(...this.CanvasKit.Matrix.rotated(value))\n )\n );\n }\n\n identity() {\n this.ref.set(this.CanvasKit.Matrix.identity());\n }\n}\n"]}
@@ -7,9 +7,18 @@ exports.JsiSkPaint = void 0;
7
7
 
8
8
  var _Host = require("./Host");
9
9
 
10
+ var _JsiSkColorFilter = require("./JsiSkColorFilter");
11
+
12
+ var _JsiSkImageFilter = require("./JsiSkImageFilter");
13
+
14
+ var _JsiSkMaskFilter = require("./JsiSkMaskFilter");
15
+
16
+ var _JsiSkPathEffect = require("./JsiSkPathEffect");
17
+
18
+ var _JsiSkShader = require("./JsiSkShader");
19
+
10
20
  class JsiSkPaint extends _Host.HostObject {
11
21
  constructor(CanvasKit, ref) {
12
- ref.setAntiAlias(true);
13
22
  super(CanvasKit, ref, "Paint");
14
23
  }
15
24
 
@@ -54,23 +63,23 @@ class JsiSkPaint extends _Host.HostObject {
54
63
  }
55
64
 
56
65
  setColorFilter(filter) {
57
- this.ref.setColorFilter((0, _Host.toNullableValue)(filter));
66
+ this.ref.setColorFilter(filter ? _JsiSkColorFilter.JsiSkColorFilter.fromValue(filter) : null);
58
67
  }
59
68
 
60
69
  setImageFilter(filter) {
61
- this.ref.setImageFilter((0, _Host.toNullableValue)(filter));
70
+ this.ref.setImageFilter(filter ? _JsiSkImageFilter.JsiSkImageFilter.fromValue(filter) : null);
62
71
  }
63
72
 
64
73
  setMaskFilter(filter) {
65
- this.ref.setMaskFilter((0, _Host.toNullableValue)(filter));
74
+ this.ref.setMaskFilter(filter ? _JsiSkMaskFilter.JsiSkMaskFilter.fromValue(filter) : null);
66
75
  }
67
76
 
68
77
  setPathEffect(effect) {
69
- this.ref.setPathEffect((0, _Host.toNullableValue)(effect));
78
+ this.ref.setPathEffect(effect ? _JsiSkPathEffect.JsiSkPathEffect.fromValue(effect) : null);
70
79
  }
71
80
 
72
81
  setShader(shader) {
73
- this.ref.setShader((0, _Host.toNullableValue)(shader));
82
+ this.ref.setShader(shader ? _JsiSkShader.JsiSkShader.fromValue(shader) : null);
74
83
  }
75
84
 
76
85
  setStrokeCap(cap) {
@@ -1 +1 @@
1
- {"version":3,"sources":["JsiSkPaint.ts"],"names":["JsiSkPaint","HostObject","constructor","CanvasKit","ref","setAntiAlias","copy","getColor","getStrokeCap","value","getStrokeJoin","getStrokeMiter","getStrokeWidth","setAlphaf","alpha","aa","setBlendMode","blendMode","setColor","color","setColorFilter","filter","setImageFilter","setMaskFilter","setPathEffect","effect","setShader","shader","setStrokeCap","cap","setStrokeJoin","join","setStrokeMiter","limit","setStrokeWidth","width","setStyle","style"],"mappings":";;;;;;;AAgBA;;AAEO,MAAMA,UAAN,SAAyBC,gBAAzB,CAAuE;AAC5EC,EAAAA,WAAW,CAACC,SAAD,EAAuBC,GAAvB,EAAmC;AAC5CA,IAAAA,GAAG,CAACC,YAAJ,CAAiB,IAAjB;AACA,UAAMF,SAAN,EAAiBC,GAAjB,EAAsB,OAAtB;AACD;;AAEDE,EAAAA,IAAI,GAAG;AACL,WAAO,IAAIN,UAAJ,CAAe,KAAKG,SAApB,EAA+B,KAAKC,GAAL,CAASE,IAAT,EAA/B,CAAP;AACD;;AAEDC,EAAAA,QAAQ,GAAG;AACT,WAAO,KAAKH,GAAL,CAASG,QAAT,EAAP;AACD;;AAEDC,EAAAA,YAAY,GAAG;AACb,WAAO,KAAKJ,GAAL,CAASI,YAAT,GAAwBC,KAA/B;AACD;;AAEDC,EAAAA,aAAa,GAAG;AACd,WAAO,KAAKN,GAAL,CAASM,aAAT,GAAyBD,KAAhC;AACD;;AAEDE,EAAAA,cAAc,GAAG;AACf,WAAO,KAAKP,GAAL,CAASO,cAAT,EAAP;AACD;;AAEDC,EAAAA,cAAc,GAAG;AACf,WAAO,KAAKR,GAAL,CAASQ,cAAT,EAAP;AACD;;AAEDC,EAAAA,SAAS,CAACC,KAAD,EAAgB;AACvB,SAAKV,GAAL,CAASS,SAAT,CAAmBC,KAAnB;AACD;;AAEDT,EAAAA,YAAY,CAACU,EAAD,EAAc;AACxB,SAAKX,GAAL,CAASC,YAAT,CAAsBU,EAAtB;AACD;;AAEDC,EAAAA,YAAY,CAACC,SAAD,EAAuB;AACjC,SAAKb,GAAL,CAASY,YAAT,CAAsB,kBAAOC,SAAP,CAAtB;AACD;;AAEDC,EAAAA,QAAQ,CAACC,KAAD,EAAiB;AACvB,SAAKf,GAAL,CAASc,QAAT,CAAkBC,KAAlB;AACD;;AAEDC,EAAAA,cAAc,CAACC,MAAD,EAA+B;AAC3C,SAAKjB,GAAL,CAASgB,cAAT,CAAwB,2BAAgBC,MAAhB,CAAxB;AACD;;AAEDC,EAAAA,cAAc,CAACD,MAAD,EAA+B;AAC3C,SAAKjB,GAAL,CAASkB,cAAT,CAAwB,2BAAgBD,MAAhB,CAAxB;AACD;;AAEDE,EAAAA,aAAa,CAACF,MAAD,EAA8B;AACzC,SAAKjB,GAAL,CAASmB,aAAT,CAAuB,2BAAgBF,MAAhB,CAAvB;AACD;;AAEDG,EAAAA,aAAa,CAACC,MAAD,EAA8B;AACzC,SAAKrB,GAAL,CAASoB,aAAT,CAAuB,2BAAgBC,MAAhB,CAAvB;AACD;;AAEDC,EAAAA,SAAS,CAACC,MAAD,EAA0B;AACjC,SAAKvB,GAAL,CAASsB,SAAT,CAAmB,2BAAgBC,MAAhB,CAAnB;AACD;;AAEDC,EAAAA,YAAY,CAACC,GAAD,EAAiB;AAC3B,SAAKzB,GAAL,CAASwB,YAAT,CAAsB,kBAAOC,GAAP,CAAtB;AACD;;AAEDC,EAAAA,aAAa,CAACC,IAAD,EAAmB;AAC9B,SAAK3B,GAAL,CAAS0B,aAAT,CAAuB,kBAAOC,IAAP,CAAvB;AACD;;AAEDC,EAAAA,cAAc,CAACC,KAAD,EAAgB;AAC5B,SAAK7B,GAAL,CAAS4B,cAAT,CAAwBC,KAAxB;AACD;;AAEDC,EAAAA,cAAc,CAACC,KAAD,EAAgB;AAC5B,SAAK/B,GAAL,CAAS8B,cAAT,CAAwBC,KAAxB;AACD;;AAEDC,EAAAA,QAAQ,CAACC,KAAD,EAAoB;AAC1B,SAAKjC,GAAL,CAASgC,QAAT,CAAkB;AAAE3B,MAAAA,KAAK,EAAE4B;AAAT,KAAlB;AACD;;AApF2E","sourcesContent":["import type { CanvasKit, Paint } from \"canvaskit-wasm\";\n\nimport type {\n StrokeJoin,\n BlendMode,\n SkColor,\n SkColorFilter,\n SkImageFilter,\n SkPaint,\n SkShader,\n StrokeCap,\n PaintStyle,\n SkMaskFilter,\n SkPathEffect,\n} from \"../types\";\n\nimport { HostObject, toNullableValue, ckEnum } from \"./Host\";\n\nexport class JsiSkPaint extends HostObject<Paint, \"Paint\"> implements SkPaint {\n constructor(CanvasKit: CanvasKit, ref: Paint) {\n ref.setAntiAlias(true);\n super(CanvasKit, ref, \"Paint\");\n }\n\n copy() {\n return new JsiSkPaint(this.CanvasKit, this.ref.copy());\n }\n\n getColor() {\n return this.ref.getColor();\n }\n\n getStrokeCap() {\n return this.ref.getStrokeCap().value;\n }\n\n getStrokeJoin() {\n return this.ref.getStrokeJoin().value;\n }\n\n getStrokeMiter() {\n return this.ref.getStrokeMiter();\n }\n\n getStrokeWidth() {\n return this.ref.getStrokeWidth();\n }\n\n setAlphaf(alpha: number) {\n this.ref.setAlphaf(alpha);\n }\n\n setAntiAlias(aa: boolean) {\n this.ref.setAntiAlias(aa);\n }\n\n setBlendMode(blendMode: BlendMode) {\n this.ref.setBlendMode(ckEnum(blendMode));\n }\n\n setColor(color: SkColor) {\n this.ref.setColor(color);\n }\n\n setColorFilter(filter: SkColorFilter | null) {\n this.ref.setColorFilter(toNullableValue(filter));\n }\n\n setImageFilter(filter: SkImageFilter | null) {\n this.ref.setImageFilter(toNullableValue(filter));\n }\n\n setMaskFilter(filter: SkMaskFilter | null) {\n this.ref.setMaskFilter(toNullableValue(filter));\n }\n\n setPathEffect(effect: SkPathEffect | null) {\n this.ref.setPathEffect(toNullableValue(effect));\n }\n\n setShader(shader: SkShader | null) {\n this.ref.setShader(toNullableValue(shader));\n }\n\n setStrokeCap(cap: StrokeCap) {\n this.ref.setStrokeCap(ckEnum(cap));\n }\n\n setStrokeJoin(join: StrokeJoin) {\n this.ref.setStrokeJoin(ckEnum(join));\n }\n\n setStrokeMiter(limit: number) {\n this.ref.setStrokeMiter(limit);\n }\n\n setStrokeWidth(width: number) {\n this.ref.setStrokeWidth(width);\n }\n\n setStyle(style: PaintStyle) {\n this.ref.setStyle({ value: style });\n }\n}\n"]}
1
+ {"version":3,"sources":["JsiSkPaint.ts"],"names":["JsiSkPaint","HostObject","constructor","CanvasKit","ref","copy","getColor","getStrokeCap","value","getStrokeJoin","getStrokeMiter","getStrokeWidth","setAlphaf","alpha","setAntiAlias","aa","setBlendMode","blendMode","setColor","color","setColorFilter","filter","JsiSkColorFilter","fromValue","setImageFilter","JsiSkImageFilter","setMaskFilter","JsiSkMaskFilter","setPathEffect","effect","JsiSkPathEffect","setShader","shader","JsiSkShader","setStrokeCap","cap","setStrokeJoin","join","setStrokeMiter","limit","setStrokeWidth","width","setStyle","style"],"mappings":"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","sourcesContent":["import type { CanvasKit, Paint } from \"canvaskit-wasm\";\n\nimport type {\n StrokeJoin,\n BlendMode,\n SkColor,\n SkColorFilter,\n SkImageFilter,\n SkPaint,\n SkShader,\n StrokeCap,\n PaintStyle,\n SkMaskFilter,\n SkPathEffect,\n} from \"../types\";\n\nimport { HostObject, ckEnum } from \"./Host\";\nimport { JsiSkColorFilter } from \"./JsiSkColorFilter\";\nimport { JsiSkImageFilter } from \"./JsiSkImageFilter\";\nimport { JsiSkMaskFilter } from \"./JsiSkMaskFilter\";\nimport { JsiSkPathEffect } from \"./JsiSkPathEffect\";\nimport { JsiSkShader } from \"./JsiSkShader\";\n\nexport class JsiSkPaint extends HostObject<Paint, \"Paint\"> implements SkPaint {\n constructor(CanvasKit: CanvasKit, ref: Paint) {\n super(CanvasKit, ref, \"Paint\");\n }\n\n copy() {\n return new JsiSkPaint(this.CanvasKit, this.ref.copy());\n }\n\n getColor() {\n return this.ref.getColor();\n }\n\n getStrokeCap() {\n return this.ref.getStrokeCap().value;\n }\n\n getStrokeJoin() {\n return this.ref.getStrokeJoin().value;\n }\n\n getStrokeMiter() {\n return this.ref.getStrokeMiter();\n }\n\n getStrokeWidth() {\n return this.ref.getStrokeWidth();\n }\n\n setAlphaf(alpha: number) {\n this.ref.setAlphaf(alpha);\n }\n\n setAntiAlias(aa: boolean) {\n this.ref.setAntiAlias(aa);\n }\n\n setBlendMode(blendMode: BlendMode) {\n this.ref.setBlendMode(ckEnum(blendMode));\n }\n\n setColor(color: SkColor) {\n this.ref.setColor(color);\n }\n\n setColorFilter(filter: SkColorFilter | null) {\n this.ref.setColorFilter(filter ? JsiSkColorFilter.fromValue(filter) : null);\n }\n\n setImageFilter(filter: SkImageFilter | null) {\n this.ref.setImageFilter(filter ? JsiSkImageFilter.fromValue(filter) : null);\n }\n\n setMaskFilter(filter: SkMaskFilter | null) {\n this.ref.setMaskFilter(filter ? JsiSkMaskFilter.fromValue(filter) : null);\n }\n\n setPathEffect(effect: SkPathEffect | null) {\n this.ref.setPathEffect(effect ? JsiSkPathEffect.fromValue(effect) : null);\n }\n\n setShader(shader: SkShader | null) {\n this.ref.setShader(shader ? JsiSkShader.fromValue(shader) : null);\n }\n\n setStrokeCap(cap: StrokeCap) {\n this.ref.setStrokeCap(ckEnum(cap));\n }\n\n setStrokeJoin(join: StrokeJoin) {\n this.ref.setStrokeJoin(ckEnum(join));\n }\n\n setStrokeMiter(limit: number) {\n this.ref.setStrokeMiter(limit);\n }\n\n setStrokeWidth(width: number) {\n this.ref.setStrokeWidth(width);\n }\n\n setStyle(style: PaintStyle) {\n this.ref.setStyle({ value: style });\n }\n}\n"]}
@@ -15,6 +15,8 @@ var _JsiSkRect = require("./JsiSkRect");
15
15
 
16
16
  var _JsiSkRRect = require("./JsiSkRRect");
17
17
 
18
+ var _JsiSkMatrix = require("./JsiSkMatrix");
19
+
18
20
  const CommandCount = {
19
21
  [_types.PathVerb.Move]: 3,
20
22
  [_types.PathVerb.Line]: 3,
@@ -24,22 +26,6 @@ const CommandCount = {
24
26
  [_types.PathVerb.Close]: 1
25
27
  };
26
28
 
27
- const areCmdsInterpolatable = (cmd1, cmd2) => {
28
- if (cmd1.length !== cmd2.length) {
29
- return false;
30
- }
31
-
32
- for (let i = 0; i < cmd1.length; i++) {
33
- if (cmd1[i][0] !== cmd2[i][0]) {
34
- return false;
35
- } else if (cmd1[i][0] === _types.PathVerb.Conic && cmd1[i][5] !== cmd2[i][5]) {
36
- return false;
37
- }
38
- }
39
-
40
- return true;
41
- };
42
-
43
29
  class JsiSkPath extends _Host.HostObject {
44
30
  constructor(CanvasKit, ref) {
45
31
  super(CanvasKit, ref, "Path");
@@ -60,7 +46,7 @@ class JsiSkPath extends _Host.HostObject {
60
46
  }
61
47
 
62
48
  addPoly(points, close) {
63
- this.ref.addPoly(points.map(p => (0, _Host.toValue)(p)), close);
49
+ this.ref.addPoly(points.map(p => Array.from(_JsiSkPoint.JsiSkPoint.fromValue(p))).flat(), close);
64
50
  return this;
65
51
  }
66
52
 
@@ -188,7 +174,7 @@ class JsiSkPath extends _Host.HostObject {
188
174
  }
189
175
 
190
176
  equals(other) {
191
- return this.ref.equals((0, _Host.toValue)(other));
177
+ return this.ref.equals(JsiSkPath.fromValue(other));
192
178
  }
193
179
 
194
180
  getBounds() {
@@ -225,9 +211,7 @@ class JsiSkPath extends _Host.HostObject {
225
211
  }
226
212
 
227
213
  addCircle(x, y, r) {
228
- // We leave the comment below to remind us that this is not implemented in CanvasKit
229
- // throw new NotImplementedOnRNWeb();
230
- this.ref.addOval(this.CanvasKit.LTRBRect(x - r, y - r, x + r, y + r));
214
+ this.ref.addCircle(x, y, r);
231
215
  return this;
232
216
  }
233
217
 
@@ -236,7 +220,7 @@ class JsiSkPath extends _Host.HostObject {
236
220
  }
237
221
 
238
222
  op(path, op) {
239
- return this.ref.op((0, _Host.toValue)(path), (0, _Host.ckEnum)(op));
223
+ return this.ref.op(JsiSkPath.fromValue(path), (0, _Host.ckEnum)(op));
240
224
  }
241
225
 
242
226
  simplify() {
@@ -253,37 +237,11 @@ class JsiSkPath extends _Host.HostObject {
253
237
  }
254
238
 
255
239
  transform(m3) {
256
- this.ref.transform((0, _Host.toValue)(m3));
240
+ this.ref.transform(_JsiSkMatrix.JsiSkMatrix.fromValue(m3));
257
241
  }
258
242
 
259
243
  interpolate(end, t) {
260
- // Do not remove the comment below. We use it to track missing APIs in CanvasKit
261
- // throw new NotImplementedOnRNWeb();
262
- const cmd1 = this.toCmds();
263
- const cmd2 = end.toCmds();
264
-
265
- if (!areCmdsInterpolatable(cmd1, cmd2)) {
266
- return null;
267
- }
268
-
269
- const interpolated = [];
270
- cmd1.forEach((cmd, i) => {
271
- const interpolatedCmd = [cmd[0]];
272
- interpolated.push(interpolatedCmd);
273
- cmd.forEach((c, j) => {
274
- if (j === 0) {
275
- return;
276
- }
277
-
278
- if (interpolatedCmd[0] === _types.PathVerb.Conic && j === 5) {
279
- interpolatedCmd.push(c);
280
- } else {
281
- const c2 = cmd2[i][j];
282
- interpolatedCmd.push(c2 + (c - c2) * t);
283
- }
284
- });
285
- });
286
- const path = this.CanvasKit.Path.MakeFromCmds(interpolated.flat());
244
+ const path = this.CanvasKit.Path.MakeFromPathInterpolation(this.ref, JsiSkPath.fromValue(end), t);
287
245
 
288
246
  if (path === null) {
289
247
  return null;
@@ -293,11 +251,7 @@ class JsiSkPath extends _Host.HostObject {
293
251
  }
294
252
 
295
253
  isInterpolatable(path2) {
296
- // Do not remove the comment below. We use it to track missing APIs in CanvasKit
297
- // throw new NotImplementedOnRNWeb();
298
- const cmd1 = this.toCmds();
299
- const cmd2 = path2.toCmds();
300
- return areCmdsInterpolatable(cmd1, cmd2);
254
+ return this.CanvasKit.Path.CanInterpolate(this.ref, JsiSkPath.fromValue(path2));
301
255
  }
302
256
 
303
257
  toCmds() {
@@ -1 +1 @@
1
- {"version":3,"sources":["JsiSkPath.ts"],"names":["CommandCount","PathVerb","Move","Line","Quad","Conic","Cubic","Close","areCmdsInterpolatable","cmd1","cmd2","length","i","JsiSkPath","HostObject","constructor","CanvasKit","ref","addArc","oval","startAngleInDegrees","sweepAngleInDegrees","JsiSkRect","fromValue","addOval","isCCW","startIndex","countPoints","addPoly","points","close","map","p","moveTo","x","y","lineTo","makeAsWinding","result","offset","dx","dy","rArcTo","rx","ry","xAxisRotateInDegrees","useSmallArc","rConicTo","dx1","dy1","dx2","dy2","w","rCubicTo","cpx1","cpy1","cpx2","cpy2","rMoveTo","rLineTo","rQuadTo","x1","y1","x2","y2","setFillType","fill","setIsVolatile","volatile","stroke","opts","undefined","width","miter_limit","precision","join","cap","reset","rewind","computeTightBounds","arcToOval","forceMoveTo","arcToRotated","arcToTangent","radius","conicTo","contains","copy","cubicTo","dash","on","off","phase","equals","other","getBounds","getFillType","value","quadTo","addRect","rect","addRRect","rrect","JsiSkRRect","getPoint","index","JsiSkPoint","isEmpty","isVolatile","addCircle","r","LTRBRect","getLastPt","op","path","simplify","toSVGString","trim","startT","stopT","isComplement","transform","m3","interpolate","end","t","toCmds","interpolated","forEach","cmd","interpolatedCmd","push","c","j","c2","Path","MakeFromCmds","flat","isInterpolatable","path2","cmds","reduce","acc","current"],"mappings":"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","sourcesContent":["import type { CanvasKit, Path } from \"canvaskit-wasm\";\n\nimport { PathVerb } from \"../types\";\nimport type {\n FillType,\n PathCommand,\n PathOp,\n SkMatrix,\n SkPath,\n SkPoint,\n SkRect,\n SkRRect,\n StrokeOpts,\n} from \"../types\";\n\nimport { ckEnum, HostObject, optEnum, toValue } from \"./Host\";\nimport { JsiSkPoint } from \"./JsiSkPoint\";\nimport { JsiSkRect } from \"./JsiSkRect\";\nimport { JsiSkRRect } from \"./JsiSkRRect\";\n\nconst CommandCount = {\n [PathVerb.Move]: 3,\n [PathVerb.Line]: 3,\n [PathVerb.Quad]: 5,\n [PathVerb.Conic]: 6,\n [PathVerb.Cubic]: 7,\n [PathVerb.Close]: 1,\n};\n\nconst areCmdsInterpolatable = (cmd1: PathCommand[], cmd2: PathCommand[]) => {\n if (cmd1.length !== cmd2.length) {\n return false;\n }\n for (let i = 0; i < cmd1.length; i++) {\n if (cmd1[i][0] !== cmd2[i][0]) {\n return false;\n } else if (cmd1[i][0] === PathVerb.Conic && cmd1[i][5] !== cmd2[i][5]) {\n return false;\n }\n }\n return true;\n};\n\nexport class JsiSkPath extends HostObject<Path, \"Path\"> implements SkPath {\n constructor(CanvasKit: CanvasKit, ref: Path) {\n super(CanvasKit, ref, \"Path\");\n }\n\n addArc(\n oval: SkRect,\n startAngleInDegrees: number,\n sweepAngleInDegrees: number\n ) {\n this.ref.addArc(\n JsiSkRect.fromValue(this.CanvasKit, oval),\n startAngleInDegrees,\n sweepAngleInDegrees\n );\n return this;\n }\n\n addOval(oval: SkRect, isCCW?: boolean, startIndex?: number) {\n this.ref.addOval(\n JsiSkRect.fromValue(this.CanvasKit, oval),\n isCCW,\n startIndex\n );\n return this;\n }\n\n countPoints() {\n return this.ref.countPoints();\n }\n\n addPoly(points: SkPoint[], close: boolean) {\n this.ref.addPoly(\n points.map((p) => toValue(p)),\n close\n );\n return this;\n }\n\n moveTo(x: number, y: number) {\n this.ref.moveTo(x, y);\n return this;\n }\n\n lineTo(x: number, y: number) {\n this.ref.lineTo(x, y);\n return this;\n }\n\n makeAsWinding() {\n const result = this.ref.makeAsWinding();\n return result === null ? result : this;\n }\n\n offset(dx: number, dy: number) {\n this.ref.offset(dx, dy);\n return this;\n }\n\n rArcTo(\n rx: number,\n ry: number,\n xAxisRotateInDegrees: number,\n useSmallArc: boolean,\n isCCW: boolean,\n dx: number,\n dy: number\n ) {\n this.ref.rArcTo(rx, ry, xAxisRotateInDegrees, useSmallArc, isCCW, dx, dy);\n return this;\n }\n\n rConicTo(dx1: number, dy1: number, dx2: number, dy2: number, w: number) {\n this.ref.rConicTo(dx1, dy1, dx2, dy2, w);\n return this;\n }\n\n rCubicTo(\n cpx1: number,\n cpy1: number,\n cpx2: number,\n cpy2: number,\n x: number,\n y: number\n ) {\n this.ref.rCubicTo(cpx1, cpy1, cpx2, cpy2, x, y);\n return this;\n }\n\n rMoveTo(x: number, y: number) {\n this.ref.rMoveTo(x, y);\n return this;\n }\n\n rLineTo(x: number, y: number) {\n this.ref.rLineTo(x, y);\n return this;\n }\n\n rQuadTo(x1: number, y1: number, x2: number, y2: number) {\n this.ref.rQuadTo(x1, y1, x2, y2);\n return this;\n }\n\n setFillType(fill: FillType) {\n this.ref.setFillType(ckEnum(fill));\n }\n\n setIsVolatile(volatile: boolean) {\n this.ref.setIsVolatile(volatile);\n }\n\n stroke(opts?: StrokeOpts) {\n const result = this.ref.stroke(\n opts === undefined\n ? undefined\n : {\n width: opts.width,\n // eslint-disable-next-line camelcase\n miter_limit: opts.width,\n precision: opts.width,\n join: optEnum(opts.join),\n cap: optEnum(opts.cap),\n }\n );\n return result === null ? result : this;\n }\n\n close() {\n this.ref.close();\n }\n\n reset() {\n this.ref.reset();\n }\n\n rewind() {\n this.ref.rewind();\n }\n\n computeTightBounds(): SkRect {\n return new JsiSkRect(this.CanvasKit, this.ref.computeTightBounds());\n }\n\n arcToOval(\n oval: SkRect,\n startAngleInDegrees: number,\n sweepAngleInDegrees: number,\n forceMoveTo: boolean\n ) {\n this.ref.arcToOval(\n JsiSkRect.fromValue(this.CanvasKit, oval),\n startAngleInDegrees,\n sweepAngleInDegrees,\n forceMoveTo\n );\n return this;\n }\n\n arcToRotated(\n rx: number,\n ry: number,\n xAxisRotateInDegrees: number,\n useSmallArc: boolean,\n isCCW: boolean,\n x: number,\n y: number\n ) {\n this.ref.arcToRotated(\n rx,\n ry,\n xAxisRotateInDegrees,\n useSmallArc,\n isCCW,\n x,\n y\n );\n return this;\n }\n\n arcToTangent(x1: number, y1: number, x2: number, y2: number, radius: number) {\n this.ref.arcToTangent(x1, y1, x2, y2, radius);\n return this;\n }\n\n conicTo(x1: number, y1: number, x2: number, y2: number, w: number) {\n this.ref.conicTo(x1, y1, x2, y2, w);\n return this;\n }\n\n contains(x: number, y: number) {\n return this.ref.contains(x, y);\n }\n\n copy() {\n return new JsiSkPath(this.CanvasKit, this.ref.copy());\n }\n\n cubicTo(\n cpx1: number,\n cpy1: number,\n cpx2: number,\n cpy2: number,\n x: number,\n y: number\n ) {\n this.ref.cubicTo(cpx1, cpy1, cpx2, cpy2, x, y);\n return this;\n }\n\n dash(on: number, off: number, phase: number) {\n return this.ref.dash(on, off, phase);\n }\n\n equals(other: SkPath) {\n return this.ref.equals(toValue(other));\n }\n\n getBounds() {\n return new JsiSkRect(this.CanvasKit, this.ref.getBounds());\n }\n\n getFillType() {\n return this.ref.getFillType().value;\n }\n\n quadTo(x1: number, y1: number, x2: number, y2: number) {\n this.ref.quadTo(x1, y1, x2, y2);\n }\n\n addRect(rect: SkRect, isCCW?: boolean) {\n this.ref.addRect(JsiSkRect.fromValue(this.CanvasKit, rect), isCCW);\n }\n\n addRRect(rrect: SkRRect, isCCW?: boolean) {\n this.ref.addRRect(JsiSkRRect.fromValue(this.CanvasKit, rrect), isCCW);\n return this;\n }\n\n getPoint(index: number) {\n return new JsiSkPoint(this.CanvasKit, this.ref.getPoint(index));\n }\n\n isEmpty() {\n return this.ref.isEmpty();\n }\n\n isVolatile() {\n return this.ref.isVolatile();\n }\n\n addCircle(x: number, y: number, r: number) {\n // We leave the comment below to remind us that this is not implemented in CanvasKit\n // throw new NotImplementedOnRNWeb();\n this.ref.addOval(this.CanvasKit.LTRBRect(x - r, y - r, x + r, y + r));\n return this;\n }\n\n getLastPt() {\n return new JsiSkPoint(\n this.CanvasKit,\n this.ref.getPoint(this.ref.countPoints() - 1)\n );\n }\n\n op(path: SkPath, op: PathOp) {\n return this.ref.op(toValue(path), ckEnum(op));\n }\n\n simplify() {\n return this.ref.simplify();\n }\n\n toSVGString() {\n return this.ref.toSVGString();\n }\n\n trim(startT: number, stopT: number, isComplement: boolean) {\n const result = this.ref.trim(startT, stopT, isComplement);\n return result === null ? result : this;\n }\n\n transform(m3: SkMatrix) {\n this.ref.transform(toValue(m3));\n }\n\n interpolate(end: SkPath, t: number) {\n // Do not remove the comment below. We use it to track missing APIs in CanvasKit\n // throw new NotImplementedOnRNWeb();\n const cmd1 = this.toCmds();\n const cmd2 = end.toCmds();\n if (!areCmdsInterpolatable(cmd1, cmd2)) {\n return null;\n }\n const interpolated: PathCommand[] = [];\n cmd1.forEach((cmd, i) => {\n const interpolatedCmd = [cmd[0]];\n interpolated.push(interpolatedCmd);\n cmd.forEach((c, j) => {\n if (j === 0) {\n return;\n }\n if (interpolatedCmd[0] === PathVerb.Conic && j === 5) {\n interpolatedCmd.push(c);\n } else {\n const c2 = cmd2[i][j];\n interpolatedCmd.push(c2 + (c - c2) * t);\n }\n });\n });\n const path = this.CanvasKit.Path.MakeFromCmds(interpolated.flat());\n if (path === null) {\n return null;\n }\n return new JsiSkPath(this.CanvasKit, path);\n }\n\n isInterpolatable(path2: SkPath): boolean {\n // Do not remove the comment below. We use it to track missing APIs in CanvasKit\n // throw new NotImplementedOnRNWeb();\n const cmd1 = this.toCmds();\n const cmd2 = path2.toCmds();\n return areCmdsInterpolatable(cmd1, cmd2);\n }\n\n toCmds() {\n const cmds = this.ref.toCmds();\n const result = cmds.reduce<PathCommand[]>((acc, cmd, i) => {\n if (i === 0) {\n acc.push([]);\n }\n const current = acc[acc.length - 1];\n if (current.length === 0) {\n current.push(cmd);\n const length = CommandCount[current[0] as PathVerb];\n if (current.length === length && i !== cmds.length - 1) {\n acc.push([]);\n }\n } else {\n const length = CommandCount[current[0] as PathVerb];\n if (current.length < length) {\n current.push(cmd);\n }\n if (current.length === length && i !== cmds.length - 1) {\n acc.push([]);\n }\n }\n return acc;\n }, []);\n return result;\n }\n}\n"]}
1
+ {"version":3,"sources":["JsiSkPath.ts"],"names":["CommandCount","PathVerb","Move","Line","Quad","Conic","Cubic","Close","JsiSkPath","HostObject","constructor","CanvasKit","ref","addArc","oval","startAngleInDegrees","sweepAngleInDegrees","JsiSkRect","fromValue","addOval","isCCW","startIndex","countPoints","addPoly","points","close","map","p","Array","from","JsiSkPoint","flat","moveTo","x","y","lineTo","makeAsWinding","result","offset","dx","dy","rArcTo","rx","ry","xAxisRotateInDegrees","useSmallArc","rConicTo","dx1","dy1","dx2","dy2","w","rCubicTo","cpx1","cpy1","cpx2","cpy2","rMoveTo","rLineTo","rQuadTo","x1","y1","x2","y2","setFillType","fill","setIsVolatile","volatile","stroke","opts","undefined","width","miter_limit","precision","join","cap","reset","rewind","computeTightBounds","arcToOval","forceMoveTo","arcToRotated","arcToTangent","radius","conicTo","contains","copy","cubicTo","dash","on","off","phase","equals","other","getBounds","getFillType","value","quadTo","addRect","rect","addRRect","rrect","JsiSkRRect","getPoint","index","isEmpty","isVolatile","addCircle","r","getLastPt","op","path","simplify","toSVGString","trim","startT","stopT","isComplement","transform","m3","JsiSkMatrix","interpolate","end","t","Path","MakeFromPathInterpolation","isInterpolatable","path2","CanInterpolate","toCmds","cmds","reduce","acc","cmd","i","push","current","length"],"mappings":";;;;;;;AAEA;;AAaA;;AACA;;AACA;;AACA;;AACA;;AAEA,MAAMA,YAAY,GAAG;AACnB,GAACC,gBAASC,IAAV,GAAiB,CADE;AAEnB,GAACD,gBAASE,IAAV,GAAiB,CAFE;AAGnB,GAACF,gBAASG,IAAV,GAAiB,CAHE;AAInB,GAACH,gBAASI,KAAV,GAAkB,CAJC;AAKnB,GAACJ,gBAASK,KAAV,GAAkB,CALC;AAMnB,GAACL,gBAASM,KAAV,GAAkB;AANC,CAArB;;AASO,MAAMC,SAAN,SAAwBC,gBAAxB,CAAmE;AACxEC,EAAAA,WAAW,CAACC,SAAD,EAAuBC,GAAvB,EAAkC;AAC3C,UAAMD,SAAN,EAAiBC,GAAjB,EAAsB,MAAtB;AACD;;AAEDC,EAAAA,MAAM,CACJC,IADI,EAEJC,mBAFI,EAGJC,mBAHI,EAIJ;AACA,SAAKJ,GAAL,CAASC,MAAT,CACEI,qBAAUC,SAAV,CAAoB,KAAKP,SAAzB,EAAoCG,IAApC,CADF,EAEEC,mBAFF,EAGEC,mBAHF;AAKA,WAAO,IAAP;AACD;;AAEDG,EAAAA,OAAO,CAACL,IAAD,EAAeM,KAAf,EAAgCC,UAAhC,EAAqD;AAC1D,SAAKT,GAAL,CAASO,OAAT,CACEF,qBAAUC,SAAV,CAAoB,KAAKP,SAAzB,EAAoCG,IAApC,CADF,EAEEM,KAFF,EAGEC,UAHF;AAKA,WAAO,IAAP;AACD;;AAEDC,EAAAA,WAAW,GAAG;AACZ,WAAO,KAAKV,GAAL,CAASU,WAAT,EAAP;AACD;;AAEDC,EAAAA,OAAO,CAACC,MAAD,EAAoBC,KAApB,EAAoC;AACzC,SAAKb,GAAL,CAASW,OAAT,CACEC,MAAM,CAACE,GAAP,CAAYC,CAAD,IAAOC,KAAK,CAACC,IAAN,CAAWC,uBAAWZ,SAAX,CAAqBS,CAArB,CAAX,CAAlB,EAAuDI,IAAvD,EADF,EAEEN,KAFF;AAIA,WAAO,IAAP;AACD;;AAEDO,EAAAA,MAAM,CAACC,CAAD,EAAYC,CAAZ,EAAuB;AAC3B,SAAKtB,GAAL,CAASoB,MAAT,CAAgBC,CAAhB,EAAmBC,CAAnB;AACA,WAAO,IAAP;AACD;;AAEDC,EAAAA,MAAM,CAACF,CAAD,EAAYC,CAAZ,EAAuB;AAC3B,SAAKtB,GAAL,CAASuB,MAAT,CAAgBF,CAAhB,EAAmBC,CAAnB;AACA,WAAO,IAAP;AACD;;AAEDE,EAAAA,aAAa,GAAG;AACd,UAAMC,MAAM,GAAG,KAAKzB,GAAL,CAASwB,aAAT,EAAf;AACA,WAAOC,MAAM,KAAK,IAAX,GAAkBA,MAAlB,GAA2B,IAAlC;AACD;;AAEDC,EAAAA,MAAM,CAACC,EAAD,EAAaC,EAAb,EAAyB;AAC7B,SAAK5B,GAAL,CAAS0B,MAAT,CAAgBC,EAAhB,EAAoBC,EAApB;AACA,WAAO,IAAP;AACD;;AAEDC,EAAAA,MAAM,CACJC,EADI,EAEJC,EAFI,EAGJC,oBAHI,EAIJC,WAJI,EAKJzB,KALI,EAMJmB,EANI,EAOJC,EAPI,EAQJ;AACA,SAAK5B,GAAL,CAAS6B,MAAT,CAAgBC,EAAhB,EAAoBC,EAApB,EAAwBC,oBAAxB,EAA8CC,WAA9C,EAA2DzB,KAA3D,EAAkEmB,EAAlE,EAAsEC,EAAtE;AACA,WAAO,IAAP;AACD;;AAEDM,EAAAA,QAAQ,CAACC,GAAD,EAAcC,GAAd,EAA2BC,GAA3B,EAAwCC,GAAxC,EAAqDC,CAArD,EAAgE;AACtE,SAAKvC,GAAL,CAASkC,QAAT,CAAkBC,GAAlB,EAAuBC,GAAvB,EAA4BC,GAA5B,EAAiCC,GAAjC,EAAsCC,CAAtC;AACA,WAAO,IAAP;AACD;;AAEDC,EAAAA,QAAQ,CACNC,IADM,EAENC,IAFM,EAGNC,IAHM,EAINC,IAJM,EAKNvB,CALM,EAMNC,CANM,EAON;AACA,SAAKtB,GAAL,CAASwC,QAAT,CAAkBC,IAAlB,EAAwBC,IAAxB,EAA8BC,IAA9B,EAAoCC,IAApC,EAA0CvB,CAA1C,EAA6CC,CAA7C;AACA,WAAO,IAAP;AACD;;AAEDuB,EAAAA,OAAO,CAACxB,CAAD,EAAYC,CAAZ,EAAuB;AAC5B,SAAKtB,GAAL,CAAS6C,OAAT,CAAiBxB,CAAjB,EAAoBC,CAApB;AACA,WAAO,IAAP;AACD;;AAEDwB,EAAAA,OAAO,CAACzB,CAAD,EAAYC,CAAZ,EAAuB;AAC5B,SAAKtB,GAAL,CAAS8C,OAAT,CAAiBzB,CAAjB,EAAoBC,CAApB;AACA,WAAO,IAAP;AACD;;AAEDyB,EAAAA,OAAO,CAACC,EAAD,EAAaC,EAAb,EAAyBC,EAAzB,EAAqCC,EAArC,EAAiD;AACtD,SAAKnD,GAAL,CAAS+C,OAAT,CAAiBC,EAAjB,EAAqBC,EAArB,EAAyBC,EAAzB,EAA6BC,EAA7B;AACA,WAAO,IAAP;AACD;;AAEDC,EAAAA,WAAW,CAACC,IAAD,EAAiB;AAC1B,SAAKrD,GAAL,CAASoD,WAAT,CAAqB,kBAAOC,IAAP,CAArB;AACD;;AAEDC,EAAAA,aAAa,CAACC,QAAD,EAAoB;AAC/B,SAAKvD,GAAL,CAASsD,aAAT,CAAuBC,QAAvB;AACD;;AAEDC,EAAAA,MAAM,CAACC,IAAD,EAAoB;AACxB,UAAMhC,MAAM,GAAG,KAAKzB,GAAL,CAASwD,MAAT,CACbC,IAAI,KAAKC,SAAT,GACIA,SADJ,GAEI;AACEC,MAAAA,KAAK,EAAEF,IAAI,CAACE,KADd;AAEE;AACAC,MAAAA,WAAW,EAAEH,IAAI,CAACE,KAHpB;AAIEE,MAAAA,SAAS,EAAEJ,IAAI,CAACE,KAJlB;AAKEG,MAAAA,IAAI,EAAE,mBAAQL,IAAI,CAACK,IAAb,CALR;AAMEC,MAAAA,GAAG,EAAE,mBAAQN,IAAI,CAACM,GAAb;AANP,KAHS,CAAf;AAYA,WAAOtC,MAAM,KAAK,IAAX,GAAkBA,MAAlB,GAA2B,IAAlC;AACD;;AAEDZ,EAAAA,KAAK,GAAG;AACN,SAAKb,GAAL,CAASa,KAAT;AACD;;AAEDmD,EAAAA,KAAK,GAAG;AACN,SAAKhE,GAAL,CAASgE,KAAT;AACD;;AAEDC,EAAAA,MAAM,GAAG;AACP,SAAKjE,GAAL,CAASiE,MAAT;AACD;;AAEDC,EAAAA,kBAAkB,GAAW;AAC3B,WAAO,IAAI7D,oBAAJ,CAAc,KAAKN,SAAnB,EAA8B,KAAKC,GAAL,CAASkE,kBAAT,EAA9B,CAAP;AACD;;AAEDC,EAAAA,SAAS,CACPjE,IADO,EAEPC,mBAFO,EAGPC,mBAHO,EAIPgE,WAJO,EAKP;AACA,SAAKpE,GAAL,CAASmE,SAAT,CACE9D,qBAAUC,SAAV,CAAoB,KAAKP,SAAzB,EAAoCG,IAApC,CADF,EAEEC,mBAFF,EAGEC,mBAHF,EAIEgE,WAJF;AAMA,WAAO,IAAP;AACD;;AAEDC,EAAAA,YAAY,CACVvC,EADU,EAEVC,EAFU,EAGVC,oBAHU,EAIVC,WAJU,EAKVzB,KALU,EAMVa,CANU,EAOVC,CAPU,EAQV;AACA,SAAKtB,GAAL,CAASqE,YAAT,CACEvC,EADF,EAEEC,EAFF,EAGEC,oBAHF,EAIEC,WAJF,EAKEzB,KALF,EAMEa,CANF,EAOEC,CAPF;AASA,WAAO,IAAP;AACD;;AAEDgD,EAAAA,YAAY,CAACtB,EAAD,EAAaC,EAAb,EAAyBC,EAAzB,EAAqCC,EAArC,EAAiDoB,MAAjD,EAAiE;AAC3E,SAAKvE,GAAL,CAASsE,YAAT,CAAsBtB,EAAtB,EAA0BC,EAA1B,EAA8BC,EAA9B,EAAkCC,EAAlC,EAAsCoB,MAAtC;AACA,WAAO,IAAP;AACD;;AAEDC,EAAAA,OAAO,CAACxB,EAAD,EAAaC,EAAb,EAAyBC,EAAzB,EAAqCC,EAArC,EAAiDZ,CAAjD,EAA4D;AACjE,SAAKvC,GAAL,CAASwE,OAAT,CAAiBxB,EAAjB,EAAqBC,EAArB,EAAyBC,EAAzB,EAA6BC,EAA7B,EAAiCZ,CAAjC;AACA,WAAO,IAAP;AACD;;AAEDkC,EAAAA,QAAQ,CAACpD,CAAD,EAAYC,CAAZ,EAAuB;AAC7B,WAAO,KAAKtB,GAAL,CAASyE,QAAT,CAAkBpD,CAAlB,EAAqBC,CAArB,CAAP;AACD;;AAEDoD,EAAAA,IAAI,GAAG;AACL,WAAO,IAAI9E,SAAJ,CAAc,KAAKG,SAAnB,EAA8B,KAAKC,GAAL,CAAS0E,IAAT,EAA9B,CAAP;AACD;;AAEDC,EAAAA,OAAO,CACLlC,IADK,EAELC,IAFK,EAGLC,IAHK,EAILC,IAJK,EAKLvB,CALK,EAMLC,CANK,EAOL;AACA,SAAKtB,GAAL,CAAS2E,OAAT,CAAiBlC,IAAjB,EAAuBC,IAAvB,EAA6BC,IAA7B,EAAmCC,IAAnC,EAAyCvB,CAAzC,EAA4CC,CAA5C;AACA,WAAO,IAAP;AACD;;AAEDsD,EAAAA,IAAI,CAACC,EAAD,EAAaC,GAAb,EAA0BC,KAA1B,EAAyC;AAC3C,WAAO,KAAK/E,GAAL,CAAS4E,IAAT,CAAcC,EAAd,EAAkBC,GAAlB,EAAuBC,KAAvB,CAAP;AACD;;AAEDC,EAAAA,MAAM,CAACC,KAAD,EAAgB;AACpB,WAAO,KAAKjF,GAAL,CAASgF,MAAT,CAAgBpF,SAAS,CAACU,SAAV,CAAoB2E,KAApB,CAAhB,CAAP;AACD;;AAEDC,EAAAA,SAAS,GAAG;AACV,WAAO,IAAI7E,oBAAJ,CAAc,KAAKN,SAAnB,EAA8B,KAAKC,GAAL,CAASkF,SAAT,EAA9B,CAAP;AACD;;AAEDC,EAAAA,WAAW,GAAG;AACZ,WAAO,KAAKnF,GAAL,CAASmF,WAAT,GAAuBC,KAA9B;AACD;;AAEDC,EAAAA,MAAM,CAACrC,EAAD,EAAaC,EAAb,EAAyBC,EAAzB,EAAqCC,EAArC,EAAiD;AACrD,SAAKnD,GAAL,CAASqF,MAAT,CAAgBrC,EAAhB,EAAoBC,EAApB,EAAwBC,EAAxB,EAA4BC,EAA5B;AACD;;AAEDmC,EAAAA,OAAO,CAACC,IAAD,EAAe/E,KAAf,EAAgC;AACrC,SAAKR,GAAL,CAASsF,OAAT,CAAiBjF,qBAAUC,SAAV,CAAoB,KAAKP,SAAzB,EAAoCwF,IAApC,CAAjB,EAA4D/E,KAA5D;AACD;;AAEDgF,EAAAA,QAAQ,CAACC,KAAD,EAAiBjF,KAAjB,EAAkC;AACxC,SAAKR,GAAL,CAASwF,QAAT,CAAkBE,uBAAWpF,SAAX,CAAqB,KAAKP,SAA1B,EAAqC0F,KAArC,CAAlB,EAA+DjF,KAA/D;AACA,WAAO,IAAP;AACD;;AAEDmF,EAAAA,QAAQ,CAACC,KAAD,EAAgB;AACtB,WAAO,IAAI1E,sBAAJ,CAAe,KAAKnB,SAApB,EAA+B,KAAKC,GAAL,CAAS2F,QAAT,CAAkBC,KAAlB,CAA/B,CAAP;AACD;;AAEDC,EAAAA,OAAO,GAAG;AACR,WAAO,KAAK7F,GAAL,CAAS6F,OAAT,EAAP;AACD;;AAEDC,EAAAA,UAAU,GAAG;AACX,WAAO,KAAK9F,GAAL,CAAS8F,UAAT,EAAP;AACD;;AAEDC,EAAAA,SAAS,CAAC1E,CAAD,EAAYC,CAAZ,EAAuB0E,CAAvB,EAAkC;AACzC,SAAKhG,GAAL,CAAS+F,SAAT,CAAmB1E,CAAnB,EAAsBC,CAAtB,EAAyB0E,CAAzB;AACA,WAAO,IAAP;AACD;;AAEDC,EAAAA,SAAS,GAAG;AACV,WAAO,IAAI/E,sBAAJ,CACL,KAAKnB,SADA,EAEL,KAAKC,GAAL,CAAS2F,QAAT,CAAkB,KAAK3F,GAAL,CAASU,WAAT,KAAyB,CAA3C,CAFK,CAAP;AAID;;AAEDwF,EAAAA,EAAE,CAACC,IAAD,EAAeD,EAAf,EAA2B;AAC3B,WAAO,KAAKlG,GAAL,CAASkG,EAAT,CAAYtG,SAAS,CAACU,SAAV,CAAoB6F,IAApB,CAAZ,EAAuC,kBAAOD,EAAP,CAAvC,CAAP;AACD;;AAEDE,EAAAA,QAAQ,GAAG;AACT,WAAO,KAAKpG,GAAL,CAASoG,QAAT,EAAP;AACD;;AAEDC,EAAAA,WAAW,GAAG;AACZ,WAAO,KAAKrG,GAAL,CAASqG,WAAT,EAAP;AACD;;AAEDC,EAAAA,IAAI,CAACC,MAAD,EAAiBC,KAAjB,EAAgCC,YAAhC,EAAuD;AACzD,UAAMhF,MAAM,GAAG,KAAKzB,GAAL,CAASsG,IAAT,CAAcC,MAAd,EAAsBC,KAAtB,EAA6BC,YAA7B,CAAf;AACA,WAAOhF,MAAM,KAAK,IAAX,GAAkBA,MAAlB,GAA2B,IAAlC;AACD;;AAEDiF,EAAAA,SAAS,CAACC,EAAD,EAAe;AACtB,SAAK3G,GAAL,CAAS0G,SAAT,CAAmBE,yBAAYtG,SAAZ,CAAsBqG,EAAtB,CAAnB;AACD;;AAEDE,EAAAA,WAAW,CAACC,GAAD,EAAcC,CAAd,EAAyB;AAClC,UAAMZ,IAAI,GAAG,KAAKpG,SAAL,CAAeiH,IAAf,CAAoBC,yBAApB,CACX,KAAKjH,GADM,EAEXJ,SAAS,CAACU,SAAV,CAAoBwG,GAApB,CAFW,EAGXC,CAHW,CAAb;;AAKA,QAAIZ,IAAI,KAAK,IAAb,EAAmB;AACjB,aAAO,IAAP;AACD;;AACD,WAAO,IAAIvG,SAAJ,CAAc,KAAKG,SAAnB,EAA8BoG,IAA9B,CAAP;AACD;;AAEDe,EAAAA,gBAAgB,CAACC,KAAD,EAAyB;AACvC,WAAO,KAAKpH,SAAL,CAAeiH,IAAf,CAAoBI,cAApB,CACL,KAAKpH,GADA,EAELJ,SAAS,CAACU,SAAV,CAAoB6G,KAApB,CAFK,CAAP;AAID;;AAEDE,EAAAA,MAAM,GAAG;AACP,UAAMC,IAAI,GAAG,KAAKtH,GAAL,CAASqH,MAAT,EAAb;AACA,UAAM5F,MAAM,GAAG6F,IAAI,CAACC,MAAL,CAA2B,CAACC,GAAD,EAAMC,GAAN,EAAWC,CAAX,KAAiB;AACzD,UAAIA,CAAC,KAAK,CAAV,EAAa;AACXF,QAAAA,GAAG,CAACG,IAAJ,CAAS,EAAT;AACD;;AACD,YAAMC,OAAO,GAAGJ,GAAG,CAACA,GAAG,CAACK,MAAJ,GAAa,CAAd,CAAnB;;AACA,UAAID,OAAO,CAACC,MAAR,KAAmB,CAAvB,EAA0B;AACxBD,QAAAA,OAAO,CAACD,IAAR,CAAaF,GAAb;AACA,cAAMI,MAAM,GAAGzI,YAAY,CAACwI,OAAO,CAAC,CAAD,CAAR,CAA3B;;AACA,YAAIA,OAAO,CAACC,MAAR,KAAmBA,MAAnB,IAA6BH,CAAC,KAAKJ,IAAI,CAACO,MAAL,GAAc,CAArD,EAAwD;AACtDL,UAAAA,GAAG,CAACG,IAAJ,CAAS,EAAT;AACD;AACF,OAND,MAMO;AACL,cAAME,MAAM,GAAGzI,YAAY,CAACwI,OAAO,CAAC,CAAD,CAAR,CAA3B;;AACA,YAAIA,OAAO,CAACC,MAAR,GAAiBA,MAArB,EAA6B;AAC3BD,UAAAA,OAAO,CAACD,IAAR,CAAaF,GAAb;AACD;;AACD,YAAIG,OAAO,CAACC,MAAR,KAAmBA,MAAnB,IAA6BH,CAAC,KAAKJ,IAAI,CAACO,MAAL,GAAc,CAArD,EAAwD;AACtDL,UAAAA,GAAG,CAACG,IAAJ,CAAS,EAAT;AACD;AACF;;AACD,aAAOH,GAAP;AACD,KArBc,EAqBZ,EArBY,CAAf;AAsBA,WAAO/F,MAAP;AACD;;AAxUuE","sourcesContent":["import type { CanvasKit, Path } from \"canvaskit-wasm\";\n\nimport { PathVerb } from \"../types\";\nimport type {\n FillType,\n PathCommand,\n PathOp,\n SkMatrix,\n SkPath,\n SkPoint,\n SkRect,\n SkRRect,\n StrokeOpts,\n} from \"../types\";\n\nimport { ckEnum, HostObject, optEnum } from \"./Host\";\nimport { JsiSkPoint } from \"./JsiSkPoint\";\nimport { JsiSkRect } from \"./JsiSkRect\";\nimport { JsiSkRRect } from \"./JsiSkRRect\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\n\nconst CommandCount = {\n [PathVerb.Move]: 3,\n [PathVerb.Line]: 3,\n [PathVerb.Quad]: 5,\n [PathVerb.Conic]: 6,\n [PathVerb.Cubic]: 7,\n [PathVerb.Close]: 1,\n};\n\nexport class JsiSkPath extends HostObject<Path, \"Path\"> implements SkPath {\n constructor(CanvasKit: CanvasKit, ref: Path) {\n super(CanvasKit, ref, \"Path\");\n }\n\n addArc(\n oval: SkRect,\n startAngleInDegrees: number,\n sweepAngleInDegrees: number\n ) {\n this.ref.addArc(\n JsiSkRect.fromValue(this.CanvasKit, oval),\n startAngleInDegrees,\n sweepAngleInDegrees\n );\n return this;\n }\n\n addOval(oval: SkRect, isCCW?: boolean, startIndex?: number) {\n this.ref.addOval(\n JsiSkRect.fromValue(this.CanvasKit, oval),\n isCCW,\n startIndex\n );\n return this;\n }\n\n countPoints() {\n return this.ref.countPoints();\n }\n\n addPoly(points: SkPoint[], close: boolean) {\n this.ref.addPoly(\n points.map((p) => Array.from(JsiSkPoint.fromValue(p))).flat(),\n close\n );\n return this;\n }\n\n moveTo(x: number, y: number) {\n this.ref.moveTo(x, y);\n return this;\n }\n\n lineTo(x: number, y: number) {\n this.ref.lineTo(x, y);\n return this;\n }\n\n makeAsWinding() {\n const result = this.ref.makeAsWinding();\n return result === null ? result : this;\n }\n\n offset(dx: number, dy: number) {\n this.ref.offset(dx, dy);\n return this;\n }\n\n rArcTo(\n rx: number,\n ry: number,\n xAxisRotateInDegrees: number,\n useSmallArc: boolean,\n isCCW: boolean,\n dx: number,\n dy: number\n ) {\n this.ref.rArcTo(rx, ry, xAxisRotateInDegrees, useSmallArc, isCCW, dx, dy);\n return this;\n }\n\n rConicTo(dx1: number, dy1: number, dx2: number, dy2: number, w: number) {\n this.ref.rConicTo(dx1, dy1, dx2, dy2, w);\n return this;\n }\n\n rCubicTo(\n cpx1: number,\n cpy1: number,\n cpx2: number,\n cpy2: number,\n x: number,\n y: number\n ) {\n this.ref.rCubicTo(cpx1, cpy1, cpx2, cpy2, x, y);\n return this;\n }\n\n rMoveTo(x: number, y: number) {\n this.ref.rMoveTo(x, y);\n return this;\n }\n\n rLineTo(x: number, y: number) {\n this.ref.rLineTo(x, y);\n return this;\n }\n\n rQuadTo(x1: number, y1: number, x2: number, y2: number) {\n this.ref.rQuadTo(x1, y1, x2, y2);\n return this;\n }\n\n setFillType(fill: FillType) {\n this.ref.setFillType(ckEnum(fill));\n }\n\n setIsVolatile(volatile: boolean) {\n this.ref.setIsVolatile(volatile);\n }\n\n stroke(opts?: StrokeOpts) {\n const result = this.ref.stroke(\n opts === undefined\n ? undefined\n : {\n width: opts.width,\n // eslint-disable-next-line camelcase\n miter_limit: opts.width,\n precision: opts.width,\n join: optEnum(opts.join),\n cap: optEnum(opts.cap),\n }\n );\n return result === null ? result : this;\n }\n\n close() {\n this.ref.close();\n }\n\n reset() {\n this.ref.reset();\n }\n\n rewind() {\n this.ref.rewind();\n }\n\n computeTightBounds(): SkRect {\n return new JsiSkRect(this.CanvasKit, this.ref.computeTightBounds());\n }\n\n arcToOval(\n oval: SkRect,\n startAngleInDegrees: number,\n sweepAngleInDegrees: number,\n forceMoveTo: boolean\n ) {\n this.ref.arcToOval(\n JsiSkRect.fromValue(this.CanvasKit, oval),\n startAngleInDegrees,\n sweepAngleInDegrees,\n forceMoveTo\n );\n return this;\n }\n\n arcToRotated(\n rx: number,\n ry: number,\n xAxisRotateInDegrees: number,\n useSmallArc: boolean,\n isCCW: boolean,\n x: number,\n y: number\n ) {\n this.ref.arcToRotated(\n rx,\n ry,\n xAxisRotateInDegrees,\n useSmallArc,\n isCCW,\n x,\n y\n );\n return this;\n }\n\n arcToTangent(x1: number, y1: number, x2: number, y2: number, radius: number) {\n this.ref.arcToTangent(x1, y1, x2, y2, radius);\n return this;\n }\n\n conicTo(x1: number, y1: number, x2: number, y2: number, w: number) {\n this.ref.conicTo(x1, y1, x2, y2, w);\n return this;\n }\n\n contains(x: number, y: number) {\n return this.ref.contains(x, y);\n }\n\n copy() {\n return new JsiSkPath(this.CanvasKit, this.ref.copy());\n }\n\n cubicTo(\n cpx1: number,\n cpy1: number,\n cpx2: number,\n cpy2: number,\n x: number,\n y: number\n ) {\n this.ref.cubicTo(cpx1, cpy1, cpx2, cpy2, x, y);\n return this;\n }\n\n dash(on: number, off: number, phase: number) {\n return this.ref.dash(on, off, phase);\n }\n\n equals(other: SkPath) {\n return this.ref.equals(JsiSkPath.fromValue(other));\n }\n\n getBounds() {\n return new JsiSkRect(this.CanvasKit, this.ref.getBounds());\n }\n\n getFillType() {\n return this.ref.getFillType().value;\n }\n\n quadTo(x1: number, y1: number, x2: number, y2: number) {\n this.ref.quadTo(x1, y1, x2, y2);\n }\n\n addRect(rect: SkRect, isCCW?: boolean) {\n this.ref.addRect(JsiSkRect.fromValue(this.CanvasKit, rect), isCCW);\n }\n\n addRRect(rrect: SkRRect, isCCW?: boolean) {\n this.ref.addRRect(JsiSkRRect.fromValue(this.CanvasKit, rrect), isCCW);\n return this;\n }\n\n getPoint(index: number) {\n return new JsiSkPoint(this.CanvasKit, this.ref.getPoint(index));\n }\n\n isEmpty() {\n return this.ref.isEmpty();\n }\n\n isVolatile() {\n return this.ref.isVolatile();\n }\n\n addCircle(x: number, y: number, r: number) {\n this.ref.addCircle(x, y, r);\n return this;\n }\n\n getLastPt() {\n return new JsiSkPoint(\n this.CanvasKit,\n this.ref.getPoint(this.ref.countPoints() - 1)\n );\n }\n\n op(path: SkPath, op: PathOp) {\n return this.ref.op(JsiSkPath.fromValue(path), ckEnum(op));\n }\n\n simplify() {\n return this.ref.simplify();\n }\n\n toSVGString() {\n return this.ref.toSVGString();\n }\n\n trim(startT: number, stopT: number, isComplement: boolean) {\n const result = this.ref.trim(startT, stopT, isComplement);\n return result === null ? result : this;\n }\n\n transform(m3: SkMatrix) {\n this.ref.transform(JsiSkMatrix.fromValue(m3));\n }\n\n interpolate(end: SkPath, t: number) {\n const path = this.CanvasKit.Path.MakeFromPathInterpolation(\n this.ref,\n JsiSkPath.fromValue(end),\n t\n );\n if (path === null) {\n return null;\n }\n return new JsiSkPath(this.CanvasKit, path);\n }\n\n isInterpolatable(path2: SkPath): boolean {\n return this.CanvasKit.Path.CanInterpolate(\n this.ref,\n JsiSkPath.fromValue(path2)\n );\n }\n\n toCmds() {\n const cmds = this.ref.toCmds();\n const result = cmds.reduce<PathCommand[]>((acc, cmd, i) => {\n if (i === 0) {\n acc.push([]);\n }\n const current = acc[acc.length - 1];\n if (current.length === 0) {\n current.push(cmd);\n const length = CommandCount[current[0] as PathVerb];\n if (current.length === length && i !== cmds.length - 1) {\n acc.push([]);\n }\n } else {\n const length = CommandCount[current[0] as PathVerb];\n if (current.length < length) {\n current.push(cmd);\n }\n if (current.length === length && i !== cmds.length - 1) {\n acc.push([]);\n }\n }\n return acc;\n }, []);\n return result;\n }\n}\n"]}