peachsim 0.1.1641 → 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 (618) hide show
  1. package/README.md +12 -0
  2. package/cli/app-bundle-resources.ts +57 -0
  3. package/cli/app-catalog.ts +1 -1
  4. package/cli/app-fonts.ts +11 -80
  5. package/cli/app-splash.ts +18 -12
  6. package/cli/bridge-flow-runner.ts +11 -7
  7. package/cli/cloud-client.ts +10 -13
  8. package/cli/command-registry.ts +13 -4
  9. package/cli/commands/box.ts +4 -4
  10. package/cli/commands/control.ts +105 -53
  11. package/cli/commands/coverage-parser.ts +67 -0
  12. package/cli/commands/coverage.ts +550 -0
  13. package/cli/commands/debug.ts +9 -18
  14. package/cli/commands/desktop.ts +19 -7
  15. package/cli/commands/device.ts +14 -9
  16. package/cli/commands/guest-host.ts +6 -10
  17. package/cli/commands/inspect/core.ts +81 -17
  18. package/cli/commands/inspect.ts +13 -8
  19. package/cli/commands/kotlin.ts +2 -2
  20. package/cli/commands/maestro-compare.ts +1 -1
  21. package/cli/commands/platform.ts +20 -11
  22. package/cli/commands/preview.ts +16 -18
  23. package/cli/commands/runtime.ts +3 -2
  24. package/cli/commands/screenshot-layers.ts +1 -1
  25. package/cli/commands/screenshot.ts +1 -1
  26. package/cli/commands/serve.ts +5 -1
  27. package/cli/commands/support.ts +4 -4
  28. package/cli/commands/three-mode.ts +22 -15
  29. package/cli/commands/upload.ts +44 -45
  30. package/cli/current-sim.ts +38 -0
  31. package/cli/desktop-companion.ts +36 -8
  32. package/cli/device-option.ts +1 -1
  33. package/cli/drivers/playwright.ts +40 -0
  34. package/cli/drivers/types.ts +4 -0
  35. package/cli/help-core.ts +1 -1
  36. package/cli/internal-child.ts +2 -1
  37. package/cli/main.ts +9 -3
  38. package/cli/outbound-endpoints.ts +15 -5
  39. package/cli/output-redaction.ts +39 -14
  40. package/cli/remote-simulators.ts +4 -1
  41. package/cli/scene-video.ts +5 -2
  42. package/cli/send-to-box.ts +7 -10
  43. package/cli/telemetry.ts +1 -1
  44. package/cli/ws-bridge.ts +8 -1
  45. package/detox/attempt-events.cjs +3 -1
  46. package/detox/attempt-events.d.cts +1 -1
  47. package/detox/expectations.ts +108 -99
  48. package/detox/frame-offset.d.mts +6 -0
  49. package/detox/frame-offset.mjs +35 -0
  50. package/detox/gestures.ts +6 -18
  51. package/detox/index.ts +169 -101
  52. package/detox/jest-preset.cjs +1 -3
  53. package/detox/jest-transform.cjs +4 -0
  54. package/detox/matchers.ts +3 -0
  55. package/detox/motion-change.cjs +52 -118
  56. package/detox/motion-change.d.cts +6 -27
  57. package/detox/motion-leg-starts.cjs +20 -0
  58. package/detox/motion-leg-starts.d.cts +8 -0
  59. package/dist-lib/agent-daemon-client.cjs +1 -1
  60. package/dist-lib/agent-events.cjs +1 -1
  61. package/dist-lib/attached-projects.cjs +1 -1
  62. package/dist-lib/auth/shared-session.cjs +1 -1
  63. package/dist-lib/backend-origin.cjs +3 -3
  64. package/dist-lib/beta.cjs +1 -1
  65. package/dist-lib/beta.mjs +1 -1
  66. package/dist-lib/bridge-constants.cjs +1 -1
  67. package/dist-lib/bridge-contract-input.cjs +65 -1
  68. package/dist-lib/bridge-contract-input.mjs +63 -1
  69. package/dist-lib/bridge-contract.cjs +19 -1
  70. package/dist-lib/bridge-contract.mjs +17 -1
  71. package/dist-lib/bundle-channel.cjs +38332 -14940
  72. package/dist-lib/capture-contract.cjs +1 -1
  73. package/dist-lib/capture-contract.mjs +1 -1
  74. package/dist-lib/cloud-contract.cjs +1 -1
  75. package/dist-lib/cloud-contract.mjs +1 -1
  76. package/dist-lib/cloud-test-args.cjs +1 -1
  77. package/dist-lib/cloud-test-args.mjs +1 -1
  78. package/dist-lib/cloud.cjs +1 -1
  79. package/dist-lib/cloud.mjs +1 -1
  80. package/dist-lib/config.cjs +1 -1
  81. package/dist-lib/config.mjs +5 -3
  82. package/dist-lib/detox/index.cjs +1247 -4511
  83. package/dist-lib/detox/jest-preset.cjs +1 -3
  84. package/dist-lib/detox/jest-transform.cjs +4 -0
  85. package/dist-lib/dev-bundle-resolution.cjs +28 -24
  86. package/dist-lib/expo-swift-bundle.cjs +35243 -13172
  87. package/dist-lib/expo-swift-metadata.cjs +1 -1
  88. package/dist-lib/expo-swift-metadata.mjs +1 -1
  89. package/dist-lib/home-paths.cjs +1 -1
  90. package/dist-lib/host/bridge-host.cjs +45285 -63163
  91. package/dist-lib/host/fetch-proxy-handler.cjs +3544 -11
  92. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  93. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  94. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  95. package/dist-lib/host/websocket-proxy.cjs +1 -1
  96. package/dist-lib/index.cjs +1997 -2069
  97. package/dist-lib/jump-to-source-babel.cjs +1 -1
  98. package/dist-lib/jump-to-source-native.cjs +1 -1
  99. package/dist-lib/kotlin-host.cjs +2 -2
  100. package/dist-lib/menu.cjs +14 -6
  101. package/dist-lib/menu.mjs +14 -6
  102. package/dist-lib/metro-fingerprint-registry.cjs +1 -1
  103. package/dist-lib/metro-fingerprint-registry.mjs +1 -1
  104. package/dist-lib/metro-production-bundle.cjs +1 -1
  105. package/dist-lib/metro-production-bundle.mjs +1 -1
  106. package/dist-lib/metro.cjs +468 -563
  107. package/dist-lib/native-app-identity-project.cjs +128 -292
  108. package/dist-lib/native-app-identity-project.mjs +1262 -51
  109. package/dist-lib/native-app-identity.cjs +8 -3
  110. package/dist-lib/native-app-identity.mjs +8 -3
  111. package/dist-lib/native-firebase-metadata.cjs +1 -1
  112. package/dist-lib/native-firebase-metadata.mjs +1 -1
  113. package/dist-lib/plist.cjs +2 -244
  114. package/dist-lib/plist.mjs +1 -1
  115. package/dist-lib/profiles.cjs +1 -1
  116. package/dist-lib/public-brand.cjs +1 -1
  117. package/dist-lib/public-origins-lib-esm.json +290 -0
  118. package/dist-lib/public-origins-lib-static.json +1 -0
  119. package/dist-lib/public-origins-lib.json +1852 -0
  120. package/dist-lib/react-native-host-modules.cjs +1 -1
  121. package/dist-lib/react-native-host-modules.mjs +1 -1
  122. package/dist-lib/scripts/dev-server-scanner.cjs +14 -253
  123. package/dist-lib/sdk.cjs +84 -16
  124. package/dist-lib/sdk.mjs +82 -15
  125. package/dist-lib/skills.cjs +51248 -75450
  126. package/dist-lib/swift-compile.cjs +26154 -1245
  127. package/dist-lib/swift-compile.mjs +26151 -1230
  128. package/dist-lib/swift-package.cjs +79 -1
  129. package/dist-lib/swift-package.mjs +75 -1
  130. package/dist-lib/swift-submit.cjs +1 -1
  131. package/dist-lib/swift-submit.mjs +1 -1
  132. package/dist-lib/swift-toolchain.cjs +1 -1
  133. package/dist-lib/swift.cjs +1 -1
  134. package/dist-lib/vite-swift.cjs +34394 -12323
  135. package/dist-lib/vite.cjs +373 -298
  136. package/dist-lib/worklet-executable.cjs +1 -1
  137. package/dist-lib/worklet-executable.mjs +1 -1
  138. package/dist-types/packages/peach-compat/src/engine-config.d.ts +2 -0
  139. package/dist-types/packages/peach-compat/src/stubs/form-sheet-spring.d.ts +9 -0
  140. package/dist-types/packages/peach-compat/src/stubs/native-evaluation-lease.d.ts +47 -0
  141. package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-cookies.d.ts +113 -0
  142. package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-gesture-handler.d.ts +154 -0
  143. package/dist-types/packages/peach-compat/src/stubs/screen-transition-math.d.ts +756 -0
  144. package/dist-types/packages/peach-compat/src/stubs/transition-scalar.d.ts +25 -0
  145. package/dist-types/packages/peach-engine/src/billing/plans.d.ts +64 -0
  146. package/dist-types/packages/peach-engine/src/browser-page-target.d.ts +2 -0
  147. package/dist-types/packages/peach-engine/src/bundle-platform-url.d.ts +3 -0
  148. package/dist-types/packages/peach-engine/src/capture/browser-accessibility-host.d.ts +3 -0
  149. package/dist-types/packages/peach-engine/src/capture/browser-composite.d.ts +55 -0
  150. package/dist-types/packages/peach-engine/src/capture/browserAccessibilityContract.d.ts +27 -0
  151. package/dist-types/packages/peach-engine/src/capture/nativeScreenCaptureContract.d.ts +22 -0
  152. package/dist-types/packages/peach-engine/src/cli-companion.d.ts +36 -0
  153. package/dist-types/packages/peach-engine/src/components/native-ui/webview-frame-bridge.d.ts +34 -0
  154. package/dist-types/packages/peach-engine/src/config.d.ts +5 -0
  155. package/dist-types/packages/peach-engine/src/engine/android-stretch-effect.d.ts +57 -0
  156. package/dist-types/packages/peach-engine/src/engine/animated-driven-style.d.ts +47 -0
  157. package/dist-types/packages/peach-engine/src/engine/animated-value.d.ts +5 -0
  158. package/dist-types/packages/peach-engine/src/engine/animated.d.ts +195 -0
  159. package/dist-types/packages/peach-engine/src/engine/animation-clockContract.d.ts +15 -0
  160. package/dist-types/packages/peach-engine/src/engine/animation-graph.d.ts +148 -0
  161. package/dist-types/packages/peach-engine/src/engine/app-catalog-wire.d.ts +10 -0
  162. package/dist-types/packages/peach-engine/src/engine/app-font-registry.d.ts +87 -0
  163. package/dist-types/packages/peach-engine/src/engine/attributed-paragraph-paint.d.ts +7 -0
  164. package/dist-types/packages/peach-engine/src/engine/attributed-paragraph.d.ts +123 -0
  165. package/dist-types/packages/peach-engine/src/engine/audioContract.d.ts +16 -0
  166. package/dist-types/packages/peach-engine/src/engine/canvaskit-api.d.ts +93 -0
  167. package/dist-types/packages/peach-engine/src/engine/canvaskit-renderer.d.ts +216 -0
  168. package/dist-types/packages/peach-engine/src/engine/config-plugin-fonts.d.ts +40 -0
  169. package/dist-types/packages/peach-engine/src/engine/config-plugin-splash.d.ts +25 -0
  170. package/dist-types/packages/peach-engine/src/engine/cull-visibility.d.ts +44 -0
  171. package/dist-types/packages/peach-engine/src/engine/damage-rect.d.ts +19 -0
  172. package/dist-types/packages/peach-engine/src/engine/engine-resource.d.ts +6 -0
  173. package/dist-types/packages/peach-engine/src/engine/expo-manifest.d.ts +5 -0
  174. package/dist-types/packages/peach-engine/src/engine/fiber-debug-metadata.d.ts +30 -0
  175. package/dist-types/packages/peach-engine/src/engine/font-config.d.ts +139 -0
  176. package/dist-types/packages/peach-engine/src/engine/generated/sf-pro-font.d.ts +1 -0
  177. package/dist-types/packages/peach-engine/src/engine/glass-material.d.ts +31 -0
  178. package/dist-types/packages/peach-engine/src/engine/host-composite.d.ts +100 -0
  179. package/dist-types/packages/peach-engine/src/engine/hosted-semantics.d.ts +49 -0
  180. package/dist-types/packages/peach-engine/src/engine/image-audit.d.ts +70 -0
  181. package/dist-types/packages/peach-engine/src/engine/image-loader.d.ts +350 -0
  182. package/dist-types/packages/peach-engine/src/engine/inspect-info.d.ts +27 -0
  183. package/dist-types/packages/peach-engine/src/engine/inspect-outline.d.ts +14 -0
  184. package/dist-types/packages/peach-engine/src/engine/inspect-visibility.d.ts +33 -0
  185. package/dist-types/packages/peach-engine/src/engine/ios-fast-scroll.d.ts +16 -0
  186. package/dist-types/packages/peach-engine/src/engine/layout-sab.d.ts +43 -0
  187. package/dist-types/packages/peach-engine/src/engine/liquid-glass-rect.d.ts +23 -0
  188. package/dist-types/packages/peach-engine/src/engine/liquid-glass-shaders.d.ts +9 -0
  189. package/dist-types/packages/peach-engine/src/engine/liquid-glass.d.ts +283 -0
  190. package/dist-types/packages/peach-engine/src/engine/live-object-counts.d.ts +6 -0
  191. package/dist-types/packages/peach-engine/src/engine/lottie-runtime.d.ts +32 -0
  192. package/dist-types/packages/peach-engine/src/engine/lottie-types.d.ts +138 -0
  193. package/dist-types/packages/peach-engine/src/engine/memory-counts.d.ts +27 -0
  194. package/dist-types/packages/peach-engine/src/engine/metalDirectContract.d.ts +108 -0
  195. package/dist-types/packages/peach-engine/src/engine/metalShaderContract.d.ts +217 -0
  196. package/dist-types/packages/peach-engine/src/engine/native-animation-driver.d.ts +112 -0
  197. package/dist-types/packages/peach-engine/src/engine/native-animation-graph.d.ts +62 -0
  198. package/dist-types/packages/peach-engine/src/engine/native-layout.d.ts +133 -0
  199. package/dist-types/packages/peach-engine/src/engine/native-resources.d.ts +26 -0
  200. package/dist-types/packages/peach-engine/src/engine/nativeReanimatedContract.d.ts +25 -0
  201. package/dist-types/packages/peach-engine/src/engine/nativeReplayContract.d.ts +64 -0
  202. package/dist-types/packages/peach-engine/src/engine/node.d.ts +589 -0
  203. package/dist-types/packages/peach-engine/src/engine/paint-boundary-types.d.ts +112 -0
  204. package/dist-types/packages/peach-engine/src/engine/paint-boundary.d.ts +57 -0
  205. package/dist-types/packages/peach-engine/src/engine/portalContract.d.ts +21 -0
  206. package/dist-types/packages/peach-engine/src/engine/portals.d.ts +20 -0
  207. package/dist-types/packages/peach-engine/src/engine/render-damage.d.ts +107 -0
  208. package/dist-types/packages/peach-engine/src/engine/riveContract.d.ts +420 -0
  209. package/dist-types/packages/peach-engine/src/engine/rn-spring.d.ts +51 -0
  210. package/dist-types/packages/peach-engine/src/engine/scene-table.d.ts +379 -0
  211. package/dist-types/packages/peach-engine/src/engine/scroll-momentum-math.d.ts +152 -0
  212. package/dist-types/packages/peach-engine/src/engine/scroll-pan-contacts.d.ts +10 -0
  213. package/dist-types/packages/peach-engine/src/engine/scroll-platform.d.ts +75 -0
  214. package/dist-types/packages/peach-engine/src/engine/scroll-range.d.ts +14 -0
  215. package/dist-types/packages/peach-engine/src/engine/scroll-velocity.d.ts +14 -0
  216. package/dist-types/packages/peach-engine/src/engine/scroll.d.ts +320 -0
  217. package/dist-types/packages/peach-engine/src/engine/signal.d.ts +7 -0
  218. package/dist-types/packages/peach-engine/src/engine/snapshot-cache-policy.d.ts +6 -0
  219. package/dist-types/packages/peach-engine/src/engine/svg-geometry.d.ts +41 -0
  220. package/dist-types/packages/peach-engine/src/engine/text-attachment-paragraphs.d.ts +10 -0
  221. package/dist-types/packages/peach-engine/src/engine/text-decoration.d.ts +11 -0
  222. package/dist-types/packages/peach-engine/src/engine/text-line-break.d.ts +22 -0
  223. package/dist-types/packages/peach-engine/src/engine/text-paint-receipt.d.ts +98 -0
  224. package/dist-types/packages/peach-engine/src/engine/text-paragraph.d.ts +11 -0
  225. package/dist-types/packages/peach-engine/src/engine/text-paragraphContract.d.ts +34 -0
  226. package/dist-types/packages/peach-engine/src/engine/text-transform.d.ts +1 -0
  227. package/dist-types/packages/peach-engine/src/engine/types.d.ts +657 -0
  228. package/dist-types/packages/peach-engine/src/engine/visible-frame.d.ts +54 -0
  229. package/dist-types/packages/peach-engine/src/engine/webrtcContract.d.ts +74 -0
  230. package/dist-types/packages/peach-engine/src/graphite-stats-fields.d.ts +184 -0
  231. package/dist-types/packages/peach-engine/src/guest-import-meta.d.ts +12 -0
  232. package/dist-types/packages/peach-engine/src/guest-module-overrides.d.ts +7 -0
  233. package/dist-types/packages/peach-engine/src/ios/app-card-types.d.ts +7 -0
  234. package/dist-types/packages/peach-engine/src/ios/apps/canvas-map-data.d.ts +177 -0
  235. package/dist-types/packages/peach-engine/src/ios/aux-home-scene.d.ts +54 -0
  236. package/dist-types/packages/peach-engine/src/ios/chrome-metrics.d.ts +47 -0
  237. package/dist-types/packages/peach-engine/src/ios/constants.d.ts +21 -0
  238. package/dist-types/packages/peach-engine/src/ios/duo-housing.d.ts +37 -0
  239. package/dist-types/packages/peach-engine/src/ios/home/types.d.ts +29 -0
  240. package/dist-types/packages/peach-engine/src/ios/home-app-catalog.d.ts +43 -0
  241. package/dist-types/packages/peach-engine/src/ios/photo-store.d.ts +73 -0
  242. package/dist-types/packages/peach-engine/src/ios/photoLibraryContract.d.ts +166 -0
  243. package/dist-types/packages/peach-engine/src/ios/shell-controller-types.d.ts +21 -0
  244. package/dist-types/packages/peach-engine/src/ios/shell-transition-debug.d.ts +18 -0
  245. package/dist-types/packages/peach-engine/src/metro-asset-path.d.ts +21 -0
  246. package/dist-types/packages/peach-engine/src/metro-fingerprint-registry-client.d.ts +11 -0
  247. package/dist-types/packages/peach-engine/src/metro-fingerprint.d.ts +38 -0
  248. package/dist-types/packages/peach-engine/src/native-preview-bundle.d.ts +44 -0
  249. package/dist-types/packages/peach-engine/src/observability/types.d.ts +74 -0
  250. package/dist-types/packages/peach-engine/src/peach-warm-manifest.d.ts +32 -0
  251. package/dist-types/packages/peach-engine/src/permissions/app-settings-client.d.ts +25 -0
  252. package/dist-types/packages/peach-engine/src/permissions/system-permission-types.d.ts +20 -0
  253. package/dist-types/packages/peach-engine/src/platform/android-back-panel.d.ts +131 -0
  254. package/dist-types/packages/peach-engine/src/platform/android-gesture-exclusion.d.ts +28 -0
  255. package/dist-types/packages/peach-engine/src/platform/android-predictive-back.d.ts +33 -0
  256. package/dist-types/packages/peach-engine/src/platform/system-bars-state.d.ts +14 -0
  257. package/dist-types/packages/peach-engine/src/playwright-sim-host.d.ts +1 -0
  258. package/dist-types/packages/peach-engine/src/preview/bundle-layout.d.ts +8 -0
  259. package/dist-types/packages/peach-engine/src/preview/bundle-variantContract.d.ts +24 -0
  260. package/dist-types/packages/peach-engine/src/preview/capture-bundle.d.ts +26 -0
  261. package/dist-types/packages/peach-engine/src/preview/compress-node.d.ts +2 -0
  262. package/dist-types/packages/peach-engine/src/preview/compress.d.ts +2 -0
  263. package/dist-types/packages/peach-engine/src/preview/presigned-upload.d.ts +60 -0
  264. package/dist-types/packages/peach-engine/src/preview/trace.d.ts +144 -0
  265. package/dist-types/packages/peach-engine/src/preview/upload-protocol.d.ts +152 -0
  266. package/dist-types/packages/peach-engine/src/profiler/animation-recording-loader.d.ts +1 -0
  267. package/dist-types/packages/peach-engine/src/profiler/profile-trace.d.ts +4 -0
  268. package/dist-types/packages/peach-engine/src/react-bridge.d.ts +3 -0
  269. package/dist-types/packages/peach-engine/src/react-native/AppState.d.ts +45 -0
  270. package/dist-types/packages/peach-engine/src/react-native/Appearance.d.ts +34 -0
  271. package/dist-types/packages/peach-engine/src/react-native/framework-colors-data.d.ts +2 -0
  272. package/dist-types/packages/peach-engine/src/react-native/host-services.d.ts +42 -0
  273. package/dist-types/packages/peach-engine/src/react-native/layout-animation.d.ts +22 -0
  274. package/dist-types/packages/peach-engine/src/react-native/platform-colors.d.ts +17 -0
  275. package/dist-types/packages/peach-engine/src/remote-stream/client-config.d.ts +10 -0
  276. package/dist-types/packages/peach-engine/src/remote-stream/cloud-display.d.ts +58 -0
  277. package/dist-types/packages/peach-engine/src/remote-stream/scene-recording.d.ts +45 -0
  278. package/dist-types/packages/peach-engine/src/render-worker/animated-drive-output.d.ts +35 -0
  279. package/dist-types/packages/peach-engine/src/render-worker/app-load.d.ts +16 -0
  280. package/dist-types/packages/peach-engine/src/render-worker/aux-surface-types.d.ts +2 -0
  281. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-shared.d.ts +42 -0
  282. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-webgpu.d.ts +434 -0
  283. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-worker-init.d.ts +12 -0
  284. package/dist-types/packages/peach-engine/src/render-worker/compositor-backend.d.ts +31 -0
  285. package/dist-types/packages/peach-engine/src/render-worker/compositor-gpu.d.ts +202 -0
  286. package/dist-types/packages/peach-engine/src/render-worker/compositor-protocol.d.ts +1945 -0
  287. package/dist-types/packages/peach-engine/src/render-worker/compositor-runtime/scroll-drag-resample.d.ts +44 -0
  288. package/dist-types/packages/peach-engine/src/render-worker/css-keyframes-drive.d.ts +36 -0
  289. package/dist-types/packages/peach-engine/src/render-worker/edit-menu-geometry.d.ts +8 -0
  290. package/dist-types/packages/peach-engine/src/render-worker/engine-resource-relay.d.ts +21 -0
  291. package/dist-types/packages/peach-engine/src/render-worker/expo-widgetContract.d.ts +16 -0
  292. package/dist-types/packages/peach-engine/src/render-worker/gesture-seam-protocol.d.ts +152 -0
  293. package/dist-types/packages/peach-engine/src/render-worker/graph-linked-value.d.ts +29 -0
  294. package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler-contract.d.ts +49 -0
  295. package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler.d.ts +12 -0
  296. package/dist-types/packages/peach-engine/src/render-worker/host-service-protocol.d.ts +756 -0
  297. package/dist-types/packages/peach-engine/src/render-worker/image-lifecycle-event.d.ts +22 -0
  298. package/dist-types/packages/peach-engine/src/render-worker/image-pixel-contract.d.ts +48 -0
  299. package/dist-types/packages/peach-engine/src/render-worker/live-frame-mirror.d.ts +34 -0
  300. package/dist-types/packages/peach-engine/src/render-worker/map-command-channel.d.ts +189 -0
  301. package/dist-types/packages/peach-engine/src/render-worker/mapNativeContract.d.ts +101 -0
  302. package/dist-types/packages/peach-engine/src/render-worker/native-dynamic-synchronizable.d.ts +22 -0
  303. package/dist-types/packages/peach-engine/src/render-worker/native-menu-gesture.d.ts +9 -0
  304. package/dist-types/packages/peach-engine/src/render-worker/native-ui-commandContract.d.ts +23 -0
  305. package/dist-types/packages/peach-engine/src/render-worker/native-ui-protocol.d.ts +1087 -0
  306. package/dist-types/packages/peach-engine/src/render-worker/native-widgetContract.d.ts +100 -0
  307. package/dist-types/packages/peach-engine/src/render-worker/nativeAnimMirrorContract.d.ts +174 -0
  308. package/dist-types/packages/peach-engine/src/render-worker/nativeSyncReplyContract.d.ts +11 -0
  309. package/dist-types/packages/peach-engine/src/render-worker/one-native-contentContract.d.ts +54 -0
  310. package/dist-types/packages/peach-engine/src/render-worker/pointerSampleContract.d.ts +14 -0
  311. package/dist-types/packages/peach-engine/src/render-worker/protocol.d.ts +880 -0
  312. package/dist-types/packages/peach-engine/src/render-worker/reanimated-css-contract.d.ts +63 -0
  313. package/dist-types/packages/peach-engine/src/render-worker/reanimated-readiness.d.ts +29 -0
  314. package/dist-types/packages/peach-engine/src/render-worker/resilient-frame-clock.d.ts +22 -0
  315. package/dist-types/packages/peach-engine/src/render-worker/retained-app-load.d.ts +20 -0
  316. package/dist-types/packages/peach-engine/src/render-worker/screen-edge-swipe-commit-protocol.d.ts +1 -0
  317. package/dist-types/packages/peach-engine/src/render-worker/screen-form-sheet-commit-protocol.d.ts +26 -0
  318. package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror-tenant.d.ts +37 -0
  319. package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror.d.ts +164 -0
  320. package/dist-types/packages/peach-engine/src/render-worker/shell-event-registry.d.ts +119 -0
  321. package/dist-types/packages/peach-engine/src/render-worker/shell-gesture-regions.d.ts +41 -0
  322. package/dist-types/packages/peach-engine/src/render-worker/shell-protocol.d.ts +603 -0
  323. package/dist-types/packages/peach-engine/src/render-worker/shell-scene-schema.d.ts +101 -0
  324. package/dist-types/packages/peach-engine/src/render-worker/shell-tree-inline-sources.d.ts +13 -0
  325. package/dist-types/packages/peach-engine/src/render-worker/shell-tree-wire.d.ts +87 -0
  326. package/dist-types/packages/peach-engine/src/render-worker/test-bridge-protocol.d.ts +47 -0
  327. package/dist-types/packages/peach-engine/src/render-worker/text-inputContract.d.ts +93 -0
  328. package/dist-types/packages/peach-engine/src/render-worker/tree-sync-port.d.ts +102 -0
  329. package/dist-types/packages/peach-engine/src/render-worker/webgpu-frame-transaction.d.ts +292 -0
  330. package/dist-types/packages/peach-engine/src/render-worker/webgpu-readback-scheduler.d.ts +107 -0
  331. package/dist-types/packages/peach-engine/src/render-worker/webview-capture-protocol.d.ts +16 -0
  332. package/dist-types/packages/peach-engine/src/render-worker/worker-input-runtime.d.ts +211 -0
  333. package/dist-types/packages/peach-engine/src/render-worker/worker-storage.d.ts +33 -0
  334. package/dist-types/packages/peach-engine/src/render-worker/worklet-runtime.d.ts +987 -0
  335. package/dist-types/packages/peach-engine/src/render-worker/worklet-sab.d.ts +24 -0
  336. package/dist-types/packages/peach-engine/src/rolldown-bundle-inventory.d.ts +84 -0
  337. package/dist-types/packages/peach-engine/src/rolldown-production-fingerprint.d.ts +31 -0
  338. package/dist-types/packages/peach-engine/src/screenshots/timeline-assets.d.ts +10 -0
  339. package/dist-types/packages/peach-engine/src/screenshots/tokens.d.ts +9 -0
  340. package/dist-types/packages/peach-engine/src/settings/devices.d.ts +70 -0
  341. package/dist-types/packages/peach-engine/src/settings/duo-fold-bus.d.ts +87 -0
  342. package/dist-types/packages/peach-engine/src/settings/interface-rotation.d.ts +30 -0
  343. package/dist-types/packages/peach-engine/src/settings/react-native-configuration.d.ts +12 -0
  344. package/dist-types/packages/peach-engine/src/settings/scene-geometryContract.d.ts +40 -0
  345. package/dist-types/packages/peach-engine/src/settings/store.d.ts +37 -0
  346. package/dist-types/packages/peach-engine/src/shell-events.d.ts +203 -0
  347. package/dist-types/packages/peach-engine/src/shell-intent.d.ts +68 -0
  348. package/dist-types/packages/peach-engine/src/sootsim-event.d.ts +35 -0
  349. package/dist-types/packages/peach-engine/src/top-overlay-state.d.ts +5 -0
  350. package/dist-types/packages/peach-engine/src/web-authentication-automation-host.d.ts +2 -0
  351. package/dist-types/packages/peach-engine/src/webAuthenticationContract.d.ts +34 -0
  352. package/dist-types/packages/peach-engine/src/webview-automation-host.d.ts +180 -0
  353. package/dist-types/packages/peach-engine/src/wireframe-mode.d.ts +16 -0
  354. package/dist-types/packages/peach-globals/src/frameBreakdownContract.d.ts +16 -0
  355. package/dist-types/packages/peach-globals/src/index.d.ts +3311 -0
  356. package/dist-types/packages/peach-globals/src/nativeSurfaceContract.d.ts +76 -0
  357. package/dist-types/packages/peach-globals/src/pointerSourceEventContract.d.ts +8 -0
  358. package/dist-types/packages/peach-globals/src/profileTrace.d.ts +11 -0
  359. package/dist-types/packages/peach-globals/src/profilerContract.d.ts +223 -0
  360. package/dist-types/packages/peach-kit/src/capabilities.d.ts +721 -0
  361. package/dist-types/packages/peach-kit/src/internal.d.ts +4 -0
  362. package/dist-types/packages/peach-kit/src/materials/types.d.ts +27 -0
  363. package/dist-types/packages/peach-kit/src/materials/uikit-blur-material.d.ts +14 -0
  364. package/dist-types/packages/peach-kit/src/navigation-types.d.ts +11 -0
  365. package/dist-types/packages/peach-kit/src/react-bridge.d.ts +53 -0
  366. package/dist-types/packages/peach-kit/src/runtime.d.ts +26 -0
  367. package/dist-types/packages/peach-kit/src/ui/hosting-safe-area.d.ts +24 -0
  368. package/dist-types/packages/peach-kit/src/ui/popover-placement.d.ts +53 -0
  369. package/dist-types/packages/peach-kit/src/ui/presentationContract.d.ts +17 -0
  370. package/kotlin/ComposeSources/PeachComposeHost.kt +1 -1
  371. package/kotlin/JniSources/com/facebook/jni/HybridData.kt +0 -2
  372. package/kotlin/JniSources/dev/peach/jni/NativeBindings.kt +0 -2
  373. package/kotlin/JniTransportSources/dev/peach/jni/integration/JniTransport.kt +0 -2
  374. package/kotlin/README.md +6 -0
  375. package/package.json +22 -2
  376. package/runtime-companion.json +1 -0
  377. package/skills/contrast/SKILL.md +1 -0
  378. package/src/appBundleResourcesContract.ts +51 -0
  379. package/src/assetCatalogContract.ts +21 -0
  380. package/src/backend-origin.ts +3 -1
  381. package/src/bridge-contract-input.ts +84 -0
  382. package/src/bridge-contract.ts +35 -3
  383. package/src/browser-launch-policy.ts +1 -0
  384. package/src/bundle-channel.mjs +4 -2
  385. package/src/cli-runtime.ts +55 -0
  386. package/src/crash-fingerprint.ts +26 -0
  387. package/src/dev-bundle-resolution.ts +50 -23
  388. package/src/device-catalog.ts +1159 -0
  389. package/src/host/bridge-host.ts +20 -37
  390. package/src/host/browser-pointer.ts +71 -0
  391. package/src/host/dev-server-package-versions.ts +23 -0
  392. package/src/host/fetch-proxy-handler.ts +17 -4
  393. package/src/host/staged-host-files.ts +28 -4
  394. package/src/installed-package-versions.ts +142 -38
  395. package/src/kotlin-host.ts +1 -1
  396. package/src/launchMetadataContract.ts +1 -0
  397. package/src/menu.ts +12 -4
  398. package/src/metro-plugin.ts +4 -4
  399. package/src/metro-project-root.ts +68 -0
  400. package/src/native-app-identity-project.ts +47 -38
  401. package/src/nitro-adapter.lock.json +26 -0
  402. package/src/nitro-adapter.ts +103 -0
  403. package/src/nitro-bundle.ts +24 -10
  404. package/src/nitro-compile.ts +33 -51
  405. package/src/nitro-source.ts +177 -96
  406. package/src/nitroAdapterContract.ts +217 -0
  407. package/src/nitroContract.ts +24 -11
  408. package/src/process-group.ts +41 -34
  409. package/src/react-bridge-importers.ts +28 -0
  410. package/src/reactNativeConfigurationContract.ts +36 -0
  411. package/src/runtime-assets.ts +7 -2
  412. package/src/runtime-delivery.ts +8 -7
  413. package/src/runtimePlatformContract.ts +70 -0
  414. package/src/screenshots/frame-compose.ts +42 -43
  415. package/src/screenshots/org-deck.ts +9 -4
  416. package/src/screenshots/preset-names.ts +29 -0
  417. package/src/screenshots/registry.ts +5 -5
  418. package/src/screenshots/schema.ts +1 -1
  419. package/src/screenshots/screenshotContract.ts +971 -0
  420. package/src/settings-flags.ts +107 -0
  421. package/src/settingsContract.ts +609 -0
  422. package/src/storageSnapshotContract.ts +344 -0
  423. package/src/stub-pattern-matcher.ts +550 -0
  424. package/src/swift-compile.ts +926 -47
  425. package/src/swift-compiler-digest.ts +17 -3
  426. package/src/swift-distribution.lock.json +49 -22
  427. package/src/swift-host.ts +167 -52
  428. package/src/swift-objc-compile.ts +86 -26
  429. package/src/swift-objc-export.ts +532 -0
  430. package/src/swift-objc-import.ts +769 -0
  431. package/src/swift-objc-metadata.ts +285 -10
  432. package/src/swift-objc-sdk.ts +13970 -158
  433. package/src/swift-objc-standin.ts +137 -1
  434. package/src/swift-package.ts +94 -0
  435. package/src/swift-packages.ts +5 -5
  436. package/src/swift-root-lock.ts +241 -92
  437. package/src/swift-submit.ts +6 -0
  438. package/src/swiftContract.ts +99 -0
  439. package/src/target-matcher.ts +6 -1
  440. package/src/vite-plugin.ts +14 -40
  441. package/src/worker-system-chunks.ts +1 -1
  442. package/src/workerChunkContract.ts +5 -0
  443. package/src/worklets-babel.ts +24 -5
  444. package/src/xcode-project.ts +103 -11
  445. package/src/xcode-target-members.ts +10 -3
  446. package/cli/drivers/playwright-sim-host.ts +0 -825
  447. package/kotlin/fixtures/counter/Counter.d.kt.ts +0 -17
  448. package/kotlin/fixtures/counter/Counter.kt +0 -51
  449. package/kotlin/fixtures/counter/CounterApp.native.tsx +0 -61
  450. package/kotlin/fixtures/counter/CounterApp.tsx +0 -3
  451. package/kotlin/fixtures/counter/CounterScreen.d.kt.ts +0 -8
  452. package/kotlin/fixtures/counter/CounterScreen.kt +0 -56
  453. package/kotlin/fixtures/counter/app/_layout.tsx +0 -4
  454. package/kotlin/fixtures/counter/app/index+spa.tsx +0 -1
  455. package/kotlin/fixtures/counter/app/routes.d.ts +0 -18
  456. package/kotlin/fixtures/counter/package.json +0 -20
  457. package/kotlin/fixtures/counter/tsconfig.json +0 -19
  458. package/kotlin/fixtures/counter/vite.config.ts +0 -20
  459. package/kotlin/fixtures/headless-counter/Headless.kt +0 -234
  460. package/kotlin/fixtures/import-animation/Animation.d.kt.ts +0 -7
  461. package/kotlin/fixtures/import-animation/Animation.kt +0 -80
  462. package/kotlin/fixtures/import-animation/ImportAnimation.native.tsx +0 -13
  463. package/kotlin/fixtures/import-animation/README.md +0 -24
  464. package/kotlin/fixtures/import-animation/app/_layout.tsx +0 -4
  465. package/kotlin/fixtures/import-animation/app/index+spa.tsx +0 -1
  466. package/kotlin/fixtures/import-animation/app/routes.d.ts +0 -18
  467. package/kotlin/fixtures/import-animation/package.json +0 -23
  468. package/kotlin/fixtures/import-animation/tsconfig.json +0 -20
  469. package/kotlin/fixtures/import-animation/vite.config.ts +0 -20
  470. package/kotlin/fixtures/import-drawing/Drawing.d.kt.ts +0 -7
  471. package/kotlin/fixtures/import-drawing/Drawing.kt +0 -101
  472. package/kotlin/fixtures/import-drawing/ImportDrawing.native.tsx +0 -18
  473. package/kotlin/fixtures/import-drawing/README.md +0 -34
  474. package/kotlin/fixtures/import-drawing/app/_layout.tsx +0 -4
  475. package/kotlin/fixtures/import-drawing/app/index+spa.tsx +0 -1
  476. package/kotlin/fixtures/import-drawing/package.json +0 -23
  477. package/kotlin/fixtures/import-drawing/tsconfig.json +0 -20
  478. package/kotlin/fixtures/import-drawing/vite.config.ts +0 -20
  479. package/kotlin/fixtures/import-editor/Editor.d.kt.ts +0 -7
  480. package/kotlin/fixtures/import-editor/Editor.kt +0 -59
  481. package/kotlin/fixtures/import-editor/ImportEditor.native.tsx +0 -23
  482. package/kotlin/fixtures/import-editor/README.md +0 -27
  483. package/kotlin/fixtures/import-editor/app/_layout.tsx +0 -4
  484. package/kotlin/fixtures/import-editor/app/index+spa.tsx +0 -1
  485. package/kotlin/fixtures/import-editor/package.json +0 -23
  486. package/kotlin/fixtures/import-editor/tsconfig.json +0 -20
  487. package/kotlin/fixtures/import-editor/vite.config.ts +0 -20
  488. package/kotlin/fixtures/import-effects/Effects.d.kt.ts +0 -7
  489. package/kotlin/fixtures/import-effects/Effects.kt +0 -87
  490. package/kotlin/fixtures/import-effects/ImportEffects.native.tsx +0 -13
  491. package/kotlin/fixtures/import-effects/README.md +0 -19
  492. package/kotlin/fixtures/import-effects/app/_layout.tsx +0 -4
  493. package/kotlin/fixtures/import-effects/app/index+spa.tsx +0 -1
  494. package/kotlin/fixtures/import-effects/package.json +0 -23
  495. package/kotlin/fixtures/import-effects/tsconfig.json +0 -20
  496. package/kotlin/fixtures/import-effects/vite.config.ts +0 -20
  497. package/kotlin/fixtures/import-layout/ImportLayout.native.tsx +0 -13
  498. package/kotlin/fixtures/import-layout/Layout.d.kt.ts +0 -7
  499. package/kotlin/fixtures/import-layout/Layout.kt +0 -72
  500. package/kotlin/fixtures/import-layout/README.md +0 -24
  501. package/kotlin/fixtures/import-layout/app/_layout.tsx +0 -4
  502. package/kotlin/fixtures/import-layout/app/index+spa.tsx +0 -1
  503. package/kotlin/fixtures/import-layout/package.json +0 -23
  504. package/kotlin/fixtures/import-layout/tsconfig.json +0 -20
  505. package/kotlin/fixtures/import-layout/vite.config.ts +0 -20
  506. package/kotlin/fixtures/import-navigation/ImportNavigation.native.tsx +0 -18
  507. package/kotlin/fixtures/import-navigation/Navigation.d.kt.ts +0 -7
  508. package/kotlin/fixtures/import-navigation/Navigation.kt +0 -104
  509. package/kotlin/fixtures/import-navigation/README.md +0 -31
  510. package/kotlin/fixtures/import-navigation/app/_layout.tsx +0 -4
  511. package/kotlin/fixtures/import-navigation/app/index+spa.tsx +0 -1
  512. package/kotlin/fixtures/import-navigation/package.json +0 -23
  513. package/kotlin/fixtures/import-navigation/tsconfig.json +0 -20
  514. package/kotlin/fixtures/import-navigation/vite.config.ts +0 -20
  515. package/kotlin/fixtures/import-overlays/ImportOverlays.native.tsx +0 -29
  516. package/kotlin/fixtures/import-overlays/Overlays.d.kt.ts +0 -7
  517. package/kotlin/fixtures/import-overlays/Overlays.kt +0 -93
  518. package/kotlin/fixtures/import-overlays/README.md +0 -34
  519. package/kotlin/fixtures/import-overlays/app/_layout.tsx +0 -4
  520. package/kotlin/fixtures/import-overlays/app/index+spa.tsx +0 -1
  521. package/kotlin/fixtures/import-overlays/package.json +0 -23
  522. package/kotlin/fixtures/import-overlays/tsconfig.json +0 -20
  523. package/kotlin/fixtures/import-overlays/vite.config.ts +0 -20
  524. package/kotlin/fixtures/import-resources/ImportResources.native.tsx +0 -18
  525. package/kotlin/fixtures/import-resources/README.md +0 -26
  526. package/kotlin/fixtures/import-resources/Resources.d.kt.ts +0 -6
  527. package/kotlin/fixtures/import-resources/Resources.kt +0 -72
  528. package/kotlin/fixtures/import-resources/app/_layout.tsx +0 -4
  529. package/kotlin/fixtures/import-resources/app/index+spa.tsx +0 -1
  530. package/kotlin/fixtures/import-resources/package.json +0 -23
  531. package/kotlin/fixtures/import-resources/tsconfig.json +0 -20
  532. package/kotlin/fixtures/import-resources/vite.config.ts +0 -20
  533. package/kotlin/fixtures/import-scroll/ImportNested.native.tsx +0 -10
  534. package/kotlin/fixtures/import-scroll/ImportScroll.native.tsx +0 -13
  535. package/kotlin/fixtures/import-scroll/Nested.d.kt.ts +0 -4
  536. package/kotlin/fixtures/import-scroll/Nested.kt +0 -64
  537. package/kotlin/fixtures/import-scroll/README.md +0 -38
  538. package/kotlin/fixtures/import-scroll/Scroll.d.kt.ts +0 -7
  539. package/kotlin/fixtures/import-scroll/Scroll.kt +0 -91
  540. package/kotlin/fixtures/import-scroll/app/_layout.tsx +0 -4
  541. package/kotlin/fixtures/import-scroll/app/index+spa.tsx +0 -1
  542. package/kotlin/fixtures/import-scroll/app/nested+spa.tsx +0 -1
  543. package/kotlin/fixtures/import-scroll/package.json +0 -23
  544. package/kotlin/fixtures/import-scroll/tsconfig.json +0 -20
  545. package/kotlin/fixtures/import-scroll/vite.config.ts +0 -20
  546. package/kotlin/fixtures/import-selection/ImportSelection.native.tsx +0 -44
  547. package/kotlin/fixtures/import-selection/README.md +0 -32
  548. package/kotlin/fixtures/import-selection/Selection.d.kt.ts +0 -8
  549. package/kotlin/fixtures/import-selection/Selection.kt +0 -78
  550. package/kotlin/fixtures/import-selection/app/_layout.tsx +0 -4
  551. package/kotlin/fixtures/import-selection/app/index+spa.tsx +0 -1
  552. package/kotlin/fixtures/import-selection/package.json +0 -23
  553. package/kotlin/fixtures/import-selection/tsconfig.json +0 -20
  554. package/kotlin/fixtures/import-selection/vite.config.ts +0 -20
  555. package/kotlin/fixtures/import-surfaces/ImportSurfaces.native.tsx +0 -13
  556. package/kotlin/fixtures/import-surfaces/README.md +0 -22
  557. package/kotlin/fixtures/import-surfaces/Surfaces.d.kt.ts +0 -7
  558. package/kotlin/fixtures/import-surfaces/Surfaces.kt +0 -64
  559. package/kotlin/fixtures/import-surfaces/app/_layout.tsx +0 -4
  560. package/kotlin/fixtures/import-surfaces/app/index+spa.tsx +0 -1
  561. package/kotlin/fixtures/import-surfaces/package.json +0 -23
  562. package/kotlin/fixtures/import-surfaces/tsconfig.json +0 -20
  563. package/kotlin/fixtures/import-surfaces/vite.config.ts +0 -20
  564. package/kotlin/fixtures/import-values/ImportValues.native.tsx +0 -61
  565. package/kotlin/fixtures/import-values/README.md +0 -28
  566. package/kotlin/fixtures/import-values/Values.d.kt.ts +0 -15
  567. package/kotlin/fixtures/import-values/Values.kt +0 -84
  568. package/kotlin/fixtures/import-values/app/_layout.tsx +0 -4
  569. package/kotlin/fixtures/import-values/app/index+spa.tsx +0 -1
  570. package/kotlin/fixtures/import-values/package.json +0 -23
  571. package/kotlin/fixtures/import-values/tsconfig.json +0 -20
  572. package/kotlin/fixtures/import-values/vite.config.ts +0 -20
  573. package/kotlin/fixtures/kotlin-app/app/build.gradle.kts +0 -30
  574. package/kotlin/fixtures/kotlin-app/app/src/main/AndroidManifest.xml +0 -13
  575. package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/MainActivity.kt +0 -60
  576. package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/ProbeApplication.kt +0 -18
  577. package/kotlin/fixtures/kotlin-app/build.gradle.kts +0 -5
  578. package/kotlin/fixtures/kotlin-app/gradle.properties +0 -4
  579. package/kotlin/fixtures/kotlin-app/settings.gradle.kts +0 -4
  580. package/kotlin/fixtures/kotlin-app-variants/Anim.kt +0 -62
  581. package/kotlin/fixtures/kotlin-app-variants/BarBehavior.kt +0 -38
  582. package/kotlin/fixtures/kotlin-app-variants/BarVisibility.kt +0 -36
  583. package/kotlin/fixtures/kotlin-app-variants/Bitmaps.kt +0 -50
  584. package/kotlin/fixtures/kotlin-app-variants/Browse.kt +0 -73
  585. package/kotlin/fixtures/kotlin-app-variants/Colors.kt +0 -41
  586. package/kotlin/fixtures/kotlin-app-variants/Controls.kt +0 -62
  587. package/kotlin/fixtures/kotlin-app-variants/Drag.kt +0 -56
  588. package/kotlin/fixtures/kotlin-app-variants/Draw.kt +0 -74
  589. package/kotlin/fixtures/kotlin-app-variants/Drawables.kt +0 -53
  590. package/kotlin/fixtures/kotlin-app-variants/Focus.kt +0 -62
  591. package/kotlin/fixtures/kotlin-app-variants/Form.kt +0 -47
  592. package/kotlin/fixtures/kotlin-app-variants/Icons.kt +0 -59
  593. package/kotlin/fixtures/kotlin-app-variants/Ime.kt +0 -53
  594. package/kotlin/fixtures/kotlin-app-variants/Lists.kt +0 -57
  595. package/kotlin/fixtures/kotlin-app-variants/Nav.kt +0 -47
  596. package/kotlin/fixtures/kotlin-app-variants/Note.kt +0 -40
  597. package/kotlin/fixtures/kotlin-app-variants/Overlays.kt +0 -56
  598. package/kotlin/fixtures/kotlin-app-variants/Pan.kt +0 -38
  599. package/kotlin/fixtures/kotlin-app-variants/Pickers.kt +0 -44
  600. package/kotlin/fixtures/kotlin-app-variants/Press.kt +0 -43
  601. package/kotlin/fixtures/kotlin-app-variants/Scroll.kt +0 -63
  602. package/kotlin/fixtures/kotlin-app-variants/Sheet.kt +0 -43
  603. package/kotlin/fixtures/kotlin-app-variants/Strings.kt +0 -49
  604. package/kotlin/fixtures/kotlin-app-variants/Tabs.kt +0 -47
  605. package/kotlin/fixtures/kotlin-app-variants/TextWidth.kt +0 -45
  606. package/kotlin/fixtures/kotlin-app-variants/TransientInsets.kt +0 -50
  607. package/kotlin/fixtures/kotlin-app-variants/Transition.kt +0 -69
  608. package/kotlin/fixtures/kotlin-app-variants/ViewConfig.kt +0 -22
  609. package/kotlin/fixtures/kotlin-app-variants/Widgets.kt +0 -67
  610. package/kotlin/fixtures/runtime-state/RuntimeState.kt +0 -200
  611. package/kotlin/fork/README.md +0 -97
  612. package/kotlin/fork/build.sh +0 -176
  613. package/kotlin/fork/compose-worker-globals.patch +0 -1247
  614. package/kotlin/fork/fork.json +0 -46
  615. package/kotlin/fork/publish.ts +0 -99
  616. package/kotlin/fork/skia-android-shaping.patch +0 -189
  617. package/kotlin/fork/skiko-local.init.gradle +0 -10
  618. package/kotlin/fork/skiko-worker-clock.patch +0 -122
