@shopify/react-native-skia 1.12.1 → 1.12.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/apple/MetalContext.h +129 -0
  2. package/apple/MetalContext.mm +34 -0
  3. package/apple/MetalWindowContext.h +39 -0
  4. package/apple/MetalWindowContext.mm +64 -0
  5. package/apple/RNSkApplePlatformContext.h +79 -0
  6. package/apple/RNSkApplePlatformContext.mm +303 -0
  7. package/apple/RNSkAppleVideo.h +51 -0
  8. package/apple/RNSkAppleVideo.mm +137 -0
  9. package/apple/RNSkAppleView.h +37 -0
  10. package/apple/RNSkAppleView.mm +35 -0
  11. package/apple/RNSkMetalCanvasProvider.h +38 -0
  12. package/apple/RNSkMetalCanvasProvider.mm +108 -0
  13. package/apple/RNSkiaModule.h +20 -0
  14. package/apple/RNSkiaModule.mm +55 -0
  15. package/apple/SkiaCVPixelBufferUtils.h +119 -0
  16. package/apple/SkiaCVPixelBufferUtils.mm +344 -0
  17. package/apple/SkiaManager.h +25 -0
  18. package/apple/SkiaManager.mm +62 -0
  19. package/apple/SkiaPictureView.h +7 -0
  20. package/apple/SkiaPictureView.mm +66 -0
  21. package/apple/SkiaPictureViewManager.h +8 -0
  22. package/apple/SkiaPictureViewManager.mm +55 -0
  23. package/apple/SkiaUIView.h +45 -0
  24. package/apple/SkiaUIView.mm +172 -0
  25. package/apple/ViewScreenshotService.h +25 -0
  26. package/apple/ViewScreenshotService.mm +89 -0
  27. package/cpp/api/JsiSkShaderFactory.h +43 -8
  28. package/cpp/api/JsiSkVertices.h +14 -3
  29. package/lib/commonjs/__tests__/setup.d.ts +18 -0
  30. package/lib/commonjs/headless/index.d.ts +1 -0
  31. package/lib/commonjs/headless/index.js +12 -0
  32. package/lib/commonjs/headless/index.js.map +1 -1
  33. package/lib/commonjs/skia/web/Host.d.ts +3 -3
  34. package/lib/commonjs/skia/web/Host.js +16 -4
  35. package/lib/commonjs/skia/web/Host.js.map +1 -1
  36. package/lib/commonjs/skia/web/JsiSkCanvas.js +15 -15
  37. package/lib/commonjs/skia/web/JsiSkCanvas.js.map +1 -1
  38. package/lib/commonjs/skia/web/JsiSkColorFilterFactory.js +1 -1
  39. package/lib/commonjs/skia/web/JsiSkColorFilterFactory.js.map +1 -1
  40. package/lib/commonjs/skia/web/JsiSkFont.js +2 -2
  41. package/lib/commonjs/skia/web/JsiSkFont.js.map +1 -1
  42. package/lib/commonjs/skia/web/JsiSkImage.js +6 -6
  43. package/lib/commonjs/skia/web/JsiSkImage.js.map +1 -1
  44. package/lib/commonjs/skia/web/JsiSkImageFactory.js +2 -2
  45. package/lib/commonjs/skia/web/JsiSkImageFactory.js.map +1 -1
  46. package/lib/commonjs/skia/web/JsiSkImageFilterFactory.js +3 -3
  47. package/lib/commonjs/skia/web/JsiSkImageFilterFactory.js.map +1 -1
  48. package/lib/commonjs/skia/web/JsiSkMaskFilterFactory.js +1 -1
  49. package/lib/commonjs/skia/web/JsiSkMaskFilterFactory.js.map +1 -1
  50. package/lib/commonjs/skia/web/JsiSkPaint.js +3 -3
  51. package/lib/commonjs/skia/web/JsiSkPaint.js.map +1 -1
  52. package/lib/commonjs/skia/web/JsiSkPath.js +4 -4
  53. package/lib/commonjs/skia/web/JsiSkPath.js.map +1 -1
  54. package/lib/commonjs/skia/web/JsiSkPathEffectFactory.js +1 -1
  55. package/lib/commonjs/skia/web/JsiSkPathEffectFactory.js.map +1 -1
  56. package/lib/commonjs/skia/web/JsiSkPathFactory.js +1 -1
  57. package/lib/commonjs/skia/web/JsiSkPathFactory.js.map +1 -1
  58. package/lib/commonjs/skia/web/JsiSkPicture.js +1 -1
  59. package/lib/commonjs/skia/web/JsiSkPicture.js.map +1 -1
  60. package/lib/commonjs/skia/web/JsiSkShaderFactory.js +5 -5
  61. package/lib/commonjs/skia/web/JsiSkShaderFactory.js.map +1 -1
  62. package/lib/commonjs/skia/web/JsiSkVerticesFactory.js +1 -1
  63. package/lib/commonjs/skia/web/JsiSkVerticesFactory.js.map +1 -1
  64. package/lib/module/__tests__/setup.d.ts +18 -0
  65. package/lib/module/headless/index.d.ts +1 -0
  66. package/lib/module/headless/index.js +1 -0
  67. package/lib/module/headless/index.js.map +1 -1
  68. package/lib/module/skia/web/Host.d.ts +3 -3
  69. package/lib/module/skia/web/Host.js +16 -4
  70. package/lib/module/skia/web/Host.js.map +1 -1
  71. package/lib/module/skia/web/JsiSkCanvas.js +15 -15
  72. package/lib/module/skia/web/JsiSkCanvas.js.map +1 -1
  73. package/lib/module/skia/web/JsiSkColorFilterFactory.js +1 -1
  74. package/lib/module/skia/web/JsiSkColorFilterFactory.js.map +1 -1
  75. package/lib/module/skia/web/JsiSkFont.js +2 -2
  76. package/lib/module/skia/web/JsiSkFont.js.map +1 -1
  77. package/lib/module/skia/web/JsiSkImage.js +6 -6
  78. package/lib/module/skia/web/JsiSkImage.js.map +1 -1
  79. package/lib/module/skia/web/JsiSkImageFactory.js +2 -2
  80. package/lib/module/skia/web/JsiSkImageFactory.js.map +1 -1
  81. package/lib/module/skia/web/JsiSkImageFilterFactory.js +3 -3
  82. package/lib/module/skia/web/JsiSkImageFilterFactory.js.map +1 -1
  83. package/lib/module/skia/web/JsiSkMaskFilterFactory.js +1 -1
  84. package/lib/module/skia/web/JsiSkMaskFilterFactory.js.map +1 -1
  85. package/lib/module/skia/web/JsiSkPaint.js +3 -3
  86. package/lib/module/skia/web/JsiSkPaint.js.map +1 -1
  87. package/lib/module/skia/web/JsiSkPath.js +4 -4
  88. package/lib/module/skia/web/JsiSkPath.js.map +1 -1
  89. package/lib/module/skia/web/JsiSkPathEffectFactory.js +1 -1
  90. package/lib/module/skia/web/JsiSkPathEffectFactory.js.map +1 -1
  91. package/lib/module/skia/web/JsiSkPathFactory.js +1 -1
  92. package/lib/module/skia/web/JsiSkPathFactory.js.map +1 -1
  93. package/lib/module/skia/web/JsiSkPicture.js +1 -1
  94. package/lib/module/skia/web/JsiSkPicture.js.map +1 -1
  95. package/lib/module/skia/web/JsiSkShaderFactory.js +5 -5
  96. package/lib/module/skia/web/JsiSkShaderFactory.js.map +1 -1
  97. package/lib/module/skia/web/JsiSkVerticesFactory.js +1 -1
  98. package/lib/module/skia/web/JsiSkVerticesFactory.js.map +1 -1
  99. package/lib/typescript/lib/commonjs/mock/index.d.ts +1 -1
  100. package/lib/typescript/lib/commonjs/skia/index.d.ts +1 -1
  101. package/lib/typescript/lib/commonjs/skia/web/Host.d.ts +2 -2
  102. package/lib/typescript/lib/module/headless/index.d.ts +1 -0
  103. package/lib/typescript/lib/module/mock/index.d.ts +1 -1
  104. package/lib/typescript/lib/module/skia/Skia.d.ts +1 -1
  105. package/lib/typescript/lib/module/skia/web/Host.d.ts +2 -2
  106. package/lib/typescript/src/__tests__/setup.d.ts +18 -0
  107. package/lib/typescript/src/headless/index.d.ts +1 -0
  108. package/lib/typescript/src/skia/web/Host.d.ts +3 -3
  109. package/package.json +4 -4
  110. package/src/__tests__/setup.ts +67 -1
  111. package/src/headless/index.ts +2 -1
  112. package/src/renderer/__tests__/e2e/Matrix4.spec.tsx +1 -2
  113. package/src/renderer/__tests__/e2e/Paths.spec.tsx +13 -11
  114. package/src/skia/__tests__/Enums.spec.ts +24 -2
  115. package/src/skia/__tests__/Path.spec.ts +2 -2
  116. package/src/skia/web/Host.ts +24 -7
  117. package/src/skia/web/JsiSkCanvas.ts +17 -17
  118. package/src/skia/web/JsiSkColorFilterFactory.ts +1 -1
  119. package/src/skia/web/JsiSkFont.ts +2 -2
  120. package/src/skia/web/JsiSkImage.ts +14 -10
  121. package/src/skia/web/JsiSkImageFactory.ts +2 -2
  122. package/src/skia/web/JsiSkImageFilterFactory.ts +4 -4
  123. package/src/skia/web/JsiSkMaskFilterFactory.ts +1 -1
  124. package/src/skia/web/JsiSkPaint.ts +3 -3
  125. package/src/skia/web/JsiSkPath.ts +4 -4
  126. package/src/skia/web/JsiSkPathEffectFactory.ts +1 -1
  127. package/src/skia/web/JsiSkPathFactory.ts +1 -1
  128. package/src/skia/web/JsiSkPicture.ts +3 -3
  129. package/src/skia/web/JsiSkShaderFactory.ts +5 -5
  130. package/src/skia/web/JsiSkVerticesFactory.ts +1 -1
  131. package/lib/commonjs/skia/types/Image/ColorType.web.d.ts +0 -19
  132. package/lib/commonjs/skia/types/Image/ColorType.web.js +0 -43
  133. package/lib/commonjs/skia/types/Image/ColorType.web.js.map +0 -1
  134. package/lib/module/skia/types/Image/ColorType.web.d.ts +0 -19
  135. package/lib/module/skia/types/Image/ColorType.web.js +0 -37
  136. package/lib/module/skia/types/Image/ColorType.web.js.map +0 -1
  137. package/lib/typescript/lib/commonjs/skia/types/Image/ColorType.web.d.ts +0 -2
  138. package/lib/typescript/lib/module/skia/types/Image/ColorType.web.d.ts +0 -1
  139. package/lib/typescript/src/skia/types/Image/ColorType.web.d.ts +0 -19
  140. package/src/skia/types/Image/ColorType.web.ts +0 -19
