peachsim 0.1.1644 → 0.1.1653

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (608) hide show
  1. package/README.md +12 -0
  2. package/cli/app-catalog.ts +1 -1
  3. package/cli/app-fonts.ts +11 -80
  4. package/cli/app-splash.ts +18 -12
  5. package/cli/bridge-flow-runner.ts +11 -7
  6. package/cli/cloud-client.ts +10 -13
  7. package/cli/command-registry.ts +13 -4
  8. package/cli/commands/box.ts +4 -4
  9. package/cli/commands/control.ts +93 -53
  10. package/cli/commands/coverage-parser.ts +67 -0
  11. package/cli/commands/coverage.ts +550 -0
  12. package/cli/commands/debug.ts +9 -18
  13. package/cli/commands/desktop.ts +19 -7
  14. package/cli/commands/device.ts +14 -9
  15. package/cli/commands/guest-host.ts +6 -10
  16. package/cli/commands/inspect/core.ts +81 -17
  17. package/cli/commands/inspect.ts +13 -8
  18. package/cli/commands/kotlin.ts +2 -2
  19. package/cli/commands/maestro-compare.ts +1 -1
  20. package/cli/commands/platform.ts +20 -11
  21. package/cli/commands/preview.ts +16 -18
  22. package/cli/commands/runtime.ts +3 -2
  23. package/cli/commands/screenshot-layers.ts +1 -1
  24. package/cli/commands/screenshot.ts +1 -1
  25. package/cli/commands/serve.ts +5 -1
  26. package/cli/commands/support.ts +4 -4
  27. package/cli/commands/three-mode.ts +22 -15
  28. package/cli/commands/upload.ts +44 -45
  29. package/cli/current-sim.ts +38 -0
  30. package/cli/desktop-companion.ts +36 -8
  31. package/cli/device-option.ts +1 -1
  32. package/cli/drivers/playwright.ts +1 -0
  33. package/cli/drivers/types.ts +4 -0
  34. package/cli/help-core.ts +1 -1
  35. package/cli/internal-child.ts +2 -1
  36. package/cli/main.ts +9 -3
  37. package/cli/outbound-endpoints.ts +11 -3
  38. package/cli/output-redaction.ts +39 -14
  39. package/cli/remote-simulators.ts +4 -1
  40. package/cli/scene-video.ts +5 -2
  41. package/cli/send-to-box.ts +7 -10
  42. package/cli/telemetry.ts +1 -1
  43. package/cli/ws-bridge.ts +8 -1
  44. package/detox/attempt-events.cjs +3 -1
  45. package/detox/attempt-events.d.cts +1 -1
  46. package/detox/expectations.ts +108 -99
  47. package/detox/frame-offset.d.mts +6 -0
  48. package/detox/frame-offset.mjs +35 -0
  49. package/detox/gestures.ts +6 -18
  50. package/detox/index.ts +169 -101
  51. package/detox/jest-preset.cjs +1 -3
  52. package/detox/jest-transform.cjs +4 -0
  53. package/detox/matchers.ts +3 -0
  54. package/detox/motion-change.cjs +46 -114
  55. package/detox/motion-change.d.cts +5 -27
  56. package/dist-lib/agent-daemon-client.cjs +1 -1
  57. package/dist-lib/agent-events.cjs +1 -1
  58. package/dist-lib/attached-projects.cjs +1 -1
  59. package/dist-lib/auth/shared-session.cjs +1 -1
  60. package/dist-lib/backend-origin.cjs +1 -1
  61. package/dist-lib/beta.cjs +1 -1
  62. package/dist-lib/beta.mjs +1 -1
  63. package/dist-lib/bridge-constants.cjs +1 -1
  64. package/dist-lib/bridge-contract-input.cjs +65 -1
  65. package/dist-lib/bridge-contract-input.mjs +63 -1
  66. package/dist-lib/bridge-contract.cjs +19 -1
  67. package/dist-lib/bridge-contract.mjs +17 -1
  68. package/dist-lib/bundle-channel.cjs +38091 -14846
  69. package/dist-lib/capture-contract.cjs +1 -1
  70. package/dist-lib/capture-contract.mjs +1 -1
  71. package/dist-lib/cloud-contract.cjs +1 -1
  72. package/dist-lib/cloud-contract.mjs +1 -1
  73. package/dist-lib/cloud-test-args.cjs +1 -1
  74. package/dist-lib/cloud-test-args.mjs +1 -1
  75. package/dist-lib/cloud.cjs +1 -1
  76. package/dist-lib/cloud.mjs +1 -1
  77. package/dist-lib/config.cjs +1 -1
  78. package/dist-lib/config.mjs +5 -3
  79. package/dist-lib/detox/index.cjs +1244 -4509
  80. package/dist-lib/detox/jest-preset.cjs +1 -3
  81. package/dist-lib/detox/jest-transform.cjs +4 -0
  82. package/dist-lib/dev-bundle-resolution.cjs +28 -24
  83. package/dist-lib/expo-swift-bundle.cjs +35049 -13125
  84. package/dist-lib/expo-swift-metadata.cjs +1 -1
  85. package/dist-lib/expo-swift-metadata.mjs +1 -1
  86. package/dist-lib/home-paths.cjs +1 -1
  87. package/dist-lib/host/bridge-host.cjs +45112 -63143
  88. package/dist-lib/host/fetch-proxy-handler.cjs +3544 -11
  89. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  90. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  91. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  92. package/dist-lib/host/websocket-proxy.cjs +1 -1
  93. package/dist-lib/index.cjs +1909 -2029
  94. package/dist-lib/jump-to-source-babel.cjs +1 -1
  95. package/dist-lib/jump-to-source-native.cjs +1 -1
  96. package/dist-lib/kotlin-host.cjs +2 -2
  97. package/dist-lib/menu.cjs +1 -1
  98. package/dist-lib/menu.mjs +1 -1
  99. package/dist-lib/metro-fingerprint-registry.cjs +1 -1
  100. package/dist-lib/metro-fingerprint-registry.mjs +1 -1
  101. package/dist-lib/metro-production-bundle.cjs +1 -1
  102. package/dist-lib/metro-production-bundle.mjs +1 -1
  103. package/dist-lib/metro.cjs +380 -522
  104. package/dist-lib/native-app-identity-project.cjs +39 -252
  105. package/dist-lib/native-app-identity-project.mjs +1174 -11
  106. package/dist-lib/native-app-identity.cjs +8 -3
  107. package/dist-lib/native-app-identity.mjs +8 -3
  108. package/dist-lib/native-firebase-metadata.cjs +1 -1
  109. package/dist-lib/native-firebase-metadata.mjs +1 -1
  110. package/dist-lib/plist.cjs +2 -244
  111. package/dist-lib/plist.mjs +1 -1
  112. package/dist-lib/profiles.cjs +1 -1
  113. package/dist-lib/public-brand.cjs +1 -1
  114. package/dist-lib/public-origins-lib-esm.json +290 -0
  115. package/dist-lib/public-origins-lib-static.json +1 -0
  116. package/dist-lib/public-origins-lib.json +1852 -0
  117. package/dist-lib/react-native-host-modules.cjs +1 -1
  118. package/dist-lib/react-native-host-modules.mjs +1 -1
  119. package/dist-lib/scripts/dev-server-scanner.cjs +14 -253
  120. package/dist-lib/sdk.cjs +83 -16
  121. package/dist-lib/sdk.mjs +81 -15
  122. package/dist-lib/skills.cjs +50546 -75098
  123. package/dist-lib/swift-compile.cjs +25897 -1070
  124. package/dist-lib/swift-compile.mjs +25866 -1033
  125. package/dist-lib/swift-package.cjs +79 -1
  126. package/dist-lib/swift-package.mjs +75 -1
  127. package/dist-lib/swift-submit.cjs +1 -1
  128. package/dist-lib/swift-submit.mjs +1 -1
  129. package/dist-lib/swift-toolchain.cjs +1 -1
  130. package/dist-lib/swift.cjs +1 -1
  131. package/dist-lib/vite-swift.cjs +34273 -12349
  132. package/dist-lib/vite.cjs +373 -298
  133. package/dist-lib/worklet-executable.cjs +1 -1
  134. package/dist-lib/worklet-executable.mjs +1 -1
  135. package/dist-types/packages/peach-compat/src/engine-config.d.ts +2 -0
  136. package/dist-types/packages/peach-compat/src/stubs/form-sheet-spring.d.ts +9 -0
  137. package/dist-types/packages/peach-compat/src/stubs/native-evaluation-lease.d.ts +47 -0
  138. package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-cookies.d.ts +113 -0
  139. package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-gesture-handler.d.ts +154 -0
  140. package/dist-types/packages/peach-compat/src/stubs/screen-transition-math.d.ts +756 -0
  141. package/dist-types/packages/peach-compat/src/stubs/transition-scalar.d.ts +25 -0
  142. package/dist-types/packages/peach-engine/src/billing/plans.d.ts +64 -0
  143. package/dist-types/packages/peach-engine/src/browser-page-target.d.ts +2 -0
  144. package/dist-types/packages/peach-engine/src/bundle-platform-url.d.ts +3 -0
  145. package/dist-types/packages/peach-engine/src/capture/browser-accessibility-host.d.ts +3 -0
  146. package/dist-types/packages/peach-engine/src/capture/browser-composite.d.ts +55 -0
  147. package/dist-types/packages/peach-engine/src/capture/browserAccessibilityContract.d.ts +27 -0
  148. package/dist-types/packages/peach-engine/src/capture/nativeScreenCaptureContract.d.ts +22 -0
  149. package/dist-types/packages/peach-engine/src/cli-companion.d.ts +36 -0
  150. package/dist-types/packages/peach-engine/src/components/native-ui/webview-frame-bridge.d.ts +34 -0
  151. package/dist-types/packages/peach-engine/src/config.d.ts +5 -0
  152. package/dist-types/packages/peach-engine/src/engine/android-stretch-effect.d.ts +57 -0
  153. package/dist-types/packages/peach-engine/src/engine/animated-driven-style.d.ts +47 -0
  154. package/dist-types/packages/peach-engine/src/engine/animated-value.d.ts +5 -0
  155. package/dist-types/packages/peach-engine/src/engine/animated.d.ts +195 -0
  156. package/dist-types/packages/peach-engine/src/engine/animation-clockContract.d.ts +15 -0
  157. package/dist-types/packages/peach-engine/src/engine/animation-graph.d.ts +148 -0
  158. package/dist-types/packages/peach-engine/src/engine/app-catalog-wire.d.ts +10 -0
  159. package/dist-types/packages/peach-engine/src/engine/app-font-registry.d.ts +87 -0
  160. package/dist-types/packages/peach-engine/src/engine/attributed-paragraph-paint.d.ts +7 -0
  161. package/dist-types/packages/peach-engine/src/engine/attributed-paragraph.d.ts +123 -0
  162. package/dist-types/packages/peach-engine/src/engine/audioContract.d.ts +16 -0
  163. package/dist-types/packages/peach-engine/src/engine/canvaskit-api.d.ts +93 -0
  164. package/dist-types/packages/peach-engine/src/engine/canvaskit-renderer.d.ts +216 -0
  165. package/dist-types/packages/peach-engine/src/engine/config-plugin-fonts.d.ts +40 -0
  166. package/dist-types/packages/peach-engine/src/engine/config-plugin-splash.d.ts +25 -0
  167. package/dist-types/packages/peach-engine/src/engine/cull-visibility.d.ts +44 -0
  168. package/dist-types/packages/peach-engine/src/engine/damage-rect.d.ts +19 -0
  169. package/dist-types/packages/peach-engine/src/engine/engine-resource.d.ts +6 -0
  170. package/dist-types/packages/peach-engine/src/engine/expo-manifest.d.ts +5 -0
  171. package/dist-types/packages/peach-engine/src/engine/fiber-debug-metadata.d.ts +30 -0
  172. package/dist-types/packages/peach-engine/src/engine/font-config.d.ts +139 -0
  173. package/dist-types/packages/peach-engine/src/engine/generated/sf-pro-font.d.ts +1 -0
  174. package/dist-types/packages/peach-engine/src/engine/glass-material.d.ts +31 -0
  175. package/dist-types/packages/peach-engine/src/engine/host-composite.d.ts +100 -0
  176. package/dist-types/packages/peach-engine/src/engine/hosted-semantics.d.ts +49 -0
  177. package/dist-types/packages/peach-engine/src/engine/image-audit.d.ts +70 -0
  178. package/dist-types/packages/peach-engine/src/engine/image-loader.d.ts +350 -0
  179. package/dist-types/packages/peach-engine/src/engine/inspect-info.d.ts +27 -0
  180. package/dist-types/packages/peach-engine/src/engine/inspect-outline.d.ts +14 -0
  181. package/dist-types/packages/peach-engine/src/engine/inspect-visibility.d.ts +33 -0
  182. package/dist-types/packages/peach-engine/src/engine/ios-fast-scroll.d.ts +16 -0
  183. package/dist-types/packages/peach-engine/src/engine/layout-sab.d.ts +43 -0
  184. package/dist-types/packages/peach-engine/src/engine/liquid-glass-rect.d.ts +23 -0
  185. package/dist-types/packages/peach-engine/src/engine/liquid-glass-shaders.d.ts +9 -0
  186. package/dist-types/packages/peach-engine/src/engine/liquid-glass.d.ts +283 -0
  187. package/dist-types/packages/peach-engine/src/engine/live-object-counts.d.ts +6 -0
  188. package/dist-types/packages/peach-engine/src/engine/lottie-runtime.d.ts +32 -0
  189. package/dist-types/packages/peach-engine/src/engine/lottie-types.d.ts +138 -0
  190. package/dist-types/packages/peach-engine/src/engine/memory-counts.d.ts +27 -0
  191. package/dist-types/packages/peach-engine/src/engine/metalDirectContract.d.ts +108 -0
  192. package/dist-types/packages/peach-engine/src/engine/metalShaderContract.d.ts +217 -0
  193. package/dist-types/packages/peach-engine/src/engine/native-animation-driver.d.ts +112 -0
  194. package/dist-types/packages/peach-engine/src/engine/native-animation-graph.d.ts +62 -0
  195. package/dist-types/packages/peach-engine/src/engine/native-layout.d.ts +133 -0
  196. package/dist-types/packages/peach-engine/src/engine/native-resources.d.ts +26 -0
  197. package/dist-types/packages/peach-engine/src/engine/nativeReanimatedContract.d.ts +25 -0
  198. package/dist-types/packages/peach-engine/src/engine/nativeReplayContract.d.ts +64 -0
  199. package/dist-types/packages/peach-engine/src/engine/node.d.ts +589 -0
  200. package/dist-types/packages/peach-engine/src/engine/paint-boundary-types.d.ts +112 -0
  201. package/dist-types/packages/peach-engine/src/engine/paint-boundary.d.ts +57 -0
  202. package/dist-types/packages/peach-engine/src/engine/portalContract.d.ts +21 -0
  203. package/dist-types/packages/peach-engine/src/engine/portals.d.ts +20 -0
  204. package/dist-types/packages/peach-engine/src/engine/render-damage.d.ts +107 -0
  205. package/dist-types/packages/peach-engine/src/engine/riveContract.d.ts +420 -0
  206. package/dist-types/packages/peach-engine/src/engine/rn-spring.d.ts +51 -0
  207. package/dist-types/packages/peach-engine/src/engine/scene-table.d.ts +379 -0
  208. package/dist-types/packages/peach-engine/src/engine/scroll-momentum-math.d.ts +152 -0
  209. package/dist-types/packages/peach-engine/src/engine/scroll-pan-contacts.d.ts +10 -0
  210. package/dist-types/packages/peach-engine/src/engine/scroll-platform.d.ts +75 -0
  211. package/dist-types/packages/peach-engine/src/engine/scroll-range.d.ts +14 -0
  212. package/dist-types/packages/peach-engine/src/engine/scroll-velocity.d.ts +14 -0
  213. package/dist-types/packages/peach-engine/src/engine/scroll.d.ts +320 -0
  214. package/dist-types/packages/peach-engine/src/engine/signal.d.ts +7 -0
  215. package/dist-types/packages/peach-engine/src/engine/snapshot-cache-policy.d.ts +6 -0
  216. package/dist-types/packages/peach-engine/src/engine/svg-geometry.d.ts +41 -0
  217. package/dist-types/packages/peach-engine/src/engine/text-attachment-paragraphs.d.ts +10 -0
  218. package/dist-types/packages/peach-engine/src/engine/text-decoration.d.ts +11 -0
  219. package/dist-types/packages/peach-engine/src/engine/text-line-break.d.ts +22 -0
  220. package/dist-types/packages/peach-engine/src/engine/text-paint-receipt.d.ts +98 -0
  221. package/dist-types/packages/peach-engine/src/engine/text-paragraph.d.ts +11 -0
  222. package/dist-types/packages/peach-engine/src/engine/text-paragraphContract.d.ts +34 -0
  223. package/dist-types/packages/peach-engine/src/engine/text-transform.d.ts +1 -0
  224. package/dist-types/packages/peach-engine/src/engine/types.d.ts +657 -0
  225. package/dist-types/packages/peach-engine/src/engine/visible-frame.d.ts +54 -0
  226. package/dist-types/packages/peach-engine/src/engine/webrtcContract.d.ts +74 -0
  227. package/dist-types/packages/peach-engine/src/graphite-stats-fields.d.ts +184 -0
  228. package/dist-types/packages/peach-engine/src/guest-import-meta.d.ts +12 -0
  229. package/dist-types/packages/peach-engine/src/guest-module-overrides.d.ts +7 -0
  230. package/dist-types/packages/peach-engine/src/ios/app-card-types.d.ts +7 -0
  231. package/dist-types/packages/peach-engine/src/ios/apps/canvas-map-data.d.ts +177 -0
  232. package/dist-types/packages/peach-engine/src/ios/aux-home-scene.d.ts +54 -0
  233. package/dist-types/packages/peach-engine/src/ios/chrome-metrics.d.ts +47 -0
  234. package/dist-types/packages/peach-engine/src/ios/constants.d.ts +21 -0
  235. package/dist-types/packages/peach-engine/src/ios/duo-housing.d.ts +37 -0
  236. package/dist-types/packages/peach-engine/src/ios/home/types.d.ts +29 -0
  237. package/dist-types/packages/peach-engine/src/ios/home-app-catalog.d.ts +43 -0
  238. package/dist-types/packages/peach-engine/src/ios/photo-store.d.ts +73 -0
  239. package/dist-types/packages/peach-engine/src/ios/photoLibraryContract.d.ts +166 -0
  240. package/dist-types/packages/peach-engine/src/ios/shell-controller-types.d.ts +21 -0
  241. package/dist-types/packages/peach-engine/src/ios/shell-transition-debug.d.ts +18 -0
  242. package/dist-types/packages/peach-engine/src/metro-asset-path.d.ts +21 -0
  243. package/dist-types/packages/peach-engine/src/metro-fingerprint-registry-client.d.ts +11 -0
  244. package/dist-types/packages/peach-engine/src/metro-fingerprint.d.ts +38 -0
  245. package/dist-types/packages/peach-engine/src/native-preview-bundle.d.ts +44 -0
  246. package/dist-types/packages/peach-engine/src/observability/types.d.ts +74 -0
  247. package/dist-types/packages/peach-engine/src/peach-warm-manifest.d.ts +32 -0
  248. package/dist-types/packages/peach-engine/src/permissions/app-settings-client.d.ts +25 -0
  249. package/dist-types/packages/peach-engine/src/permissions/system-permission-types.d.ts +20 -0
  250. package/dist-types/packages/peach-engine/src/platform/android-back-panel.d.ts +131 -0
  251. package/dist-types/packages/peach-engine/src/platform/android-gesture-exclusion.d.ts +28 -0
  252. package/dist-types/packages/peach-engine/src/platform/android-predictive-back.d.ts +33 -0
  253. package/dist-types/packages/peach-engine/src/platform/system-bars-state.d.ts +14 -0
  254. package/dist-types/packages/peach-engine/src/playwright-sim-host.d.ts +1 -0
  255. package/dist-types/packages/peach-engine/src/preview/bundle-layout.d.ts +8 -0
  256. package/dist-types/packages/peach-engine/src/preview/bundle-variantContract.d.ts +24 -0
  257. package/dist-types/packages/peach-engine/src/preview/capture-bundle.d.ts +26 -0
  258. package/dist-types/packages/peach-engine/src/preview/compress-node.d.ts +2 -0
  259. package/dist-types/packages/peach-engine/src/preview/compress.d.ts +2 -0
  260. package/dist-types/packages/peach-engine/src/preview/presigned-upload.d.ts +60 -0
  261. package/dist-types/packages/peach-engine/src/preview/trace.d.ts +144 -0
  262. package/dist-types/packages/peach-engine/src/preview/upload-protocol.d.ts +152 -0
  263. package/dist-types/packages/peach-engine/src/profiler/animation-recording-loader.d.ts +1 -0
  264. package/dist-types/packages/peach-engine/src/profiler/profile-trace.d.ts +4 -0
  265. package/dist-types/packages/peach-engine/src/react-bridge.d.ts +3 -0
  266. package/dist-types/packages/peach-engine/src/react-native/AppState.d.ts +45 -0
  267. package/dist-types/packages/peach-engine/src/react-native/Appearance.d.ts +34 -0
  268. package/dist-types/packages/peach-engine/src/react-native/framework-colors-data.d.ts +2 -0
  269. package/dist-types/packages/peach-engine/src/react-native/host-services.d.ts +42 -0
  270. package/dist-types/packages/peach-engine/src/react-native/layout-animation.d.ts +22 -0
  271. package/dist-types/packages/peach-engine/src/react-native/platform-colors.d.ts +17 -0
  272. package/dist-types/packages/peach-engine/src/remote-stream/client-config.d.ts +10 -0
  273. package/dist-types/packages/peach-engine/src/remote-stream/cloud-display.d.ts +58 -0
  274. package/dist-types/packages/peach-engine/src/remote-stream/scene-recording.d.ts +45 -0
  275. package/dist-types/packages/peach-engine/src/render-worker/animated-drive-output.d.ts +35 -0
  276. package/dist-types/packages/peach-engine/src/render-worker/app-load.d.ts +16 -0
  277. package/dist-types/packages/peach-engine/src/render-worker/aux-surface-types.d.ts +2 -0
  278. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-shared.d.ts +42 -0
  279. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-webgpu.d.ts +434 -0
  280. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-worker-init.d.ts +12 -0
  281. package/dist-types/packages/peach-engine/src/render-worker/compositor-backend.d.ts +31 -0
  282. package/dist-types/packages/peach-engine/src/render-worker/compositor-gpu.d.ts +202 -0
  283. package/dist-types/packages/peach-engine/src/render-worker/compositor-protocol.d.ts +1945 -0
  284. package/dist-types/packages/peach-engine/src/render-worker/compositor-runtime/scroll-drag-resample.d.ts +44 -0
  285. package/dist-types/packages/peach-engine/src/render-worker/css-keyframes-drive.d.ts +36 -0
  286. package/dist-types/packages/peach-engine/src/render-worker/edit-menu-geometry.d.ts +8 -0
  287. package/dist-types/packages/peach-engine/src/render-worker/engine-resource-relay.d.ts +21 -0
  288. package/dist-types/packages/peach-engine/src/render-worker/expo-widgetContract.d.ts +16 -0
  289. package/dist-types/packages/peach-engine/src/render-worker/gesture-seam-protocol.d.ts +152 -0
  290. package/dist-types/packages/peach-engine/src/render-worker/graph-linked-value.d.ts +29 -0
  291. package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler-contract.d.ts +49 -0
  292. package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler.d.ts +12 -0
  293. package/dist-types/packages/peach-engine/src/render-worker/host-service-protocol.d.ts +756 -0
  294. package/dist-types/packages/peach-engine/src/render-worker/image-lifecycle-event.d.ts +22 -0
  295. package/dist-types/packages/peach-engine/src/render-worker/image-pixel-contract.d.ts +48 -0
  296. package/dist-types/packages/peach-engine/src/render-worker/live-frame-mirror.d.ts +34 -0
  297. package/dist-types/packages/peach-engine/src/render-worker/map-command-channel.d.ts +189 -0
  298. package/dist-types/packages/peach-engine/src/render-worker/mapNativeContract.d.ts +101 -0
  299. package/dist-types/packages/peach-engine/src/render-worker/native-dynamic-synchronizable.d.ts +22 -0
  300. package/dist-types/packages/peach-engine/src/render-worker/native-menu-gesture.d.ts +9 -0
  301. package/dist-types/packages/peach-engine/src/render-worker/native-ui-commandContract.d.ts +23 -0
  302. package/dist-types/packages/peach-engine/src/render-worker/native-ui-protocol.d.ts +1087 -0
  303. package/dist-types/packages/peach-engine/src/render-worker/native-widgetContract.d.ts +100 -0
  304. package/dist-types/packages/peach-engine/src/render-worker/nativeAnimMirrorContract.d.ts +174 -0
  305. package/dist-types/packages/peach-engine/src/render-worker/nativeSyncReplyContract.d.ts +11 -0
  306. package/dist-types/packages/peach-engine/src/render-worker/one-native-contentContract.d.ts +54 -0
  307. package/dist-types/packages/peach-engine/src/render-worker/pointerSampleContract.d.ts +14 -0
  308. package/dist-types/packages/peach-engine/src/render-worker/protocol.d.ts +880 -0
  309. package/dist-types/packages/peach-engine/src/render-worker/reanimated-css-contract.d.ts +63 -0
  310. package/dist-types/packages/peach-engine/src/render-worker/reanimated-readiness.d.ts +29 -0
  311. package/dist-types/packages/peach-engine/src/render-worker/resilient-frame-clock.d.ts +22 -0
  312. package/dist-types/packages/peach-engine/src/render-worker/retained-app-load.d.ts +20 -0
  313. package/dist-types/packages/peach-engine/src/render-worker/screen-edge-swipe-commit-protocol.d.ts +1 -0
  314. package/dist-types/packages/peach-engine/src/render-worker/screen-form-sheet-commit-protocol.d.ts +26 -0
  315. package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror-tenant.d.ts +37 -0
  316. package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror.d.ts +164 -0
  317. package/dist-types/packages/peach-engine/src/render-worker/shell-event-registry.d.ts +119 -0
  318. package/dist-types/packages/peach-engine/src/render-worker/shell-gesture-regions.d.ts +41 -0
  319. package/dist-types/packages/peach-engine/src/render-worker/shell-protocol.d.ts +603 -0
  320. package/dist-types/packages/peach-engine/src/render-worker/shell-scene-schema.d.ts +101 -0
  321. package/dist-types/packages/peach-engine/src/render-worker/shell-tree-inline-sources.d.ts +13 -0
  322. package/dist-types/packages/peach-engine/src/render-worker/shell-tree-wire.d.ts +87 -0
  323. package/dist-types/packages/peach-engine/src/render-worker/test-bridge-protocol.d.ts +47 -0
  324. package/dist-types/packages/peach-engine/src/render-worker/text-inputContract.d.ts +93 -0
  325. package/dist-types/packages/peach-engine/src/render-worker/tree-sync-port.d.ts +102 -0
  326. package/dist-types/packages/peach-engine/src/render-worker/webgpu-frame-transaction.d.ts +292 -0
  327. package/dist-types/packages/peach-engine/src/render-worker/webgpu-readback-scheduler.d.ts +107 -0
  328. package/dist-types/packages/peach-engine/src/render-worker/webview-capture-protocol.d.ts +16 -0
  329. package/dist-types/packages/peach-engine/src/render-worker/worker-input-runtime.d.ts +211 -0
  330. package/dist-types/packages/peach-engine/src/render-worker/worker-storage.d.ts +33 -0
  331. package/dist-types/packages/peach-engine/src/render-worker/worklet-runtime.d.ts +987 -0
  332. package/dist-types/packages/peach-engine/src/render-worker/worklet-sab.d.ts +24 -0
  333. package/dist-types/packages/peach-engine/src/rolldown-bundle-inventory.d.ts +84 -0
  334. package/dist-types/packages/peach-engine/src/rolldown-production-fingerprint.d.ts +31 -0
  335. package/dist-types/packages/peach-engine/src/screenshots/timeline-assets.d.ts +10 -0
  336. package/dist-types/packages/peach-engine/src/screenshots/tokens.d.ts +9 -0
  337. package/dist-types/packages/peach-engine/src/settings/devices.d.ts +70 -0
  338. package/dist-types/packages/peach-engine/src/settings/duo-fold-bus.d.ts +87 -0
  339. package/dist-types/packages/peach-engine/src/settings/interface-rotation.d.ts +30 -0
  340. package/dist-types/packages/peach-engine/src/settings/react-native-configuration.d.ts +12 -0
  341. package/dist-types/packages/peach-engine/src/settings/scene-geometryContract.d.ts +40 -0
  342. package/dist-types/packages/peach-engine/src/settings/store.d.ts +37 -0
  343. package/dist-types/packages/peach-engine/src/shell-events.d.ts +203 -0
  344. package/dist-types/packages/peach-engine/src/shell-intent.d.ts +68 -0
  345. package/dist-types/packages/peach-engine/src/sootsim-event.d.ts +35 -0
  346. package/dist-types/packages/peach-engine/src/top-overlay-state.d.ts +5 -0
  347. package/dist-types/packages/peach-engine/src/web-authentication-automation-host.d.ts +2 -0
  348. package/dist-types/packages/peach-engine/src/webAuthenticationContract.d.ts +34 -0
  349. package/dist-types/packages/peach-engine/src/webview-automation-host.d.ts +180 -0
  350. package/dist-types/packages/peach-engine/src/wireframe-mode.d.ts +16 -0
  351. package/dist-types/packages/peach-globals/src/frameBreakdownContract.d.ts +16 -0
  352. package/dist-types/packages/peach-globals/src/index.d.ts +3311 -0
  353. package/dist-types/packages/peach-globals/src/nativeSurfaceContract.d.ts +76 -0
  354. package/dist-types/packages/peach-globals/src/pointerSourceEventContract.d.ts +8 -0
  355. package/dist-types/packages/peach-globals/src/profileTrace.d.ts +11 -0
  356. package/dist-types/packages/peach-globals/src/profilerContract.d.ts +223 -0
  357. package/dist-types/packages/peach-kit/src/capabilities.d.ts +721 -0
  358. package/dist-types/packages/peach-kit/src/internal.d.ts +4 -0
  359. package/dist-types/packages/peach-kit/src/materials/types.d.ts +27 -0
  360. package/dist-types/packages/peach-kit/src/materials/uikit-blur-material.d.ts +14 -0
  361. package/dist-types/packages/peach-kit/src/navigation-types.d.ts +11 -0
  362. package/dist-types/packages/peach-kit/src/react-bridge.d.ts +53 -0
  363. package/dist-types/packages/peach-kit/src/runtime.d.ts +26 -0
  364. package/dist-types/packages/peach-kit/src/ui/hosting-safe-area.d.ts +24 -0
  365. package/dist-types/packages/peach-kit/src/ui/popover-placement.d.ts +53 -0
  366. package/dist-types/packages/peach-kit/src/ui/presentationContract.d.ts +17 -0
  367. package/kotlin/ComposeSources/PeachComposeHost.kt +1 -1
  368. package/kotlin/JniSources/com/facebook/jni/HybridData.kt +0 -2
  369. package/kotlin/JniSources/dev/peach/jni/NativeBindings.kt +0 -2
  370. package/kotlin/JniTransportSources/dev/peach/jni/integration/JniTransport.kt +0 -2
  371. package/kotlin/README.md +6 -0
  372. package/package.json +22 -2
  373. package/runtime-companion.json +1 -0
  374. package/skills/contrast/SKILL.md +1 -0
  375. package/src/assetCatalogContract.ts +21 -0
  376. package/src/bridge-contract-input.ts +84 -0
  377. package/src/bridge-contract.ts +35 -3
  378. package/src/browser-launch-policy.ts +1 -0
  379. package/src/bundle-channel.mjs +4 -2
  380. package/src/cli-runtime.ts +55 -0
  381. package/src/crash-fingerprint.ts +26 -0
  382. package/src/dev-bundle-resolution.ts +50 -23
  383. package/src/device-catalog.ts +1159 -0
  384. package/src/host/bridge-host.ts +3 -26
  385. package/src/host/browser-pointer.ts +71 -0
  386. package/src/host/dev-server-package-versions.ts +23 -0
  387. package/src/host/fetch-proxy-handler.ts +17 -4
  388. package/src/installed-package-versions.ts +142 -38
  389. package/src/kotlin-host.ts +1 -1
  390. package/src/metro-plugin.ts +4 -4
  391. package/src/metro-project-root.ts +68 -0
  392. package/src/nitro-adapter.lock.json +26 -0
  393. package/src/nitro-adapter.ts +103 -0
  394. package/src/nitro-bundle.ts +24 -10
  395. package/src/nitro-compile.ts +33 -51
  396. package/src/nitro-source.ts +177 -96
  397. package/src/nitroAdapterContract.ts +217 -0
  398. package/src/nitroContract.ts +24 -11
  399. package/src/process-group.ts +41 -34
  400. package/src/react-bridge-importers.ts +28 -0
  401. package/src/reactNativeConfigurationContract.ts +36 -0
  402. package/src/runtime-assets.ts +7 -2
  403. package/src/runtime-delivery.ts +2 -0
  404. package/src/runtimePlatformContract.ts +70 -0
  405. package/src/screenshots/frame-compose.ts +42 -43
  406. package/src/screenshots/org-deck.ts +9 -4
  407. package/src/screenshots/preset-names.ts +29 -0
  408. package/src/screenshots/registry.ts +5 -5
  409. package/src/screenshots/schema.ts +1 -1
  410. package/src/screenshots/screenshotContract.ts +971 -0
  411. package/src/settings-flags.ts +107 -0
  412. package/src/settingsContract.ts +609 -0
  413. package/src/storageSnapshotContract.ts +344 -0
  414. package/src/stub-pattern-matcher.ts +550 -0
  415. package/src/swift-compile.ts +908 -40
  416. package/src/swift-compiler-digest.ts +13 -1
  417. package/src/swift-distribution.lock.json +49 -22
  418. package/src/swift-host.ts +167 -52
  419. package/src/swift-objc-compile.ts +54 -24
  420. package/src/swift-objc-export.ts +532 -0
  421. package/src/swift-objc-import.ts +769 -0
  422. package/src/swift-objc-metadata.ts +285 -10
  423. package/src/swift-objc-sdk.ts +13970 -158
  424. package/src/swift-objc-standin.ts +137 -1
  425. package/src/swift-package.ts +94 -0
  426. package/src/swift-packages.ts +5 -5
  427. package/src/swift-submit.ts +6 -0
  428. package/src/swiftContract.ts +99 -0
  429. package/src/target-matcher.ts +6 -1
  430. package/src/vite-plugin.ts +14 -40
  431. package/src/worker-system-chunks.ts +1 -1
  432. package/src/workerChunkContract.ts +5 -0
  433. package/src/worklets-babel.ts +24 -5
  434. package/src/xcode-project.ts +36 -7
  435. package/src/xcode-target-members.ts +10 -3
  436. package/cli/drivers/playwright-sim-host.ts +0 -825
  437. package/kotlin/fixtures/counter/Counter.d.kt.ts +0 -17
  438. package/kotlin/fixtures/counter/Counter.kt +0 -51
  439. package/kotlin/fixtures/counter/CounterApp.native.tsx +0 -61
  440. package/kotlin/fixtures/counter/CounterApp.tsx +0 -3
  441. package/kotlin/fixtures/counter/CounterScreen.d.kt.ts +0 -8
  442. package/kotlin/fixtures/counter/CounterScreen.kt +0 -56
  443. package/kotlin/fixtures/counter/app/_layout.tsx +0 -4
  444. package/kotlin/fixtures/counter/app/index+spa.tsx +0 -1
  445. package/kotlin/fixtures/counter/app/routes.d.ts +0 -18
  446. package/kotlin/fixtures/counter/package.json +0 -20
  447. package/kotlin/fixtures/counter/tsconfig.json +0 -19
  448. package/kotlin/fixtures/counter/vite.config.ts +0 -20
  449. package/kotlin/fixtures/headless-counter/Headless.kt +0 -234
  450. package/kotlin/fixtures/import-animation/Animation.d.kt.ts +0 -7
  451. package/kotlin/fixtures/import-animation/Animation.kt +0 -80
  452. package/kotlin/fixtures/import-animation/ImportAnimation.native.tsx +0 -13
  453. package/kotlin/fixtures/import-animation/README.md +0 -24
  454. package/kotlin/fixtures/import-animation/app/_layout.tsx +0 -4
  455. package/kotlin/fixtures/import-animation/app/index+spa.tsx +0 -1
  456. package/kotlin/fixtures/import-animation/app/routes.d.ts +0 -18
  457. package/kotlin/fixtures/import-animation/package.json +0 -23
  458. package/kotlin/fixtures/import-animation/tsconfig.json +0 -20
  459. package/kotlin/fixtures/import-animation/vite.config.ts +0 -20
  460. package/kotlin/fixtures/import-drawing/Drawing.d.kt.ts +0 -7
  461. package/kotlin/fixtures/import-drawing/Drawing.kt +0 -101
  462. package/kotlin/fixtures/import-drawing/ImportDrawing.native.tsx +0 -18
  463. package/kotlin/fixtures/import-drawing/README.md +0 -34
  464. package/kotlin/fixtures/import-drawing/app/_layout.tsx +0 -4
  465. package/kotlin/fixtures/import-drawing/app/index+spa.tsx +0 -1
  466. package/kotlin/fixtures/import-drawing/package.json +0 -23
  467. package/kotlin/fixtures/import-drawing/tsconfig.json +0 -20
  468. package/kotlin/fixtures/import-drawing/vite.config.ts +0 -20
  469. package/kotlin/fixtures/import-editor/Editor.d.kt.ts +0 -7
  470. package/kotlin/fixtures/import-editor/Editor.kt +0 -59
  471. package/kotlin/fixtures/import-editor/ImportEditor.native.tsx +0 -23
  472. package/kotlin/fixtures/import-editor/README.md +0 -27
  473. package/kotlin/fixtures/import-editor/app/_layout.tsx +0 -4
  474. package/kotlin/fixtures/import-editor/app/index+spa.tsx +0 -1
  475. package/kotlin/fixtures/import-editor/package.json +0 -23
  476. package/kotlin/fixtures/import-editor/tsconfig.json +0 -20
  477. package/kotlin/fixtures/import-editor/vite.config.ts +0 -20
  478. package/kotlin/fixtures/import-effects/Effects.d.kt.ts +0 -7
  479. package/kotlin/fixtures/import-effects/Effects.kt +0 -87
  480. package/kotlin/fixtures/import-effects/ImportEffects.native.tsx +0 -13
  481. package/kotlin/fixtures/import-effects/README.md +0 -19
  482. package/kotlin/fixtures/import-effects/app/_layout.tsx +0 -4
  483. package/kotlin/fixtures/import-effects/app/index+spa.tsx +0 -1
  484. package/kotlin/fixtures/import-effects/package.json +0 -23
  485. package/kotlin/fixtures/import-effects/tsconfig.json +0 -20
  486. package/kotlin/fixtures/import-effects/vite.config.ts +0 -20
  487. package/kotlin/fixtures/import-layout/ImportLayout.native.tsx +0 -13
  488. package/kotlin/fixtures/import-layout/Layout.d.kt.ts +0 -7
  489. package/kotlin/fixtures/import-layout/Layout.kt +0 -72
  490. package/kotlin/fixtures/import-layout/README.md +0 -24
  491. package/kotlin/fixtures/import-layout/app/_layout.tsx +0 -4
  492. package/kotlin/fixtures/import-layout/app/index+spa.tsx +0 -1
  493. package/kotlin/fixtures/import-layout/package.json +0 -23
  494. package/kotlin/fixtures/import-layout/tsconfig.json +0 -20
  495. package/kotlin/fixtures/import-layout/vite.config.ts +0 -20
  496. package/kotlin/fixtures/import-navigation/ImportNavigation.native.tsx +0 -18
  497. package/kotlin/fixtures/import-navigation/Navigation.d.kt.ts +0 -7
  498. package/kotlin/fixtures/import-navigation/Navigation.kt +0 -104
  499. package/kotlin/fixtures/import-navigation/README.md +0 -31
  500. package/kotlin/fixtures/import-navigation/app/_layout.tsx +0 -4
  501. package/kotlin/fixtures/import-navigation/app/index+spa.tsx +0 -1
  502. package/kotlin/fixtures/import-navigation/package.json +0 -23
  503. package/kotlin/fixtures/import-navigation/tsconfig.json +0 -20
  504. package/kotlin/fixtures/import-navigation/vite.config.ts +0 -20
  505. package/kotlin/fixtures/import-overlays/ImportOverlays.native.tsx +0 -29
  506. package/kotlin/fixtures/import-overlays/Overlays.d.kt.ts +0 -7
  507. package/kotlin/fixtures/import-overlays/Overlays.kt +0 -93
  508. package/kotlin/fixtures/import-overlays/README.md +0 -34
  509. package/kotlin/fixtures/import-overlays/app/_layout.tsx +0 -4
  510. package/kotlin/fixtures/import-overlays/app/index+spa.tsx +0 -1
  511. package/kotlin/fixtures/import-overlays/package.json +0 -23
  512. package/kotlin/fixtures/import-overlays/tsconfig.json +0 -20
  513. package/kotlin/fixtures/import-overlays/vite.config.ts +0 -20
  514. package/kotlin/fixtures/import-resources/ImportResources.native.tsx +0 -18
  515. package/kotlin/fixtures/import-resources/README.md +0 -26
  516. package/kotlin/fixtures/import-resources/Resources.d.kt.ts +0 -6
  517. package/kotlin/fixtures/import-resources/Resources.kt +0 -72
  518. package/kotlin/fixtures/import-resources/app/_layout.tsx +0 -4
  519. package/kotlin/fixtures/import-resources/app/index+spa.tsx +0 -1
  520. package/kotlin/fixtures/import-resources/package.json +0 -23
  521. package/kotlin/fixtures/import-resources/tsconfig.json +0 -20
  522. package/kotlin/fixtures/import-resources/vite.config.ts +0 -20
  523. package/kotlin/fixtures/import-scroll/ImportNested.native.tsx +0 -10
  524. package/kotlin/fixtures/import-scroll/ImportScroll.native.tsx +0 -13
  525. package/kotlin/fixtures/import-scroll/Nested.d.kt.ts +0 -4
  526. package/kotlin/fixtures/import-scroll/Nested.kt +0 -64
  527. package/kotlin/fixtures/import-scroll/README.md +0 -38
  528. package/kotlin/fixtures/import-scroll/Scroll.d.kt.ts +0 -7
  529. package/kotlin/fixtures/import-scroll/Scroll.kt +0 -91
  530. package/kotlin/fixtures/import-scroll/app/_layout.tsx +0 -4
  531. package/kotlin/fixtures/import-scroll/app/index+spa.tsx +0 -1
  532. package/kotlin/fixtures/import-scroll/app/nested+spa.tsx +0 -1
  533. package/kotlin/fixtures/import-scroll/package.json +0 -23
  534. package/kotlin/fixtures/import-scroll/tsconfig.json +0 -20
  535. package/kotlin/fixtures/import-scroll/vite.config.ts +0 -20
  536. package/kotlin/fixtures/import-selection/ImportSelection.native.tsx +0 -44
  537. package/kotlin/fixtures/import-selection/README.md +0 -32
  538. package/kotlin/fixtures/import-selection/Selection.d.kt.ts +0 -8
  539. package/kotlin/fixtures/import-selection/Selection.kt +0 -78
  540. package/kotlin/fixtures/import-selection/app/_layout.tsx +0 -4
  541. package/kotlin/fixtures/import-selection/app/index+spa.tsx +0 -1
  542. package/kotlin/fixtures/import-selection/package.json +0 -23
  543. package/kotlin/fixtures/import-selection/tsconfig.json +0 -20
  544. package/kotlin/fixtures/import-selection/vite.config.ts +0 -20
  545. package/kotlin/fixtures/import-surfaces/ImportSurfaces.native.tsx +0 -13
  546. package/kotlin/fixtures/import-surfaces/README.md +0 -22
  547. package/kotlin/fixtures/import-surfaces/Surfaces.d.kt.ts +0 -7
  548. package/kotlin/fixtures/import-surfaces/Surfaces.kt +0 -64
  549. package/kotlin/fixtures/import-surfaces/app/_layout.tsx +0 -4
  550. package/kotlin/fixtures/import-surfaces/app/index+spa.tsx +0 -1
  551. package/kotlin/fixtures/import-surfaces/package.json +0 -23
  552. package/kotlin/fixtures/import-surfaces/tsconfig.json +0 -20
  553. package/kotlin/fixtures/import-surfaces/vite.config.ts +0 -20
  554. package/kotlin/fixtures/import-values/ImportValues.native.tsx +0 -61
  555. package/kotlin/fixtures/import-values/README.md +0 -28
  556. package/kotlin/fixtures/import-values/Values.d.kt.ts +0 -15
  557. package/kotlin/fixtures/import-values/Values.kt +0 -84
  558. package/kotlin/fixtures/import-values/app/_layout.tsx +0 -4
  559. package/kotlin/fixtures/import-values/app/index+spa.tsx +0 -1
  560. package/kotlin/fixtures/import-values/package.json +0 -23
  561. package/kotlin/fixtures/import-values/tsconfig.json +0 -20
  562. package/kotlin/fixtures/import-values/vite.config.ts +0 -20
  563. package/kotlin/fixtures/kotlin-app/app/build.gradle.kts +0 -30
  564. package/kotlin/fixtures/kotlin-app/app/src/main/AndroidManifest.xml +0 -13
  565. package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/MainActivity.kt +0 -60
  566. package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/ProbeApplication.kt +0 -18
  567. package/kotlin/fixtures/kotlin-app/build.gradle.kts +0 -5
  568. package/kotlin/fixtures/kotlin-app/gradle.properties +0 -4
  569. package/kotlin/fixtures/kotlin-app/settings.gradle.kts +0 -4
  570. package/kotlin/fixtures/kotlin-app-variants/Anim.kt +0 -62
  571. package/kotlin/fixtures/kotlin-app-variants/BarBehavior.kt +0 -38
  572. package/kotlin/fixtures/kotlin-app-variants/BarVisibility.kt +0 -36
  573. package/kotlin/fixtures/kotlin-app-variants/Bitmaps.kt +0 -50
  574. package/kotlin/fixtures/kotlin-app-variants/Browse.kt +0 -73
  575. package/kotlin/fixtures/kotlin-app-variants/Colors.kt +0 -41
  576. package/kotlin/fixtures/kotlin-app-variants/Controls.kt +0 -62
  577. package/kotlin/fixtures/kotlin-app-variants/Drag.kt +0 -56
  578. package/kotlin/fixtures/kotlin-app-variants/Draw.kt +0 -74
  579. package/kotlin/fixtures/kotlin-app-variants/Drawables.kt +0 -53
  580. package/kotlin/fixtures/kotlin-app-variants/Focus.kt +0 -62
  581. package/kotlin/fixtures/kotlin-app-variants/Form.kt +0 -47
  582. package/kotlin/fixtures/kotlin-app-variants/Icons.kt +0 -59
  583. package/kotlin/fixtures/kotlin-app-variants/Ime.kt +0 -53
  584. package/kotlin/fixtures/kotlin-app-variants/Lists.kt +0 -57
  585. package/kotlin/fixtures/kotlin-app-variants/Nav.kt +0 -47
  586. package/kotlin/fixtures/kotlin-app-variants/Note.kt +0 -40
  587. package/kotlin/fixtures/kotlin-app-variants/Overlays.kt +0 -56
  588. package/kotlin/fixtures/kotlin-app-variants/Pan.kt +0 -38
  589. package/kotlin/fixtures/kotlin-app-variants/Pickers.kt +0 -44
  590. package/kotlin/fixtures/kotlin-app-variants/Press.kt +0 -43
  591. package/kotlin/fixtures/kotlin-app-variants/Scroll.kt +0 -63
  592. package/kotlin/fixtures/kotlin-app-variants/Sheet.kt +0 -43
  593. package/kotlin/fixtures/kotlin-app-variants/Strings.kt +0 -49
  594. package/kotlin/fixtures/kotlin-app-variants/Tabs.kt +0 -47
  595. package/kotlin/fixtures/kotlin-app-variants/TextWidth.kt +0 -45
  596. package/kotlin/fixtures/kotlin-app-variants/TransientInsets.kt +0 -50
  597. package/kotlin/fixtures/kotlin-app-variants/Transition.kt +0 -69
  598. package/kotlin/fixtures/kotlin-app-variants/ViewConfig.kt +0 -22
  599. package/kotlin/fixtures/kotlin-app-variants/Widgets.kt +0 -67
  600. package/kotlin/fixtures/runtime-state/RuntimeState.kt +0 -200
  601. package/kotlin/fork/README.md +0 -97
  602. package/kotlin/fork/build.sh +0 -176
  603. package/kotlin/fork/compose-worker-globals.patch +0 -1247
  604. package/kotlin/fork/fork.json +0 -46
  605. package/kotlin/fork/publish.ts +0 -99
  606. package/kotlin/fork/skia-android-shaping.patch +0 -189
  607. package/kotlin/fork/skiko-local.init.gradle +0 -10
  608. package/kotlin/fork/skiko-worker-clock.patch +0 -122
