@shopify/react-native-skia 0.1.234 → 0.1.236

Sign up to get free protection for your applications and to get access to all the features.
Files changed (262) hide show
  1. package/cpp/api/JsiSkTypefaceFactory.h +2 -1
  2. package/cpp/skia/include/android/AHardwareBufferUtils.h +23 -0
  3. package/cpp/skia/include/android/GrAHardwareBufferUtils.h +2 -0
  4. package/cpp/skia/include/android/graphite/SurfaceAndroid.h +59 -0
  5. package/cpp/skia/include/codec/SkAvifDecoder.h +1 -1
  6. package/cpp/skia/include/codec/SkBmpDecoder.h +1 -1
  7. package/cpp/skia/include/codec/SkCodec.h +21 -3
  8. package/cpp/skia/include/codec/SkGifDecoder.h +1 -1
  9. package/cpp/skia/include/codec/SkIcoDecoder.h +1 -1
  10. package/cpp/skia/include/codec/SkJpegDecoder.h +1 -1
  11. package/cpp/skia/include/codec/SkJpegxlDecoder.h +1 -1
  12. package/cpp/skia/include/codec/SkPngDecoder.h +1 -1
  13. package/cpp/skia/include/codec/SkRawDecoder.h +1 -1
  14. package/cpp/skia/include/codec/SkWbmpDecoder.h +1 -1
  15. package/cpp/skia/include/codec/SkWebpDecoder.h +1 -1
  16. package/cpp/skia/include/config/SkUserConfig.h +3 -1
  17. package/cpp/skia/include/core/SkCanvas.h +66 -37
  18. package/cpp/skia/include/core/SkColorFilter.h +5 -2
  19. package/cpp/skia/include/core/SkContourMeasure.h +1 -0
  20. package/cpp/skia/include/core/SkDocument.h +1 -0
  21. package/cpp/skia/include/core/SkFont.h +14 -24
  22. package/cpp/skia/include/core/SkFontArguments.h +1 -1
  23. package/cpp/skia/include/core/SkFontMetrics.h +1 -1
  24. package/cpp/skia/include/core/SkFontMgr.h +0 -7
  25. package/cpp/skia/include/core/SkGraphics.h +13 -0
  26. package/cpp/skia/include/core/SkMesh.h +9 -13
  27. package/cpp/skia/include/core/SkMilestone.h +1 -1
  28. package/cpp/skia/include/core/SkPathMeasure.h +2 -0
  29. package/cpp/skia/include/core/SkSerialProcs.h +29 -11
  30. package/cpp/skia/include/core/SkSize.h +3 -3
  31. package/cpp/skia/include/core/SkStream.h +3 -13
  32. package/cpp/skia/include/core/SkSurface.h +6 -3
  33. package/cpp/skia/include/core/SkSurfaceProps.h +2 -4
  34. package/cpp/skia/include/core/SkTraceMemoryDump.h +15 -0
  35. package/cpp/skia/include/core/SkTypeface.h +8 -56
  36. package/cpp/skia/include/core/SkTypes.h +8 -0
  37. package/cpp/skia/include/core/SkVertices.h +1 -1
  38. package/cpp/skia/include/docs/SkMultiPictureDocument.h +53 -0
  39. package/cpp/skia/include/docs/SkPDFDocument.h +11 -0
  40. package/cpp/skia/include/effects/SkGradientShader.h +9 -0
  41. package/cpp/skia/include/effects/SkRuntimeEffect.h +3 -7
  42. package/cpp/skia/include/gpu/GrBackendSemaphore.h +33 -47
  43. package/cpp/skia/include/gpu/GrBackendSurface.h +2 -3
  44. package/cpp/skia/include/gpu/GrContextOptions.h +0 -6
  45. package/cpp/skia/include/gpu/GrContextThreadSafeProxy.h +44 -28
  46. package/cpp/skia/include/gpu/GrDirectContext.h +12 -31
  47. package/cpp/skia/include/gpu/GrTypes.h +1 -16
  48. package/cpp/skia/include/gpu/MutableTextureState.h +35 -80
  49. package/cpp/skia/include/gpu/ShaderErrorHandler.h +11 -1
  50. package/cpp/skia/include/gpu/ganesh/SkImageGanesh.h +2 -2
  51. package/cpp/skia/include/gpu/ganesh/SkSurfaceGanesh.h +1 -1
  52. package/cpp/skia/include/gpu/ganesh/gl/GrGLDirectContext.h +3 -2
  53. package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSemaphore.h +20 -0
  54. package/cpp/skia/include/gpu/ganesh/vk/GrVkDirectContext.h +30 -0
  55. package/cpp/skia/include/gpu/gl/GrGLFunctions.h +1 -1
  56. package/cpp/skia/include/gpu/gl/GrGLInterface.h +2 -0
  57. package/cpp/skia/include/gpu/gl/glx/GrGLMakeGLXInterface.h +6 -0
  58. package/cpp/skia/include/gpu/graphite/BackendSemaphore.h +3 -3
  59. package/cpp/skia/include/gpu/graphite/BackendTexture.h +39 -27
  60. package/cpp/skia/include/gpu/graphite/Context.h +39 -13
  61. package/cpp/skia/include/gpu/graphite/ContextOptions.h +2 -0
  62. package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +2 -1
  63. package/cpp/skia/include/gpu/graphite/Image.h +106 -87
  64. package/cpp/skia/include/gpu/graphite/Recorder.h +24 -3
  65. package/cpp/skia/include/gpu/graphite/Surface.h +7 -2
  66. package/cpp/skia/include/gpu/graphite/dawn/DawnBackendContext.h +41 -2
  67. package/cpp/skia/include/gpu/graphite/dawn/DawnTypes.h +11 -6
  68. package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteTypes.h +1 -2
  69. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteTypes.h +6 -6
  70. package/cpp/skia/include/gpu/mock/GrMockTypes.h +1 -0
  71. package/cpp/skia/include/gpu/vk/GrVkBackendContext.h +1 -1
  72. package/cpp/skia/include/gpu/vk/GrVkTypes.h +1 -44
  73. package/cpp/skia/include/gpu/vk/VulkanExtensions.h +1 -1
  74. package/cpp/skia/include/gpu/vk/VulkanMutableTextureState.h +25 -0
  75. package/cpp/skia/include/gpu/vk/VulkanTypes.h +44 -0
  76. package/cpp/skia/include/ports/SkFontConfigInterface.h +3 -6
  77. package/cpp/skia/include/private/SkEncodedInfo.h +5 -0
  78. package/cpp/skia/include/private/SkExif.h +102 -0
  79. package/cpp/skia/include/private/SkGainmapInfo.h +11 -1
  80. package/cpp/skia/include/private/base/SkAssert.h +16 -0
  81. package/cpp/skia/include/private/base/SkDeque.h +2 -7
  82. package/cpp/skia/include/private/base/SkLoadUserConfig.h +1 -1
  83. package/cpp/skia/include/private/base/SkTArray.h +69 -28
  84. package/cpp/skia/include/private/base/SkThreadAnnotations.h +18 -5
  85. package/cpp/skia/include/private/chromium/GrSurfaceCharacterization.h +26 -30
  86. package/cpp/skia/include/private/chromium/GrVkSecondaryCBDrawContext.h +4 -3
  87. package/cpp/skia/include/private/chromium/SkImageChromium.h +1 -1
  88. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +8 -6
  89. package/cpp/skia/include/private/gpu/graphite/ContextOptionsPriv.h +29 -0
  90. package/cpp/skia/include/private/gpu/graphite/DawnTypesPriv.h +12 -9
  91. package/cpp/skia/include/private/gpu/graphite/VulkanGraphiteTypesPriv.h +16 -11
  92. package/cpp/skia/include/third_party/vulkan/vulkan/vk_platform.h +2 -2
  93. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std.h +312 -0
  94. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std_decode.h +77 -0
  95. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std.h +446 -0
  96. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std_decode.h +67 -0
  97. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codecs_common.h +36 -0
  98. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan.h +9 -2
  99. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_android.h +31 -3
  100. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_core.h +10624 -5716
  101. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ios.h +2 -1
  102. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_macos.h +2 -1
  103. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_win32.h +28 -1
  104. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xcb.h +2 -1
  105. package/cpp/skia/include/utils/mac/SkCGUtils.h +23 -11
  106. package/cpp/skia/modules/skcms/skcms.h +2 -410
  107. package/cpp/skia/modules/skcms/src/Transform_inl.h +831 -704
  108. package/cpp/skia/modules/skcms/src/skcms_Transform.h +161 -0
  109. package/cpp/skia/modules/skcms/src/skcms_internals.h +136 -0
  110. package/cpp/skia/modules/skcms/src/skcms_public.h +404 -0
  111. package/cpp/skia/modules/skparagraph/include/FontArguments.h +1 -1
  112. package/cpp/skia/modules/skparagraph/include/FontCollection.h +2 -0
  113. package/cpp/skia/modules/skparagraph/include/Paragraph.h +2 -2
  114. package/cpp/skia/modules/skparagraph/include/TextStyle.h +4 -3
  115. package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +1 -3
  116. package/cpp/skia/modules/skresources/include/SkResources.h +28 -17
  117. package/cpp/skia/modules/skunicode/include/SkUnicode.h +12 -0
  118. package/cpp/skia/modules/svg/include/SkSVGDOM.h +4 -1
  119. package/cpp/skia/modules/svg/include/SkSVGRenderContext.h +4 -1
  120. package/cpp/skia/src/base/SkUTF.h +7 -0
  121. package/cpp/skia/src/core/SkTHash.h +20 -8
  122. package/lib/commonjs/dom/nodes/JsiSkDOM.d.ts +3 -2
  123. package/lib/commonjs/dom/nodes/JsiSkDOM.js +56 -57
  124. package/lib/commonjs/dom/nodes/JsiSkDOM.js.map +1 -1
  125. package/lib/commonjs/external/reanimated/index.d.ts +1 -0
  126. package/lib/commonjs/external/reanimated/index.js +13 -0
  127. package/lib/commonjs/external/reanimated/index.js.map +1 -1
  128. package/lib/commonjs/external/reanimated/interpolators.js +13 -1
  129. package/lib/commonjs/external/reanimated/interpolators.js.map +1 -1
  130. package/lib/commonjs/external/reanimated/moduleWrapper.d.ts +1 -0
  131. package/lib/commonjs/external/reanimated/moduleWrapper.js +5 -3
  132. package/lib/commonjs/external/reanimated/moduleWrapper.js.map +1 -1
  133. package/lib/commonjs/external/reanimated/textures.d.ts +5 -0
  134. package/lib/commonjs/external/reanimated/textures.js +52 -0
  135. package/lib/commonjs/external/reanimated/textures.js.map +1 -0
  136. package/lib/commonjs/headless/index.js +1 -1
  137. package/lib/commonjs/headless/index.js.map +1 -1
  138. package/lib/commonjs/mock/index.js +3 -0
  139. package/lib/commonjs/mock/index.js.map +1 -1
  140. package/lib/commonjs/renderer/Canvas.js +1 -1
  141. package/lib/commonjs/renderer/Canvas.js.map +1 -1
  142. package/lib/commonjs/renderer/Container.d.ts +1 -1
  143. package/lib/commonjs/renderer/Container.js +2 -1
  144. package/lib/commonjs/renderer/Container.js.map +1 -1
  145. package/lib/commonjs/renderer/Offscreen.d.ts +1 -0
  146. package/lib/commonjs/renderer/Offscreen.js +18 -5
  147. package/lib/commonjs/renderer/Offscreen.js.map +1 -1
  148. package/lib/commonjs/renderer/Reconciler.d.ts +1 -1
  149. package/lib/commonjs/renderer/Reconciler.js +7 -4
  150. package/lib/commonjs/renderer/Reconciler.js.map +1 -1
  151. package/lib/commonjs/skia/types/Matrix4.d.ts +2 -2
  152. package/lib/commonjs/skia/types/Matrix4.js.map +1 -1
  153. package/lib/commonjs/skia/types/Shader/Shader.d.ts +1 -1
  154. package/lib/commonjs/skia/types/Shader/Shader.js.map +1 -1
  155. package/lib/module/dom/nodes/JsiSkDOM.d.ts +3 -2
  156. package/lib/module/dom/nodes/JsiSkDOM.js +56 -56
  157. package/lib/module/dom/nodes/JsiSkDOM.js.map +1 -1
  158. package/lib/module/external/reanimated/index.d.ts +1 -0
  159. package/lib/module/external/reanimated/index.js +1 -0
  160. package/lib/module/external/reanimated/index.js.map +1 -1
  161. package/lib/module/external/reanimated/interpolators.js +13 -1
  162. package/lib/module/external/reanimated/interpolators.js.map +1 -1
  163. package/lib/module/external/reanimated/moduleWrapper.d.ts +1 -0
  164. package/lib/module/external/reanimated/moduleWrapper.js +3 -2
  165. package/lib/module/external/reanimated/moduleWrapper.js.map +1 -1
  166. package/lib/module/external/reanimated/textures.d.ts +5 -0
  167. package/lib/module/external/reanimated/textures.js +35 -0
  168. package/lib/module/external/reanimated/textures.js.map +1 -0
  169. package/lib/module/headless/index.js +1 -1
  170. package/lib/module/headless/index.js.map +1 -1
  171. package/lib/module/mock/index.js +3 -0
  172. package/lib/module/mock/index.js.map +1 -1
  173. package/lib/module/renderer/Canvas.js +1 -1
  174. package/lib/module/renderer/Canvas.js.map +1 -1
  175. package/lib/module/renderer/Container.d.ts +1 -1
  176. package/lib/module/renderer/Container.js +2 -1
  177. package/lib/module/renderer/Container.js.map +1 -1
  178. package/lib/module/renderer/Offscreen.d.ts +1 -0
  179. package/lib/module/renderer/Offscreen.js +11 -3
  180. package/lib/module/renderer/Offscreen.js.map +1 -1
  181. package/lib/module/renderer/Reconciler.d.ts +1 -1
  182. package/lib/module/renderer/Reconciler.js +7 -4
  183. package/lib/module/renderer/Reconciler.js.map +1 -1
  184. package/lib/module/skia/types/Matrix4.d.ts +2 -2
  185. package/lib/module/skia/types/Matrix4.js.map +1 -1
  186. package/lib/module/skia/types/Shader/Shader.d.ts +1 -1
  187. package/lib/module/skia/types/Shader/Shader.js.map +1 -1
  188. package/lib/typescript/src/dom/nodes/JsiSkDOM.d.ts +3 -2
  189. package/lib/typescript/src/external/reanimated/index.d.ts +1 -0
  190. package/lib/typescript/src/external/reanimated/moduleWrapper.d.ts +1 -0
  191. package/lib/typescript/src/external/reanimated/textures.d.ts +5 -0
  192. package/lib/typescript/src/renderer/Container.d.ts +1 -1
  193. package/lib/typescript/src/renderer/Offscreen.d.ts +1 -0
  194. package/lib/typescript/src/renderer/Reconciler.d.ts +1 -1
  195. package/lib/typescript/src/skia/types/Matrix4.d.ts +2 -2
  196. package/lib/typescript/src/skia/types/Shader/Shader.d.ts +1 -1
  197. package/libs/android/arm64-v8a/libskia.a +0 -0
  198. package/libs/android/arm64-v8a/libskottie.a +0 -0
  199. package/libs/android/arm64-v8a/libskparagraph.a +0 -0
  200. package/libs/android/arm64-v8a/libsksg.a +0 -0
  201. package/libs/android/arm64-v8a/libskshaper.a +0 -0
  202. package/libs/android/arm64-v8a/libskunicode.a +0 -0
  203. package/libs/android/arm64-v8a/libsvg.a +0 -0
  204. package/libs/android/armeabi-v7a/libskia.a +0 -0
  205. package/libs/android/armeabi-v7a/libskottie.a +0 -0
  206. package/libs/android/armeabi-v7a/libskparagraph.a +0 -0
  207. package/libs/android/armeabi-v7a/libsksg.a +0 -0
  208. package/libs/android/armeabi-v7a/libskshaper.a +0 -0
  209. package/libs/android/armeabi-v7a/libskunicode.a +0 -0
  210. package/libs/android/armeabi-v7a/libsvg.a +0 -0
  211. package/libs/android/x86/libskia.a +0 -0
  212. package/libs/android/x86/libskottie.a +0 -0
  213. package/libs/android/x86/libskparagraph.a +0 -0
  214. package/libs/android/x86/libsksg.a +0 -0
  215. package/libs/android/x86/libskshaper.a +0 -0
  216. package/libs/android/x86/libskunicode.a +0 -0
  217. package/libs/android/x86/libsvg.a +0 -0
  218. package/libs/android/x86_64/libskia.a +0 -0
  219. package/libs/android/x86_64/libskottie.a +0 -0
  220. package/libs/android/x86_64/libskparagraph.a +0 -0
  221. package/libs/android/x86_64/libsksg.a +0 -0
  222. package/libs/android/x86_64/libskshaper.a +0 -0
  223. package/libs/android/x86_64/libskunicode.a +0 -0
  224. package/libs/android/x86_64/libsvg.a +0 -0
  225. package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
  226. package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
  227. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
  228. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
  229. package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e/libskparagraph.a +0 -0
  230. package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
  231. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
  232. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
  233. package/libs/ios/libskshaper.xcframework/Info.plist +5 -5
  234. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
  235. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
  236. package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e/libskunicode.a +0 -0
  237. package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode.a +0 -0
  238. package/libs/ios/libsvg.xcframework/Info.plist +5 -5
  239. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
  240. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
  241. package/package.json +1 -1
  242. package/src/dom/nodes/JsiSkDOM.ts +55 -56
  243. package/src/external/reanimated/index.ts +1 -0
  244. package/src/external/reanimated/interpolators.ts +15 -2
  245. package/src/external/reanimated/moduleWrapper.ts +1 -0
  246. package/src/external/reanimated/textures.tsx +50 -0
  247. package/src/headless/index.ts +1 -1
  248. package/src/mock/index.ts +3 -0
  249. package/src/renderer/Canvas.tsx +1 -1
  250. package/src/renderer/Container.tsx +3 -2
  251. package/src/renderer/Offscreen.tsx +12 -3
  252. package/src/renderer/Reconciler.tsx +5 -2
  253. package/src/skia/types/Matrix4.ts +2 -2
  254. package/src/skia/types/Shader/Shader.ts +6 -1
  255. package/cpp/skia/include/gpu/GrSurfaceInfo.h +0 -142
  256. package/cpp/skia/include/private/gpu/ganesh/GrGLTypesPriv.h +0 -107
  257. package/cpp/skia/include/private/gpu/ganesh/GrMockTypesPriv.h +0 -32
  258. package/cpp/skia/include/private/gpu/ganesh/GrMtlTypesPriv.h +0 -83
  259. package/cpp/skia/include/private/gpu/ganesh/GrVkTypesPriv.h +0 -47
  260. package/cpp/skia/include/private/gpu/vk/VulkanTypesPriv.h +0 -57
  261. package/cpp/skia/include/utils/SkBase64.h +0 -53
  262. package/cpp/skia/modules/skcms/skcms_internal.h +0 -56