@@ -1 +1 @@
1
- {"version":3,"names":["PathVerb","getEnum","HostObject","optEnum","JsiSkPoint","JsiSkRect","JsiSkRRect","JsiSkMatrix","CommandCount","Move","Line","Quad","Conic","Cubic","Close","pinT","t","Math","min","max","JsiSkPath","constructor","CanvasKit","ref","_defineProperty","delete","addPath","src","matrix","extend","args","fromValue","addArc","oval","startAngleInDegrees","sweepAngleInDegrees","addOval","isCCW","startIndex","countPoints","addPoly","points","close","map","p","Array","from","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","FillType","setIsVolatile","volatile","stroke","opts","undefined","width","miter_limit","precision","join","StrokeJoin","cap","StrokeCap","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","getPoint","index","isEmpty","isVolatile","addCircle","r","getLastPt","op","path","PathOp","simplify","toSVGString","trim","start","stop","isComplement","startT","stopT","transform","m","length","Error","interpolate","end","output","Path","MakeFromPathInterpolation","isInterpolatable","path2","CanInterpolate","toCmds","cmds","reduce","acc","cmd","i","push","current"],"sources":["JsiSkPath.ts"],"sourcesContent":["import type { CanvasKit, Matrix3x3, 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 InputRRect,\n StrokeOpts,\n InputMatrix,\n} from \"../types\";\n\nimport { getEnum, 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\nconst pinT = (t: number) => Math.min(Math.max(t, 0), 1);\n\nexport class JsiSkPath extends HostObject<Path, \"Path\"> implements SkPath {\n constructor(CanvasKit: CanvasKit, ref: Path) {\n super(CanvasKit, ref, \"Path\");\n }\n\n dispose = () => {\n this.ref.delete();\n };\n\n addPath(src: SkPath, matrix?: SkMatrix, extend = false) {\n const args = [\n JsiSkPath.fromValue(src),\n ...(matrix ? JsiSkMatrix.fromValue<Float32Array>(matrix) : []),\n extend,\n ];\n this.ref.addPath(...args);\n return this;\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(getEnum(this.CanvasKit.FillType, fill));\n return this;\n }\n\n setIsVolatile(volatile: boolean) {\n this.ref.setIsVolatile(volatile);\n return this;\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(this.CanvasKit.StrokeJoin, opts.join),\n cap: optEnum(this.CanvasKit.StrokeCap, opts.cap),\n }\n );\n return result === null ? result : this;\n }\n\n close() {\n this.ref.close();\n return this;\n }\n\n reset() {\n this.ref.reset();\n return this;\n }\n\n rewind() {\n this.ref.rewind();\n return this;\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 return this;\n }\n\n addRect(rect: SkRect, isCCW?: boolean) {\n this.ref.addRect(JsiSkRect.fromValue(this.CanvasKit, rect), isCCW);\n return this;\n }\n\n addRRect(rrect: InputRRect, 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(\n JsiSkPath.fromValue(path),\n getEnum(this.CanvasKit.PathOp, op)\n );\n }\n\n simplify() {\n return this.ref.simplify();\n }\n\n toSVGString() {\n return this.ref.toSVGString();\n }\n\n trim(start: number, stop: number, isComplement: boolean) {\n const startT = pinT(start);\n const stopT = pinT(stop);\n if (startT === 0 && stopT === 1) {\n return this;\n }\n const result = this.ref.trim(startT, stopT, isComplement);\n return result === null ? result : this;\n }\n\n transform(m: InputMatrix) {\n let matrix =\n m instanceof JsiSkMatrix\n ? Array.from(JsiSkMatrix.fromValue<Matrix3x3>(m))\n : (m as Exclude<InputMatrix, SkMatrix>);\n if (matrix.length === 16) {\n matrix = [\n matrix[0],\n matrix[1],\n matrix[3],\n matrix[4],\n matrix[5],\n matrix[7],\n matrix[12],\n matrix[13],\n matrix[15],\n ];\n } else if (matrix.length !== 9) {\n throw new Error(`Invalid matrix length: ${matrix.length}`);\n }\n this.ref.transform(matrix);\n return this;\n }\n\n interpolate(end: SkPath, t: number, output?: SkPath) {\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 if (output) {\n (output as JsiSkPath).ref = path;\n return output;\n } else {\n return new JsiSkPath(this.CanvasKit, path);\n }\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"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PathVerb","getEnum","HostObject","optEnum","JsiSkPoint","JsiSkRect","JsiSkRRect","JsiSkMatrix","CommandCount","Move","Line","Quad","Conic","Cubic","Close","pinT","t","Math","min","max","JsiSkPath","constructor","CanvasKit","ref","_defineProperty","delete","addPath","src","matrix","extend","args","fromValue","addArc","oval","startAngleInDegrees","sweepAngleInDegrees","addOval","isCCW","startIndex","countPoints","addPoly","points","close","map","p","Array","from","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","getPoint","index","isEmpty","isVolatile","addCircle","r","getLastPt","op","path","simplify","toSVGString","trim","start","stop","isComplement","startT","stopT","transform","m","length","Error","interpolate","end","output","Path","MakeFromPathInterpolation","isInterpolatable","path2","CanInterpolate","toCmds","cmds","reduce","acc","cmd","i","push","current"],"sources":["JsiSkPath.ts"],"sourcesContent":["import type { CanvasKit, Matrix3x3, 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 InputRRect,\n StrokeOpts,\n InputMatrix,\n} from \"../types\";\n\nimport { getEnum, 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\nconst pinT = (t: number) => Math.min(Math.max(t, 0), 1);\n\nexport class JsiSkPath extends HostObject<Path, \"Path\"> implements SkPath {\n constructor(CanvasKit: CanvasKit, ref: Path) {\n super(CanvasKit, ref, \"Path\");\n }\n\n dispose = () => {\n this.ref.delete();\n };\n\n addPath(src: SkPath, matrix?: SkMatrix, extend = false) {\n const args = [\n JsiSkPath.fromValue(src),\n ...(matrix ? JsiSkMatrix.fromValue<Float32Array>(matrix) : []),\n extend,\n ];\n this.ref.addPath(...args);\n return this;\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(getEnum(this.CanvasKit, \"FillType\", fill));\n return this;\n }\n\n setIsVolatile(volatile: boolean) {\n this.ref.setIsVolatile(volatile);\n return this;\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(this.CanvasKit, \"StrokeJoin\", opts.join),\n cap: optEnum(this.CanvasKit, \"StrokeCap\", opts.cap),\n }\n );\n return result === null ? result : this;\n }\n\n close() {\n this.ref.close();\n return this;\n }\n\n reset() {\n this.ref.reset();\n return this;\n }\n\n rewind() {\n this.ref.rewind();\n return this;\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 return this;\n }\n\n addRect(rect: SkRect, isCCW?: boolean) {\n this.ref.addRect(JsiSkRect.fromValue(this.CanvasKit, rect), isCCW);\n return this;\n }\n\n addRRect(rrect: InputRRect, 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(\n JsiSkPath.fromValue(path),\n getEnum(this.CanvasKit, \"PathOp\", op)\n );\n }\n\n simplify() {\n return this.ref.simplify();\n }\n\n toSVGString() {\n return this.ref.toSVGString();\n }\n\n trim(start: number, stop: number, isComplement: boolean) {\n const startT = pinT(start);\n const stopT = pinT(stop);\n if (startT === 0 && stopT === 1) {\n return this;\n }\n const result = this.ref.trim(startT, stopT, isComplement);\n return result === null ? result : this;\n }\n\n transform(m: InputMatrix) {\n let matrix =\n m instanceof JsiSkMatrix\n ? Array.from(JsiSkMatrix.fromValue<Matrix3x3>(m))\n : (m as Exclude<InputMatrix, SkMatrix>);\n if (matrix.length === 16) {\n matrix = [\n matrix[0],\n matrix[1],\n matrix[3],\n matrix[4],\n matrix[5],\n matrix[7],\n matrix[12],\n matrix[13],\n matrix[15],\n ];\n } else if (matrix.length !== 9) {\n throw new Error(`Invalid matrix length: ${matrix.length}`);\n }\n this.ref.transform(matrix);\n return this;\n }\n\n interpolate(end: SkPath, t: number, output?: SkPath) {\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 if (output) {\n (output as JsiSkPath).ref = path;\n return output;\n } else {\n return new JsiSkPath(this.CanvasKit, path);\n }\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"],"mappings":"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","ignoreList":[]}
@@ -35,7 +35,7 @@ export class JsiSkPathEffectFactory extends Host {
35
35
  return new JsiSkPathEffect(this.CanvasKit, pe);
36
36
  }
