@shopify/react-native-skia 1.7.7 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (663) hide show
  1. package/lib/commonjs/dom/nodes/JsiSkDOM.d.ts +3 -7
  2. package/lib/commonjs/dom/nodes/JsiSkDOM.js +58 -70
  3. package/lib/commonjs/dom/nodes/JsiSkDOM.js.map +1 -1
  4. package/lib/commonjs/dom/nodes/datatypes/Circle.js +4 -1
  5. package/lib/commonjs/dom/nodes/datatypes/Circle.js.map +1 -1
  6. package/lib/commonjs/dom/nodes/datatypes/Enum.js +5 -2
  7. package/lib/commonjs/dom/nodes/datatypes/Enum.js.map +1 -1
  8. package/lib/commonjs/dom/nodes/datatypes/Fitting.js +10 -1
  9. package/lib/commonjs/dom/nodes/datatypes/Fitting.js.map +1 -1
  10. package/lib/commonjs/dom/nodes/datatypes/Gradient.js +17 -10
  11. package/lib/commonjs/dom/nodes/datatypes/Gradient.js.map +1 -1
  12. package/lib/commonjs/dom/nodes/datatypes/Path.js +4 -1
  13. package/lib/commonjs/dom/nodes/datatypes/Path.js.map +1 -1
  14. package/lib/commonjs/dom/nodes/datatypes/Radius.js +2 -1
  15. package/lib/commonjs/dom/nodes/datatypes/Radius.js.map +1 -1
  16. package/lib/commonjs/dom/nodes/datatypes/Rect.js +16 -2
  17. package/lib/commonjs/dom/nodes/datatypes/Rect.js.map +1 -1
  18. package/lib/commonjs/dom/nodes/datatypes/Transform.js +4 -1
  19. package/lib/commonjs/dom/nodes/datatypes/Transform.js.map +1 -1
  20. package/lib/commonjs/dom/types/Node.d.ts +2 -5
  21. package/lib/commonjs/dom/types/Node.js.map +1 -1
  22. package/lib/commonjs/dom/types/index.d.ts +0 -2
  23. package/lib/commonjs/dom/types/index.js +0 -22
  24. package/lib/commonjs/dom/types/index.js.map +1 -1
  25. package/lib/commonjs/headless/index.js +3 -5
  26. package/lib/commonjs/headless/index.js.map +1 -1
  27. package/lib/commonjs/index.d.ts +1 -0
  28. package/lib/commonjs/index.js +12 -0
  29. package/lib/commonjs/index.js.map +1 -1
  30. package/lib/commonjs/renderer/Canvas.js +9 -26
  31. package/lib/commonjs/renderer/Canvas.js.map +1 -1
  32. package/lib/commonjs/renderer/Canvas.web.d.ts +10 -0
  33. package/lib/commonjs/renderer/Canvas.web.js +110 -0
  34. package/lib/commonjs/renderer/Canvas.web.js.map +1 -0
  35. package/lib/commonjs/renderer/Canvas2.d.ts +10 -0
  36. package/lib/commonjs/renderer/Canvas2.js +104 -0
  37. package/lib/commonjs/renderer/Canvas2.js.map +1 -0
  38. package/lib/commonjs/renderer/Canvas2.web.d.ts +3 -0
  39. package/lib/commonjs/renderer/Canvas2.web.js +9 -0
  40. package/lib/commonjs/renderer/Canvas2.web.js.map +1 -0
  41. package/lib/commonjs/renderer/Container.d.ts +3 -5
  42. package/lib/commonjs/renderer/Container.js +2 -7
  43. package/lib/commonjs/renderer/Container.js.map +1 -1
  44. package/lib/commonjs/renderer/HostComponents.d.ts +3 -6
  45. package/lib/commonjs/renderer/HostComponents.js +1 -4
  46. package/lib/commonjs/renderer/HostComponents.js.map +1 -1
  47. package/lib/commonjs/renderer/Offscreen.js +3 -5
  48. package/lib/commonjs/renderer/Offscreen.js.map +1 -1
  49. package/lib/commonjs/renderer/Reconciler.d.ts +2 -3
  50. package/lib/commonjs/renderer/Reconciler.js +2 -2
  51. package/lib/commonjs/renderer/Reconciler.js.map +1 -1
  52. package/lib/commonjs/skia/types/Shader/Shader.js +6 -1
  53. package/lib/commonjs/skia/types/Shader/Shader.js.map +1 -1
  54. package/lib/commonjs/sksg/Container.js +2 -2
  55. package/lib/commonjs/sksg/Container.js.map +1 -1
  56. package/lib/commonjs/sksg/DeclarationContext.d.ts +56 -0
  57. package/lib/commonjs/sksg/DeclarationContext.js +77 -0
  58. package/lib/commonjs/sksg/DeclarationContext.js.map +1 -0
  59. package/lib/commonjs/sksg/DrawingContext.d.ts +9 -12
  60. package/lib/commonjs/sksg/DrawingContext.js +63 -77
  61. package/lib/commonjs/sksg/DrawingContext.js.map +1 -1
  62. package/lib/commonjs/sksg/Reconciler.d.ts +2 -0
  63. package/lib/commonjs/sksg/Reconciler.js +7 -0
  64. package/lib/commonjs/sksg/Reconciler.js.map +1 -1
  65. package/lib/commonjs/sksg/nodes/colorFilters.d.ts +9 -6
  66. package/lib/commonjs/sksg/nodes/colorFilters.js +26 -2
  67. package/lib/commonjs/sksg/nodes/colorFilters.js.map +1 -1
  68. package/lib/commonjs/sksg/nodes/context.js +58 -112
  69. package/lib/commonjs/sksg/nodes/context.js.map +1 -1
  70. package/lib/commonjs/sksg/nodes/drawings.d.ts +1 -2
  71. package/lib/commonjs/sksg/nodes/drawings.js +43 -6
  72. package/lib/commonjs/sksg/nodes/drawings.js.map +1 -1
  73. package/lib/commonjs/sksg/nodes/imageFilters.d.ts +4 -1
  74. package/lib/commonjs/sksg/nodes/imageFilters.js +64 -2
  75. package/lib/commonjs/sksg/nodes/imageFilters.js.map +1 -1
  76. package/lib/commonjs/sksg/nodes/paint.d.ts +2 -1
  77. package/lib/commonjs/sksg/nodes/paint.js +2 -1
  78. package/lib/commonjs/sksg/nodes/paint.js.map +1 -1
  79. package/lib/commonjs/sksg/nodes/pathEffects.d.ts +10 -7
  80. package/lib/commonjs/sksg/nodes/pathEffects.js +30 -3
  81. package/lib/commonjs/sksg/nodes/pathEffects.js.map +1 -1
  82. package/lib/commonjs/sksg/nodes/shaders.d.ts +2 -1
  83. package/lib/commonjs/sksg/nodes/shaders.js +18 -1
  84. package/lib/commonjs/sksg/nodes/shaders.js.map +1 -1
  85. package/lib/commonjs/sksg/nodes/utils.js +4 -1
  86. package/lib/commonjs/sksg/nodes/utils.js.map +1 -1
  87. package/lib/commonjs/views/SkiaDomView.web.d.ts +0 -7
  88. package/lib/commonjs/views/SkiaDomView.web.js +0 -30
  89. package/lib/commonjs/views/SkiaDomView.web.js.map +1 -1
  90. package/lib/commonjs/views/SkiaPictureView.web.d.ts +3 -1
  91. package/lib/commonjs/views/SkiaPictureView.web.js +10 -0
  92. package/lib/commonjs/views/SkiaPictureView.web.js.map +1 -1
  93. package/lib/commonjs/views/types.d.ts +2 -7
  94. package/lib/commonjs/views/types.js.map +1 -1
  95. package/lib/module/dom/nodes/JsiSkDOM.d.ts +3 -7
  96. package/lib/module/dom/nodes/JsiSkDOM.js +58 -70
  97. package/lib/module/dom/nodes/JsiSkDOM.js.map +1 -1
  98. package/lib/module/dom/nodes/datatypes/Circle.js +4 -2
  99. package/lib/module/dom/nodes/datatypes/Circle.js.map +1 -1
  100. package/lib/module/dom/nodes/datatypes/Enum.js +4 -2
  101. package/lib/module/dom/nodes/datatypes/Enum.js.map +1 -1
  102. package/lib/module/dom/nodes/datatypes/Fitting.js +10 -2
  103. package/lib/module/dom/nodes/datatypes/Fitting.js.map +1 -1
  104. package/lib/module/dom/nodes/datatypes/Gradient.js +17 -11
  105. package/lib/module/dom/nodes/datatypes/Gradient.js.map +1 -1
  106. package/lib/module/dom/nodes/datatypes/Path.js +4 -2
  107. package/lib/module/dom/nodes/datatypes/Path.js.map +1 -1
  108. package/lib/module/dom/nodes/datatypes/Radius.js +2 -2
  109. package/lib/module/dom/nodes/datatypes/Radius.js.map +1 -1
  110. package/lib/module/dom/nodes/datatypes/Rect.js +15 -2
  111. package/lib/module/dom/nodes/datatypes/Rect.js.map +1 -1
  112. package/lib/module/dom/nodes/datatypes/Transform.js +4 -2
  113. package/lib/module/dom/nodes/datatypes/Transform.js.map +1 -1
  114. package/lib/module/dom/types/Node.d.ts +2 -5
  115. package/lib/module/dom/types/Node.js.map +1 -1
  116. package/lib/module/dom/types/index.d.ts +0 -2
  117. package/lib/module/dom/types/index.js +0 -2
  118. package/lib/module/dom/types/index.js.map +1 -1
  119. package/lib/module/headless/index.js +3 -5
  120. package/lib/module/headless/index.js.map +1 -1
  121. package/lib/module/index.d.ts +1 -0
  122. package/lib/module/index.js +1 -0
  123. package/lib/module/index.js.map +1 -1
  124. package/lib/module/renderer/Canvas.js +9 -26
  125. package/lib/module/renderer/Canvas.js.map +1 -1
  126. package/lib/module/renderer/Canvas.web.d.ts +10 -0
  127. package/lib/module/renderer/Canvas.web.js +105 -0
  128. package/lib/module/renderer/Canvas.web.js.map +1 -0
  129. package/lib/module/renderer/Canvas2.d.ts +10 -0
  130. package/lib/module/renderer/Canvas2.js +97 -0
  131. package/lib/module/renderer/Canvas2.js.map +1 -0
  132. package/lib/module/renderer/Canvas2.web.d.ts +3 -0
  133. package/lib/module/renderer/Canvas2.web.js +3 -0
  134. package/lib/module/renderer/Canvas2.web.js.map +1 -0
  135. package/lib/module/renderer/Container.d.ts +3 -5
  136. package/lib/module/renderer/Container.js +2 -7
  137. package/lib/module/renderer/Container.js.map +1 -1
  138. package/lib/module/renderer/HostComponents.d.ts +3 -6
  139. package/lib/module/renderer/HostComponents.js +0 -3
  140. package/lib/module/renderer/HostComponents.js.map +1 -1
  141. package/lib/module/renderer/Offscreen.js +3 -5
  142. package/lib/module/renderer/Offscreen.js.map +1 -1
  143. package/lib/module/renderer/Reconciler.d.ts +2 -3
  144. package/lib/module/renderer/Reconciler.js +2 -2
  145. package/lib/module/renderer/Reconciler.js.map +1 -1
  146. package/lib/module/skia/types/Shader/Shader.js +6 -2
  147. package/lib/module/skia/types/Shader/Shader.js.map +1 -1
  148. package/lib/module/sksg/Container.js +3 -3
  149. package/lib/module/sksg/Container.js.map +1 -1
  150. package/lib/module/sksg/DeclarationContext.d.ts +56 -0
  151. package/lib/module/sksg/DeclarationContext.js +69 -0
  152. package/lib/module/sksg/DeclarationContext.js.map +1 -0
  153. package/lib/module/sksg/DrawingContext.d.ts +9 -12
  154. package/lib/module/sksg/DrawingContext.js +54 -69
  155. package/lib/module/sksg/DrawingContext.js.map +1 -1
  156. package/lib/module/sksg/Reconciler.d.ts +2 -0
  157. package/lib/module/sksg/Reconciler.js +7 -0
  158. package/lib/module/sksg/Reconciler.js.map +1 -1
  159. package/lib/module/sksg/nodes/colorFilters.d.ts +9 -6
  160. package/lib/module/sksg/nodes/colorFilters.js +24 -2
  161. package/lib/module/sksg/nodes/colorFilters.js.map +1 -1
  162. package/lib/module/sksg/nodes/context.js +45 -101
  163. package/lib/module/sksg/nodes/context.js.map +1 -1
  164. package/lib/module/sksg/nodes/drawings.d.ts +1 -2
  165. package/lib/module/sksg/nodes/drawings.js +42 -5
  166. package/lib/module/sksg/nodes/drawings.js.map +1 -1
  167. package/lib/module/sksg/nodes/imageFilters.d.ts +4 -1
  168. package/lib/module/sksg/nodes/imageFilters.js +61 -2
  169. package/lib/module/sksg/nodes/imageFilters.js.map +1 -1
  170. package/lib/module/sksg/nodes/paint.d.ts +2 -1
  171. package/lib/module/sksg/nodes/paint.js +2 -2
  172. package/lib/module/sksg/nodes/paint.js.map +1 -1
  173. package/lib/module/sksg/nodes/pathEffects.d.ts +10 -7
  174. package/lib/module/sksg/nodes/pathEffects.js +28 -3
  175. package/lib/module/sksg/nodes/pathEffects.js.map +1 -1
  176. package/lib/module/sksg/nodes/shaders.d.ts +2 -1
  177. package/lib/module/sksg/nodes/shaders.js +18 -2
  178. package/lib/module/sksg/nodes/shaders.js.map +1 -1
  179. package/lib/module/sksg/nodes/utils.js +4 -2
  180. package/lib/module/sksg/nodes/utils.js.map +1 -1
  181. package/lib/module/views/SkiaDomView.web.d.ts +0 -7
  182. package/lib/module/views/SkiaDomView.web.js +1 -24
  183. package/lib/module/views/SkiaDomView.web.js.map +1 -1
  184. package/lib/module/views/SkiaPictureView.web.d.ts +3 -1
  185. package/lib/module/views/SkiaPictureView.web.js +10 -0
  186. package/lib/module/views/SkiaPictureView.web.js.map +1 -1
  187. package/lib/module/views/types.d.ts +2 -7
  188. package/lib/module/views/types.js.map +1 -1
  189. package/lib/typescript/lib/commonjs/dom/nodes/JsiSkDOM.d.ts +57 -67
  190. package/lib/typescript/lib/commonjs/renderer/Canvas.web.d.ts +3 -0
  191. package/lib/typescript/lib/commonjs/renderer/Canvas2.d.ts +3 -0
  192. package/lib/typescript/lib/commonjs/{dom/nodes/drawings/index.d.ts → renderer/Canvas2.web.d.ts} +1 -0
  193. package/lib/typescript/lib/commonjs/renderer/Container.d.ts +1 -2
  194. package/lib/typescript/lib/commonjs/renderer/HostComponents.d.ts +0 -1
  195. package/lib/typescript/lib/commonjs/renderer/Reconciler.d.ts +1 -1
  196. package/lib/typescript/lib/commonjs/sksg/DeclarationContext.d.ts +53 -0
  197. package/lib/typescript/lib/commonjs/sksg/DrawingContext.d.ts +8 -12
  198. package/lib/typescript/lib/commonjs/sksg/Reconciler.d.ts +2 -0
  199. package/lib/typescript/lib/commonjs/sksg/nodes/colorFilters.d.ts +1 -0
  200. package/lib/typescript/lib/commonjs/sksg/nodes/drawings.d.ts +0 -1
  201. package/lib/typescript/lib/commonjs/sksg/nodes/imageFilters.d.ts +2 -0
  202. package/lib/typescript/lib/commonjs/sksg/nodes/pathEffects.d.ts +1 -0
  203. package/lib/typescript/lib/commonjs/views/SkiaDomView.web.d.ts +0 -5
  204. package/lib/typescript/lib/commonjs/views/SkiaPictureView.web.d.ts +2 -0
  205. package/lib/typescript/lib/module/dom/nodes/JsiSkDOM.d.ts +57 -117
  206. package/lib/typescript/lib/module/dom/types/index.d.ts +0 -2
  207. package/lib/typescript/lib/module/index.d.ts +1 -0
  208. package/lib/typescript/lib/module/mock/index.d.ts +0 -3
  209. package/lib/typescript/lib/module/renderer/Canvas.web.d.ts +1 -0
  210. package/lib/typescript/lib/module/renderer/Canvas2.d.ts +1 -0
  211. package/lib/typescript/lib/module/renderer/Canvas2.web.d.ts +1 -0
  212. package/lib/typescript/lib/module/renderer/Container.d.ts +3 -4
  213. package/lib/typescript/lib/module/renderer/HostComponents.d.ts +0 -1
  214. package/lib/typescript/lib/module/renderer/Reconciler.d.ts +2 -2
  215. package/lib/typescript/lib/module/sksg/DeclarationContext.d.ts +52 -0
  216. package/lib/typescript/lib/module/sksg/DrawingContext.d.ts +8 -13
  217. package/lib/typescript/lib/module/sksg/Reconciler.d.ts +2 -0
  218. package/lib/typescript/lib/module/sksg/nodes/colorFilters.d.ts +1 -0
  219. package/lib/typescript/lib/module/sksg/nodes/drawings.d.ts +0 -1
  220. package/lib/typescript/lib/module/sksg/nodes/imageFilters.d.ts +2 -0
  221. package/lib/typescript/lib/module/sksg/nodes/pathEffects.d.ts +1 -0
  222. package/lib/typescript/lib/module/views/SkiaDomView.web.d.ts +0 -4
  223. package/lib/typescript/lib/module/views/SkiaPictureView.web.d.ts +2 -0
  224. package/lib/typescript/src/dom/nodes/JsiSkDOM.d.ts +3 -7
  225. package/lib/typescript/src/dom/types/Node.d.ts +2 -5
  226. package/lib/typescript/src/dom/types/index.d.ts +0 -2
  227. package/lib/typescript/src/index.d.ts +1 -0
  228. package/lib/typescript/src/renderer/Canvas.web.d.ts +10 -0
  229. package/lib/typescript/src/renderer/Canvas2.d.ts +10 -0
  230. package/lib/typescript/src/renderer/Canvas2.web.d.ts +3 -0
  231. package/lib/typescript/src/renderer/Container.d.ts +3 -5
  232. package/lib/typescript/src/renderer/HostComponents.d.ts +3 -6
  233. package/lib/typescript/src/renderer/Reconciler.d.ts +2 -3
  234. package/lib/typescript/src/sksg/DeclarationContext.d.ts +56 -0
  235. package/lib/typescript/src/sksg/DrawingContext.d.ts +9 -12
  236. package/lib/typescript/src/sksg/Reconciler.d.ts +2 -0
  237. package/lib/typescript/src/sksg/nodes/colorFilters.d.ts +9 -6
  238. package/lib/typescript/src/sksg/nodes/drawings.d.ts +1 -2
  239. package/lib/typescript/src/sksg/nodes/imageFilters.d.ts +4 -1
  240. package/lib/typescript/src/sksg/nodes/paint.d.ts +2 -1
  241. package/lib/typescript/src/sksg/nodes/pathEffects.d.ts +10 -7
  242. package/lib/typescript/src/sksg/nodes/shaders.d.ts +2 -1
  243. package/lib/typescript/src/views/SkiaDomView.web.d.ts +0 -7
  244. package/lib/typescript/src/views/SkiaPictureView.web.d.ts +3 -1
  245. package/lib/typescript/src/views/types.d.ts +2 -7
  246. package/package.json +1 -1
  247. package/src/dom/nodes/JsiSkDOM.ts +58 -239
  248. package/src/dom/nodes/datatypes/Circle.ts +2 -2
  249. package/src/dom/nodes/datatypes/Enum.ts +4 -4
  250. package/src/dom/nodes/datatypes/Fitting.ts +5 -2
  251. package/src/dom/nodes/datatypes/Gradient.ts +12 -9
  252. package/src/dom/nodes/datatypes/Path.ts +2 -2
  253. package/src/dom/nodes/datatypes/Radius.ts +1 -2
  254. package/src/dom/nodes/datatypes/Rect.ts +7 -2
  255. package/src/dom/nodes/datatypes/Transform.ts +4 -2
  256. package/src/dom/types/Node.ts +2 -5
  257. package/src/dom/types/index.ts +0 -2
  258. package/src/headless/index.ts +3 -5
  259. package/src/index.ts +1 -0
  260. package/src/renderer/Canvas.tsx +12 -31
  261. package/src/renderer/Canvas.web.tsx +134 -0
  262. package/src/renderer/Canvas2.tsx +128 -0
  263. package/src/renderer/Canvas2.web.tsx +6 -0
  264. package/src/renderer/Container.tsx +4 -16
  265. package/src/renderer/HostComponents.ts +2 -10
  266. package/src/renderer/Offscreen.tsx +3 -6
  267. package/src/renderer/Reconciler.tsx +1 -5
  268. package/src/skia/types/Shader/Shader.ts +3 -2
  269. package/src/sksg/Container.ts +3 -3
  270. package/src/sksg/DeclarationContext.ts +85 -0
  271. package/src/sksg/DrawingContext.ts +81 -76
  272. package/src/sksg/Reconciler.ts +8 -1
  273. package/src/sksg/__tests__/MockDeclaration.ts +0 -2
  274. package/src/sksg/nodes/colorFilters.ts +22 -3
  275. package/src/sksg/nodes/context.ts +46 -123
  276. package/src/sksg/nodes/drawings.ts +21 -9
  277. package/src/sksg/nodes/imageFilters.ts +55 -3
  278. package/src/sksg/nodes/paint.ts +3 -3
  279. package/src/sksg/nodes/pathEffects.ts +27 -4
  280. package/src/sksg/nodes/shaders.ts +10 -3
  281. package/src/sksg/nodes/utils.ts +2 -2
  282. package/src/views/SkiaDomView.web.tsx +0 -23
  283. package/src/views/SkiaPictureView.web.tsx +10 -1
  284. package/src/views/types.ts +2 -8
  285. package/lib/commonjs/dom/nodes/DrawingNode.d.ts +0 -14
  286. package/lib/commonjs/dom/nodes/DrawingNode.js +0 -69
  287. package/lib/commonjs/dom/nodes/DrawingNode.js.map +0 -1
  288. package/lib/commonjs/dom/nodes/GroupNode.d.ts +0 -7
  289. package/lib/commonjs/dom/nodes/GroupNode.js +0 -22
  290. package/lib/commonjs/dom/nodes/GroupNode.js.map +0 -1
  291. package/lib/commonjs/dom/nodes/LayerNode.d.ts +0 -8
  292. package/lib/commonjs/dom/nodes/LayerNode.js +0 -39
  293. package/lib/commonjs/dom/nodes/LayerNode.js.map +0 -1
  294. package/lib/commonjs/dom/nodes/Node.d.ts +0 -34
  295. package/lib/commonjs/dom/nodes/Node.js +0 -102
  296. package/lib/commonjs/dom/nodes/Node.js.map +0 -1
  297. package/lib/commonjs/dom/nodes/PaintNode.d.ts +0 -8
  298. package/lib/commonjs/dom/nodes/PaintNode.js +0 -90
  299. package/lib/commonjs/dom/nodes/PaintNode.js.map +0 -1
  300. package/lib/commonjs/dom/nodes/RenderNode.d.ts +0 -26
  301. package/lib/commonjs/dom/nodes/RenderNode.js +0 -132
  302. package/lib/commonjs/dom/nodes/RenderNode.js.map +0 -1
  303. package/lib/commonjs/dom/nodes/drawings/AtlasNode.d.ts +0 -8
  304. package/lib/commonjs/dom/nodes/drawings/AtlasNode.js +0 -36
  305. package/lib/commonjs/dom/nodes/drawings/AtlasNode.js.map +0 -1
  306. package/lib/commonjs/dom/nodes/drawings/BackdropFilterNode.d.ts +0 -8
  307. package/lib/commonjs/dom/nodes/drawings/BackdropFilterNode.js +0 -42
  308. package/lib/commonjs/dom/nodes/drawings/BackdropFilterNode.js.map +0 -1
  309. package/lib/commonjs/dom/nodes/drawings/Box.d.ts +0 -15
  310. package/lib/commonjs/dom/nodes/drawings/Box.js +0 -81
  311. package/lib/commonjs/dom/nodes/drawings/Box.js.map +0 -1
  312. package/lib/commonjs/dom/nodes/drawings/CircleNode.d.ts +0 -9
  313. package/lib/commonjs/dom/nodes/drawings/CircleNode.js +0 -32
  314. package/lib/commonjs/dom/nodes/drawings/CircleNode.js.map +0 -1
  315. package/lib/commonjs/dom/nodes/drawings/DiffRectNode.d.ts +0 -8
  316. package/lib/commonjs/dom/nodes/drawings/DiffRectNode.js +0 -28
  317. package/lib/commonjs/dom/nodes/drawings/DiffRectNode.js.map +0 -1
  318. package/lib/commonjs/dom/nodes/drawings/FillNode.d.ts +0 -8
  319. package/lib/commonjs/dom/nodes/drawings/FillNode.js +0 -24
  320. package/lib/commonjs/dom/nodes/drawings/FillNode.js.map +0 -1
  321. package/lib/commonjs/dom/nodes/drawings/ImageNode.d.ts +0 -25
  322. package/lib/commonjs/dom/nodes/drawings/ImageNode.js +0 -71
  323. package/lib/commonjs/dom/nodes/drawings/ImageNode.js.map +0 -1
  324. package/lib/commonjs/dom/nodes/drawings/ImageSVG.d.ts +0 -13
  325. package/lib/commonjs/dom/nodes/drawings/ImageSVG.js +0 -57
  326. package/lib/commonjs/dom/nodes/drawings/ImageSVG.js.map +0 -1
  327. package/lib/commonjs/dom/nodes/drawings/LineNode.d.ts +0 -8
  328. package/lib/commonjs/dom/nodes/drawings/LineNode.js +0 -28
  329. package/lib/commonjs/dom/nodes/drawings/LineNode.js.map +0 -1
  330. package/lib/commonjs/dom/nodes/drawings/OvalNode.d.ts +0 -9
  331. package/lib/commonjs/dom/nodes/drawings/OvalNode.js +0 -28
  332. package/lib/commonjs/dom/nodes/drawings/OvalNode.js.map +0 -1
  333. package/lib/commonjs/dom/nodes/drawings/ParagraphNode.d.ts +0 -8
  334. package/lib/commonjs/dom/nodes/drawings/ParagraphNode.js +0 -32
  335. package/lib/commonjs/dom/nodes/drawings/ParagraphNode.js.map +0 -1
  336. package/lib/commonjs/dom/nodes/drawings/PatchNode.d.ts +0 -18
  337. package/lib/commonjs/dom/nodes/drawings/PatchNode.js +0 -53
  338. package/lib/commonjs/dom/nodes/drawings/PatchNode.js.map +0 -1
  339. package/lib/commonjs/dom/nodes/drawings/PathNode.d.ts +0 -9
  340. package/lib/commonjs/dom/nodes/drawings/PathNode.js +0 -55
  341. package/lib/commonjs/dom/nodes/drawings/PathNode.js.map +0 -1
  342. package/lib/commonjs/dom/nodes/drawings/PictureNode.d.ts +0 -8
  343. package/lib/commonjs/dom/nodes/drawings/PictureNode.js +0 -26
  344. package/lib/commonjs/dom/nodes/drawings/PictureNode.js.map +0 -1
  345. package/lib/commonjs/dom/nodes/drawings/PointsNode.d.ts +0 -8
  346. package/lib/commonjs/dom/nodes/drawings/PointsNode.js +0 -30
  347. package/lib/commonjs/dom/nodes/drawings/PointsNode.js.map +0 -1
  348. package/lib/commonjs/dom/nodes/drawings/RRectNode.d.ts +0 -10
  349. package/lib/commonjs/dom/nodes/drawings/RRectNode.js +0 -32
  350. package/lib/commonjs/dom/nodes/drawings/RRectNode.js.map +0 -1
  351. package/lib/commonjs/dom/nodes/drawings/RectNode.d.ts +0 -9
  352. package/lib/commonjs/dom/nodes/drawings/RectNode.js +0 -28
  353. package/lib/commonjs/dom/nodes/drawings/RectNode.js.map +0 -1
  354. package/lib/commonjs/dom/nodes/drawings/Text.d.ts +0 -30
  355. package/lib/commonjs/dom/nodes/drawings/Text.js +0 -159
  356. package/lib/commonjs/dom/nodes/drawings/Text.js.map +0 -1
  357. package/lib/commonjs/dom/nodes/drawings/VerticesNode.d.ts +0 -9
  358. package/lib/commonjs/dom/nodes/drawings/VerticesNode.js +0 -43
  359. package/lib/commonjs/dom/nodes/drawings/VerticesNode.js.map +0 -1
  360. package/lib/commonjs/dom/nodes/drawings/index.d.ts +0 -18
  361. package/lib/commonjs/dom/nodes/drawings/index.js +0 -204
  362. package/lib/commonjs/dom/nodes/drawings/index.js.map +0 -1
  363. package/lib/commonjs/dom/nodes/paint/BlendNode.d.ts +0 -8
  364. package/lib/commonjs/dom/nodes/paint/BlendNode.js +0 -37
  365. package/lib/commonjs/dom/nodes/paint/BlendNode.js.map +0 -1
  366. package/lib/commonjs/dom/nodes/paint/ColorFilters.d.ts +0 -35
  367. package/lib/commonjs/dom/nodes/paint/ColorFilters.js +0 -102
  368. package/lib/commonjs/dom/nodes/paint/ColorFilters.js.map +0 -1
  369. package/lib/commonjs/dom/nodes/paint/ImageFilters.d.ts +0 -42
  370. package/lib/commonjs/dom/nodes/paint/ImageFilters.js +0 -183
  371. package/lib/commonjs/dom/nodes/paint/ImageFilters.js.map +0 -1
  372. package/lib/commonjs/dom/nodes/paint/MaskFilters.d.ts +0 -8
  373. package/lib/commonjs/dom/nodes/paint/MaskFilters.js +0 -26
  374. package/lib/commonjs/dom/nodes/paint/MaskFilters.js.map +0 -1
  375. package/lib/commonjs/dom/nodes/paint/PathEffects.d.ts +0 -39
  376. package/lib/commonjs/dom/nodes/paint/PathEffects.js +0 -136
  377. package/lib/commonjs/dom/nodes/paint/PathEffects.js.map +0 -1
  378. package/lib/commonjs/dom/nodes/paint/Shaders.d.ts +0 -43
  379. package/lib/commonjs/dom/nodes/paint/Shaders.js +0 -209
  380. package/lib/commonjs/dom/nodes/paint/Shaders.js.map +0 -1
  381. package/lib/commonjs/dom/nodes/paint/index.d.ts +0 -6
  382. package/lib/commonjs/dom/nodes/paint/index.js +0 -72
  383. package/lib/commonjs/dom/nodes/paint/index.js.map +0 -1
  384. package/lib/commonjs/dom/types/DeclarationContext.d.ts +0 -29
  385. package/lib/commonjs/dom/types/DeclarationContext.js +0 -97
  386. package/lib/commonjs/dom/types/DeclarationContext.js.map +0 -1
  387. package/lib/commonjs/dom/types/DrawingContext.d.ts +0 -22
  388. package/lib/commonjs/dom/types/DrawingContext.js +0 -263
  389. package/lib/commonjs/dom/types/DrawingContext.js.map +0 -1
  390. package/lib/commonjs/renderer/DrawingContext.d.ts +0 -7
  391. package/lib/commonjs/renderer/DrawingContext.js +0 -6
  392. package/lib/commonjs/renderer/DrawingContext.js.map +0 -1
  393. package/lib/commonjs/views/SkiaJSDomView.d.ts +0 -38
  394. package/lib/commonjs/views/SkiaJSDomView.js +0 -131
  395. package/lib/commonjs/views/SkiaJSDomView.js.map +0 -1
  396. package/lib/commonjs/views/SkiaJSDomView.web.d.ts +0 -1
  397. package/lib/commonjs/views/SkiaJSDomView.web.js +0 -13
  398. package/lib/commonjs/views/SkiaJSDomView.web.js.map +0 -1
  399. package/lib/module/dom/nodes/DrawingNode.d.ts +0 -14
  400. package/lib/module/dom/nodes/DrawingNode.js +0 -62
  401. package/lib/module/dom/nodes/DrawingNode.js.map +0 -1
  402. package/lib/module/dom/nodes/GroupNode.d.ts +0 -7
  403. package/lib/module/dom/nodes/GroupNode.js +0 -15
  404. package/lib/module/dom/nodes/GroupNode.js.map +0 -1
  405. package/lib/module/dom/nodes/LayerNode.d.ts +0 -8
  406. package/lib/module/dom/nodes/LayerNode.js +0 -32
  407. package/lib/module/dom/nodes/LayerNode.js.map +0 -1
  408. package/lib/module/dom/nodes/Node.d.ts +0 -34
  409. package/lib/module/dom/nodes/Node.js +0 -94
  410. package/lib/module/dom/nodes/Node.js.map +0 -1
  411. package/lib/module/dom/nodes/PaintNode.d.ts +0 -8
  412. package/lib/module/dom/nodes/PaintNode.js +0 -83
  413. package/lib/module/dom/nodes/PaintNode.js.map +0 -1
  414. package/lib/module/dom/nodes/RenderNode.d.ts +0 -26
  415. package/lib/module/dom/nodes/RenderNode.js +0 -125
  416. package/lib/module/dom/nodes/RenderNode.js.map +0 -1
  417. package/lib/module/dom/nodes/drawings/AtlasNode.d.ts +0 -8
  418. package/lib/module/dom/nodes/drawings/AtlasNode.js +0 -29
  419. package/lib/module/dom/nodes/drawings/AtlasNode.js.map +0 -1
  420. package/lib/module/dom/nodes/drawings/BackdropFilterNode.d.ts +0 -8
  421. package/lib/module/dom/nodes/drawings/BackdropFilterNode.js +0 -35
  422. package/lib/module/dom/nodes/drawings/BackdropFilterNode.js.map +0 -1
  423. package/lib/module/dom/nodes/drawings/Box.d.ts +0 -15
  424. package/lib/module/dom/nodes/drawings/Box.js +0 -73
  425. package/lib/module/dom/nodes/drawings/Box.js.map +0 -1
  426. package/lib/module/dom/nodes/drawings/CircleNode.d.ts +0 -9
  427. package/lib/module/dom/nodes/drawings/CircleNode.js +0 -25
  428. package/lib/module/dom/nodes/drawings/CircleNode.js.map +0 -1
  429. package/lib/module/dom/nodes/drawings/DiffRectNode.d.ts +0 -8
  430. package/lib/module/dom/nodes/drawings/DiffRectNode.js +0 -21
  431. package/lib/module/dom/nodes/drawings/DiffRectNode.js.map +0 -1
  432. package/lib/module/dom/nodes/drawings/FillNode.d.ts +0 -8
  433. package/lib/module/dom/nodes/drawings/FillNode.js +0 -17
  434. package/lib/module/dom/nodes/drawings/FillNode.js.map +0 -1
  435. package/lib/module/dom/nodes/drawings/ImageNode.d.ts +0 -25
  436. package/lib/module/dom/nodes/drawings/ImageNode.js +0 -64
  437. package/lib/module/dom/nodes/drawings/ImageNode.js.map +0 -1
  438. package/lib/module/dom/nodes/drawings/ImageSVG.d.ts +0 -13
  439. package/lib/module/dom/nodes/drawings/ImageSVG.js +0 -50
  440. package/lib/module/dom/nodes/drawings/ImageSVG.js.map +0 -1
  441. package/lib/module/dom/nodes/drawings/LineNode.d.ts +0 -8
  442. package/lib/module/dom/nodes/drawings/LineNode.js +0 -21
  443. package/lib/module/dom/nodes/drawings/LineNode.js.map +0 -1
  444. package/lib/module/dom/nodes/drawings/OvalNode.d.ts +0 -9
  445. package/lib/module/dom/nodes/drawings/OvalNode.js +0 -21
  446. package/lib/module/dom/nodes/drawings/OvalNode.js.map +0 -1
  447. package/lib/module/dom/nodes/drawings/ParagraphNode.d.ts +0 -8
  448. package/lib/module/dom/nodes/drawings/ParagraphNode.js +0 -25
  449. package/lib/module/dom/nodes/drawings/ParagraphNode.js.map +0 -1
  450. package/lib/module/dom/nodes/drawings/PatchNode.d.ts +0 -18
  451. package/lib/module/dom/nodes/drawings/PatchNode.js +0 -46
  452. package/lib/module/dom/nodes/drawings/PatchNode.js.map +0 -1
  453. package/lib/module/dom/nodes/drawings/PathNode.d.ts +0 -9
  454. package/lib/module/dom/nodes/drawings/PathNode.js +0 -48
  455. package/lib/module/dom/nodes/drawings/PathNode.js.map +0 -1
  456. package/lib/module/dom/nodes/drawings/PictureNode.d.ts +0 -8
  457. package/lib/module/dom/nodes/drawings/PictureNode.js +0 -19
  458. package/lib/module/dom/nodes/drawings/PictureNode.js.map +0 -1
  459. package/lib/module/dom/nodes/drawings/PointsNode.d.ts +0 -8
  460. package/lib/module/dom/nodes/drawings/PointsNode.js +0 -23
  461. package/lib/module/dom/nodes/drawings/PointsNode.js.map +0 -1
  462. package/lib/module/dom/nodes/drawings/RRectNode.d.ts +0 -10
  463. package/lib/module/dom/nodes/drawings/RRectNode.js +0 -25
  464. package/lib/module/dom/nodes/drawings/RRectNode.js.map +0 -1
  465. package/lib/module/dom/nodes/drawings/RectNode.d.ts +0 -9
  466. package/lib/module/dom/nodes/drawings/RectNode.js +0 -21
  467. package/lib/module/dom/nodes/drawings/RectNode.js.map +0 -1
  468. package/lib/module/dom/nodes/drawings/Text.d.ts +0 -30
  469. package/lib/module/dom/nodes/drawings/Text.js +0 -149
  470. package/lib/module/dom/nodes/drawings/Text.js.map +0 -1
  471. package/lib/module/dom/nodes/drawings/VerticesNode.d.ts +0 -9
  472. package/lib/module/dom/nodes/drawings/VerticesNode.js +0 -36
  473. package/lib/module/dom/nodes/drawings/VerticesNode.js.map +0 -1
  474. package/lib/module/dom/nodes/drawings/index.d.ts +0 -18
  475. package/lib/module/dom/nodes/drawings/index.js +0 -19
  476. package/lib/module/dom/nodes/drawings/index.js.map +0 -1
  477. package/lib/module/dom/nodes/paint/BlendNode.d.ts +0 -8
  478. package/lib/module/dom/nodes/paint/BlendNode.js +0 -30
  479. package/lib/module/dom/nodes/paint/BlendNode.js.map +0 -1
  480. package/lib/module/dom/nodes/paint/ColorFilters.d.ts +0 -35
  481. package/lib/module/dom/nodes/paint/ColorFilters.js +0 -89
  482. package/lib/module/dom/nodes/paint/ColorFilters.js.map +0 -1
  483. package/lib/module/dom/nodes/paint/ImageFilters.d.ts +0 -42
  484. package/lib/module/dom/nodes/paint/ImageFilters.js +0 -169
  485. package/lib/module/dom/nodes/paint/ImageFilters.js.map +0 -1
  486. package/lib/module/dom/nodes/paint/MaskFilters.d.ts +0 -8
  487. package/lib/module/dom/nodes/paint/MaskFilters.js +0 -19
  488. package/lib/module/dom/nodes/paint/MaskFilters.js.map +0 -1
  489. package/lib/module/dom/nodes/paint/PathEffects.d.ts +0 -39
  490. package/lib/module/dom/nodes/paint/PathEffects.js +0 -123
  491. package/lib/module/dom/nodes/paint/PathEffects.js.map +0 -1
  492. package/lib/module/dom/nodes/paint/Shaders.d.ts +0 -43
  493. package/lib/module/dom/nodes/paint/Shaders.js +0 -193
  494. package/lib/module/dom/nodes/paint/Shaders.js.map +0 -1
  495. package/lib/module/dom/nodes/paint/index.d.ts +0 -6
  496. package/lib/module/dom/nodes/paint/index.js +0 -7
  497. package/lib/module/dom/nodes/paint/index.js.map +0 -1
  498. package/lib/module/dom/types/DeclarationContext.d.ts +0 -29
  499. package/lib/module/dom/types/DeclarationContext.js +0 -90
  500. package/lib/module/dom/types/DeclarationContext.js.map +0 -1
  501. package/lib/module/dom/types/DrawingContext.d.ts +0 -22
  502. package/lib/module/dom/types/DrawingContext.js +0 -256
  503. package/lib/module/dom/types/DrawingContext.js.map +0 -1
  504. package/lib/module/renderer/DrawingContext.d.ts +0 -7
  505. package/lib/module/renderer/DrawingContext.js +0 -2
  506. package/lib/module/renderer/DrawingContext.js.map +0 -1
  507. package/lib/module/views/SkiaJSDomView.d.ts +0 -38
  508. package/lib/module/views/SkiaJSDomView.js +0 -123
  509. package/lib/module/views/SkiaJSDomView.js.map +0 -1
  510. package/lib/module/views/SkiaJSDomView.web.d.ts +0 -1
  511. package/lib/module/views/SkiaJSDomView.web.js +0 -2
  512. package/lib/module/views/SkiaJSDomView.web.js.map +0 -1
  513. package/lib/typescript/lib/commonjs/dom/nodes/DrawingNode.d.ts +0 -6
  514. package/lib/typescript/lib/commonjs/dom/nodes/GroupNode.d.ts +0 -6
  515. package/lib/typescript/lib/commonjs/dom/nodes/LayerNode.d.ts +0 -6
  516. package/lib/typescript/lib/commonjs/dom/nodes/Node.d.ts +0 -20
  517. package/lib/typescript/lib/commonjs/dom/nodes/PaintNode.d.ts +0 -6
  518. package/lib/typescript/lib/commonjs/dom/nodes/RenderNode.d.ts +0 -16
  519. package/lib/typescript/lib/commonjs/dom/nodes/drawings/AtlasNode.d.ts +0 -10
  520. package/lib/typescript/lib/commonjs/dom/nodes/drawings/BackdropFilterNode.d.ts +0 -10
  521. package/lib/typescript/lib/commonjs/dom/nodes/drawings/Box.d.ts +0 -15
  522. package/lib/typescript/lib/commonjs/dom/nodes/drawings/CircleNode.d.ts +0 -10
  523. package/lib/typescript/lib/commonjs/dom/nodes/drawings/DiffRectNode.d.ts +0 -10
  524. package/lib/typescript/lib/commonjs/dom/nodes/drawings/FillNode.d.ts +0 -10
  525. package/lib/typescript/lib/commonjs/dom/nodes/drawings/ImageNode.d.ts +0 -13
  526. package/lib/typescript/lib/commonjs/dom/nodes/drawings/ImageSVG.d.ts +0 -9
  527. package/lib/typescript/lib/commonjs/dom/nodes/drawings/LineNode.d.ts +0 -10
  528. package/lib/typescript/lib/commonjs/dom/nodes/drawings/OvalNode.d.ts +0 -10
  529. package/lib/typescript/lib/commonjs/dom/nodes/drawings/ParagraphNode.d.ts +0 -9
  530. package/lib/typescript/lib/commonjs/dom/nodes/drawings/PatchNode.d.ts +0 -14
  531. package/lib/typescript/lib/commonjs/dom/nodes/drawings/PathNode.d.ts +0 -10
  532. package/lib/typescript/lib/commonjs/dom/nodes/drawings/PictureNode.d.ts +0 -9
  533. package/lib/typescript/lib/commonjs/dom/nodes/drawings/PointsNode.d.ts +0 -10
  534. package/lib/typescript/lib/commonjs/dom/nodes/drawings/RRectNode.d.ts +0 -10
  535. package/lib/typescript/lib/commonjs/dom/nodes/drawings/RectNode.d.ts +0 -10
  536. package/lib/typescript/lib/commonjs/dom/nodes/drawings/Text.d.ts +0 -34
  537. package/lib/typescript/lib/commonjs/dom/nodes/drawings/VerticesNode.d.ts +0 -10
  538. package/lib/typescript/lib/commonjs/dom/nodes/paint/BlendNode.d.ts +0 -6
  539. package/lib/typescript/lib/commonjs/dom/nodes/paint/ColorFilters.d.ts +0 -29
  540. package/lib/typescript/lib/commonjs/dom/nodes/paint/ImageFilters.d.ts +0 -35
  541. package/lib/typescript/lib/commonjs/dom/nodes/paint/MaskFilters.d.ts +0 -6
  542. package/lib/typescript/lib/commonjs/dom/nodes/paint/PathEffects.d.ts +0 -34
  543. package/lib/typescript/lib/commonjs/dom/nodes/paint/Shaders.d.ts +0 -40
  544. package/lib/typescript/lib/commonjs/dom/nodes/paint/index.d.ts +0 -1
  545. package/lib/typescript/lib/commonjs/dom/types/DeclarationContext.d.ts +0 -26
  546. package/lib/typescript/lib/commonjs/dom/types/DrawingContext.d.ts +0 -13
  547. package/lib/typescript/lib/commonjs/renderer/DrawingContext.d.ts +0 -1
  548. package/lib/typescript/lib/commonjs/views/SkiaJSDomView.d.ts +0 -29
  549. package/lib/typescript/lib/commonjs/views/SkiaJSDomView.web.d.ts +0 -3
  550. package/lib/typescript/lib/module/dom/nodes/DrawingNode.d.ts +0 -5
  551. package/lib/typescript/lib/module/dom/nodes/GroupNode.d.ts +0 -5
  552. package/lib/typescript/lib/module/dom/nodes/LayerNode.d.ts +0 -5
  553. package/lib/typescript/lib/module/dom/nodes/Node.d.ts +0 -19
  554. package/lib/typescript/lib/module/dom/nodes/PaintNode.d.ts +0 -5
  555. package/lib/typescript/lib/module/dom/nodes/RenderNode.d.ts +0 -15
  556. package/lib/typescript/lib/module/dom/nodes/drawings/AtlasNode.d.ts +0 -9
  557. package/lib/typescript/lib/module/dom/nodes/drawings/BackdropFilterNode.d.ts +0 -9
  558. package/lib/typescript/lib/module/dom/nodes/drawings/Box.d.ts +0 -14
  559. package/lib/typescript/lib/module/dom/nodes/drawings/CircleNode.d.ts +0 -9
  560. package/lib/typescript/lib/module/dom/nodes/drawings/DiffRectNode.d.ts +0 -9
  561. package/lib/typescript/lib/module/dom/nodes/drawings/FillNode.d.ts +0 -9
  562. package/lib/typescript/lib/module/dom/nodes/drawings/ImageNode.d.ts +0 -22
  563. package/lib/typescript/lib/module/dom/nodes/drawings/ImageSVG.d.ts +0 -8
  564. package/lib/typescript/lib/module/dom/nodes/drawings/LineNode.d.ts +0 -9
  565. package/lib/typescript/lib/module/dom/nodes/drawings/OvalNode.d.ts +0 -9
  566. package/lib/typescript/lib/module/dom/nodes/drawings/ParagraphNode.d.ts +0 -8
  567. package/lib/typescript/lib/module/dom/nodes/drawings/PatchNode.d.ts +0 -13
  568. package/lib/typescript/lib/module/dom/nodes/drawings/PathNode.d.ts +0 -9
  569. package/lib/typescript/lib/module/dom/nodes/drawings/PictureNode.d.ts +0 -8
  570. package/lib/typescript/lib/module/dom/nodes/drawings/PointsNode.d.ts +0 -9
  571. package/lib/typescript/lib/module/dom/nodes/drawings/RRectNode.d.ts +0 -9
  572. package/lib/typescript/lib/module/dom/nodes/drawings/RectNode.d.ts +0 -9
  573. package/lib/typescript/lib/module/dom/nodes/drawings/Text.d.ts +0 -33
  574. package/lib/typescript/lib/module/dom/nodes/drawings/VerticesNode.d.ts +0 -9
  575. package/lib/typescript/lib/module/dom/nodes/drawings/index.d.ts +0 -18
  576. package/lib/typescript/lib/module/dom/nodes/paint/BlendNode.d.ts +0 -5
  577. package/lib/typescript/lib/module/dom/nodes/paint/ColorFilters.d.ts +0 -28
  578. package/lib/typescript/lib/module/dom/nodes/paint/ImageFilters.d.ts +0 -34
  579. package/lib/typescript/lib/module/dom/nodes/paint/MaskFilters.d.ts +0 -5
  580. package/lib/typescript/lib/module/dom/nodes/paint/PathEffects.d.ts +0 -33
  581. package/lib/typescript/lib/module/dom/nodes/paint/Shaders.d.ts +0 -39
  582. package/lib/typescript/lib/module/dom/nodes/paint/index.d.ts +0 -6
  583. package/lib/typescript/lib/module/dom/types/DeclarationContext.d.ts +0 -25
  584. package/lib/typescript/lib/module/dom/types/DrawingContext.d.ts +0 -12
  585. package/lib/typescript/lib/module/renderer/DrawingContext.d.ts +0 -1
  586. package/lib/typescript/lib/module/views/SkiaJSDomView.d.ts +0 -26
  587. package/lib/typescript/lib/module/views/SkiaJSDomView.web.d.ts +0 -1
  588. package/lib/typescript/src/dom/nodes/DrawingNode.d.ts +0 -14
  589. package/lib/typescript/src/dom/nodes/GroupNode.d.ts +0 -7
  590. package/lib/typescript/src/dom/nodes/LayerNode.d.ts +0 -8
  591. package/lib/typescript/src/dom/nodes/Node.d.ts +0 -34
  592. package/lib/typescript/src/dom/nodes/PaintNode.d.ts +0 -8
  593. package/lib/typescript/src/dom/nodes/RenderNode.d.ts +0 -26
  594. package/lib/typescript/src/dom/nodes/drawings/AtlasNode.d.ts +0 -8
  595. package/lib/typescript/src/dom/nodes/drawings/BackdropFilterNode.d.ts +0 -8
  596. package/lib/typescript/src/dom/nodes/drawings/Box.d.ts +0 -15
  597. package/lib/typescript/src/dom/nodes/drawings/CircleNode.d.ts +0 -9
  598. package/lib/typescript/src/dom/nodes/drawings/DiffRectNode.d.ts +0 -8
  599. package/lib/typescript/src/dom/nodes/drawings/FillNode.d.ts +0 -8
  600. package/lib/typescript/src/dom/nodes/drawings/ImageNode.d.ts +0 -25
  601. package/lib/typescript/src/dom/nodes/drawings/ImageSVG.d.ts +0 -13
  602. package/lib/typescript/src/dom/nodes/drawings/LineNode.d.ts +0 -8
  603. package/lib/typescript/src/dom/nodes/drawings/OvalNode.d.ts +0 -9
  604. package/lib/typescript/src/dom/nodes/drawings/ParagraphNode.d.ts +0 -8
  605. package/lib/typescript/src/dom/nodes/drawings/PatchNode.d.ts +0 -18
  606. package/lib/typescript/src/dom/nodes/drawings/PathNode.d.ts +0 -9
  607. package/lib/typescript/src/dom/nodes/drawings/PictureNode.d.ts +0 -8
  608. package/lib/typescript/src/dom/nodes/drawings/PointsNode.d.ts +0 -8
  609. package/lib/typescript/src/dom/nodes/drawings/RRectNode.d.ts +0 -10
  610. package/lib/typescript/src/dom/nodes/drawings/RectNode.d.ts +0 -9
  611. package/lib/typescript/src/dom/nodes/drawings/Text.d.ts +0 -30
  612. package/lib/typescript/src/dom/nodes/drawings/VerticesNode.d.ts +0 -9
  613. package/lib/typescript/src/dom/nodes/drawings/index.d.ts +0 -18
  614. package/lib/typescript/src/dom/nodes/paint/BlendNode.d.ts +0 -8
  615. package/lib/typescript/src/dom/nodes/paint/ColorFilters.d.ts +0 -35
  616. package/lib/typescript/src/dom/nodes/paint/ImageFilters.d.ts +0 -42
  617. package/lib/typescript/src/dom/nodes/paint/MaskFilters.d.ts +0 -8
  618. package/lib/typescript/src/dom/nodes/paint/PathEffects.d.ts +0 -39
  619. package/lib/typescript/src/dom/nodes/paint/Shaders.d.ts +0 -43
  620. package/lib/typescript/src/dom/nodes/paint/index.d.ts +0 -6
  621. package/lib/typescript/src/dom/types/DeclarationContext.d.ts +0 -29
  622. package/lib/typescript/src/dom/types/DrawingContext.d.ts +0 -22
  623. package/lib/typescript/src/renderer/DrawingContext.d.ts +0 -7
  624. package/lib/typescript/src/views/SkiaJSDomView.d.ts +0 -38
  625. package/lib/typescript/src/views/SkiaJSDomView.web.d.ts +0 -1
  626. package/src/dom/nodes/DrawingNode.ts +0 -74
  627. package/src/dom/nodes/GroupNode.ts +0 -19
  628. package/src/dom/nodes/LayerNode.ts +0 -37
  629. package/src/dom/nodes/Node.ts +0 -121
  630. package/src/dom/nodes/PaintNode.ts +0 -91
  631. package/src/dom/nodes/RenderNode.ts +0 -172
  632. package/src/dom/nodes/drawings/AtlasNode.ts +0 -24
  633. package/src/dom/nodes/drawings/BackdropFilterNode.ts +0 -37
  634. package/src/dom/nodes/drawings/Box.ts +0 -82
  635. package/src/dom/nodes/drawings/CircleNode.ts +0 -24
  636. package/src/dom/nodes/drawings/DiffRectNode.ts +0 -19
  637. package/src/dom/nodes/drawings/FillNode.ts +0 -18
  638. package/src/dom/nodes/drawings/ImageNode.ts +0 -49
  639. package/src/dom/nodes/drawings/ImageSVG.ts +0 -38
  640. package/src/dom/nodes/drawings/LineNode.ts +0 -19
  641. package/src/dom/nodes/drawings/OvalNode.ts +0 -23
  642. package/src/dom/nodes/drawings/ParagraphNode.ts +0 -22
  643. package/src/dom/nodes/drawings/PatchNode.ts +0 -54
  644. package/src/dom/nodes/drawings/PathNode.ts +0 -51
  645. package/src/dom/nodes/drawings/PictureNode.ts +0 -19
  646. package/src/dom/nodes/drawings/PointsNode.ts +0 -21
  647. package/src/dom/nodes/drawings/RRectNode.ts +0 -25
  648. package/src/dom/nodes/drawings/RectNode.ts +0 -23
  649. package/src/dom/nodes/drawings/Text.ts +0 -145
  650. package/src/dom/nodes/drawings/VerticesNode.ts +0 -35
  651. package/src/dom/nodes/drawings/index.ts +0 -18
  652. package/src/dom/nodes/paint/BlendNode.ts +0 -32
  653. package/src/dom/nodes/paint/ColorFilters.ts +0 -106
  654. package/src/dom/nodes/paint/ImageFilters.ts +0 -221
  655. package/src/dom/nodes/paint/MaskFilters.ts +0 -23
  656. package/src/dom/nodes/paint/PathEffects.ts +0 -139
  657. package/src/dom/nodes/paint/Shaders.ts +0 -233
  658. package/src/dom/nodes/paint/index.ts +0 -6
  659. package/src/dom/types/DeclarationContext.ts +0 -115
  660. package/src/dom/types/DrawingContext.ts +0 -322
  661. package/src/renderer/DrawingContext.ts +0 -8
  662. package/src/views/SkiaJSDomView.tsx +0 -143
  663. package/src/views/SkiaJSDomView.web.tsx +0 -1
