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,216 @@
1
+ import { getCullStats, isPaintBoundedByLayout, readTransformTranslateForCull, resetCullStats, scanVisibleNativeAnimations, type CullBounds } from './cull-visibility.d.ts';
2
+ export { getCullStats, isPaintBoundedByLayout, readTransformTranslateForCull, resetCullStats, scanVisibleNativeAnimations, };
3
+ import { type PhasedDamage } from './portals.d.ts';
4
+ import type { EditMenuItemRect } from '../render-worker/edit-menu-geometry.d.ts';
5
+ import type { EditMenuBridgeEvent, EditMenuItemSpec, LoupeState } from '../render-worker/text-inputContract.d.ts';
6
+ export { clearImageAudit, readImageAudit, setImageAuditActive, type ImageAuditRow, } from './image-audit.d.ts';
7
+ export { readTextPaintReceipt, setTextPaintReceiptScope, type TextPaintReceiptRow, } from './text-paint-receipt.d.ts';
8
+ import type { CanvasKitRenderingApi as CanvasKit } from './canvaskit-api.d.ts';
9
+ import { type DamageRect } from './damage-rect.d.ts';
10
+ import { SootSimNode } from './node.d.ts';
11
+ import { type TextHyphenation } from './text-line-break.d.ts';
12
+ export { releaseRasterCachesInSubtree } from './paint-boundary.d.ts';
13
+ import { type Paragraph } from './text-paragraph.d.ts';
14
+ import type { SootSimStyle, RenderContext, PrewarmReach } from './types.d.ts';
15
+ import type { Canvas, ColorFilter, Paint, FontMgr, Surface } from 'canvaskit-wasm';
16
+ export declare function getZSortedChildren(node: SootSimNode): any[];
17
+ export declare function acquirePaint(ck: CanvasKit): Paint;
18
+ export declare function releasePaint(paint: Paint): void;
19
+ export declare function disposeRenderSurfaceResources(surface: Surface): void;
20
+ export declare function getBlurMaskFilter(ck: CanvasKit, sigma: number): ReturnType<CanvasKit['MaskFilter']['MakeBlur']>;
21
+ export declare function setPaintContinuationRenderCallback(cb: ((node: SootSimNode) => void) | null): void;
22
+ export declare function glassTakesAnimatedParameters(node: SootSimNode): boolean;
23
+ export declare function prewarmPaintBoundaries(root: SootSimNode, ctx: RenderContext, budgetMs: number, realizeInto?: Surface | null, reach?: PrewarmReach, requireProgress?: boolean, paintedNodeIds?: ReadonlySet<number>): {
24
+ records: number;
25
+ rasterPromotions: number;
26
+ complete: boolean;
27
+ realizeMs: number;
28
+ realizeBounds: [number, number, number, number] | null;
29
+ realizeBytes: number;
30
+ realizeChunkReplays: number;
31
+ realizeRasterBlits: number;
32
+ };
33
+ export declare function render(root: SootSimNode, ctx: RenderContext): void;
34
+ export declare function compositeRasterDensity(m: ArrayLike<number>, dpr: number): number;
35
+ export declare function getWalkCallbackCount(): number;
36
+ export interface NativeFrameRenderInputs {
37
+ root: number;
38
+ canvas: number;
39
+ surface: number;
40
+ damageId: number;
41
+ glassSurface: number;
42
+ physicalWidth: number;
43
+ physicalHeight: number;
44
+ dpr: number;
45
+ childX: number;
46
+ childY: number;
47
+ walkFlags: number;
48
+ paintStamp: number;
49
+ appPortals: readonly number[];
50
+ }
51
+ export declare function nativeFrameRenderInputs(root: SootSimNode, ctx: RenderContext): NativeFrameRenderInputs | string;
52
+ export interface NativeFrameRenderConfig {
53
+ readonly layoutVersion: number;
54
+ readonly paintFloor: number;
55
+ readonly fontGeneration: number;
56
+ readonly android: boolean;
57
+ readonly glassEpoch: number;
58
+ readonly retainedArea: number;
59
+ readonly clipThreshold: number;
60
+ }
61
+ export declare function nativeFrameRenderConfig(): NativeFrameRenderConfig;
62
+ export declare function reconcileNativeFrameRender(ctxs: readonly RenderContext[], frameTimeMs: number): void;
63
+ export declare function drawNodeImpl(node: SootSimNode, ctx: RenderContext, parentX: number, parentY: number, isPortalPass?: boolean, insideClip?: boolean, txOffX?: number, txOffY?: number, clipBounds?: CullBounds | null, filterInput?: boolean): void;
64
+ export declare function drawIsolatedNode(node: SootSimNode, ctx: RenderContext, contentSize?: {
65
+ width: number;
66
+ height: number;
67
+ } | 'filter-input', svgViewport?: {
68
+ width: number;
69
+ height: number;
70
+ }): void;
71
+ export declare function addSubtreePaintDamage(into: PhasedDamage, node: SootSimNode, keepsOwnCapture?: boolean, covered?: ReadonlySet<SootSimNode>): void;
72
+ export declare function nodeInkDamage(node: SootSimNode): DamageRect | null;
73
+ export declare function drawOutline(node: SootSimNode, ctx: RenderContext, x: number, y: number, w: number, h: number): void;
74
+ import { applyTextTransform } from './text-transform.d.ts';
75
+ export { applyTextTransform };
76
+ export declare function drawText(node: SootSimNode, ctx: RenderContext, x: number, y: number, maxWidth: number, offFrame?: boolean): void;
77
+ type TextShaderBounds = {
78
+ x: number;
79
+ y: number;
80
+ width: number;
81
+ height: number;
82
+ };
83
+ export declare function textShaderBounds(node: SootSimNode, ctx: RenderContext): TextShaderBounds;
84
+ export declare function setGlyphRealizationSink(sink: (node: SootSimNode, textKey: string) => void): void;
85
+ export interface TextParagraphInputs {
86
+ text: string;
87
+ style: SootSimStyle;
88
+ fontSize: number;
89
+ color: string | number;
90
+ paragraphLineHeight: number | null;
91
+ attachmentsStandOnBaseline: boolean;
92
+ mixedParagraphs: boolean;
93
+ paragraphLeading: number;
94
+ letterSpacing: number;
95
+ textOffset: {
96
+ x: number;
97
+ y: number;
98
+ };
99
+ overlaySnapBias: number;
100
+ fontStyle: string;
101
+ numberOfLines: number;
102
+ ellipsizeMode: 'clip' | 'head' | 'middle' | 'tail';
103
+ pushOut: boolean;
104
+ hyphenation: TextHyphenation | undefined;
105
+ hasNestedText: boolean;
106
+ clipToHostBounds: boolean;
107
+ pad: {
108
+ left: number;
109
+ top: number;
110
+ right: number;
111
+ bottom: number;
112
+ };
113
+ rasterScale: number;
114
+ textKey: string;
115
+ }
116
+ export declare function resolveTextParagraphInputs(node: SootSimNode, rasterScale: number): TextParagraphInputs;
117
+ export declare function ensureNodeParagraph(node: SootSimNode, contentWidth: number, ck: CanvasKit, fontMgr: FontMgr, rasterScale: number, precomputed?: TextParagraphInputs, prewarmPhase?: boolean): Paragraph | null;
118
+ export declare function drawTextPaint(node: SootSimNode, ctx: RenderContext, x: number, y: number, maxWidth: number, contentHeight: number, inputs: TextParagraphInputs, para: Paragraph, offFrame?: boolean): void;
119
+ export declare function drawSelectionHighlight(node: SootSimNode, ctx: RenderContext, textX: number, textY: number): void;
120
+ export declare function drawSelectionHandles(node: SootSimNode, ctx: RenderContext, textX: number, textY: number): void;
121
+ export declare function setLoupeStateBridge(fn: ((state: LoupeState) => void) | null): void;
122
+ export declare function setLoupeState(x: number, y: number, active: boolean): void;
123
+ export declare function getLoupeDebugState(): {
124
+ x: number;
125
+ y: number;
126
+ active: boolean;
127
+ };
128
+ export declare function drawLoupe(ctx: RenderContext): void;
129
+ export declare function setEditMenuStateBridge(fn: ((ev: EditMenuBridgeEvent) => void) | null): void;
130
+ export declare function applyEditMenuRectsFromBridge(barRect: {
131
+ x: number;
132
+ y: number;
133
+ width: number;
134
+ height: number;
135
+ } | null, itemRects: EditMenuItemRect[]): void;
136
+ export declare function setEditMenuState(items: EditMenuItemSpec[], anchor: {
137
+ x: number;
138
+ y: number;
139
+ width: number;
140
+ height: number;
141
+ }, expandedFrom: {
142
+ x: number;
143
+ y: number;
144
+ width: number;
145
+ height: number;
146
+ } | null, opensBelow: boolean | null): void;
147
+ export declare function clearEditMenuState(): void;
148
+ export declare function isEditMenuVisible(): boolean;
149
+ export declare function getEditMenuDebugState(): {
150
+ items: {
151
+ action: string;
152
+ label: string;
153
+ systemImage?: string;
154
+ symbolCodePoint?: number;
155
+ section?: number;
156
+ shelf?: boolean;
157
+ submenu?: boolean;
158
+ submenuSymbolCodePoint?: number;
159
+ }[];
160
+ anchor: {
161
+ x: number;
162
+ y: number;
163
+ width: number;
164
+ height: number;
165
+ };
166
+ expanded: boolean;
167
+ barRect: {
168
+ x: number;
169
+ y: number;
170
+ width: number;
171
+ height: number;
172
+ } | null;
173
+ itemRects: {
174
+ action: string;
175
+ x: number;
176
+ y: number;
177
+ width: number;
178
+ height: number;
179
+ labelRect: Pick<EditMenuItemRect, 'x' | 'y' | 'width' | 'height'> | null;
180
+ }[];
181
+ } | null;
182
+ export declare function hitTestEditMenu(x: number, y: number): string | null;
183
+ export declare function drawEditMenu(ctx: RenderContext): void;
184
+ export declare function drawCursor(node: SootSimNode, ctx: RenderContext, textX: number, textY: number): void;
185
+ export type ImageSamplingMode = 'mipmapped' | 'cubic' | 'linear' | 'nearest' | 'repeat' | 'exact';
186
+ export declare function flashScrollIndicators(node: SootSimNode): boolean;
187
+ export declare function clearScrollIndicatorsInRoot(root: SootSimNode): void;
188
+ export declare function advanceRendererPaintAnimations(now: number): void;
189
+ export declare function hasActiveRendererPaintAnimations(): boolean;
190
+ export declare function drawImage(node: SootSimNode, ctx: RenderContext, x: number, y: number, w: number, h: number, options?: {
191
+ applyFade?: boolean;
192
+ horizontalPosition?: number;
193
+ resizeMode?: 'center' | 'contain' | 'cover' | 'none' | 'repeat' | 'stretch';
194
+ sourceScale?: number;
195
+ useIntrinsicSize?: boolean;
196
+ verticalPosition?: number;
197
+ }): ImageSamplingMode | null;
198
+ export declare function readImageTintColor(ck: CanvasKit, node: SootSimNode): import("canvaskit-wasm").Color | null;
199
+ export declare function createImageTintFilter(ck: CanvasKit, node: SootSimNode): ColorFilter | null;
200
+ export declare function drawAxisAlignedLinearGradientStrips(ck: CanvasKit, canvas: Canvas, x: number, y: number, w: number, h: number, colors: readonly string[], locations: readonly number[], start: {
201
+ x: number;
202
+ y: number;
203
+ }, end: {
204
+ x: number;
205
+ y: number;
206
+ }, style?: SootSimStyle): boolean;
207
+ interface CornerRadii {
208
+ tl: number;
209
+ tr: number;
210
+ br: number;
211
+ bl: number;
212
+ }
213
+ export declare function drawNodeBorders(ck: CanvasKit, canvas: Canvas, ctx: RenderContext, x: number, y: number, w: number, h: number, style: SootSimStyle, node: SootSimNode, cornerRadiiOrGetter: CornerRadii | (() => CornerRadii), wf: boolean): void;
214
+ export declare function parseColor(ck: CanvasKit, color: any): Float32Array;
215
+ export { resolveSvgViewBoxTransform } from './svg-geometry.d.ts';
216
+ export declare function drawSvgRoot(node: SootSimNode, ctx: RenderContext, x: number, y: number, w: number, h: number): void;
@@ -0,0 +1,40 @@
1
+ import type { ParsedFontNames } from './app-font-registry.d.ts';
2
+ import type { AppFontFaceStyle, FontVerticalMetrics } from './font-config.d.ts';
3
+ export type FontPlatform = 'ios' | 'android';
4
+ export interface MaterialSymbolFontMetadata {
5
+ hash: string;
6
+ codepoints: Readonly<Record<string, number>>;
7
+ mirrored: readonly string[];
8
+ }
9
+ export interface MaterialSymbolFontAssets {
10
+ hash: string;
11
+ codepointsUrl: string;
12
+ mirroredUrl: string;
13
+ }
14
+ export declare function isMaterialSymbolFontAssets(value: unknown): value is MaterialSymbolFontAssets;
15
+ export declare function parseMaterialSymbolFontMetadata(hash: string, codepointText: string, mirroredText: string): MaterialSymbolFontMetadata;
16
+ export declare function isMaterialSymbolFontMetadata(value: unknown): value is MaterialSymbolFontMetadata;
17
+ export type ConfigPluginFontSpec = AppFontSpec;
18
+ export interface AppFontSpec {
19
+ url: string;
20
+ family?: string;
21
+ aliases?: string[];
22
+ materialSymbols?: MaterialSymbolFontAssets;
23
+ }
24
+ export declare function resolveAppFontsWire(wire: string, loadCatalog: (url: string) => Promise<Response>): Promise<string>;
25
+ export declare function parseAppFontWire(wire: string): AppFontSpec[];
26
+ export declare function appFontAssetUrlsFromWire(wire: string): string[];
27
+ export interface AppFontWireSpec extends Omit<ConfigPluginFontSpec, 'materialSymbols'> {
28
+ data?: ArrayBuffer;
29
+ materialSymbols?: MaterialSymbolFontMetadata;
30
+ family: string;
31
+ names: ParsedFontNames | null;
32
+ face: AppFontFaceStyle | null;
33
+ metrics: FontVerticalMetrics | null;
34
+ symbols: readonly number[];
35
+ }
36
+ export declare function expoFontPathsFromPlugins(plugins: unknown, platform: FontPlatform): string[];
37
+ export declare function metroFontSpecsFromPaths(paths: string[], metroOrigin: string, platform: FontPlatform): ConfigPluginFontSpec[];
38
+ export declare function metroAssetUrlFromPath(clean: string, metroOrigin: string): string;
39
+ export declare function nativeLinkedFontSpecsFromPaths(paths: string[], platform: FontPlatform, assetUrl: (path: string) => string): ConfigPluginFontSpec[];
40
+ export declare function encodeAppFontsWire(specs: readonly ConfigPluginFontSpec[]): string;
@@ -0,0 +1,25 @@
1
+ export type SplashPlatform = 'ios' | 'android';
2
+ export type SplashResizeMode = 'contain' | 'cover';
3
+ export type ConfigPluginSplashSource = 'one-native' | 'expo-splash-screen' | 'expo-legacy' | 'react-native-bootsplash';
4
+ export interface ConfigPluginSplashSpec {
5
+ source: ConfigPluginSplashSource;
6
+ backgroundColor: string;
7
+ interfaceStyle?: 'light' | 'dark' | 'automatic';
8
+ backgroundImageUrl?: string;
9
+ imageUrl?: string;
10
+ imageWidthPx?: number;
11
+ resizeMode?: SplashResizeMode;
12
+ dark?: {
13
+ backgroundColor?: string;
14
+ backgroundImageUrl?: string;
15
+ imageUrl?: string;
16
+ };
17
+ }
18
+ export declare function iosLaunchArtSplash(spec: ConfigPluginSplashSpec | null): ConfigPluginSplashSpec | null;
19
+ export type SplashAssetUrlResolver = (rawPath: string) => string | undefined;
20
+ export declare function encodeAppSplashWire(spec: ConfigPluginSplashSpec): string;
21
+ export declare function parseAppSplashWire(wire: string): ConfigPluginSplashSpec | null;
22
+ export declare function configPluginSplashFromExpoConfig(exp: unknown, platform: SplashPlatform, metroOrigin: string, opts?: {
23
+ resolveAssetUrl?: SplashAssetUrlResolver;
24
+ oneNativeApp?: boolean;
25
+ }): ConfigPluginSplashSpec | null;
@@ -0,0 +1,44 @@
1
+ import { SootSimNode } from './node.d.ts';
2
+ import type { SootSimStyle } from './types.d.ts';
3
+ export type CullBounds = {
4
+ left: number;
5
+ top: number;
6
+ right: number;
7
+ bottom: number;
8
+ };
9
+ export declare function intersectCullBounds(a: CullBounds | null, b: CullBounds): CullBounds;
10
+ export declare function readTransformTranslateForCull(transforms: SootSimStyle['transform'] | undefined, width?: number, height?: number): {
11
+ x: number;
12
+ y: number;
13
+ };
14
+ export declare function resolveLayoutAnim(node: SootSimNode): {
15
+ x: number;
16
+ y: number;
17
+ w: number;
18
+ h: number;
19
+ } | null;
20
+ export declare function isPaintBoundedByLayout(node: SootSimNode): boolean;
21
+ export declare function isLayoutOutsideClip(childX: number, childY: number, w: number, h: number, clip: CullBounds): boolean;
22
+ export declare const _cullScratchRect: {
23
+ x: number;
24
+ y: number;
25
+ w: number;
26
+ h: number;
27
+ };
28
+ export declare function layoutTransformMatrix(node: SootSimNode, x: number, y: number): number[] | null;
29
+ export declare function applySimpleTransformToRect(transforms: SootSimStyle['transform'] | undefined, x: number, y: number, w: number, h: number, transformOrigin?: SootSimStyle['transformOrigin']): {
30
+ x: number;
31
+ y: number;
32
+ w: number;
33
+ h: number;
34
+ } | null;
35
+ export declare function shouldCullChild(child: SootSimNode, childX: number, childY: number, childTxOffX: number, childTxOffY: number, clipBounds: CullBounds | null): boolean;
36
+ export declare function getRendererDevicePlatform(): string | undefined;
37
+ export declare function getCullStats(): Readonly<{
38
+ skipped: number;
39
+ kept: number;
40
+ examined: number;
41
+ }>;
42
+ export declare function resetCullStats(): void;
43
+ export declare function scanVisibleNativeAnimations(root: SootSimNode, viewportWidth: number, viewportHeight: number): void;
44
+ export declare function clipsChildren(node: SootSimNode): boolean;
@@ -0,0 +1,19 @@
1
+ export interface DamageRect {
2
+ left: number;
3
+ top: number;
4
+ right: number;
5
+ bottom: number;
6
+ }
7
+ export declare const FULL_DAMAGE: DamageRect;
8
+ export declare function isFullDamage(d: DamageRect | null | undefined): boolean;
9
+ export declare function makeDamage(left: number, top: number, right: number, bottom: number): DamageRect;
10
+ export declare function copyDamage(rect: DamageRect): DamageRect;
11
+ export declare function unionDamage(into: DamageRect | null, rect: DamageRect | null | undefined): DamageRect | null;
12
+ export type DevicePixelDamage = DamageRect & {
13
+ readonly pixelWidth: number;
14
+ readonly pixelHeight: number;
15
+ };
16
+ export declare function snapOutsetDamageToDevicePixels(rect: DamageRect, dpr: number): DevicePixelDamage;
17
+ export declare function intersectDamage(rect: DamageRect, clip: DamageRect | null | undefined): DamageRect;
18
+ export declare function clampDamage(rect: DamageRect, surfaceW: number, surfaceH: number): DamageRect;
19
+ export declare function damageArea(d: DamageRect | null | undefined): number;
@@ -0,0 +1,6 @@
1
+ export type EngineResourceLoader = (url: string, credentials?: RequestCredentials) => Promise<ArrayBuffer>;
2
+ export declare function configureEngineResources(opts: {
3
+ loadResource?: EngineResourceLoader;
4
+ buffers?: Record<string, ArrayBuffer>;
5
+ }): void;
6
+ export declare const loadEngineResource: EngineResourceLoader;
@@ -0,0 +1,5 @@
1
+ import type { NativeAppIconArtwork } from '../../../../../src/nativeAppIconContract.ts';
2
+ export declare function expoConfigFromManifest(manifest: unknown): Record<string, unknown> | null;
3
+ export declare function resolvedExpoAppIconUrl(config: Record<string, unknown> | null, platform: string, bundleUrl: string): string | undefined;
4
+ export declare function setExpoAppIconArtwork(artwork: NativeAppIconArtwork | undefined): void;
5
+ export declare function getExpoAppIconArtwork(): NativeAppIconArtwork | undefined;
@@ -0,0 +1,30 @@
1
+ import { type SootSimNode } from './node.d.ts';
2
+ export interface FiberDebugLike {
3
+ type?: unknown;
4
+ elementType?: unknown;
5
+ memoizedProps?: {
6
+ srcloc?: unknown;
7
+ 'data-one-source'?: unknown;
8
+ } | null;
9
+ return?: FiberDebugLike | null;
10
+ stateNode?: unknown;
11
+ _debugOwner?: FiberDebugLike | null;
12
+ _debugSource?: {
13
+ fileName?: unknown;
14
+ lineNumber?: unknown;
15
+ columnNumber?: unknown;
16
+ } | null;
17
+ _debugStack?: {
18
+ stack?: unknown;
19
+ } | null;
20
+ }
21
+ export interface FiberScope {
22
+ contains: (fiber: FiberDebugLike) => boolean;
23
+ authored: (fiber: FiberDebugLike) => boolean;
24
+ }
25
+ export declare function guestFiberScope(fiber: FiberDebugLike): FiberScope;
26
+ export declare function assignFiberDebugMetadata(node: SootSimNode, internalInstanceHandle: FiberDebugLike | null | undefined): void;
27
+ export interface FiberDebugResolver {
28
+ componentStack: (fiber: FiberDebugLike) => string[] | null;
29
+ sourceLocation: (fiber: FiberDebugLike) => string | null;
30
+ }
@@ -0,0 +1,139 @@
1
+ import { SF_PRO_FONT_URL } from './generated/sf-pro-font.d.ts';
2
+ import type { DeviceSpec, RuntimePlatform } from '../../../../../src/device-catalog.ts';
3
+ import type { CanvasKitRenderingApi } from './canvaskit-api.d.ts';
4
+ import type { SootSimStyle } from './types.d.ts';
5
+ import type { FontMgr, ParagraphBuilder, ParagraphStyle } from 'canvaskit-wasm';
6
+ export declare const DEFAULT_FONT_FAMILY = "SF Pro";
7
+ export declare const SF_PRO_VERTICAL_METRICS: {
8
+ ascender: number;
9
+ descender: number;
10
+ lineGap: number;
11
+ unitsPerEm: number;
12
+ };
13
+ export declare const SF_PRO_VARIANT_FONT_FAMILY = "SF Pro Variant";
14
+ export declare const SF_PRO_ROUNDED_FONT_FAMILY = "SF Pro Rounded";
15
+ export declare const SF_PRO_GRADED_FONT_FAMILY = "SF Pro Graded";
16
+ export declare const SF_COMPACT_FONT_FAMILY = "SF Compact";
17
+ export declare const NEW_YORK_FONT_FAMILY = "New York";
18
+ export declare const SF_MONO_FONT_FAMILY = "SF Mono";
19
+ export declare const SF_COMPACT_KEYCAP_FONT_FAMILY = ".SFCompact-LightG3";
20
+ export declare const SF_COMPACT_KEYCAP_METRICS: {
21
+ ascender: number;
22
+ descender: number;
23
+ lineGap: number;
24
+ unitsPerEm: number;
25
+ capHeight: number;
26
+ xHeight: number;
27
+ };
28
+ export declare const SYSTEM_COMPANION_FONT_FILES: {
29
+ readonly italic: 'sf-pro-italic.woff2';
30
+ readonly variant: 'sf-pro-variant.woff2';
31
+ readonly rounded: 'sf-pro-rounded.woff2';
32
+ readonly graded: 'sf-pro-graded.woff2';
33
+ readonly compact: 'sf-compact.woff2';
34
+ readonly serif: 'new-york.woff2';
35
+ readonly mono: 'sf-mono.woff2';
36
+ };
37
+ export interface SystemNamedFace {
38
+ family: string;
39
+ postScript: string;
40
+ file: string;
41
+ weight: number;
42
+ italic: boolean;
43
+ metrics: FontVerticalMetrics;
44
+ }
45
+ export declare const IOS_NAMED_FACES: readonly SystemNamedFace[];
46
+ export declare const IOS_FONT_DATA_FILES: ReadonlyMap<string, string>;
47
+ export declare const ANDROID_NAMED_FACES: readonly SystemNamedFace[];
48
+ export declare function resolveSystemNamedFace(fontFamily: string | undefined, fontWeight: unknown, fontStyle: unknown): SystemNamedFace | null;
49
+ export declare const ANDROID_FONT_FAMILY = "Roboto";
50
+ export declare const ANDROID_EMOJI_FONT_FAMILY = "Noto Color Emoji";
51
+ export declare const ANDROID_EMOJI_FLAGS_FONT_FAMILY = "Noto Color Emoji Flags";
52
+ export declare const ANDROID_EMOJI_FONT_FAMILIES: readonly ["Noto Color Emoji", "Noto Color Emoji Flags"];
53
+ export declare const ANDROID_EMOJI_FONT_FILES: readonly ['noto-color-emoji.ttf', 'noto-color-emoji-flags.ttf'];
54
+ export declare const EMOJI_FONT_FAMILY = "SootSimEmojiMetrics";
55
+ export declare function noteLanguageSubsetFamily(family: string): void;
56
+ export declare function normalizeFontWeight(fontWeight: unknown): number;
57
+ export interface AppFontFaceStyle {
58
+ family: string;
59
+ fontStyle: 'normal' | 'italic';
60
+ fontWeight: number;
61
+ variationAxes?: readonly {
62
+ axis: string;
63
+ min: number;
64
+ max: number;
65
+ default: number;
66
+ }[];
67
+ }
68
+ export declare function deriveBootFontBaseDir(bootFontUrl: string | null | undefined): string | null;
69
+ export { SF_PRO_FONT_URL };
70
+ export declare const BASE_FONT_URLS: string[];
71
+ export declare const ANDROID_BASE_FONT_URLS: string[];
72
+ export declare const BOOT_FONT_URLS: string[];
73
+ export declare const DEFERRED_FONT_URLS: string[];
74
+ export declare function activePlatform(): RuntimePlatform;
75
+ export declare function usesCoreTextGlyphs(style: SootSimStyle): boolean;
76
+ export declare function getDefaultFontFamilyForPlatform(platform?: RuntimePlatform): "Roboto" | "SF Pro";
77
+ export declare function isDefaultSystemFontFamily(fontFamily: string | undefined): boolean;
78
+ export declare function getBootFontUrlsForDevice(device: Pick<DeviceSpec, 'platform'>): string[];
79
+ export declare function bundledFontFamilyForUrl(url: string): string | null;
80
+ export interface SystemFontDesign {
81
+ weightAxes: readonly {
82
+ axis: string;
83
+ values: ReadonlyArray<readonly [number, number]>;
84
+ }[];
85
+ opticalSize?: readonly [number, number];
86
+ tracking: ReadonlyArray<readonly [number, number]>;
87
+ }
88
+ export declare function registerSystemFontDesign(family: string, design: SystemFontDesign): void;
89
+ export declare function resolveFontWeightAxis(fontWeight: unknown, fontFamily?: string): number;
90
+ export declare function resolveOpticalSizeAxis(fontSize: number, fontFamily?: string): number;
91
+ export declare function resolveFontVariations(fontFamily: string | undefined, fontSize: number, fontWeight: unknown, fontStyle?: unknown, fontVariationSettings?: SootSimStyle['fontVariationSettings']): {
92
+ axis: string;
93
+ value: number;
94
+ }[] | undefined;
95
+ export declare function markSystemCompanionFontFamily(family: string): void;
96
+ export declare function getFontRegistrationGeneration(): number;
97
+ export declare function noteTextSymbolRegistered(): void;
98
+ export declare function registerEngineFontFamily(family: string): void;
99
+ export declare function markSystemNamedFaceFamily(face: SystemNamedFace): void;
100
+ export declare function registerLazySystemFontFamily(family: string): void;
101
+ export declare function makeParagraphBuilder(ck: CanvasKitRenderingApi, style: ParagraphStyle, fontMgr: FontMgr): ParagraphBuilder;
102
+ export declare function registerEngineAppFontFace(aliases: readonly string[], face: AppFontFaceStyle): void;
103
+ export declare function isFontFamilyRegistered(family: string): boolean;
104
+ export declare function getRegisteredFontFamilies(): string[];
105
+ export interface FontVerticalMetrics {
106
+ ascender: number;
107
+ descender: number;
108
+ lineGap: number;
109
+ unitsPerEm: number;
110
+ capHeight?: number;
111
+ xHeight?: number;
112
+ }
113
+ export declare function registerEngineFontVerticalMetrics(family: string, metrics: FontVerticalMetrics): void;
114
+ export declare function getRegisteredFontVerticalMetrics(family: string | undefined, fontWeight?: unknown, fontStyle?: unknown): FontVerticalMetrics | undefined;
115
+ export declare function resolveCustomFontBaselineOffset(metrics: FontVerticalMetrics, fontSize: number, lineHeight: unknown, skiaBaseline: number): number;
116
+ export declare function resetRegisteredFontFamilies(): void;
117
+ export declare function resolveFontVariantFeatures(fontVariant: readonly string[] | undefined): string[];
118
+ export declare function needsSystemVariantFace(fontVariant: readonly string[] | undefined, fontFamily: string | undefined, caseSensitiveForms?: true): boolean;
119
+ export declare function resolveFontFamilies(family?: string, fontWeight?: unknown, fontStyle?: unknown, fontVariant?: readonly string[], caseSensitiveForms?: true): string[];
120
+ export declare function resolveAndroidEmojiFontFamilies(): readonly string[];
121
+ export declare function isSystemFontFamily(requestedFamily: string | undefined): boolean;
122
+ export declare function resolveSystemLetterSpacing(letterSpacing: unknown, fontSize: number, fontFamily?: string, fontWeight?: unknown): number;
123
+ export declare function resolveSystemTighteningLimit(fontSize: number, fontFamily?: string): number;
124
+ export declare function resolveSystemTextOffset(fontFamily: string | undefined, physicalPixel: number): {
125
+ x: number;
126
+ y: number;
127
+ };
128
+ export declare function resolveSystemTextLineHeightAdjustment(lineHeight: unknown, fontSize: number, fontFamily?: string): number;
129
+ export declare function resolveAndroidSystemFontMetrics(fontSize: number, fontFamily: string | undefined, physicalPixel: number, lineHeight?: number, includeFontPadding?: boolean, composeText?: boolean, androidTextSize?: SootSimStyle['_androidTextSize']): {
130
+ ascent: number;
131
+ descent: number;
132
+ height: number;
133
+ paddingTop: number;
134
+ paddingBottom: number;
135
+ } | null;
136
+ export declare function resolveSystemLineHeightMultiplier(lineHeight: unknown, fontSize: number, fontFamily: string | undefined, composeText?: boolean, androidTextSize?: SootSimStyle['_androidTextSize']): number | null;
137
+ export declare function resolveNaturalTextLineHeight(lineHeight: unknown, fontSize: number, fontFamily: string | undefined, fontWeight?: unknown, fontStyle?: unknown, composeText?: boolean, androidTextSize?: SootSimStyle['_androidTextSize']): number | null;
138
+ export declare function resolveSystemTextMeasuredHeightTrim(lineHeight: unknown, fontSize: number, fontFamily: string | undefined, physicalPixel: number): number;
139
+ export declare function resolveEngineAssetUrls(base: string, urls: readonly string[], pageUrl: string): string[];
@@ -0,0 +1 @@
1
+ export declare const SF_PRO_FONT_URL = "/fonts/sf-pro.ttf?sha256=c801ecb0e1d3e71f1df1f3326c0076ee71c23b92624bee9e3c5628d106b19171";
@@ -0,0 +1,31 @@
1
+ declare const GLASS_STYLES: readonly ['regular', 'clear', 'home-dock', 'home-search', 'switch-thumb', 'slider-thumb', 'sidebar'];
2
+ export type GlassStyle = (typeof GLASS_STYLES)[number];
3
+ export declare function glassMaterialCode(style: GlassStyle): number;
4
+ export type GlassScheme = 'light' | 'dark';
5
+ export interface GlassShapeArrow {
6
+ x: number;
7
+ y: number;
8
+ direction: 'up' | 'down' | 'left' | 'right';
9
+ depth: number;
10
+ tipRadius: number;
11
+ joinRadius: number;
12
+ pinned?: 'start' | 'end';
13
+ centre: number;
14
+ }
15
+ export interface GlassShape {
16
+ x: number;
17
+ y: number;
18
+ width: number;
19
+ height: number;
20
+ radius: number;
21
+ arrow?: GlassShapeArrow;
22
+ }
23
+ export interface GlassMotionScope {
24
+ slot: number;
25
+ id: number;
26
+ }
27
+ export interface GlassInteractionGlow {
28
+ opacity: number;
29
+ }
30
+ export declare function glassMaterialOutset(style: GlassStyle, width: number, height: number, intensity?: number): number;
31
+ export {};