37
37
  MakePath1D(path, advance, phase, style) {
38
- const pe = this.CanvasKit.PathEffect.MakePath1D(JsiSkPath.fromValue(path), advance, phase, getEnum(this.CanvasKit.Path1DEffect, style));
38
+ const pe = this.CanvasKit.PathEffect.MakePath1D(JsiSkPath.fromValue(path), advance, phase, getEnum(this.CanvasKit, "Path1DEffect", style));
39
39
  if (pe === null) {
40
40
  return null;
41
41
  }
@@ -1 +1 @@
1
- {"version":3,"names":["getEnum","Host","throwNotImplementedOnRNWeb","JsiSkMatrix","JsiSkPath","JsiSkPathEffect","JsiSkPathEffectFactory","constructor","CanvasKit","MakeCorner","radius","pe","PathEffect","MakeDash","intervals","phase","MakeDiscrete","segLength","dev","seedAssist","MakeCompose","_outer","_inner","MakeSum","MakeLine2D","width","matrix","fromValue","MakePath1D","path","advance","style","Path1DEffect","MakePath2D"],"sources":["JsiSkPathEffectFactory.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type {\n Path1DEffectStyle,\n PathEffectFactory,\n SkMatrix,\n SkPath,\n SkPathEffect,\n} from \"../types\";\n\nimport { getEnum, Host, throwNotImplementedOnRNWeb } from \"./Host\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\nimport { JsiSkPath } from \"./JsiSkPath\";\nimport { JsiSkPathEffect } from \"./JsiSkPathEffect\";\n\nexport class JsiSkPathEffectFactory extends Host implements PathEffectFactory {\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n MakeCorner(radius: number) {\n const pe = this.CanvasKit.PathEffect.MakeCorner(radius);\n if (pe === null) {\n return null;\n }\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n\n MakeDash(intervals: number[], phase?: number) {\n const pe = this.CanvasKit.PathEffect.MakeDash(intervals, phase);\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n\n MakeDiscrete(segLength: number, dev: number, seedAssist: number) {\n const pe = this.CanvasKit.PathEffect.MakeDiscrete(\n segLength,\n dev,\n seedAssist\n );\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n\n MakeCompose(_outer: SkPathEffect, _inner: SkPathEffect) {\n return throwNotImplementedOnRNWeb<SkPathEffect>();\n }\n\n MakeSum(_outer: SkPathEffect, _inner: SkPathEffect) {\n return throwNotImplementedOnRNWeb<SkPathEffect>();\n }\n\n MakeLine2D(width: number, matrix: SkMatrix) {\n const pe = this.CanvasKit.PathEffect.MakeLine2D(\n width,\n JsiSkMatrix.fromValue(matrix)\n );\n if (pe === null) {\n return null;\n }\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n\n MakePath1D(\n path: SkPath,\n advance: number,\n phase: number,\n style: Path1DEffectStyle\n ) {\n const pe = this.CanvasKit.PathEffect.MakePath1D(\n JsiSkPath.fromValue(path),\n advance,\n phase,\n getEnum(this.CanvasKit.Path1DEffect, style)\n );\n if (pe === null) {\n return null;\n }\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n\n MakePath2D(matrix: SkMatrix, path: SkPath) {\n const pe = this.CanvasKit.PathEffect.MakePath2D(\n JsiSkMatrix.fromValue(matrix),\n JsiSkPath.fromValue(path)\n );\n if (pe === null) {\n return null;\n }\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n}\n"],"mappings":"AAUA,SAASA,OAAO,EAAEC,IAAI,EAAEC,0BAA0B,QAAQ,QAAQ;AAClE,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,eAAe,QAAQ,mBAAmB;AAEnD,OAAO,MAAMC,sBAAsB,SAASL,IAAI,CAA8B;EAC5EM,WAAWA,CAACC,SAAoB,EAAE;IAChC,KAAK,CAACA,SAAS,CAAC;EAClB;EAEAC,UAAUA,CAACC,MAAc,EAAE;IACzB,MAAMC,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACH,UAAU,CAACC,MAAM,CAAC;IACvD,IAAIC,EAAE,KAAK,IAAI,EAAE;MACf,OAAO,IAAI;IACb;IACA,OAAO,IAAIN,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;EAEAE,QAAQA,CAACC,SAAmB,EAAEC,KAAc,EAAE;IAC5C,MAAMJ,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACC,QAAQ,CAACC,SAAS,EAAEC,KAAK,CAAC;IAC/D,OAAO,IAAIV,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;EAEAK,YAAYA,CAACC,SAAiB,EAAEC,GAAW,EAAEC,UAAkB,EAAE;IAC/D,MAAMR,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACI,YAAY,CAC/CC,SAAS,EACTC,GAAG,EACHC,UACF,CAAC;IACD,OAAO,IAAId,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;EAEAS,WAAWA,CAACC,MAAoB,EAAEC,MAAoB,EAAE;IACtD,OAAOpB,0BAA0B,CAAe,CAAC;EACnD;EAEAqB,OAAOA,CAACF,MAAoB,EAAEC,MAAoB,EAAE;IAClD,OAAOpB,0BAA0B,CAAe,CAAC;EACnD;EAEAsB,UAAUA,CAACC,KAAa,EAAEC,MAAgB,EAAE;IAC1C,MAAMf,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACY,UAAU,CAC7CC,KAAK,EACLtB,WAAW,CAACwB,SAAS,CAACD,MAAM,CAC9B,CAAC;IACD,IAAIf,EAAE,KAAK,IAAI,EAAE;MACf,OAAO,IAAI;IACb;IACA,OAAO,IAAIN,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;EAEAiB,UAAUA,CACRC,IAAY,EACZC,OAAe,EACff,KAAa,EACbgB,KAAwB,EACxB;IACA,MAAMpB,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACgB,UAAU,CAC7CxB,SAAS,CAACuB,SAAS,CAACE,IAAI,CAAC,EACzBC,OAAO,EACPf,KAAK,EACLf,OAAO,CAAC,IAAI,CAACQ,SAAS,CAACwB,YAAY,EAAED,KAAK,CAC5C,CAAC;IACD,IAAIpB,EAAE,KAAK,IAAI,EAAE;MACf,OAAO,IAAI;IACb;IACA,OAAO,IAAIN,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;EAEAsB,UAAUA,CAACP,MAAgB,EAAEG,IAAY,EAAE;IACzC,MAAMlB,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACqB,UAAU,CAC7C9B,WAAW,CAACwB,SAAS,CAACD,MAAM,CAAC,EAC7BtB,SAAS,CAACuB,SAAS,CAACE,IAAI,CAC1B,CAAC;IACD,IAAIlB,EAAE,KAAK,IAAI,EAAE;MACf,OAAO,IAAI;IACb;IACA,OAAO,IAAIN,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;AACF","ignoreList":[]}
1
+ {"version":3,"names":["getEnum","Host","throwNotImplementedOnRNWeb","JsiSkMatrix","JsiSkPath","JsiSkPathEffect","JsiSkPathEffectFactory","constructor","CanvasKit","MakeCorner","radius","pe","PathEffect","MakeDash","intervals","phase","MakeDiscrete","segLength","dev","seedAssist","MakeCompose","_outer","_inner","MakeSum","MakeLine2D","width","matrix","fromValue","MakePath1D","path","advance","style","MakePath2D"],"sources":["JsiSkPathEffectFactory.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type {\n Path1DEffectStyle,\n PathEffectFactory,\n SkMatrix,\n SkPath,\n SkPathEffect,\n} from \"../types\";\n\nimport { getEnum, Host, throwNotImplementedOnRNWeb } from \"./Host\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\nimport { JsiSkPath } from \"./JsiSkPath\";\nimport { JsiSkPathEffect } from \"./JsiSkPathEffect\";\n\nexport class JsiSkPathEffectFactory extends Host implements PathEffectFactory {\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n MakeCorner(radius: number) {\n const pe = this.CanvasKit.PathEffect.MakeCorner(radius);\n if (pe === null) {\n return null;\n }\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n\n MakeDash(intervals: number[], phase?: number) {\n const pe = this.CanvasKit.PathEffect.MakeDash(intervals, phase);\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n\n MakeDiscrete(segLength: number, dev: number, seedAssist: number) {\n const pe = this.CanvasKit.PathEffect.MakeDiscrete(\n segLength,\n dev,\n seedAssist\n );\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n\n MakeCompose(_outer: SkPathEffect, _inner: SkPathEffect) {\n return throwNotImplementedOnRNWeb<SkPathEffect>();\n }\n\n MakeSum(_outer: SkPathEffect, _inner: SkPathEffect) {\n return throwNotImplementedOnRNWeb<SkPathEffect>();\n }\n\n MakeLine2D(width: number, matrix: SkMatrix) {\n const pe = this.CanvasKit.PathEffect.MakeLine2D(\n width,\n JsiSkMatrix.fromValue(matrix)\n );\n if (pe === null) {\n return null;\n }\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n\n MakePath1D(\n path: SkPath,\n advance: number,\n phase: number,\n style: Path1DEffectStyle\n ) {\n const pe = this.CanvasKit.PathEffect.MakePath1D(\n JsiSkPath.fromValue(path),\n advance,\n phase,\n getEnum(this.CanvasKit, \"Path1DEffect\", style)\n );\n if (pe === null) {\n return null;\n }\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n\n MakePath2D(matrix: SkMatrix, path: SkPath) {\n const pe = this.CanvasKit.PathEffect.MakePath2D(\n JsiSkMatrix.fromValue(matrix),\n JsiSkPath.fromValue(path)\n );\n if (pe === null) {\n return null;\n }\n return new JsiSkPathEffect(this.CanvasKit, pe);\n }\n}\n"],"mappings":"AAUA,SAASA,OAAO,EAAEC,IAAI,EAAEC,0BAA0B,QAAQ,QAAQ;AAClE,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,SAAS,QAAQ,aAAa;AACvC,SAASC,eAAe,QAAQ,mBAAmB;AAEnD,OAAO,MAAMC,sBAAsB,SAASL,IAAI,CAA8B;EAC5EM,WAAWA,CAACC,SAAoB,EAAE;IAChC,KAAK,CAACA,SAAS,CAAC;EAClB;EAEAC,UAAUA,CAACC,MAAc,EAAE;IACzB,MAAMC,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACH,UAAU,CAACC,MAAM,CAAC;IACvD,IAAIC,EAAE,KAAK,IAAI,EAAE;MACf,OAAO,IAAI;IACb;IACA,OAAO,IAAIN,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;EAEAE,QAAQA,CAACC,SAAmB,EAAEC,KAAc,EAAE;IAC5C,MAAMJ,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACC,QAAQ,CAACC,SAAS,EAAEC,KAAK,CAAC;IAC/D,OAAO,IAAIV,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;EAEAK,YAAYA,CAACC,SAAiB,EAAEC,GAAW,EAAEC,UAAkB,EAAE;IAC/D,MAAMR,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACI,YAAY,CAC/CC,SAAS,EACTC,GAAG,EACHC,UACF,CAAC;IACD,OAAO,IAAId,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;EAEAS,WAAWA,CAACC,MAAoB,EAAEC,MAAoB,EAAE;IACtD,OAAOpB,0BAA0B,CAAe,CAAC;EACnD;EAEAqB,OAAOA,CAACF,MAAoB,EAAEC,MAAoB,EAAE;IAClD,OAAOpB,0BAA0B,CAAe,CAAC;EACnD;EAEAsB,UAAUA,CAACC,KAAa,EAAEC,MAAgB,EAAE;IAC1C,MAAMf,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACY,UAAU,CAC7CC,KAAK,EACLtB,WAAW,CAACwB,SAAS,CAACD,MAAM,CAC9B,CAAC;IACD,IAAIf,EAAE,KAAK,IAAI,EAAE;MACf,OAAO,IAAI;IACb;IACA,OAAO,IAAIN,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;EAEAiB,UAAUA,CACRC,IAAY,EACZC,OAAe,EACff,KAAa,EACbgB,KAAwB,EACxB;IACA,MAAMpB,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACgB,UAAU,CAC7CxB,SAAS,CAACuB,SAAS,CAACE,IAAI,CAAC,EACzBC,OAAO,EACPf,KAAK,EACLf,OAAO,CAAC,IAAI,CAACQ,SAAS,EAAE,cAAc,EAAEuB,KAAK,CAC/C,CAAC;IACD,IAAIpB,EAAE,KAAK,IAAI,EAAE;MACf,OAAO,IAAI;IACb;IACA,OAAO,IAAIN,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;EAEAqB,UAAUA,CAACN,MAAgB,EAAEG,IAAY,EAAE;IACzC,MAAMlB,EAAE,GAAG,IAAI,CAACH,SAAS,CAACI,UAAU,CAACoB,UAAU,CAC7C7B,WAAW,CAACwB,SAAS,CAACD,MAAM,CAAC,EAC7BtB,SAAS,CAACuB,SAAS,CAACE,IAAI,CAC1B,CAAC;IACD,IAAIlB,EAAE,KAAK,IAAI,EAAE;MACf,OAAO,IAAI;IACb;IACA,OAAO,IAAIN,eAAe,CAAC,IAAI,CAACG,SAAS,EAAEG,EAAE,CAAC;EAChD;AACF","ignoreList":[]}
@@ -15,7 +15,7 @@ export class JsiSkPathFactory extends Host {
15
15
  return new JsiSkPath(this.CanvasKit, path);
16
16
  }
17
17
  MakeFromOp(one, two, op) {
18
- const path = this.CanvasKit.Path.MakeFromOp(JsiSkPath.fromValue(one), JsiSkPath.fromValue(two), getEnum(this.CanvasKit.PathOp, op));
18
+ const path = this.CanvasKit.Path.MakeFromOp(JsiSkPath.fromValue(one), JsiSkPath.fromValue(two), getEnum(this.CanvasKit, "PathOp", op));
19
19
  if (path === null) {
20
20
  return null;
21
21
  }
@@ -1 +1 @@
1
- {"version":3,"names":["Host","getEnum","throwNotImplementedOnRNWeb","JsiSkPath","JsiSkPathFactory","constructor","CanvasKit","Make","Path","MakeFromSVGString","str","path","MakeFromOp","one","two","op","fromValue","PathOp","MakeFromCmds","cmds","flat","MakeFromText","_text","_x","_y","_font"],"sources":["JsiSkPathFactory.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type { PathCommand, PathOp, SkFont, SkPath } from \"../types\";\nimport type { PathFactory } from \"../types/Path/PathFactory\";\n\nimport { Host, getEnum, throwNotImplementedOnRNWeb } from \"./Host\";\nimport { JsiSkPath } from \"./JsiSkPath\";\n\nexport class JsiSkPathFactory extends Host implements PathFactory {\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n Make() {\n return new JsiSkPath(this.CanvasKit, new this.CanvasKit.Path());\n }\n\n MakeFromSVGString(str: string) {\n const path = this.CanvasKit.Path.MakeFromSVGString(str);\n if (path === null) {\n return null;\n }\n return new JsiSkPath(this.CanvasKit, path);\n }\n\n MakeFromOp(one: SkPath, two: SkPath, op: PathOp) {\n const path = this.CanvasKit.Path.MakeFromOp(\n JsiSkPath.fromValue(one),\n JsiSkPath.fromValue(two),\n getEnum(this.CanvasKit.PathOp, op)\n );\n if (path === null) {\n return null;\n }\n return new JsiSkPath(this.CanvasKit, path);\n }\n\n MakeFromCmds(cmds: PathCommand[]) {\n const path = this.CanvasKit.Path.MakeFromCmds(cmds.flat());\n if (path === null) {\n return null;\n }\n return new JsiSkPath(this.CanvasKit, path);\n }\n\n MakeFromText(_text: string, _x: number, _y: number, _font: SkFont) {\n return throwNotImplementedOnRNWeb<SkPath>();\n }\n}\n"],"mappings":"AAKA,SAASA,IAAI,EAAEC,OAAO,EAAEC,0BAA0B,QAAQ,QAAQ;AAClE,SAASC,SAAS,QAAQ,aAAa;AAEvC,OAAO,MAAMC,gBAAgB,SAASJ,IAAI,CAAwB;EAChEK,WAAWA,CAACC,SAAoB,EAAE;IAChC,KAAK,CAACA,SAAS,CAAC;EAClB;EAEAC,IAAIA,CAAA,EAAG;IACL,OAAO,IAAIJ,SAAS,CAAC,IAAI,CAACG,SAAS,EAAE,IAAI,IAAI,CAACA,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;EACjE;EAEAC,iBAAiBA,CAACC,GAAW,EAAE;IAC7B,MAAMC,IAAI,GAAG,IAAI,CAACL,SAAS,CAACE,IAAI,CAACC,iBAAiB,CAACC,GAAG,CAAC;IACvD,IAAIC,IAAI,KAAK,IAAI,EAAE;MACjB,OAAO,IAAI;IACb;IACA,OAAO,IAAIR,SAAS,CAAC,IAAI,CAACG,SAAS,EAAEK,IAAI,CAAC;EAC5C;EAEAC,UAAUA,CAACC,GAAW,EAAEC,GAAW,EAAEC,EAAU,EAAE;IAC/C,MAAMJ,IAAI,GAAG,IAAI,CAACL,SAAS,CAACE,IAAI,CAACI,UAAU,CACzCT,SAAS,CAACa,SAAS,CAACH,GAAG,CAAC,EACxBV,SAAS,CAACa,SAAS,CAACF,GAAG,CAAC,EACxBb,OAAO,CAAC,IAAI,CAACK,SAAS,CAACW,MAAM,EAAEF,EAAE,CACnC,CAAC;IACD,IAAIJ,IAAI,KAAK,IAAI,EAAE;MACjB,OAAO,IAAI;IACb;IACA,OAAO,IAAIR,SAAS,CAAC,IAAI,CAACG,SAAS,EAAEK,IAAI,CAAC;EAC5C;EAEAO,YAAYA,CAACC,IAAmB,EAAE;IAChC,MAAMR,IAAI,GAAG,IAAI,CAACL,SAAS,CAACE,IAAI,CAACU,YAAY,CAACC,IAAI,CAACC,IAAI,CAAC,CAAC,CAAC;IAC1D,IAAIT,IAAI,KAAK,IAAI,EAAE;MACjB,OAAO,IAAI;IACb;IACA,OAAO,IAAIR,SAAS,CAAC,IAAI,CAACG,SAAS,EAAEK,IAAI,CAAC;EAC5C;EAEAU,YAAYA,CAACC,KAAa,EAAEC,EAAU,EAAEC,EAAU,EAAEC,KAAa,EAAE;IACjE,OAAOvB,0BAA0B,CAAS,CAAC;EAC7C;AACF","ignoreList":[]}
1
+ {"version":3,"names":["Host","getEnum","throwNotImplementedOnRNWeb","JsiSkPath","JsiSkPathFactory","constructor","CanvasKit","Make","Path","MakeFromSVGString","str","path","MakeFromOp","one","two","op","fromValue","MakeFromCmds","cmds","flat","MakeFromText","_text","_x","_y","_font"],"sources":["JsiSkPathFactory.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type { PathCommand, PathOp, SkFont, SkPath } from \"../types\";\nimport type { PathFactory } from \"../types/Path/PathFactory\";\n\nimport { Host, getEnum, throwNotImplementedOnRNWeb } from \"./Host\";\nimport { JsiSkPath } from \"./JsiSkPath\";\n\nexport class JsiSkPathFactory extends Host implements PathFactory {\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n Make() {\n return new JsiSkPath(this.CanvasKit, new this.CanvasKit.Path());\n }\n\n MakeFromSVGString(str: string) {\n const path = this.CanvasKit.Path.MakeFromSVGString(str);\n if (path === null) {\n return null;\n }\n return new JsiSkPath(this.CanvasKit, path);\n }\n\n MakeFromOp(one: SkPath, two: SkPath, op: PathOp) {\n const path = this.CanvasKit.Path.MakeFromOp(\n JsiSkPath.fromValue(one),\n JsiSkPath.fromValue(two),\n getEnum(this.CanvasKit, \"PathOp\", op)\n );\n if (path === null) {\n return null;\n }\n return new JsiSkPath(this.CanvasKit, path);\n }\n\n MakeFromCmds(cmds: PathCommand[]) {\n const path = this.CanvasKit.Path.MakeFromCmds(cmds.flat());\n if (path === null) {\n return null;\n }\n return new JsiSkPath(this.CanvasKit, path);\n }\n\n MakeFromText(_text: string, _x: number, _y: number, _font: SkFont) {\n return throwNotImplementedOnRNWeb<SkPath>();\n }\n}\n"],"mappings":"AAKA,SAASA,IAAI,EAAEC,OAAO,EAAEC,0BAA0B,QAAQ,QAAQ;AAClE,SAASC,SAAS,QAAQ,aAAa;AAEvC,OAAO,MAAMC,gBAAgB,SAASJ,IAAI,CAAwB;EAChEK,WAAWA,CAACC,SAAoB,EAAE;IAChC,KAAK,CAACA,SAAS,CAAC;EAClB;EAEAC,IAAIA,CAAA,EAAG;IACL,OAAO,IAAIJ,SAAS,CAAC,IAAI,CAACG,SAAS,EAAE,IAAI,IAAI,CAACA,SAAS,CAACE,IAAI,CAAC,CAAC,CAAC;EACjE;EAEAC,iBAAiBA,CAACC,GAAW,EAAE;IAC7B,MAAMC,IAAI,GAAG,IAAI,CAACL,SAAS,CAACE,IAAI,CAACC,iBAAiB,CAACC,GAAG,CAAC;IACvD,IAAIC,IAAI,KAAK,IAAI,EAAE;MACjB,OAAO,IAAI;IACb;IACA,OAAO,IAAIR,SAAS,CAAC,IAAI,CAACG,SAAS,EAAEK,IAAI,CAAC;EAC5C;EAEAC,UAAUA,CAACC,GAAW,EAAEC,GAAW,EAAEC,EAAU,EAAE;IAC/C,MAAMJ,IAAI,GAAG,IAAI,CAACL,SAAS,CAACE,IAAI,CAACI,UAAU,CACzCT,SAAS,CAACa,SAAS,CAACH,GAAG,CAAC,EACxBV,SAAS,CAACa,SAAS,CAACF,GAAG,CAAC,EACxBb,OAAO,CAAC,IAAI,CAACK,SAAS,EAAE,QAAQ,EAAES,EAAE,CACtC,CAAC;IACD,IAAIJ,IAAI,KAAK,IAAI,EAAE;MACjB,OAAO,IAAI;IACb;IACA,OAAO,IAAIR,SAAS,CAAC,IAAI,CAACG,SAAS,EAAEK,IAAI,CAAC;EAC5C;EAEAM,YAAYA,CAACC,IAAmB,EAAE;IAChC,MAAMP,IAAI,GAAG,IAAI,CAACL,SAAS,CAACE,IAAI,CAACS,YAAY,CAACC,IAAI,CAACC,IAAI,CAAC,CAAC,CAAC;IAC1D,IAAIR,IAAI,KAAK,IAAI,EAAE;MACjB,OAAO,IAAI;IACb;IACA,OAAO,IAAIR,SAAS,CAAC,IAAI,CAACG,SAAS,EAAEK,IAAI,CAAC;EAC5C;EAEAS,YAAYA,CAACC,KAAa,EAAEC,EAAU,EAAEC,EAAU,EAAEC,KAAa,EAAE;IACjE,OAAOtB,0BAA0B,CAAS,CAAC;EAC7C;AACF","ignoreList":[]}
@@ -15,7 +15,7 @@ export class JsiSkPicture extends HostObject {
15
15
  });
16
16
  }