@@ -0,0 +1,56 @@
1
+ import type { SkShader, SkPaint, SkImageFilter, SkMaskFilter, SkPathEffect, Skia, SkColorFilter } from "../skia/types";
2
+ type Composer<T> = (outer: T, inner: T) => T;
3
+ export declare const composeDeclarations: <T>(filters: T[], composer: Composer<T>) => T;
4
+ export declare const createDeclarationContext: (Skia: Skia) => {
5
+ Skia: Skia;
6
+ paints: {
7
+ save: () => void;
8
+ restore: () => void;
9
+ pop: () => SkPaint | undefined;
10
+ push: (decl: SkPaint) => void;
11
+ popAll: () => SkPaint[];
12
+ popAllAsOne: () => SkPaint | undefined;
13
+ };
14
+ maskFilters: {
15
+ save: () => void;
16
+ restore: () => void;
17
+ pop: () => SkMaskFilter | undefined;
18
+ push: (decl: SkMaskFilter) => void;
19
+ popAll: () => SkMaskFilter[];
20
+ popAllAsOne: () => SkMaskFilter | undefined;
21
+ };
22
+ shaders: {
23
+ save: () => void;
24
+ restore: () => void;
25
+ pop: () => SkShader | undefined;
26
+ push: (decl: SkShader) => void;
27
+ popAll: () => SkShader[];
28
+ popAllAsOne: () => SkShader | undefined;
29
+ };
30
+ pathEffects: {
31
+ save: () => void;
32
+ restore: () => void;
33
+ pop: () => SkPathEffect | undefined;
34
+ push: (decl: SkPathEffect) => void;
35
+ popAll: () => SkPathEffect[];
36
+ popAllAsOne: () => SkPathEffect | undefined;
37
+ };
38
+ imageFilters: {
39
+ save: () => void;
40
+ restore: () => void;
41
+ pop: () => SkImageFilter | undefined;
42
+ push: (decl: SkImageFilter) => void;
43
+ popAll: () => SkImageFilter[];
44
+ popAllAsOne: () => SkImageFilter | undefined;
45
+ };
46
+ colorFilters: {
47
+ save: () => void;
48
+ restore: () => void;
49
+ pop: () => SkColorFilter | undefined;
50
+ push: (decl: SkColorFilter) => void;
51
+ popAll: () => SkColorFilter[];
52
+ popAllAsOne: () => SkColorFilter | undefined;
53
+ };
54
+ };
55
+ export type DeclarationContext = ReturnType<typeof createDeclarationContext>;
56
+ export {};
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createDeclarationContext = exports.composeDeclarations = void 0;
7
+ const composeDeclarations = (filters, composer) => {
8
+ "worklet";
9
+
10
+ const len = filters.length;
11
+ if (len <= 1) {
12
+ return filters[0];
13
+ }
14
+ return filters.reduceRight((inner, outer) => inner ? composer(outer, inner) : outer);
15
+ };
16
+ exports.composeDeclarations = composeDeclarations;
17
+ const createDeclaration = composer => {
18
+ "worklet";
19
+
20
+ const state = {
21
+ decls: [],
22
+ indexes: [0]
23
+ };
24
+ return {
25
+ save: () => {
26
+ state.indexes.push(state.decls.length);
27
+ },
28
+ restore: () => {
29
+ state.indexes.pop();
30
+ },
31
+ pop: () => state.decls.pop(),
32
+ push: decl => {
33
+ state.decls.push(decl);
34
+ },
35
+ popAll: () => {
36
+ const idx = state.indexes[state.indexes.length - 1];
37
+ return state.decls.splice(idx, state.decls.length - idx);
38
+ },
39
+ popAllAsOne: () => {
40
+ if (state.decls.length === 0) {
41
+ return undefined;
42
+ }
43
+ if (!composer) {
44
+ throw new Error("No composer for this type of declaration");
45
+ }
46
+ if (!state.decls.length) {
47
+ return undefined;
48
+ }
49
+ if (!composer) {
50
+ throw new Error("No composer for this type of declaration");
51
+ }
52
+ const idx = state.indexes[state.indexes.length - 1];
53
+ const decls = state.decls.splice(idx, state.decls.length - idx);
54
+ return composeDeclarations(decls, composer);
55
+ }
56
+ };
57
+ };
58
+ const createDeclarationContext = Skia => {
59
+ "worklet";
60
+
61
+ const composers = {
62
+ pathEffect: Skia.PathEffect.MakeCompose.bind(Skia.PathEffect),
63
+ imageFilter: Skia.ImageFilter.MakeCompose.bind(Skia.ImageFilter),
64
+ colorFilter: Skia.ColorFilter.MakeCompose.bind(Skia.ColorFilter)
65
+ };
66
+ return {
67
+ Skia,
68
+ paints: createDeclaration(),
69
+ maskFilters: createDeclaration(),
70
+ shaders: createDeclaration(),
71
+ pathEffects: createDeclaration(composers.pathEffect),
72
+ imageFilters: createDeclaration(composers.imageFilter),
73
+ colorFilters: createDeclaration(composers.colorFilter)
74
+ };
75
+ };
76
+ exports.createDeclarationContext = createDeclarationContext;
77
+ //# sourceMappingURL=DeclarationContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["composeDeclarations","filters","composer","len","length","reduceRight","inner","outer","exports","createDeclaration","state","decls","indexes","save","push","restore","pop","decl","popAll","idx","splice","popAllAsOne","undefined","Error","createDeclarationContext","Skia","composers","pathEffect","PathEffect","MakeCompose","bind","imageFilter","ImageFilter","colorFilter","ColorFilter","paints","maskFilters","shaders","pathEffects","imageFilters","colorFilters"],"sources":["DeclarationContext.ts"],"sourcesContent":["import type {\n SkShader,\n SkPaint,\n SkImageFilter,\n SkMaskFilter,\n SkPathEffect,\n Skia,\n SkColorFilter,\n} from \"../skia/types\";\n\ntype Composer<T> = (outer: T, inner: T) => T;\n\nexport const composeDeclarations = <T>(filters: T[], composer: Composer<T>) => {\n \"worklet\";\n const len = filters.length;\n if (len <= 1) {\n return filters[0];\n }\n return filters.reduceRight((inner, outer) =>\n inner ? composer(outer, inner) : outer\n );\n};\n\nconst createDeclaration = <T>(composer?: Composer<T>) => {\n \"worklet\";\n const state = {\n decls: [] as T[],\n indexes: [0],\n };\n\n return {\n save: () => {\n state.indexes.push(state.decls.length);\n },\n restore: () => {\n state.indexes.pop();\n },\n pop: () => state.decls.pop(),\n push: (decl: T) => {\n state.decls.push(decl);\n },\n popAll: () => {\n const idx = state.indexes[state.indexes.length - 1];\n return state.decls.splice(idx, state.decls.length - idx);\n },\n popAllAsOne: () => {\n if (state.decls.length === 0) {\n return undefined;\n }\n if (!composer) {\n throw new Error(\"No composer for this type of declaration\");\n }\n if (!state.decls.length) {\n return undefined;\n }\n if (!composer) {\n throw new Error(\"No composer for this type of declaration\");\n }\n\n const idx = state.indexes[state.indexes.length - 1];\n const decls = state.decls.splice(idx, state.decls.length - idx);\n return composeDeclarations(decls, composer);\n },\n };\n};\n\nexport const createDeclarationContext = (Skia: Skia) => {\n \"worklet\";\n const composers = {\n pathEffect: Skia.PathEffect.MakeCompose.bind(Skia.PathEffect),\n imageFilter: Skia.ImageFilter.MakeCompose.bind(Skia.ImageFilter),\n colorFilter: Skia.ColorFilter.MakeCompose.bind(Skia.ColorFilter),\n };\n return {\n Skia,\n paints: createDeclaration<SkPaint>(),\n maskFilters: createDeclaration<SkMaskFilter>(),\n shaders: createDeclaration<SkShader>(),\n pathEffects: createDeclaration<SkPathEffect>(composers.pathEffect),\n imageFilters: createDeclaration<SkImageFilter>(composers.imageFilter),\n colorFilters: createDeclaration<SkColorFilter>(composers.colorFilter),\n };\n};\n\nexport type DeclarationContext = ReturnType<typeof createDeclarationContext>;\n"],"mappings":"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","ignoreList":[]}
@@ -1,16 +1,13 @@
1
1
  import type { DrawingNodeProps, GroupProps } from "../dom/types";