@@ -0,0 +1,43 @@
1
+ export declare function createLayoutSAB(capacity?: number): SharedArrayBuffer;
2
+ export declare function attachLayoutSAB(sab: SharedArrayBuffer, role: 'tenant' | 'shell' | 'compositor'): void;
3
+ export declare function isLayoutSABAttached(): boolean;
4
+ export declare function isLayoutSABWriter(): boolean;
5
+ export declare function allocLayoutSlot(tag: number): number;
6
+ export declare function freeLayoutSlot(slot: number, expectedTag: number): void;
7
+ export declare function setLayoutSlotParent(slot: number, parent: number): void;
8
+ export declare function setLayoutSlotParents(parents: ReadonlyMap<number, number>): void;
9
+ export declare function readLayoutSubtreeRevision(slot: number, tag: number): number;
10
+ export declare function writeLayoutSlot(slot: number, tag: number, x: number, y: number, width: number, height: number, textRevision?: number): void;
11
+ export declare function getLayoutSlotWriteCount(): number;
12
+ export interface LayoutSlotRead {
13
+ x: number;
14
+ y: number;
15
+ width: number;
16
+ height: number;
17
+ }
18
+ export declare function readLayoutSlot(slot: number, tag: number, out: LayoutSlotRead, textRevision?: number): boolean;
19
+ interface SlottedNode {
20
+ id: number;
21
+ __viewTag?: number;
22
+ _layoutSlot?: number;
23
+ _receivedTextLayoutRevision?: number;
24
+ layout: {
25
+ x: number;
26
+ y: number;
27
+ width: number;
28
+ height: number;
29
+ };
30
+ parent: SlottedNode | null;
31
+ }
32
+ export declare function layoutSlotTag(node: {
33
+ id: number;
34
+ __viewTag?: number;
35
+ }): number;
36
+ export declare function adoptNodeLayoutChainFromSAB(node: SlottedNode): boolean;
37
+ export declare const __LAYOUT_SAB_INTERNALS: {
38
+ LAYOUT_SAB_MAGIC: number;
39
+ HEADER_LANES: number;
40
+ ENTRY_LANES: number;
41
+ DEFAULT_LAYOUT_CAPACITY: number;
42
+ };
43
+ export {};
@@ -0,0 +1,23 @@
1
+ import type { SootSimStyle } from './types.d.ts';
2
+ export declare const LIQUID_GLASS_MERGE_MEMBERS = 8;
3
+ export declare function resolveAnimatedLiquidGlassRect(rect: SootSimStyle['_liquidGlassRect']): Parameters<typeof liquidGlassRectExtent>[0] | null | undefined;
4
+ export declare function liquidGlassRectExtent(rect: {
5
+ x: number;
6
+ y: number;
7
+ width: number;
8
+ height: number;
9
+ merge?: {
10
+ spacing: number;
11
+ members: ReadonlyArray<{
12
+ x: number;
13
+ y: number;
14
+ width: number;
15
+ height: number;
16
+ }>;
17
+ };
18
+ }): {
19
+ x: number;
20
+ y: number;
21
+ width: number;
22
+ height: number;
23
+ };
@@ -0,0 +1,9 @@
1
+ export type LiquidGlassType = 'clear' | 'regular';
2
+ export type LiquidGlassRgba = [number, number, number, number];
3
+ export declare const DEFAULT_LIQUID_GLASS_EDGE_AMBIENT = 0.1;
4
+ export declare const LIGHT_DEFAULT_TINT: Record<LiquidGlassType, LiquidGlassRgba>;
5
+ export declare const LIGHT_DEFAULT_DARK_TINT: Record<LiquidGlassType, LiquidGlassRgba>;
6
+ export declare const DARK_DEFAULT_TINT: Record<LiquidGlassType, LiquidGlassRgba>;
7
+ export declare const DARK_DEFAULT_DARK_TINT: Record<LiquidGlassType, LiquidGlassRgba>;
8
+ export declare const LIQUID_GLASS_EDGE_LIGHTING_SKSL: string;
9
+ export declare const LIQUID_GLASS_SKSL: string;
@@ -0,0 +1,283 @@
1
+ import { type DamageRect } from './damage-rect.d.ts';
2
+ import { type GlassInteractionGlow, type GlassMotionScope, type GlassShapeArrow, type GlassShape, type GlassStyle } from './glass-material.d.ts';
3
+ import { resolveAnimatedLiquidGlassRect } from './liquid-glass-rect.d.ts';
4
+ import { type LiquidGlassType } from './liquid-glass-shaders.d.ts';
5
+ import { type FrameDamage } from './render-damage.d.ts';
6
+ import type { CanvasKitRenderingApi as CanvasKit } from './canvaskit-api.d.ts';
7
+ import type { SootSimLensFold } from './types.d.ts';
8
+ import type { Canvas, Surface, RuntimeEffect, Image as SkImage, Shader } from 'canvaskit-wasm';
9
+ type LiquidGlassColorScheme = 'auto' | 'light' | 'dark';
10
+ type ResolvedGlassColorScheme = 'light' | 'dark';
11
+ export declare const DEFAULT_LIQUID_GLASS_CAPTURE_PADDING = 22;
12
+ export declare function glassMaterialDraws<Config extends Pick<LiquidGlassConfig, 'material' | 'adaptiveForeground' | 'glassTint' | 'glassBodyTint'>>(config: Config): config is Config & {
13
+ material: GlassStyle;
14
+ };
15
+ export declare function liquidGlassCapturePadding(config: Pick<LiquidGlassConfig, 'capturePadding' | 'material' | 'interactionIntensity'>, width: number, height: number): number;
16
+ export interface LiquidGlassRimLighting {
17
+ ambient: number;
18
+ key: number;
19
+ kick: number;
20
+ tail?: number;
21
+ lobe?: number;
22
+ endShare?: number;
23
+ endReach?: [number, number];
24
+ topReach?: [number, number, number, number];
25
+ lobeBody?: boolean;
26
+ baseSlope?: number;
27
+ baseChannels?: boolean;
28
+ chromaLift?: number;
29
+ }
30
+ export interface LiquidGlassLensOptics {
31
+ refractionDisplacement: number;
32
+ reflectionDisplacementX: number;
33
+ reflectionDirection: number;
34
+ reflectionEdgeEnd: number;
35
+ reflectionOpacity: number;
36
+ reflectionSharpness: number;
37
+ reflectionPersistence: number;
38
+ }
39
+ export interface TenantGlassBackdrop {
40
+ image: SkImage;
41
+ pixelsPerSurfacePixel: number;
42
+ }
43
+ export interface LiquidGlassConfig {
44
+ material?: GlassStyle;
45
+ materialization?: number;
46
+ materialTint?: {
47
+ gain: number;
48
+ bias: number;
49
+ opacity: number;
50
+ };
51
+ type?: LiquidGlassType;
52
+ colorScheme?: LiquidGlassColorScheme;
53
+ backdropSource?: 'tenant';
54
+ staticBackdrop?: boolean;
55
+ tintColor?: [number, number, number, number];
56
+ tintColorDark?: [number, number, number, number];
57
+ darkTintColor?: [number, number, number, number];
58
+ glassTint?: [number, number, number, number];
59
+ glassBodyTint?: [number, number, number, number];
60
+ tintShade?: {
61
+ light: [number, number];
62
+ dark: [number, number];
63
+ };
64
+ blurSigma?: number;
65
+ cornerRadius?: number;
66
+ cornerRadii?: [number, number, number, number];
67
+ shapeArrow?: GlassShapeArrow;
68
+ clipToStyleCorners?: boolean;
69
+ outerRim?: {
70
+ width: number;
71
+ wallOpacity: number;
72
+ endOpacity: number;
73
+ };
74
+ bodyOpacity?: number;
75
+ thickness?: number;
76
+ lightAngle?: number;
77
+ lightIntensity?: number;
78
+ ambientStrength?: number;
79
+ interactive?: boolean;
80
+ capturePadding?: number;
81
+ interactionIntensity?: number;
82
+ interactionGlow?: GlassInteractionGlow;
83
+ chromaticAberration?: number;
84
+ refractionInset?: number;
85
+ lensStrength?: number;
86
+ refractionExponent?: number;
87
+ magnification?: number;
88
+ refractionSampleOffset?: [number, number];
89
+ rimFold?: [number, number, number];
90
+ lensOptics?: LiquidGlassLensOptics;
91
+ measuredTransfer?: number;
92
+ bodyLift?: [number, number];
93
+ bodyLiftOutside?: {
94
+ lift: [number, number];
95
+ chroma?: [number, number];
96
+ x: number;
97
+ y: number;
98
+ width: number;
99
+ height: number;
100
+ radius: number;
101
+ scaleX: number;
102
+ scaleY: number;
103
+ };
104
+ darkContextLean?: number;
105
+ detailLift?: number;
106
+ tallNarrowSigma?: number;
107
+ refractionAnisotropy?: [number, number];
108
+ refractionZone?: number;
109
+ refractionSharpShare?: number;
110
+ softFold?: [number, number];
111
+ foldLimit?: [number, number];
112
+ bodyCurve?: {
113
+ level: [number, number, number, number];
114
+ chromaGain: number;
115
+ rim: {
116
+ base: number;
117
+ perLuma: number;
118
+ perLevel: number;
119
+ falloff: number;
120
+ horizontalOnly?: boolean;
121
+ perBody?: number;
122
+ centre?: [number, number];
123
+ linear?: boolean;
124
+ tail?: [number, number];
125
+ soft?: boolean;
126
+ wrap?: [number, number, number, number];
127
+ };
128
+ };
129
+ bodyCurveDark?: LiquidGlassConfig['bodyCurve'];
130
+ accessibleBody?: Record<'reduceTransparency' | 'increaseContrast', Record<ResolvedGlassColorScheme, [number, number, number]>>;
131
+ vibrancy?: number;
132
+ vibrancyDark?: number;
133
+ vibrancyLuma?: 'rec601' | 'rec709';
134
+ refractVariant?: 'soft' | 'lens' | 'ends';
135
+ edgeAmbient?: number;
136
+ rimLighting?: {
137
+ light: LiquidGlassRimLighting;
138
+ dark: LiquidGlassRimLighting;
139
+ };
140
+ rimWidth?: number;
141
+ continuousCorners?: boolean;
142
+ contourRing?: Record<ResolvedGlassColorScheme, LiquidGlassContourRing>;
143
+ sharedMaterialProbe?: {
144
+ key: string;
145
+ offsetX: number;
146
+ offsetY: number;
147
+ width: number;
148
+ height: number;
149
+ absolute?: boolean;
150
+ };
151
+ merge?: LiquidGlassMerge;
152
+ adaptiveForeground?: {
153
+ lightMaterial: {
154
+ baseLevel: number;
155
+ levelLumaSlope: number;
156
+ chromaGain: number;
157
+ };
158
+ darkMaterial: {
159
+ baseLevel: number;
160
+ levelLumaSlope: number;
161
+ chromaGain: number;
162
+ };
163
+ };
164
+ shadow?: LiquidGlassShadow;
165
+ tallShadow?: LiquidGlassShadow;
166
+ contour?: readonly LiquidGlassShadow[];
167
+ }
168
+ export interface LiquidGlassMerge {
169
+ key: string;
170
+ spacing: number;
171
+ members: ReadonlyArray<{
172
+ x: number;
173
+ y: number;
174
+ width: number;
175
+ height: number;
176
+ radius: number;
177
+ earlier: boolean;
178
+ folded: boolean;
179
+ }>;
180
+ bounds: {
181
+ x: number;
182
+ y: number;
183
+ width: number;
184
+ height: number;
185
+ };
186
+ centre: {
187
+ x: number;
188
+ y: number;
189
+ };
190
+ }
191
+ export { LIQUID_GLASS_MERGE_MEMBERS, liquidGlassRectExtent, resolveAnimatedLiquidGlassRect, } from './liquid-glass-rect.d.ts';
192
+ export type MenuLiquidGlassConfig = LiquidGlassConfig & {
193
+ vibrancy: number;
194
+ blurSigma: number;
195
+ };
196
+ export interface LiquidGlassShadow {
197
+ opacity: number;
198
+ opacityDark: number;
199
+ sigma: number;
200
+ offsetY?: number;
201
+ spread?: number | readonly [x: number, y: number];
202
+ afterCapture?: boolean;
203
+ stroke?: number;
204
+ continuous?: boolean;
205
+ }
206
+ export interface LiquidGlassContourRing {
207
+ end: readonly [row0: number, row1: number];
208
+ wall: readonly [row0: number, row1: number];
209
+ slope: number;
210
+ knee?: readonly [luma: number, gain: number];
211
+ highlight?: {
212
+ height: number;
213
+ angle: number;
214
+ spread: number;
215
+ bias: number;
216
+ softness: number;
217
+ };
218
+ }
219
+ export interface LiquidGlassEdgeConfig {
220
+ cornerRadius?: number;
221
+ lightAngle?: number;
222
+ lightIntensity?: number;
223
+ opacity?: number;
224
+ }
225
+ export declare const LIQUID_GLASS_REFRACT_UNIFORM_OFFSETS: Readonly<Record<string, number>>;
226
+ export declare const LIQUID_GLASS_REFRACT_UNIFORM_FLOAT_COUNT: number;
227
+ export declare function drawWithSdfDisplacement(opts: {
228
+ ck: CanvasKit;
229
+ canvas: Canvas;
230
+ parentSurface: Surface;
231
+ x: number;
232
+ y: number;
233
+ w: number;
234
+ h: number;
235
+ dpr: number;
236
+ first: GlassShape;
237
+ second: GlassShape;
238
+ height: number;
239
+ amount: number;
240
+ gaussianRadius: number;
241
+ drawIntoOffscreen: (canvas: Canvas) => void;
242
+ }): void;
243
+ export declare function glassSurfaceId(surface: Surface): number;
244
+ export declare function disposeLiquidGlassSurface(surface: Surface): void;
245
+ export declare function drawWithLensFold(opts: {
246
+ ck: CanvasKit;
247
+ canvas: Canvas;
248
+ parentSurface: Surface;
249
+ x: number;
250
+ y: number;
251
+ w: number;
252
+ h: number;
253
+ dpr: number;
254
+ fold: SootSimLensFold;
255
+ drawIntoOffscreen: (offscreenCanvas: Canvas) => void;
256
+ }): boolean;
257
+ export declare function resetGlassFrameCache(frameTimeMs: number, surface?: Surface, damage?: FrameDamage | null, dpr?: number): void;
258
+ export declare function liquidGlassFrameEpoch(): number;
259
+ export declare function beginGlassJsFrame(frameTimeMs: number): void;
260
+ export declare function replayedLiquidGlassSamples(ck: CanvasKit): {
261
+ bounds: DamageRect | null;
262
+ moved: boolean;
263
+ };
264
+ export declare function initLiquidGlass(ck: CanvasKit): RuntimeEffect[];
265
+ export declare function disposeLiquidGlass(): void;
266
+ export declare function makeLiquidGlassAdaptiveForegroundShader(ck: CanvasKit, backdropCacheKey: number, foregroundOffset: [number, number]): Shader | null;
267
+ export declare function liquidGlassMaterialTintShader(ck: CanvasKit, glassId: string | number, light: Float32Array, dark: Float32Array, base: Float32Array | null): Shader | null;
268
+ export declare function liquidGlassSharedMaterialShader(ck: CanvasKit, surface: Surface, key: string, light: Shader, dark: Shader): {
269
+ shader: Shader;
270
+ active: boolean;
271
+ } | null;
272
+ export declare function liquidGlassPrewarmShapeCount(config: LiquidGlassConfig): 1 | 3;
273
+ export declare function prewarmLiquidGlassPrograms(ck: CanvasKit, sourceSurface: Surface, configs: readonly LiquidGlassConfig[], dpr?: number, flush?: boolean, shapeIndex?: 0 | 1 | 2): {
274
+ ok: boolean;
275
+ ms: number;
276
+ };
277
+ export declare function drawLiquidGlassEdge(ck: CanvasKit, canvas: Canvas, dpr: number, x: number, y: number, w: number, h: number, config: LiquidGlassEdgeConfig): void;
278
+ export declare const LIQUID_GLASS_MOVING = 1;
279
+ export declare const LIQUID_GLASS_REPLAYABLE = 2;
280
+ export declare function beginLiquidGlassProgram(ck: CanvasKit, slot: number, id: number, width: number, height: number, x?: number, y?: number, fixed?: boolean, rect?: NonNullable<ReturnType<typeof resolveAnimatedLiquidGlassRect>>, capturePadding?: number): void;
281
+ export declare function endLiquidGlassProgram(ck: CanvasKit): void;
282
+ export declare function liquidGlassProgramCommand(ck: CanvasKit, kind: number, x: number, y: number, width: number, height: number, values?: readonly number[]): void;
283
+ export declare function drawLiquidGlass(ck: CanvasKit, canvas: Canvas, surface: Surface, dpr: number, x: number, y: number, w: number, h: number, config: LiquidGlassConfig, backdropCacheKey?: string | number, tenantBackdrop?: TenantGlassBackdrop, portalPass?: boolean, layered?: boolean, motionScope?: GlassMotionScope | null): number;
@@ -0,0 +1,6 @@
1
+ export declare const LIVE: {
2
+ pictures: number;
3
+ paragraphs: number;
4
+ yogaNodes: number;
5
+ };
6
+ export declare function readLiveObjectCounts(): typeof LIVE;
@@ -0,0 +1,32 @@
1
+ import { type SootSimNode } from './node.d.ts';
2
+ import type { CanvasKitRenderingApi } from './canvaskit-api.d.ts';
3
+ import type { LottieIntent, LottieLifecycleEvent, SootSimLottieState } from './lottie-types.d.ts';
4
+ export type { LottieColorFilter, SootSimLottieState } from './lottie-types.d.ts';
5
+ export declare function setLottieLifecycleEventSink(sink: ((event: LottieLifecycleEvent) => void) | null): void;
6
+ export declare function ensureLottieState(node: SootSimNode): SootSimLottieState;
7
+ export declare function setLottiePaintContinuation(cb: ((node: SootSimNode) => void) | null): void;
8
+ export declare function requestLottiePaint(node: SootSimNode): void;
9
+ export interface LottieOwnerDiagnostics {
10
+ nodes: {
11
+ nodeId: number;
12
+ source: string;
13
+ sourceGen: number;
14
+ status: SootSimLottieState['status'];
15
+ isPlaying: boolean;
16
+ animationDeleted: boolean | null;
17
+ }[];
18
+ released: {
19
+ source: string;
20
+ deleted: boolean;
21
+ }[];
22
+ }
23
+ export declare function lottieOwnerDiagnostics(): LottieOwnerDiagnostics;
24
+ export declare function clearLottieSource(node: SootSimNode): void;
25
+ export declare function syncLottieOwnerNode(node: SootSimNode, canvasKit: CanvasKitRenderingApi, props: Record<string, unknown>): SootSimLottieState;
26
+ export declare function applyLottieIntent(node: SootSimNode, intent: LottieIntent): boolean;
27
+ export declare function disposeLottieNode(node: SootSimNode): void;
28
+ export declare function advanceLottieAnimations(now: number, onChanged?: (node: SootSimNode) => void): {
29
+ anyChange: boolean;
30
+ };
31
+ export declare function hasActiveLottieAnimations(): boolean;
32
+ export declare function notifyLottieRendered(node: SootSimNode): void;
@@ -0,0 +1,138 @@
1
+ import type { ManagedSkottieAnimation } from 'canvaskit-wasm';
2
+ export interface LottieColorFilter {
3
+ keypath?: string;
4
+ color?: unknown;
5
+ }
6
+ export interface DotLottiePlayback {
7
+ platform: 'ios' | 'android';
8
+ frame: number;
9
+ mode: number;
10
+ direction: number;
11
+ playback: 'stopped' | 'paused' | 'playing';
12
+ frozen: boolean;
13
+ interpolation: boolean;
14
+ activeAnimationId: string;
15
+ marker: string;
16
+ configuredMarker: string;
17
+ markers: Record<string, [number, number]>;
18
+ segment: [number, number] | null;
19
+ appliedProps: Record<string, unknown>;
20
+ pendingEvent?: 'loop' | 'complete';
21
+ restartLoop?: boolean;
22
+ renderedFrame?: number;
23
+ viewSize?: [number, number, number];
24
+ resize?: [number, number];
25
+ }
26
+ export interface SootSimLottieState {
27
+ dotLottie?: DotLottiePlayback;
28
+ animation: ManagedSkottieAnimation | null;
29
+ sourceKey: string | null;
30
+ surfaceId: string | null;
31
+ generation: number;
32
+ sourceGen: number;
33
+ lastIntentSeq: number;
34
+ lastMetricsSeq: number;
35
+ configuredSourceKey: string | null;
36
+ pendingIntents: LottieIntent[];
37
+ checkpointRevision: number;
38
+ restoredCheckpointRevision: number;
39
+ status: 'empty' | 'pending' | 'ready' | 'failed';
40
+ error: string | null;
41
+ durationMs: number;
42
+ fps: number;
43
+ currentTimeMs: number;
44
+ segmentStartMs: number;
45
+ segmentEndMs: number | null;
46
+ isPlaying: boolean;
47
+ loop: boolean;
48
+ speed: number;
49
+ appliedSpeed: number | null;
50
+ appliedLoop: boolean | null;
51
+ wasPausedByZeroSpeed: boolean;
52
+ debugSeen?: boolean;
53
+ resizeMode: 'cover' | 'contain' | 'center';
54
+ colorFilters: LottieColorFilter[];
55
+ colorFiltersKey: string;
56
+ appliedColorFiltersKey: string | null;
57
+ appliedProgress: number | null;
58
+ appliedProgressSourceKey: string | null;
59
+ autoPlay: boolean;
60
+ previousAutoPlay: boolean;
61
+ autoPlaySourceKey: string | null;
62
+ lastTickMs: number | null;
63
+ loopCount: number;
64
+ }
65
+ export type LottieIntentKind = 'play' | 'pause' | 'resume' | 'reset' | 'seekFrame' | 'segment' | 'speed' | 'loop' | 'playMode' | 'metrics' | 'freeze' | 'unfreeze' | 'marker' | 'animation' | 'resize';
66
+ export interface LottieIntent {
67
+ nodeId: number;
68
+ sourceGen: number;
69
+ intentSeq: number;
70
+ kind: LottieIntentKind;
71
+ startFrame?: number;
72
+ endFrame?: number;
73
+ frame?: number;
74
+ speed?: number;
75
+ loop?: boolean;
76
+ mode?: number;
77
+ name?: string;
78
+ width?: number;
79
+ height?: number;
80
+ }
81
+ export type LottieLifecyclePhase = 'loaded' | 'failed' | 'finished' | 'checkpoint' | 'metrics' | 'dotLottie';
82
+ export interface LottiePlaybackCheckpoint {
83
+ dotLottie?: DotLottiePlayback;
84
+ loopCount?: number;
85
+ revision: number;
86
+ sourceGen: number;
87
+ intentSeq: number;
88
+ capturedAtMs: number;
89
+ currentTimeMs: number;
90
+ segmentStartMs: number;
91
+ segmentEndMs: number | null;
92
+ isPlaying: boolean;
93
+ speed: number;
94
+ loop: boolean;
95
+ }
96
+ export declare function isLottiePlaybackCheckpoint(value: unknown): value is LottiePlaybackCheckpoint;
97
+ export interface LottieMetrics {
98
+ requestSeq: number;
99
+ durationMs: number;
100
+ fps: number;
101
+ currentTimeMs: number;
102
+ speed: number;
103
+ isPlaying: boolean;
104
+ status: 'empty' | 'pending' | 'ready' | 'failed';
105
+ loopCount: number;
106
+ playback?: 'stopped' | 'paused' | 'playing';
107
+ activeAnimationId?: string;
108
+ }
109
+ export declare function isLottieMetrics(value: unknown): value is LottieMetrics;
110
+ export interface LottieLifecycleEvent {
111
+ surfaceId: string;
112
+ generation: number;
113
+ nodeId: number;
114
+ sourceGen: number;
115
+ phase: LottieLifecyclePhase;
116
+ durationMs?: number;
117
+ fps?: number;
118
+ error?: string;
119
+ isCancelled?: boolean;
120
+ checkpoint?: LottiePlaybackCheckpoint;
121
+ metrics?: LottieMetrics;
122
+ dotEvent?: string;
123
+ frameNo?: number;
124
+ loopCount?: number;
125
+ }
126
+ export interface SootSimLottieIntentState {
127
+ pendingMetrics: Map<number, {
128
+ resolve: (value: LottieMetrics) => void;
129
+ reject: (error: Error) => void;
130
+ }>;
131
+ sourceGen: number;
132
+ intentSeq: number;
133
+ sourceKey: string | null;
134
+ commandFrame: number | undefined;
135
+ }
136
+ export declare function isLottieIntent(value: unknown): value is LottieIntent;
137
+ export declare function isLottieLifecycleEvent(value: unknown): value is LottieLifecycleEvent;
138
+ export declare const DOT_LOTTIE_ANDROID_COMMANDS: Readonly<Record<string, number>>;
@@ -0,0 +1,27 @@
1
+ import { hostLedger } from './host-composite.d.ts';
2
+ import { getImageLoaderStats } from './image-loader.d.ts';
3
+ import { readLiveObjectCounts } from './live-object-counts.d.ts';
4
+ import type { CanvasKitRenderingApi as CanvasKit } from './canvaskit-api.d.ts';
5
+
6
+ export declare function trackSwiftMemory(memory: WebAssembly.Memory, initialBytes: number): () => void;
7
+ declare function readJsHeap(): {
8
+ usedJSHeapSize: number;
9
+ totalJSHeapSize: number;
10
+ jsHeapSizeLimit: number;
11
+ } | null;
12
+ export interface EngineMemoryCounts {
13
+ nodesRegistered: number;
14
+ nodesDetached: number;
15
+ detachedTypes: Record<string, number>;
16
+ objects: ReturnType<typeof readLiveObjectCounts> & ReturnType<typeof hostLedger>;
17
+ activeNativeAnimations: number;
18
+ imageLoader: ReturnType<typeof getImageLoaderStats>;
19
+ workerHeap: ReturnType<typeof readJsHeap>;
20
+ wasmHeapBytes: number | null;
21
+ swiftWasmHeapBytes: number | null;
22
+ swiftWasmGrowthBytes: number | null;
23
+ nativePreviewLastApply: 'hot' | 'cold' | null;
24
+ orphansReleased: number | null;
25
+ }
26
+ export declare function collectEngineMemoryCounts(canvasKit: CanvasKit | null): EngineMemoryCounts;
27
+ export {};
@@ -0,0 +1,108 @@
1
+ import type { MetalShaderFunction } from './metalShaderContract.d.ts';
2
+ export type MetalDimensions = readonly [number, number, number];
3
+ export type MetalRenderPipeline = {
4
+ id: number;
5
+ vertex: string;
6
+ fragment: string;
7
+ };
8
+ export type MetalResourceBytes = {
9
+ index: number;
10
+ bytes: string;
11
+ };
12
+ export type MetalTextureBytes = MetalResourceBytes & {
13
+ width: number;
14
+ height: number;
15
+ };
16
+ export type MetalSamplerBinding = {
17
+ index: number;
18
+ minFilter: 'nearest' | 'linear';
19
+ magFilter: 'nearest' | 'linear';
20
+ addressU: 'clamp-to-edge' | 'repeat';
21
+ addressV: 'clamp-to-edge' | 'repeat';
22
+ };
23
+ export type MetalResourceBindings = {
24
+ buffers: MetalResourceBytes[];
25
+ textures: MetalTextureBytes[];
26
+ samplers: MetalSamplerBinding[];
27
+ };
28
+ export type MetalRenderDraw = {
29
+ start: number;
30
+ count: number;
31
+ instances: number;
32
+ vertex: MetalResourceBindings;
33
+ fragment: MetalResourceBindings;
34
+ };
35
+ export type MetalDirectOperation = {
36
+ type: 'library';
37
+ source: string;
38
+ } | {
39
+ type: 'library';
40
+ metallib: string;
41
+ } | {
42
+ type: 'release';
43
+ id: number;
44
+ } | {
45
+ type: 'pipeline';
46
+ id: number;
47
+ function: string;
48
+ } | ({
49
+ type: 'renderPipeline';
50
+ } & MetalRenderPipeline) | {
51
+ type: 'wait';
52
+ id: number;
53
+ } | {
54
+ type: 'releaseCommand';
55
+ id: number;
56
+ } | (MetalResourceBindings & {
57
+ type: 'compute';
58
+ id: number;
59
+ function: string;
60
+ threads: MetalDimensions;
61
+ threadgroup: MetalDimensions;
62
+ }) | {
63
+ type: 'render';
64
+ pipeline: MetalRenderPipeline | null;
65
+ width: number;
66
+ height: number;
67
+ bytes: string;
68
+ load: 'load' | 'clear';
69
+ clear: readonly [number, number, number, number];
70
+ draws: MetalRenderDraw[];
71
+ };
72
+ export type MetalDirectResult = {
73
+ kind: 'library';
74
+ id: number;
75
+ functions: MetalShaderFunction[];
76
+ } | {
77
+ kind: 'released';
78
+ } | {
79
+ kind: 'pipeline';
80
+ } | {
81
+ kind: 'completed';
82
+ buffers: MetalResourceBytes[];
83
+ textures?: MetalResourceBytes[];
84
+ };
85
+ export type MetalDirectResponse = {
86
+ ok: true;
87
+ result: MetalDirectResult;
88
+ } | {
89
+ ok: false;
90
+ domain: string;
91
+ code: number;
92
+ error: string;
93
+ };
94
+ export declare function parseMetalDirectResponse(value: unknown): MetalDirectResponse;
95
+ export declare function metalDirectFailure(error: unknown): MetalDirectResponse;
96
+ export declare const METAL_SYNC_REPLY_BYTES: number;
97
+ export type MetalCommandOperation = Extract<MetalDirectOperation, {
98
+ type: 'compute' | 'render';
99
+ }>;
100
+ export declare function isMetalDimensions(value: unknown): value is MetalDimensions;
101
+ export declare function isMetalDirectOperation(value: unknown): value is MetalDirectOperation;
102
+ export declare function completeMetalSyncReply(reply: SharedArrayBuffer, response: MetalDirectResponse): void;
103
+ declare let service: ((operation: MetalDirectOperation) => MetalDirectResponse) | undefined;
104
+ declare let submit: ((operation: MetalCommandOperation, completed: (response: MetalDirectResponse) => void) => number) | undefined;
105
+ export declare function setMetalDirectHostService(next: typeof service, nextSubmit?: typeof submit): void;
106
+ export declare function submitMetalDirectCommand(operation: MetalCommandOperation, completed: (response: MetalDirectResponse) => void): number;
107
+ export declare function callMetalDirectHostSync(operation: MetalDirectOperation): MetalDirectResponse;
108
+ export {};