17
17
  makeShader(tmx, tmy, mode, localMatrix, tileRect) {
18
- return new JsiSkShader(this.CanvasKit, this.ref.makeShader(getEnum(this.CanvasKit.TileMode, tmx), getEnum(this.CanvasKit.TileMode, tmy), getEnum(this.CanvasKit.FilterMode, mode), localMatrix ? JsiSkMatrix.fromValue(localMatrix) : undefined, tileRect ? JsiSkRect.fromValue(this.CanvasKit, tileRect) : undefined));
18
+ return new JsiSkShader(this.CanvasKit, this.ref.makeShader(getEnum(this.CanvasKit, "TileMode", tmx), getEnum(this.CanvasKit, "TileMode", tmy), getEnum(this.CanvasKit, "FilterMode", mode), localMatrix ? JsiSkMatrix.fromValue(localMatrix) : undefined, tileRect ? JsiSkRect.fromValue(this.CanvasKit, tileRect) : undefined));
19
19
  }
20
20
  serialize() {
21
21
  return this.ref.serialize();
@@ -1 +1 @@
1
- {"version":3,"names":["HostObject","getEnum","JsiSkShader","JsiSkMatrix","JsiSkRect","JsiSkPicture","constructor","CanvasKit","ref","_defineProperty","delete","makeShader","tmx","tmy","mode","localMatrix","tileRect","TileMode","FilterMode","fromValue","undefined","serialize"],"sources":["JsiSkPicture.ts"],"sourcesContent":["// TODO: suggest to rename SkPicture to Picture for consistency\nimport type { CanvasKit, SkPicture as Picture } from \"canvaskit-wasm\";\n\nimport type {\n FilterMode,\n SkRect,\n TileMode,\n SkPicture,\n SkMatrix,\n} from \"../types\";\n\nimport { HostObject, getEnum } from \"./Host\";\nimport { JsiSkShader } from \"./JsiSkShader\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\nimport { JsiSkRect } from \"./JsiSkRect\";\n\nexport class JsiSkPicture\n extends HostObject<Picture, \"Picture\">\n implements SkPicture\n{\n constructor(CanvasKit: CanvasKit, ref: Picture) {\n super(CanvasKit, ref, \"Picture\");\n }\n\n dispose = () => {\n this.ref.delete();\n };\n\n makeShader(\n tmx: TileMode,\n tmy: TileMode,\n mode: FilterMode,\n localMatrix?: SkMatrix,\n tileRect?: SkRect\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.ref.makeShader(\n getEnum(this.CanvasKit.TileMode, tmx),\n getEnum(this.CanvasKit.TileMode, tmy),\n getEnum(this.CanvasKit.FilterMode, mode),\n localMatrix ? JsiSkMatrix.fromValue(localMatrix) : undefined,\n tileRect ? JsiSkRect.fromValue(this.CanvasKit, tileRect) : undefined\n )\n );\n }\n\n serialize() {\n return this.ref.serialize();\n }\n}\n"],"mappings":";;;AAAA;;AAWA,SAASA,UAAU,EAAEC,OAAO,QAAQ,QAAQ;AAC5C,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,SAAS,QAAQ,aAAa;AAEvC,OAAO,MAAMC,YAAY,SACfL,UAAU,CAEpB;EACEM,WAAWA,CAACC,SAAoB,EAAEC,GAAY,EAAE;IAC9C,KAAK,CAACD,SAAS,EAAEC,GAAG,EAAE,SAAS,CAAC;IAACC,eAAA,kBAGzB,MAAM;MACd,IAAI,CAACD,GAAG,CAACE,MAAM,CAAC,CAAC;IACnB,CAAC;EAJD;EAMAC,UAAUA,CACRC,GAAa,EACbC,GAAa,EACbC,IAAgB,EAChBC,WAAsB,EACtBC,QAAiB,EACjB;IACA,OAAO,IAAId,WAAW,CACpB,IAAI,CAACK,SAAS,EACd,IAAI,CAACC,GAAG,CAACG,UAAU,CACjBV,OAAO,CAAC,IAAI,CAACM,SAAS,CAACU,QAAQ,EAAEL,GAAG,CAAC,EACrCX,OAAO,CAAC,IAAI,CAACM,SAAS,CAACU,QAAQ,EAAEJ,GAAG,CAAC,EACrCZ,OAAO,CAAC,IAAI,CAACM,SAAS,CAACW,UAAU,EAAEJ,IAAI,CAAC,EACxCC,WAAW,GAAGZ,WAAW,CAACgB,SAAS,CAACJ,WAAW,CAAC,GAAGK,SAAS,EAC5DJ,QAAQ,GAAGZ,SAAS,CAACe,SAAS,CAAC,IAAI,CAACZ,SAAS,EAAES,QAAQ,CAAC,GAAGI,SAC7D,CACF,CAAC;EACH;EAEAC,SAASA,CAAA,EAAG;IACV,OAAO,IAAI,CAACb,GAAG,CAACa,SAAS,CAAC,CAAC;EAC7B;AACF","ignoreList":[]}
1
+ {"version":3,"names":["HostObject","getEnum","JsiSkShader","JsiSkMatrix","JsiSkRect","JsiSkPicture","constructor","CanvasKit","ref","_defineProperty","delete","makeShader","tmx","tmy","mode","localMatrix","tileRect","fromValue","undefined","serialize"],"sources":["JsiSkPicture.ts"],"sourcesContent":["// TODO: suggest to rename SkPicture to Picture for consistency\nimport type { CanvasKit, SkPicture as Picture } from \"canvaskit-wasm\";\n\nimport type {\n FilterMode,\n SkRect,\n TileMode,\n SkPicture,\n SkMatrix,\n} from \"../types\";\n\nimport { HostObject, getEnum } from \"./Host\";\nimport { JsiSkShader } from \"./JsiSkShader\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\nimport { JsiSkRect } from \"./JsiSkRect\";\n\nexport class JsiSkPicture\n extends HostObject<Picture, \"Picture\">\n implements SkPicture\n{\n constructor(CanvasKit: CanvasKit, ref: Picture) {\n super(CanvasKit, ref, \"Picture\");\n }\n\n dispose = () => {\n this.ref.delete();\n };\n\n makeShader(\n tmx: TileMode,\n tmy: TileMode,\n mode: FilterMode,\n localMatrix?: SkMatrix,\n tileRect?: SkRect\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.ref.makeShader(\n getEnum(this.CanvasKit, \"TileMode\", tmx),\n getEnum(this.CanvasKit, \"TileMode\", tmy),\n getEnum(this.CanvasKit, \"FilterMode\", mode),\n localMatrix ? JsiSkMatrix.fromValue(localMatrix) : undefined,\n tileRect ? JsiSkRect.fromValue(this.CanvasKit, tileRect) : undefined\n )\n );\n }\n\n serialize() {\n return this.ref.serialize();\n }\n}\n"],"mappings":";;;AAAA;;AAWA,SAASA,UAAU,EAAEC,OAAO,QAAQ,QAAQ;AAC5C,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,SAAS,QAAQ,aAAa;AAEvC,OAAO,MAAMC,YAAY,SACfL,UAAU,CAEpB;EACEM,WAAWA,CAACC,SAAoB,EAAEC,GAAY,EAAE;IAC9C,KAAK,CAACD,SAAS,EAAEC,GAAG,EAAE,SAAS,CAAC;IAACC,eAAA,kBAGzB,MAAM;MACd,IAAI,CAACD,GAAG,CAACE,MAAM,CAAC,CAAC;IACnB,CAAC;EAJD;EAMAC,UAAUA,CACRC,GAAa,EACbC,GAAa,EACbC,IAAgB,EAChBC,WAAsB,EACtBC,QAAiB,EACjB;IACA,OAAO,IAAId,WAAW,CACpB,IAAI,CAACK,SAAS,EACd,IAAI,CAACC,GAAG,CAACG,UAAU,CACjBV,OAAO,CAAC,IAAI,CAACM,SAAS,EAAE,UAAU,EAAEK,GAAG,CAAC,EACxCX,OAAO,CAAC,IAAI,CAACM,SAAS,EAAE,UAAU,EAAEM,GAAG,CAAC,EACxCZ,OAAO,CAAC,IAAI,CAACM,SAAS,EAAE,YAAY,EAAEO,IAAI,CAAC,EAC3CC,WAAW,GAAGZ,WAAW,CAACc,SAAS,CAACF,WAAW,CAAC,GAAGG,SAAS,EAC5DF,QAAQ,GAAGZ,SAAS,CAACa,SAAS,CAAC,IAAI,CAACV,SAAS,EAAES,QAAQ,CAAC,GAAGE,SAC7D,CACF,CAAC;EACH;EAEAC,SAASA,CAAA,EAAG;IACV,OAAO,IAAI,CAACX,GAAG,CAACW,SAAS,CAAC,CAAC;EAC7B;AACF","ignoreList":[]}
@@ -7,16 +7,16 @@ export class JsiSkShaderFactory extends Host {
7
7
  super(CanvasKit);
8
8
  }
9
9
  MakeLinearGradient(start, end, colors, pos, mode, localMatrix, flags) {
10
- return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeLinearGradient(JsiSkPoint.fromValue(start), JsiSkPoint.fromValue(end), colors, pos, getEnum(this.CanvasKit.TileMode, mode), localMatrix === undefined ? undefined : JsiSkMatrix.fromValue(localMatrix), flags));
10
+ return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeLinearGradient(JsiSkPoint.fromValue(start), JsiSkPoint.fromValue(end), colors, pos, getEnum(this.CanvasKit, "TileMode", mode), localMatrix === undefined ? undefined : JsiSkMatrix.fromValue(localMatrix), flags));
11
11
  }
