@shopify/react-native-skia 0.1.228 → 0.1.230

Sign up to get free protection for your applications and to get access to all the features.
Files changed (629) hide show
  1. package/android/cpp/jni/JniLoad.cpp +0 -2
  2. package/android/src/main/java/com/shopify/reactnative/skia/RNSkiaModule.java +0 -1
  3. package/android/src/main/java/com/shopify/reactnative/skia/RNSkiaPackage.java +1 -2
  4. package/android/src/main/java/com/shopify/reactnative/skia/SkiaBaseView.java +7 -12
  5. package/android/src/main/java/com/shopify/reactnative/skia/SkiaDomView.java +1 -1
  6. package/android/src/main/java/com/shopify/reactnative/skia/SkiaPictureView.java +1 -1
  7. package/cpp/api/JsiSkApi.h +4 -1
  8. package/cpp/api/JsiSkParagraph.h +15 -0
  9. package/cpp/api/JsiSkParagraphBuilder.h +3 -32
  10. package/cpp/api/JsiSkParagraphBuilderFactory.h +54 -0
  11. package/cpp/rnskia/RNSkJsiViewApi.h +0 -52
  12. package/cpp/rnskia/RNSkManager.cpp +0 -6
  13. package/cpp/rnskia/RNSkView.h +2 -91
  14. package/cpp/rnskia/dom/JsiDomApi.h +0 -9
  15. package/lib/commonjs/animation/index.d.ts +0 -3
  16. package/lib/commonjs/animation/index.js +0 -39
  17. package/lib/commonjs/animation/index.js.map +1 -1
  18. package/lib/commonjs/dom/nodes/JsiSkDOM.d.ts +1 -2
  19. package/lib/commonjs/dom/nodes/JsiSkDOM.js +0 -6
  20. package/lib/commonjs/dom/nodes/JsiSkDOM.js.map +1 -1
  21. package/lib/commonjs/dom/nodes/Node.d.ts +0 -3
  22. package/lib/commonjs/dom/nodes/Node.js +0 -5
  23. package/lib/commonjs/dom/nodes/Node.js.map +1 -1
  24. package/lib/commonjs/dom/nodes/drawings/index.d.ts +0 -1
  25. package/lib/commonjs/dom/nodes/drawings/index.js +0 -13
  26. package/lib/commonjs/dom/nodes/drawings/index.js.map +1 -1
  27. package/lib/commonjs/dom/types/Common.d.ts +2 -2
  28. package/lib/commonjs/dom/types/Common.js.map +1 -1
  29. package/lib/commonjs/dom/types/Drawings.d.ts +0 -4
  30. package/lib/commonjs/dom/types/Drawings.js.map +1 -1
  31. package/lib/commonjs/dom/types/NodeType.d.ts +0 -1
  32. package/lib/commonjs/dom/types/NodeType.js +0 -1
  33. package/lib/commonjs/dom/types/NodeType.js.map +1 -1
  34. package/lib/commonjs/dom/types/SkDOM.d.ts +1 -2
  35. package/lib/commonjs/dom/types/SkDOM.js.map +1 -1
  36. package/lib/commonjs/index.d.ts +0 -1
  37. package/lib/commonjs/index.js +0 -14
  38. package/lib/commonjs/index.js.map +1 -1
  39. package/lib/commonjs/mock/index.js +0 -4
  40. package/lib/commonjs/mock/index.js.map +1 -1
  41. package/lib/commonjs/renderer/Canvas.js +9 -34
  42. package/lib/commonjs/renderer/Canvas.js.map +1 -1
  43. package/lib/commonjs/renderer/Container.d.ts +1 -3
  44. package/lib/commonjs/renderer/Container.js +4 -6
  45. package/lib/commonjs/renderer/Container.js.map +1 -1
  46. package/lib/commonjs/renderer/HostComponents.d.ts +1 -6
  47. package/lib/commonjs/renderer/HostComponents.js +0 -3
  48. package/lib/commonjs/renderer/HostComponents.js.map +1 -1
  49. package/lib/commonjs/renderer/HostConfig.js +2 -23
  50. package/lib/commonjs/renderer/HostConfig.js.map +1 -1
  51. package/lib/commonjs/renderer/Reconciler.d.ts +1 -5
  52. package/lib/commonjs/renderer/Reconciler.js +3 -18
  53. package/lib/commonjs/renderer/Reconciler.js.map +1 -1
  54. package/lib/commonjs/renderer/components/index.d.ts +0 -1
  55. package/lib/commonjs/renderer/components/index.js +0 -13
  56. package/lib/commonjs/renderer/components/index.js.map +1 -1
  57. package/lib/commonjs/renderer/index.d.ts +0 -1
  58. package/lib/commonjs/renderer/index.js +0 -13
  59. package/lib/commonjs/renderer/index.js.map +1 -1
  60. package/lib/commonjs/renderer/processors/Animations/Animations.d.ts +1 -8
  61. package/lib/commonjs/renderer/processors/Animations/Animations.js +0 -44
  62. package/lib/commonjs/renderer/processors/Animations/Animations.js.map +1 -1
  63. package/lib/commonjs/skia/types/Canvas.d.ts +2 -2
  64. package/lib/commonjs/skia/types/Canvas.js.map +1 -1
  65. package/lib/commonjs/skia/types/Matrix.d.ts +2 -1
  66. package/lib/commonjs/skia/types/Matrix.js.map +1 -1
  67. package/lib/commonjs/skia/types/Matrix4.d.ts +9 -1
  68. package/lib/commonjs/skia/types/Matrix4.js +49 -3
  69. package/lib/commonjs/skia/types/Matrix4.js.map +1 -1
  70. package/lib/commonjs/skia/types/Paragraph/Paragraph.d.ts +23 -0
  71. package/lib/commonjs/skia/types/Paragraph/Paragraph.js.map +1 -1
  72. package/lib/commonjs/skia/types/Path/Path.d.ts +2 -2
  73. package/lib/commonjs/skia/types/Path/Path.js.map +1 -1
  74. package/lib/commonjs/skia/web/JsiSkMatrix.d.ts +2 -2
  75. package/lib/commonjs/skia/web/JsiSkMatrix.js.map +1 -1
  76. package/lib/commonjs/skia/web/JsiSkParagraph.d.ts +3 -0
  77. package/lib/commonjs/skia/web/JsiSkParagraph.js +12 -0
  78. package/lib/commonjs/skia/web/JsiSkParagraph.js.map +1 -1
  79. package/lib/commonjs/skia/web/JsiSkParagraphBuilderFactory.js +5 -2
  80. package/lib/commonjs/skia/web/JsiSkParagraphBuilderFactory.js.map +1 -1
  81. package/lib/commonjs/views/SkiaBaseWebView.d.ts +0 -7
  82. package/lib/commonjs/views/SkiaBaseWebView.js +0 -17
  83. package/lib/commonjs/views/SkiaBaseWebView.js.map +1 -1
  84. package/lib/commonjs/views/SkiaDomView.d.ts +0 -7
  85. package/lib/commonjs/views/SkiaDomView.js +3 -14
  86. package/lib/commonjs/views/SkiaDomView.js.map +1 -1
  87. package/lib/commonjs/views/SkiaDomView.web.js +4 -14
  88. package/lib/commonjs/views/SkiaDomView.web.js.map +1 -1
  89. package/lib/commonjs/views/SkiaPictureView.d.ts +0 -7
  90. package/lib/commonjs/views/SkiaPictureView.js +3 -14
  91. package/lib/commonjs/views/SkiaPictureView.js.map +1 -1
  92. package/lib/commonjs/views/SkiaViewNativeId.d.ts +3 -0
  93. package/lib/commonjs/views/SkiaViewNativeId.js +11 -0
  94. package/lib/commonjs/views/SkiaViewNativeId.js.map +1 -0
  95. package/lib/commonjs/views/index.d.ts +0 -2
  96. package/lib/commonjs/views/index.js +0 -26
  97. package/lib/commonjs/views/index.js.map +1 -1
  98. package/lib/commonjs/views/types.d.ts +2 -15
  99. package/lib/commonjs/views/types.js.map +1 -1
  100. package/lib/module/animation/index.d.ts +0 -3
  101. package/lib/module/animation/index.js +0 -3
  102. package/lib/module/animation/index.js.map +1 -1
  103. package/lib/module/dom/nodes/JsiSkDOM.d.ts +1 -2
  104. package/lib/module/dom/nodes/JsiSkDOM.js +1 -7
  105. package/lib/module/dom/nodes/JsiSkDOM.js.map +1 -1
  106. package/lib/module/dom/nodes/Node.d.ts +0 -3
  107. package/lib/module/dom/nodes/Node.js +0 -5
  108. package/lib/module/dom/nodes/Node.js.map +1 -1
  109. package/lib/module/dom/nodes/drawings/index.d.ts +0 -1
  110. package/lib/module/dom/nodes/drawings/index.js +0 -1
  111. package/lib/module/dom/nodes/drawings/index.js.map +1 -1
  112. package/lib/module/dom/types/Common.d.ts +2 -2
  113. package/lib/module/dom/types/Common.js.map +1 -1
  114. package/lib/module/dom/types/Drawings.d.ts +0 -4
  115. package/lib/module/dom/types/Drawings.js.map +1 -1
  116. package/lib/module/dom/types/NodeType.d.ts +0 -1
  117. package/lib/module/dom/types/NodeType.js +0 -1
  118. package/lib/module/dom/types/NodeType.js.map +1 -1
  119. package/lib/module/dom/types/SkDOM.d.ts +1 -2
  120. package/lib/module/dom/types/SkDOM.js.map +1 -1
  121. package/lib/module/index.d.ts +0 -1
  122. package/lib/module/index.js +0 -1
  123. package/lib/module/index.js.map +1 -1
  124. package/lib/module/mock/index.js +1 -4
  125. package/lib/module/mock/index.js.map +1 -1
  126. package/lib/module/renderer/Canvas.js +9 -32
  127. package/lib/module/renderer/Canvas.js.map +1 -1
  128. package/lib/module/renderer/Container.d.ts +1 -3
  129. package/lib/module/renderer/Container.js +4 -6
  130. package/lib/module/renderer/Container.js.map +1 -1
  131. package/lib/module/renderer/HostComponents.d.ts +1 -6
  132. package/lib/module/renderer/HostComponents.js +0 -3
  133. package/lib/module/renderer/HostComponents.js.map +1 -1
  134. package/lib/module/renderer/HostConfig.js +3 -23
  135. package/lib/module/renderer/HostConfig.js.map +1 -1
  136. package/lib/module/renderer/Reconciler.d.ts +1 -5
  137. package/lib/module/renderer/Reconciler.js +3 -16
  138. package/lib/module/renderer/Reconciler.js.map +1 -1
  139. package/lib/module/renderer/components/index.d.ts +0 -1
  140. package/lib/module/renderer/components/index.js +0 -1
  141. package/lib/module/renderer/components/index.js.map +1 -1
  142. package/lib/module/renderer/index.d.ts +0 -1
  143. package/lib/module/renderer/index.js +0 -1
  144. package/lib/module/renderer/index.js.map +1 -1
  145. package/lib/module/renderer/processors/Animations/Animations.d.ts +1 -8
  146. package/lib/module/renderer/processors/Animations/Animations.js +0 -28
  147. package/lib/module/renderer/processors/Animations/Animations.js.map +1 -1
  148. package/lib/module/skia/types/Canvas.d.ts +2 -2
  149. package/lib/module/skia/types/Canvas.js.map +1 -1
  150. package/lib/module/skia/types/Matrix.d.ts +2 -1
  151. package/lib/module/skia/types/Matrix.js.map +1 -1
  152. package/lib/module/skia/types/Matrix4.d.ts +9 -1
  153. package/lib/module/skia/types/Matrix4.js +42 -2
  154. package/lib/module/skia/types/Matrix4.js.map +1 -1
  155. package/lib/module/skia/types/Paragraph/Paragraph.d.ts +23 -0
  156. package/lib/module/skia/types/Paragraph/Paragraph.js.map +1 -1
  157. package/lib/module/skia/types/Path/Path.d.ts +2 -2
  158. package/lib/module/skia/types/Path/Path.js.map +1 -1
  159. package/lib/module/skia/web/JsiSkMatrix.d.ts +2 -2
  160. package/lib/module/skia/web/JsiSkMatrix.js.map +1 -1
  161. package/lib/module/skia/web/JsiSkParagraph.d.ts +3 -0
  162. package/lib/module/skia/web/JsiSkParagraph.js +12 -0
  163. package/lib/module/skia/web/JsiSkParagraph.js.map +1 -1
  164. package/lib/module/skia/web/JsiSkParagraphBuilderFactory.js +5 -2
  165. package/lib/module/skia/web/JsiSkParagraphBuilderFactory.js.map +1 -1
  166. package/lib/module/views/SkiaBaseWebView.d.ts +0 -7
  167. package/lib/module/views/SkiaBaseWebView.js +0 -17
  168. package/lib/module/views/SkiaBaseWebView.js.map +1 -1
  169. package/lib/module/views/SkiaDomView.d.ts +0 -7
  170. package/lib/module/views/SkiaDomView.js +2 -13
  171. package/lib/module/views/SkiaDomView.js.map +1 -1
  172. package/lib/module/views/SkiaDomView.web.js +4 -13
  173. package/lib/module/views/SkiaDomView.web.js.map +1 -1
  174. package/lib/module/views/SkiaPictureView.d.ts +0 -7
  175. package/lib/module/views/SkiaPictureView.js +2 -13
  176. package/lib/module/views/SkiaPictureView.js.map +1 -1
  177. package/lib/module/views/SkiaViewNativeId.d.ts +3 -0
  178. package/lib/module/views/SkiaViewNativeId.js +4 -0
  179. package/lib/module/views/SkiaViewNativeId.js.map +1 -0
  180. package/lib/module/views/index.d.ts +0 -2
  181. package/lib/module/views/index.js +0 -2
  182. package/lib/module/views/index.js.map +1 -1
  183. package/lib/module/views/types.d.ts +2 -15
  184. package/lib/module/views/types.js.map +1 -1
  185. package/lib/typescript/src/animation/index.d.ts +0 -3
  186. package/lib/typescript/src/dom/nodes/JsiSkDOM.d.ts +1 -2
  187. package/lib/typescript/src/dom/nodes/Node.d.ts +0 -3
  188. package/lib/typescript/src/dom/nodes/drawings/index.d.ts +0 -1
  189. package/lib/typescript/src/dom/types/Common.d.ts +2 -2
  190. package/lib/typescript/src/dom/types/Drawings.d.ts +0 -4
  191. package/lib/typescript/src/dom/types/NodeType.d.ts +0 -1
  192. package/lib/typescript/src/dom/types/SkDOM.d.ts +1 -2
  193. package/lib/typescript/src/index.d.ts +0 -1
  194. package/lib/typescript/src/renderer/Container.d.ts +1 -3
  195. package/lib/typescript/src/renderer/HostComponents.d.ts +1 -6
  196. package/lib/typescript/src/renderer/Reconciler.d.ts +1 -5
  197. package/lib/typescript/src/renderer/components/index.d.ts +0 -1
  198. package/lib/typescript/src/renderer/index.d.ts +0 -1
  199. package/lib/typescript/src/renderer/processors/Animations/Animations.d.ts +1 -8
  200. package/lib/typescript/src/skia/types/Canvas.d.ts +2 -2
  201. package/lib/typescript/src/skia/types/Matrix.d.ts +2 -1
  202. package/lib/typescript/src/skia/types/Matrix4.d.ts +9 -1
  203. package/lib/typescript/src/skia/types/Paragraph/Paragraph.d.ts +23 -0
  204. package/lib/typescript/src/skia/types/Path/Path.d.ts +2 -2
  205. package/lib/typescript/src/skia/web/JsiSkMatrix.d.ts +2 -2
  206. package/lib/typescript/src/skia/web/JsiSkParagraph.d.ts +3 -0
  207. package/lib/typescript/src/views/SkiaBaseWebView.d.ts +0 -7
  208. package/lib/typescript/src/views/SkiaDomView.d.ts +0 -7
  209. package/lib/typescript/src/views/SkiaPictureView.d.ts +0 -7
  210. package/lib/typescript/src/views/SkiaViewNativeId.d.ts +3 -0
  211. package/lib/typescript/src/views/index.d.ts +0 -2
  212. package/lib/typescript/src/views/types.d.ts +2 -15
  213. package/package.json +1 -1
  214. package/src/animation/index.ts +0 -3
  215. package/src/dom/nodes/JsiSkDOM.ts +0 -12
  216. package/src/dom/nodes/Node.ts +0 -5
  217. package/src/dom/nodes/drawings/index.ts +0 -1
  218. package/src/dom/types/Common.ts +2 -4
  219. package/src/dom/types/Drawings.ts +0 -5
  220. package/src/dom/types/NodeType.ts +0 -1
  221. package/src/dom/types/SkDOM.ts +0 -4
  222. package/src/index.ts +0 -1
  223. package/src/mock/index.ts +0 -3
  224. package/src/renderer/Canvas.tsx +9 -34
  225. package/src/renderer/Container.tsx +1 -4
  226. package/src/renderer/HostComponents.ts +0 -13
  227. package/src/renderer/HostConfig.ts +3 -24
  228. package/src/renderer/Reconciler.tsx +1 -19
  229. package/src/renderer/components/index.ts +0 -1
  230. package/src/renderer/index.ts +0 -1
  231. package/src/renderer/processors/Animations/Animations.ts +1 -51
  232. package/src/skia/types/Canvas.ts +2 -2
  233. package/src/skia/types/Matrix.ts +3 -1
  234. package/src/skia/types/Matrix4.ts +94 -63
  235. package/src/skia/types/Paragraph/Paragraph.ts +25 -0
  236. package/src/skia/types/Path/Path.ts +2 -2
  237. package/src/skia/web/JsiSkMatrix.ts +5 -5
  238. package/src/skia/web/JsiSkParagraph.ts +11 -0
  239. package/src/skia/web/JsiSkParagraphBuilderFactory.ts +9 -3
  240. package/src/views/SkiaBaseWebView.tsx +0 -19
  241. package/src/views/SkiaDomView.tsx +1 -13
  242. package/src/views/SkiaDomView.web.tsx +1 -6
  243. package/src/views/SkiaPictureView.tsx +1 -13
  244. package/src/views/SkiaViewNativeId.ts +1 -0
  245. package/src/views/index.ts +0 -2
  246. package/src/views/types.ts +2 -26
  247. package/android/src/main/java/com/shopify/reactnative/skia/SkiaDrawView.java +0 -44
  248. package/android/src/main/java/com/shopify/reactnative/skia/SkiaDrawViewManager.java +0 -34
  249. package/cpp/rnskia/RNSkAnimation.h +0 -65
  250. package/cpp/rnskia/RNSkValueApi.h +0 -72
  251. package/cpp/rnskia/dom/base/JsiDependencyManager.h +0 -297
  252. package/cpp/rnskia/dom/nodes/JsiCustomDrawingNode.h +0 -127
  253. package/cpp/rnskia/dom/props/DrawingProp.h +0 -35
  254. package/cpp/rnskia/values/RNSkClockValue.h +0 -140
  255. package/cpp/rnskia/values/RNSkComputedValue.h +0 -104
  256. package/cpp/rnskia/values/RNSkReadonlyValue.h +0 -166
  257. package/cpp/rnskia/values/RNSkValue.h +0 -116
  258. package/ios/RNSkia-iOS/SkiaDrawView.h +0 -7
  259. package/ios/RNSkia-iOS/SkiaDrawView.mm +0 -72
  260. package/ios/RNSkia-iOS/SkiaDrawViewManager.h +0 -7
  261. package/ios/RNSkia-iOS/SkiaDrawViewManager.mm +0 -50
  262. package/lib/commonjs/animation/decay/decay.d.ts +0 -2
  263. package/lib/commonjs/animation/decay/decay.js +0 -42
  264. package/lib/commonjs/animation/decay/decay.js.map +0 -1
  265. package/lib/commonjs/animation/decay/index.d.ts +0 -1
  266. package/lib/commonjs/animation/decay/index.js +0 -14
  267. package/lib/commonjs/animation/decay/index.js.map +0 -1
  268. package/lib/commonjs/animation/decay/runDecay.d.ts +0 -10
  269. package/lib/commonjs/animation/decay/runDecay.js +0 -48
  270. package/lib/commonjs/animation/decay/runDecay.js.map +0 -1
  271. package/lib/commonjs/animation/decay/types.d.ts +0 -21
  272. package/lib/commonjs/animation/decay/types.js +0 -6
  273. package/lib/commonjs/animation/decay/types.js.map +0 -1
  274. package/lib/commonjs/animation/spring/Spring.d.ts +0 -65
  275. package/lib/commonjs/animation/spring/Spring.js +0 -77
  276. package/lib/commonjs/animation/spring/Spring.js.map +0 -1
  277. package/lib/commonjs/animation/spring/functions/index.d.ts +0 -1
  278. package/lib/commonjs/animation/spring/functions/index.js +0 -14
  279. package/lib/commonjs/animation/spring/functions/index.js.map +0 -1
  280. package/lib/commonjs/animation/spring/functions/spring.d.ts +0 -10
  281. package/lib/commonjs/animation/spring/functions/spring.js +0 -94
  282. package/lib/commonjs/animation/spring/functions/spring.js.map +0 -1
  283. package/lib/commonjs/animation/spring/index.d.ts +0 -3
  284. package/lib/commonjs/animation/spring/index.js +0 -30
  285. package/lib/commonjs/animation/spring/index.js.map +0 -1
  286. package/lib/commonjs/animation/spring/runSpring.d.ts +0 -19
  287. package/lib/commonjs/animation/spring/runSpring.js +0 -35
  288. package/lib/commonjs/animation/spring/runSpring.js.map +0 -1
  289. package/lib/commonjs/animation/spring/types.d.ts +0 -6
  290. package/lib/commonjs/animation/spring/types.js +0 -2
  291. package/lib/commonjs/animation/spring/types.js.map +0 -1
  292. package/lib/commonjs/animation/spring/useSpring.d.ts +0 -13
  293. package/lib/commonjs/animation/spring/useSpring.js +0 -27
  294. package/lib/commonjs/animation/spring/useSpring.js.map +0 -1
  295. package/lib/commonjs/animation/timing/Easing.d.ts +0 -19
  296. package/lib/commonjs/animation/timing/Easing.js +0 -108
  297. package/lib/commonjs/animation/timing/Easing.js.map +0 -1
  298. package/lib/commonjs/animation/timing/createTiming.d.ts +0 -17
  299. package/lib/commonjs/animation/timing/createTiming.js +0 -55
  300. package/lib/commonjs/animation/timing/createTiming.js.map +0 -1
  301. package/lib/commonjs/animation/timing/functions/bezier.d.ts +0 -1
  302. package/lib/commonjs/animation/timing/functions/bezier.js +0 -147
  303. package/lib/commonjs/animation/timing/functions/bezier.js.map +0 -1
  304. package/lib/commonjs/animation/timing/functions/getResolvedParams.d.ts +0 -7
  305. package/lib/commonjs/animation/timing/functions/getResolvedParams.js +0 -52
  306. package/lib/commonjs/animation/timing/functions/getResolvedParams.js.map +0 -1
  307. package/lib/commonjs/animation/timing/functions/index.d.ts +0 -4
  308. package/lib/commonjs/animation/timing/functions/index.js +0 -54
  309. package/lib/commonjs/animation/timing/functions/index.js.map +0 -1
  310. package/lib/commonjs/animation/timing/functions/timing.d.ts +0 -17
  311. package/lib/commonjs/animation/timing/functions/timing.js +0 -50
  312. package/lib/commonjs/animation/timing/functions/timing.js.map +0 -1
  313. package/lib/commonjs/animation/timing/functions/types.d.ts +0 -7
  314. package/lib/commonjs/animation/timing/functions/types.js +0 -2
  315. package/lib/commonjs/animation/timing/functions/types.js.map +0 -1
  316. package/lib/commonjs/animation/timing/index.d.ts +0 -4
  317. package/lib/commonjs/animation/timing/index.js +0 -38
  318. package/lib/commonjs/animation/timing/index.js.map +0 -1
  319. package/lib/commonjs/animation/timing/runTiming.d.ts +0 -19
  320. package/lib/commonjs/animation/timing/runTiming.js +0 -36
  321. package/lib/commonjs/animation/timing/runTiming.js.map +0 -1
  322. package/lib/commonjs/animation/timing/useLoop.d.ts +0 -11
  323. package/lib/commonjs/animation/timing/useLoop.js +0 -25
  324. package/lib/commonjs/animation/timing/useLoop.js.map +0 -1
  325. package/lib/commonjs/animation/timing/useTiming.d.ts +0 -13
  326. package/lib/commonjs/animation/timing/useTiming.js +0 -67
  327. package/lib/commonjs/animation/timing/useTiming.js.map +0 -1
  328. package/lib/commonjs/dom/nodes/drawings/CustomDrawingNode.d.ts +0 -8
  329. package/lib/commonjs/dom/nodes/drawings/CustomDrawingNode.js +0 -28
  330. package/lib/commonjs/dom/nodes/drawings/CustomDrawingNode.js.map +0 -1
  331. package/lib/commonjs/renderer/DependencyManager.d.ts +0 -46
  332. package/lib/commonjs/renderer/DependencyManager.js +0 -185
  333. package/lib/commonjs/renderer/DependencyManager.js.map +0 -1
  334. package/lib/commonjs/renderer/components/Drawing.d.ts +0 -8
  335. package/lib/commonjs/renderer/components/Drawing.js +0 -22
  336. package/lib/commonjs/renderer/components/Drawing.js.map +0 -1
  337. package/lib/commonjs/specs/SkiaDrawViewNativeComponent.d.ts +0 -8
  338. package/lib/commonjs/specs/SkiaDrawViewNativeComponent.js +0 -16
  339. package/lib/commonjs/specs/SkiaDrawViewNativeComponent.js.map +0 -1
  340. package/lib/commonjs/values/api.d.ts +0 -26
  341. package/lib/commonjs/values/api.js +0 -55
  342. package/lib/commonjs/values/api.js.map +0 -1
  343. package/lib/commonjs/values/api.web.d.ts +0 -2
  344. package/lib/commonjs/values/api.web.js +0 -18
  345. package/lib/commonjs/values/api.web.js.map +0 -1
  346. package/lib/commonjs/values/hooks/index.d.ts +0 -4
  347. package/lib/commonjs/values/hooks/index.js +0 -58
  348. package/lib/commonjs/values/hooks/index.js.map +0 -1
  349. package/lib/commonjs/values/hooks/useClockValue.d.ts +0 -9
  350. package/lib/commonjs/values/hooks/useClockValue.js +0 -30
  351. package/lib/commonjs/values/hooks/useClockValue.js.map +0 -1
  352. package/lib/commonjs/values/hooks/useComputedValue.d.ts +0 -11
  353. package/lib/commonjs/values/hooks/useComputedValue.js +0 -32
  354. package/lib/commonjs/values/hooks/useComputedValue.js.map +0 -1
  355. package/lib/commonjs/values/hooks/useValue.d.ts +0 -10
  356. package/lib/commonjs/values/hooks/useValue.js +0 -26
  357. package/lib/commonjs/values/hooks/useValue.js.map +0 -1
  358. package/lib/commonjs/values/hooks/useValueEffect.d.ts +0 -10
  359. package/lib/commonjs/values/hooks/useValueEffect.js +0 -25
  360. package/lib/commonjs/values/hooks/useValueEffect.js.map +0 -1
  361. package/lib/commonjs/values/index.d.ts +0 -4
  362. package/lib/commonjs/values/index.js +0 -58
  363. package/lib/commonjs/values/index.js.map +0 -1
  364. package/lib/commonjs/values/selector.d.ts +0 -14
  365. package/lib/commonjs/values/selector.js +0 -24
  366. package/lib/commonjs/values/selector.js.map +0 -1
  367. package/lib/commonjs/values/types.d.ts +0 -63
  368. package/lib/commonjs/values/types.js +0 -2
  369. package/lib/commonjs/values/types.js.map +0 -1
  370. package/lib/commonjs/values/web/RNSkAnimation.d.ts +0 -9
  371. package/lib/commonjs/values/web/RNSkAnimation.js +0 -46
  372. package/lib/commonjs/values/web/RNSkAnimation.js.map +0 -1
  373. package/lib/commonjs/values/web/RNSkClockValue.d.ts +0 -13
  374. package/lib/commonjs/values/web/RNSkClockValue.js +0 -75
  375. package/lib/commonjs/values/web/RNSkClockValue.js.map +0 -1
  376. package/lib/commonjs/values/web/RNSkComputedValue.d.ts +0 -10
  377. package/lib/commonjs/values/web/RNSkComputedValue.js +0 -59
  378. package/lib/commonjs/values/web/RNSkComputedValue.js.map +0 -1
  379. package/lib/commonjs/values/web/RNSkReadonlyValue.d.ts +0 -12
  380. package/lib/commonjs/values/web/RNSkReadonlyValue.js +0 -51
  381. package/lib/commonjs/values/web/RNSkReadonlyValue.js.map +0 -1
  382. package/lib/commonjs/values/web/RNSkValue.d.ts +0 -14
  383. package/lib/commonjs/values/web/RNSkValue.js +0 -73
  384. package/lib/commonjs/values/web/RNSkValue.js.map +0 -1
  385. package/lib/commonjs/values/web/api.d.ts +0 -2
  386. package/lib/commonjs/values/web/api.js +0 -31
  387. package/lib/commonjs/values/web/api.js.map +0 -1
  388. package/lib/commonjs/values/web/index.d.ts +0 -1
  389. package/lib/commonjs/values/web/index.js +0 -19
  390. package/lib/commonjs/values/web/index.js.map +0 -1
  391. package/lib/commonjs/views/SkiaView.d.ts +0 -35
  392. package/lib/commonjs/views/SkiaView.js +0 -139
  393. package/lib/commonjs/views/SkiaView.js.map +0 -1
  394. package/lib/commonjs/views/SkiaView.web.d.ts +0 -7
  395. package/lib/commonjs/views/SkiaView.web.js +0 -30
  396. package/lib/commonjs/views/SkiaView.web.js.map +0 -1
  397. package/lib/commonjs/views/useDrawCallback.d.ts +0 -8
  398. package/lib/commonjs/views/useDrawCallback.js +0 -23
  399. package/lib/commonjs/views/useDrawCallback.js.map +0 -1
  400. package/lib/module/animation/decay/decay.d.ts +0 -2
  401. package/lib/module/animation/decay/decay.js +0 -33
  402. package/lib/module/animation/decay/decay.js.map +0 -1
  403. package/lib/module/animation/decay/index.d.ts +0 -1
  404. package/lib/module/animation/decay/index.js +0 -2
  405. package/lib/module/animation/decay/index.js.map +0 -1
  406. package/lib/module/animation/decay/runDecay.d.ts +0 -10
  407. package/lib/module/animation/decay/runDecay.js +0 -38
  408. package/lib/module/animation/decay/runDecay.js.map +0 -1
  409. package/lib/module/animation/decay/types.d.ts +0 -21
  410. package/lib/module/animation/decay/types.js +0 -2
  411. package/lib/module/animation/decay/types.js.map +0 -1
  412. package/lib/module/animation/spring/Spring.d.ts +0 -65
  413. package/lib/module/animation/spring/Spring.js +0 -69
  414. package/lib/module/animation/spring/Spring.js.map +0 -1
  415. package/lib/module/animation/spring/functions/index.d.ts +0 -1
  416. package/lib/module/animation/spring/functions/index.js +0 -2
  417. package/lib/module/animation/spring/functions/index.js.map +0 -1
  418. package/lib/module/animation/spring/functions/spring.d.ts +0 -10
  419. package/lib/module/animation/spring/functions/spring.js +0 -85
  420. package/lib/module/animation/spring/functions/spring.js.map +0 -1
  421. package/lib/module/animation/spring/index.d.ts +0 -3
  422. package/lib/module/animation/spring/index.js +0 -4
  423. package/lib/module/animation/spring/index.js.map +0 -1
  424. package/lib/module/animation/spring/runSpring.d.ts +0 -19
  425. package/lib/module/animation/spring/runSpring.js +0 -24
  426. package/lib/module/animation/spring/runSpring.js.map +0 -1
  427. package/lib/module/animation/spring/types.d.ts +0 -6
  428. package/lib/module/animation/spring/types.js +0 -2
  429. package/lib/module/animation/spring/types.js.map +0 -1
  430. package/lib/module/animation/spring/useSpring.d.ts +0 -13
  431. package/lib/module/animation/spring/useSpring.js +0 -16
  432. package/lib/module/animation/spring/useSpring.js.map +0 -1
  433. package/lib/module/animation/timing/Easing.d.ts +0 -19
  434. package/lib/module/animation/timing/Easing.js +0 -98
  435. package/lib/module/animation/timing/Easing.js.map +0 -1
  436. package/lib/module/animation/timing/createTiming.d.ts +0 -17
  437. package/lib/module/animation/timing/createTiming.js +0 -49
  438. package/lib/module/animation/timing/createTiming.js.map +0 -1
  439. package/lib/module/animation/timing/functions/bezier.d.ts +0 -1
  440. package/lib/module/animation/timing/functions/bezier.js +0 -141
  441. package/lib/module/animation/timing/functions/bezier.js.map +0 -1
  442. package/lib/module/animation/timing/functions/getResolvedParams.d.ts +0 -7
  443. package/lib/module/animation/timing/functions/getResolvedParams.js +0 -48
  444. package/lib/module/animation/timing/functions/getResolvedParams.js.map +0 -1
  445. package/lib/module/animation/timing/functions/index.d.ts +0 -4
  446. package/lib/module/animation/timing/functions/index.js +0 -5
  447. package/lib/module/animation/timing/functions/index.js.map +0 -1
  448. package/lib/module/animation/timing/functions/timing.d.ts +0 -17
  449. package/lib/module/animation/timing/functions/timing.js +0 -41
  450. package/lib/module/animation/timing/functions/timing.js.map +0 -1
  451. package/lib/module/animation/timing/functions/types.d.ts +0 -7
  452. package/lib/module/animation/timing/functions/types.js +0 -2
  453. package/lib/module/animation/timing/functions/types.js.map +0 -1
  454. package/lib/module/animation/timing/index.d.ts +0 -4
  455. package/lib/module/animation/timing/index.js +0 -5
  456. package/lib/module/animation/timing/index.js.map +0 -1
  457. package/lib/module/animation/timing/runTiming.d.ts +0 -19
  458. package/lib/module/animation/timing/runTiming.js +0 -26
  459. package/lib/module/animation/timing/runTiming.js.map +0 -1
  460. package/lib/module/animation/timing/useLoop.d.ts +0 -11
  461. package/lib/module/animation/timing/useLoop.js +0 -16
  462. package/lib/module/animation/timing/useLoop.js.map +0 -1
  463. package/lib/module/animation/timing/useTiming.d.ts +0 -13
  464. package/lib/module/animation/timing/useTiming.js +0 -57
  465. package/lib/module/animation/timing/useTiming.js.map +0 -1
  466. package/lib/module/dom/nodes/drawings/CustomDrawingNode.d.ts +0 -8
  467. package/lib/module/dom/nodes/drawings/CustomDrawingNode.js +0 -17
  468. package/lib/module/dom/nodes/drawings/CustomDrawingNode.js.map +0 -1
  469. package/lib/module/renderer/DependencyManager.d.ts +0 -46
  470. package/lib/module/renderer/DependencyManager.js +0 -174
  471. package/lib/module/renderer/DependencyManager.js.map +0 -1
  472. package/lib/module/renderer/components/Drawing.d.ts +0 -8
  473. package/lib/module/renderer/components/Drawing.js +0 -11
  474. package/lib/module/renderer/components/Drawing.js.map +0 -1
  475. package/lib/module/specs/SkiaDrawViewNativeComponent.d.ts +0 -8
  476. package/lib/module/specs/SkiaDrawViewNativeComponent.js +0 -4
  477. package/lib/module/specs/SkiaDrawViewNativeComponent.js.map +0 -1
  478. package/lib/module/values/api.d.ts +0 -26
  479. package/lib/module/values/api.js +0 -48
  480. package/lib/module/values/api.js.map +0 -1
  481. package/lib/module/values/api.web.d.ts +0 -2
  482. package/lib/module/values/api.web.js +0 -7
  483. package/lib/module/values/api.web.js.map +0 -1
  484. package/lib/module/values/hooks/index.d.ts +0 -4
  485. package/lib/module/values/hooks/index.js +0 -5
  486. package/lib/module/values/hooks/index.js.map +0 -1
  487. package/lib/module/values/hooks/useClockValue.d.ts +0 -9
  488. package/lib/module/values/hooks/useClockValue.js +0 -20
  489. package/lib/module/values/hooks/useClockValue.js.map +0 -1
  490. package/lib/module/values/hooks/useComputedValue.d.ts +0 -11
  491. package/lib/module/values/hooks/useComputedValue.js +0 -21
  492. package/lib/module/values/hooks/useComputedValue.js.map +0 -1
  493. package/lib/module/values/hooks/useValue.d.ts +0 -10
  494. package/lib/module/values/hooks/useValue.js +0 -16
  495. package/lib/module/values/hooks/useValue.js.map +0 -1
  496. package/lib/module/values/hooks/useValueEffect.d.ts +0 -10
  497. package/lib/module/values/hooks/useValueEffect.js +0 -16
  498. package/lib/module/values/hooks/useValueEffect.js.map +0 -1
  499. package/lib/module/values/index.d.ts +0 -4
  500. package/lib/module/values/index.js +0 -5
  501. package/lib/module/values/index.js.map +0 -1
  502. package/lib/module/values/selector.d.ts +0 -14
  503. package/lib/module/values/selector.js +0 -15
  504. package/lib/module/values/selector.js.map +0 -1
  505. package/lib/module/values/types.d.ts +0 -63
  506. package/lib/module/values/types.js +0 -2
  507. package/lib/module/values/types.js.map +0 -1
  508. package/lib/module/values/web/RNSkAnimation.d.ts +0 -9
  509. package/lib/module/values/web/RNSkAnimation.js +0 -36
  510. package/lib/module/values/web/RNSkAnimation.js.map +0 -1
  511. package/lib/module/values/web/RNSkClockValue.d.ts +0 -13
  512. package/lib/module/values/web/RNSkClockValue.js +0 -65
  513. package/lib/module/values/web/RNSkClockValue.js.map +0 -1
  514. package/lib/module/values/web/RNSkComputedValue.d.ts +0 -10
  515. package/lib/module/values/web/RNSkComputedValue.js +0 -49
  516. package/lib/module/values/web/RNSkComputedValue.js.map +0 -1
  517. package/lib/module/values/web/RNSkReadonlyValue.d.ts +0 -12
  518. package/lib/module/values/web/RNSkReadonlyValue.js +0 -42
  519. package/lib/module/values/web/RNSkReadonlyValue.js.map +0 -1
  520. package/lib/module/values/web/RNSkValue.d.ts +0 -14
  521. package/lib/module/values/web/RNSkValue.js +0 -63
  522. package/lib/module/values/web/RNSkValue.js.map +0 -1
  523. package/lib/module/values/web/api.d.ts +0 -2
  524. package/lib/module/values/web/api.js +0 -19
  525. package/lib/module/values/web/api.js.map +0 -1
  526. package/lib/module/values/web/index.d.ts +0 -1
  527. package/lib/module/values/web/index.js +0 -2
  528. package/lib/module/values/web/index.js.map +0 -1
  529. package/lib/module/views/SkiaView.d.ts +0 -35
  530. package/lib/module/views/SkiaView.js +0 -119
  531. package/lib/module/views/SkiaView.js.map +0 -1
  532. package/lib/module/views/SkiaView.web.d.ts +0 -7
  533. package/lib/module/views/SkiaView.web.js +0 -20
  534. package/lib/module/views/SkiaView.web.js.map +0 -1
  535. package/lib/module/views/useDrawCallback.d.ts +0 -8
  536. package/lib/module/views/useDrawCallback.js +0 -14
  537. package/lib/module/views/useDrawCallback.js.map +0 -1
  538. package/lib/typescript/src/animation/decay/decay.d.ts +0 -2
  539. package/lib/typescript/src/animation/decay/index.d.ts +0 -1
  540. package/lib/typescript/src/animation/decay/runDecay.d.ts +0 -10
  541. package/lib/typescript/src/animation/decay/types.d.ts +0 -21
  542. package/lib/typescript/src/animation/spring/Spring.d.ts +0 -65
  543. package/lib/typescript/src/animation/spring/functions/index.d.ts +0 -1
  544. package/lib/typescript/src/animation/spring/functions/spring.d.ts +0 -10
  545. package/lib/typescript/src/animation/spring/index.d.ts +0 -3
  546. package/lib/typescript/src/animation/spring/runSpring.d.ts +0 -19
  547. package/lib/typescript/src/animation/spring/types.d.ts +0 -6
  548. package/lib/typescript/src/animation/spring/useSpring.d.ts +0 -13
  549. package/lib/typescript/src/animation/timing/Easing.d.ts +0 -19
  550. package/lib/typescript/src/animation/timing/createTiming.d.ts +0 -17
  551. package/lib/typescript/src/animation/timing/functions/bezier.d.ts +0 -1
  552. package/lib/typescript/src/animation/timing/functions/getResolvedParams.d.ts +0 -7
  553. package/lib/typescript/src/animation/timing/functions/index.d.ts +0 -4
  554. package/lib/typescript/src/animation/timing/functions/timing.d.ts +0 -17
  555. package/lib/typescript/src/animation/timing/functions/types.d.ts +0 -7
  556. package/lib/typescript/src/animation/timing/index.d.ts +0 -4
  557. package/lib/typescript/src/animation/timing/runTiming.d.ts +0 -19
  558. package/lib/typescript/src/animation/timing/useLoop.d.ts +0 -11
  559. package/lib/typescript/src/animation/timing/useTiming.d.ts +0 -13
  560. package/lib/typescript/src/dom/nodes/drawings/CustomDrawingNode.d.ts +0 -8
  561. package/lib/typescript/src/renderer/DependencyManager.d.ts +0 -46
  562. package/lib/typescript/src/renderer/components/Drawing.d.ts +0 -8
  563. package/lib/typescript/src/specs/SkiaDrawViewNativeComponent.d.ts +0 -8
  564. package/lib/typescript/src/values/api.d.ts +0 -26
  565. package/lib/typescript/src/values/api.web.d.ts +0 -2
  566. package/lib/typescript/src/values/hooks/index.d.ts +0 -4
  567. package/lib/typescript/src/values/hooks/useClockValue.d.ts +0 -9
  568. package/lib/typescript/src/values/hooks/useComputedValue.d.ts +0 -11
  569. package/lib/typescript/src/values/hooks/useValue.d.ts +0 -10
  570. package/lib/typescript/src/values/hooks/useValueEffect.d.ts +0 -10
  571. package/lib/typescript/src/values/index.d.ts +0 -4
  572. package/lib/typescript/src/values/selector.d.ts +0 -14
  573. package/lib/typescript/src/values/types.d.ts +0 -63
  574. package/lib/typescript/src/values/web/RNSkAnimation.d.ts +0 -9
  575. package/lib/typescript/src/values/web/RNSkClockValue.d.ts +0 -13
  576. package/lib/typescript/src/values/web/RNSkComputedValue.d.ts +0 -10
  577. package/lib/typescript/src/values/web/RNSkReadonlyValue.d.ts +0 -12
  578. package/lib/typescript/src/values/web/RNSkValue.d.ts +0 -14
  579. package/lib/typescript/src/values/web/api.d.ts +0 -2
  580. package/lib/typescript/src/values/web/index.d.ts +0 -1
  581. package/lib/typescript/src/views/SkiaView.d.ts +0 -35
  582. package/lib/typescript/src/views/SkiaView.web.d.ts +0 -7
  583. package/lib/typescript/src/views/useDrawCallback.d.ts +0 -8
  584. package/src/animation/decay/decay.ts +0 -35
  585. package/src/animation/decay/index.ts +0 -1
  586. package/src/animation/decay/runDecay.ts +0 -40
  587. package/src/animation/decay/types.ts +0 -24
  588. package/src/animation/spring/Spring.ts +0 -61
  589. package/src/animation/spring/functions/index.ts +0 -1
  590. package/src/animation/spring/functions/spring.ts +0 -86
  591. package/src/animation/spring/index.ts +0 -3
  592. package/src/animation/spring/runSpring.ts +0 -40
  593. package/src/animation/spring/types.ts +0 -6
  594. package/src/animation/spring/useSpring.ts +0 -31
  595. package/src/animation/timing/Easing.ts +0 -102
  596. package/src/animation/timing/createTiming.ts +0 -62
  597. package/src/animation/timing/functions/bezier.ts +0 -165
  598. package/src/animation/timing/functions/getResolvedParams.ts +0 -50
  599. package/src/animation/timing/functions/index.ts +0 -4
  600. package/src/animation/timing/functions/timing.ts +0 -44
  601. package/src/animation/timing/functions/types.ts +0 -8
  602. package/src/animation/timing/index.ts +0 -4
  603. package/src/animation/timing/runTiming.ts +0 -36
  604. package/src/animation/timing/useLoop.ts +0 -21
  605. package/src/animation/timing/useTiming.ts +0 -71
  606. package/src/dom/nodes/drawings/CustomDrawingNode.ts +0 -21
  607. package/src/renderer/DependencyManager.tsx +0 -196
  608. package/src/renderer/components/Drawing.tsx +0 -12
  609. package/src/specs/SkiaDrawViewNativeComponent.ts +0 -10
  610. package/src/values/api.ts +0 -61
  611. package/src/values/api.web.ts +0 -5
  612. package/src/values/hooks/index.ts +0 -4
  613. package/src/values/hooks/useClockValue.ts +0 -21
  614. package/src/values/hooks/useComputedValue.ts +0 -24
  615. package/src/values/hooks/useValue.ts +0 -17
  616. package/src/values/hooks/useValueEffect.ts +0 -18
  617. package/src/values/index.ts +0 -4
  618. package/src/values/selector.ts +0 -24
  619. package/src/values/types.ts +0 -73
  620. package/src/values/web/RNSkAnimation.ts +0 -33
  621. package/src/values/web/RNSkClockValue.ts +0 -58
  622. package/src/values/web/RNSkComputedValue.ts +0 -49
  623. package/src/values/web/RNSkReadonlyValue.ts +0 -38
  624. package/src/values/web/RNSkValue.ts +0 -57
  625. package/src/values/web/api.ts +0 -33
  626. package/src/values/web/index.ts +0 -1
  627. package/src/views/SkiaView.tsx +0 -111
  628. package/src/views/SkiaView.web.tsx +0 -22
  629. package/src/views/useDrawCallback.ts +0 -19