2
- import { DeclarationContext } from "../dom/types";
3
2
  import type { SkCanvas, Skia, SkPaint } from "../skia/types";
4
- export declare class DrawingContext {
5
- private paints;
6
- declCtx: DeclarationContext;
3
+ import type { DeclarationContext } from "./DeclarationContext";
4
+ export declare const createDrawingContext: (Skia: Skia, canvas: SkCanvas) => {
7
5
  Skia: Skia;
8
6
  canvas: SkCanvas;
9
- constructor(Skia: Skia, canvas: SkCanvas);
10
- save(): void;
11
- restore(): void;
12
- get paint(): SkPaint;
13
- getLocalPaints(): SkPaint[];
14
- processPaint({ opacity, color, strokeWidth, blendMode, style, strokeJoin, strokeCap, strokeMiter, antiAlias, dither, paint: paintProp, }: DrawingNodeProps): boolean;
15
- processMatrixAndClipping(props: GroupProps, layer?: boolean | SkPaint): boolean;
16
- }
7
+ save: () => number;
8
+ restore: () => SkPaint | undefined;
9
+ getPaint: () => SkPaint;
10
+ processPaint: ({ opacity, color, strokeWidth, blendMode, style, strokeJoin, strokeCap, strokeMiter, antiAlias, dither, paint: paintProp, }: DrawingNodeProps, declCtx: DeclarationContext) => boolean;
11
+ processMatrixAndClipping: (props: GroupProps, layer?: boolean | SkPaint) => boolean;
12
+ };
13
+ export type DrawingContext = ReturnType<typeof createDrawingContext>;
@@ -1,23 +1,20 @@
1
1
  "use strict";