12
12
  MakeRadialGradient(center, radius, colors, pos, mode, localMatrix, flags) {
13
- return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeRadialGradient(JsiSkPoint.fromValue(center), radius, colors, pos, getEnum(this.CanvasKit.TileMode, mode), localMatrix === undefined ? undefined : JsiSkMatrix.fromValue(localMatrix), flags));
13
+ return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeRadialGradient(JsiSkPoint.fromValue(center), radius, colors, pos, getEnum(this.CanvasKit, "TileMode", mode), localMatrix === undefined ? undefined : JsiSkMatrix.fromValue(localMatrix), flags));
14
14
  }
15
15
  MakeTwoPointConicalGradient(start, startRadius, end, endRadius, colors, pos, mode, localMatrix, flags) {
16
- return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeTwoPointConicalGradient(JsiSkPoint.fromValue(start), startRadius, JsiSkPoint.fromValue(end), endRadius, colors, pos, getEnum(this.CanvasKit.TileMode, mode), localMatrix === undefined ? undefined : JsiSkMatrix.fromValue(localMatrix), flags));
16
+ return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeTwoPointConicalGradient(JsiSkPoint.fromValue(start), startRadius, JsiSkPoint.fromValue(end), endRadius, colors, pos, getEnum(this.CanvasKit, "TileMode", mode), localMatrix === undefined ? undefined : JsiSkMatrix.fromValue(localMatrix), flags));
17
17
  }