@@ -9,5 +9,6 @@ export declare const useFrameCallback: (callback: (frameInfo: FrameInfo) => void
9
9
  export declare const startMapper: (worklet: () => void, inputs?: unknown[], outputs?: unknown[]) => number;
10
10
  export declare const stopMapper: (mapperID: number) => void;
11
11
  export declare const runOnJS: any;
12
+ export declare const runOnUI: any;
12
13
  export declare const useAnimatedReaction: <T>(prepare: () => T, react: (v: T) => void, dependencies?: DependencyList) => void;
13
14
  export declare const isSharedValue: <T>(value: unknown) => value is SharedValue<T>;
@@ -0,0 +1,5 @@
1
+ import type { ReactElement } from "react";
2
+ import type { SharedValue } from "react-native-reanimated";
3
+ import type { SkImage, SkPicture, SkSize } from "../../skia/types";
4
+ export declare const useTextureValue: (element: ReactElement, size: SkSize) => SharedValue<SkImage | null>;
5
+ export declare const useTextureValueFromPicture: (picture: SkPicture, size: SkSize) => SharedValue<SkImage | null>;
@@ -5,7 +5,7 @@ export declare class Container {
5
5
  getNativeId: () => number;
6
6
  private _root;
7
7
  Sk: SkDOM;
8
- constructor(Skia: Skia, redraw?: () => void, getNativeId?: () => number);
8
+ constructor(Skia: Skia, redraw: () => void, getNativeId: () => number, native: boolean);
9
9
  draw(ctx: DrawingContext): void;
10
10
  get root(): RenderNode<GroupProps>;
11
11
  }
@@ -1,2 +1,3 @@
1
1
  import type { ReactElement } from "react";
2
2
  export declare const drawAsImage: (element: ReactElement, width: number, height: number) => import("../skia").SkImage;
3
+ export declare const drawAsPicture: (element: ReactElement) => import("../skia").SkPicture;
@@ -3,7 +3,7 @@ import type { Skia } from "../skia/types";
3
3
  export declare class SkiaRoot {
4
4
  private root;
5
5
  private container;
6
- constructor(Skia: Skia, redraw?: () => void, getNativeId?: () => number);
6
+ constructor(Skia: Skia, native?: boolean, redraw?: () => void, getNativeId?: () => number);
7
7
  render(element: ReactNode): void;
8
8
  unmount(): void;
9
9
  get dom(): import("..").RenderNode<import("..").GroupProps>;
@@ -95,9 +95,9 @@ export declare const processTransform3d: (transforms: Transforms3d) => Matrix4;
95
95
  /**
96
96
  * @worklet
97
97
  */
98
- export declare const convertToColumnMajor: (rowMajorMatrix: Matrix4) => number[];
98
+ export declare const convertToColumnMajor: (rowMajorMatrix: Matrix4) => Matrix4;
99
99
  /**
100
100
  * @worklet
101
101
  */
102
- export declare const convertToAffineMatrix: (m4: number[]) => number[];
102
+ export declare const convertToAffineMatrix: (m4: Matrix4) => number[];
103
103
  export {};
@@ -3,7 +3,7 @@ import type { Vector } from "../Point";
3
3
  import type { SkRuntimeEffect, SkRuntimeShaderBuilder } from "../RuntimeEffect";
4
4
  export declare const isShader: (obj: SkJSIInstance<string> | null) => obj is SkShader;
5
5
  export type SkShader = SkJSIInstance<"Shader">;
6
- export type Uniform = number | Vector | Float32Array | Uniform[];
6
+ export type Uniform = number | Vector | Float32Array | readonly Uniform[] | Uniform[];
7
7
  export interface Uniforms {
8
8
  [name: string]: Uniform;
9
9
  }
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -6,32 +6,32 @@
6
6
  <array>
7
7
  <dict>
8
8
  <key>LibraryIdentifier</key>
9
- <string>ios-arm64_arm64e</string>
9
+ <string>ios-arm64_arm64e_x86_64-simulator</string>
10
10
  <key>LibraryPath</key>
11
11
  <string>libskshaper.a</string>
12
12
  <key>SupportedArchitectures</key>
13
13
  <array>
14
14
  <string>arm64</string>
15
15
  <string>arm64e</string>
16
+ <string>x86_64</string>
16
17
  </array>
17
18
  <key>SupportedPlatform</key>
18
19
  <string>ios</string>
20
+ <key>SupportedPlatformVariant</key>
21
+ <string>simulator</string>
19
22
  </dict>
20
23
  <dict>
21
24
  <key>LibraryIdentifier</key>
22
- <string>ios-arm64_arm64e_x86_64-simulator</string>
25
+ <string>ios-arm64_arm64e</string>
23
26
  <key>LibraryPath</key>
24
27
  <string>libskshaper.a</string>
25
28
  <key>SupportedArchitectures</key>
26
29
  <array>
27
30
  <string>arm64</string>
28
31
  <string>arm64e</string>
29
- <string>x86_64</string>
30
32
  </array>
31
33
  <key>SupportedPlatform</key>
32
34
  <string>ios</string>
33
- <key>SupportedPlatformVariant</key>
34
- <string>simulator</string>
35
35
  </dict>
36
36
  </array>
37
37
  <key>CFBundlePackageType</key>
@@ -6,32 +6,32 @@
6
6
  <array>
7
7
  <dict>
8
8
  <key>LibraryIdentifier</key>
9
- <string>ios-arm64_arm64e</string>
9
+ <string>ios-arm64_arm64e_x86_64-simulator</string>
10
10
  <key>LibraryPath</key>
11
11
  <string>libsvg.a</string>
12
12
  <key>SupportedArchitectures</key>
13
13
  <array>
14
14
  <string>arm64</string>
15
15
  <string>arm64e</string>
16
+ <string>x86_64</string>
16
17
  </array>
17
18
  <key>SupportedPlatform</key>
18
19
  <string>ios</string>
20
+ <key>SupportedPlatformVariant</key>
21
+ <string>simulator</string>
19
22
  </dict>
20
23
  <dict>
21
24
  <key>LibraryIdentifier</key>
22
- <string>ios-arm64_arm64e_x86_64-simulator</string>
25
+ <string>ios-arm64_arm64e</string>
23
26
  <key>LibraryPath</key>
24
27
  <string>libsvg.a</string>
25
28
  <key>SupportedArchitectures</key>
26
29
  <array>
27
30
  <string>arm64</string>
28
31
  <string>arm64e</string>
29
- <string>x86_64</string>
30
32
  </array>
31
33
  <key>SupportedPlatform</key>
32
34
  <string>ios</string>
33
- <key>SupportedPlatformVariant</key>
34
- <string>simulator</string>
35
35
  </dict>
36
36
  </array>
37
37
  <key>CFBundlePackageType</key>
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "setup-skia-web": "./scripts/setup-canvaskit.js"
8
8
  },
9
9
  "title": "React Native Skia",
10
- "version": "0.1.234",
10
+ "version": "0.1.236",
11
11
  "description": "High-performance React Native Graphics using Skia",
12
12
  "main": "lib/module/index.js",
13
13
  "files": [
@@ -55,7 +55,6 @@ import type {
55
55
  Path1DPathEffectProps,
56
56
  Path2DPathEffectProps,
57
57
  } from "../types/PathEffects";
58
- import { NATIVE_DOM } from "../../renderer/HostComponents";
59
58
  import type { ParagraphProps } from "../types/Paragraph";
60
59
 
61
60
  import {
@@ -125,200 +124,200 @@ import { LayerNode } from "./LayerNode";
125
124
  import { ParagraphNode } from "./drawings/ParagraphNode";
126
125
 
127
126
  export class JsiSkDOM implements SkDOM {
128
- constructor(private ctx: NodeContext) {}
127
+ constructor(private ctx: NodeContext, private native: boolean) {}
129
128
 
130
129
  Layer(props?: ChildrenProps) {
131
- return NATIVE_DOM
130
+ return this.native
132
131
  ? global.SkiaDomApi.LayerNode(props ?? {})
133
132
  : new LayerNode(this.ctx, props ?? {});
134
133
  }
135
134
 
136
135
  Group(props?: GroupProps) {
137
- return NATIVE_DOM
136
+ return this.native
138
137
  ? global.SkiaDomApi.GroupNode(props ?? {})
139
138
  : new GroupNode(this.ctx, props ?? {});
140
139
  }
141
140
 
142
141
  Paint(props: PaintProps) {
143
- return NATIVE_DOM
142
+ return this.native
144
143
  ? global.SkiaDomApi.PaintNode(props ?? {})
145
144
  : new PaintNode(this.ctx, props);
146
145
  }
147
146
 
148
147
  // Drawings
149
148
  Fill(props?: DrawingNodeProps) {
150
- return NATIVE_DOM
149
+ return this.native
151
150
  ? global.SkiaDomApi.FillNode(props ?? {})
152
151
  : new FillNode(this.ctx, props);
153
152
  }
154
153
 
155
154
  Image(props: ImageProps) {
156
- return NATIVE_DOM
155
+ return this.native
157
156
  ? global.SkiaDomApi.ImageNode(props ?? {})
158
157
  : new ImageNode(this.ctx, props);
159
158
  }
160
159
 
161
160
  Circle(props: CircleProps) {
162
- return NATIVE_DOM
161
+ return this.native
163
162
  ? global.SkiaDomApi.CircleNode(props ?? {})
164
163
  : new CircleNode(this.ctx, props);
165
164
  }
166
165
 
167
166
  Path(props: PathProps) {
168
- return NATIVE_DOM
167
+ return this.native
169
168
  ? global.SkiaDomApi.PathNode(props ?? {})
170
169
  : new PathNode(this.ctx, props);
171
170
  }
172
171
 
173
172
  Line(props: LineProps) {
174
- return NATIVE_DOM
173
+ return this.native
175
174
  ? global.SkiaDomApi.LineNode(props ?? {})
176
175
  : new LineNode(this.ctx, props);
177
176
  }
178
177
 
179
178
  Oval(props: OvalProps) {
180
- return NATIVE_DOM
179
+ return this.native
181
180
  ? global.SkiaDomApi.OvalNode(props ?? {})
182
181
  : new OvalNode(this.ctx, props);
183
182
  }
184
183
 
185
184
  Patch(props: PatchProps) {
186
- return NATIVE_DOM
185
+ return this.native
187
186
  ? global.SkiaDomApi.PatchNode(props ?? {})
188
187
  : new PatchNode(this.ctx, props);
189
188
  }
190
189
 
191
190
  Points(props: PointsProps) {
192
- return NATIVE_DOM
191
+ return this.native
193
192
  ? global.SkiaDomApi.PointsNode(props ?? {})
194
193
  : new PointsNode(this.ctx, props);
195
194
  }
196
195
 
197
196
  Rect(props: RectProps) {
198
- return NATIVE_DOM
197
+ return this.native
199
198
  ? global.SkiaDomApi.RectNode(props)
200
199
  : new RectNode(this.ctx, props);
201
200
  }
202
201
 
203
202
  RRect(props: RoundedRectProps) {
204
- return NATIVE_DOM
203
+ return this.native
205
204
  ? global.SkiaDomApi.RRectNode(props)
206
205
  : new RRectNode(this.ctx, props);
207
206
  }
208
207
 
209
208
  Vertices(props: VerticesProps) {
210
- return NATIVE_DOM
209
+ return this.native
211
210
  ? global.SkiaDomApi.VerticesNode(props)
212
211
  : new VerticesNode(this.ctx, props);
213
212
  }
214
213
 
215
214
  Text(props: TextProps) {
216
- return NATIVE_DOM
215
+ return this.native
217
216
  ? global.SkiaDomApi.TextNode(props)
218
217
  : new TextNode(this.ctx, props);
219
218
  }
220
219
 
221
220
  TextPath(props: TextPathProps) {
222
- return NATIVE_DOM
221
+ return this.native
223
222
  ? global.SkiaDomApi.TextPathNode(props)
224
223
  : new TextPathNode(this.ctx, props);
225
224
  }
226
225
 
227
226
  TextBlob(props: TextBlobProps) {
228
- return NATIVE_DOM
227
+ return this.native
229
228
  ? global.SkiaDomApi.TextBlobNode(props)
230
229
  : new TextBlobNode(this.ctx, props);
231
230
  }
232
231
 
233
232
  Glyphs(props: GlyphsProps) {
234
- return NATIVE_DOM
233
+ return this.native
235
234
  ? global.SkiaDomApi.GlyphsNode(props)
236
235
  : new GlyphsNode(this.ctx, props);
237
236
  }
238
237
 
239
238
  DiffRect(props: DiffRectProps) {
240
- return NATIVE_DOM
239
+ return this.native
241
240
  ? global.SkiaDomApi.DiffRectNode(props)
242
241
  : new DiffRectNode(this.ctx, props);
243
242
  }
244
243
 
245
244
  Picture(props: PictureProps) {
246
- return NATIVE_DOM
245
+ return this.native
247
246
  ? global.SkiaDomApi.PictureNode(props)
248
247
  : new PictureNode(this.ctx, props);
249
248
  }
250
249
 
251
250
  ImageSVG(props: ImageSVGProps) {
252
- return NATIVE_DOM
251
+ return this.native
253
252
  ? global.SkiaDomApi.ImageSVGNode(props)
254
253
  : new ImageSVGNode(this.ctx, props);
255
254
  }
256
255
 
257
256
  // BlurMaskFilters
258
257
  BlurMaskFilter(props: BlurMaskFilterProps) {
259
- return NATIVE_DOM
258
+ return this.native
260
259
  ? global.SkiaDomApi.BlurMaskFilterNode(props)
261
260
  : new BlurMaskFilterNode(this.ctx, props);
262
261
  }
263
262
 
264
263
  // ImageFilters
265
264
  BlendImageFilter(props: BlendImageFilterProps) {
266
- return NATIVE_DOM
265
+ return this.native
267
266
  ? global.SkiaDomApi.BlendImageFilterNode(props)
268
267
  : new BlendImageFilterNode(this.ctx, props);
269
268
  }
270
269
 
271
270
  DropShadowImageFilter(props: DropShadowImageFilterProps) {
272
- return NATIVE_DOM
271
+ return this.native
273
272
  ? global.SkiaDomApi.DropShadowImageFilterNode(props)
274
273
  : new DropShadowImageFilterNode(this.ctx, props);
275
274
  }
276
275
 
277
276
  DisplacementMapImageFilter(props: DisplacementMapImageFilterProps) {
278
- return NATIVE_DOM
277
+ return this.native
279
278
  ? global.SkiaDomApi.DisplacementMapImageFilterNode(props)
280
279
  : new DisplacementMapImageFilterNode(this.ctx, props);
281
280
  }
282
281
 
283
282
  BlurImageFilter(props: BlurImageFilterProps) {
284
- return NATIVE_DOM
283
+ return this.native
285
284
  ? global.SkiaDomApi.BlurImageFilterNode(props)
286
285
  : new BlurImageFilterNode(this.ctx, props);
287
286
  }
288
287
 
289
288
  OffsetImageFilter(props: OffsetImageFilterProps) {
290
- return NATIVE_DOM
289
+ return this.native
291
290
  ? global.SkiaDomApi.OffsetImageFilterNode(props)
292
291
  : new OffsetImageFilterNode(this.ctx, props);
293
292
  }
294
293
 
295
294
  MorphologyImageFilter(props: MorphologyImageFilterProps) {
296
- return NATIVE_DOM
295
+ return this.native
297
296
  ? global.SkiaDomApi.MorphologyImageFilterNode(props)
298
297
  : new MorphologyImageFilterNode(this.ctx, props);
299
298
  }
300
299
 
301
300
  RuntimeShaderImageFilter(props: RuntimeShaderImageFilterProps) {
302
- return NATIVE_DOM
301
+ return this.native
303
302
  ? global.SkiaDomApi.RuntimeShaderImageFilterNode(props)
304
303
  : new RuntimeShaderImageFilterNode(this.ctx, props);
305
304
  }
306
305
 
307
306
  // Color Filters
308
307
  MatrixColorFilter(props: MatrixColorFilterProps) {
309
- return NATIVE_DOM
308
+ return this.native
310
309
  ? global.SkiaDomApi.MatrixColorFilterNode(props)
311
310
  : new MatrixColorFilterNode(this.ctx, props);
312
311
  }
313
312
 
314
313
  BlendColorFilter(props: BlendColorFilterProps) {
315
- return NATIVE_DOM
314
+ return this.native
316
315
  ? global.SkiaDomApi.BlendColorFilterNode(props)
317
316
  : new BlendColorFilterNode(this.ctx, props);
318
317
  }
319
318
 
320
319
  LumaColorFilter() {
321
- return NATIVE_DOM
320
+ return this.native
322
321
  ? global.SkiaDomApi.LumaColorFilterNode()
323
322
  : new LumaColorFilterNode(this.ctx);
324
323
  }
@@ -338,136 +337,136 @@ export class JsiSkDOM implements SkDOM {
338
337
  }
339
338
 
340
339
  LerpColorFilter(props: LerpColorFilterProps) {
341
- return NATIVE_DOM
340
+ return this.native
342
341
  ? global.SkiaDomApi.LerpColorFilterNode(props)
343
342
  : new LerpColorFilterNode(this.ctx, props);
344
343
  }
345
344
 
346
345
  // Shaders
347
346
  Shader(props: ShaderProps) {
348
- return NATIVE_DOM
347
+ return this.native
349
348
  ? global.SkiaDomApi.ShaderNode(props)
350
349
  : new ShaderNode(this.ctx, props);
351
350
  }
352
351
 
353
352
  ImageShader(props: ImageShaderProps) {
354
- return NATIVE_DOM
353
+ return this.native
355
354
  ? global.SkiaDomApi.ImageShaderNode(props)
356
355
  : new ImageShaderNode(this.ctx, props);
357
356
  }
358
357
 
359
358
  ColorShader(props: ColorProps) {
360
- return NATIVE_DOM
359
+ return this.native
361
360
  ? global.SkiaDomApi.ColorShaderNode(props)
362
361
  : new ColorNode(this.ctx, props);
363
362
  }
364
363
 
365
364
  SweepGradient(props: SweepGradientProps) {
366
- return NATIVE_DOM
365
+ return this.native
367
366
  ? global.SkiaDomApi.SweepGradientNode(props)
368
367
  : new SweepGradientNode(this.ctx, props);
369
368
  }
370
369
 
371
370
  Turbulence(props: TurbulenceProps) {
372
- return NATIVE_DOM
371
+ return this.native
373
372
  ? global.SkiaDomApi.TurbulenceNode(props)
374
373
  : new TurbulenceNode(this.ctx, props);
375
374
  }
376
375
 
377
376
  FractalNoise(props: FractalNoiseProps) {
378
- return NATIVE_DOM
377
+ return this.native
379
378
  ? global.SkiaDomApi.FractalNoiseNode(props)
380
379
  : new FractalNoiseNode(this.ctx, props);
381
380
  }
382
381
 
383
382
  LinearGradient(props: LinearGradientProps) {
384
- return NATIVE_DOM
383
+ return this.native
385
384
  ? global.SkiaDomApi.LinearGradientNode(props)
386
385
  : new LinearGradientNode(this.ctx, props);
387
386
  }
388
387
 
389
388
  RadialGradient(props: RadialGradientProps) {
390
- return NATIVE_DOM
389
+ return this.native
391
390
  ? global.SkiaDomApi.RadialGradientNode(props)
392
391
  : new RadialGradientNode(this.ctx, props);
393
392
  }
394
393
 
395
394
  TwoPointConicalGradient(props: TwoPointConicalGradientProps) {
396
- return NATIVE_DOM
395
+ return this.native
397
396
  ? global.SkiaDomApi.TwoPointConicalGradientNode(props)
398
397
  : new TwoPointConicalGradientNode(this.ctx, props);
399
398
  }
400
399
 
401
400
  // Path Effects
402
401
  CornerPathEffect(props: CornerPathEffectProps) {
403
- return NATIVE_DOM
402
+ return this.native
404
403
  ? global.SkiaDomApi.CornerPathEffectNode(props)
405
404
  : new CornerPathEffectNode(this.ctx, props);
406
405
  }
407
406
 
408
407
  DiscretePathEffect(props: DiscretePathEffectProps) {
409
- return NATIVE_DOM
408
+ return this.native
410
409
  ? global.SkiaDomApi.DiscretePathEffectNode(props)
411
410
  : new DiscretePathEffectNode(this.ctx, props);
412
411
  }
413
412
 
414
413
  DashPathEffect(props: DashPathEffectProps) {
415
- return NATIVE_DOM
414
+ return this.native
416
415
  ? global.SkiaDomApi.DashPathEffectNode(props)
417
416
  : new DashPathEffectNode(this.ctx, props);
418
417
  }
419
418
 
420
419
  Path1DPathEffect(props: Path1DPathEffectProps) {
421
- return NATIVE_DOM
420
+ return this.native
422
421
  ? global.SkiaDomApi.Path1DPathEffectNode(props)
423
422
  : new Path1DPathEffectNode(this.ctx, props);
424
423
  }
425
424
 
426
425
  Path2DPathEffect(props: Path2DPathEffectProps) {
427
- return NATIVE_DOM
426
+ return this.native
428
427
  ? global.SkiaDomApi.Path2DPathEffectNode(props)
429
428
  : new Path2DPathEffectNode(this.ctx, props);
430
429
  }
431
430
 
432
431
  SumPathEffect() {
433
- return NATIVE_DOM
432
+ return this.native
434
433
  ? global.SkiaDomApi.SumPathEffectNode()
435
434
  : new SumPathEffectNode(this.ctx);
436
435
  }
437
436
 
438
437
  Line2DPathEffect(props: Line2DPathEffectProps) {
439
- return NATIVE_DOM
438
+ return this.native
440
439
  ? global.SkiaDomApi.Line2DPathEffectNode(props)
441
440
  : new Line2DPathEffectNode(this.ctx, props);
442
441
  }
443
442
 
444
443
  Blend(props: BlendProps) {
445
- return NATIVE_DOM
444
+ return this.native
446
445
  ? global.SkiaDomApi.BlendNode(props)
447
446
  : new BlendNode(this.ctx, props);
448
447
  }
449
448
 
450
449
  BackdropFilter(props: ChildrenProps) {
451
- return NATIVE_DOM
450
+ return this.native
452
451
  ? global.SkiaDomApi.BackdropFilterNode(props)
453
452
  : new BackdropFilterNode(this.ctx, props);
454
453
  }
455
454
 
456
455
  Box(props: BoxProps) {
457
- return NATIVE_DOM
456
+ return this.native
458
457
  ? global.SkiaDomApi.BoxNode(props)
459
458
  : new BoxNode(this.ctx, props);
460
459
  }
461
460
 
462
461
  BoxShadow(props: BoxShadowProps) {
463
- return NATIVE_DOM
462
+ return this.native
464
463
  ? global.SkiaDomApi.BoxShadowNode(props)
465
464
  : new BoxShadowNode(this.ctx, props);
466
465
  }
467
466
 
468
467
  // Paragraph
469
468
  Paragraph(props: ParagraphProps) {
470
- return NATIVE_DOM
469
+ return this.native
471
470
  ? global.SkiaDomApi.ParagraphNode(props)
472
471
  : new ParagraphNode(this.ctx, props);
473
472
  }