@@ -0,0 +1,657 @@
1
+ import type { UIBlurMaterialStyle } from '../../../peach-kit/src/materials/uikit-blur-material.d.ts';
2
+ import type { LoupeState } from '../render-worker/text-inputContract.d.ts';
3
+ import type { CanvasKitRenderingApi as CanvasKit } from './canvaskit-api.d.ts';
4
+ import type { DamageRect } from './damage-rect.d.ts';
5
+ import type { LiquidGlassConfig, LiquidGlassEdgeConfig } from './liquid-glass.d.ts';
6
+ import type { MetalShaderEffectFilter } from './metalShaderContract.d.ts';
7
+ import type { SootSimNode } from './node.d.ts';
8
+ import type { NativeWindowPortalLayer } from './portalContract.d.ts';
9
+ import type { FrameDamage } from './render-damage.d.ts';
10
+ import type { AttributedParagraphStyle } from './text-paragraphContract.d.ts';
11
+ import type { NumericTextPaintRequest } from '../../../peach-globals/src/index.d.ts';
12
+ import type { Surface, Canvas, FontMgr, Image as SkImage } from 'canvaskit-wasm';
13
+ export type Falsy = undefined | null | false;
14
+ export type RecursiveArray<T> = Array<T | RecursiveArray<T>>;
15
+ export type StyleProp<T> = T | RecursiveArray<T | Falsy> | Falsy;
16
+ export type SootSimNodeType = 'root' | 'view' | 'text' | 'image' | 'lottie' | 'scrollview' | 'portal-host' | 'portal-view' | 'masked-view' | 'svg-root' | 'svg-path' | 'svg-circle' | 'svg-rect' | 'svg-line' | 'svg-g' | 'svg-ellipse' | 'svg-polygon' | 'svg-polyline' | 'svg-defs' | 'svg-clippath' | 'svg-lineargradient' | 'svg-radialgradient' | 'svg-stop' | 'svg-mask' | 'svg-text' | 'svg-tspan' | 'svg-use' | 'svg-symbol' | 'svg-marker' | 'svg-pattern' | 'svg-foreignobject' | 'svg-image' | 'svg-textpath' | 'svg-filter' | 'svg-feblend' | 'svg-fecolormatrix' | 'svg-fecomposite' | 'svg-feflood' | 'svg-fegaussianblur' | 'svg-femerge' | 'svg-feoffset';
17
+ export declare const TYPE_MAP: Record<string, SootSimNodeType>;
18
+ export type DynamicColorVariants = {
19
+ light: string;
20
+ dark: string;
21
+ highContrastLight?: string;
22
+ highContrastDark?: string;
23
+ };
24
+ export type DynamicColor = {
25
+ dynamic: DynamicColorVariants;
26
+ };
27
+ export declare const dynamicColor: (light: string, dark: string, highContrast?: {
28
+ light: string;
29
+ dark: string;
30
+ }) => string;
31
+ export interface BoxShadowValue {
32
+ offsetX?: number | string;
33
+ offsetY?: number | string;
34
+ blurRadius?: number | string;
35
+ spreadDistance?: number | string;
36
+ color?: string;
37
+ inset?: boolean;
38
+ }
39
+ export interface ParsedBoxShadow {
40
+ offsetX: number;
41
+ offsetY: number;
42
+ blurRadius: number;
43
+ spreadDistance: number;
44
+ color: string;
45
+ inset: boolean;
46
+ }
47
+ export interface FilterValue {
48
+ brightness?: number | string;
49
+ blur?: number | string;
50
+ contrast?: number | string;
51
+ grayscale?: number | string;
52
+ hueRotate?: number | string;
53
+ invert?: number | string;
54
+ opacity?: number | string;
55
+ saturate?: number | string;
56
+ sepia?: number | string;
57
+ dropShadow?: string | {
58
+ offsetX?: number | string;
59
+ offsetY?: number | string;
60
+ standardDeviation?: number | string;
61
+ color?: string;
62
+ };
63
+ _colorMatrix?: number[];
64
+ _colorMultiply?: unknown;
65
+ _luminanceToAlpha?: boolean;
66
+ _metalShaderEffect?: unknown;
67
+ }
68
+ export interface CssLengthPct {
69
+ v: number;
70
+ unit: 'fraction' | 'px';
71
+ }
72
+ export type CssGradientCorner = 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
73
+ export interface BackgroundLength {
74
+ value: number;
75
+ unit: 'px' | 'pct';
76
+ }
77
+ export type BackgroundSizeEntry = {
78
+ kind: 'cover';
79
+ } | {
80
+ kind: 'contain';
81
+ } | {
82
+ kind: 'length';
83
+ x: BackgroundLength | null;
84
+ y: BackgroundLength | null;
85
+ };
86
+ export interface BackgroundPositionEntry {
87
+ top?: BackgroundLength;
88
+ left?: BackgroundLength;
89
+ right?: BackgroundLength;
90
+ bottom?: BackgroundLength;
91
+ }
92
+ export type BackgroundRepeatStyle = 'repeat' | 'space' | 'round' | 'no-repeat';
93
+ export interface BackgroundRepeatEntry {
94
+ x: BackgroundRepeatStyle;
95
+ y: BackgroundRepeatStyle;
96
+ }
97
+ type GradientInterpolation = 'oklab' | 'unpremultiplied';
98
+ type GradientShape = {
99
+ type: 'linear';
100
+ colors: string[];
101
+ start: {
102
+ x: number;
103
+ y: number;
104
+ };
105
+ end: {
106
+ x: number;
107
+ y: number;
108
+ };
109
+ cssAngle?: number;
110
+ cssCorner?: CssGradientCorner;
111
+ center?: {
112
+ x: number;
113
+ y: number;
114
+ };
115
+ locations?: number[];
116
+ } | {
117
+ type: 'radial';
118
+ shape: 'circle' | 'ellipse';
119
+ sizeKeyword?: 'closest-side' | 'closest-corner' | 'farthest-side' | 'farthest-corner';
120
+ rxValue?: CssLengthPct;
121
+ ryValue?: CssLengthPct;
122
+ cx: CssLengthPct;
123
+ cy: CssLengthPct;
124
+ colors: string[];
125
+ locations?: number[];
126
+ } | {
127
+ type: 'sweep';
128
+ cx: CssLengthPct;
129
+ cy: CssLengthPct;
130
+ unitAngles?: boolean;
131
+ colors: string[];
132
+ locations?: number[];
133
+ } | {
134
+ type: 'mesh';
135
+ columns: number;
136
+ rows: number;
137
+ smoothsColors?: boolean;
138
+ points: {
139
+ x: number;
140
+ y: number;
141
+ }[];
142
+ colors: string[];
143
+ background?: string;
144
+ locations?: undefined;
145
+ };
146
+ type WithGradientInterpolation<T> = T extends unknown ? T & {
147
+ interpolation?: GradientInterpolation;
148
+ } : never;
149
+ export type ParsedGradient = WithGradientInterpolation<GradientShape>;
150
+ export type MeshGradient = Extract<ParsedGradient, {
151
+ type: 'mesh';
152
+ }>;
153
+ export interface AndroidRipplePaint {
154
+ width: number;
155
+ height: number;
156
+ touchX: number;
157
+ touchY: number;
158
+ progress: number;
159
+ phase: number;
160
+ density: number;
161
+ color: string | DynamicColor;
162
+ alpha: number;
163
+ }
164
+ export interface AndroidSwitchPaint {
165
+ position: number;
166
+ checked: boolean;
167
+ rtl: boolean;
168
+ density: number;
169
+ trackColor: string;
170
+ thumbColor: string;
171
+ }
172
+ export type GradientStyle = ParsedGradient & {
173
+ startAngle?: number;
174
+ };
175
+ export type ParsedFilterOp = {
176
+ type: 'brightness';
177
+ value: number;
178
+ } | {
179
+ type: 'blur';
180
+ value: number;
181
+ } | {
182
+ type: 'contrast';
183
+ value: number;
184
+ } | {
185
+ type: 'grayscale';
186
+ value: number;
187
+ } | {
188
+ type: 'hue-rotate';
189
+ value: number;
190
+ } | {
191
+ type: 'invert';
192
+ value: number;
193
+ } | {
194
+ type: 'opacity';
195
+ value: number;
196
+ } | {
197
+ type: 'saturate';
198
+ value: number;
199
+ } | {
200
+ type: 'sepia';
201
+ value: number;
202
+ } | {
203
+ type: 'color-matrix';
204
+ matrix: number[];
205
+ } | {
206
+ type: 'color-multiply';
207
+ color: unknown;
208
+ } | {
209
+ type: 'luminance-to-alpha';
210
+ } | {
211
+ type: 'metal-shader-effect';
212
+ effect: MetalShaderEffectFilter;
213
+ } | {
214
+ type: 'drop-shadow';
215
+ offsetX: number;
216
+ offsetY: number;
217
+ blurRadius: number;
218
+ color: string;
219
+ };
220
+ export interface SootSimAnimatedStyleValue {
221
+ getValue(): unknown;
222
+ }
223
+ type SootSimAnimatedLength = number | string | SootSimAnimatedStyleValue;
224
+ type SootSimAnimatedNumber = number | SootSimAnimatedStyleValue;
225
+ type SootSimAnimatedFilter = string | FilterValue | FilterValue[] | SootSimAnimatedStyleValue;
226
+ export interface SootSimLensFold {
227
+ lensStrength: number;
228
+ foldLimit: [number, number];
229
+ refractionExponent: number;
230
+ refractionAnisotropy: [number, number];
231
+ blur: number;
232
+ intensity: number;
233
+ }
234
+ export interface PeachSdfShape {
235
+ x: SootSimAnimatedNumber;
236
+ y: SootSimAnimatedNumber;
237
+ width: SootSimAnimatedNumber;
238
+ height: SootSimAnimatedNumber;
239
+ radius: SootSimAnimatedNumber;
240
+ }
241
+ export interface PeachSdfDisplacement {
242
+ first: PeachSdfShape;
243
+ second: PeachSdfShape;
244
+ height: SootSimAnimatedNumber;
245
+ amount: SootSimAnimatedNumber;
246
+ gaussianRadius: SootSimAnimatedNumber;
247
+ }
248
+ type SootSimLiquidGlassStyle = Omit<LiquidGlassConfig, 'cornerRadius' | 'bodyOpacity' | 'blurSigma' | 'vibrancy' | 'merge' | 'interactionIntensity'> & {
249
+ cornerRadius?: SootSimAnimatedNumber;
250
+ bodyOpacity?: SootSimAnimatedNumber;
251
+ blurSigma?: SootSimAnimatedNumber;
252
+ vibrancy?: SootSimAnimatedNumber;
253
+ interactionIntensity?: SootSimAnimatedNumber;
254
+ };
255
+ export interface SootSimStyle {
256
+ _paragraphStyle?: AttributedParagraphStyle;
257
+ userInterfaceStyle?: 'light' | 'dark';
258
+ flex?: number;
259
+ direction?: 'inherit' | 'ltr' | 'rtl';
260
+ flexDirection?: 'row' | 'column' | 'row-reverse' | 'column-reverse';
261
+ alignItems?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline';
262
+ alignContent?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'space-between' | 'space-around';
263
+ justifyContent?: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly';
264
+ alignSelf?: 'auto' | 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline';
265
+ flexWrap?: 'nowrap' | 'wrap' | 'wrap-reverse';
266
+ flexGrow?: number;
267
+ flexShrink?: number;
268
+ flexBasis?: number | string;
269
+ gap?: number;
270
+ rowGap?: number;
271
+ columnGap?: number;
272
+ width?: SootSimAnimatedLength;
273
+ height?: SootSimAnimatedLength;
274
+ minWidth?: SootSimAnimatedLength;
275
+ minHeight?: SootSimAnimatedLength;
276
+ maxWidth?: SootSimAnimatedLength;
277
+ maxHeight?: SootSimAnimatedLength;
278
+ padding?: number;
279
+ paddingTop?: number;
280
+ paddingRight?: number;
281
+ paddingBottom?: number;
282
+ paddingLeft?: number;
283
+ paddingHorizontal?: number;
284
+ paddingVertical?: number;
285
+ paddingStart?: number;
286
+ paddingEnd?: number;
287
+ margin?: SootSimAnimatedLength;
288
+ marginTop?: SootSimAnimatedLength;
289
+ marginRight?: SootSimAnimatedLength;
290
+ marginBottom?: SootSimAnimatedLength;
291
+ marginLeft?: SootSimAnimatedLength;
292
+ marginHorizontal?: SootSimAnimatedLength;
293
+ marginVertical?: SootSimAnimatedLength;
294
+ marginStart?: SootSimAnimatedLength;
295
+ marginEnd?: SootSimAnimatedLength;
296
+ position?: 'relative' | 'absolute' | 'static';
297
+ top?: SootSimAnimatedLength;
298
+ right?: SootSimAnimatedLength;
299
+ bottom?: SootSimAnimatedLength;
300
+ left?: SootSimAnimatedLength;
301
+ start?: SootSimAnimatedLength;
302
+ end?: SootSimAnimatedLength;
303
+ inset?: SootSimAnimatedLength;
304
+ backgroundColor?: any;
305
+ tintColor?: any;
306
+ borderColor?: string;
307
+ borderWidth?: number;
308
+ borderTopWidth?: number;
309
+ borderBottomWidth?: number;
310
+ borderLeftWidth?: number;
311
+ borderRightWidth?: number;
312
+ borderTopColor?: string;
313
+ borderBottomColor?: string;
314
+ borderLeftColor?: string;
315
+ borderRightColor?: string;
316
+ borderStyle?: 'solid' | 'dotted' | 'dashed';
317
+ borderStartWidth?: number;
318
+ borderEndWidth?: number;
319
+ borderStartColor?: string;
320
+ borderEndColor?: string;
321
+ borderRadius?: SootSimAnimatedNumber;
322
+ borderTopLeftRadius?: SootSimAnimatedNumber;
323
+ borderTopRightRadius?: SootSimAnimatedNumber;
324
+ borderBottomRightRadius?: SootSimAnimatedNumber;
325
+ borderBottomLeftRadius?: SootSimAnimatedNumber;
326
+ borderBottomStartRadius?: SootSimAnimatedNumber;
327
+ borderBottomEndRadius?: SootSimAnimatedNumber;
328
+ opacity?: any;
329
+ backfaceVisibility?: 'visible' | 'hidden';
330
+ strokeDasharray?: any;
331
+ strokeDashoffset?: any;
332
+ overflow?: 'visible' | 'hidden' | 'scroll';
333
+ pointerEvents?: 'auto' | 'none' | 'box-none' | 'box-only';
334
+ zIndex?: SootSimAnimatedLength;
335
+ shadowColor?: string;
336
+ shadowOffset?: {
337
+ width: number;
338
+ height: number;
339
+ };
340
+ shadowOpacity?: number;
341
+ shadowRadius?: number;
342
+ _coreAnimationShadowPath?: {
343
+ x: number;
344
+ y: number;
345
+ width: number;
346
+ height: number;
347
+ cornerRadius?: number;
348
+ } | null;
349
+ boxShadow?: string | BoxShadowValue | BoxShadowValue[] | SootSimAnimatedStyleValue;
350
+ _boxShadow?: ParsedBoxShadow[];
351
+ _boxShadowOpacity?: SootSimAnimatedNumber;
352
+ filter?: SootSimAnimatedFilter;
353
+ _filter?: ParsedFilterOp[];
354
+ mixBlendMode?: 'normal' | 'plus-lighter' | 'multiply' | 'screen' | 'overlay' | 'darken' | 'lighten' | 'color-dodge' | 'color-burn' | 'hard-light' | 'soft-light' | 'difference' | 'exclusion' | 'hue' | 'saturation' | 'color' | 'luminosity' | 'destination-out';
355
+ isolation?: 'auto' | 'isolate';
356
+ outlineWidth?: number;
357
+ outlineStyle?: 'solid' | 'dashed' | 'dotted';
358
+ outlineColor?: string;
359
+ outlineOffset?: number;
360
+ boxSizing?: 'border-box' | 'content-box';
361
+ display?: 'flex' | 'none' | 'contents';
362
+ _contentsPressable?: boolean;
363
+ _ignoresSuspenseHide?: boolean;
364
+ color?: string | DynamicColor;
365
+ fontSize?: number;
366
+ fontWeight?: string;
367
+ fontFamily?: string;
368
+ fontStyle?: 'normal' | 'italic';
369
+ fontVariant?: string[];
370
+ fontVariationSettings?: string | Readonly<Record<string, number>>;
371
+ _caseSensitiveForms?: true;
372
+ textAlign?: 'left' | 'center' | 'right' | 'justify' | 'start' | 'end' | 'auto';
373
+ lineHeight?: number;
374
+ _lineLeading?: number;
375
+ _lineAscent?: number;
376
+ _uikitLabel?: true;
377
+ _textKitLeadingAbove?: true;
378
+ _coreTextLine?: true;
379
+ _textBackingRaster?: true;
380
+ _fieldLine?: boolean;
381
+ _swiftUIWidthProposal?: number;
382
+ _minimumScaleFactor?: number;
383
+ _hyphenationLocale?: string;
384
+ _hyphenationFactor?: number;
385
+ _swiftUIText?: true;
386
+ _composeText?: true;
387
+ _androidTextView?: true;
388
+ _androidTextSize?: 'dimension' | 'sp';
389
+ _swiftUILayout?: true;
390
+ _swiftUIVerticalGuide?: 'firstTextLineCenter';
391
+ _swiftUIPlatformView?: true;
392
+ _uikitControlContent?: true;
393
+ _numericText?: NumericTextPaintRequest;
394
+ letterSpacing?: number;
395
+ textDecorationLine?: 'none' | 'underline' | 'line-through' | 'underline line-through';
396
+ textDecorationColor?: string;
397
+ textDecorationStyle?: 'solid' | 'double' | 'dotted' | 'dashed';
398
+ textTransform?: 'none' | 'uppercase' | 'lowercase' | 'capitalize';
399
+ textShadowColor?: string;
400
+ textShadowOffset?: {
401
+ width: number;
402
+ height: number;
403
+ };
404
+ textShadowRadius?: number;
405
+ includeFontPadding?: boolean;
406
+ textAlignVertical?: 'auto' | 'top' | 'bottom' | 'center';
407
+ writingDirection?: 'auto' | 'ltr' | 'rtl';
408
+ backgroundImage?: string;
409
+ experimental_backgroundImage?: string | Array<{
410
+ type?: string;
411
+ colorStops?: Array<{
412
+ color?: string;
413
+ position?: number | string | {
414
+ value?: number;
415
+ unit?: string;
416
+ };
417
+ }>;
418
+ direction?: string | {
419
+ type?: string;
420
+ value?: string | number;
421
+ };
422
+ }>;
423
+ _gradient?: GradientStyle | GradientStyle[];
424
+ experimental_backgroundSize?: string | ReadonlyArray<unknown>;
425
+ experimental_backgroundPosition?: string | ReadonlyArray<unknown>;
426
+ experimental_backgroundRepeat?: string | ReadonlyArray<unknown>;
427
+ _backgroundSize?: BackgroundSizeEntry[];
428
+ _backgroundPosition?: BackgroundPositionEntry[];
429
+ _backgroundRepeat?: BackgroundRepeatEntry[];
430
+ _androidRipple?: AndroidRipplePaint;
431
+ _androidSwitch?: AndroidSwitchPaint;
432
+ borderCurve?: 'circular' | 'continuous';
433
+ _squircle?: boolean;
434
+ _hitShape?: 'circle' | {
435
+ kind: 'roundedRectangle' | 'capsule' | 'ellipse';
436
+ path: string;
437
+ };
438
+ _squircleSmoothing?: number;
439
+ __animated?: boolean;
440
+ __hasAnimatedValue?: boolean;
441
+ __animatedDeps?: ReadonlyArray<{
442
+ _sootsimNativeAnimationId?: number;
443
+ }>;
444
+ backdropFilter?: number;
445
+ _uiBlurMaterial?: UIBlurMaterialStyle;
446
+ _tenantBlur?: {
447
+ sigma: number;
448
+ colorMatrix?: readonly number[];
449
+ };
450
+ _backdropSampleInsetX?: number;
451
+ _backdropSampleClipInset?: true;
452
+ _liquidGlass?: SootSimLiquidGlassStyle;
453
+ _sourceLayerProjection?: boolean;
454
+ _lensFold?: SootSimLensFold | null;
455
+ _sdfDisplacement?: PeachSdfDisplacement;
456
+ _liquidGlassRect?: {
457
+ x: SootSimAnimatedNumber;
458
+ y: SootSimAnimatedNumber;
459
+ width: SootSimAnimatedNumber;
460
+ height: SootSimAnimatedNumber;
461
+ merge?: {
462
+ spacing: number;
463
+ members: ReadonlyArray<{
464
+ x: number;
465
+ y: number;
466
+ width: number;
467
+ height: number;
468
+ }>;
469
+ };
470
+ } | null;
471
+ _liquidGlassOpacity?: number | null;
472
+ _preserveLiquidGlassForeground?: boolean;
473
+ _liquidGlassMaterialTint?: {
474
+ light: string;
475
+ dark: string;
476
+ };
477
+ _plusVibrancy?: {
478
+ darker: string;
479
+ lighter?: string;
480
+ } | {
481
+ darker?: undefined;
482
+ lighter: string;
483
+ };
484
+ _backdropColorMatrix?: readonly number[];
485
+ _legacyVibrancy?: 'light' | 'dark';
486
+ _liquidGlassEdge?: LiquidGlassEdgeConfig;
487
+ _glassContainer?: {
488
+ spacing: number;
489
+ transaction?: {
490
+ id: number;
491
+ animation: {
492
+ kind: string;
493
+ curve?: string;
494
+ duration?: number;
495
+ response?: number;
496
+ dampingFraction?: number;
497
+ speed?: number;
498
+ delay?: number;
499
+ };
500
+ };
501
+ };
502
+ _glassEffectId?: {
503
+ id: string;
504
+ namespaceId: string;
505
+ };
506
+ transformOrigin?: string | [number | string, number | string, number?];
507
+ elevation?: number;
508
+ aspectRatio?: number | string;
509
+ transform?: Array<Record<string, any>>;
510
+ _presentationLayerTransform?: boolean;
511
+ _scrollPresentationOffsetY?: import('./animated.d.ts').AnimatedNumber;
512
+ _uikitPresentationFrame?: true;
513
+ _formSheetScaleTransform?: boolean;
514
+ _layoutOnly?: boolean;
515
+ _repaintBoundary?: boolean;
516
+ _wireframeHidden?: boolean;
517
+ _wireframeWallpaper?: boolean;
518
+ }
519
+ export interface SootSimLayout {
520
+ x: number;
521
+ y: number;
522
+ width: number;
523
+ height: number;
524
+ }
525
+ export interface SootSimTextLayoutLine {
526
+ ascender: number;
527
+ capHeight: number;
528
+ descender: number;
529
+ height: number;
530
+ text: string;
531
+ width: number;
532
+ x: number;
533
+ xHeight: number;
534
+ y: number;
535
+ }
536
+ export interface VirtualSurface {
537
+ readonly __virtual: true;
538
+ width(): number;
539
+ height(): number;
540
+ }
541
+ export type AccessibilityTextConfigurationSource = 'settings' | 'node';
542
+ interface RenderContextBase {
543
+ canvasKit: CanvasKit;
544
+ fontMgr: FontMgr;
545
+ dpr: number;
546
+ accessibilityTextConfigurationSource?: AccessibilityTextConfigurationSource;
547
+ }
548
+ export interface LayoutContext extends RenderContextBase {
549
+ kind: 'layout';
550
+ surface: Surface | VirtualSurface;
551
+ }
552
+ export interface PrewarmPass {
553
+ requireProgress: boolean;
554
+ completed: WeakSet<SootSimNode> | null;
555
+ reachSkips: number;
556
+ deadlineMs: number;
557
+ records: number;
558
+ exhausted: boolean;
559
+ realize: boolean;
560
+ realizeChunkReplays: number;
561
+ rasterPromotions: number;
562
+ realizeRasterBlits: number;
563
+ reach: PrewarmReach;
564
+ paintedNodeIds?: ReadonlySet<number>;
565
+ }
566
+ export interface PrewarmReach {
567
+ x: number;
568
+ y: number;
569
+ }
570
+ export type MetalShaderEffectOutput = {
571
+ readonly image: SkImage | null;
572
+ readonly pixelsPerPoint: number;
573
+ readonly origin: readonly [number, number];
574
+ };
575
+ export interface RenderContext extends RenderContextBase {
576
+ kind: 'paint';
577
+ windowPresentation?: {
578
+ width: number;
579
+ height: number;
580
+ angle: number;
581
+ };
582
+ surface: Surface;
583
+ canvas: Canvas;
584
+ webViewFrameOwner?: {
585
+ surfaceId: string;
586
+ generation: number;
587
+ };
588
+ metalEffectOutputs?: ReadonlyMap<SootSimNode, MetalShaderEffectOutput>;
589
+ suppressText?: boolean;
590
+ appMotionEnded?: boolean;
591
+ appInMotion?: boolean;
592
+ motionApproximate?: boolean;
593
+ captureFilterActive?: boolean;
594
+ screenOverlayLayer?: boolean;
595
+ textLoupe?: LoupeState;
596
+ textLoupeMotion?: {
597
+ values: Float64Array;
598
+ moving: boolean;
599
+ };
600
+ nativeWindowLayers?: readonly NativeWindowPortalLayer[];
601
+ gpuBacked?: boolean;
602
+ resolveSurfaceDraws?: () => void;
603
+ backdropSeeded?: boolean;
604
+ wireframeMaskedMaterial?: boolean;
605
+ suppressMaskedLiquidGlass?: boolean;
606
+ deferSurfaceFlush?: boolean;
607
+ shouldFlushAfterBasePass?: () => boolean;
608
+ onAfterBasePass?: () => void;
609
+ recordingBoundary?: boolean;
610
+ textVisit?: {
611
+ node: SootSimNode;
612
+ reuse: boolean;
613
+ reached: boolean;
614
+ failed: boolean;
615
+ };
616
+ flatBake?: boolean;
617
+ flattenedGroup?: SootSimNode;
618
+ flatAncestor?: boolean;
619
+ flatDeps?: [boolean];
620
+ damage?: FrameDamage | null;
621
+ damageClip?: DamageRect | null;
622
+ excludedNodeIds?: ReadonlySet<number>;
623
+ prewarm?: PrewarmPass;
624
+ recordingFailed?: boolean;
625
+ zoomCardBackdrops?: ReadonlyMap<SootSimNode, ZoomCardBackdrop>;
626
+ }
627
+ export interface ZoomCardBackdrop {
628
+ width: number;
629
+ height: number;
630
+ radii: {
631
+ tl: number;
632
+ tr: number;
633
+ br: number;
634
+ bl: number;
635
+ };
636
+ backgroundColor: SootSimStyle['backgroundColor'];
637
+ }
638
+ export type MeasureContext = RenderContext | LayoutContext;
639
+ export declare function isVirtualSurface(surface: Surface | VirtualSurface): surface is VirtualSurface;
640
+ export interface TransformRect {
641
+ x: number;
642
+ y: number;
643
+ w: number;
644
+ h: number;
645
+ }
646
+ export interface SynchronousRasterOptions {
647
+ width: number | null;
648
+ height: number | null;
649
+ scale: number;
650
+ opaque: boolean;
651
+ }
652
+ export interface SynchronousRaster {
653
+ width: number;
654
+ height: number;
655
+ pixels: Uint8Array;
656
+ }
657
+ export {};
@@ -0,0 +1,54 @@
1
+ import { type InspectOcclusionRect } from './inspect-visibility.d.ts';
2
+ import { type SootSimNode, type NodeGeometryQuery } from './node.d.ts';
3
+ import type { SootSimVisibleFrame } from '../../../peach-globals/src/index.d.ts';
4
+ export declare function isInspectPortalNode(node: SootSimNode): boolean;
5
+ export declare function inspectZIndex(node: SootSimNode): number;
6
+ export declare function getInspectPortalsBackToFront(root: SootSimNode): SootSimNode[];
7
+ export type VisibleFrame = SootSimVisibleFrame;
8
+ export declare function isInBackgroundVisibleInspectModal(node: SootSimNode, query: VisibleFrameQuery): boolean;
9
+ export interface VisibleFrameQuery {
10
+ geometry: NodeGeometryQuery;
11
+ accessibilityModalSiblings?: Map<SootSimNode, SootSimNode[]>;
12
+ styles: Map<SootSimNode, Record<string, unknown>>;
13
+ presentationRects: Map<SootSimNode, InspectOcclusionRect | null>;
14
+ portals: Map<SootSimNode, SootSimNode[]>;
15
+ hiddenChains: Map<SootSimNode, SootSimNode | null>;
16
+ backgroundVisibleModalChains: Map<SootSimNode, boolean>;
17
+ paintedRects: Map<SootSimNode, InspectOcclusionRect>;
18
+ visibleFrames: Map<SootSimNode, VisibleFrame & {
19
+ area: number;
20
+ }>;
21
+ childClips: Map<SootSimNode, ClipBounds>;
22
+ occluderBounds: Map<SootSimNode, InspectOcclusionRect | null>;
23
+ seeThroughModals?: boolean;
24
+ }
25
+ type ClipBounds = {
26
+ left: number;
27
+ top: number;
28
+ right: number;
29
+ bottom: number;
30
+ leftBy: SootSimNode | null;
31
+ topBy: SootSimNode | null;
32
+ rightBy: SootSimNode | null;
33
+ bottomBy: SootSimNode | null;
34
+ };
35
+ export declare function createVisibleFrameQuery(): VisibleFrameQuery;
36
+ export interface VisibleFrameOptions {
37
+ ignorePresentationLayerTransforms?: boolean;
38
+ query?: VisibleFrameQuery;
39
+ explain?: boolean;
40
+ }
41
+ export declare function nodeClipsDescendants(node: SootSimNode): boolean;
42
+ export declare function inspectPaintChildren(node: SootSimNode): import("./node.d.ts").SootSimChild[];
43
+ export declare function getNodeVisibleFrame(node: SootSimNode, abs: {
44
+ x: number;
45
+ y: number;
46
+ }, inlineBounds: {
47
+ width: number;
48
+ height: number;
49
+ } | null, options?: VisibleFrameOptions): VisibleFrame & {
50
+ area: number;
51
+ };
52
+ export declare function getNodeVisibleInspectFrame(node: SootSimNode, query?: VisibleFrameQuery): VisibleFrame;
53
+ export declare function visibleFrameContainsPoint(frame: InspectOcclusionRect, x: number, y: number): boolean;
54
+ export {};