18
18
  MakeSweepGradient(cx, cy, colors, pos, mode, localMatrix, flags, startAngleInDegrees, endAngleInDegrees) {
19
- return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeSweepGradient(cx, cy, colors, pos, getEnum(this.CanvasKit.TileMode, mode), localMatrix === undefined || localMatrix === null ? undefined : JsiSkMatrix.fromValue(localMatrix), flags, startAngleInDegrees, endAngleInDegrees));
19
+ return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeSweepGradient(cx, cy, colors, pos, getEnum(this.CanvasKit, "TileMode", mode), localMatrix === undefined || localMatrix === null ? undefined : JsiSkMatrix.fromValue(localMatrix), flags, startAngleInDegrees, endAngleInDegrees));
20
20
  }
21
21
  MakeTurbulence(baseFreqX, baseFreqY, octaves, seed, tileW, tileH) {
22
22
  return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeTurbulence(baseFreqX, baseFreqY, octaves, seed, tileW, tileH));
@@ -25,7 +25,7 @@ export class JsiSkShaderFactory extends Host {
25
25
  return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeFractalNoise(baseFreqX, baseFreqY, octaves, seed, tileW, tileH));
26
26
  }
27
27
  MakeBlend(mode, one, two) {
28
- return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeBlend(getEnum(this.CanvasKit.BlendMode, mode), JsiSkShader.fromValue(one), JsiSkShader.fromValue(two)));
28
+ return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeBlend(getEnum(this.CanvasKit, "BlendMode", mode), JsiSkShader.fromValue(one), JsiSkShader.fromValue(two)));
29
29
  }