2
- "worklet";
3
2
 
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports.DrawingContext = void 0;
6
+ exports.createDrawingContext = void 0;
8
7
  var _nodes = require("../dom/nodes");
9
- var _types = require("../dom/types");
10
- var _types2 = require("../skia/types");
11
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
12
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
13
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
+ var _types = require("../skia/types");
14
9
  const computeClip = (Skia, clip) => {
10
+ "worklet";
11
+
15
12
  if (clip) {
16
13
  if ((0, _nodes.isPathDef)(clip)) {
17
14
  return {
18
15
  clipPath: (0, _nodes.processPath)(Skia, clip)
19
16
  };
20
- } else if ((0, _types2.isRRect)(clip)) {
17
+ } else if ((0, _types.isRRect)(clip)) {
21
18
  return {
22
19
  clipRRect: clip
23
20
  };
@@ -29,37 +26,27 @@ const computeClip = (Skia, clip) => {
29
26
  }
30
27
  return undefined;
31
28
  };
32
- class DrawingContext {
33
- constructor(Skia, canvas) {
34
- _defineProperty(this, "paints", void 0);
35
- _defineProperty(this, "declCtx", void 0);
36
- _defineProperty(this, "Skia", void 0);
37
- _defineProperty(this, "canvas", void 0);
38
- this.Skia = Skia;
39
- this.canvas = canvas;
40
- this.paints = [Skia.Paint()];
41
- this.declCtx = new _types.DeclarationContext(this.Skia);
42
- }
43
- save() {
44
- this.paints.push(this.paint.copy());
45
- }
46
- restore() {
47
- this.paints.pop();
48
- }
49
- get paint() {
50
- const paint = this.paints[this.paints.length - 1];
51
- if (!paint) {
52
- throw new Error("Paint is undefined");
53
- }
54
- return paint;
55
- }
56
- getLocalPaints() {
57
- const {
58
- paint
59
- } = this;
60
- return [paint, ...this.declCtx.paints.popAll()];
29
+ const processColor = (Skia, color) => {
30
+ "worklet";
31
+
32
+ if (typeof color === "string" || typeof color === "number") {
33
+ return Skia.Color(color);
34
+ } else if (Array.isArray(color) || color instanceof Float32Array) {
35
+ return color instanceof Float32Array ? color : new Float32Array(color);
36
+ } else {
37
+ throw new Error(`Invalid color type: ${typeof color}. Expected number, string, or array.`);
61
38
  }
62
- processPaint({
39
+ };
40
+ const createDrawingContext = (Skia, canvas) => {
41
+ "worklet";
42
+
43
+ const state = {
44
+ paints: [Skia.Paint()]
45
+ };
46
+ const getPaint = () => {
47
+ return state.paints[state.paints.length - 1];
48
+ };
49
+ const processPaint = ({
63
50
  opacity,
64
51
  color,
65
52
  strokeWidth,
@@ -71,57 +58,47 @@ class DrawingContext {
71
58
  antiAlias,
72
59
  dither,
73
60
  paint: paintProp
74
- }) {
61
+ }, declCtx) => {
75
62
  if (paintProp) {
76
- this.declCtx.paints.push(paintProp);
63
+ declCtx.paints.push(paintProp);
77
64
  return true;
78
65
  }
79
66
  let shouldRestore = false;
80
- const colorFilter = this.declCtx.colorFilters.popAllAsOne();
81
- const imageFilter = this.declCtx.imageFilters.popAllAsOne();
82
- const shader = this.declCtx.shaders.pop();
83
- const maskFilter = this.declCtx.maskFilters.pop();
84
- const pathEffect = this.declCtx.pathEffects.popAllAsOne();
67
+ const colorFilter = declCtx.colorFilters.popAllAsOne();
68
+ const imageFilter = declCtx.imageFilters.popAllAsOne();
69
+ const shader = declCtx.shaders.pop();
70
+ const maskFilter = declCtx.maskFilters.pop();
71
+ const pathEffect = declCtx.pathEffects.popAllAsOne();
85
72
  if (opacity !== undefined || color !== undefined || strokeWidth !== undefined || blendMode !== undefined || style !== undefined || strokeJoin !== undefined || strokeCap !== undefined || strokeMiter !== undefined || antiAlias !== undefined || dither !== undefined || colorFilter !== undefined || imageFilter !== undefined || shader !== undefined || maskFilter !== undefined || pathEffect !== undefined) {
86
73
  if (!shouldRestore) {
87
- this.save();
74
+ state.paints.push(getPaint().copy());
88
75
  shouldRestore = true;
89
76
  }
90
77
  }
91
- const {
92
- paint
93
- } = this;
78
+ const paint = getPaint();
94
79
  if (opacity !== undefined) {
95
80
  paint.setAlphaf(paint.getAlphaf() * opacity);
96
81
  }
97
82
  if (color !== undefined) {
98
83
  const currentOpacity = paint.getAlphaf();
99
84
  paint.setShader(null);
100
- if (typeof color === "string" || typeof color === "number") {
101
- paint.setColor(this.Skia.Color(color));
102
- } else if (Array.isArray(color)) {
103
- paint.setColor(new Float32Array(color));
104
- } else if (color instanceof Float32Array) {
105
- paint.setColor(color);
106
- } else {
107
- throw new Error("Invalid color");
108
- }
85
+ paint.setColor(processColor(Skia, color));
109
86
  paint.setAlphaf(currentOpacity * paint.getAlphaf());
110
87
  }
111
88
  if (strokeWidth !== undefined) {
112
89
  paint.setStrokeWidth(strokeWidth);
113
90
  }
114
91
  if (blendMode !== undefined) {
115
- paint.setBlendMode(_types2.BlendMode[(0, _nodes.enumKey)(blendMode)]);
92
+ paint.setBlendMode(_types.BlendMode[(0, _nodes.enumKey)(blendMode)]);
116
93
  }
117
94
  if (style !== undefined) {
118
- paint.setStyle(_types2.PaintStyle[(0, _nodes.enumKey)(style)]);
95
+ paint.setStyle(_types.PaintStyle[(0, _nodes.enumKey)(style)]);
119
96
  }
120
97
  if (strokeJoin !== undefined) {
121
- paint.setStrokeJoin(_types2.StrokeJoin[(0, _nodes.enumKey)(strokeJoin)]);
98
+ paint.setStrokeJoin(_types.StrokeJoin[(0, _nodes.enumKey)(strokeJoin)]);
122
99
  }
123
100
  if (strokeCap !== undefined) {
124
- paint.setStrokeCap(_types2.StrokeCap[(0, _nodes.enumKey)(strokeCap)]);
101
+ paint.setStrokeCap(_types.StrokeCap[(0, _nodes.enumKey)(strokeCap)]);
125
102
  }
126
103
  if (strokeMiter !== undefined) {
127
104
  paint.setStrokeMiter(strokeMiter);
@@ -148,39 +125,48 @@ class DrawingContext {
148
125
  paint.setPathEffect(pathEffect);
149
126
  }
150
127
  return shouldRestore;
151
- }
152
- processMatrixAndClipping(props, layer) {
128
+ };
129
+ const processMatrixAndClipping = (props, layer) => {
153
130
  const hasTransform = props.matrix !== undefined || props.transform !== undefined;
154
- const clip = computeClip(this.Skia, props.clip);
131
+ const clip = computeClip(Skia, props.clip);
155
132
  const hasClip = clip !== undefined;
156
- const op = props.invertClip ? _types2.ClipOp.Difference : _types2.ClipOp.Intersect;
157
- const m3 = (0, _nodes.processTransformProps2)(this.Skia, props);
133
+ const op = props.invertClip ? _types.ClipOp.Difference : _types.ClipOp.Intersect;
134
+ const m3 = (0, _nodes.processTransformProps2)(Skia, props);
158
135
  const shouldSave = hasTransform || hasClip || !!layer;
159
136
  if (shouldSave) {
160
137
  if (layer) {
161
138
  if (typeof layer === "boolean") {
162
- this.canvas.saveLayer();
139
+ canvas.saveLayer();
163
140
  } else {
164
- this.canvas.saveLayer(layer);
141
+ canvas.saveLayer(layer);
165
142
  }
166
143
  } else {
167
- this.canvas.save();
144
+ canvas.save();
168
145
  }
169
146
  }
170
147
  if (m3) {
171
- this.canvas.concat(m3);
148
+ canvas.concat(m3);
172
149
  }
173
150
  if (clip) {
174
151
  if ("clipRect" in clip) {
175
- this.canvas.clipRect(clip.clipRect, op, true);
152
+ canvas.clipRect(clip.clipRect, op, true);
176
153
  } else if ("clipRRect" in clip) {
177
- this.canvas.clipRRect(clip.clipRRect, op, true);
154
+ canvas.clipRRect(clip.clipRRect, op, true);
178
155
  } else {
179
- this.canvas.clipPath(clip.clipPath, op, true);
156
+ canvas.clipPath(clip.clipPath, op, true);
180
157
  }
181
158
  }
182
159
  return shouldSave;
183
- }
184
- }
185
- exports.DrawingContext = DrawingContext;
160
+ };
161
+ return {
162
+ Skia,
163
+ canvas,
164
+ save: () => state.paints.push(getPaint().copy()),
165
+ restore: () => state.paints.pop(),
166
+ getPaint,
167
+ processPaint,
168
+ processMatrixAndClipping
169
+ };
170
+ };
171
+ exports.createDrawingContext = createDrawingContext;
186
172
  //# sourceMappingURL=DrawingContext.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Object","defineProperty","exports","value","DrawingContext","_nodes","require","_types","_types2","_defineProperty","e","r","t","_toPropertyKey","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","computeClip","Skia","clip","isPathDef","clipPath","processPath","isRRect","clipRRect","clipRect","undefined","constructor","canvas","paints","Paint","declCtx","DeclarationContext","save","push","paint","copy","restore","pop","length","Error","getLocalPaints","popAll","processPaint","opacity","color","strokeWidth","blendMode","style","strokeJoin","strokeCap","strokeMiter","antiAlias","dither","paintProp","shouldRestore","colorFilter","colorFilters","popAllAsOne","imageFilter","imageFilters","shader","shaders","maskFilter","maskFilters","pathEffect","pathEffects","setAlphaf","getAlphaf","currentOpacity","setShader","setColor","Color","Array","isArray","Float32Array","setStrokeWidth","setBlendMode","BlendMode","enumKey","setStyle","PaintStyle","setStrokeJoin","StrokeJoin","setStrokeCap","StrokeCap","setStrokeMiter","setAntiAlias","setDither","setColorFilter","setImageFilter","setMaskFilter","setPathEffect","processMatrixAndClipping","props","layer","hasTransform","matrix","transform","hasClip","op","invertClip","ClipOp","Difference","Intersect","m3","processTransformProps2","shouldSave","saveLayer","concat"],"sources":["DrawingContext.ts"],"sourcesContent":["\"worklet\";\n\nimport {\n enumKey,\n isPathDef,\n processPath,\n processTransformProps2,\n} from \"../dom/nodes\";\nimport type { ClipDef, DrawingNodeProps, GroupProps } from \"../dom/types\";\nimport { DeclarationContext } from \"../dom/types\";\nimport {\n BlendMode,\n ClipOp,\n isRRect,\n PaintStyle,\n StrokeCap,\n StrokeJoin,\n} from \"../skia/types\";\nimport type {\n SkPath,\n SkRect,\n SkRRect,\n SkCanvas,\n Skia,\n SkPaint,\n} from \"../skia/types\";\n\nconst computeClip = (\n Skia: Skia,\n clip: ClipDef | undefined\n):\n | undefined\n | { clipPath: SkPath }\n | { clipRect: SkRect }\n | { clipRRect: SkRRect } => {\n if (clip) {\n if (isPathDef(clip)) {\n return { clipPath: processPath(Skia, clip) };\n } else if (isRRect(clip)) {\n return { clipRRect: clip };\n } else {\n return { clipRect: clip };\n }\n }\n return undefined;\n};\n\nexport class DrawingContext {\n private paints: SkPaint[];\n public declCtx: DeclarationContext;\n public Skia: Skia;\n public canvas: SkCanvas;\n\n constructor(Skia: Skia, canvas: SkCanvas) {\n this.Skia = Skia;\n this.canvas = canvas;\n this.paints = [Skia.Paint()];\n this.declCtx = new DeclarationContext(this.Skia);\n }\n\n save() {\n this.paints.push(this.paint.copy());\n }\n\n restore() {\n this.paints.pop();\n }\n\n get paint() {\n const paint = this.paints[this.paints.length - 1];\n if (!paint) {\n throw new Error(\"Paint is undefined\");\n }\n return paint;\n }\n\n getLocalPaints() {\n const { paint } = this;\n return [paint, ...this.declCtx.paints.popAll()];\n }\n\n processPaint({\n opacity,\n color,\n strokeWidth,\n blendMode,\n style,\n strokeJoin,\n strokeCap,\n strokeMiter,\n antiAlias,\n dither,\n paint: paintProp,\n }: DrawingNodeProps) {\n if (paintProp) {\n this.declCtx.paints.push(paintProp);\n return true;\n }\n let shouldRestore = false;\n const colorFilter = this.declCtx.colorFilters.popAllAsOne();\n const imageFilter = this.declCtx.imageFilters.popAllAsOne();\n const shader = this.declCtx.shaders.pop();\n const maskFilter = this.declCtx.maskFilters.pop();\n const pathEffect = this.declCtx.pathEffects.popAllAsOne();\n if (\n opacity !== undefined ||\n color !== undefined ||\n strokeWidth !== undefined ||\n blendMode !== undefined ||\n style !== undefined ||\n strokeJoin !== undefined ||\n strokeCap !== undefined ||\n strokeMiter !== undefined ||\n antiAlias !== undefined ||\n dither !== undefined ||\n colorFilter !== undefined ||\n imageFilter !== undefined ||\n shader !== undefined ||\n maskFilter !== undefined ||\n pathEffect !== undefined\n ) {\n if (!shouldRestore) {\n this.save();\n shouldRestore = true;\n }\n }\n const { paint } = this;\n if (opacity !== undefined) {\n paint.setAlphaf(paint.getAlphaf() * opacity);\n }\n if (color !== undefined) {\n const currentOpacity = paint.getAlphaf();\n paint.setShader(null);\n if (typeof color === \"string\" || typeof color === \"number\") {\n paint.setColor(this.Skia.Color(color));\n } else if (Array.isArray(color)) {\n paint.setColor(new Float32Array(color));\n } else if (color instanceof Float32Array) {\n paint.setColor(color);\n } else {\n throw new Error(\"Invalid color\");\n }\n paint.setAlphaf(currentOpacity * paint.getAlphaf());\n }\n if (strokeWidth !== undefined) {\n paint.setStrokeWidth(strokeWidth);\n }\n if (blendMode !== undefined) {\n paint.setBlendMode(BlendMode[enumKey(blendMode)]);\n }\n if (style !== undefined) {\n paint.setStyle(PaintStyle[enumKey(style)]);\n }\n if (strokeJoin !== undefined) {\n paint.setStrokeJoin(StrokeJoin[enumKey(strokeJoin)]);\n }\n if (strokeCap !== undefined) {\n paint.setStrokeCap(StrokeCap[enumKey(strokeCap)]);\n }\n if (strokeMiter !== undefined) {\n paint.setStrokeMiter(strokeMiter);\n }\n if (antiAlias !== undefined) {\n paint.setAntiAlias(antiAlias);\n }\n if (dither !== undefined) {\n paint.setDither(dither);\n }\n if (colorFilter) {\n paint.setColorFilter(colorFilter);\n }\n if (imageFilter) {\n paint.setImageFilter(imageFilter);\n }\n if (shader) {\n paint.setShader(shader);\n }\n if (maskFilter) {\n paint.setMaskFilter(maskFilter);\n }\n if (pathEffect) {\n paint.setPathEffect(pathEffect);\n }\n return shouldRestore;\n }\n\n processMatrixAndClipping(props: GroupProps, layer?: boolean | SkPaint) {\n const hasTransform =\n props.matrix !== undefined || props.transform !== undefined;\n const clip = computeClip(this.Skia, props.clip);\n const hasClip = clip !== undefined;\n const op = props.invertClip ? ClipOp.Difference : ClipOp.Intersect;\n const m3 = processTransformProps2(this.Skia, props);\n const shouldSave = hasTransform || hasClip || !!layer;\n if (shouldSave) {\n if (layer) {\n if (typeof layer === \"boolean\") {\n this.canvas.saveLayer();\n } else {\n this.canvas.saveLayer(layer);\n }\n } else {\n this.canvas.save();\n }\n }\n\n if (m3) {\n this.canvas.concat(m3);\n }\n if (clip) {\n if (\"clipRect\" in clip) {\n this.canvas.clipRect(clip.clipRect, op, true);\n } else if (\"clipRRect\" in clip) {\n this.canvas.clipRRect(clip.clipRRect, op, true);\n } else {\n this.canvas.clipPath(clip.clipPath, op, true);\n }\n }\n return shouldSave;\n }\n}\n"],"mappings":";AAAA,SAAS;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,cAAA;AAEV,IAAAC,MAAA,GAAAC,OAAA;AAOA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAOuB,SAAAG,gBAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAD,CAAA,GAAAV,MAAA,CAAAC,cAAA,CAAAS,CAAA,EAAAC,CAAA,IAAAR,KAAA,EAAAS,CAAA,EAAAE,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAN,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAG,eAAAD,CAAA,QAAAK,CAAA,GAAAC,YAAA,CAAAN,CAAA,uCAAAK,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAN,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAO,MAAA,CAAAC,WAAA,kBAAAV,CAAA,QAAAO,CAAA,GAAAP,CAAA,CAAAW,IAAA,CAAAT,CAAA,EAAAD,CAAA,uCAAAM,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAX,CAAA,GAAAY,MAAA,GAAAC,MAAA,EAAAZ,CAAA;AAUvB,MAAMa,WAAW,GAAGA,CAClBC,IAAU,EACVC,IAAyB,KAKG;EAC5B,IAAIA,IAAI,EAAE;IACR,IAAI,IAAAC,gBAAS,EAACD,IAAI,CAAC,EAAE;MACnB,OAAO;QAAEE,QAAQ,EAAE,IAAAC,kBAAW,EAACJ,IAAI,EAAEC,IAAI;MAAE,CAAC;IAC9C,CAAC,MAAM,IAAI,IAAAI,eAAO,EAACJ,IAAI,CAAC,EAAE;MACxB,OAAO;QAAEK,SAAS,EAAEL;MAAK,CAAC;IAC5B,CAAC,MAAM;MACL,OAAO;QAAEM,QAAQ,EAAEN;MAAK,CAAC;IAC3B;EACF;EACA,OAAOO,SAAS;AAClB,CAAC;AAEM,MAAM9B,cAAc,CAAC;EAM1B+B,WAAWA,CAACT,IAAU,EAAEU,MAAgB,EAAE;IAAA3B,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IACxC,IAAI,CAACiB,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACU,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,MAAM,GAAG,CAACX,IAAI,CAACY,KAAK,CAAC,CAAC,CAAC;IAC5B,IAAI,CAACC,OAAO,GAAG,IAAIC,yBAAkB,CAAC,IAAI,CAACd,IAAI,CAAC;EAClD;EAEAe,IAAIA,CAAA,EAAG;IACL,IAAI,CAACJ,MAAM,CAACK,IAAI,CAAC,IAAI,CAACC,KAAK,CAACC,IAAI,CAAC,CAAC,CAAC;EACrC;EAEAC,OAAOA,CAAA,EAAG;IACR,IAAI,CAACR,MAAM,CAACS,GAAG,CAAC,CAAC;EACnB;EAEA,IAAIH,KAAKA,CAAA,EAAG;IACV,MAAMA,KAAK,GAAG,IAAI,CAACN,MAAM,CAAC,IAAI,CAACA,MAAM,CAACU,MAAM,GAAG,CAAC,CAAC;IACjD,IAAI,CAACJ,KAAK,EAAE;MACV,MAAM,IAAIK,KAAK,CAAC,oBAAoB,CAAC;IACvC;IACA,OAAOL,KAAK;EACd;EAEAM,cAAcA,CAAA,EAAG;IACf,MAAM;MAAEN;IAAM,CAAC,GAAG,IAAI;IACtB,OAAO,CAACA,KAAK,EAAE,GAAG,IAAI,CAACJ,OAAO,CAACF,MAAM,CAACa,MAAM,CAAC,CAAC,CAAC;EACjD;EAEAC,YAAYA,CAAC;IACXC,OAAO;IACPC,KAAK;IACLC,WAAW;IACXC,SAAS;IACTC,KAAK;IACLC,UAAU;IACVC,SAAS;IACTC,WAAW;IACXC,SAAS;IACTC,MAAM;IACNlB,KAAK,EAAEmB;EACS,CAAC,EAAE;IACnB,IAAIA,SAAS,EAAE;MACb,IAAI,CAACvB,OAAO,CAACF,MAAM,CAACK,IAAI,CAACoB,SAAS,CAAC;MACnC,OAAO,IAAI;IACb;IACA,IAAIC,aAAa,GAAG,KAAK;IACzB,MAAMC,WAAW,GAAG,IAAI,CAACzB,OAAO,CAAC0B,YAAY,CAACC,WAAW,CAAC,CAAC;IAC3D,MAAMC,WAAW,GAAG,IAAI,CAAC5B,OAAO,CAAC6B,YAAY,CAACF,WAAW,CAAC,CAAC;IAC3D,MAAMG,MAAM,GAAG,IAAI,CAAC9B,OAAO,CAAC+B,OAAO,CAACxB,GAAG,CAAC,CAAC;IACzC,MAAMyB,UAAU,GAAG,IAAI,CAAChC,OAAO,CAACiC,WAAW,CAAC1B,GAAG,CAAC,CAAC;IACjD,MAAM2B,UAAU,GAAG,IAAI,CAAClC,OAAO,CAACmC,WAAW,CAACR,WAAW,CAAC,CAAC;IACzD,IACEd,OAAO,KAAKlB,SAAS,IACrBmB,KAAK,KAAKnB,SAAS,IACnBoB,WAAW,KAAKpB,SAAS,IACzBqB,SAAS,KAAKrB,SAAS,IACvBsB,KAAK,KAAKtB,SAAS,IACnBuB,UAAU,KAAKvB,SAAS,IACxBwB,SAAS,KAAKxB,SAAS,IACvByB,WAAW,KAAKzB,SAAS,IACzB0B,SAAS,KAAK1B,SAAS,IACvB2B,MAAM,KAAK3B,SAAS,IACpB8B,WAAW,KAAK9B,SAAS,IACzBiC,WAAW,KAAKjC,SAAS,IACzBmC,MAAM,KAAKnC,SAAS,IACpBqC,UAAU,KAAKrC,SAAS,IACxBuC,UAAU,KAAKvC,SAAS,EACxB;MACA,IAAI,CAAC6B,aAAa,EAAE;QAClB,IAAI,CAACtB,IAAI,CAAC,CAAC;QACXsB,aAAa,GAAG,IAAI;MACtB;IACF;IACA,MAAM;MAAEpB;IAAM,CAAC,GAAG,IAAI;IACtB,IAAIS,OAAO,KAAKlB,SAAS,EAAE;MACzBS,KAAK,CAACgC,SAAS,CAAChC,KAAK,CAACiC,SAAS,CAAC,CAAC,GAAGxB,OAAO,CAAC;IAC9C;IACA,IAAIC,KAAK,KAAKnB,SAAS,EAAE;MACvB,MAAM2C,cAAc,GAAGlC,KAAK,CAACiC,SAAS,CAAC,CAAC;MACxCjC,KAAK,CAACmC,SAAS,CAAC,IAAI,CAAC;MACrB,IAAI,OAAOzB,KAAK,KAAK,QAAQ,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;QAC1DV,KAAK,CAACoC,QAAQ,CAAC,IAAI,CAACrD,IAAI,CAACsD,KAAK,CAAC3B,KAAK,CAAC,CAAC;MACxC,CAAC,MAAM,IAAI4B,KAAK,CAACC,OAAO,CAAC7B,KAAK,CAAC,EAAE;QAC/BV,KAAK,CAACoC,QAAQ,CAAC,IAAII,YAAY,CAAC9B,KAAK,CAAC,CAAC;MACzC,CAAC,MAAM,IAAIA,KAAK,YAAY8B,YAAY,EAAE;QACxCxC,KAAK,CAACoC,QAAQ,CAAC1B,KAAK,CAAC;MACvB,CAAC,MAAM;QACL,MAAM,IAAIL,KAAK,CAAC,eAAe,CAAC;MAClC;MACAL,KAAK,CAACgC,SAAS,CAACE,cAAc,GAAGlC,KAAK,CAACiC,SAAS,CAAC,CAAC,CAAC;IACrD;IACA,IAAItB,WAAW,KAAKpB,SAAS,EAAE;MAC7BS,KAAK,CAACyC,cAAc,CAAC9B,WAAW,CAAC;IACnC;IACA,IAAIC,SAAS,KAAKrB,SAAS,EAAE;MAC3BS,KAAK,CAAC0C,YAAY,CAACC,iBAAS,CAAC,IAAAC,cAAO,EAAChC,SAAS,CAAC,CAAC,CAAC;IACnD;IACA,IAAIC,KAAK,KAAKtB,SAAS,EAAE;MACvBS,KAAK,CAAC6C,QAAQ,CAACC,kBAAU,CAAC,IAAAF,cAAO,EAAC/B,KAAK,CAAC,CAAC,CAAC;IAC5C;IACA,IAAIC,UAAU,KAAKvB,SAAS,EAAE;MAC5BS,KAAK,CAAC+C,aAAa,CAACC,kBAAU,CAAC,IAAAJ,cAAO,EAAC9B,UAAU,CAAC,CAAC,CAAC;IACtD;IACA,IAAIC,SAAS,KAAKxB,SAAS,EAAE;MAC3BS,KAAK,CAACiD,YAAY,CAACC,iBAAS,CAAC,IAAAN,cAAO,EAAC7B,SAAS,CAAC,CAAC,CAAC;IACnD;IACA,IAAIC,WAAW,KAAKzB,SAAS,EAAE;MAC7BS,KAAK,CAACmD,cAAc,CAACnC,WAAW,CAAC;IACnC;IACA,IAAIC,SAAS,KAAK1B,SAAS,EAAE;MAC3BS,KAAK,CAACoD,YAAY,CAACnC,SAAS,CAAC;IAC/B;IACA,IAAIC,MAAM,KAAK3B,SAAS,EAAE;MACxBS,KAAK,CAACqD,SAAS,CAACnC,MAAM,CAAC;IACzB;IACA,IAAIG,WAAW,EAAE;MACfrB,KAAK,CAACsD,cAAc,CAACjC,WAAW,CAAC;IACnC;IACA,IAAIG,WAAW,EAAE;MACfxB,KAAK,CAACuD,cAAc,CAAC/B,WAAW,CAAC;IACnC;IACA,IAAIE,MAAM,EAAE;MACV1B,KAAK,CAACmC,SAAS,CAACT,MAAM,CAAC;IACzB;IACA,IAAIE,UAAU,EAAE;MACd5B,KAAK,CAACwD,aAAa,CAAC5B,UAAU,CAAC;IACjC;IACA,IAAIE,UAAU,EAAE;MACd9B,KAAK,CAACyD,aAAa,CAAC3B,UAAU,CAAC;IACjC;IACA,OAAOV,aAAa;EACtB;EAEAsC,wBAAwBA,CAACC,KAAiB,EAAEC,KAAyB,EAAE;IACrE,MAAMC,YAAY,GAChBF,KAAK,CAACG,MAAM,KAAKvE,SAAS,IAAIoE,KAAK,CAACI,SAAS,KAAKxE,SAAS;IAC7D,MAAMP,IAAI,GAAGF,WAAW,CAAC,IAAI,CAACC,IAAI,EAAE4E,KAAK,CAAC3E,IAAI,CAAC;IAC/C,MAAMgF,OAAO,GAAGhF,IAAI,KAAKO,SAAS;IAClC,MAAM0E,EAAE,GAAGN,KAAK,CAACO,UAAU,GAAGC,cAAM,CAACC,UAAU,GAAGD,cAAM,CAACE,SAAS;IAClE,MAAMC,EAAE,GAAG,IAAAC,6BAAsB,EAAC,IAAI,CAACxF,IAAI,EAAE4E,KAAK,CAAC;IACnD,MAAMa,UAAU,GAAGX,YAAY,IAAIG,OAAO,IAAI,CAAC,CAACJ,KAAK;IACrD,IAAIY,UAAU,EAAE;MACd,IAAIZ,KAAK,EAAE;QACT,IAAI,OAAOA,KAAK,KAAK,SAAS,EAAE;UAC9B,IAAI,CAACnE,MAAM,CAACgF,SAAS,CAAC,CAAC;QACzB,CAAC,MAAM;UACL,IAAI,CAAChF,MAAM,CAACgF,SAAS,CAACb,KAAK,CAAC;QAC9B;MACF,CAAC,MAAM;QACL,IAAI,CAACnE,MAAM,CAACK,IAAI,CAAC,CAAC;MACpB;IACF;IAEA,IAAIwE,EAAE,EAAE;MACN,IAAI,CAAC7E,MAAM,CAACiF,MAAM,CAACJ,EAAE,CAAC;IACxB;IACA,IAAItF,IAAI,EAAE;MACR,IAAI,UAAU,IAAIA,IAAI,EAAE;QACtB,IAAI,CAACS,MAAM,CAACH,QAAQ,CAACN,IAAI,CAACM,QAAQ,EAAE2E,EAAE,EAAE,IAAI,CAAC;MAC/C,CAAC,MAAM,IAAI,WAAW,IAAIjF,IAAI,EAAE;QAC9B,IAAI,CAACS,MAAM,CAACJ,SAAS,CAACL,IAAI,CAACK,SAAS,EAAE4E,EAAE,EAAE,IAAI,CAAC;MACjD,CAAC,MAAM;QACL,IAAI,CAACxE,MAAM,CAACP,QAAQ,CAACF,IAAI,CAACE,QAAQ,EAAE+E,EAAE,EAAE,IAAI,CAAC;MAC/C;IACF;IACA,OAAOO,UAAU;EACnB;AACF;AAACjH,OAAA,CAAAE,cAAA,GAAAA,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["_nodes","require","_types","computeClip","Skia","clip","isPathDef","clipPath","processPath","isRRect","clipRRect","clipRect","undefined","processColor","color","Color","Array","isArray","Float32Array","Error","createDrawingContext","canvas","state","paints","Paint","getPaint","length","processPaint","opacity","strokeWidth","blendMode","style","strokeJoin","strokeCap","strokeMiter","antiAlias","dither","paint","paintProp","declCtx","push","shouldRestore","colorFilter","colorFilters","popAllAsOne","imageFilter","imageFilters","shader","shaders","pop","maskFilter","maskFilters","pathEffect","pathEffects","copy","setAlphaf","getAlphaf","currentOpacity","setShader","setColor","setStrokeWidth","setBlendMode","BlendMode","enumKey","setStyle","PaintStyle","setStrokeJoin","StrokeJoin","setStrokeCap","StrokeCap","setStrokeMiter","setAntiAlias","setDither","setColorFilter","setImageFilter","setMaskFilter","setPathEffect","processMatrixAndClipping","props","layer","hasTransform","matrix","transform","hasClip","op","invertClip","ClipOp","Difference","Intersect","m3","processTransformProps2","shouldSave","saveLayer","save","concat","restore","exports"],"sources":["DrawingContext.ts"],"sourcesContent":["import {\n enumKey,\n isPathDef,\n processPath,\n processTransformProps2,\n} from \"../dom/nodes\";\nimport type { ClipDef, DrawingNodeProps, GroupProps } from \"../dom/types\";\nimport {\n BlendMode,\n ClipOp,\n isRRect,\n PaintStyle,\n StrokeCap,\n StrokeJoin,\n} from \"../skia/types\";\nimport type {\n SkPath,\n SkRect,\n SkRRect,\n SkCanvas,\n Skia,\n SkPaint,\n} from \"../skia/types\";\n\nimport type { DeclarationContext } from \"./DeclarationContext\";\n\nconst computeClip = (\n Skia: Skia,\n clip: ClipDef | undefined\n):\n | undefined\n | { clipPath: SkPath }\n | { clipRect: SkRect }\n | { clipRRect: SkRRect } => {\n \"worklet\";\n if (clip) {\n if (isPathDef(clip)) {\n return { clipPath: processPath(Skia, clip) };\n } else if (isRRect(clip)) {\n return { clipRRect: clip };\n } else {\n return { clipRect: clip };\n }\n }\n return undefined;\n};\n\nconst processColor = (\n Skia: Skia,\n color: number | string | Float32Array | number[]\n) => {\n \"worklet\";\n if (typeof color === \"string\" || typeof color === \"number\") {\n return Skia.Color(color);\n } else if (Array.isArray(color) || color instanceof Float32Array) {\n return color instanceof Float32Array ? color : new Float32Array(color);\n } else {\n throw new Error(\n `Invalid color type: ${typeof color}. Expected number, string, or array.`\n );\n }\n};\n\nexport const createDrawingContext = (Skia: Skia, canvas: SkCanvas) => {\n \"worklet\";\n const state = {\n paints: [Skia.Paint()],\n };\n\n const getPaint = () => {\n return state.paints[state.paints.length - 1];\n };\n\n const processPaint = (\n {\n opacity,\n color,\n strokeWidth,\n blendMode,\n style,\n strokeJoin,\n strokeCap,\n strokeMiter,\n antiAlias,\n dither,\n paint: paintProp,\n }: DrawingNodeProps,\n declCtx: DeclarationContext\n ) => {\n if (paintProp) {\n declCtx.paints.push(paintProp);\n return true;\n }\n let shouldRestore = false;\n const colorFilter = declCtx.colorFilters.popAllAsOne();\n const imageFilter = declCtx.imageFilters.popAllAsOne();\n const shader = declCtx.shaders.pop();\n const maskFilter = declCtx.maskFilters.pop();\n const pathEffect = declCtx.pathEffects.popAllAsOne();\n\n if (\n opacity !== undefined ||\n color !== undefined ||\n strokeWidth !== undefined ||\n blendMode !== undefined ||\n style !== undefined ||\n strokeJoin !== undefined ||\n strokeCap !== undefined ||\n strokeMiter !== undefined ||\n antiAlias !== undefined ||\n dither !== undefined ||\n colorFilter !== undefined ||\n imageFilter !== undefined ||\n shader !== undefined ||\n maskFilter !== undefined ||\n pathEffect !== undefined\n ) {\n if (!shouldRestore) {\n state.paints.push(getPaint().copy());\n shouldRestore = true;\n }\n }\n\n const paint = getPaint();\n if (opacity !== undefined) {\n paint.setAlphaf(paint.getAlphaf() * opacity);\n }\n if (color !== undefined) {\n const currentOpacity = paint.getAlphaf();\n paint.setShader(null);\n paint.setColor(processColor(Skia, color));\n paint.setAlphaf(currentOpacity * paint.getAlphaf());\n }\n if (strokeWidth !== undefined) {\n paint.setStrokeWidth(strokeWidth);\n }\n if (blendMode !== undefined) {\n paint.setBlendMode(BlendMode[enumKey(blendMode)]);\n }\n if (style !== undefined) {\n paint.setStyle(PaintStyle[enumKey(style)]);\n }\n if (strokeJoin !== undefined) {\n paint.setStrokeJoin(StrokeJoin[enumKey(strokeJoin)]);\n }\n if (strokeCap !== undefined) {\n paint.setStrokeCap(StrokeCap[enumKey(strokeCap)]);\n }\n if (strokeMiter !== undefined) {\n paint.setStrokeMiter(strokeMiter);\n }\n if (antiAlias !== undefined) {\n paint.setAntiAlias(antiAlias);\n }\n if (dither !== undefined) {\n paint.setDither(dither);\n }\n if (colorFilter) {\n paint.setColorFilter(colorFilter);\n }\n if (imageFilter) {\n paint.setImageFilter(imageFilter);\n }\n if (shader) {\n paint.setShader(shader);\n }\n if (maskFilter) {\n paint.setMaskFilter(maskFilter);\n }\n if (pathEffect) {\n paint.setPathEffect(pathEffect);\n }\n return shouldRestore;\n };\n\n const processMatrixAndClipping = (\n props: GroupProps,\n layer?: boolean | SkPaint\n ) => {\n const hasTransform =\n props.matrix !== undefined || props.transform !== undefined;\n const clip = computeClip(Skia, props.clip);\n const hasClip = clip !== undefined;\n const op = props.invertClip ? ClipOp.Difference : ClipOp.Intersect;\n const m3 = processTransformProps2(Skia, props);\n const shouldSave = hasTransform || hasClip || !!layer;\n\n if (shouldSave) {\n if (layer) {\n if (typeof layer === \"boolean\") {\n canvas.saveLayer();\n } else {\n canvas.saveLayer(layer);\n }\n } else {\n canvas.save();\n }\n }\n\n if (m3) {\n canvas.concat(m3);\n }\n if (clip) {\n if (\"clipRect\" in clip) {\n canvas.clipRect(clip.clipRect, op, true);\n } else if (\"clipRRect\" in clip) {\n canvas.clipRRect(clip.clipRRect, op, true);\n } else {\n canvas.clipPath(clip.clipPath, op, true);\n }\n }\n return shouldSave;\n };\n\n return {\n Skia,\n canvas,\n save: () => state.paints.push(getPaint().copy()),\n restore: () => state.paints.pop(),\n getPaint,\n processPaint,\n processMatrixAndClipping,\n };\n};\n\nexport type DrawingContext = ReturnType<typeof createDrawingContext>;\n"],"mappings":"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","ignoreList":[]}
@@ -2,6 +2,7 @@ import type { ReactNode } from "react";
2
2
  import type { SkCanvas, Skia } from "../skia/types";
3
3
  import { NodeType } from "../dom/types";
4
4
  export declare class SkiaSGRoot {
5
+ Skia: Skia;
5
6
  private root;
6
7
  private container;
7
8
  constructor(Skia: Skia, nativeId?: number);
@@ -13,5 +14,6 @@ export declare class SkiaSGRoot {
13
14
  };
14
15
  render(element: ReactNode): void;
15
16
  drawOnCanvas(canvas: SkCanvas): void;
17
+ getPicture(): import("../skia/types").SkPicture;
16
18
  unmount(): void;
17
19
  }
@@ -20,6 +20,7 @@ skiaReconciler.injectIntoDevTools({
20
20
  });
21
21
  class SkiaSGRoot {
22
22
  constructor(Skia, nativeId = -1) {
23
+ this.Skia = Skia;
23
24
  _defineProperty(this, "root", void 0);
24
25
  _defineProperty(this, "container", void 0);
25
26
  this.container = new _Container.Container(Skia, nativeId);
@@ -43,6 +44,12 @@ class SkiaSGRoot {
43
44
  drawOnCanvas(canvas) {
44
45
  this.container.drawOnCanvas(canvas);
45
46
  }
47
+ getPicture() {
48
+ const recorder = this.Skia.PictureRecorder();
49
+ const canvas = recorder.beginRecording();
50
+ this.drawOnCanvas(canvas);
51
+ return recorder.finishRecordingAsPicture();
52
+ }
46
53
  unmount() {
47
54
  this.container.unmounted = true;
48
55
  skiaReconciler.updateContainer(null, this.root, null, () => {
@@ -1 +1 @@
1
- {"version":3,"names":["_reactReconciler","_interopRequireDefault","require","_types","_HostConfig","_Container","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","skiaReconciler","ReactReconciler","sksgHostConfig","injectIntoDevTools","bundleType","version","rendererPackageName","SkiaSGRoot","constructor","Skia","nativeId","container","Container","root","createContainer","console","error","sg","children","type","NodeType","Group","props","isDeclaration","render","element","updateContainer","debug","drawOnCanvas","canvas","unmount","unmounted","exports"],"sources":["Reconciler.ts"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport type { OpaqueRoot } from \"react-reconciler\";\nimport ReactReconciler from \"react-reconciler\";\n\nimport type { SkCanvas, Skia } from \"../skia/types\";\nimport { NodeType } from \"../dom/types\";\n\nimport { debug, sksgHostConfig } from \"./HostConfig\";\nimport { Container } from \"./Container\";\n\nconst skiaReconciler = ReactReconciler(sksgHostConfig);\n\nskiaReconciler.injectIntoDevTools({\n bundleType: 1,\n version: \"0.0.1\",\n rendererPackageName: \"react-native-skia\",\n});\n\nexport class SkiaSGRoot {\n private root: OpaqueRoot;\n private container: Container;\n\n constructor(Skia: Skia, nativeId = -1) {\n this.container = new Container(Skia, nativeId);\n this.root = skiaReconciler.createContainer(\n this.container,\n 0,\n null,\n true,\n null,\n \"\",\n console.error,\n null\n );\n }\n\n get sg() {\n const children = this.container.root;\n return { type: NodeType.Group, props: {}, children, isDeclaration: false };\n }\n\n render(element: ReactNode) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n skiaReconciler.updateContainer(element as any, this.root, null, () => {\n debug(\"updateContainer\");\n });\n }\n\n drawOnCanvas(canvas: SkCanvas) {\n this.container.drawOnCanvas(canvas);\n }\n\n unmount() {\n this.container.unmounted = true;\n skiaReconciler.updateContainer(null, this.root, null, () => {\n debug(\"unmountContainer\");\n });\n }\n}\n"],"mappings":";;;;;;AAEA,IAAAA,gBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AAAwC,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAExC,MAAMgB,cAAc,GAAG,IAAAC,wBAAe,EAACC,0BAAc,CAAC;AAEtDF,cAAc,CAACG,kBAAkB,CAAC;EAChCC,UAAU,EAAE,CAAC;EACbC,OAAO,EAAE,OAAO;EAChBC,mBAAmB,EAAE;AACvB,CAAC,CAAC;AAEK,MAAMC,UAAU,CAAC;EAItBC,WAAWA,CAACC,IAAU,EAAEC,QAAQ,GAAG,CAAC,CAAC,EAAE;IAAA5B,eAAA;IAAAA,eAAA;IACrC,IAAI,CAAC6B,SAAS,GAAG,IAAIC,oBAAS,CAACH,IAAI,EAAEC,QAAQ,CAAC;IAC9C,IAAI,CAACG,IAAI,GAAGb,cAAc,CAACc,eAAe,CACxC,IAAI,CAACH,SAAS,EACd,CAAC,EACD,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,EAAE,EACFI,OAAO,CAACC,KAAK,EACb,IACF,CAAC;EACH;EAEA,IAAIC,EAAEA,CAAA,EAAG;IACP,MAAMC,QAAQ,GAAG,IAAI,CAACP,SAAS,CAACE,IAAI;IACpC,OAAO;MAAEM,IAAI,EAAEC,eAAQ,CAACC,KAAK;MAAEC,KAAK,EAAE,CAAC,CAAC;MAAEJ,QAAQ;MAAEK,aAAa,EAAE;IAAM,CAAC;EAC5E;EAEAC,MAAMA,CAACC,OAAkB,EAAE;IACzB;IACAzB,cAAc,CAAC0B,eAAe,CAACD,OAAO,EAAS,IAAI,CAACZ,IAAI,EAAE,IAAI,EAAE,MAAM;MACpE,IAAAc,iBAAK,EAAC,iBAAiB,CAAC;IAC1B,CAAC,CAAC;EACJ;EAEAC,YAAYA,CAACC,MAAgB,EAAE;IAC7B,IAAI,CAAClB,SAAS,CAACiB,YAAY,CAACC,MAAM,CAAC;EACrC;EAEAC,OAAOA,CAAA,EAAG;IACR,IAAI,CAACnB,SAAS,CAACoB,SAAS,GAAG,IAAI;IAC/B/B,cAAc,CAAC0B,eAAe,CAAC,IAAI,EAAE,IAAI,CAACb,IAAI,EAAE,IAAI,EAAE,MAAM;MAC1D,IAAAc,iBAAK,EAAC,kBAAkB,CAAC;IAC3B,CAAC,CAAC;EACJ;AACF;AAACK,OAAA,CAAAzB,UAAA,GAAAA,UAAA","ignoreList":[]}
1
+ {"version":3,"names":["_reactReconciler","_interopRequireDefault","require","_types","_HostConfig","_Container","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","skiaReconciler","ReactReconciler","sksgHostConfig","injectIntoDevTools","bundleType","version","rendererPackageName","SkiaSGRoot","constructor","Skia","nativeId","container","Container","root","createContainer","console","error","sg","children","type","NodeType","Group","props","isDeclaration","render","element","updateContainer","debug","drawOnCanvas","canvas","getPicture","recorder","PictureRecorder","beginRecording","finishRecordingAsPicture","unmount","unmounted","exports"],"sources":["Reconciler.ts"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport type { OpaqueRoot } from \"react-reconciler\";\nimport ReactReconciler from \"react-reconciler\";\n\nimport type { SkCanvas, Skia } from \"../skia/types\";\nimport { NodeType } from \"../dom/types\";\n\nimport { debug, sksgHostConfig } from \"./HostConfig\";\nimport { Container } from \"./Container\";\n\nconst skiaReconciler = ReactReconciler(sksgHostConfig);\n\nskiaReconciler.injectIntoDevTools({\n bundleType: 1,\n version: \"0.0.1\",\n rendererPackageName: \"react-native-skia\",\n});\n\nexport class SkiaSGRoot {\n private root: OpaqueRoot;\n private container: Container;\n\n constructor(public Skia: Skia, nativeId = -1) {\n this.container = new Container(Skia, nativeId);\n this.root = skiaReconciler.createContainer(\n this.container,\n 0,\n null,\n true,\n null,\n \"\",\n console.error,\n null\n );\n }\n\n get sg() {\n const children = this.container.root;\n return { type: NodeType.Group, props: {}, children, isDeclaration: false };\n }\n\n render(element: ReactNode) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n skiaReconciler.updateContainer(element as any, this.root, null, () => {\n debug(\"updateContainer\");\n });\n }\n\n drawOnCanvas(canvas: SkCanvas) {\n this.container.drawOnCanvas(canvas);\n }\n\n getPicture() {\n const recorder = this.Skia.PictureRecorder();\n const canvas = recorder.beginRecording();\n this.drawOnCanvas(canvas);\n return recorder.finishRecordingAsPicture();\n }\n\n unmount() {\n this.container.unmounted = true;\n skiaReconciler.updateContainer(null, this.root, null, () => {\n debug(\"unmountContainer\");\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,10 @@
1
- import type { BlendColorFilterProps, DeclarationContext, LerpColorFilterProps, MatrixColorFilterProps } from "../../dom/types";
2
- export declare const makeBlendColorFilter: (ctx: DeclarationContext, props: BlendColorFilterProps) => import("../../skia/types").SkColorFilter;
3
- export declare const makeSRGBToLinearGammaColorFilter: (ctx: DeclarationContext) => import("../../skia/types").SkColorFilter;
4
- export declare const makeLinearToSRGBGammaColorFilter: (ctx: DeclarationContext) => import("../../skia/types").SkColorFilter;
1
+ import type { BlendColorFilterProps, LerpColorFilterProps, MatrixColorFilterProps } from "../../dom/types";
2
+ import type { SkColorFilter } from "../../skia/types";
3
+ import type { DeclarationContext } from "../DeclarationContext";
4
+ export declare const composeColorFilters: (ctx: DeclarationContext, cf: SkColorFilter, processChildren: () => void) => void;
5
+ export declare const makeBlendColorFilter: (ctx: DeclarationContext, props: BlendColorFilterProps) => SkColorFilter;
6
+ export declare const makeSRGBToLinearGammaColorFilter: (ctx: DeclarationContext) => SkColorFilter;
7
+ export declare const makeLinearToSRGBGammaColorFilter: (ctx: DeclarationContext) => SkColorFilter;
5
8
  export declare const declareLerpColorFilter: (ctx: DeclarationContext, props: LerpColorFilterProps) => void;
6
- export declare const makeMatrixColorFilter: (ctx: DeclarationContext, props: MatrixColorFilterProps) => import("../../skia/types").SkColorFilter;
7
- export declare const makeLumaColorFilter: (ctx: DeclarationContext) => import("../../skia/types").SkColorFilter;
9
+ export declare const makeMatrixColorFilter: (ctx: DeclarationContext, props: MatrixColorFilterProps) => SkColorFilter;
10
+ export declare const makeLumaColorFilter: (ctx: DeclarationContext) => SkColorFilter;
@@ -1,13 +1,27 @@
1
1
  "use strict";
2
- "worklet";
3
2
 
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports.makeSRGBToLinearGammaColorFilter = exports.makeMatrixColorFilter = exports.makeLumaColorFilter = exports.makeLinearToSRGBGammaColorFilter = exports.makeBlendColorFilter = exports.declareLerpColorFilter = void 0;
6
+ exports.makeSRGBToLinearGammaColorFilter = exports.makeMatrixColorFilter = exports.makeLumaColorFilter = exports.makeLinearToSRGBGammaColorFilter = exports.makeBlendColorFilter = exports.declareLerpColorFilter = exports.composeColorFilters = void 0;
8
7
  var _nodes = require("../../dom/nodes");
9
8
  var _types = require("../../skia/types");
9
+ const composeColorFilters = (ctx, cf, processChildren) => {
10
+ "worklet";
11
+
12
+ const {
13
+ Skia
14
+ } = ctx;
15
+ ctx.colorFilters.save();
16
+ processChildren();
17
+ const cf1 = ctx.colorFilters.popAllAsOne();
18
+ ctx.colorFilters.restore();
19
+ ctx.colorFilters.push(cf1 ? Skia.ColorFilter.MakeCompose(cf, cf1) : cf);
20
+ };
21
+ exports.composeColorFilters = composeColorFilters;
10
22
  const makeBlendColorFilter = (ctx, props) => {
23
+ "worklet";
24
+
11
25
  const {
12
26
  mode
13
27
  } = props;
@@ -17,16 +31,22 @@ const makeBlendColorFilter = (ctx, props) => {
17
31
  };
18
32
  exports.makeBlendColorFilter = makeBlendColorFilter;
19
33
  const makeSRGBToLinearGammaColorFilter = ctx => {
34
+ "worklet";
35
+
20
36
  const cf = ctx.Skia.ColorFilter.MakeSRGBToLinearGamma();
21
37
  return cf;
22
38
  };
23
39
  exports.makeSRGBToLinearGammaColorFilter = makeSRGBToLinearGammaColorFilter;
24
40
  const makeLinearToSRGBGammaColorFilter = ctx => {
41
+ "worklet";
42
+
25
43
  const cf = ctx.Skia.ColorFilter.MakeLinearToSRGBGamma();
26
44
  return cf;
27
45
  };
28
46
  exports.makeLinearToSRGBGammaColorFilter = makeLinearToSRGBGammaColorFilter;
29
47
  const declareLerpColorFilter = (ctx, props) => {
48
+ "worklet";
49
+
30
50
  const {
31
51
  t
32
52
  } = props;
@@ -40,6 +60,8 @@ const declareLerpColorFilter = (ctx, props) => {
40
60
  };
41
61
  exports.declareLerpColorFilter = declareLerpColorFilter;
42
62
  const makeMatrixColorFilter = (ctx, props) => {
63
+ "worklet";
64
+
43
65
  const {
44
66
  matrix
45
67
  } = props;
@@ -48,6 +70,8 @@ const makeMatrixColorFilter = (ctx, props) => {
48
70
  };
49
71
  exports.makeMatrixColorFilter = makeMatrixColorFilter;
50
72
  const makeLumaColorFilter = ctx => {
73
+ "worklet";
74
+
51
75
  const cf = ctx.Skia.ColorFilter.MakeLumaColorFilter();
52
76
  return cf;
53
77
  };