@@ -1,140 +0,0 @@
1
-
2
- #pragma once
3
-
4
- #include "RNSkPlatformContext.h"
5
- #include "RNSkReadonlyValue.h"
6
- #include <jsi/jsi.h>
7
-
8
- #include <algorithm>
9
- #include <chrono>
10
- #include <functional>
11
- #include <memory>
12
-
13
- namespace RNSkia {
14
- namespace jsi = facebook::jsi;
15
- /**
16
- Implements a readonly Value that is updated every time the screen is redrawn.
17
- Its value will be the number of milliseconds since the animation value was
18
- started.
19
- */
20
- class RNSkClockValue : public RNSkReadonlyValue {
21
- enum RNSkClockState { NotStarted = 0, Running = 1, Stopped = 2 };
22
-
23
- public:
24
- RNSkClockValue(std::shared_ptr<RNSkPlatformContext> platformContext,
25
- size_t identifier, jsi::Runtime &runtime,
26
- const jsi::Value *arguments, size_t count)
27
- : RNSkReadonlyValue(platformContext), _runtime(runtime),
28
- _identifier(identifier) {
29
- // Start by updating to zero (start value)
30
- update(_runtime, static_cast<double>(0));
31
- }
32
-
33
- virtual ~RNSkClockValue() { stopClock(); }
34
-
35
- JSI_HOST_FUNCTION(start) {
36
- startClock();
37
- return jsi::Value::undefined();
38
- }
39
-
40
- JSI_HOST_FUNCTION(stop) {
41
- stopClock();
42
- return jsi::Value::undefined();
43
- }
44
-
45
- JSI_EXPORT_FUNCTIONS(JSI_EXPORT_FUNC(RNSkReadonlyValue, addListener),
46
- JSI_EXPORT_FUNC(RNSkClockValue, start),
47
- JSI_EXPORT_FUNC(RNSkClockValue, stop))
48
-
49
- virtual void startClock() {
50
- if (_state == RNSkClockState::Running) {
51
- return;
52
- }
53
-
54
- auto now = std::chrono::high_resolution_clock::now();
55
- if (_state == RNSkClockState::NotStarted) {
56
- _start = now;
57
- _stop = now;
58
- }
59
-
60
- // Subtract pause time from start
61
- auto timeSinceStop = now - _stop;
62
- _start += timeSinceStop;
63
-
64
- _state = RNSkClockState::Running;
65
-
66
- getContext()->beginDrawLoop(
67
- _identifier, [weakSelf = weak_from_this()](bool invalidated) {
68
- auto self = weakSelf.lock();
69
- if (self) {
70
- std::dynamic_pointer_cast<RNSkClockValue>(self)->notifyUpdate(
71
- invalidated);
72
- }
73
- });
74
- }
75
-
76
- virtual void stopClock() {
77
- if (_state == RNSkClockState::Running) {
78
- _state = RNSkClockState::Stopped;
79
- _stop = std::chrono::high_resolution_clock::now();
80
- getContext()->endDrawLoop(_identifier);
81
- }
82
- }
83
-
84
- protected:
85
- virtual void tick(jsi::Runtime &runtime, const jsi::Value &value) {
86
- RNSkClockValue::update(runtime, value);
87
- }
88
-
89
- void notifyUpdate(bool invalidated) {
90
- if (invalidated) {
91
- stopClock();
92
- return;
93
- }
94
-
95
- if (_state != RNSkClockState::Running) {
96
- return;
97
- }
98
-
99
- // Ensure we call any updates from the draw loop on the javascript thread
100
- getContext()->runOnJavascriptThread(
101
- // To ensure that this shared_ptr instance is not deallocated before we
102
- // are done running the update lambda we pass a shared from this to the
103
- // lambda scope.
104
- [weakSelf = weak_from_this()]() {
105
- auto self = weakSelf.lock();
106
- if (self) {
107
- auto selfClockValue =
108
- std::dynamic_pointer_cast<RNSkClockValue>(self);
109
- if (selfClockValue->getState() == RNSkClockState::Running) {
110
- auto now = std::chrono::high_resolution_clock::now();
111
- auto deltaFromStart =
112
- std::chrono::duration_cast<std::chrono::milliseconds>(
113
- now - selfClockValue->_start)
114
- .count();
115
- selfClockValue->tick(selfClockValue->_runtime,
116
- static_cast<double>(deltaFromStart));
117
- }
118
- }
119
- });
120
- }
121
-
122
- /**
123
- Returns the draw identifier for the clock. This identifier is used
124
- for the draw loop.
125
- */
126
- size_t getIdentifier() { return _identifier; }
127
-
128
- /**
129
- Returns the state of the clock
130
- */
131
- RNSkClockState getState() { return _state; }
132
-
133
- jsi::Runtime &_runtime;
134
- size_t _identifier;
135
- std::chrono::time_point<std::chrono::steady_clock> _start;
136
- std::chrono::time_point<std::chrono::steady_clock> _stop;
137
- std::atomic<RNSkClockState> _state = {RNSkClockState::NotStarted};
138
- };
139
-
140
- } // namespace RNSkia
@@ -1,104 +0,0 @@
1
-
2
- #pragma once
3
-
4
- #include "RNSkPlatformContext.h"
5
- #include "RNSkReadonlyValue.h"
6
- #include <jsi/jsi.h>
7
-
8
- #include <algorithm>
9
- #include <chrono>
10
- #include <functional>
11
- #include <memory>
12
- #include <vector>
13
-
14
- namespace RNSkia {
15
- namespace jsi = facebook::jsi;
16
-
17
- /**
18
- Creates a readonly value that depends on one or more other values. The derived
19
- value has a callback function that is used to calculate the new value when any
20
- of the dependencies change.
21
- */
22
- class RNSkComputedValue : public RNSkReadonlyValue {
23
- public:
24
- RNSkComputedValue(std::shared_ptr<RNSkPlatformContext> platformContext,
25
- jsi::Runtime &runtime, const jsi::Value *arguments,
26
- size_t count)
27
- : RNSkReadonlyValue(platformContext) {
28
- // Verify input
29
- if (!arguments[0].isObject() ||
30
- !arguments[0].asObject(runtime).isFunction(runtime)) {
31
- throw jsi::JSError(runtime,
32
- "Expected callback function as first parameter");
33
- }
34
-
35
- if (!arguments[1].isObject() ||
36
- !arguments[1].asObject(runtime).isArray(runtime)) {
37
- throw jsi::JSError(runtime,
38
- "Expected array of dependencies as second parameter");
39
- }
40
-
41
- // Get callback for calculating result
42
- _callback = std::make_shared<jsi::Function>(
43
- arguments[0].asObject(runtime).asFunction(runtime));
44
- }
45
-
46
- void invalidate() override {
47
- RNSkReadonlyValue::invalidate();
48
-
49
- // Unregister listeners
50
- for (const auto &unsubscribe : _unsubscribers) {
51
- unsubscribe();
52
- }
53
- _unsubscribers.clear();
54
- }
55
-
56
- void initializeDependencies(jsi::Runtime &runtime,
57
- const jsi::Value *arguments, size_t count) {
58
- // Save dependencies
59
- std::vector<std::shared_ptr<RNSkReadonlyValue>> dependencies;
60
-
61
- // Ensure that all dependencies are Values
62
- auto deps = arguments[1].asObject(runtime).asArray(runtime);
63
- const std::size_t size = deps.size(runtime);
64
- dependencies.reserve(size);
65
- for (size_t i = 0; i < size; ++i) {
66
- auto dep = deps.getValueAtIndex(runtime, i);
67
- if (!dep.isObject() || !dep.asObject(runtime).isHostObject(runtime)) {
68
- continue;
69
- }
70
- auto value =
71
- dep.asObject(runtime).asHostObject<RNSkReadonlyValue>(runtime);
72
- if (value == nullptr) {
73
- continue;
74
- }
75
- dependencies.push_back(value);
76
- }
77
-
78
- // register change handler on dependencies
79
- _unsubscribers.reserve(_unsubscribers.size() + size);
80
- for (const auto &dep : dependencies) {
81
- _unsubscribers.push_back(dep->addListener([weakSelf = weak_from_this()](
82
- jsi::Runtime &runtime) {
83
- auto self = weakSelf.lock();
84
- if (self) {
85
- auto selfAsThis = std::dynamic_pointer_cast<RNSkComputedValue>(self);
86
- selfAsThis->dependencyUpdated(runtime);
87
- }
88
- }));
89
- }
90
-
91
- // Set initial value
92
- dependencyUpdated(runtime);
93
- }
94
-
95
- private:
96
- void dependencyUpdated(jsi::Runtime &runtime) {
97
- // Calculate new value
98
- update(runtime, _callback->call(runtime, nullptr, 0));
99
- }
100
-
101
- std::shared_ptr<jsi::Function> _callback;
102
- std::vector<std::function<void()>> _unsubscribers;
103
- };
104
- } // namespace RNSkia
@@ -1,166 +0,0 @@
1
-
2
- #pragma once
3
-
4
- #include <algorithm>
5
- #include <chrono>
6
- #include <functional>
7
- #include <memory>
8
- #include <unordered_map>
9
- #include <utility>
10
-
11
- #include <jsi/jsi.h>
12
-
13
- #include "JsiSkHostObjects.h"
14
- #include "JsiValue.h"
15
- #include "RNSkPlatformContext.h"
16
-
17
- namespace RNSkia {
18
- namespace jsi = facebook::jsi;
19
-
20
- /**
21
- Implements a readonly Value that is updated every time the screen is redrawn.
22
- Its value will be the number of milliseconds since the animation value was
23
- started.
24
- */
25
- class RNSkReadonlyValue
26
- : public JsiSkHostObject,
27
- public std::enable_shared_from_this<RNSkReadonlyValue> {
28
- public:
29
- explicit RNSkReadonlyValue(
30
- std::shared_ptr<RNSkPlatformContext> platformContext)
31
- : JsiSkHostObject(platformContext),
32
- _valueHolder(std::make_shared<RNJsi::JsiValue>()) {}
33
-
34
- virtual ~RNSkReadonlyValue() { invalidate(); }
35
-
36
- JSI_PROPERTY_GET(__typename__) {
37
- return jsi::String::createFromUtf8(runtime, "RNSkValue");
38
- }
39
-
40
- JSI_PROPERTY_GET(current) { return getCurrent(runtime); }
41
-
42
- JSI_EXPORT_PROPERTY_GETTERS(JSI_EXPORT_PROP_GET(RNSkReadonlyValue,
43
- __typename__),
44
- JSI_EXPORT_PROP_GET(RNSkReadonlyValue, current))
45
-
46
- JSI_HOST_FUNCTION(addListener) {
47
- if (!arguments[0].isObject() ||
48
- !arguments[0].asObject(runtime).isFunction(runtime)) {
49
- throw jsi::JSError(runtime, "Expected function as first parameter.");
50
- return jsi::Value::undefined();
51
- }
52
- auto callback = std::make_shared<jsi::Function>(
53
- arguments[0].asObject(runtime).asFunction(runtime));
54
-
55
- auto unsubscribe =
56
- addListener([weakSelf = weak_from_this(),
57
- callback = std::move(callback)](jsi::Runtime &runtime) {
58
- auto self = weakSelf.lock();
59
- if (self) {
60
- auto selfReadonlyValue =
61
- std::dynamic_pointer_cast<RNSkReadonlyValue>(self);
62
- callback->call(runtime, selfReadonlyValue->get_current(runtime));
63
- }
64
- });
65
-
66
- return jsi::Function::createFromHostFunction(
67
- runtime, jsi::PropNameID::forUtf8(runtime, "unsubscribe"), 0,
68
- JSI_HOST_FUNCTION_LAMBDA {
69
- unsubscribe();
70
- return jsi::Value::undefined();
71
- });
72
- }
73
-
74
- JSI_HOST_FUNCTION(dispose) {
75
- invalidate();
76
- return jsi::Value::undefined();
77
- }
78
-
79
- JSI_EXPORT_FUNCTIONS(JSI_EXPORT_FUNC(RNSkReadonlyValue, addListener),
80
- JSI_EXPORT_FUNC(RNSkReadonlyValue, dispose))
81
-
82
- /**
83
- * Adds a callback that will be called whenever the value changes
84
- * @param cb Callback
85
- * @return unsubscribe function
86
- */
87
- const std::function<void()>
88
- addListener(const std::function<void(jsi::Runtime &)> cb) {
89
- std::lock_guard<std::mutex> lock(_mutex);
90
- auto listenerId = _listenerId++;
91
- _listeners.emplace(listenerId, cb);
92
- return [weakSelf = weak_from_this(), listenerId]() {
93
- auto self = weakSelf.lock();
94
- if (self) {
95
- self->removeListener(listenerId);
96
- }
97
- };
98
- }
99
-
100
- /**
101
- Updates the underlying value and notifies all listeners about the change.
102
- Listeners are only notified if the value was actually changed for numeric,
103
- boolean and string values. For all other values listeners are notified
104
- without comparison.
105
- @param runtime Current JS Runtime
106
- @param value Next value
107
- */
108
- virtual void update(jsi::Runtime &runtime, const jsi::Value &value) {
109
- auto equal = _valueHolder->operator==(RNJsi::JsiValue(runtime, value));
110
- if (!equal) {
111
- _valueHolder->setCurrent(runtime, value);
112
- notifyListeners(runtime);
113
- }
114
- }
115
-
116
- /**
117
- Override to implement invalidation logic for the value. In the base class
118
- this function clears all subscribers.
119
- */
120
- virtual void invalidate() {
121
- std::lock_guard<std::mutex> lock(_mutex);
122
- _listeners.clear();
123
- }
124
-
125
- /**
126
- Returns the current value as a jsi::Value
127
- */
128
- jsi::Value getCurrent(jsi::Runtime &runtime) {
129
- return _valueHolder->getAsJsiValue(runtime);
130
- }
131
-
132
- /**
133
- Returns the underlying current value wrapper. This can be used to query the
134
- holder for data type and get pointers to elements in the holder.
135
- */
136
- std::shared_ptr<RNJsi::JsiValue> getCurrent() { return _valueHolder; }
137
-
138
- protected:
139
- /**
140
- Notifies listeners about changes
141
- @param runtime Current JS Runtime
142
- */
143
- void notifyListeners(jsi::Runtime &runtime) {
144
- std::lock_guard<std::mutex> lock(_mutex);
145
- for (const auto &listener : _listeners) {
146
- listener.second(runtime);
147
- }
148
- }
149
-
150
- /**
151
- Removes a subscription listeners
152
- @param listenerId identifier of listener to remove
153
- */
154
- void removeListener(long listenerId) {
155
- std::lock_guard<std::mutex> lock(_mutex);
156
- _listeners.erase(listenerId);
157
- }
158
-
159
- private:
160
- std::shared_ptr<RNJsi::JsiValue> _valueHolder;
161
-
162
- long _listenerId = 0;
163
- std::unordered_map<long, std::function<void(jsi::Runtime &)>> _listeners;
164
- std::mutex _mutex;
165
- };
166
- } // namespace RNSkia
@@ -1,116 +0,0 @@
1
- #pragma once
2
-
3
- #include <functional>
4
- #include <memory>
5
-
6
- #include "JsiHostObject.h"
7
- #include "RNSkAnimation.h"
8
- #include "RNSkPlatformContext.h"
9
- #include "RNSkReadonlyValue.h"
10
- #include <jsi/jsi.h>
11
-
12
- namespace RNSkia {
13
- namespace jsi = facebook::jsi;
14
- /**
15
- Implements a Value that can be both read and written to. It inherits from the
16
- ReadonlyValue with functionailty for subscribing to changes.
17
- */
18
- class RNSkValue : public RNSkReadonlyValue {
19
- public:
20
- RNSkValue(std::shared_ptr<RNSkPlatformContext> platformContext,
21
- jsi::Runtime &runtime, const jsi::Value *arguments, size_t count)
22
- : RNSkReadonlyValue(platformContext) {
23
- if (count == 1) {
24
- update(runtime, arguments[0]);
25
- }
26
- }
27
-
28
- ~RNSkValue() { unsubscribe(); }
29
-
30
- JSI_PROPERTY_SET(current) {
31
- // When someone else is setting the value we need to stop any ongoing
32
- // animations
33
- unsubscribe();
34
- update(runtime, value);
35
- }
36
-
37
- JSI_PROPERTY_SET(animation) {
38
- // Cancel existing animation
39
- unsubscribe();
40
-
41
- // Verify input
42
- if (value.isObject() &&
43
- value.asObject(runtime).isHostObject<RNSkAnimation>(runtime)) {
44
- auto animation =
45
- value.asObject(runtime).getHostObject<RNSkAnimation>(runtime);
46
- if (animation != nullptr) {
47
- // Now we have a value animation - let us connect and start
48
- subscribe(animation);
49
- }
50
- } else if (value.isUndefined() || value.isNull()) {
51
- // Do nothing - we've already unsubscribed
52
- } else {
53
- throw jsi::JSError(runtime, "Animation expected.");
54
- }
55
- }
56
-
57
- JSI_PROPERTY_GET(animation) {
58
- if (_animation != nullptr) {
59
- return jsi::Object::createFromHostObject(runtime, _animation);
60
- }
61
- return jsi::Value::undefined();
62
- }
63
-
64
- JSI_EXPORT_PROPERTY_SETTERS(JSI_EXPORT_PROP_SET(RNSkValue, current),
65
- JSI_EXPORT_PROP_SET(RNSkValue, animation))
66
-
67
- JSI_EXPORT_PROPERTY_GETTERS(JSI_EXPORT_PROP_GET(RNSkReadonlyValue,
68
- __typename__),
69
- JSI_EXPORT_PROP_GET(RNSkValue, current),
70
- JSI_EXPORT_PROP_GET(RNSkValue, animation))
71
-
72
- JSI_EXPORT_FUNCTIONS(JSI_EXPORT_FUNC(RNSkValue, addListener),
73
- JSI_EXPORT_FUNC(RNSkReadonlyValue, dispose))
74
-
75
- private:
76
- void subscribe(std::shared_ptr<RNSkAnimation> animation) {
77
- if (animation != nullptr) {
78
- _animation = animation;
79
- _unsubscribe =
80
- std::make_shared<std::function<void()>>(_animation->addListener(
81
- [weakSelf = weak_from_this()](jsi::Runtime &runtime) {
82
- auto self = weakSelf.lock();
83
- if (self) {
84
- auto selfAsThis = std::dynamic_pointer_cast<RNSkValue>(self);
85
- selfAsThis->animationDidUpdate(runtime);
86
- }
87
- }));
88
- // Start the animation
89
- _animation->startClock();
90
- }
91
- }
92
-
93
- void animationDidUpdate(jsi::Runtime &runtime) {
94
- if (_animation != nullptr) {
95
- // Update ourselves from the current animation value
96
- update(runtime, _animation->get_current(runtime));
97
- }
98
- }
99
-
100
- void unsubscribe() {
101
- if (_unsubscribe != nullptr) {
102
- (*_unsubscribe)();
103
- _unsubscribe = nullptr;
104
- }
105
-
106
- if (_animation != nullptr) {
107
- _animation->stopClock();
108
- _animation = nullptr;
109
- }
110
- }
111
-
112
- std::shared_ptr<RNSkAnimation> _animation;
113
- std::shared_ptr<std::function<void()>> _unsubscribe;
114
- };
115
-
116
- } // namespace RNSkia
@@ -1,7 +0,0 @@
1
- #ifdef RCT_NEW_ARCH_ENABLED
2
- #import "SkiaUIView.h"
3
-
4
- @interface SkiaDrawView : SkiaUIView
5
-
6
- @end
7
- #endif // RCT_NEW_ARCH_ENABLED
@@ -1,72 +0,0 @@
1
- #ifdef RCT_NEW_ARCH_ENABLED
2
- #import <SkiaDrawView.h>
3
-
4
- #import <RNSkDomView.h>
5
- #import <RNSkIOSView.h>
6
- #import <RNSkPlatformContext.h>
7
-
8
- #import <RNSkJsView.h>
9
- #import <SkiaUIView.h>
10
-
11
- #import <React/RCTBridge+Private.h>
12
- #import <React/RCTConversions.h>
13
- #import <React/RCTFabricComponentsPlugins.h>
14
-
15
- #import <react/renderer/components/rnskia/ComponentDescriptors.h>
16
- #import <react/renderer/components/rnskia/EventEmitters.h>
17
- #import <react/renderer/components/rnskia/Props.h>
18
- #import <react/renderer/components/rnskia/RCTComponentViewHelpers.h>
19
-
20
- using namespace facebook::react;
21
-
22
- @implementation SkiaDrawView
23
-
24
- - (instancetype)initWithFrame:(CGRect)frame {
25
- if (self = [super initWithFrame:frame]) {
26
- [self prepareView];
27
- static const auto defaultProps =
28
- std::make_shared<const SkiaDrawViewProps>();
29
- _props = defaultProps;
30
- }
31
- return self;
32
- }
33
-
34
- - (void)prepareView {
35
- auto skManager = [[self skiaManager] skManager];
36
- // Pass SkManager as a raw pointer to avoid circular dependenciesr
37
- [self initCommon:skManager.get()
38
- factory:[](std::shared_ptr<RNSkia::RNSkPlatformContext> context) {
39
- return std::make_shared<RNSkiOSView<RNSkia::RNSkJsView>>(context);
40
- }];
41
- }
42
-
43
- - (void)prepareForRecycle {
44
- [super prepareForRecycle];
45
- [self prepareView];
46
- }
47
-
48
- #pragma mark - RCTComponentViewProtocol
49
-
50
- + (ComponentDescriptorProvider)componentDescriptorProvider {
51
- return concreteComponentDescriptorProvider<SkiaDrawViewComponentDescriptor>();
52
- }
53
-
54
- - (void)updateProps:(const Props::Shared &)props
55
- oldProps:(const Props::Shared &)oldProps {
56
- const auto &newProps =
57
- *std::static_pointer_cast<const SkiaDrawViewProps>(props);
58
- [super updateProps:props oldProps:oldProps];
59
- int nativeId =
60
- [[RCTConvert NSString:RCTNSStringFromString(newProps.nativeId)] intValue];
61
- [self setNativeId:nativeId];
62
- [self setDrawingMode:newProps.mode];
63
- [self setDebugMode:newProps.debug];
64
- }
65
-
66
- @end
67
-
68
- Class<RCTComponentViewProtocol> SkiaDrawViewCls(void) {
69
- return SkiaDrawView.class;
70
- }
71
-
72
- #endif // RCT_NEW_ARCH_ENABLED
@@ -1,7 +0,0 @@
1
- #pragma once
2
-
3
- #import <React/RCTViewManager.h>
4
-
5
- @interface SkiaDrawViewManager : RCTViewManager
6
-
7
- @end
@@ -1,50 +0,0 @@
1
- #include "SkiaDrawViewManager.h"
2
- #include <React/RCTBridge+Private.h>
3
-
4
- #include <RNSkIOSView.h>
5
- #include <RNSkJsView.h>
6
- #include <RNSkPlatformContext.h>
7
-
8
- #include "SkiaManager.h"
9
- #include "SkiaUIView.h"
10
- #include <RNSkiaModule.h>
11
-
12
- @implementation SkiaDrawViewManager
13
-
14
- RCT_EXPORT_MODULE(SkiaDrawView)
15
-
16
- - (SkiaManager *)skiaManager {
17
- auto bridge = [RCTBridge currentBridge];
18
- auto skiaModule = (RNSkiaModule *)[bridge moduleForName:@"RNSkiaModule"];
19
- return [skiaModule manager];
20
- }
21
-
22
- RCT_CUSTOM_VIEW_PROPERTY(nativeID, NSNumber, SkiaUIView) {
23
- // Get parameter
24
- int nativeId = [[RCTConvert NSString:json] intValue];
25
- [(SkiaUIView *)view setNativeId:nativeId];
26
- }
27
-
28
- RCT_CUSTOM_VIEW_PROPERTY(mode, NSString, SkiaUIView) {
29
- std::string mode =
30
- json != NULL ? [[RCTConvert NSString:json] UTF8String] : "default";
31
- [(SkiaUIView *)view setDrawingMode:mode];
32
- }
33
-
34
- RCT_CUSTOM_VIEW_PROPERTY(debug, BOOL, SkiaUIView) {
35
- bool debug = json != NULL ? [RCTConvert BOOL:json] : false;
36
- [(SkiaUIView *)view setDebugMode:debug];
37
- }
38
-
39
- - (UIView *)view {
40
- auto skManager = [[self skiaManager] skManager];
41
- // Pass SkManager as a raw pointer to avoid circular dependenciesr
42
- return [[SkiaUIView alloc]
43
- initWithManager:skManager.get()
44
- factory:[](std::shared_ptr<RNSkia::RNSkPlatformContext> context) {
45
- return std::make_shared<RNSkiOSView<RNSkia::RNSkJsView>>(
46
- context);
47
- }];
48
- }
49
-
50
- @end
@@ -1,2 +0,0 @@
1
- import type { DecayState, DefaultDecayConfig } from "./types";
2
- export declare const decay: (now: number, state: DecayState, config: DefaultDecayConfig) => DecayState;