30
30
  MakeColor(color) {
31
31
  return new JsiSkShader(this.CanvasKit, this.CanvasKit.Shader.MakeColor(color, this.CanvasKit.ColorSpace.SRGB));
@@ -1 +1 @@
1
- {"version":3,"names":["Host","getEnum","JsiSkMatrix","JsiSkPoint","JsiSkShader","JsiSkShaderFactory","constructor","CanvasKit","MakeLinearGradient","start","end","colors","pos","mode","localMatrix","flags","Shader","fromValue","TileMode","undefined","MakeRadialGradient","center","radius","MakeTwoPointConicalGradient","startRadius","endRadius","MakeSweepGradient","cx","cy","startAngleInDegrees","endAngleInDegrees","MakeTurbulence","baseFreqX","baseFreqY","octaves","seed","tileW","tileH","MakeFractalNoise","MakeBlend","one","two","BlendMode","MakeColor","color","ColorSpace","SRGB"],"sources":["JsiSkShaderFactory.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type {\n BlendMode,\n SkColor,\n SkMatrix,\n SkPoint,\n SkShader,\n TileMode,\n} from \"../types\";\nimport type { ShaderFactory } from \"../types/Shader/ShaderFactory\";\n\nimport { Host, getEnum } from \"./Host\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\nimport { JsiSkPoint } from \"./JsiSkPoint\";\nimport { JsiSkShader } from \"./JsiSkShader\";\n\nexport class JsiSkShaderFactory extends Host implements ShaderFactory {\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n MakeLinearGradient(\n start: SkPoint,\n end: SkPoint,\n colors: SkColor[],\n pos: number[] | null,\n mode: TileMode,\n localMatrix?: SkMatrix,\n flags?: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeLinearGradient(\n JsiSkPoint.fromValue(start),\n JsiSkPoint.fromValue(end),\n colors,\n pos,\n getEnum(this.CanvasKit.TileMode, mode),\n localMatrix === undefined\n ? undefined\n : JsiSkMatrix.fromValue(localMatrix),\n flags\n )\n );\n }\n\n MakeRadialGradient(\n center: SkPoint,\n radius: number,\n colors: SkColor[],\n pos: number[] | null,\n mode: TileMode,\n localMatrix?: SkMatrix,\n flags?: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeRadialGradient(\n JsiSkPoint.fromValue(center),\n radius,\n colors,\n pos,\n getEnum(this.CanvasKit.TileMode, mode),\n localMatrix === undefined\n ? undefined\n : JsiSkMatrix.fromValue(localMatrix),\n flags\n )\n );\n }\n\n MakeTwoPointConicalGradient(\n start: SkPoint,\n startRadius: number,\n end: SkPoint,\n endRadius: number,\n colors: SkColor[],\n pos: number[] | null,\n mode: TileMode,\n localMatrix?: SkMatrix,\n flags?: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeTwoPointConicalGradient(\n JsiSkPoint.fromValue(start),\n startRadius,\n JsiSkPoint.fromValue(end),\n endRadius,\n colors,\n pos,\n getEnum(this.CanvasKit.TileMode, mode),\n localMatrix === undefined\n ? undefined\n : JsiSkMatrix.fromValue(localMatrix),\n flags\n )\n );\n }\n\n MakeSweepGradient(\n cx: number,\n cy: number,\n colors: SkColor[],\n pos: number[] | null,\n mode: TileMode,\n localMatrix?: SkMatrix | null,\n flags?: number,\n startAngleInDegrees?: number,\n endAngleInDegrees?: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeSweepGradient(\n cx,\n cy,\n colors,\n pos,\n getEnum(this.CanvasKit.TileMode, mode),\n localMatrix === undefined || localMatrix === null\n ? undefined\n : JsiSkMatrix.fromValue(localMatrix),\n flags,\n startAngleInDegrees,\n endAngleInDegrees\n )\n );\n }\n\n MakeTurbulence(\n baseFreqX: number,\n baseFreqY: number,\n octaves: number,\n seed: number,\n tileW: number,\n tileH: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeTurbulence(\n baseFreqX,\n baseFreqY,\n octaves,\n seed,\n tileW,\n tileH\n )\n );\n }\n\n MakeFractalNoise(\n baseFreqX: number,\n baseFreqY: number,\n octaves: number,\n seed: number,\n tileW: number,\n tileH: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeFractalNoise(\n baseFreqX,\n baseFreqY,\n octaves,\n seed,\n tileW,\n tileH\n )\n );\n }\n\n MakeBlend(mode: BlendMode, one: SkShader, two: SkShader) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeBlend(\n getEnum(this.CanvasKit.BlendMode, mode),\n JsiSkShader.fromValue(one),\n JsiSkShader.fromValue(two)\n )\n );\n }\n\n MakeColor(color: SkColor) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeColor(color, this.CanvasKit.ColorSpace.SRGB)\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Host","getEnum","JsiSkMatrix","JsiSkPoint","JsiSkShader","JsiSkShaderFactory","constructor","CanvasKit","MakeLinearGradient","start","end","colors","pos","mode","localMatrix","flags","Shader","fromValue","undefined","MakeRadialGradient","center","radius","MakeTwoPointConicalGradient","startRadius","endRadius","MakeSweepGradient","cx","cy","startAngleInDegrees","endAngleInDegrees","MakeTurbulence","baseFreqX","baseFreqY","octaves","seed","tileW","tileH","MakeFractalNoise","MakeBlend","one","two","MakeColor","color","ColorSpace","SRGB"],"sources":["JsiSkShaderFactory.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type {\n BlendMode,\n SkColor,\n SkMatrix,\n SkPoint,\n SkShader,\n TileMode,\n} from \"../types\";\nimport type { ShaderFactory } from \"../types/Shader/ShaderFactory\";\n\nimport { Host, getEnum } from \"./Host\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\nimport { JsiSkPoint } from \"./JsiSkPoint\";\nimport { JsiSkShader } from \"./JsiSkShader\";\n\nexport class JsiSkShaderFactory extends Host implements ShaderFactory {\n constructor(CanvasKit: CanvasKit) {\n super(CanvasKit);\n }\n\n MakeLinearGradient(\n start: SkPoint,\n end: SkPoint,\n colors: SkColor[],\n pos: number[] | null,\n mode: TileMode,\n localMatrix?: SkMatrix,\n flags?: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeLinearGradient(\n JsiSkPoint.fromValue(start),\n JsiSkPoint.fromValue(end),\n colors,\n pos,\n getEnum(this.CanvasKit, \"TileMode\", mode),\n localMatrix === undefined\n ? undefined\n : JsiSkMatrix.fromValue(localMatrix),\n flags\n )\n );\n }\n\n MakeRadialGradient(\n center: SkPoint,\n radius: number,\n colors: SkColor[],\n pos: number[] | null,\n mode: TileMode,\n localMatrix?: SkMatrix,\n flags?: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeRadialGradient(\n JsiSkPoint.fromValue(center),\n radius,\n colors,\n pos,\n getEnum(this.CanvasKit, \"TileMode\", mode),\n localMatrix === undefined\n ? undefined\n : JsiSkMatrix.fromValue(localMatrix),\n flags\n )\n );\n }\n\n MakeTwoPointConicalGradient(\n start: SkPoint,\n startRadius: number,\n end: SkPoint,\n endRadius: number,\n colors: SkColor[],\n pos: number[] | null,\n mode: TileMode,\n localMatrix?: SkMatrix,\n flags?: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeTwoPointConicalGradient(\n JsiSkPoint.fromValue(start),\n startRadius,\n JsiSkPoint.fromValue(end),\n endRadius,\n colors,\n pos,\n getEnum(this.CanvasKit, \"TileMode\", mode),\n localMatrix === undefined\n ? undefined\n : JsiSkMatrix.fromValue(localMatrix),\n flags\n )\n );\n }\n\n MakeSweepGradient(\n cx: number,\n cy: number,\n colors: SkColor[],\n pos: number[] | null,\n mode: TileMode,\n localMatrix?: SkMatrix | null,\n flags?: number,\n startAngleInDegrees?: number,\n endAngleInDegrees?: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeSweepGradient(\n cx,\n cy,\n colors,\n pos,\n getEnum(this.CanvasKit, \"TileMode\", mode),\n localMatrix === undefined || localMatrix === null\n ? undefined\n : JsiSkMatrix.fromValue(localMatrix),\n flags,\n startAngleInDegrees,\n endAngleInDegrees\n )\n );\n }\n\n MakeTurbulence(\n baseFreqX: number,\n baseFreqY: number,\n octaves: number,\n seed: number,\n tileW: number,\n tileH: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeTurbulence(\n baseFreqX,\n baseFreqY,\n octaves,\n seed,\n tileW,\n tileH\n )\n );\n }\n\n MakeFractalNoise(\n baseFreqX: number,\n baseFreqY: number,\n octaves: number,\n seed: number,\n tileW: number,\n tileH: number\n ) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeFractalNoise(\n baseFreqX,\n baseFreqY,\n octaves,\n seed,\n tileW,\n tileH\n )\n );\n }\n\n MakeBlend(mode: BlendMode, one: SkShader, two: SkShader) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeBlend(\n getEnum(this.CanvasKit, \"BlendMode\", mode),\n JsiSkShader.fromValue(one),\n JsiSkShader.fromValue(two)\n )\n );\n }\n\n MakeColor(color: SkColor) {\n return new JsiSkShader(\n this.CanvasKit,\n this.CanvasKit.Shader.MakeColor(color, this.CanvasKit.ColorSpace.SRGB)\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -13,7 +13,7 @@ const concat = (...arrays) => {
13
13
  }
14
14
  return result;
15
15
  };
16
- export const MakeVertices = (CanvasKit, mode, positions, textureCoordinates, colors, indices, isVolatile) => new JsiSkVertices(CanvasKit, CanvasKit.MakeVertices(getEnum(CanvasKit.VertexMode, mode), positions.map(({
16
+ export const MakeVertices = (CanvasKit, mode, positions, textureCoordinates, colors, indices, isVolatile) => new JsiSkVertices(CanvasKit, CanvasKit.MakeVertices(getEnum(CanvasKit, "VertexMode", mode), positions.map(({
17
17
  x,
18
18
  y
19
19
  }) => [x, y]).flat(), (textureCoordinates || []).map(({
@@ -1 +1 @@
1
- {"version":3,"names":["JsiSkVertices","getEnum","concat","arrays","totalLength","arr","length","result","Float32Array","offset","set","MakeVertices","CanvasKit","mode","positions","textureCoordinates","colors","indices","isVolatile","VertexMode","map","x","y","flat","reduce","a","c"],"sources":["JsiSkVerticesFactory.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type { SkColor, SkPoint, VertexMode } from \"../types\";\n\nimport { JsiSkVertices } from \"./JsiSkVertices\";\nimport { getEnum } from \"./Host\";\n\nconst concat = (...arrays: Float32Array[]) => {\n let totalLength = 0;\n for (const arr of arrays) {\n totalLength += arr.length;\n }\n const result = new Float32Array(totalLength);\n let offset = 0;\n for (const arr of arrays) {\n result.set(arr, offset);\n offset += arr.length;\n }\n return result;\n};\n\nexport const MakeVertices = (\n CanvasKit: CanvasKit,\n mode: VertexMode,\n positions: SkPoint[],\n textureCoordinates?: SkPoint[] | null,\n colors?: SkColor[],\n indices?: number[] | null,\n isVolatile?: boolean\n) =>\n new JsiSkVertices(\n CanvasKit,\n CanvasKit.MakeVertices(\n getEnum(CanvasKit.VertexMode, mode),\n positions.map(({ x, y }) => [x, y]).flat(),\n (textureCoordinates || []).map(({ x, y }) => [x, y]).flat(),\n !colors ? null : colors.reduce((a, c) => concat(a, c)),\n indices,\n isVolatile\n )\n );\n"],"mappings":"AAIA,SAASA,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,OAAO,QAAQ,QAAQ;AAEhC,MAAMC,MAAM,GAAGA,CAAC,GAAGC,MAAsB,KAAK;EAC5C,IAAIC,WAAW,GAAG,CAAC;EACnB,KAAK,MAAMC,GAAG,IAAIF,MAAM,EAAE;IACxBC,WAAW,IAAIC,GAAG,CAACC,MAAM;EAC3B;EACA,MAAMC,MAAM,GAAG,IAAIC,YAAY,CAACJ,WAAW,CAAC;EAC5C,IAAIK,MAAM,GAAG,CAAC;EACd,KAAK,MAAMJ,GAAG,IAAIF,MAAM,EAAE;IACxBI,MAAM,CAACG,GAAG,CAACL,GAAG,EAAEI,MAAM,CAAC;IACvBA,MAAM,IAAIJ,GAAG,CAACC,MAAM;EACtB;EACA,OAAOC,MAAM;AACf,CAAC;AAED,OAAO,MAAMI,YAAY,GAAGA,CAC1BC,SAAoB,EACpBC,IAAgB,EAChBC,SAAoB,EACpBC,kBAAqC,EACrCC,MAAkB,EAClBC,OAAyB,EACzBC,UAAoB,KAEpB,IAAIlB,aAAa,CACfY,SAAS,EACTA,SAAS,CAACD,YAAY,CACpBV,OAAO,CAACW,SAAS,CAACO,UAAU,EAAEN,IAAI,CAAC,EACnCC,SAAS,CAACM,GAAG,CAAC,CAAC;EAAEC,CAAC;EAAEC;AAAE,CAAC,KAAK,CAACD,CAAC,EAAEC,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,CAAC,EAC1C,CAACR,kBAAkB,IAAI,EAAE,EAAEK,GAAG,CAAC,CAAC;EAAEC,CAAC;EAAEC;AAAE,CAAC,KAAK,CAACD,CAAC,EAAEC,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,CAAC,EAC3D,CAACP,MAAM,GAAG,IAAI,GAAGA,MAAM,CAACQ,MAAM,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKxB,MAAM,CAACuB,CAAC,EAAEC,CAAC,CAAC,CAAC,EACtDT,OAAO,EACPC,UACF,CACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["JsiSkVertices","getEnum","concat","arrays","totalLength","arr","length","result","Float32Array","offset","set","MakeVertices","CanvasKit","mode","positions","textureCoordinates","colors","indices","isVolatile","map","x","y","flat","reduce","a","c"],"sources":["JsiSkVerticesFactory.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type { SkColor, SkPoint, VertexMode } from \"../types\";\n\nimport { JsiSkVertices } from \"./JsiSkVertices\";\nimport { getEnum } from \"./Host\";\n\nconst concat = (...arrays: Float32Array[]) => {\n let totalLength = 0;\n for (const arr of arrays) {\n totalLength += arr.length;\n }\n const result = new Float32Array(totalLength);\n let offset = 0;\n for (const arr of arrays) {\n result.set(arr, offset);\n offset += arr.length;\n }\n return result;\n};\n\nexport const MakeVertices = (\n CanvasKit: CanvasKit,\n mode: VertexMode,\n positions: SkPoint[],\n textureCoordinates?: SkPoint[] | null,\n colors?: SkColor[],\n indices?: number[] | null,\n isVolatile?: boolean\n) =>\n new JsiSkVertices(\n CanvasKit,\n CanvasKit.MakeVertices(\n getEnum(CanvasKit, \"VertexMode\", mode),\n positions.map(({ x, y }) => [x, y]).flat(),\n (textureCoordinates || []).map(({ x, y }) => [x, y]).flat(),\n !colors ? null : colors.reduce((a, c) => concat(a, c)),\n indices,\n isVolatile\n )\n );\n"],"mappings":"AAIA,SAASA,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,OAAO,QAAQ,QAAQ;AAEhC,MAAMC,MAAM,GAAGA,CAAC,GAAGC,MAAsB,KAAK;EAC5C,IAAIC,WAAW,GAAG,CAAC;EACnB,KAAK,MAAMC,GAAG,IAAIF,MAAM,EAAE;IACxBC,WAAW,IAAIC,GAAG,CAACC,MAAM;EAC3B;EACA,MAAMC,MAAM,GAAG,IAAIC,YAAY,CAACJ,WAAW,CAAC;EAC5C,IAAIK,MAAM,GAAG,CAAC;EACd,KAAK,MAAMJ,GAAG,IAAIF,MAAM,EAAE;IACxBI,MAAM,CAACG,GAAG,CAACL,GAAG,EAAEI,MAAM,CAAC;IACvBA,MAAM,IAAIJ,GAAG,CAACC,MAAM;EACtB;EACA,OAAOC,MAAM;AACf,CAAC;AAED,OAAO,MAAMI,YAAY,GAAGA,CAC1BC,SAAoB,EACpBC,IAAgB,EAChBC,SAAoB,EACpBC,kBAAqC,EACrCC,MAAkB,EAClBC,OAAyB,EACzBC,UAAoB,KAEpB,IAAIlB,aAAa,CACfY,SAAS,EACTA,SAAS,CAACD,YAAY,CACpBV,OAAO,CAACW,SAAS,EAAE,YAAY,EAAEC,IAAI,CAAC,EACtCC,SAAS,CAACK,GAAG,CAAC,CAAC;EAAEC,CAAC;EAAEC;AAAE,CAAC,KAAK,CAACD,CAAC,EAAEC,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,CAAC,EAC1C,CAACP,kBAAkB,IAAI,EAAE,EAAEI,GAAG,CAAC,CAAC;EAAEC,CAAC;EAAEC;AAAE,CAAC,KAAK,CAACD,CAAC,EAAEC,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,CAAC,EAC3D,CAACN,MAAM,GAAG,IAAI,GAAGA,MAAM,CAACO,MAAM,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKvB,MAAM,CAACsB,CAAC,EAAEC,CAAC,CAAC,CAAC,EACtDR,OAAO,EACPC,UACF,CACF,CAAC","ignoreList":[]}
@@ -59,5 +59,5 @@ export function Mock(CanvasKit: any): {
59
59
  useSVG: () => null;
60
60
  useVideo: () => null;
61
61
  readonly __esModule: boolean;
62
- readonly Skia: import("../../../src/skia/types").Skia;
62
+ readonly Skia: import("../../../src/headless").Skia;
63
63
  };
@@ -1,2 +1,2 @@
1
1
  export const __esModule: boolean;
2
- export const Skia: import("../../../src/skia/types").Skia;
2
+ export const Skia: import("../../../src/headless").Skia;
@@ -12,5 +12,5 @@ export class BaseHostObject extends Host {
12
12
  export class HostObject extends BaseHostObject {
13
13
  static fromValue(value: any): any;
14
14
  }
15
- export function getEnum(e: any, v: any): any;
16
- export function optEnum(e: any, value: any): any;
15
+ export function getEnum(CanvasKit: any, name: any, v: any): any;
16
+ export function optEnum(CanvasKit: any, name: any, v: any): any;
@@ -1,4 +1,5 @@
1
1
  export * from "../renderer/components";
2
+ export * from "../skia/types";
2
3
  export function makeOffscreenSurface(width: any, height: any): any;
3
4
  export function getSkiaExports(): {
4
5
  Skia: any;
@@ -148,7 +148,7 @@ export function Mock(CanvasKit: any): {
148
148
  y: any;
149
149
  };
150
150
  interpolatePaths: (value: any, input: any, outputRange: any, options: any, output: any) => any;
151
- Skia: import("../../../src/skia/types").Skia;
151
+ Skia: import("../../../src/headless").Skia;
152
152
  loadData: (source: any, factory: any, onError: any) => Promise<any>;
153
153
  useCollectionLoading: (source: any, loader: any) => null;
154
154
  matchFont: (inputStyle?: {}, fontMgr?: import("../../..").SkFontMgr) => import("../../..").SkFont;
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * Declares the SkiaApi as an available object in the global scope
3
3
  */
4
- export const Skia: import("../../../src/skia/types").Skia;
4
+ export const Skia: import("../../../src/headless").Skia;
@@ -11,5 +11,5 @@ export class BaseHostObject extends Host {
11
11
  export class HostObject extends BaseHostObject {
12
12
  static fromValue(value: any): any;
13
13
  }
14
- export function getEnum(e: any, v: any): any;
15
- export function optEnum(e: any, value: any): any;
14
+ export function getEnum(CanvasKit: any, name: any, v: any): any;
15
+ export function optEnum(CanvasKit: any, name: any, v: any): any;
@@ -15,4 +15,22 @@ interface CheckImageOptions {
15
15
  shouldFail?: boolean;
16
16
  }
17
17
  export declare const checkImage: (image: SkImage, relPath: string, opts?: CheckImageOptions) => number;
18
+ declare global {
19
+ namespace jest {
20
+ interface Matchers<R> {
21
+ /**
22
+ * Checks if values are approximately equal within the given tolerance.
23
+ * Works with:
24
+ * - Single numbers
25
+ * - Arrays of numbers
26
+ * - Float32Arrays
27
+ * - SVG path strings (compares numeric values with tolerance)
28
+ *
29
+ * @param expected - The expected value to compare against
30
+ * @param tolerance - The maximum allowed difference between elements (default: 0.01)
31
+ */
32
+ toBeApproximatelyEqual(expected: number | number[] | Float32Array | string, tolerance?: number): R;
33
+ }
34
+ }
35
+ }
18
36
  export {};
@@ -1,6 +1,7 @@
1
1
  import type { ReactNode } from "react";
2
2
  import type { SkSurface } from "../skia";
3
3
  export * from "../renderer/components";
4
+ export * from "../skia/types";
4
5
  export declare const makeOffscreenSurface: (width: number, height: number) => SkSurface;
5
6
  export declare const getSkiaExports: () => {
6
7
  Skia: import("../skia/types").Skia;
@@ -1,4 +1,4 @@
1
- import type { CanvasKit, EmbindEnumEntity, EmbindEnum } from "canvaskit-wasm";
1
+ import type { CanvasKit, EmbindEnumEntity } from "canvaskit-wasm";
2
2
  import type { SkJSIInstance } from "../types";
3
3
  export declare const throwNotImplementedOnRNWeb: <T>() => T;
4
4
  export declare abstract class Host {
@@ -14,5 +14,5 @@ export declare abstract class BaseHostObject<T, N extends string> extends Host i
14
14
  export declare abstract class HostObject<T, N extends string> extends BaseHostObject<T, N> {
15
15
  static fromValue<T>(value: SkJSIInstance<string>): T;
16
16
  }
17
- export declare const getEnum: (e: EmbindEnum, v: number) => EmbindEnumEntity;
18
- export declare const optEnum: (e: EmbindEnum, value: number | undefined) => EmbindEnumEntity | undefined;
17
+ export declare const getEnum: (CanvasKit: CanvasKit, name: keyof CanvasKit, v: number) => EmbindEnumEntity;
18
+ export declare const optEnum: (CanvasKit: CanvasKit, name: keyof CanvasKit, v: number | undefined) => EmbindEnumEntity | undefined;
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "setup-skia-web": "scripts/setup-canvaskit.js"
9
9
  },
10
10
  "title": "React Native Skia",
11
- "version": "1.12.1",
11
+ "version": "1.12.3",
12
12
  "description": "High-performance React Native Graphics using Skia",
13
13
  "main": "lib/module/index.js",
14
14
  "react-native": "src/index.ts",
@@ -29,7 +29,7 @@
29
29
  "jestSetup.mjs",
30
30
  "jestEnv.mjs",
31
31
  "cpp/**/*.{h,cpp}",
32
- "ios/**",
32
+ "apple/**",
33
33
  "libs/apple/*.xcframework/**",
34
34
  "react-native-skia.podspec",
35
35
  "scripts/setup-canvaskit.js",
@@ -46,7 +46,7 @@
46
46
  "build-skia": "ts-node ./scripts/build-skia.ts",
47
47
  "copy-skia-headers": "ts-node ./scripts/copy-skia-headers.ts",
48
48
  "clang-format": "yarn clang-format-ios && yarn clang-format-android && yarn clang-format-common",
49
- "clang-format-ios": "find ios/ -iname '*.h' -o -iname '*.mm' -o -iname '*.cpp' | xargs clang-format -i",
49
+ "clang-format-ios": "find apple/ -iname '*.h' -o -iname '*.mm' -o -iname '*.cpp' | xargs clang-format -i",
50
50
  "clang-format-android": "find android/cpp/ -iname '*.h' -o -iname '*.m' -o -iname '*.cpp' | xargs clang-format -i",
51
51
  "clang-format-common": "find cpp/ \\( -path 'cpp//skia' -prune \\) -o \\( -iname '*.h' -o -iname '*.m' -o -iname '*.cpp' \\) -print | xargs clang-format -i",
52
52
  "workflow-copy-libs": "yarn ts-node ./scripts/workflow-copy-libs.ts",
@@ -122,7 +122,7 @@
122
122
  "ws": "8.18.0"
123
123
  },
124
124
  "dependencies": {
125
- "canvaskit-wasm": "0.39.1",
125
+ "canvaskit-wasm": "0.40.0",
126
126
  "react-reconciler": "0.27.0"
127
127
  },
128
128
  "eslintIgnore": [
@@ -1,3 +1,4 @@
1
+ /* eslint-disable max-len */
1
2
  import path from "path";
2
3
  import fs from "fs";
3
4
 
@@ -97,8 +98,69 @@ export const checkImage = (
97
98
  return 0;
98
99
  };
99
100
 
101
+ declare global {
102
+ // eslint-disable-next-line @typescript-eslint/no-namespace
103
+ namespace jest {
104
+ interface Matchers<R> {
105
+ /**
106
+ * Checks if values are approximately equal within the given tolerance.
107
+ * Works with:
108
+ * - Single numbers
109
+ * - Arrays of numbers
110
+ * - Float32Arrays
111
+ * - SVG path strings (compares numeric values with tolerance)
112
+ *
113
+ * @param expected - The expected value to compare against
114
+ * @param tolerance - The maximum allowed difference between elements (default: 0.01)
115
+ */
116
+ toBeApproximatelyEqual(
117
+ expected: number | number[] | Float32Array | string,
118
+ tolerance?: number
119
+ ): R;
120
+ }
121
+ }
122
+ }
123
+
100
124
  expect.extend({
101
- toBeApproximatelyEqual(_received, _argument, tolerance = 0.1) {
125
+ toBeApproximatelyEqual(_received, _argument, tolerance = 0.01) {
126
+ // Handle SVG path strings
127
+ if (typeof _received === "string" && typeof _argument === "string") {
128
+ // Parse SVG path strings to extract numerical values
129
+ const parsePathString = (pathStr: string): number[] => {
130
+ // Extract all numeric values (including decimals) from the path string
131
+ const numbers = pathStr.match(/-?\d+(?:\.\d+)?/g) || [];
132
+ return numbers.map(Number);
133
+ };
134
+
135
+ const receivedPoints = parsePathString(_received);
136
+ const argumentPoints = parsePathString(_argument);
137
+
138
+ if (receivedPoints.length !== argumentPoints.length) {
139
+ return {
140
+ pass: false,
141
+ message: () =>
142
+ `SVG paths have different number of points: ${receivedPoints.length} vs ${argumentPoints.length}`,
143
+ };
144
+ }
145
+
146
+ for (let i = 0; i < receivedPoints.length; i++) {
147
+ if (
148
+ isNaN(receivedPoints[i]) ||
149
+ isNaN(argumentPoints[i]) ||
150
+ Math.abs(receivedPoints[i] - argumentPoints[i]) > tolerance
151
+ ) {
152
+ return {
153
+ pass: false,
154
+ message: () =>
155
+ `SVG path points differ more than ${tolerance} at position ${i}: ${receivedPoints[i]} vs ${argumentPoints[i]}`,
156
+ };
157
+ }
158
+ }
159
+
160
+ return { pass: true, message: () => "SVG paths are approximately equal" };
161
+ }
162
+
163
+ // Original logic for numbers and arrays
102
164
  const received =
103
165
  Array.isArray(_received) || _received instanceof Float32Array
104
166
  ? _received
@@ -110,6 +172,7 @@ expect.extend({
110
172
  if (received.length !== argument.length) {
111
173
  return { pass: false, message: () => "Arrays have different lengths" };
112
174
  }
175
+
113
176
  for (let i = 0; i < received.length; i++) {
114
177
  if (
115
178
  isNaN(argument[i]) ||
@@ -127,3 +190,6 @@ ${diffString}`,
127
190
  return { pass: true, message: () => "Arrays are approximately equal" };
128
191
  },
129
192
  });
193
+
194
+ // Export empty object to make this a module
195
+ export {};
@@ -3,11 +3,12 @@
3
3
  import CanvasKitInit from "canvaskit-wasm/bin/full/canvaskit";
4
4
  import type { ReactNode } from "react";
5
5
 
6
- import { JsiSkApi } from "../skia/web";
7
6
  import type { SkSurface } from "../skia";
7
+ import { JsiSkApi } from "../skia/web";
8
8
  import { SkiaSGRoot } from "../sksg/Reconciler";
9
9
 
10
10
  export * from "../renderer/components";
11
+ export * from "../skia/types";
11
12
 
12
13
  let Skia: ReturnType<typeof JsiSkApi>;
13
14
 
@@ -217,8 +217,7 @@ describe("Matrix4", () => {
217
217
  },
218
218
  { matrix }
219
219
  );
220
- // eslint-disable-next-line @typescript-eslint/no-explicit-any, jest/valid-expect
221
- (expect(result) as any).toBeApproximatelyEqual(
220
+ expect(result).toBeApproximatelyEqual(
222
221
  toMatrix3(
223
222
  processTransform3d([
224
223
  { translate: [width / 2, height / 2] },
@@ -110,7 +110,7 @@ describe("Paths", () => {
110
110
  path.trim(0.0001, 1.00001, false);
111
111
  return path.toSVGString();
112
112
  });
113
- expect(result).toEqual("M20 20.0048L20 40L40 20");
113
+ expect(result).toBeApproximatelyEqual("M20 20.0048L20 40L40 20");
114
114
  });
115
115
  it("should accept [0, 1.2] as trim value", async () => {
116
116
  const result = await surface.eval((Skia) => {
@@ -142,17 +142,19 @@ describe("Paths", () => {
142
142
  path.interpolate(path2, 1.0001)!.toSVGString(),
143
143
  path.interpolate(path2, 1.2)!.toSVGString(),
144
144
  path.interpolate(path2, 2)!.toSVGString(),
145
- ];
145
+ ].join(" ");
146
146
  });
147
- expect(result).toEqual([
148
- "M-20 -20L20 0L0 60",
149
- "M0 0L20 20L20 40",
150
- "M0.002 0.002L20 20.002L20.002 39.998",
151
- "M20 20L20 40L40 20",
152
- "M20.002 20.002L20 40.002L40.002 19.998",
153
- "M24 24L20 44L44 16",
154
- "M40 40L20 60L60 0",
155
- ]);
147
+ expect(result).toBeApproximatelyEqual(
148
+ [
149
+ "M-20 -20L20 0L0 60",
150
+ "M0 0L20 20L20 40",
151
+ "M0.002 0.002L20 20.002L20.002 39.998",
152
+ "M20 20L20 40L40 20",
153
+ "M20.002 20.002L20 40.002L40.002 19.998",
154
+ "M24 24L20 44L44 16",
155
+ "M40 40L20 60L60 0",
156
+ ].join(" ")
157
+ );
156
158
  });
157
159
  it("should add a path", async () => {
158
160
  const result = await surface.eval((Skia) => {