@shopify/react-native-skia 1.7.7 → 1.8.0

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 (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
@@ -3,20 +3,15 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
3
3
  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); }
4
4
  import { JsiSkDOM } from "../dom/nodes";
5
5
  export class Container {
6
- constructor(Skia, redraw = () => {}, getNativeId = () => 0, native) {
6
+ constructor(redraw = () => {}, getNativeId = () => 0) {
7
7
  this.redraw = redraw;
8
8
  this.getNativeId = getNativeId;
9
9
  _defineProperty(this, "_root", void 0);
10
10
  _defineProperty(this, "Sk", void 0);
11
11
  _defineProperty(this, "unmounted", false);
12
- this.Sk = new JsiSkDOM({
13
- Skia
14
- }, native);
12
+ this.Sk = new JsiSkDOM();
15
13
  this._root = this.Sk.Group();
16
14
  }
17
- draw(ctx) {
18
- this._root.render(ctx);
19
- }
20
15
  get root() {
21
16
  return this._root;
22
17
  }
@@ -1 +1 @@
1
- {"version":3,"names":["JsiSkDOM","Container","constructor","Skia","redraw","getNativeId","native","_defineProperty","Sk","_root","Group","draw","ctx","render","root"],"sources":["Container.tsx"],"sourcesContent":["import { JsiSkDOM } from \"../dom/nodes\";\nimport type {\n GroupProps,\n DrawingContext,\n RenderNode,\n SkDOM,\n} from \"../dom/types\";\nimport type { Skia } from \"../skia/types\";\n\nexport class Container {\n private _root: RenderNode<GroupProps>;\n public Sk: SkDOM;\n public unmounted = false;\n constructor(\n Skia: Skia,\n public redraw: () => void = () => {},\n public getNativeId: () => number = () => 0,\n native: boolean\n ) {\n this.Sk = new JsiSkDOM({ Skia }, native);\n this._root = this.Sk.Group();\n }\n\n draw(ctx: DrawingContext) {\n this._root.render(ctx);\n }\n\n get root() {\n return this._root;\n }\n}\n"],"mappings":";;;AAAA,SAASA,QAAQ,QAAQ,cAAc;AASvC,OAAO,MAAMC,SAAS,CAAC;EAIrBC,WAAWA,CACTC,IAAU,EACHC,MAAkB,GAAGA,CAAA,KAAM,CAAC,CAAC,EAC7BC,WAAyB,GAAGA,CAAA,KAAM,CAAC,EAC1CC,MAAe,EACf;IAAA,KAHOF,MAAkB,GAAlBA,MAAkB;IAAA,KAClBC,WAAyB,GAAzBA,WAAyB;IAAAE,eAAA;IAAAA,eAAA;IAAAA,eAAA,oBAJf,KAAK;IAOtB,IAAI,CAACC,EAAE,GAAG,IAAIR,QAAQ,CAAC;MAAEG;IAAK,CAAC,EAAEG,MAAM,CAAC;IACxC,IAAI,CAACG,KAAK,GAAG,IAAI,CAACD,EAAE,CAACE,KAAK,CAAC,CAAC;EAC9B;EAEAC,IAAIA,CAACC,GAAmB,EAAE;IACxB,IAAI,CAACH,KAAK,CAACI,MAAM,CAACD,GAAG,CAAC;EACxB;EAEA,IAAIE,IAAIA,CAAA,EAAG;IACT,OAAO,IAAI,CAACL,KAAK;EACnB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["JsiSkDOM","Container","constructor","redraw","getNativeId","_defineProperty","Sk","_root","Group","root"],"sources":["Container.tsx"],"sourcesContent":["import { JsiSkDOM } from \"../dom/nodes\";\nimport type { Node, SkDOM } from \"../dom/types\";\n\nexport class Container {\n private _root: Node<unknown>;\n public Sk: SkDOM;\n public unmounted = false;\n constructor(\n public redraw: () => void = () => {},\n public getNativeId: () => number = () => 0\n ) {\n this.Sk = new JsiSkDOM();\n this._root = this.Sk.Group();\n }\n\n get root() {\n return this._root;\n }\n}\n"],"mappings":";;;AAAA,SAASA,QAAQ,QAAQ,cAAc;AAGvC,OAAO,MAAMC,SAAS,CAAC;EAIrBC,WAAWA,CACFC,MAAkB,GAAGA,CAAA,KAAM,CAAC,CAAC,EAC7BC,WAAyB,GAAGA,CAAA,KAAM,CAAC,EAC1C;IAAA,KAFOD,MAAkB,GAAlBA,MAAkB;IAAA,KAClBC,WAAyB,GAAzBA,WAAyB;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA,oBAHf,KAAK;IAKtB,IAAI,CAACC,EAAE,GAAG,IAAIN,QAAQ,CAAC,CAAC;IACxB,IAAI,CAACO,KAAK,GAAG,IAAI,CAACD,EAAE,CAACE,KAAK,CAAC,CAAC;EAC9B;EAEA,IAAIC,IAAIA,CAAA,EAAG;IACT,OAAO,IAAI,CAACF,KAAK;EACnB;AACF","ignoreList":[]}
@@ -2,15 +2,12 @@ import { NodeType } from "../dom/types";
2
2
  import type { DeclarationNode, FractalNoiseProps, RenderNode, CircleProps, DrawingNodeProps, ImageProps, PaintProps, PathProps, LineProps, OvalProps, DiffRectProps, PointsProps, RectProps, RoundedRectProps, TextProps, VerticesProps, BlurMaskFilterProps, BlendImageFilterProps, BlurImageFilterProps, DisplacementMapImageFilterProps, DropShadowImageFilterProps, OffsetImageFilterProps, RuntimeShaderImageFilterProps, MatrixColorFilterProps, ShaderProps, ImageShaderProps, LinearGradientProps, GroupProps, PatchProps, BlendColorFilterProps, DashPathEffectProps, DiscretePathEffectProps, CornerPathEffectProps, Line2DPathEffectProps, Path1DPathEffectProps, Path2DPathEffectProps, TextPathProps, TextBlobProps, GlyphsProps, TwoPointConicalGradientProps, TurbulenceProps, SweepGradientProps, RadialGradientProps, ColorProps, PictureProps, ImageSVGProps, LerpColorFilterProps, BoxProps, BoxShadowProps, ParagraphProps, AtlasProps } from "../dom/types";
3
3
  import type { ChildrenProps } from "../dom/types/Common";
4
4
  import type { BlendProps, MorphologyImageFilterProps } from "../dom/types/ImageFilters";
5
- import type { SkRect, SkRRect } from "../skia/types";
6
- import type { JsiDrawingNode } from "../dom/nodes/DrawingNode";
7
5
  import type { Container } from "./Container";
8
6
  import type { SkiaProps } from "./processors";
9
- export declare const NATIVE_DOM: boolean;
10
7
  declare global {
11
8
  var SkiaDomApi: {
12
- RectNode: (props: RectProps) => JsiDrawingNode<RectProps, SkRect>;
13
- RRectNode: (props: RoundedRectProps) => JsiDrawingNode<RoundedRectProps, SkRRect>;
9
+ RectNode: (props: RectProps) => RenderNode<RectProps>;
10
+ RRectNode: (props: RoundedRectProps) => RenderNode<RoundedRectProps>;
14
11
  GroupNode: (props: GroupProps) => RenderNode<GroupProps>;
15
12
  PaintNode: (props: PaintProps) => DeclarationNode<PaintProps>;
16
13
  FillNode: (props: PaintProps) => RenderNode<PaintProps>;
@@ -129,4 +126,4 @@ declare global {
129
126
  }
130
127
  }
131
128
  }
132
- export declare const createNode: (container: Container, type: NodeType, props: any) => RenderNode<ChildrenProps> | DeclarationNode<PaintProps> | DeclarationNode<BlurMaskFilterProps> | DeclarationNode<BlendImageFilterProps> | DeclarationNode<BlurImageFilterProps> | DeclarationNode<OffsetImageFilterProps> | DeclarationNode<MorphologyImageFilterProps> | DeclarationNode<DisplacementMapImageFilterProps> | DeclarationNode<RuntimeShaderImageFilterProps> | DeclarationNode<MatrixColorFilterProps> | DeclarationNode<null> | DeclarationNode<LerpColorFilterProps> | DeclarationNode<ImageShaderProps> | DeclarationNode<ColorProps> | DeclarationNode<TurbulenceProps> | DeclarationNode<LinearGradientProps> | DeclarationNode<RadialGradientProps> | DeclarationNode<SweepGradientProps> | DeclarationNode<CornerPathEffectProps> | DeclarationNode<DiscretePathEffectProps> | DeclarationNode<DashPathEffectProps> | DeclarationNode<Path1DPathEffectProps> | DeclarationNode<Path2DPathEffectProps> | DeclarationNode<Line2DPathEffectProps> | DeclarationNode<BlendProps> | DeclarationNode<BoxShadowProps>;
129
+ export declare const createNode: (container: Container, type: NodeType, props: any) => RenderNode<ChildrenProps> | DeclarationNode<BlurMaskFilterProps> | DeclarationNode<null> | DeclarationNode<ImageShaderProps> | DeclarationNode<ColorProps> | DeclarationNode<TurbulenceProps> | DeclarationNode<LinearGradientProps> | DeclarationNode<RadialGradientProps> | DeclarationNode<SweepGradientProps> | DeclarationNode<BoxShadowProps>;
@@ -1,8 +1,5 @@
1
1
  import { NodeType } from "../dom/types";
2
2
  import { exhaustiveCheck } from "./typeddash";
3
- // This flag should only be turned on for debugging/testing
4
- const shouldUseJSDomOnNative = false;
5
- export const NATIVE_DOM = shouldUseJSDomOnNative ? false : !!global.SkiaDomApi;
6
3
  export const createNode = (container, type, props) => {
7
4
  const {
8
5
  Sk
@@ -1 +1 @@
1
- {"version":3,"names":["NodeType","exhaustiveCheck","shouldUseJSDomOnNative","NATIVE_DOM","global","SkiaDomApi","createNode","container","type","props","Sk","Layer","Group","Paint","Fill","Image","Circle","Path","Line","Oval","Patch","Points","Rect","RRect","Vertices","Text","TextPath","TextBlob","Glyphs","Atlas","DiffRect","Picture","ImageSVG","BlurMaskFilter","BlendImageFilter","BlurImageFilter","OffsetImageFilter","DropShadowImageFilter","DisplacementMapImageFilter","MorphologyImageFilter","RuntimeShaderImageFilter","MatrixColorFilter","BlendColorFilter","LerpColorFilter","LumaColorFilter","LinearToSRGBGammaColorFilter","SRGBToLinearGammaColorFilter","Shader","ImageShader","ColorShader","Turbulence","FractalNoise","LinearGradient","RadialGradient","SweepGradient","TwoPointConicalGradient","CornerPathEffect","DiscretePathEffect","DashPathEffect","Path1DPathEffect","Path2DPathEffect","SumPathEffect","Line2DPathEffect","Blend","BackdropFilter","Box","BoxShadow","Paragraph"],"sources":["HostComponents.ts"],"sourcesContent":["import { NodeType } from \"../dom/types\";\nimport type {\n DeclarationNode,\n FractalNoiseProps,\n RenderNode,\n CircleProps,\n DrawingNodeProps,\n ImageProps,\n PaintProps,\n PathProps,\n LineProps,\n OvalProps,\n DiffRectProps,\n PointsProps,\n RectProps,\n RoundedRectProps,\n TextProps,\n VerticesProps,\n BlurMaskFilterProps,\n BlendImageFilterProps,\n BlurImageFilterProps,\n DisplacementMapImageFilterProps,\n DropShadowImageFilterProps,\n OffsetImageFilterProps,\n RuntimeShaderImageFilterProps,\n MatrixColorFilterProps,\n ShaderProps,\n ImageShaderProps,\n LinearGradientProps,\n GroupProps,\n PatchProps,\n BlendColorFilterProps,\n DashPathEffectProps,\n DiscretePathEffectProps,\n CornerPathEffectProps,\n Line2DPathEffectProps,\n Path1DPathEffectProps,\n Path2DPathEffectProps,\n TextPathProps,\n TextBlobProps,\n GlyphsProps,\n TwoPointConicalGradientProps,\n TurbulenceProps,\n SweepGradientProps,\n RadialGradientProps,\n ColorProps,\n PictureProps,\n ImageSVGProps,\n LerpColorFilterProps,\n BoxProps,\n BoxShadowProps,\n ParagraphProps,\n AtlasProps,\n} from \"../dom/types\";\nimport type { ChildrenProps } from \"../dom/types/Common\";\nimport type {\n BlendProps,\n MorphologyImageFilterProps,\n} from \"../dom/types/ImageFilters\";\nimport type { SkRect, SkRRect } from \"../skia/types\";\nimport type { JsiDrawingNode } from \"../dom/nodes/DrawingNode\";\n\nimport type { Container } from \"./Container\";\nimport { exhaustiveCheck } from \"./typeddash\";\nimport type { SkiaProps } from \"./processors\";\n\n// This flag should only be turned on for debugging/testing\nconst shouldUseJSDomOnNative = false;\nexport const NATIVE_DOM = shouldUseJSDomOnNative ? false : !!global.SkiaDomApi;\n\ndeclare global {\n var SkiaDomApi: {\n RectNode: (props: RectProps) => JsiDrawingNode<RectProps, SkRect>;\n RRectNode: (\n props: RoundedRectProps\n ) => JsiDrawingNode<RoundedRectProps, SkRRect>;\n GroupNode: (props: GroupProps) => RenderNode<GroupProps>;\n PaintNode: (props: PaintProps) => DeclarationNode<PaintProps>;\n FillNode: (props: PaintProps) => RenderNode<PaintProps>;\n CircleNode: (props: CircleProps) => RenderNode<CircleProps>;\n PathNode: (props: PathProps) => RenderNode<PathProps>;\n LineNode: (props: LineProps) => RenderNode<LineProps>;\n ImageNode: (props: ImageProps) => RenderNode<ImageProps>;\n OvalNode: (props: OvalProps) => RenderNode<OvalProps>;\n PatchNode: (props: PatchProps) => RenderNode<PatchProps>;\n PointsNode: (props: PointsProps) => RenderNode<PointsProps>;\n DiffRectNode: (props: DiffRectProps) => RenderNode<DiffRectProps>;\n AtlasNode: (props: AtlasProps) => RenderNode<AtlasProps>;\n\n // Mask filters\n BlurMaskFilterNode: (\n props: BlurMaskFilterProps\n ) => DeclarationNode<BlurMaskFilterProps>;\n\n // Path effects\n DashPathEffectNode: (\n props: DashPathEffectProps\n ) => DeclarationNode<DashPathEffectProps>;\n DiscretePathEffectNode: (\n props: DiscretePathEffectProps\n ) => DeclarationNode<DiscretePathEffectProps>;\n CornerPathEffectNode: (\n props: CornerPathEffectProps\n ) => DeclarationNode<CornerPathEffectProps>;\n Path1DPathEffectNode: (\n props: Path1DPathEffectProps\n ) => DeclarationNode<Path1DPathEffectProps>;\n Path2DPathEffectNode: (\n props: Path2DPathEffectProps\n ) => DeclarationNode<Path2DPathEffectProps>;\n Line2DPathEffectNode: (\n props: Line2DPathEffectProps\n ) => DeclarationNode<Line2DPathEffectProps>;\n SumPathEffectNode: () => DeclarationNode<null>;\n\n // Image filters\n BlendImageFilterNode: (\n props: BlendImageFilterProps\n ) => DeclarationNode<BlendImageFilterProps>;\n DropShadowImageFilterNode: (\n props: DropShadowImageFilterProps\n ) => DeclarationNode<DropShadowImageFilterProps>;\n DisplacementMapImageFilterNode: (\n props: DisplacementMapImageFilterProps\n ) => DeclarationNode<DisplacementMapImageFilterProps>;\n BlurImageFilterNode: (\n props: BlurImageFilterProps\n ) => DeclarationNode<BlurImageFilterProps>;\n OffsetImageFilterNode: (\n props: OffsetImageFilterProps\n ) => DeclarationNode<OffsetImageFilterProps>;\n MorphologyImageFilterNode: (\n props: MorphologyImageFilterProps\n ) => DeclarationNode<MorphologyImageFilterProps>;\n RuntimeShaderImageFilterNode: (\n props: RuntimeShaderImageFilterProps\n ) => DeclarationNode<RuntimeShaderImageFilterProps>;\n\n // Color filters\n MatrixColorFilterNode: (\n props: MatrixColorFilterProps\n ) => DeclarationNode<MatrixColorFilterProps>;\n BlendColorFilterNode: (\n props: BlendColorFilterProps\n ) => DeclarationNode<BlendColorFilterProps>;\n LinearToSRGBGammaColorFilterNode: () => DeclarationNode<null>;\n SRGBToLinearGammaColorFilterNode: () => DeclarationNode<null>;\n LumaColorFilterNode: () => DeclarationNode<null>;\n LerpColorFilterNode: (\n props: LerpColorFilterProps\n ) => DeclarationNode<LerpColorFilterProps>;\n\n // Shaders\n ShaderNode: (props: ShaderProps) => DeclarationNode<ShaderProps>;\n ImageShaderNode: (\n props: ImageShaderProps\n ) => DeclarationNode<ImageShaderProps>;\n ColorShaderNode: (props: ColorProps) => DeclarationNode<ColorProps>;\n TurbulenceNode: (\n props: TurbulenceProps\n ) => DeclarationNode<TurbulenceProps>;\n FractalNoiseNode: (\n props: FractalNoiseProps\n ) => DeclarationNode<FractalNoiseProps>;\n LinearGradientNode: (\n props: LinearGradientProps\n ) => DeclarationNode<LinearGradientProps>;\n RadialGradientNode: (\n props: RadialGradientProps\n ) => DeclarationNode<RadialGradientProps>;\n SweepGradientNode: (\n props: SweepGradientProps\n ) => DeclarationNode<SweepGradientProps>;\n TwoPointConicalGradientNode: (\n props: TwoPointConicalGradientProps\n ) => DeclarationNode<TwoPointConicalGradientProps>;\n PictureNode: (props: PictureProps) => RenderNode<PictureProps>;\n ImageSVGNode: (props: ImageSVGProps) => RenderNode<ImageSVGProps>;\n VerticesNode: (props: VerticesProps) => RenderNode<VerticesProps>;\n TextNode: (prop: TextProps) => RenderNode<TextProps>;\n TextPathNode: (prop: TextPathProps) => RenderNode<TextPathProps>;\n TextBlobNode: (prop: TextBlobProps) => RenderNode<TextBlobProps>;\n GlyphsNode: (prop: GlyphsProps) => RenderNode<GlyphsProps>;\n BlendNode: (prop: BlendProps) => DeclarationNode<BlendProps>;\n BackdropFilterNode: (prop: ChildrenProps) => RenderNode<ChildrenProps>;\n BoxNode: (prop: BoxProps) => RenderNode<BoxProps>;\n BoxShadowNode: (prop: BoxShadowProps) => DeclarationNode<BoxShadowProps>;\n LayerNode: (prop: ChildrenProps) => RenderNode<ChildrenProps>;\n\n // Paragraph\n ParagraphNode: (props: ParagraphProps) => RenderNode<ParagraphProps>;\n };\n\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n skGroup: SkiaProps<GroupProps>;\n skLayer: SkiaProps<ChildrenProps>;\n skPaint: SkiaProps<PaintProps>;\n\n // Drawings\n skFill: SkiaProps<DrawingNodeProps>;\n skImage: SkiaProps<ImageProps>;\n skCircle: SkiaProps<CircleProps>;\n skPath: SkiaProps<PathProps>;\n skLine: SkiaProps<LineProps>;\n skOval: SkiaProps<OvalProps>;\n skPatch: SkiaProps<PatchProps>;\n skPoints: SkiaProps<PointsProps>;\n skRect: SkiaProps<RectProps>;\n skRRect: SkiaProps<RoundedRectProps>;\n skAtlas: SkiaProps<AtlasProps>;\n skVertices: SkiaProps<VerticesProps>;\n skText: SkiaProps<TextProps>;\n skTextPath: SkiaProps<TextPathProps>;\n skTextBlob: SkiaProps<TextBlobProps>;\n skGlyphs: SkiaProps<GlyphsProps>;\n skDiffRect: SkiaProps<DiffRectProps>;\n skPicture: SkiaProps<PictureProps>;\n skImageSVG: SkiaProps<ImageSVGProps>;\n\n // BlurMaskFilters\n skBlurMaskFilter: SkiaProps<BlurMaskFilterProps>;\n\n // ImageFilters\n skBlendImageFilter: SkiaProps<BlendImageFilterProps>;\n skBlurImageFilter: SkiaProps<BlurImageFilterProps>;\n skOffsetImageFilter: SkiaProps<OffsetImageFilterProps>;\n skDropShadowImageFilter: SkiaProps<DropShadowImageFilterProps>;\n skDisplacementMapImageFilter: SkiaProps<DisplacementMapImageFilterProps>;\n skRuntimeShaderImageFilter: SkiaProps<RuntimeShaderImageFilterProps>;\n skMorphologyImageFilter: SkiaProps<MorphologyImageFilterProps>;\n\n // ColorFilters\n skMatrixColorFilter: SkiaProps<MatrixColorFilterProps>;\n skBlendColorFilter: SkiaProps<BlendColorFilterProps>;\n skLinearToSRGBGammaColorFilter: SkiaProps<ChildrenProps>;\n skSRGBToLinearGammaColorFilter: SkiaProps<ChildrenProps>;\n skLumaColorFilter: SkiaProps<ChildrenProps>;\n skLerpColorFilter: SkiaProps<LerpColorFilterProps>;\n\n // Shaders\n skShader: SkiaProps<ShaderProps>;\n skImageShader: SkiaProps<ImageShaderProps>;\n skColorShader: SkiaProps<ColorProps>;\n skTurbulence: SkiaProps<TurbulenceProps>;\n skFractalNoise: SkiaProps<FractalNoiseProps>;\n skLinearGradient: SkiaProps<LinearGradientProps>;\n skRadialGradient: SkiaProps<RadialGradientProps>;\n skSweepGradient: SkiaProps<SweepGradientProps>;\n skTwoPointConicalGradient: SkiaProps<TwoPointConicalGradientProps>;\n\n // Path Effects\n skDiscretePathEffect: SkiaProps<DiscretePathEffectProps>;\n skDashPathEffect: SkiaProps<DashPathEffectProps>;\n skPath1DPathEffect: SkiaProps<Path1DPathEffectProps>;\n skPath2DPathEffect: SkiaProps<Path2DPathEffectProps>;\n skCornerPathEffect: SkiaProps<CornerPathEffectProps>;\n skSumPathEffect: ChildrenProps;\n skLine2DPathEffect: SkiaProps<Line2DPathEffectProps>;\n\n // Mixed declarations/drawings\n skBlend: SkiaProps<BlendProps>;\n skBackdropFilter: SkiaProps<ChildrenProps>;\n skBox: SkiaProps<BoxProps>;\n skBoxShadow: SkiaProps<BoxShadowProps>;\n\n // Paragraph\n skParagraph: SkiaProps<ParagraphProps>;\n }\n }\n}\n\nexport const createNode = (\n container: Container,\n type: NodeType,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n props: any\n) => {\n const { Sk } = container;\n switch (type) {\n case NodeType.Layer:\n return Sk.Layer(props);\n case NodeType.Group:\n return Sk.Group(props);\n case NodeType.Paint:\n return Sk.Paint(props);\n // Drawings\n case NodeType.Fill:\n return Sk.Fill(props);\n case NodeType.Image:\n return Sk.Image(props);\n case NodeType.Circle:\n return Sk.Circle(props);\n case NodeType.Path:\n return Sk.Path(props);\n case NodeType.Line:\n return Sk.Line(props);\n case NodeType.Oval:\n return Sk.Oval(props);\n case NodeType.Patch:\n return Sk.Patch(props);\n case NodeType.Points:\n return Sk.Points(props);\n case NodeType.Rect:\n return Sk.Rect(props);\n case NodeType.RRect:\n return Sk.RRect(props);\n case NodeType.Vertices:\n return Sk.Vertices(props);\n case NodeType.Text:\n return Sk.Text(props);\n case NodeType.TextPath:\n return Sk.TextPath(props);\n case NodeType.TextBlob:\n return Sk.TextBlob(props);\n case NodeType.Glyphs:\n return Sk.Glyphs(props);\n case NodeType.Atlas:\n return Sk.Atlas(props);\n case NodeType.DiffRect:\n return Sk.DiffRect(props);\n case NodeType.Picture:\n return Sk.Picture(props);\n case NodeType.ImageSVG:\n return Sk.ImageSVG(props);\n // Mask Filter\n case NodeType.BlurMaskFilter:\n return Sk.BlurMaskFilter(props);\n // Image Filter\n case NodeType.BlendImageFilter:\n return Sk.BlendImageFilter(props);\n case NodeType.BlurImageFilter:\n return Sk.BlurImageFilter(props);\n case NodeType.OffsetImageFilter:\n return Sk.OffsetImageFilter(props);\n case NodeType.DropShadowImageFilter:\n return Sk.DropShadowImageFilter(props);\n case NodeType.DisplacementMapImageFilter:\n return Sk.DisplacementMapImageFilter(props);\n case NodeType.MorphologyImageFilter:\n return Sk.MorphologyImageFilter(props);\n case NodeType.RuntimeShaderImageFilter:\n return Sk.RuntimeShaderImageFilter(props);\n // Color Filter\n case NodeType.MatrixColorFilter:\n return Sk.MatrixColorFilter(props);\n case NodeType.BlendColorFilter:\n return Sk.BlendColorFilter(props);\n case NodeType.LerpColorFilter:\n return Sk.LerpColorFilter(props);\n case NodeType.LumaColorFilter:\n return Sk.LumaColorFilter();\n case NodeType.LinearToSRGBGammaColorFilter:\n return Sk.LinearToSRGBGammaColorFilter();\n case NodeType.SRGBToLinearGammaColorFilter:\n return Sk.SRGBToLinearGammaColorFilter();\n // Shader\n case NodeType.Shader:\n return Sk.Shader(props);\n case NodeType.ImageShader:\n return Sk.ImageShader(props);\n case NodeType.ColorShader:\n return Sk.ColorShader(props);\n case NodeType.Turbulence:\n return Sk.Turbulence(props);\n case NodeType.FractalNoise:\n return Sk.FractalNoise(props);\n case NodeType.LinearGradient:\n return Sk.LinearGradient(props);\n case NodeType.RadialGradient:\n return Sk.RadialGradient(props);\n case NodeType.SweepGradient:\n return Sk.SweepGradient(props);\n case NodeType.TwoPointConicalGradient:\n return Sk.TwoPointConicalGradient(props);\n // Path Effect\n case NodeType.CornerPathEffect:\n return Sk.CornerPathEffect(props);\n case NodeType.DiscretePathEffect:\n return Sk.DiscretePathEffect(props);\n case NodeType.DashPathEffect:\n return Sk.DashPathEffect(props);\n case NodeType.Path1DPathEffect:\n return Sk.Path1DPathEffect(props);\n case NodeType.Path2DPathEffect:\n return Sk.Path2DPathEffect(props);\n case NodeType.SumPathEffect:\n return Sk.SumPathEffect();\n case NodeType.Line2DPathEffect:\n return Sk.Line2DPathEffect(props);\n // Mixed\n case NodeType.Blend:\n return Sk.Blend(props);\n case NodeType.BackdropFilter:\n return Sk.BackdropFilter(props);\n case NodeType.Box:\n return Sk.Box(props);\n case NodeType.BoxShadow:\n return Sk.BoxShadow(props);\n // Paragraph\n case NodeType.Paragraph:\n return Sk.Paragraph(props);\n default:\n return exhaustiveCheck(type);\n }\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NodeType","exhaustiveCheck","createNode","container","type","props","Sk","Layer","Group","Paint","Fill","Image","Circle","Path","Line","Oval","Patch","Points","Rect","RRect","Vertices","Text","TextPath","TextBlob","Glyphs","Atlas","DiffRect","Picture","ImageSVG","BlurMaskFilter","BlendImageFilter","BlurImageFilter","OffsetImageFilter","DropShadowImageFilter","DisplacementMapImageFilter","MorphologyImageFilter","RuntimeShaderImageFilter","MatrixColorFilter","BlendColorFilter","LerpColorFilter","LumaColorFilter","LinearToSRGBGammaColorFilter","SRGBToLinearGammaColorFilter","Shader","ImageShader","ColorShader","Turbulence","FractalNoise","LinearGradient","RadialGradient","SweepGradient","TwoPointConicalGradient","CornerPathEffect","DiscretePathEffect","DashPathEffect","Path1DPathEffect","Path2DPathEffect","SumPathEffect","Line2DPathEffect","Blend","BackdropFilter","Box","BoxShadow","Paragraph"],"sources":["HostComponents.ts"],"sourcesContent":["import { NodeType } from \"../dom/types\";\nimport type {\n DeclarationNode,\n FractalNoiseProps,\n RenderNode,\n CircleProps,\n DrawingNodeProps,\n ImageProps,\n PaintProps,\n PathProps,\n LineProps,\n OvalProps,\n DiffRectProps,\n PointsProps,\n RectProps,\n RoundedRectProps,\n TextProps,\n VerticesProps,\n BlurMaskFilterProps,\n BlendImageFilterProps,\n BlurImageFilterProps,\n DisplacementMapImageFilterProps,\n DropShadowImageFilterProps,\n OffsetImageFilterProps,\n RuntimeShaderImageFilterProps,\n MatrixColorFilterProps,\n ShaderProps,\n ImageShaderProps,\n LinearGradientProps,\n GroupProps,\n PatchProps,\n BlendColorFilterProps,\n DashPathEffectProps,\n DiscretePathEffectProps,\n CornerPathEffectProps,\n Line2DPathEffectProps,\n Path1DPathEffectProps,\n Path2DPathEffectProps,\n TextPathProps,\n TextBlobProps,\n GlyphsProps,\n TwoPointConicalGradientProps,\n TurbulenceProps,\n SweepGradientProps,\n RadialGradientProps,\n ColorProps,\n PictureProps,\n ImageSVGProps,\n LerpColorFilterProps,\n BoxProps,\n BoxShadowProps,\n ParagraphProps,\n AtlasProps,\n} from \"../dom/types\";\nimport type { ChildrenProps } from \"../dom/types/Common\";\nimport type {\n BlendProps,\n MorphologyImageFilterProps,\n} from \"../dom/types/ImageFilters\";\n\nimport type { Container } from \"./Container\";\nimport { exhaustiveCheck } from \"./typeddash\";\nimport type { SkiaProps } from \"./processors\";\n\ndeclare global {\n var SkiaDomApi: {\n RectNode: (props: RectProps) => RenderNode<RectProps>;\n RRectNode: (props: RoundedRectProps) => RenderNode<RoundedRectProps>;\n GroupNode: (props: GroupProps) => RenderNode<GroupProps>;\n PaintNode: (props: PaintProps) => DeclarationNode<PaintProps>;\n FillNode: (props: PaintProps) => RenderNode<PaintProps>;\n CircleNode: (props: CircleProps) => RenderNode<CircleProps>;\n PathNode: (props: PathProps) => RenderNode<PathProps>;\n LineNode: (props: LineProps) => RenderNode<LineProps>;\n ImageNode: (props: ImageProps) => RenderNode<ImageProps>;\n OvalNode: (props: OvalProps) => RenderNode<OvalProps>;\n PatchNode: (props: PatchProps) => RenderNode<PatchProps>;\n PointsNode: (props: PointsProps) => RenderNode<PointsProps>;\n DiffRectNode: (props: DiffRectProps) => RenderNode<DiffRectProps>;\n AtlasNode: (props: AtlasProps) => RenderNode<AtlasProps>;\n\n // Mask filters\n BlurMaskFilterNode: (\n props: BlurMaskFilterProps\n ) => DeclarationNode<BlurMaskFilterProps>;\n\n // Path effects\n DashPathEffectNode: (\n props: DashPathEffectProps\n ) => DeclarationNode<DashPathEffectProps>;\n DiscretePathEffectNode: (\n props: DiscretePathEffectProps\n ) => DeclarationNode<DiscretePathEffectProps>;\n CornerPathEffectNode: (\n props: CornerPathEffectProps\n ) => DeclarationNode<CornerPathEffectProps>;\n Path1DPathEffectNode: (\n props: Path1DPathEffectProps\n ) => DeclarationNode<Path1DPathEffectProps>;\n Path2DPathEffectNode: (\n props: Path2DPathEffectProps\n ) => DeclarationNode<Path2DPathEffectProps>;\n Line2DPathEffectNode: (\n props: Line2DPathEffectProps\n ) => DeclarationNode<Line2DPathEffectProps>;\n SumPathEffectNode: () => DeclarationNode<null>;\n\n // Image filters\n BlendImageFilterNode: (\n props: BlendImageFilterProps\n ) => DeclarationNode<BlendImageFilterProps>;\n DropShadowImageFilterNode: (\n props: DropShadowImageFilterProps\n ) => DeclarationNode<DropShadowImageFilterProps>;\n DisplacementMapImageFilterNode: (\n props: DisplacementMapImageFilterProps\n ) => DeclarationNode<DisplacementMapImageFilterProps>;\n BlurImageFilterNode: (\n props: BlurImageFilterProps\n ) => DeclarationNode<BlurImageFilterProps>;\n OffsetImageFilterNode: (\n props: OffsetImageFilterProps\n ) => DeclarationNode<OffsetImageFilterProps>;\n MorphologyImageFilterNode: (\n props: MorphologyImageFilterProps\n ) => DeclarationNode<MorphologyImageFilterProps>;\n RuntimeShaderImageFilterNode: (\n props: RuntimeShaderImageFilterProps\n ) => DeclarationNode<RuntimeShaderImageFilterProps>;\n\n // Color filters\n MatrixColorFilterNode: (\n props: MatrixColorFilterProps\n ) => DeclarationNode<MatrixColorFilterProps>;\n BlendColorFilterNode: (\n props: BlendColorFilterProps\n ) => DeclarationNode<BlendColorFilterProps>;\n LinearToSRGBGammaColorFilterNode: () => DeclarationNode<null>;\n SRGBToLinearGammaColorFilterNode: () => DeclarationNode<null>;\n LumaColorFilterNode: () => DeclarationNode<null>;\n LerpColorFilterNode: (\n props: LerpColorFilterProps\n ) => DeclarationNode<LerpColorFilterProps>;\n\n // Shaders\n ShaderNode: (props: ShaderProps) => DeclarationNode<ShaderProps>;\n ImageShaderNode: (\n props: ImageShaderProps\n ) => DeclarationNode<ImageShaderProps>;\n ColorShaderNode: (props: ColorProps) => DeclarationNode<ColorProps>;\n TurbulenceNode: (\n props: TurbulenceProps\n ) => DeclarationNode<TurbulenceProps>;\n FractalNoiseNode: (\n props: FractalNoiseProps\n ) => DeclarationNode<FractalNoiseProps>;\n LinearGradientNode: (\n props: LinearGradientProps\n ) => DeclarationNode<LinearGradientProps>;\n RadialGradientNode: (\n props: RadialGradientProps\n ) => DeclarationNode<RadialGradientProps>;\n SweepGradientNode: (\n props: SweepGradientProps\n ) => DeclarationNode<SweepGradientProps>;\n TwoPointConicalGradientNode: (\n props: TwoPointConicalGradientProps\n ) => DeclarationNode<TwoPointConicalGradientProps>;\n PictureNode: (props: PictureProps) => RenderNode<PictureProps>;\n ImageSVGNode: (props: ImageSVGProps) => RenderNode<ImageSVGProps>;\n VerticesNode: (props: VerticesProps) => RenderNode<VerticesProps>;\n TextNode: (prop: TextProps) => RenderNode<TextProps>;\n TextPathNode: (prop: TextPathProps) => RenderNode<TextPathProps>;\n TextBlobNode: (prop: TextBlobProps) => RenderNode<TextBlobProps>;\n GlyphsNode: (prop: GlyphsProps) => RenderNode<GlyphsProps>;\n BlendNode: (prop: BlendProps) => DeclarationNode<BlendProps>;\n BackdropFilterNode: (prop: ChildrenProps) => RenderNode<ChildrenProps>;\n BoxNode: (prop: BoxProps) => RenderNode<BoxProps>;\n BoxShadowNode: (prop: BoxShadowProps) => DeclarationNode<BoxShadowProps>;\n LayerNode: (prop: ChildrenProps) => RenderNode<ChildrenProps>;\n\n // Paragraph\n ParagraphNode: (props: ParagraphProps) => RenderNode<ParagraphProps>;\n };\n\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n skGroup: SkiaProps<GroupProps>;\n skLayer: SkiaProps<ChildrenProps>;\n skPaint: SkiaProps<PaintProps>;\n\n // Drawings\n skFill: SkiaProps<DrawingNodeProps>;\n skImage: SkiaProps<ImageProps>;\n skCircle: SkiaProps<CircleProps>;\n skPath: SkiaProps<PathProps>;\n skLine: SkiaProps<LineProps>;\n skOval: SkiaProps<OvalProps>;\n skPatch: SkiaProps<PatchProps>;\n skPoints: SkiaProps<PointsProps>;\n skRect: SkiaProps<RectProps>;\n skRRect: SkiaProps<RoundedRectProps>;\n skAtlas: SkiaProps<AtlasProps>;\n skVertices: SkiaProps<VerticesProps>;\n skText: SkiaProps<TextProps>;\n skTextPath: SkiaProps<TextPathProps>;\n skTextBlob: SkiaProps<TextBlobProps>;\n skGlyphs: SkiaProps<GlyphsProps>;\n skDiffRect: SkiaProps<DiffRectProps>;\n skPicture: SkiaProps<PictureProps>;\n skImageSVG: SkiaProps<ImageSVGProps>;\n\n // BlurMaskFilters\n skBlurMaskFilter: SkiaProps<BlurMaskFilterProps>;\n\n // ImageFilters\n skBlendImageFilter: SkiaProps<BlendImageFilterProps>;\n skBlurImageFilter: SkiaProps<BlurImageFilterProps>;\n skOffsetImageFilter: SkiaProps<OffsetImageFilterProps>;\n skDropShadowImageFilter: SkiaProps<DropShadowImageFilterProps>;\n skDisplacementMapImageFilter: SkiaProps<DisplacementMapImageFilterProps>;\n skRuntimeShaderImageFilter: SkiaProps<RuntimeShaderImageFilterProps>;\n skMorphologyImageFilter: SkiaProps<MorphologyImageFilterProps>;\n\n // ColorFilters\n skMatrixColorFilter: SkiaProps<MatrixColorFilterProps>;\n skBlendColorFilter: SkiaProps<BlendColorFilterProps>;\n skLinearToSRGBGammaColorFilter: SkiaProps<ChildrenProps>;\n skSRGBToLinearGammaColorFilter: SkiaProps<ChildrenProps>;\n skLumaColorFilter: SkiaProps<ChildrenProps>;\n skLerpColorFilter: SkiaProps<LerpColorFilterProps>;\n\n // Shaders\n skShader: SkiaProps<ShaderProps>;\n skImageShader: SkiaProps<ImageShaderProps>;\n skColorShader: SkiaProps<ColorProps>;\n skTurbulence: SkiaProps<TurbulenceProps>;\n skFractalNoise: SkiaProps<FractalNoiseProps>;\n skLinearGradient: SkiaProps<LinearGradientProps>;\n skRadialGradient: SkiaProps<RadialGradientProps>;\n skSweepGradient: SkiaProps<SweepGradientProps>;\n skTwoPointConicalGradient: SkiaProps<TwoPointConicalGradientProps>;\n\n // Path Effects\n skDiscretePathEffect: SkiaProps<DiscretePathEffectProps>;\n skDashPathEffect: SkiaProps<DashPathEffectProps>;\n skPath1DPathEffect: SkiaProps<Path1DPathEffectProps>;\n skPath2DPathEffect: SkiaProps<Path2DPathEffectProps>;\n skCornerPathEffect: SkiaProps<CornerPathEffectProps>;\n skSumPathEffect: ChildrenProps;\n skLine2DPathEffect: SkiaProps<Line2DPathEffectProps>;\n\n // Mixed declarations/drawings\n skBlend: SkiaProps<BlendProps>;\n skBackdropFilter: SkiaProps<ChildrenProps>;\n skBox: SkiaProps<BoxProps>;\n skBoxShadow: SkiaProps<BoxShadowProps>;\n\n // Paragraph\n skParagraph: SkiaProps<ParagraphProps>;\n }\n }\n}\n\nexport const createNode = (\n container: Container,\n type: NodeType,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n props: any\n) => {\n const { Sk } = container;\n switch (type) {\n case NodeType.Layer:\n return Sk.Layer(props);\n case NodeType.Group:\n return Sk.Group(props);\n case NodeType.Paint:\n return Sk.Paint(props);\n // Drawings\n case NodeType.Fill:\n return Sk.Fill(props);\n case NodeType.Image:\n return Sk.Image(props);\n case NodeType.Circle:\n return Sk.Circle(props);\n case NodeType.Path:\n return Sk.Path(props);\n case NodeType.Line:\n return Sk.Line(props);\n case NodeType.Oval:\n return Sk.Oval(props);\n case NodeType.Patch:\n return Sk.Patch(props);\n case NodeType.Points:\n return Sk.Points(props);\n case NodeType.Rect:\n return Sk.Rect(props);\n case NodeType.RRect:\n return Sk.RRect(props);\n case NodeType.Vertices:\n return Sk.Vertices(props);\n case NodeType.Text:\n return Sk.Text(props);\n case NodeType.TextPath:\n return Sk.TextPath(props);\n case NodeType.TextBlob:\n return Sk.TextBlob(props);\n case NodeType.Glyphs:\n return Sk.Glyphs(props);\n case NodeType.Atlas:\n return Sk.Atlas(props);\n case NodeType.DiffRect:\n return Sk.DiffRect(props);\n case NodeType.Picture:\n return Sk.Picture(props);\n case NodeType.ImageSVG:\n return Sk.ImageSVG(props);\n // Mask Filter\n case NodeType.BlurMaskFilter:\n return Sk.BlurMaskFilter(props);\n // Image Filter\n case NodeType.BlendImageFilter:\n return Sk.BlendImageFilter(props);\n case NodeType.BlurImageFilter:\n return Sk.BlurImageFilter(props);\n case NodeType.OffsetImageFilter:\n return Sk.OffsetImageFilter(props);\n case NodeType.DropShadowImageFilter:\n return Sk.DropShadowImageFilter(props);\n case NodeType.DisplacementMapImageFilter:\n return Sk.DisplacementMapImageFilter(props);\n case NodeType.MorphologyImageFilter:\n return Sk.MorphologyImageFilter(props);\n case NodeType.RuntimeShaderImageFilter:\n return Sk.RuntimeShaderImageFilter(props);\n // Color Filter\n case NodeType.MatrixColorFilter:\n return Sk.MatrixColorFilter(props);\n case NodeType.BlendColorFilter:\n return Sk.BlendColorFilter(props);\n case NodeType.LerpColorFilter:\n return Sk.LerpColorFilter(props);\n case NodeType.LumaColorFilter:\n return Sk.LumaColorFilter();\n case NodeType.LinearToSRGBGammaColorFilter:\n return Sk.LinearToSRGBGammaColorFilter();\n case NodeType.SRGBToLinearGammaColorFilter:\n return Sk.SRGBToLinearGammaColorFilter();\n // Shader\n case NodeType.Shader:\n return Sk.Shader(props);\n case NodeType.ImageShader:\n return Sk.ImageShader(props);\n case NodeType.ColorShader:\n return Sk.ColorShader(props);\n case NodeType.Turbulence:\n return Sk.Turbulence(props);\n case NodeType.FractalNoise:\n return Sk.FractalNoise(props);\n case NodeType.LinearGradient:\n return Sk.LinearGradient(props);\n case NodeType.RadialGradient:\n return Sk.RadialGradient(props);\n case NodeType.SweepGradient:\n return Sk.SweepGradient(props);\n case NodeType.TwoPointConicalGradient:\n return Sk.TwoPointConicalGradient(props);\n // Path Effect\n case NodeType.CornerPathEffect:\n return Sk.CornerPathEffect(props);\n case NodeType.DiscretePathEffect:\n return Sk.DiscretePathEffect(props);\n case NodeType.DashPathEffect:\n return Sk.DashPathEffect(props);\n case NodeType.Path1DPathEffect:\n return Sk.Path1DPathEffect(props);\n case NodeType.Path2DPathEffect:\n return Sk.Path2DPathEffect(props);\n case NodeType.SumPathEffect:\n return Sk.SumPathEffect();\n case NodeType.Line2DPathEffect:\n return Sk.Line2DPathEffect(props);\n // Mixed\n case NodeType.Blend:\n return Sk.Blend(props);\n case NodeType.BackdropFilter:\n return Sk.BackdropFilter(props);\n case NodeType.Box:\n return Sk.Box(props);\n case NodeType.BoxShadow:\n return Sk.BoxShadow(props);\n // Paragraph\n case NodeType.Paragraph:\n return Sk.Paragraph(props);\n default:\n return exhaustiveCheck(type);\n }\n};\n"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AA6DvC,SAASC,eAAe,QAAQ,aAAa;AA4M7C,OAAO,MAAMC,UAAU,GAAGA,CACxBC,SAAoB,EACpBC,IAAc,EAEdC,KAAU,KACP;EACH,MAAM;IAAEC;EAAG,CAAC,GAAGH,SAAS;EACxB,QAAQC,IAAI;IACV,KAAKJ,QAAQ,CAACO,KAAK;MACjB,OAAOD,EAAE,CAACC,KAAK,CAACF,KAAK,CAAC;IACxB,KAAKL,QAAQ,CAACQ,KAAK;MACjB,OAAOF,EAAE,CAACE,KAAK,CAACH,KAAK,CAAC;IACxB,KAAKL,QAAQ,CAACS,KAAK;MACjB,OAAOH,EAAE,CAACG,KAAK,CAACJ,KAAK,CAAC;IACxB;IACA,KAAKL,QAAQ,CAACU,IAAI;MAChB,OAAOJ,EAAE,CAACI,IAAI,CAACL,KAAK,CAAC;IACvB,KAAKL,QAAQ,CAACW,KAAK;MACjB,OAAOL,EAAE,CAACK,KAAK,CAACN,KAAK,CAAC;IACxB,KAAKL,QAAQ,CAACY,MAAM;MAClB,OAAON,EAAE,CAACM,MAAM,CAACP,KAAK,CAAC;IACzB,KAAKL,QAAQ,CAACa,IAAI;MAChB,OAAOP,EAAE,CAACO,IAAI,CAACR,KAAK,CAAC;IACvB,KAAKL,QAAQ,CAACc,IAAI;MAChB,OAAOR,EAAE,CAACQ,IAAI,CAACT,KAAK,CAAC;IACvB,KAAKL,QAAQ,CAACe,IAAI;MAChB,OAAOT,EAAE,CAACS,IAAI,CAACV,KAAK,CAAC;IACvB,KAAKL,QAAQ,CAACgB,KAAK;MACjB,OAAOV,EAAE,CAACU,KAAK,CAACX,KAAK,CAAC;IACxB,KAAKL,QAAQ,CAACiB,MAAM;MAClB,OAAOX,EAAE,CAACW,MAAM,CAACZ,KAAK,CAAC;IACzB,KAAKL,QAAQ,CAACkB,IAAI;MAChB,OAAOZ,EAAE,CAACY,IAAI,CAACb,KAAK,CAAC;IACvB,KAAKL,QAAQ,CAACmB,KAAK;MACjB,OAAOb,EAAE,CAACa,KAAK,CAACd,KAAK,CAAC;IACxB,KAAKL,QAAQ,CAACoB,QAAQ;MACpB,OAAOd,EAAE,CAACc,QAAQ,CAACf,KAAK,CAAC;IAC3B,KAAKL,QAAQ,CAACqB,IAAI;MAChB,OAAOf,EAAE,CAACe,IAAI,CAAChB,KAAK,CAAC;IACvB,KAAKL,QAAQ,CAACsB,QAAQ;MACpB,OAAOhB,EAAE,CAACgB,QAAQ,CAACjB,KAAK,CAAC;IAC3B,KAAKL,QAAQ,CAACuB,QAAQ;MACpB,OAAOjB,EAAE,CAACiB,QAAQ,CAAClB,KAAK,CAAC;IAC3B,KAAKL,QAAQ,CAACwB,MAAM;MAClB,OAAOlB,EAAE,CAACkB,MAAM,CAACnB,KAAK,CAAC;IACzB,KAAKL,QAAQ,CAACyB,KAAK;MACjB,OAAOnB,EAAE,CAACmB,KAAK,CAACpB,KAAK,CAAC;IACxB,KAAKL,QAAQ,CAAC0B,QAAQ;MACpB,OAAOpB,EAAE,CAACoB,QAAQ,CAACrB,KAAK,CAAC;IAC3B,KAAKL,QAAQ,CAAC2B,OAAO;MACnB,OAAOrB,EAAE,CAACqB,OAAO,CAACtB,KAAK,CAAC;IAC1B,KAAKL,QAAQ,CAAC4B,QAAQ;MACpB,OAAOtB,EAAE,CAACsB,QAAQ,CAACvB,KAAK,CAAC;IAC3B;IACA,KAAKL,QAAQ,CAAC6B,cAAc;MAC1B,OAAOvB,EAAE,CAACuB,cAAc,CAACxB,KAAK,CAAC;IACjC;IACA,KAAKL,QAAQ,CAAC8B,gBAAgB;MAC5B,OAAOxB,EAAE,CAACwB,gBAAgB,CAACzB,KAAK,CAAC;IACnC,KAAKL,QAAQ,CAAC+B,eAAe;MAC3B,OAAOzB,EAAE,CAACyB,eAAe,CAAC1B,KAAK,CAAC;IAClC,KAAKL,QAAQ,CAACgC,iBAAiB;MAC7B,OAAO1B,EAAE,CAAC0B,iBAAiB,CAAC3B,KAAK,CAAC;IACpC,KAAKL,QAAQ,CAACiC,qBAAqB;MACjC,OAAO3B,EAAE,CAAC2B,qBAAqB,CAAC5B,KAAK,CAAC;IACxC,KAAKL,QAAQ,CAACkC,0BAA0B;MACtC,OAAO5B,EAAE,CAAC4B,0BAA0B,CAAC7B,KAAK,CAAC;IAC7C,KAAKL,QAAQ,CAACmC,qBAAqB;MACjC,OAAO7B,EAAE,CAAC6B,qBAAqB,CAAC9B,KAAK,CAAC;IACxC,KAAKL,QAAQ,CAACoC,wBAAwB;MACpC,OAAO9B,EAAE,CAAC8B,wBAAwB,CAAC/B,KAAK,CAAC;IAC3C;IACA,KAAKL,QAAQ,CAACqC,iBAAiB;MAC7B,OAAO/B,EAAE,CAAC+B,iBAAiB,CAAChC,KAAK,CAAC;IACpC,KAAKL,QAAQ,CAACsC,gBAAgB;MAC5B,OAAOhC,EAAE,CAACgC,gBAAgB,CAACjC,KAAK,CAAC;IACnC,KAAKL,QAAQ,CAACuC,eAAe;MAC3B,OAAOjC,EAAE,CAACiC,eAAe,CAAClC,KAAK,CAAC;IAClC,KAAKL,QAAQ,CAACwC,eAAe;MAC3B,OAAOlC,EAAE,CAACkC,eAAe,CAAC,CAAC;IAC7B,KAAKxC,QAAQ,CAACyC,4BAA4B;MACxC,OAAOnC,EAAE,CAACmC,4BAA4B,CAAC,CAAC;IAC1C,KAAKzC,QAAQ,CAAC0C,4BAA4B;MACxC,OAAOpC,EAAE,CAACoC,4BAA4B,CAAC,CAAC;IAC1C;IACA,KAAK1C,QAAQ,CAAC2C,MAAM;MAClB,OAAOrC,EAAE,CAACqC,MAAM,CAACtC,KAAK,CAAC;IACzB,KAAKL,QAAQ,CAAC4C,WAAW;MACvB,OAAOtC,EAAE,CAACsC,WAAW,CAACvC,KAAK,CAAC;IAC9B,KAAKL,QAAQ,CAAC6C,WAAW;MACvB,OAAOvC,EAAE,CAACuC,WAAW,CAACxC,KAAK,CAAC;IAC9B,KAAKL,QAAQ,CAAC8C,UAAU;MACtB,OAAOxC,EAAE,CAACwC,UAAU,CAACzC,KAAK,CAAC;IAC7B,KAAKL,QAAQ,CAAC+C,YAAY;MACxB,OAAOzC,EAAE,CAACyC,YAAY,CAAC1C,KAAK,CAAC;IAC/B,KAAKL,QAAQ,CAACgD,cAAc;MAC1B,OAAO1C,EAAE,CAAC0C,cAAc,CAAC3C,KAAK,CAAC;IACjC,KAAKL,QAAQ,CAACiD,cAAc;MAC1B,OAAO3C,EAAE,CAAC2C,cAAc,CAAC5C,KAAK,CAAC;IACjC,KAAKL,QAAQ,CAACkD,aAAa;MACzB,OAAO5C,EAAE,CAAC4C,aAAa,CAAC7C,KAAK,CAAC;IAChC,KAAKL,QAAQ,CAACmD,uBAAuB;MACnC,OAAO7C,EAAE,CAAC6C,uBAAuB,CAAC9C,KAAK,CAAC;IAC1C;IACA,KAAKL,QAAQ,CAACoD,gBAAgB;MAC5B,OAAO9C,EAAE,CAAC8C,gBAAgB,CAAC/C,KAAK,CAAC;IACnC,KAAKL,QAAQ,CAACqD,kBAAkB;MAC9B,OAAO/C,EAAE,CAAC+C,kBAAkB,CAAChD,KAAK,CAAC;IACrC,KAAKL,QAAQ,CAACsD,cAAc;MAC1B,OAAOhD,EAAE,CAACgD,cAAc,CAACjD,KAAK,CAAC;IACjC,KAAKL,QAAQ,CAACuD,gBAAgB;MAC5B,OAAOjD,EAAE,CAACiD,gBAAgB,CAAClD,KAAK,CAAC;IACnC,KAAKL,QAAQ,CAACwD,gBAAgB;MAC5B,OAAOlD,EAAE,CAACkD,gBAAgB,CAACnD,KAAK,CAAC;IACnC,KAAKL,QAAQ,CAACyD,aAAa;MACzB,OAAOnD,EAAE,CAACmD,aAAa,CAAC,CAAC;IAC3B,KAAKzD,QAAQ,CAAC0D,gBAAgB;MAC5B,OAAOpD,EAAE,CAACoD,gBAAgB,CAACrD,KAAK,CAAC;IACnC;IACA,KAAKL,QAAQ,CAAC2D,KAAK;MACjB,OAAOrD,EAAE,CAACqD,KAAK,CAACtD,KAAK,CAAC;IACxB,KAAKL,QAAQ,CAAC4D,cAAc;MAC1B,OAAOtD,EAAE,CAACsD,cAAc,CAACvD,KAAK,CAAC;IACjC,KAAKL,QAAQ,CAAC6D,GAAG;MACf,OAAOvD,EAAE,CAACuD,GAAG,CAACxD,KAAK,CAAC;IACtB,KAAKL,QAAQ,CAAC8D,SAAS;MACrB,OAAOxD,EAAE,CAACwD,SAAS,CAACzD,KAAK,CAAC;IAC5B;IACA,KAAKL,QAAQ,CAAC+D,SAAS;MACrB,OAAOzD,EAAE,CAACyD,SAAS,CAAC1D,KAAK,CAAC;IAC5B;MACE,OAAOJ,eAAe,CAACG,IAAI,CAAC;EAChC;AACF,CAAC","ignoreList":[]}
@@ -1,7 +1,6 @@
1
- import { JsiDrawingContext } from "../dom/types";
2
1
  import { Skia } from "../skia";
3
2
  import { Platform } from "../Platform";
4
- import { SkiaRoot } from "./Reconciler";
3
+ import { SkiaSGRoot } from "../sksg/Reconciler";
5
4
 
6
5
  // We call it main thread because on web main is JS thread
7
6
  export const isOnMainThread = () => {
@@ -12,10 +11,9 @@ export const isOnMainThread = () => {
12
11
  export const drawAsPicture = (element, bounds) => {
13
12
  const recorder = Skia.PictureRecorder();
14
13
  const canvas = recorder.beginRecording(bounds);
15
- const root = new SkiaRoot(Skia, false);
14
+ const root = new SkiaSGRoot(Skia);
16
15
  root.render(element);
17
- const ctx = new JsiDrawingContext(Skia, canvas);
18
- root.dom.render(ctx);
16
+ root.drawOnCanvas(canvas);
19
17
  const picture = recorder.finishRecordingAsPicture();
20
18
  root.unmount();
21
19
  return picture;
@@ -1 +1 @@
1
- {"version":3,"names":["JsiDrawingContext","Skia","Platform","SkiaRoot","isOnMainThread","_WORKLET","OS","drawAsPicture","element","bounds","recorder","PictureRecorder","canvas","beginRecording","root","render","ctx","dom","picture","finishRecordingAsPicture","unmount","drawAsImage","size","drawAsImageFromPicture","surface","Surface","MakeOffscreen","width","height","getCanvas","drawPicture","flush","image","makeImageSnapshot","makeNonTextureImage"],"sources":["Offscreen.tsx"],"sourcesContent":["import type { ReactElement } from \"react\";\n\nimport { JsiDrawingContext } from \"../dom/types\";\nimport type { SkPicture, SkRect, SkSize } from \"../skia/types\";\nimport { Skia } from \"../skia\";\nimport { Platform } from \"../Platform\";\n\nimport { SkiaRoot } from \"./Reconciler\";\n\n// We call it main thread because on web main is JS thread\nexport const isOnMainThread = () => {\n \"worklet\";\n return (\n (typeof _WORKLET !== \"undefined\" && _WORKLET === true) ||\n Platform.OS === \"web\"\n );\n};\n\nexport const drawAsPicture = (element: ReactElement, bounds?: SkRect) => {\n const recorder = Skia.PictureRecorder();\n const canvas = recorder.beginRecording(bounds);\n const root = new SkiaRoot(Skia, false);\n root.render(element);\n const ctx = new JsiDrawingContext(Skia, canvas);\n root.dom.render(ctx);\n const picture = recorder.finishRecordingAsPicture();\n root.unmount();\n return picture;\n};\n\nexport const drawAsImage = (element: ReactElement, size: SkSize) => {\n return drawAsImageFromPicture(drawAsPicture(element), size);\n};\n\nexport const drawAsImageFromPicture = (picture: SkPicture, size: SkSize) => {\n \"worklet\";\n const surface = Skia.Surface.MakeOffscreen(size.width, size.height)!;\n const canvas = surface.getCanvas();\n canvas.drawPicture(picture);\n surface.flush();\n const image = surface.makeImageSnapshot();\n // If we are not on the main thread or if we are on Web, we need to make the image non-texture.\n if (!isOnMainThread() || Platform.OS === \"web\") {\n return image.makeNonTextureImage();\n } else {\n return image;\n }\n};\n"],"mappings":"AAEA,SAASA,iBAAiB,QAAQ,cAAc;AAEhD,SAASC,IAAI,QAAQ,SAAS;AAC9B,SAASC,QAAQ,QAAQ,aAAa;AAEtC,SAASC,QAAQ,QAAQ,cAAc;;AAEvC;AACA,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAClC,SAAS;;EACT,OACG,OAAOC,QAAQ,KAAK,WAAW,IAAIA,QAAQ,KAAK,IAAI,IACrDH,QAAQ,CAACI,EAAE,KAAK,KAAK;AAEzB,CAAC;AAED,OAAO,MAAMC,aAAa,GAAGA,CAACC,OAAqB,EAAEC,MAAe,KAAK;EACvE,MAAMC,QAAQ,GAAGT,IAAI,CAACU,eAAe,CAAC,CAAC;EACvC,MAAMC,MAAM,GAAGF,QAAQ,CAACG,cAAc,CAACJ,MAAM,CAAC;EAC9C,MAAMK,IAAI,GAAG,IAAIX,QAAQ,CAACF,IAAI,EAAE,KAAK,CAAC;EACtCa,IAAI,CAACC,MAAM,CAACP,OAAO,CAAC;EACpB,MAAMQ,GAAG,GAAG,IAAIhB,iBAAiB,CAACC,IAAI,EAAEW,MAAM,CAAC;EAC/CE,IAAI,CAACG,GAAG,CAACF,MAAM,CAACC,GAAG,CAAC;EACpB,MAAME,OAAO,GAAGR,QAAQ,CAACS,wBAAwB,CAAC,CAAC;EACnDL,IAAI,CAACM,OAAO,CAAC,CAAC;EACd,OAAOF,OAAO;AAChB,CAAC;AAED,OAAO,MAAMG,WAAW,GAAGA,CAACb,OAAqB,EAAEc,IAAY,KAAK;EAClE,OAAOC,sBAAsB,CAAChB,aAAa,CAACC,OAAO,CAAC,EAAEc,IAAI,CAAC;AAC7D,CAAC;AAED,OAAO,MAAMC,sBAAsB,GAAGA,CAACL,OAAkB,EAAEI,IAAY,KAAK;EAC1E,SAAS;;EACT,MAAME,OAAO,GAAGvB,IAAI,CAACwB,OAAO,CAACC,aAAa,CAACJ,IAAI,CAACK,KAAK,EAAEL,IAAI,CAACM,MAAM,CAAE;EACpE,MAAMhB,MAAM,GAAGY,OAAO,CAACK,SAAS,CAAC,CAAC;EAClCjB,MAAM,CAACkB,WAAW,CAACZ,OAAO,CAAC;EAC3BM,OAAO,CAACO,KAAK,CAAC,CAAC;EACf,MAAMC,KAAK,GAAGR,OAAO,CAACS,iBAAiB,CAAC,CAAC;EACzC;EACA,IAAI,CAAC7B,cAAc,CAAC,CAAC,IAAIF,QAAQ,CAACI,EAAE,KAAK,KAAK,EAAE;IAC9C,OAAO0B,KAAK,CAACE,mBAAmB,CAAC,CAAC;EACpC,CAAC,MAAM;IACL,OAAOF,KAAK;EACd;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Skia","Platform","SkiaSGRoot","isOnMainThread","_WORKLET","OS","drawAsPicture","element","bounds","recorder","PictureRecorder","canvas","beginRecording","root","render","drawOnCanvas","picture","finishRecordingAsPicture","unmount","drawAsImage","size","drawAsImageFromPicture","surface","Surface","MakeOffscreen","width","height","getCanvas","drawPicture","flush","image","makeImageSnapshot","makeNonTextureImage"],"sources":["Offscreen.tsx"],"sourcesContent":["import type { ReactElement } from \"react\";\n\nimport type { SkPicture, SkRect, SkSize } from \"../skia/types\";\nimport { Skia } from \"../skia\";\nimport { Platform } from \"../Platform\";\nimport { SkiaSGRoot } from \"../sksg/Reconciler\";\n\n// We call it main thread because on web main is JS thread\nexport const isOnMainThread = () => {\n \"worklet\";\n return (\n (typeof _WORKLET !== \"undefined\" && _WORKLET === true) ||\n Platform.OS === \"web\"\n );\n};\n\nexport const drawAsPicture = (element: ReactElement, bounds?: SkRect) => {\n const recorder = Skia.PictureRecorder();\n const canvas = recorder.beginRecording(bounds);\n const root = new SkiaSGRoot(Skia);\n root.render(element);\n root.drawOnCanvas(canvas);\n const picture = recorder.finishRecordingAsPicture();\n root.unmount();\n return picture;\n};\n\nexport const drawAsImage = (element: ReactElement, size: SkSize) => {\n return drawAsImageFromPicture(drawAsPicture(element), size);\n};\n\nexport const drawAsImageFromPicture = (picture: SkPicture, size: SkSize) => {\n \"worklet\";\n const surface = Skia.Surface.MakeOffscreen(size.width, size.height)!;\n const canvas = surface.getCanvas();\n canvas.drawPicture(picture);\n surface.flush();\n const image = surface.makeImageSnapshot();\n // If we are not on the main thread or if we are on Web, we need to make the image non-texture.\n if (!isOnMainThread() || Platform.OS === \"web\") {\n return image.makeNonTextureImage();\n } else {\n return image;\n }\n};\n"],"mappings":"AAGA,SAASA,IAAI,QAAQ,SAAS;AAC9B,SAASC,QAAQ,QAAQ,aAAa;AACtC,SAASC,UAAU,QAAQ,oBAAoB;;AAE/C;AACA,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAClC,SAAS;;EACT,OACG,OAAOC,QAAQ,KAAK,WAAW,IAAIA,QAAQ,KAAK,IAAI,IACrDH,QAAQ,CAACI,EAAE,KAAK,KAAK;AAEzB,CAAC;AAED,OAAO,MAAMC,aAAa,GAAGA,CAACC,OAAqB,EAAEC,MAAe,KAAK;EACvE,MAAMC,QAAQ,GAAGT,IAAI,CAACU,eAAe,CAAC,CAAC;EACvC,MAAMC,MAAM,GAAGF,QAAQ,CAACG,cAAc,CAACJ,MAAM,CAAC;EAC9C,MAAMK,IAAI,GAAG,IAAIX,UAAU,CAACF,IAAI,CAAC;EACjCa,IAAI,CAACC,MAAM,CAACP,OAAO,CAAC;EACpBM,IAAI,CAACE,YAAY,CAACJ,MAAM,CAAC;EACzB,MAAMK,OAAO,GAAGP,QAAQ,CAACQ,wBAAwB,CAAC,CAAC;EACnDJ,IAAI,CAACK,OAAO,CAAC,CAAC;EACd,OAAOF,OAAO;AAChB,CAAC;AAED,OAAO,MAAMG,WAAW,GAAGA,CAACZ,OAAqB,EAAEa,IAAY,KAAK;EAClE,OAAOC,sBAAsB,CAACf,aAAa,CAACC,OAAO,CAAC,EAAEa,IAAI,CAAC;AAC7D,CAAC;AAED,OAAO,MAAMC,sBAAsB,GAAGA,CAACL,OAAkB,EAAEI,IAAY,KAAK;EAC1E,SAAS;;EACT,MAAME,OAAO,GAAGtB,IAAI,CAACuB,OAAO,CAACC,aAAa,CAACJ,IAAI,CAACK,KAAK,EAAEL,IAAI,CAACM,MAAM,CAAE;EACpE,MAAMf,MAAM,GAAGW,OAAO,CAACK,SAAS,CAAC,CAAC;EAClChB,MAAM,CAACiB,WAAW,CAACZ,OAAO,CAAC;EAC3BM,OAAO,CAACO,KAAK,CAAC,CAAC;EACf,MAAMC,KAAK,GAAGR,OAAO,CAACS,iBAAiB,CAAC,CAAC;EACzC;EACA,IAAI,CAAC5B,cAAc,CAAC,CAAC,IAAIF,QAAQ,CAACI,EAAE,KAAK,KAAK,EAAE;IAC9C,OAAOyB,KAAK,CAACE,mBAAmB,CAAC,CAAC;EACpC,CAAC,MAAM;IACL,OAAOF,KAAK;EACd;AACF,CAAC","ignoreList":[]}
@@ -1,10 +1,9 @@
1
1
  import type { ReactNode } from "react";
2
- import type { Skia } from "../skia/types";
3
2
  export declare class SkiaRoot {
4
3
  private root;
5
4
  private container;
6
- constructor(Skia: Skia, native?: boolean, redraw?: () => void, getNativeId?: () => number);
5
+ constructor(redraw?: () => void, getNativeId?: () => number);
7
6
  render(element: ReactNode): void;
8
7
  unmount(): void;
9
- get dom(): import("..").RenderNode<import("..").GroupProps>;
8
+ get dom(): import("..").Node<unknown>;
10
9
  }
@@ -11,10 +11,10 @@ skiaReconciler.injectIntoDevTools({
11
11
  rendererPackageName: "react-native-skia"
12
12
  });
13
13
  export class SkiaRoot {
14
- constructor(Skia, native = false, redraw = () => {}, getNativeId = () => 0) {
14
+ constructor(redraw = () => {}, getNativeId = () => 0) {
15
15
  _defineProperty(this, "root", void 0);
16
16
  _defineProperty(this, "container", void 0);
17
- this.container = new Container(Skia, redraw, getNativeId, native);
17
+ this.container = new Container(redraw, getNativeId);
18
18
  this.root = skiaReconciler.createContainer(this.container, 0, null, true, null, "", console.error, null);
19
19
  }
20
20
  render(element) {
@@ -1 +1 @@
1
- {"version":3,"names":["ReactReconciler","skHostConfig","debug","hostDebug","Container","skiaReconciler","injectIntoDevTools","bundleType","version","rendererPackageName","SkiaRoot","constructor","Skia","native","redraw","getNativeId","_defineProperty","container","root","createContainer","console","error","render","element","updateContainer","unmount","unmounted","dom"],"sources":["Reconciler.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport type { OpaqueRoot } from \"react-reconciler\";\nimport ReactReconciler from \"react-reconciler\";\n\nimport type { Skia } from \"../skia/types\";\n\nimport { skHostConfig, debug as hostDebug } from \"./HostConfig\";\nimport { Container } from \"./Container\";\n\nconst skiaReconciler = ReactReconciler(skHostConfig);\n\nskiaReconciler.injectIntoDevTools({\n bundleType: 1,\n version: \"0.0.1\",\n rendererPackageName: \"react-native-skia\",\n});\n\nexport class SkiaRoot {\n private root: OpaqueRoot;\n private container: Container;\n\n constructor(\n Skia: Skia,\n native = false,\n redraw: () => void = () => {},\n getNativeId: () => number = () => 0\n ) {\n this.container = new Container(Skia, redraw, getNativeId, native);\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 render(element: ReactNode) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n skiaReconciler.updateContainer(element as any, this.root, null, () => {\n hostDebug(\"updateContainer\");\n });\n }\n\n unmount() {\n this.container.unmounted = true;\n skiaReconciler.updateContainer(null, this.root, null, () => {\n hostDebug(\"unmountContainer\");\n });\n }\n\n get dom() {\n return this.container.root;\n }\n}\n"],"mappings":";;;AAEA,OAAOA,eAAe,MAAM,kBAAkB;AAI9C,SAASC,YAAY,EAAEC,KAAK,IAAIC,SAAS,QAAQ,cAAc;AAC/D,SAASC,SAAS,QAAQ,aAAa;AAEvC,MAAMC,cAAc,GAAGL,eAAe,CAACC,YAAY,CAAC;AAEpDI,cAAc,CAACC,kBAAkB,CAAC;EAChCC,UAAU,EAAE,CAAC;EACbC,OAAO,EAAE,OAAO;EAChBC,mBAAmB,EAAE;AACvB,CAAC,CAAC;AAEF,OAAO,MAAMC,QAAQ,CAAC;EAIpBC,WAAWA,CACTC,IAAU,EACVC,MAAM,GAAG,KAAK,EACdC,MAAkB,GAAGA,CAAA,KAAM,CAAC,CAAC,EAC7BC,WAAyB,GAAGA,CAAA,KAAM,CAAC,EACnC;IAAAC,eAAA;IAAAA,eAAA;IACA,IAAI,CAACC,SAAS,GAAG,IAAIb,SAAS,CAACQ,IAAI,EAAEE,MAAM,EAAEC,WAAW,EAAEF,MAAM,CAAC;IACjE,IAAI,CAACK,IAAI,GAAGb,cAAc,CAACc,eAAe,CACxC,IAAI,CAACF,SAAS,EACd,CAAC,EACD,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,EAAE,EACFG,OAAO,CAACC,KAAK,EACb,IACF,CAAC;EACH;EAEAC,MAAMA,CAACC,OAAkB,EAAE;IACzB;IACAlB,cAAc,CAACmB,eAAe,CAACD,OAAO,EAAS,IAAI,CAACL,IAAI,EAAE,IAAI,EAAE,MAAM;MACpEf,SAAS,CAAC,iBAAiB,CAAC;IAC9B,CAAC,CAAC;EACJ;EAEAsB,OAAOA,CAAA,EAAG;IACR,IAAI,CAACR,SAAS,CAACS,SAAS,GAAG,IAAI;IAC/BrB,cAAc,CAACmB,eAAe,CAAC,IAAI,EAAE,IAAI,CAACN,IAAI,EAAE,IAAI,EAAE,MAAM;MAC1Df,SAAS,CAAC,kBAAkB,CAAC;IAC/B,CAAC,CAAC;EACJ;EAEA,IAAIwB,GAAGA,CAAA,EAAG;IACR,OAAO,IAAI,CAACV,SAAS,CAACC,IAAI;EAC5B;AACF","ignoreList":[]}
1
+ {"version":3,"names":["ReactReconciler","skHostConfig","debug","hostDebug","Container","skiaReconciler","injectIntoDevTools","bundleType","version","rendererPackageName","SkiaRoot","constructor","redraw","getNativeId","_defineProperty","container","root","createContainer","console","error","render","element","updateContainer","unmount","unmounted","dom"],"sources":["Reconciler.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport type { OpaqueRoot } from \"react-reconciler\";\nimport ReactReconciler from \"react-reconciler\";\n\nimport { skHostConfig, debug as hostDebug } from \"./HostConfig\";\nimport { Container } from \"./Container\";\n\nconst skiaReconciler = ReactReconciler(skHostConfig);\n\nskiaReconciler.injectIntoDevTools({\n bundleType: 1,\n version: \"0.0.1\",\n rendererPackageName: \"react-native-skia\",\n});\n\nexport class SkiaRoot {\n private root: OpaqueRoot;\n private container: Container;\n\n constructor(\n redraw: () => void = () => {},\n getNativeId: () => number = () => 0\n ) {\n this.container = new Container(redraw, getNativeId);\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 render(element: ReactNode) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n skiaReconciler.updateContainer(element as any, this.root, null, () => {\n hostDebug(\"updateContainer\");\n });\n }\n\n unmount() {\n this.container.unmounted = true;\n skiaReconciler.updateContainer(null, this.root, null, () => {\n hostDebug(\"unmountContainer\");\n });\n }\n\n get dom() {\n return this.container.root;\n }\n}\n"],"mappings":";;;AAEA,OAAOA,eAAe,MAAM,kBAAkB;AAE9C,SAASC,YAAY,EAAEC,KAAK,IAAIC,SAAS,QAAQ,cAAc;AAC/D,SAASC,SAAS,QAAQ,aAAa;AAEvC,MAAMC,cAAc,GAAGL,eAAe,CAACC,YAAY,CAAC;AAEpDI,cAAc,CAACC,kBAAkB,CAAC;EAChCC,UAAU,EAAE,CAAC;EACbC,OAAO,EAAE,OAAO;EAChBC,mBAAmB,EAAE;AACvB,CAAC,CAAC;AAEF,OAAO,MAAMC,QAAQ,CAAC;EAIpBC,WAAWA,CACTC,MAAkB,GAAGA,CAAA,KAAM,CAAC,CAAC,EAC7BC,WAAyB,GAAGA,CAAA,KAAM,CAAC,EACnC;IAAAC,eAAA;IAAAA,eAAA;IACA,IAAI,CAACC,SAAS,GAAG,IAAIX,SAAS,CAACQ,MAAM,EAAEC,WAAW,CAAC;IACnD,IAAI,CAACG,IAAI,GAAGX,cAAc,CAACY,eAAe,CACxC,IAAI,CAACF,SAAS,EACd,CAAC,EACD,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,EAAE,EACFG,OAAO,CAACC,KAAK,EACb,IACF,CAAC;EACH;EAEAC,MAAMA,CAACC,OAAkB,EAAE;IACzB;IACAhB,cAAc,CAACiB,eAAe,CAACD,OAAO,EAAS,IAAI,CAACL,IAAI,EAAE,IAAI,EAAE,MAAM;MACpEb,SAAS,CAAC,iBAAiB,CAAC;IAC9B,CAAC,CAAC;EACJ;EAEAoB,OAAOA,CAAA,EAAG;IACR,IAAI,CAACR,SAAS,CAACS,SAAS,GAAG,IAAI;IAC/BnB,cAAc,CAACiB,eAAe,CAAC,IAAI,EAAE,IAAI,CAACN,IAAI,EAAE,IAAI,EAAE,MAAM;MAC1Db,SAAS,CAAC,kBAAkB,CAAC;IAC/B,CAAC,CAAC;EACJ;EAEA,IAAIsB,GAAGA,CAAA,EAAG;IACR,OAAO,IAAI,CAACV,SAAS,CAACC,IAAI;EAC5B;AACF","ignoreList":[]}
@@ -1,12 +1,14 @@
1
- "worklet";
2
-
3
1
  export const isShader = obj => obj !== null && obj.__typename__ === "Shader";
4
2
  const isVector = obj => {
3
+ "worklet";
4
+
5
5
  // We have an issue to check property existence on JSI backed instances
6
6
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
7
7
  return obj.x !== undefined && obj.y !== undefined;
8
8
  };
9
9
  function processValue(values, value) {
10
+ "worklet";
11
+
10
12
  if (typeof value === "number") {
11
13
  values.push(value);
12
14
  } else if (Array.isArray(value)) {
@@ -18,6 +20,8 @@ function processValue(values, value) {
18
20
  }
19
21
  }
20
22
  export const processUniforms = (source, uniforms, builder) => {
23
+ "worklet";
24
+
21
25
  const result = [];
22
26
  const uniformsCount = source.getUniformCount();
23
27
  for (let i = 0; i < uniformsCount; i++) {
@@ -1 +1 @@
1
- {"version":3,"names":["isShader","obj","__typename__","isVector","x","undefined","y","processValue","values","value","push","Array","isArray","forEach","v","Float32Array","processUniforms","source","uniforms","builder","result","uniformsCount","getUniformCount","i","name","getUniformName","Error","uniformValue","setUniform"],"sources":["Shader.ts"],"sourcesContent":["\"worklet\";\n\nimport type { SkJSIInstance } from \"../JsiInstance\";\nimport type { Vector } from \"../Point\";\nimport type { SkRuntimeEffect, SkRuntimeShaderBuilder } from \"../RuntimeEffect\";\n\nexport const isShader = (obj: SkJSIInstance<string> | null): obj is SkShader =>\n obj !== null && obj.__typename__ === \"Shader\";\n\nexport type SkShader = SkJSIInstance<\"Shader\">;\n\nexport type Uniform =\n | number\n | Vector\n | Float32Array\n | readonly Uniform[]\n | Uniform[];\n\nexport interface Uniforms {\n [name: string]: Uniform;\n}\n\nconst isVector = (obj: unknown): obj is Vector => {\n // We have an issue to check property existence on JSI backed instances\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return (obj as any).x !== undefined && (obj as any).y !== undefined;\n};\n\nfunction processValue(values: number[], value: Uniform) {\n if (typeof value === \"number\") {\n values.push(value);\n } else if (Array.isArray(value)) {\n value.forEach((v) => processValue(values, v));\n } else if (isVector(value)) {\n values.push(value.x, value.y);\n } else if (value instanceof Float32Array) {\n values.push(...value);\n }\n}\n\nexport const processUniforms = (\n source: SkRuntimeEffect,\n uniforms: Uniforms,\n builder?: SkRuntimeShaderBuilder\n) => {\n const result: number[] = [];\n const uniformsCount = source.getUniformCount();\n for (let i = 0; i < uniformsCount; i++) {\n const name = source.getUniformName(i);\n const value = uniforms[name];\n if (value === undefined) {\n throw new Error(\n // eslint-disable-next-line max-len\n `The runtime effect has the uniform value \"${name}\" declared, but it is missing from the uniforms property of the Runtime effect.`\n );\n }\n if (builder === undefined) {\n processValue(result, value);\n } else {\n const uniformValue: number[] = [];\n processValue(uniformValue, value);\n builder.setUniform(name, uniformValue);\n result.push(...uniformValue);\n }\n }\n return result;\n};\n"],"mappings":"AAAA,SAAS;;AAMT,OAAO,MAAMA,QAAQ,GAAIC,GAAiC,IACxDA,GAAG,KAAK,IAAI,IAAIA,GAAG,CAACC,YAAY,KAAK,QAAQ;AAe/C,MAAMC,QAAQ,GAAIF,GAAY,IAAoB;EAChD;EACA;EACA,OAAQA,GAAG,CAASG,CAAC,KAAKC,SAAS,IAAKJ,GAAG,CAASK,CAAC,KAAKD,SAAS;AACrE,CAAC;AAED,SAASE,YAAYA,CAACC,MAAgB,EAAEC,KAAc,EAAE;EACtD,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7BD,MAAM,CAACE,IAAI,CAACD,KAAK,CAAC;EACpB,CAAC,MAAM,IAAIE,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,EAAE;IAC/BA,KAAK,CAACI,OAAO,CAAEC,CAAC,IAAKP,YAAY,CAACC,MAAM,EAAEM,CAAC,CAAC,CAAC;EAC/C,CAAC,MAAM,IAAIX,QAAQ,CAACM,KAAK,CAAC,EAAE;IAC1BD,MAAM,CAACE,IAAI,CAACD,KAAK,CAACL,CAAC,EAAEK,KAAK,CAACH,CAAC,CAAC;EAC/B,CAAC,MAAM,IAAIG,KAAK,YAAYM,YAAY,EAAE;IACxCP,MAAM,CAACE,IAAI,CAAC,GAAGD,KAAK,CAAC;EACvB;AACF;AAEA,OAAO,MAAMO,eAAe,GAAGA,CAC7BC,MAAuB,EACvBC,QAAkB,EAClBC,OAAgC,KAC7B;EACH,MAAMC,MAAgB,GAAG,EAAE;EAC3B,MAAMC,aAAa,GAAGJ,MAAM,CAACK,eAAe,CAAC,CAAC;EAC9C,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,aAAa,EAAEE,CAAC,EAAE,EAAE;IACtC,MAAMC,IAAI,GAAGP,MAAM,CAACQ,cAAc,CAACF,CAAC,CAAC;IACrC,MAAMd,KAAK,GAAGS,QAAQ,CAACM,IAAI,CAAC;IAC5B,IAAIf,KAAK,KAAKJ,SAAS,EAAE;MACvB,MAAM,IAAIqB,KAAK;MACb;MACA,6CAA6CF,IAAI,iFACnD,CAAC;IACH;IACA,IAAIL,OAAO,KAAKd,SAAS,EAAE;MACzBE,YAAY,CAACa,MAAM,EAAEX,KAAK,CAAC;IAC7B,CAAC,MAAM;MACL,MAAMkB,YAAsB,GAAG,EAAE;MACjCpB,YAAY,CAACoB,YAAY,EAAElB,KAAK,CAAC;MACjCU,OAAO,CAACS,UAAU,CAACJ,IAAI,EAAEG,YAAY,CAAC;MACtCP,MAAM,CAACV,IAAI,CAAC,GAAGiB,YAAY,CAAC;IAC9B;EACF;EACA,OAAOP,MAAM;AACf,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["isShader","obj","__typename__","isVector","x","undefined","y","processValue","values","value","push","Array","isArray","forEach","v","Float32Array","processUniforms","source","uniforms","builder","result","uniformsCount","getUniformCount","i","name","getUniformName","Error","uniformValue","setUniform"],"sources":["Shader.ts"],"sourcesContent":["import type { SkJSIInstance } from \"../JsiInstance\";\nimport type { Vector } from \"../Point\";\nimport type { SkRuntimeEffect, SkRuntimeShaderBuilder } from \"../RuntimeEffect\";\n\nexport const isShader = (obj: SkJSIInstance<string> | null): obj is SkShader =>\n obj !== null && obj.__typename__ === \"Shader\";\n\nexport type SkShader = SkJSIInstance<\"Shader\">;\n\nexport type Uniform =\n | number\n | Vector\n | Float32Array\n | readonly Uniform[]\n | Uniform[];\n\nexport interface Uniforms {\n [name: string]: Uniform;\n}\n\nconst isVector = (obj: unknown): obj is Vector => {\n \"worklet\";\n // We have an issue to check property existence on JSI backed instances\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return (obj as any).x !== undefined && (obj as any).y !== undefined;\n};\n\nfunction processValue(values: number[], value: Uniform) {\n \"worklet\";\n if (typeof value === \"number\") {\n values.push(value);\n } else if (Array.isArray(value)) {\n value.forEach((v) => processValue(values, v));\n } else if (isVector(value)) {\n values.push(value.x, value.y);\n } else if (value instanceof Float32Array) {\n values.push(...value);\n }\n}\n\nexport const processUniforms = (\n source: SkRuntimeEffect,\n uniforms: Uniforms,\n builder?: SkRuntimeShaderBuilder\n) => {\n \"worklet\";\n const result: number[] = [];\n const uniformsCount = source.getUniformCount();\n for (let i = 0; i < uniformsCount; i++) {\n const name = source.getUniformName(i);\n const value = uniforms[name];\n if (value === undefined) {\n throw new Error(\n // eslint-disable-next-line max-len\n `The runtime effect has the uniform value \"${name}\" declared, but it is missing from the uniforms property of the Runtime effect.`\n );\n }\n if (builder === undefined) {\n processValue(result, value);\n } else {\n const uniformValue: number[] = [];\n processValue(uniformValue, value);\n builder.setUniform(name, uniformValue);\n result.push(...uniformValue);\n }\n }\n return result;\n};\n"],"mappings":"AAIA,OAAO,MAAMA,QAAQ,GAAIC,GAAiC,IACxDA,GAAG,KAAK,IAAI,IAAIA,GAAG,CAACC,YAAY,KAAK,QAAQ;AAe/C,MAAMC,QAAQ,GAAIF,GAAY,IAAoB;EAChD,SAAS;;EACT;EACA;EACA,OAAQA,GAAG,CAASG,CAAC,KAAKC,SAAS,IAAKJ,GAAG,CAASK,CAAC,KAAKD,SAAS;AACrE,CAAC;AAED,SAASE,YAAYA,CAACC,MAAgB,EAAEC,KAAc,EAAE;EACtD,SAAS;;EACT,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7BD,MAAM,CAACE,IAAI,CAACD,KAAK,CAAC;EACpB,CAAC,MAAM,IAAIE,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,EAAE;IAC/BA,KAAK,CAACI,OAAO,CAAEC,CAAC,IAAKP,YAAY,CAACC,MAAM,EAAEM,CAAC,CAAC,CAAC;EAC/C,CAAC,MAAM,IAAIX,QAAQ,CAACM,KAAK,CAAC,EAAE;IAC1BD,MAAM,CAACE,IAAI,CAACD,KAAK,CAACL,CAAC,EAAEK,KAAK,CAACH,CAAC,CAAC;EAC/B,CAAC,MAAM,IAAIG,KAAK,YAAYM,YAAY,EAAE;IACxCP,MAAM,CAACE,IAAI,CAAC,GAAGD,KAAK,CAAC;EACvB;AACF;AAEA,OAAO,MAAMO,eAAe,GAAGA,CAC7BC,MAAuB,EACvBC,QAAkB,EAClBC,OAAgC,KAC7B;EACH,SAAS;;EACT,MAAMC,MAAgB,GAAG,EAAE;EAC3B,MAAMC,aAAa,GAAGJ,MAAM,CAACK,eAAe,CAAC,CAAC;EAC9C,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,aAAa,EAAEE,CAAC,EAAE,EAAE;IACtC,MAAMC,IAAI,GAAGP,MAAM,CAACQ,cAAc,CAACF,CAAC,CAAC;IACrC,MAAMd,KAAK,GAAGS,QAAQ,CAACM,IAAI,CAAC;IAC5B,IAAIf,KAAK,KAAKJ,SAAS,EAAE;MACvB,MAAM,IAAIqB,KAAK;MACb;MACA,6CAA6CF,IAAI,iFACnD,CAAC;IACH;IACA,IAAIL,OAAO,KAAKd,SAAS,EAAE;MACzBE,YAAY,CAACa,MAAM,EAAEX,KAAK,CAAC;IAC7B,CAAC,MAAM;MACL,MAAMkB,YAAsB,GAAG,EAAE;MACjCpB,YAAY,CAACoB,YAAY,EAAElB,KAAK,CAAC;MACjCU,OAAO,CAACS,UAAU,CAACJ,IAAI,EAAEG,YAAY,CAAC;MACtCP,MAAM,CAACV,IAAI,CAAC,GAAGiB,YAAY,CAAC;IAC9B;EACF;EACA,OAAOP,MAAM;AACf,CAAC","ignoreList":[]}
@@ -3,7 +3,7 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
3
3
  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); }
4
4
  import Rea from "../external/reanimated/ReanimatedProxy";
5
5
  import { HAS_REANIMATED, HAS_REANIMATED_3 } from "../external/reanimated/renderHelpers";
6
- import { DrawingContext } from "./DrawingContext";
6
+ import { createDrawingContext } from "./DrawingContext";
7
7
  import { draw, isSharedValue } from "./nodes";
8
8
  const drawOnscreen = (Skia, nativeId, root) => {
9
9
  "worklet";
@@ -12,7 +12,7 @@ const drawOnscreen = (Skia, nativeId, root) => {
12
12
  const canvas = rec.beginRecording();
13
13
  // TODO: This is only support from 3.15 and above (check the exact version)
14
14
  // This could be polyfilled in C++ if needed (or in JS via functions only?)
15
- const ctx = new DrawingContext(Skia, canvas);
15
+ const ctx = createDrawingContext(Skia, canvas);
16
16
  root.forEach(node => {
17
17
  draw(ctx, node);
18
18
  });
@@ -85,7 +85,7 @@ export class Container {
85
85
  });
86
86
  }
87
87
  drawOnCanvas(canvas) {
88
- const ctx = new DrawingContext(this.Skia, canvas);
88
+ const ctx = createDrawingContext(this.Skia, canvas);
89
89
  this.root.forEach(node => {
90
90
  draw(ctx, node);
91
91
  });
@@ -1 +1 @@
1
- {"version":3,"names":["Rea","HAS_REANIMATED","HAS_REANIMATED_3","DrawingContext","draw","isSharedValue","drawOnscreen","Skia","nativeId","root","rec","PictureRecorder","canvas","beginRecording","ctx","forEach","node","picture","finishRecordingAsPicture","SkiaViewApi","setJsiProperty","Container","constructor","_defineProperty","Set","_root","isOnscreen","Error","mapperId","stopMapper","startMapper","Array","from","values","clear","console","log","redraw","runOnUI","getNativeId","unregisterValues","Object","filter","value","delete","registerValues","add","drawOnCanvas"],"sources":["Container.ts"],"sourcesContent":["import { type SharedValue } from \"react-native-reanimated\";\n\nimport Rea from \"../external/reanimated/ReanimatedProxy\";\nimport type { Skia, SkCanvas } from \"../skia/types\";\nimport {\n HAS_REANIMATED,\n HAS_REANIMATED_3,\n} from \"../external/reanimated/renderHelpers\";\n\nimport { DrawingContext } from \"./DrawingContext\";\nimport type { Node } from \"./nodes\";\nimport { draw, isSharedValue } from \"./nodes\";\n\nconst drawOnscreen = (Skia: Skia, nativeId: number, root: Node[]) => {\n \"worklet\";\n const rec = Skia.PictureRecorder();\n const canvas = rec.beginRecording();\n // TODO: This is only support from 3.15 and above (check the exact version)\n // This could be polyfilled in C++ if needed (or in JS via functions only?)\n const ctx = new DrawingContext(Skia, canvas);\n root.forEach((node) => {\n draw(ctx, node);\n });\n const picture = rec.finishRecordingAsPicture();\n SkiaViewApi.setJsiProperty(nativeId, \"picture\", picture);\n};\n\nexport class Container {\n public _root: Node[] = [];\n public unmounted = false;\n\n private values = new Set<SharedValue<unknown>>();\n private mapperId: number | null = null;\n\n constructor(public Skia: Skia, private nativeId: number) {}\n\n get root() {\n return this._root;\n }\n\n set root(root: Node[]) {\n const isOnscreen = this.nativeId !== -1;\n if (HAS_REANIMATED && !HAS_REANIMATED_3) {\n throw new Error(\"React Native Skia only supports Reanimated 3 and above\");\n }\n if (isOnscreen) {\n if (this.mapperId !== null) {\n Rea.stopMapper(this.mapperId);\n }\n const { nativeId, Skia } = this;\n this.mapperId = Rea.startMapper(() => {\n \"worklet\";\n drawOnscreen(Skia, nativeId, root);\n }, Array.from(this.values));\n }\n this._root = root;\n }\n\n clear() {\n console.log(\"clear container\");\n }\n\n redraw() {\n const isOnscreen = this.nativeId !== -1;\n if (HAS_REANIMATED && !HAS_REANIMATED_3) {\n throw new Error(\"React Native Skia only supports Reanimated 3 and above\");\n }\n if (isOnscreen) {\n const { nativeId, Skia, root } = this;\n Rea.runOnUI(() => {\n drawOnscreen(Skia, nativeId, root);\n })();\n }\n }\n\n getNativeId() {\n return this.nativeId;\n }\n\n unregisterValues(values: object) {\n Object.values(values)\n .filter(isSharedValue)\n .forEach((value) => {\n this.values.delete(value);\n });\n }\n\n registerValues(values: object) {\n Object.values(values)\n .filter(isSharedValue)\n .forEach((value) => {\n this.values.add(value);\n });\n }\n\n drawOnCanvas(canvas: SkCanvas) {\n const ctx = new DrawingContext(this.Skia, canvas);\n this.root.forEach((node) => {\n draw(ctx, node);\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Rea","HAS_REANIMATED","HAS_REANIMATED_3","createDrawingContext","draw","isSharedValue","drawOnscreen","Skia","nativeId","root","rec","PictureRecorder","canvas","beginRecording","ctx","forEach","node","picture","finishRecordingAsPicture","SkiaViewApi","setJsiProperty","Container","constructor","_defineProperty","Set","_root","isOnscreen","Error","mapperId","stopMapper","startMapper","Array","from","values","clear","console","log","redraw","runOnUI","getNativeId","unregisterValues","Object","filter","value","delete","registerValues","add","drawOnCanvas"],"sources":["Container.ts"],"sourcesContent":["import { type SharedValue } from \"react-native-reanimated\";\n\nimport Rea from \"../external/reanimated/ReanimatedProxy\";\nimport type { Skia, SkCanvas } from \"../skia/types\";\nimport {\n HAS_REANIMATED,\n HAS_REANIMATED_3,\n} from \"../external/reanimated/renderHelpers\";\n\nimport { createDrawingContext } from \"./DrawingContext\";\nimport type { Node } from \"./nodes\";\nimport { draw, isSharedValue } from \"./nodes\";\n\nconst drawOnscreen = (Skia: Skia, nativeId: number, root: Node[]) => {\n \"worklet\";\n const rec = Skia.PictureRecorder();\n const canvas = rec.beginRecording();\n // TODO: This is only support from 3.15 and above (check the exact version)\n // This could be polyfilled in C++ if needed (or in JS via functions only?)\n const ctx = createDrawingContext(Skia, canvas);\n root.forEach((node) => {\n draw(ctx, node);\n });\n const picture = rec.finishRecordingAsPicture();\n SkiaViewApi.setJsiProperty(nativeId, \"picture\", picture);\n};\n\nexport class Container {\n public _root: Node[] = [];\n public unmounted = false;\n\n private values = new Set<SharedValue<unknown>>();\n private mapperId: number | null = null;\n\n constructor(public Skia: Skia, private nativeId: number) {}\n\n get root() {\n return this._root;\n }\n\n set root(root: Node[]) {\n const isOnscreen = this.nativeId !== -1;\n if (HAS_REANIMATED && !HAS_REANIMATED_3) {\n throw new Error(\"React Native Skia only supports Reanimated 3 and above\");\n }\n if (isOnscreen) {\n if (this.mapperId !== null) {\n Rea.stopMapper(this.mapperId);\n }\n const { nativeId, Skia } = this;\n this.mapperId = Rea.startMapper(() => {\n \"worklet\";\n drawOnscreen(Skia, nativeId, root);\n }, Array.from(this.values));\n }\n this._root = root;\n }\n\n clear() {\n console.log(\"clear container\");\n }\n\n redraw() {\n const isOnscreen = this.nativeId !== -1;\n if (HAS_REANIMATED && !HAS_REANIMATED_3) {\n throw new Error(\"React Native Skia only supports Reanimated 3 and above\");\n }\n if (isOnscreen) {\n const { nativeId, Skia, root } = this;\n Rea.runOnUI(() => {\n drawOnscreen(Skia, nativeId, root);\n })();\n }\n }\n\n getNativeId() {\n return this.nativeId;\n }\n\n unregisterValues(values: object) {\n Object.values(values)\n .filter(isSharedValue)\n .forEach((value) => {\n this.values.delete(value);\n });\n }\n\n registerValues(values: object) {\n Object.values(values)\n .filter(isSharedValue)\n .forEach((value) => {\n this.values.add(value);\n });\n }\n\n drawOnCanvas(canvas: SkCanvas) {\n const ctx = createDrawingContext(this.Skia, canvas);\n this.root.forEach((node) => {\n draw(ctx, node);\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -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,69 @@
1
+ export const composeDeclarations = (filters, composer) => {
2
+ "worklet";
3
+
4
+ const len = filters.length;
5
+ if (len <= 1) {
6
+ return filters[0];
7
+ }
8
+ return filters.reduceRight((inner, outer) => inner ? composer(outer, inner) : outer);
9
+ };
10
+ const createDeclaration = composer => {
11
+ "worklet";
12
+
13
+ const state = {
14
+ decls: [],
15
+ indexes: [0]
16
+ };
17
+ return {
18
+ save: () => {
19
+ state.indexes.push(state.decls.length);
20
+ },
21
+ restore: () => {
22
+ state.indexes.pop();
23
+ },
24
+ pop: () => state.decls.pop(),
25
+ push: decl => {
26
+ state.decls.push(decl);
27
+ },
28
+ popAll: () => {
29
+ const idx = state.indexes[state.indexes.length - 1];
30
+ return state.decls.splice(idx, state.decls.length - idx);
31
+ },
32
+ popAllAsOne: () => {
33
+ if (state.decls.length === 0) {
34
+ return undefined;
35
+ }
36
+ if (!composer) {
37
+ throw new Error("No composer for this type of declaration");
38
+ }
39
+ if (!state.decls.length) {
40
+ return undefined;
41
+ }
42
+ if (!composer) {
43
+ throw new Error("No composer for this type of declaration");
44
+ }
45
+ const idx = state.indexes[state.indexes.length - 1];
46
+ const decls = state.decls.splice(idx, state.decls.length - idx);
47
+ return composeDeclarations(decls, composer);
48
+ }
49
+ };
50
+ };
51
+ export const createDeclarationContext = Skia => {
52
+ "worklet";
53
+
54
+ const composers = {
55
+ pathEffect: Skia.PathEffect.MakeCompose.bind(Skia.PathEffect),
56
+ imageFilter: Skia.ImageFilter.MakeCompose.bind(Skia.ImageFilter),
57
+ colorFilter: Skia.ColorFilter.MakeCompose.bind(Skia.ColorFilter)
58
+ };
59
+ return {
60
+ Skia,
61
+ paints: createDeclaration(),
62
+ maskFilters: createDeclaration(),
63
+ shaders: createDeclaration(),
64
+ pathEffects: createDeclaration(composers.pathEffect),
65
+ imageFilters: createDeclaration(composers.imageFilter),
66
+ colorFilters: createDeclaration(composers.colorFilter)
67
+ };
68
+ };
69
+ //# sourceMappingURL=DeclarationContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["composeDeclarations","filters","composer","len","length","reduceRight","inner","outer","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>;