peachsim 0.1.1644 → 0.1.1653
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -0
- package/cli/app-catalog.ts +1 -1
- package/cli/app-fonts.ts +11 -80
- package/cli/app-splash.ts +18 -12
- package/cli/bridge-flow-runner.ts +11 -7
- package/cli/cloud-client.ts +10 -13
- package/cli/command-registry.ts +13 -4
- package/cli/commands/box.ts +4 -4
- package/cli/commands/control.ts +93 -53
- package/cli/commands/coverage-parser.ts +67 -0
- package/cli/commands/coverage.ts +550 -0
- package/cli/commands/debug.ts +9 -18
- package/cli/commands/desktop.ts +19 -7
- package/cli/commands/device.ts +14 -9
- package/cli/commands/guest-host.ts +6 -10
- package/cli/commands/inspect/core.ts +81 -17
- package/cli/commands/inspect.ts +13 -8
- package/cli/commands/kotlin.ts +2 -2
- package/cli/commands/maestro-compare.ts +1 -1
- package/cli/commands/platform.ts +20 -11
- package/cli/commands/preview.ts +16 -18
- package/cli/commands/runtime.ts +3 -2
- package/cli/commands/screenshot-layers.ts +1 -1
- package/cli/commands/screenshot.ts +1 -1
- package/cli/commands/serve.ts +5 -1
- package/cli/commands/support.ts +4 -4
- package/cli/commands/three-mode.ts +22 -15
- package/cli/commands/upload.ts +44 -45
- package/cli/current-sim.ts +38 -0
- package/cli/desktop-companion.ts +36 -8
- package/cli/device-option.ts +1 -1
- package/cli/drivers/playwright.ts +1 -0
- package/cli/drivers/types.ts +4 -0
- package/cli/help-core.ts +1 -1
- package/cli/internal-child.ts +2 -1
- package/cli/main.ts +9 -3
- package/cli/outbound-endpoints.ts +11 -3
- package/cli/output-redaction.ts +39 -14
- package/cli/remote-simulators.ts +4 -1
- package/cli/scene-video.ts +5 -2
- package/cli/send-to-box.ts +7 -10
- package/cli/telemetry.ts +1 -1
- package/cli/ws-bridge.ts +8 -1
- package/detox/attempt-events.cjs +3 -1
- package/detox/attempt-events.d.cts +1 -1
- package/detox/expectations.ts +108 -99
- package/detox/frame-offset.d.mts +6 -0
- package/detox/frame-offset.mjs +35 -0
- package/detox/gestures.ts +6 -18
- package/detox/index.ts +169 -101
- package/detox/jest-preset.cjs +1 -3
- package/detox/jest-transform.cjs +4 -0
- package/detox/matchers.ts +3 -0
- package/detox/motion-change.cjs +46 -114
- package/detox/motion-change.d.cts +5 -27
- package/dist-lib/agent-daemon-client.cjs +1 -1
- package/dist-lib/agent-events.cjs +1 -1
- package/dist-lib/attached-projects.cjs +1 -1
- package/dist-lib/auth/shared-session.cjs +1 -1
- package/dist-lib/backend-origin.cjs +1 -1
- package/dist-lib/beta.cjs +1 -1
- package/dist-lib/beta.mjs +1 -1
- package/dist-lib/bridge-constants.cjs +1 -1
- package/dist-lib/bridge-contract-input.cjs +65 -1
- package/dist-lib/bridge-contract-input.mjs +63 -1
- package/dist-lib/bridge-contract.cjs +19 -1
- package/dist-lib/bridge-contract.mjs +17 -1
- package/dist-lib/bundle-channel.cjs +38091 -14846
- package/dist-lib/capture-contract.cjs +1 -1
- package/dist-lib/capture-contract.mjs +1 -1
- package/dist-lib/cloud-contract.cjs +1 -1
- package/dist-lib/cloud-contract.mjs +1 -1
- package/dist-lib/cloud-test-args.cjs +1 -1
- package/dist-lib/cloud-test-args.mjs +1 -1
- package/dist-lib/cloud.cjs +1 -1
- package/dist-lib/cloud.mjs +1 -1
- package/dist-lib/config.cjs +1 -1
- package/dist-lib/config.mjs +5 -3
- package/dist-lib/detox/index.cjs +1244 -4509
- package/dist-lib/detox/jest-preset.cjs +1 -3
- package/dist-lib/detox/jest-transform.cjs +4 -0
- package/dist-lib/dev-bundle-resolution.cjs +28 -24
- package/dist-lib/expo-swift-bundle.cjs +35049 -13125
- package/dist-lib/expo-swift-metadata.cjs +1 -1
- package/dist-lib/expo-swift-metadata.mjs +1 -1
- package/dist-lib/home-paths.cjs +1 -1
- package/dist-lib/host/bridge-host.cjs +45112 -63143
- package/dist-lib/host/fetch-proxy-handler.cjs +3544 -11
- package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
- package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
- package/dist-lib/host/replacement-module-handler.cjs +1 -1
- package/dist-lib/host/websocket-proxy.cjs +1 -1
- package/dist-lib/index.cjs +1909 -2029
- package/dist-lib/jump-to-source-babel.cjs +1 -1
- package/dist-lib/jump-to-source-native.cjs +1 -1
- package/dist-lib/kotlin-host.cjs +2 -2
- package/dist-lib/menu.cjs +1 -1
- package/dist-lib/menu.mjs +1 -1
- package/dist-lib/metro-fingerprint-registry.cjs +1 -1
- package/dist-lib/metro-fingerprint-registry.mjs +1 -1
- package/dist-lib/metro-production-bundle.cjs +1 -1
- package/dist-lib/metro-production-bundle.mjs +1 -1
- package/dist-lib/metro.cjs +380 -522
- package/dist-lib/native-app-identity-project.cjs +39 -252
- package/dist-lib/native-app-identity-project.mjs +1174 -11
- package/dist-lib/native-app-identity.cjs +8 -3
- package/dist-lib/native-app-identity.mjs +8 -3
- package/dist-lib/native-firebase-metadata.cjs +1 -1
- package/dist-lib/native-firebase-metadata.mjs +1 -1
- package/dist-lib/plist.cjs +2 -244
- package/dist-lib/plist.mjs +1 -1
- package/dist-lib/profiles.cjs +1 -1
- package/dist-lib/public-brand.cjs +1 -1
- package/dist-lib/public-origins-lib-esm.json +290 -0
- package/dist-lib/public-origins-lib-static.json +1 -0
- package/dist-lib/public-origins-lib.json +1852 -0
- package/dist-lib/react-native-host-modules.cjs +1 -1
- package/dist-lib/react-native-host-modules.mjs +1 -1
- package/dist-lib/scripts/dev-server-scanner.cjs +14 -253
- package/dist-lib/sdk.cjs +83 -16
- package/dist-lib/sdk.mjs +81 -15
- package/dist-lib/skills.cjs +50546 -75098
- package/dist-lib/swift-compile.cjs +25897 -1070
- package/dist-lib/swift-compile.mjs +25866 -1033
- package/dist-lib/swift-package.cjs +79 -1
- package/dist-lib/swift-package.mjs +75 -1
- package/dist-lib/swift-submit.cjs +1 -1
- package/dist-lib/swift-submit.mjs +1 -1
- package/dist-lib/swift-toolchain.cjs +1 -1
- package/dist-lib/swift.cjs +1 -1
- package/dist-lib/vite-swift.cjs +34273 -12349
- package/dist-lib/vite.cjs +373 -298
- package/dist-lib/worklet-executable.cjs +1 -1
- package/dist-lib/worklet-executable.mjs +1 -1
- package/dist-types/packages/peach-compat/src/engine-config.d.ts +2 -0
- package/dist-types/packages/peach-compat/src/stubs/form-sheet-spring.d.ts +9 -0
- package/dist-types/packages/peach-compat/src/stubs/native-evaluation-lease.d.ts +47 -0
- package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-cookies.d.ts +113 -0
- package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-gesture-handler.d.ts +154 -0
- package/dist-types/packages/peach-compat/src/stubs/screen-transition-math.d.ts +756 -0
- package/dist-types/packages/peach-compat/src/stubs/transition-scalar.d.ts +25 -0
- package/dist-types/packages/peach-engine/src/billing/plans.d.ts +64 -0
- package/dist-types/packages/peach-engine/src/browser-page-target.d.ts +2 -0
- package/dist-types/packages/peach-engine/src/bundle-platform-url.d.ts +3 -0
- package/dist-types/packages/peach-engine/src/capture/browser-accessibility-host.d.ts +3 -0
- package/dist-types/packages/peach-engine/src/capture/browser-composite.d.ts +55 -0
- package/dist-types/packages/peach-engine/src/capture/browserAccessibilityContract.d.ts +27 -0
- package/dist-types/packages/peach-engine/src/capture/nativeScreenCaptureContract.d.ts +22 -0
- package/dist-types/packages/peach-engine/src/cli-companion.d.ts +36 -0
- package/dist-types/packages/peach-engine/src/components/native-ui/webview-frame-bridge.d.ts +34 -0
- package/dist-types/packages/peach-engine/src/config.d.ts +5 -0
- package/dist-types/packages/peach-engine/src/engine/android-stretch-effect.d.ts +57 -0
- package/dist-types/packages/peach-engine/src/engine/animated-driven-style.d.ts +47 -0
- package/dist-types/packages/peach-engine/src/engine/animated-value.d.ts +5 -0
- package/dist-types/packages/peach-engine/src/engine/animated.d.ts +195 -0
- package/dist-types/packages/peach-engine/src/engine/animation-clockContract.d.ts +15 -0
- package/dist-types/packages/peach-engine/src/engine/animation-graph.d.ts +148 -0
- package/dist-types/packages/peach-engine/src/engine/app-catalog-wire.d.ts +10 -0
- package/dist-types/packages/peach-engine/src/engine/app-font-registry.d.ts +87 -0
- package/dist-types/packages/peach-engine/src/engine/attributed-paragraph-paint.d.ts +7 -0
- package/dist-types/packages/peach-engine/src/engine/attributed-paragraph.d.ts +123 -0
- package/dist-types/packages/peach-engine/src/engine/audioContract.d.ts +16 -0
- package/dist-types/packages/peach-engine/src/engine/canvaskit-api.d.ts +93 -0
- package/dist-types/packages/peach-engine/src/engine/canvaskit-renderer.d.ts +216 -0
- package/dist-types/packages/peach-engine/src/engine/config-plugin-fonts.d.ts +40 -0
- package/dist-types/packages/peach-engine/src/engine/config-plugin-splash.d.ts +25 -0
- package/dist-types/packages/peach-engine/src/engine/cull-visibility.d.ts +44 -0
- package/dist-types/packages/peach-engine/src/engine/damage-rect.d.ts +19 -0
- package/dist-types/packages/peach-engine/src/engine/engine-resource.d.ts +6 -0
- package/dist-types/packages/peach-engine/src/engine/expo-manifest.d.ts +5 -0
- package/dist-types/packages/peach-engine/src/engine/fiber-debug-metadata.d.ts +30 -0
- package/dist-types/packages/peach-engine/src/engine/font-config.d.ts +139 -0
- package/dist-types/packages/peach-engine/src/engine/generated/sf-pro-font.d.ts +1 -0
- package/dist-types/packages/peach-engine/src/engine/glass-material.d.ts +31 -0
- package/dist-types/packages/peach-engine/src/engine/host-composite.d.ts +100 -0
- package/dist-types/packages/peach-engine/src/engine/hosted-semantics.d.ts +49 -0
- package/dist-types/packages/peach-engine/src/engine/image-audit.d.ts +70 -0
- package/dist-types/packages/peach-engine/src/engine/image-loader.d.ts +350 -0
- package/dist-types/packages/peach-engine/src/engine/inspect-info.d.ts +27 -0
- package/dist-types/packages/peach-engine/src/engine/inspect-outline.d.ts +14 -0
- package/dist-types/packages/peach-engine/src/engine/inspect-visibility.d.ts +33 -0
- package/dist-types/packages/peach-engine/src/engine/ios-fast-scroll.d.ts +16 -0
- package/dist-types/packages/peach-engine/src/engine/layout-sab.d.ts +43 -0
- package/dist-types/packages/peach-engine/src/engine/liquid-glass-rect.d.ts +23 -0
- package/dist-types/packages/peach-engine/src/engine/liquid-glass-shaders.d.ts +9 -0
- package/dist-types/packages/peach-engine/src/engine/liquid-glass.d.ts +283 -0
- package/dist-types/packages/peach-engine/src/engine/live-object-counts.d.ts +6 -0
- package/dist-types/packages/peach-engine/src/engine/lottie-runtime.d.ts +32 -0
- package/dist-types/packages/peach-engine/src/engine/lottie-types.d.ts +138 -0
- package/dist-types/packages/peach-engine/src/engine/memory-counts.d.ts +27 -0
- package/dist-types/packages/peach-engine/src/engine/metalDirectContract.d.ts +108 -0
- package/dist-types/packages/peach-engine/src/engine/metalShaderContract.d.ts +217 -0
- package/dist-types/packages/peach-engine/src/engine/native-animation-driver.d.ts +112 -0
- package/dist-types/packages/peach-engine/src/engine/native-animation-graph.d.ts +62 -0
- package/dist-types/packages/peach-engine/src/engine/native-layout.d.ts +133 -0
- package/dist-types/packages/peach-engine/src/engine/native-resources.d.ts +26 -0
- package/dist-types/packages/peach-engine/src/engine/nativeReanimatedContract.d.ts +25 -0
- package/dist-types/packages/peach-engine/src/engine/nativeReplayContract.d.ts +64 -0
- package/dist-types/packages/peach-engine/src/engine/node.d.ts +589 -0
- package/dist-types/packages/peach-engine/src/engine/paint-boundary-types.d.ts +112 -0
- package/dist-types/packages/peach-engine/src/engine/paint-boundary.d.ts +57 -0
- package/dist-types/packages/peach-engine/src/engine/portalContract.d.ts +21 -0
- package/dist-types/packages/peach-engine/src/engine/portals.d.ts +20 -0
- package/dist-types/packages/peach-engine/src/engine/render-damage.d.ts +107 -0
- package/dist-types/packages/peach-engine/src/engine/riveContract.d.ts +420 -0
- package/dist-types/packages/peach-engine/src/engine/rn-spring.d.ts +51 -0
- package/dist-types/packages/peach-engine/src/engine/scene-table.d.ts +379 -0
- package/dist-types/packages/peach-engine/src/engine/scroll-momentum-math.d.ts +152 -0
- package/dist-types/packages/peach-engine/src/engine/scroll-pan-contacts.d.ts +10 -0
- package/dist-types/packages/peach-engine/src/engine/scroll-platform.d.ts +75 -0
- package/dist-types/packages/peach-engine/src/engine/scroll-range.d.ts +14 -0
- package/dist-types/packages/peach-engine/src/engine/scroll-velocity.d.ts +14 -0
- package/dist-types/packages/peach-engine/src/engine/scroll.d.ts +320 -0
- package/dist-types/packages/peach-engine/src/engine/signal.d.ts +7 -0
- package/dist-types/packages/peach-engine/src/engine/snapshot-cache-policy.d.ts +6 -0
- package/dist-types/packages/peach-engine/src/engine/svg-geometry.d.ts +41 -0
- package/dist-types/packages/peach-engine/src/engine/text-attachment-paragraphs.d.ts +10 -0
- package/dist-types/packages/peach-engine/src/engine/text-decoration.d.ts +11 -0
- package/dist-types/packages/peach-engine/src/engine/text-line-break.d.ts +22 -0
- package/dist-types/packages/peach-engine/src/engine/text-paint-receipt.d.ts +98 -0
- package/dist-types/packages/peach-engine/src/engine/text-paragraph.d.ts +11 -0
- package/dist-types/packages/peach-engine/src/engine/text-paragraphContract.d.ts +34 -0
- package/dist-types/packages/peach-engine/src/engine/text-transform.d.ts +1 -0
- package/dist-types/packages/peach-engine/src/engine/types.d.ts +657 -0
- package/dist-types/packages/peach-engine/src/engine/visible-frame.d.ts +54 -0
- package/dist-types/packages/peach-engine/src/engine/webrtcContract.d.ts +74 -0
- package/dist-types/packages/peach-engine/src/graphite-stats-fields.d.ts +184 -0
- package/dist-types/packages/peach-engine/src/guest-import-meta.d.ts +12 -0
- package/dist-types/packages/peach-engine/src/guest-module-overrides.d.ts +7 -0
- package/dist-types/packages/peach-engine/src/ios/app-card-types.d.ts +7 -0
- package/dist-types/packages/peach-engine/src/ios/apps/canvas-map-data.d.ts +177 -0
- package/dist-types/packages/peach-engine/src/ios/aux-home-scene.d.ts +54 -0
- package/dist-types/packages/peach-engine/src/ios/chrome-metrics.d.ts +47 -0
- package/dist-types/packages/peach-engine/src/ios/constants.d.ts +21 -0
- package/dist-types/packages/peach-engine/src/ios/duo-housing.d.ts +37 -0
- package/dist-types/packages/peach-engine/src/ios/home/types.d.ts +29 -0
- package/dist-types/packages/peach-engine/src/ios/home-app-catalog.d.ts +43 -0
- package/dist-types/packages/peach-engine/src/ios/photo-store.d.ts +73 -0
- package/dist-types/packages/peach-engine/src/ios/photoLibraryContract.d.ts +166 -0
- package/dist-types/packages/peach-engine/src/ios/shell-controller-types.d.ts +21 -0
- package/dist-types/packages/peach-engine/src/ios/shell-transition-debug.d.ts +18 -0
- package/dist-types/packages/peach-engine/src/metro-asset-path.d.ts +21 -0
- package/dist-types/packages/peach-engine/src/metro-fingerprint-registry-client.d.ts +11 -0
- package/dist-types/packages/peach-engine/src/metro-fingerprint.d.ts +38 -0
- package/dist-types/packages/peach-engine/src/native-preview-bundle.d.ts +44 -0
- package/dist-types/packages/peach-engine/src/observability/types.d.ts +74 -0
- package/dist-types/packages/peach-engine/src/peach-warm-manifest.d.ts +32 -0
- package/dist-types/packages/peach-engine/src/permissions/app-settings-client.d.ts +25 -0
- package/dist-types/packages/peach-engine/src/permissions/system-permission-types.d.ts +20 -0
- package/dist-types/packages/peach-engine/src/platform/android-back-panel.d.ts +131 -0
- package/dist-types/packages/peach-engine/src/platform/android-gesture-exclusion.d.ts +28 -0
- package/dist-types/packages/peach-engine/src/platform/android-predictive-back.d.ts +33 -0
- package/dist-types/packages/peach-engine/src/platform/system-bars-state.d.ts +14 -0
- package/dist-types/packages/peach-engine/src/playwright-sim-host.d.ts +1 -0
- package/dist-types/packages/peach-engine/src/preview/bundle-layout.d.ts +8 -0
- package/dist-types/packages/peach-engine/src/preview/bundle-variantContract.d.ts +24 -0
- package/dist-types/packages/peach-engine/src/preview/capture-bundle.d.ts +26 -0
- package/dist-types/packages/peach-engine/src/preview/compress-node.d.ts +2 -0
- package/dist-types/packages/peach-engine/src/preview/compress.d.ts +2 -0
- package/dist-types/packages/peach-engine/src/preview/presigned-upload.d.ts +60 -0
- package/dist-types/packages/peach-engine/src/preview/trace.d.ts +144 -0
- package/dist-types/packages/peach-engine/src/preview/upload-protocol.d.ts +152 -0
- package/dist-types/packages/peach-engine/src/profiler/animation-recording-loader.d.ts +1 -0
- package/dist-types/packages/peach-engine/src/profiler/profile-trace.d.ts +4 -0
- package/dist-types/packages/peach-engine/src/react-bridge.d.ts +3 -0
- package/dist-types/packages/peach-engine/src/react-native/AppState.d.ts +45 -0
- package/dist-types/packages/peach-engine/src/react-native/Appearance.d.ts +34 -0
- package/dist-types/packages/peach-engine/src/react-native/framework-colors-data.d.ts +2 -0
- package/dist-types/packages/peach-engine/src/react-native/host-services.d.ts +42 -0
- package/dist-types/packages/peach-engine/src/react-native/layout-animation.d.ts +22 -0
- package/dist-types/packages/peach-engine/src/react-native/platform-colors.d.ts +17 -0
- package/dist-types/packages/peach-engine/src/remote-stream/client-config.d.ts +10 -0
- package/dist-types/packages/peach-engine/src/remote-stream/cloud-display.d.ts +58 -0
- package/dist-types/packages/peach-engine/src/remote-stream/scene-recording.d.ts +45 -0
- package/dist-types/packages/peach-engine/src/render-worker/animated-drive-output.d.ts +35 -0
- package/dist-types/packages/peach-engine/src/render-worker/app-load.d.ts +16 -0
- package/dist-types/packages/peach-engine/src/render-worker/aux-surface-types.d.ts +2 -0
- package/dist-types/packages/peach-engine/src/render-worker/canvaskit-shared.d.ts +42 -0
- package/dist-types/packages/peach-engine/src/render-worker/canvaskit-webgpu.d.ts +434 -0
- package/dist-types/packages/peach-engine/src/render-worker/canvaskit-worker-init.d.ts +12 -0
- package/dist-types/packages/peach-engine/src/render-worker/compositor-backend.d.ts +31 -0
- package/dist-types/packages/peach-engine/src/render-worker/compositor-gpu.d.ts +202 -0
- package/dist-types/packages/peach-engine/src/render-worker/compositor-protocol.d.ts +1945 -0
- package/dist-types/packages/peach-engine/src/render-worker/compositor-runtime/scroll-drag-resample.d.ts +44 -0
- package/dist-types/packages/peach-engine/src/render-worker/css-keyframes-drive.d.ts +36 -0
- package/dist-types/packages/peach-engine/src/render-worker/edit-menu-geometry.d.ts +8 -0
- package/dist-types/packages/peach-engine/src/render-worker/engine-resource-relay.d.ts +21 -0
- package/dist-types/packages/peach-engine/src/render-worker/expo-widgetContract.d.ts +16 -0
- package/dist-types/packages/peach-engine/src/render-worker/gesture-seam-protocol.d.ts +152 -0
- package/dist-types/packages/peach-engine/src/render-worker/graph-linked-value.d.ts +29 -0
- package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler-contract.d.ts +49 -0
- package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler.d.ts +12 -0
- package/dist-types/packages/peach-engine/src/render-worker/host-service-protocol.d.ts +756 -0
- package/dist-types/packages/peach-engine/src/render-worker/image-lifecycle-event.d.ts +22 -0
- package/dist-types/packages/peach-engine/src/render-worker/image-pixel-contract.d.ts +48 -0
- package/dist-types/packages/peach-engine/src/render-worker/live-frame-mirror.d.ts +34 -0
- package/dist-types/packages/peach-engine/src/render-worker/map-command-channel.d.ts +189 -0
- package/dist-types/packages/peach-engine/src/render-worker/mapNativeContract.d.ts +101 -0
- package/dist-types/packages/peach-engine/src/render-worker/native-dynamic-synchronizable.d.ts +22 -0
- package/dist-types/packages/peach-engine/src/render-worker/native-menu-gesture.d.ts +9 -0
- package/dist-types/packages/peach-engine/src/render-worker/native-ui-commandContract.d.ts +23 -0
- package/dist-types/packages/peach-engine/src/render-worker/native-ui-protocol.d.ts +1087 -0
- package/dist-types/packages/peach-engine/src/render-worker/native-widgetContract.d.ts +100 -0
- package/dist-types/packages/peach-engine/src/render-worker/nativeAnimMirrorContract.d.ts +174 -0
- package/dist-types/packages/peach-engine/src/render-worker/nativeSyncReplyContract.d.ts +11 -0
- package/dist-types/packages/peach-engine/src/render-worker/one-native-contentContract.d.ts +54 -0
- package/dist-types/packages/peach-engine/src/render-worker/pointerSampleContract.d.ts +14 -0
- package/dist-types/packages/peach-engine/src/render-worker/protocol.d.ts +880 -0
- package/dist-types/packages/peach-engine/src/render-worker/reanimated-css-contract.d.ts +63 -0
- package/dist-types/packages/peach-engine/src/render-worker/reanimated-readiness.d.ts +29 -0
- package/dist-types/packages/peach-engine/src/render-worker/resilient-frame-clock.d.ts +22 -0
- package/dist-types/packages/peach-engine/src/render-worker/retained-app-load.d.ts +20 -0
- package/dist-types/packages/peach-engine/src/render-worker/screen-edge-swipe-commit-protocol.d.ts +1 -0
- package/dist-types/packages/peach-engine/src/render-worker/screen-form-sheet-commit-protocol.d.ts +26 -0
- package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror-tenant.d.ts +37 -0
- package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror.d.ts +164 -0
- package/dist-types/packages/peach-engine/src/render-worker/shell-event-registry.d.ts +119 -0
- package/dist-types/packages/peach-engine/src/render-worker/shell-gesture-regions.d.ts +41 -0
- package/dist-types/packages/peach-engine/src/render-worker/shell-protocol.d.ts +603 -0
- package/dist-types/packages/peach-engine/src/render-worker/shell-scene-schema.d.ts +101 -0
- package/dist-types/packages/peach-engine/src/render-worker/shell-tree-inline-sources.d.ts +13 -0
- package/dist-types/packages/peach-engine/src/render-worker/shell-tree-wire.d.ts +87 -0
- package/dist-types/packages/peach-engine/src/render-worker/test-bridge-protocol.d.ts +47 -0
- package/dist-types/packages/peach-engine/src/render-worker/text-inputContract.d.ts +93 -0
- package/dist-types/packages/peach-engine/src/render-worker/tree-sync-port.d.ts +102 -0
- package/dist-types/packages/peach-engine/src/render-worker/webgpu-frame-transaction.d.ts +292 -0
- package/dist-types/packages/peach-engine/src/render-worker/webgpu-readback-scheduler.d.ts +107 -0
- package/dist-types/packages/peach-engine/src/render-worker/webview-capture-protocol.d.ts +16 -0
- package/dist-types/packages/peach-engine/src/render-worker/worker-input-runtime.d.ts +211 -0
- package/dist-types/packages/peach-engine/src/render-worker/worker-storage.d.ts +33 -0
- package/dist-types/packages/peach-engine/src/render-worker/worklet-runtime.d.ts +987 -0
- package/dist-types/packages/peach-engine/src/render-worker/worklet-sab.d.ts +24 -0
- package/dist-types/packages/peach-engine/src/rolldown-bundle-inventory.d.ts +84 -0
- package/dist-types/packages/peach-engine/src/rolldown-production-fingerprint.d.ts +31 -0
- package/dist-types/packages/peach-engine/src/screenshots/timeline-assets.d.ts +10 -0
- package/dist-types/packages/peach-engine/src/screenshots/tokens.d.ts +9 -0
- package/dist-types/packages/peach-engine/src/settings/devices.d.ts +70 -0
- package/dist-types/packages/peach-engine/src/settings/duo-fold-bus.d.ts +87 -0
- package/dist-types/packages/peach-engine/src/settings/interface-rotation.d.ts +30 -0
- package/dist-types/packages/peach-engine/src/settings/react-native-configuration.d.ts +12 -0
- package/dist-types/packages/peach-engine/src/settings/scene-geometryContract.d.ts +40 -0
- package/dist-types/packages/peach-engine/src/settings/store.d.ts +37 -0
- package/dist-types/packages/peach-engine/src/shell-events.d.ts +203 -0
- package/dist-types/packages/peach-engine/src/shell-intent.d.ts +68 -0
- package/dist-types/packages/peach-engine/src/sootsim-event.d.ts +35 -0
- package/dist-types/packages/peach-engine/src/top-overlay-state.d.ts +5 -0
- package/dist-types/packages/peach-engine/src/web-authentication-automation-host.d.ts +2 -0
- package/dist-types/packages/peach-engine/src/webAuthenticationContract.d.ts +34 -0
- package/dist-types/packages/peach-engine/src/webview-automation-host.d.ts +180 -0
- package/dist-types/packages/peach-engine/src/wireframe-mode.d.ts +16 -0
- package/dist-types/packages/peach-globals/src/frameBreakdownContract.d.ts +16 -0
- package/dist-types/packages/peach-globals/src/index.d.ts +3311 -0
- package/dist-types/packages/peach-globals/src/nativeSurfaceContract.d.ts +76 -0
- package/dist-types/packages/peach-globals/src/pointerSourceEventContract.d.ts +8 -0
- package/dist-types/packages/peach-globals/src/profileTrace.d.ts +11 -0
- package/dist-types/packages/peach-globals/src/profilerContract.d.ts +223 -0
- package/dist-types/packages/peach-kit/src/capabilities.d.ts +721 -0
- package/dist-types/packages/peach-kit/src/internal.d.ts +4 -0
- package/dist-types/packages/peach-kit/src/materials/types.d.ts +27 -0
- package/dist-types/packages/peach-kit/src/materials/uikit-blur-material.d.ts +14 -0
- package/dist-types/packages/peach-kit/src/navigation-types.d.ts +11 -0
- package/dist-types/packages/peach-kit/src/react-bridge.d.ts +53 -0
- package/dist-types/packages/peach-kit/src/runtime.d.ts +26 -0
- package/dist-types/packages/peach-kit/src/ui/hosting-safe-area.d.ts +24 -0
- package/dist-types/packages/peach-kit/src/ui/popover-placement.d.ts +53 -0
- package/dist-types/packages/peach-kit/src/ui/presentationContract.d.ts +17 -0
- package/kotlin/ComposeSources/PeachComposeHost.kt +1 -1
- package/kotlin/JniSources/com/facebook/jni/HybridData.kt +0 -2
- package/kotlin/JniSources/dev/peach/jni/NativeBindings.kt +0 -2
- package/kotlin/JniTransportSources/dev/peach/jni/integration/JniTransport.kt +0 -2
- package/kotlin/README.md +6 -0
- package/package.json +22 -2
- package/runtime-companion.json +1 -0
- package/skills/contrast/SKILL.md +1 -0
- package/src/assetCatalogContract.ts +21 -0
- package/src/bridge-contract-input.ts +84 -0
- package/src/bridge-contract.ts +35 -3
- package/src/browser-launch-policy.ts +1 -0
- package/src/bundle-channel.mjs +4 -2
- package/src/cli-runtime.ts +55 -0
- package/src/crash-fingerprint.ts +26 -0
- package/src/dev-bundle-resolution.ts +50 -23
- package/src/device-catalog.ts +1159 -0
- package/src/host/bridge-host.ts +3 -26
- package/src/host/browser-pointer.ts +71 -0
- package/src/host/dev-server-package-versions.ts +23 -0
- package/src/host/fetch-proxy-handler.ts +17 -4
- package/src/installed-package-versions.ts +142 -38
- package/src/kotlin-host.ts +1 -1
- package/src/metro-plugin.ts +4 -4
- package/src/metro-project-root.ts +68 -0
- package/src/nitro-adapter.lock.json +26 -0
- package/src/nitro-adapter.ts +103 -0
- package/src/nitro-bundle.ts +24 -10
- package/src/nitro-compile.ts +33 -51
- package/src/nitro-source.ts +177 -96
- package/src/nitroAdapterContract.ts +217 -0
- package/src/nitroContract.ts +24 -11
- package/src/process-group.ts +41 -34
- package/src/react-bridge-importers.ts +28 -0
- package/src/reactNativeConfigurationContract.ts +36 -0
- package/src/runtime-assets.ts +7 -2
- package/src/runtime-delivery.ts +2 -0
- package/src/runtimePlatformContract.ts +70 -0
- package/src/screenshots/frame-compose.ts +42 -43
- package/src/screenshots/org-deck.ts +9 -4
- package/src/screenshots/preset-names.ts +29 -0
- package/src/screenshots/registry.ts +5 -5
- package/src/screenshots/schema.ts +1 -1
- package/src/screenshots/screenshotContract.ts +971 -0
- package/src/settings-flags.ts +107 -0
- package/src/settingsContract.ts +609 -0
- package/src/storageSnapshotContract.ts +344 -0
- package/src/stub-pattern-matcher.ts +550 -0
- package/src/swift-compile.ts +908 -40
- package/src/swift-compiler-digest.ts +13 -1
- package/src/swift-distribution.lock.json +49 -22
- package/src/swift-host.ts +167 -52
- package/src/swift-objc-compile.ts +54 -24
- package/src/swift-objc-export.ts +532 -0
- package/src/swift-objc-import.ts +769 -0
- package/src/swift-objc-metadata.ts +285 -10
- package/src/swift-objc-sdk.ts +13970 -158
- package/src/swift-objc-standin.ts +137 -1
- package/src/swift-package.ts +94 -0
- package/src/swift-packages.ts +5 -5
- package/src/swift-submit.ts +6 -0
- package/src/swiftContract.ts +99 -0
- package/src/target-matcher.ts +6 -1
- package/src/vite-plugin.ts +14 -40
- package/src/worker-system-chunks.ts +1 -1
- package/src/workerChunkContract.ts +5 -0
- package/src/worklets-babel.ts +24 -5
- package/src/xcode-project.ts +36 -7
- package/src/xcode-target-members.ts +10 -3
- package/cli/drivers/playwright-sim-host.ts +0 -825
- package/kotlin/fixtures/counter/Counter.d.kt.ts +0 -17
- package/kotlin/fixtures/counter/Counter.kt +0 -51
- package/kotlin/fixtures/counter/CounterApp.native.tsx +0 -61
- package/kotlin/fixtures/counter/CounterApp.tsx +0 -3
- package/kotlin/fixtures/counter/CounterScreen.d.kt.ts +0 -8
- package/kotlin/fixtures/counter/CounterScreen.kt +0 -56
- package/kotlin/fixtures/counter/app/_layout.tsx +0 -4
- package/kotlin/fixtures/counter/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/counter/app/routes.d.ts +0 -18
- package/kotlin/fixtures/counter/package.json +0 -20
- package/kotlin/fixtures/counter/tsconfig.json +0 -19
- package/kotlin/fixtures/counter/vite.config.ts +0 -20
- package/kotlin/fixtures/headless-counter/Headless.kt +0 -234
- package/kotlin/fixtures/import-animation/Animation.d.kt.ts +0 -7
- package/kotlin/fixtures/import-animation/Animation.kt +0 -80
- package/kotlin/fixtures/import-animation/ImportAnimation.native.tsx +0 -13
- package/kotlin/fixtures/import-animation/README.md +0 -24
- package/kotlin/fixtures/import-animation/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-animation/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-animation/app/routes.d.ts +0 -18
- package/kotlin/fixtures/import-animation/package.json +0 -23
- package/kotlin/fixtures/import-animation/tsconfig.json +0 -20
- package/kotlin/fixtures/import-animation/vite.config.ts +0 -20
- package/kotlin/fixtures/import-drawing/Drawing.d.kt.ts +0 -7
- package/kotlin/fixtures/import-drawing/Drawing.kt +0 -101
- package/kotlin/fixtures/import-drawing/ImportDrawing.native.tsx +0 -18
- package/kotlin/fixtures/import-drawing/README.md +0 -34
- package/kotlin/fixtures/import-drawing/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-drawing/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-drawing/package.json +0 -23
- package/kotlin/fixtures/import-drawing/tsconfig.json +0 -20
- package/kotlin/fixtures/import-drawing/vite.config.ts +0 -20
- package/kotlin/fixtures/import-editor/Editor.d.kt.ts +0 -7
- package/kotlin/fixtures/import-editor/Editor.kt +0 -59
- package/kotlin/fixtures/import-editor/ImportEditor.native.tsx +0 -23
- package/kotlin/fixtures/import-editor/README.md +0 -27
- package/kotlin/fixtures/import-editor/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-editor/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-editor/package.json +0 -23
- package/kotlin/fixtures/import-editor/tsconfig.json +0 -20
- package/kotlin/fixtures/import-editor/vite.config.ts +0 -20
- package/kotlin/fixtures/import-effects/Effects.d.kt.ts +0 -7
- package/kotlin/fixtures/import-effects/Effects.kt +0 -87
- package/kotlin/fixtures/import-effects/ImportEffects.native.tsx +0 -13
- package/kotlin/fixtures/import-effects/README.md +0 -19
- package/kotlin/fixtures/import-effects/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-effects/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-effects/package.json +0 -23
- package/kotlin/fixtures/import-effects/tsconfig.json +0 -20
- package/kotlin/fixtures/import-effects/vite.config.ts +0 -20
- package/kotlin/fixtures/import-layout/ImportLayout.native.tsx +0 -13
- package/kotlin/fixtures/import-layout/Layout.d.kt.ts +0 -7
- package/kotlin/fixtures/import-layout/Layout.kt +0 -72
- package/kotlin/fixtures/import-layout/README.md +0 -24
- package/kotlin/fixtures/import-layout/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-layout/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-layout/package.json +0 -23
- package/kotlin/fixtures/import-layout/tsconfig.json +0 -20
- package/kotlin/fixtures/import-layout/vite.config.ts +0 -20
- package/kotlin/fixtures/import-navigation/ImportNavigation.native.tsx +0 -18
- package/kotlin/fixtures/import-navigation/Navigation.d.kt.ts +0 -7
- package/kotlin/fixtures/import-navigation/Navigation.kt +0 -104
- package/kotlin/fixtures/import-navigation/README.md +0 -31
- package/kotlin/fixtures/import-navigation/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-navigation/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-navigation/package.json +0 -23
- package/kotlin/fixtures/import-navigation/tsconfig.json +0 -20
- package/kotlin/fixtures/import-navigation/vite.config.ts +0 -20
- package/kotlin/fixtures/import-overlays/ImportOverlays.native.tsx +0 -29
- package/kotlin/fixtures/import-overlays/Overlays.d.kt.ts +0 -7
- package/kotlin/fixtures/import-overlays/Overlays.kt +0 -93
- package/kotlin/fixtures/import-overlays/README.md +0 -34
- package/kotlin/fixtures/import-overlays/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-overlays/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-overlays/package.json +0 -23
- package/kotlin/fixtures/import-overlays/tsconfig.json +0 -20
- package/kotlin/fixtures/import-overlays/vite.config.ts +0 -20
- package/kotlin/fixtures/import-resources/ImportResources.native.tsx +0 -18
- package/kotlin/fixtures/import-resources/README.md +0 -26
- package/kotlin/fixtures/import-resources/Resources.d.kt.ts +0 -6
- package/kotlin/fixtures/import-resources/Resources.kt +0 -72
- package/kotlin/fixtures/import-resources/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-resources/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-resources/package.json +0 -23
- package/kotlin/fixtures/import-resources/tsconfig.json +0 -20
- package/kotlin/fixtures/import-resources/vite.config.ts +0 -20
- package/kotlin/fixtures/import-scroll/ImportNested.native.tsx +0 -10
- package/kotlin/fixtures/import-scroll/ImportScroll.native.tsx +0 -13
- package/kotlin/fixtures/import-scroll/Nested.d.kt.ts +0 -4
- package/kotlin/fixtures/import-scroll/Nested.kt +0 -64
- package/kotlin/fixtures/import-scroll/README.md +0 -38
- package/kotlin/fixtures/import-scroll/Scroll.d.kt.ts +0 -7
- package/kotlin/fixtures/import-scroll/Scroll.kt +0 -91
- package/kotlin/fixtures/import-scroll/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-scroll/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-scroll/app/nested+spa.tsx +0 -1
- package/kotlin/fixtures/import-scroll/package.json +0 -23
- package/kotlin/fixtures/import-scroll/tsconfig.json +0 -20
- package/kotlin/fixtures/import-scroll/vite.config.ts +0 -20
- package/kotlin/fixtures/import-selection/ImportSelection.native.tsx +0 -44
- package/kotlin/fixtures/import-selection/README.md +0 -32
- package/kotlin/fixtures/import-selection/Selection.d.kt.ts +0 -8
- package/kotlin/fixtures/import-selection/Selection.kt +0 -78
- package/kotlin/fixtures/import-selection/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-selection/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-selection/package.json +0 -23
- package/kotlin/fixtures/import-selection/tsconfig.json +0 -20
- package/kotlin/fixtures/import-selection/vite.config.ts +0 -20
- package/kotlin/fixtures/import-surfaces/ImportSurfaces.native.tsx +0 -13
- package/kotlin/fixtures/import-surfaces/README.md +0 -22
- package/kotlin/fixtures/import-surfaces/Surfaces.d.kt.ts +0 -7
- package/kotlin/fixtures/import-surfaces/Surfaces.kt +0 -64
- package/kotlin/fixtures/import-surfaces/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-surfaces/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-surfaces/package.json +0 -23
- package/kotlin/fixtures/import-surfaces/tsconfig.json +0 -20
- package/kotlin/fixtures/import-surfaces/vite.config.ts +0 -20
- package/kotlin/fixtures/import-values/ImportValues.native.tsx +0 -61
- package/kotlin/fixtures/import-values/README.md +0 -28
- package/kotlin/fixtures/import-values/Values.d.kt.ts +0 -15
- package/kotlin/fixtures/import-values/Values.kt +0 -84
- package/kotlin/fixtures/import-values/app/_layout.tsx +0 -4
- package/kotlin/fixtures/import-values/app/index+spa.tsx +0 -1
- package/kotlin/fixtures/import-values/package.json +0 -23
- package/kotlin/fixtures/import-values/tsconfig.json +0 -20
- package/kotlin/fixtures/import-values/vite.config.ts +0 -20
- package/kotlin/fixtures/kotlin-app/app/build.gradle.kts +0 -30
- package/kotlin/fixtures/kotlin-app/app/src/main/AndroidManifest.xml +0 -13
- package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/MainActivity.kt +0 -60
- package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/ProbeApplication.kt +0 -18
- package/kotlin/fixtures/kotlin-app/build.gradle.kts +0 -5
- package/kotlin/fixtures/kotlin-app/gradle.properties +0 -4
- package/kotlin/fixtures/kotlin-app/settings.gradle.kts +0 -4
- package/kotlin/fixtures/kotlin-app-variants/Anim.kt +0 -62
- package/kotlin/fixtures/kotlin-app-variants/BarBehavior.kt +0 -38
- package/kotlin/fixtures/kotlin-app-variants/BarVisibility.kt +0 -36
- package/kotlin/fixtures/kotlin-app-variants/Bitmaps.kt +0 -50
- package/kotlin/fixtures/kotlin-app-variants/Browse.kt +0 -73
- package/kotlin/fixtures/kotlin-app-variants/Colors.kt +0 -41
- package/kotlin/fixtures/kotlin-app-variants/Controls.kt +0 -62
- package/kotlin/fixtures/kotlin-app-variants/Drag.kt +0 -56
- package/kotlin/fixtures/kotlin-app-variants/Draw.kt +0 -74
- package/kotlin/fixtures/kotlin-app-variants/Drawables.kt +0 -53
- package/kotlin/fixtures/kotlin-app-variants/Focus.kt +0 -62
- package/kotlin/fixtures/kotlin-app-variants/Form.kt +0 -47
- package/kotlin/fixtures/kotlin-app-variants/Icons.kt +0 -59
- package/kotlin/fixtures/kotlin-app-variants/Ime.kt +0 -53
- package/kotlin/fixtures/kotlin-app-variants/Lists.kt +0 -57
- package/kotlin/fixtures/kotlin-app-variants/Nav.kt +0 -47
- package/kotlin/fixtures/kotlin-app-variants/Note.kt +0 -40
- package/kotlin/fixtures/kotlin-app-variants/Overlays.kt +0 -56
- package/kotlin/fixtures/kotlin-app-variants/Pan.kt +0 -38
- package/kotlin/fixtures/kotlin-app-variants/Pickers.kt +0 -44
- package/kotlin/fixtures/kotlin-app-variants/Press.kt +0 -43
- package/kotlin/fixtures/kotlin-app-variants/Scroll.kt +0 -63
- package/kotlin/fixtures/kotlin-app-variants/Sheet.kt +0 -43
- package/kotlin/fixtures/kotlin-app-variants/Strings.kt +0 -49
- package/kotlin/fixtures/kotlin-app-variants/Tabs.kt +0 -47
- package/kotlin/fixtures/kotlin-app-variants/TextWidth.kt +0 -45
- package/kotlin/fixtures/kotlin-app-variants/TransientInsets.kt +0 -50
- package/kotlin/fixtures/kotlin-app-variants/Transition.kt +0 -69
- package/kotlin/fixtures/kotlin-app-variants/ViewConfig.kt +0 -22
- package/kotlin/fixtures/kotlin-app-variants/Widgets.kt +0 -67
- package/kotlin/fixtures/runtime-state/RuntimeState.kt +0 -200
- package/kotlin/fork/README.md +0 -97
- package/kotlin/fork/build.sh +0 -176
- package/kotlin/fork/compose-worker-globals.patch +0 -1247
- package/kotlin/fork/fork.json +0 -46
- package/kotlin/fork/publish.ts +0 -99
- package/kotlin/fork/skia-android-shaping.patch +0 -189
- package/kotlin/fork/skiko-local.init.gradle +0 -10
- package/kotlin/fork/skiko-worker-clock.patch +0 -122
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { WireSurfaceUpdate } from './shell-tree-wire.d.ts';
|
|
2
|
+
export interface WireInlineSources {
|
|
3
|
+
define?: Array<[id: number, uri: string]>;
|
|
4
|
+
release?: number[];
|
|
5
|
+
}
|
|
6
|
+
export declare class WireInlineSourceEncoder {
|
|
7
|
+
#private;
|
|
8
|
+
encode(update: WireSurfaceUpdate): WireSurfaceUpdate;
|
|
9
|
+
}
|
|
10
|
+
export declare class WireInlineSourceDecoder {
|
|
11
|
+
#private;
|
|
12
|
+
decode(update: WireSurfaceUpdate): void;
|
|
13
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { type AnimatedDrivenStyleLease, type AnimatedDrivenStyleRetirement } from '../engine/animated-driven-style.d.ts';
|
|
2
|
+
import { type LayoutSlotRead } from '../engine/layout-sab.d.ts';
|
|
3
|
+
import { SootSimNode, SootSimTextNode } from '../engine/node.d.ts';
|
|
4
|
+
import type { SootSimNodeType } from '../engine/types.d.ts';
|
|
5
|
+
import type { LayoutAnimationConfig } from '../react-native/layout-animation.d.ts';
|
|
6
|
+
import type { GraphPresentation } from './graph-linked-value.d.ts';
|
|
7
|
+
import type { WireInlineSources } from './shell-tree-inline-sources.d.ts';
|
|
8
|
+
export interface WireElementNode {
|
|
9
|
+
k: 0;
|
|
10
|
+
id: number;
|
|
11
|
+
type: SootSimNodeType;
|
|
12
|
+
props: Record<string, unknown>;
|
|
13
|
+
style?: Record<string, unknown>;
|
|
14
|
+
animDriven?: AnimatedDrivenStyleLease[];
|
|
15
|
+
animDrivenRetired?: AnimatedDrivenStyleRetirement[];
|
|
16
|
+
text?: string;
|
|
17
|
+
textFontScale?: number;
|
|
18
|
+
textLayout?: LayoutSlotRead & {
|
|
19
|
+
revision: number;
|
|
20
|
+
};
|
|
21
|
+
accessibilityTextScale?: number;
|
|
22
|
+
accessibilityBoldText?: boolean;
|
|
23
|
+
hidden?: true;
|
|
24
|
+
flattens?: true;
|
|
25
|
+
sharedTransitionBoundary?: true;
|
|
26
|
+
scrollX?: number;
|
|
27
|
+
scrollY?: number;
|
|
28
|
+
zoom?: number;
|
|
29
|
+
selectionStart?: number;
|
|
30
|
+
selectionEnd?: number;
|
|
31
|
+
selectionHandlesHidden?: true;
|
|
32
|
+
children: number[];
|
|
33
|
+
ls?: number;
|
|
34
|
+
}
|
|
35
|
+
export interface WireTextNode {
|
|
36
|
+
k: 1;
|
|
37
|
+
id: number;
|
|
38
|
+
text: string;
|
|
39
|
+
hidden?: true;
|
|
40
|
+
}
|
|
41
|
+
export type WireNode = WireElementNode | WireTextNode;
|
|
42
|
+
export interface WireDelta {
|
|
43
|
+
full: boolean;
|
|
44
|
+
rootId: number | null;
|
|
45
|
+
upserts: WireNode[];
|
|
46
|
+
removed: number[];
|
|
47
|
+
exiting?: number[];
|
|
48
|
+
layoutCandidates?: number[];
|
|
49
|
+
coreLayoutAnimation?: LayoutAnimationConfig;
|
|
50
|
+
scrollOnly?: number[];
|
|
51
|
+
}
|
|
52
|
+
export type WireSurfaceUpdate = WireDelta & {
|
|
53
|
+
surfaceId: string;
|
|
54
|
+
layoutAnimationConfiguration?: Extract<import('./worklet-runtime.d.ts').WorkletMessage, {
|
|
55
|
+
type: 'layoutAnimationConfigureBatch';
|
|
56
|
+
}>;
|
|
57
|
+
contentReady?: true;
|
|
58
|
+
generation: number;
|
|
59
|
+
seq: number;
|
|
60
|
+
layoutRevision?: number;
|
|
61
|
+
graphPresentations?: GraphPresentation[];
|
|
62
|
+
graphPresentationEnds?: number[];
|
|
63
|
+
inlineSources?: WireInlineSources;
|
|
64
|
+
};
|
|
65
|
+
export declare function sanitizeProps(props: Record<string, unknown>, nodeType?: SootSimNodeType): Record<string, unknown>;
|
|
66
|
+
export declare function sanitizeStyle(style: Record<string, unknown>): Record<string, unknown>;
|
|
67
|
+
interface WireCacheEntry {
|
|
68
|
+
node: SootSimNode | SootSimTextNode;
|
|
69
|
+
wire: WireNode;
|
|
70
|
+
propsRef?: unknown;
|
|
71
|
+
styleEpoch?: number;
|
|
72
|
+
subtreeRevision: number;
|
|
73
|
+
}
|
|
74
|
+
export interface WireCache {
|
|
75
|
+
rootId: number | null;
|
|
76
|
+
entries: Map<number, WireCacheEntry>;
|
|
77
|
+
}
|
|
78
|
+
export type WireEchoKey = (node: SootSimNode, key: string) => boolean;
|
|
79
|
+
export declare function serializeSurfaceTree(root: SootSimNode | null, prevCache?: WireCache, echoKey?: WireEchoKey, { slots, presentationNodes, }?: {
|
|
80
|
+
slots?: boolean;
|
|
81
|
+
presentationNodes?: Iterable<SootSimNode>;
|
|
82
|
+
}): {
|
|
83
|
+
delta: WireDelta;
|
|
84
|
+
cache: WireCache;
|
|
85
|
+
};
|
|
86
|
+
export declare function freeLayoutSlotsForCache(cache: WireCache): void;
|
|
87
|
+
export {};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { SootSimTestBridge, SootSimTestBridgeArgs, SootSimTestBridgeMethod, SootSimTestBridgeResult } from '../../../peach-globals/src/index.d.ts';
|
|
2
|
+
export type ShellTestBridgeMethod = 'debugSnapshot' | 'debugFind' | 'captureAccessibilityTree' | 'dumpAccessibilityTree' | 'dumpTree' | 'findAllByA11yState' | 'findAllByRole' | 'ancestorChainById' | 'ancestorChainByTestId' | 'findByHint' | 'findById' | 'findByLabel' | 'findByTestId' | 'findByText' | 'findByTextOrLabel' | 'findPressable' | 'getNodeCount' | 'getWindowNodeCount' | 'getSurfaceMetricsSnapshot' | 'getTreeQuietMs' | 'getGeometryRevision' | 'getCullStats' | 'getFontDebug' | 'getImageLoaderStats' | 'getPeerStats' | 'getWorkletSlotStats' | 'getShellGestureSeamDebug' | 'getShellPointerDebug' | 'getShellNativeAnimDebug' | 'getShellAnimatedGraphDebug' | 'getShellAuxPresentationDebug' | 'startShellChromeTrajectoryCapture' | 'markShellChromeTrajectoryPhase' | 'getShellChromeTrajectoryCapture' | 'getShellScrollInputDebug' | 'startScrollPerformanceTrace' | 'stopScrollPerformanceTrace' | 'getShellScrollState' | 'getShellCursorState' | 'getShellInspectSchedulingStats' | 'getShellReanimatedTrace' | 'getShellLayoutAnimationDebug' | 'getShellMirrorStyle' | 'getShellBackgroundPlaybackViewTags' | 'getShellChromeLuminance' | 'getShellSnapshotDebug' | 'recordShellPresentationWrites' | 'dispatchShellSensorSample' | 'getScrollMirrorDebug' | 'setShellMapperReleaseTestState' | 'setShellReanimatedTraceEnabled' | 'getShellFeatureFlagsSnapshot' | 'inspectAt' | 'inspectByNodeId' | 'inspectHoverAt' | 'inspectNeighbor' | 'inspectSetStyleOverride' | 'listAnimations' | 'listInspectable' | 'listSemanticInspectable' | 'inspectTree' | 'queryAll' | 'queryMatchingNodes' | 'observeTapTarget' | 'queryMountedShell' | 'queryTextCandidates' | 'replaceTextByTestId' | 'resolveTapTarget' | 'verifyTapTargetAt' | 'stopAnimation' | 'waitForScreenTransitions';
|
|
3
|
+
export type ShellInspectBridgeMethod = Extract<SootSimTestBridgeMethod, 'inspectAt' | 'inspectHoverAt' | 'inspectByNodeId' | 'inspectNeighbor' | 'inspectSetStyleOverride' | 'inspectSetHandlerLogging' | 'listInspectable' | 'listSemanticInspectable' | 'inspectTree'>;
|
|
4
|
+
type BridgeRequestType = 'testBridge' | 'shellTestBridge' | 'inspectRequest';
|
|
5
|
+
type ShellOnlyTestBridgeArgs<Method extends string> = Method extends 'queryMountedShell' ? SootSimTestBridgeArgs<'queryAll'> : Method extends 'setShellMapperReleaseTestState' ? [testID: string, state: 'drive' | 'release'] : Method extends 'replaceTextByTestId' ? [testID: string, text: string] : Method extends 'startScrollPerformanceTrace' ? [limit?: number] : Method extends 'startShellChromeTrajectoryCapture' ? [testID: string, durationMs: number, relatedTestID?: string] : Method extends 'markShellChromeTrajectoryPhase' ? [phase: string] : Method extends 'getFontDebug' ? [family?: string, fontWeight?: unknown] : Method extends 'getShellScrollState' ? [id: string] : Method extends 'getShellMirrorStyle' ? [viewTag: number] : Method extends 'getShellSnapshotDebug' ? [reset?: boolean] : Method extends 'recordShellPresentationWrites' ? [action: 'start' | 'read' | 'drain' | 'stop'] : Method extends 'dispatchShellSensorSample' ? [
|
|
6
|
+
sensorType: number,
|
|
7
|
+
data: Record<string, number>,
|
|
8
|
+
eventTimestamp: number
|
|
9
|
+
] : [];
|
|
10
|
+
type ShellOnlyTestBridgeResult<Method extends string> = Method extends 'queryMountedShell' ? SootSimTestBridgeResult<'queryAll'> : Method extends 'setShellMapperReleaseTestState' ? boolean : Method extends 'replaceTextByTestId' ? boolean : Method extends 'stopScrollPerformanceTrace' ? import('../../../peach-globals/src/index.d.ts').SootSimScrollOffsetSample[] : Method extends 'getShellCursorState' ? unknown : Method extends 'getShellInspectSchedulingStats' ? unknown : Method extends 'recordShellPresentationWrites' ? number[] : Method extends 'dispatchShellSensorSample' ? number : Method extends 'getShellBackgroundPlaybackViewTags' ? number[] : unknown;
|
|
11
|
+
type TestBridgeEnvelopeArgs<Method extends string> = Method extends SootSimTestBridgeMethod ? SootSimTestBridgeArgs<Method> : ShellOnlyTestBridgeArgs<Method>;
|
|
12
|
+
export interface ShellTestBridgeOptions {
|
|
13
|
+
nativeUiOnly?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export type ShellTestBridgeArgs<M extends ShellTestBridgeMethod> = M extends SootSimTestBridgeMethod ? SootSimTestBridgeArgs<M> : ShellOnlyTestBridgeArgs<M>;
|
|
16
|
+
export type ShellTestBridgeResult<M extends ShellTestBridgeMethod> = M extends SootSimTestBridgeMethod ? SootSimTestBridgeResult<M> : ShellOnlyTestBridgeResult<M>;
|
|
17
|
+
export declare function createTestBridgeProxy(call: (method: SootSimTestBridgeMethod, args: unknown[]) => Promise<unknown>): SootSimTestBridge;
|
|
18
|
+
export interface TestBridgeEnvelope<Type extends BridgeRequestType, Method extends string = SootSimTestBridgeMethod> {
|
|
19
|
+
type: Type;
|
|
20
|
+
requestId: number;
|
|
21
|
+
deliveryEpochMs?: number;
|
|
22
|
+
method: Method;
|
|
23
|
+
args: TestBridgeEnvelopeArgs<Method>;
|
|
24
|
+
options?: Type extends 'shellTestBridge' ? ShellTestBridgeOptions : never;
|
|
25
|
+
}
|
|
26
|
+
export type TestBridgeRequest = {
|
|
27
|
+
[M in SootSimTestBridgeMethod]: TestBridgeEnvelope<'testBridge', M>;
|
|
28
|
+
}[SootSimTestBridgeMethod];
|
|
29
|
+
export type ShellTestBridgeRequest = {
|
|
30
|
+
[M in ShellTestBridgeMethod]: TestBridgeEnvelope<'shellTestBridge', M>;
|
|
31
|
+
}[ShellTestBridgeMethod];
|
|
32
|
+
export type ShellInspectBridgeRequest = {
|
|
33
|
+
[M in ShellInspectBridgeMethod]: TestBridgeEnvelope<'inspectRequest', M>;
|
|
34
|
+
}[ShellInspectBridgeMethod];
|
|
35
|
+
type TestBridgeRequestFor<M extends SootSimTestBridgeMethod> = Extract<TestBridgeRequest, {
|
|
36
|
+
method: M;
|
|
37
|
+
}>;
|
|
38
|
+
type ShellTestBridgeRequestFor<M extends ShellTestBridgeMethod> = Extract<ShellTestBridgeRequest, {
|
|
39
|
+
method: M;
|
|
40
|
+
}>;
|
|
41
|
+
type ShellInspectBridgeRequestFor<M extends ShellInspectBridgeMethod> = Extract<ShellInspectBridgeRequest, {
|
|
42
|
+
method: M;
|
|
43
|
+
}>;
|
|
44
|
+
export declare function createTestBridgeRequest<M extends SootSimTestBridgeMethod>(requestId: number, method: M, args: SootSimTestBridgeArgs<M>): TestBridgeRequestFor<M>;
|
|
45
|
+
export declare function createShellTestBridgeRequest<M extends ShellTestBridgeMethod>(requestId: number, method: M, args: ShellTestBridgeArgs<M>, options?: ShellTestBridgeOptions): ShellTestBridgeRequestFor<M>;
|
|
46
|
+
export declare function createShellInspectBridgeRequest<M extends ShellInspectBridgeMethod>(requestId: number, method: M, args: SootSimTestBridgeArgs<M>): ShellInspectBridgeRequestFor<M>;
|
|
47
|
+
export {};
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import type { EditMenuItemRect } from './edit-menu-geometry.d.ts';
|
|
2
|
+
import type { WorkerHostNode } from './worker-input-runtime.d.ts';
|
|
3
|
+
export interface KeyMods {
|
|
4
|
+
mod?: boolean;
|
|
5
|
+
shift?: boolean;
|
|
6
|
+
alt?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface TextInputRefinementOffset {
|
|
9
|
+
x: number;
|
|
10
|
+
y: number;
|
|
11
|
+
}
|
|
12
|
+
export interface TextInputTapContext {
|
|
13
|
+
refinementOffset: TextInputRefinementOffset | null;
|
|
14
|
+
duration: number;
|
|
15
|
+
}
|
|
16
|
+
export type TextInputCursorGranularity = 'character' | 'word';
|
|
17
|
+
export type TextInputRefinementPlacement = (node: WorkerHostNode, x: number, y: number, granularity?: TextInputCursorGranularity) => boolean;
|
|
18
|
+
export interface TextInputHoldInteraction {
|
|
19
|
+
textInputNode: WorkerHostNode | null;
|
|
20
|
+
textInputRefinementOffset: TextInputRefinementOffset | null;
|
|
21
|
+
textInputRefinementActive: boolean;
|
|
22
|
+
pointerDownX: number;
|
|
23
|
+
pointerDownY: number;
|
|
24
|
+
lastX: number;
|
|
25
|
+
lastY: number;
|
|
26
|
+
textInputLongPressTimer: ReturnType<typeof setTimeout> | null;
|
|
27
|
+
textInputLongPressActive: boolean;
|
|
28
|
+
longPressFired: boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface LoupeState {
|
|
31
|
+
x: number;
|
|
32
|
+
y: number;
|
|
33
|
+
active: boolean;
|
|
34
|
+
}
|
|
35
|
+
export interface EditMenuItemSpec {
|
|
36
|
+
action: string;
|
|
37
|
+
label: string;
|
|
38
|
+
systemImage?: string;
|
|
39
|
+
symbolCodePoint?: number;
|
|
40
|
+
section?: number;
|
|
41
|
+
shelf?: boolean;
|
|
42
|
+
submenu?: boolean;
|
|
43
|
+
submenuSymbolCodePoint?: number;
|
|
44
|
+
}
|
|
45
|
+
export type EditMenuBridgeEvent = {
|
|
46
|
+
kind: 'set';
|
|
47
|
+
items: EditMenuItemSpec[];
|
|
48
|
+
anchor: {
|
|
49
|
+
x: number;
|
|
50
|
+
y: number;
|
|
51
|
+
width: number;
|
|
52
|
+
height: number;
|
|
53
|
+
};
|
|
54
|
+
expandedFrom: {
|
|
55
|
+
x: number;
|
|
56
|
+
y: number;
|
|
57
|
+
width: number;
|
|
58
|
+
height: number;
|
|
59
|
+
} | null;
|
|
60
|
+
opensBelow: boolean | null;
|
|
61
|
+
} | {
|
|
62
|
+
kind: 'clear';
|
|
63
|
+
} | {
|
|
64
|
+
kind: 'rects';
|
|
65
|
+
barRect: {
|
|
66
|
+
x: number;
|
|
67
|
+
y: number;
|
|
68
|
+
width: number;
|
|
69
|
+
height: number;
|
|
70
|
+
} | null;
|
|
71
|
+
itemRects: EditMenuItemRect[];
|
|
72
|
+
};
|
|
73
|
+
export type CursorBridgeEvent = {
|
|
74
|
+
kind: 'set';
|
|
75
|
+
nodeId: number;
|
|
76
|
+
position: number;
|
|
77
|
+
} | {
|
|
78
|
+
kind: 'move';
|
|
79
|
+
position: number;
|
|
80
|
+
} | {
|
|
81
|
+
kind: 'capture';
|
|
82
|
+
active: boolean;
|
|
83
|
+
} | {
|
|
84
|
+
kind: 'clear';
|
|
85
|
+
} | {
|
|
86
|
+
kind: 'rect';
|
|
87
|
+
rect: {
|
|
88
|
+
x: number;
|
|
89
|
+
y: number;
|
|
90
|
+
width: number;
|
|
91
|
+
height: number;
|
|
92
|
+
} | null;
|
|
93
|
+
};
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import type { RemoteFontRegistration } from '../engine/app-font-registry.d.ts';
|
|
2
|
+
import type { ShellToCompositorMessage } from './compositor-protocol.d.ts';
|
|
3
|
+
import type { LiveFrameMirrorEnvelope, RemoteLiveFrameIdentity } from './live-frame-mirror.d.ts';
|
|
4
|
+
import type { NativeAnimMirrorEnvelope } from './nativeAnimMirrorContract.d.ts';
|
|
5
|
+
import type { HostToWorker } from './protocol.d.ts';
|
|
6
|
+
import type { ShellHostToWorker } from './shell-protocol.d.ts';
|
|
7
|
+
import type { WireSurfaceUpdate } from './shell-tree-wire.d.ts';
|
|
8
|
+
export type TenantToShellPeerMessage = Extract<ShellHostToWorker, {
|
|
9
|
+
type: 'worklet' | 'workletBatch' | 'scrollMirror' | 'scrollControl' | 'nativeUIRequest' | 'gestureSeamRequest' | 'gestureSeamRequestBatch' | 'nativeMenuGestureBegin' | 'cursorMirror' | 'editMenuMirror' | 'loupeMirror' | 'registerAppFonts' | 'requestEngineResource' | 'engineResource' | 'storageSync';
|
|
10
|
+
}>;
|
|
11
|
+
export type ShellToTenantPeerMessage = Extract<HostToWorker, {
|
|
12
|
+
type: 'worklet' | 'scrollControl' | 'scrollSlotsRetired' | 'gestureSeamEvent' | 'screenEdgeSwipeCommit' | 'shellScreenInteractive' | 'screenFormSheetCommit' | 'screenTransitionStarted' | 'screenTransitionProgress' | 'cursorRectBack' | 'editMenuRectsBack' | 'imageLifecycleEvent' | 'lottieLifecycleEvent' | 'appFontsRegistered' | 'engineResource' | 'requestEngineResource';
|
|
13
|
+
}>;
|
|
14
|
+
export declare function isTenantToShellPeerMessage(message: object): message is TenantToShellPeerMessage;
|
|
15
|
+
export declare function isShellToTenantPeerMessage(message: object): message is ShellToTenantPeerMessage;
|
|
16
|
+
export type TreeSyncPublishKind = 'commit' | 'dirty-frame' | 'resync';
|
|
17
|
+
export type TreeSyncPortMessage = {
|
|
18
|
+
type: 'liveFramePort';
|
|
19
|
+
port: MessagePort;
|
|
20
|
+
} | {
|
|
21
|
+
type: 'requestLiveFramePort';
|
|
22
|
+
} | {
|
|
23
|
+
type: 'liveFrameCaptureBarrier';
|
|
24
|
+
requestId: number;
|
|
25
|
+
} | {
|
|
26
|
+
type: 'remoteLiveFrame';
|
|
27
|
+
surfaceId: string;
|
|
28
|
+
generation: number;
|
|
29
|
+
payload: LiveFrameMirrorEnvelope;
|
|
30
|
+
} | ({
|
|
31
|
+
type: 'remoteLiveFrameConsumed';
|
|
32
|
+
} & RemoteLiveFrameIdentity) | {
|
|
33
|
+
type: 'shellTreeUpdate';
|
|
34
|
+
payload: WireSurfaceUpdate;
|
|
35
|
+
nativeAnimMirrors?: NativeAnimMirrorEnvelope[];
|
|
36
|
+
publishedAtEpochMs: number;
|
|
37
|
+
publishKind: TreeSyncPublishKind;
|
|
38
|
+
} | {
|
|
39
|
+
type: 'requestSurfaceResync';
|
|
40
|
+
surfaceId: string;
|
|
41
|
+
} | {
|
|
42
|
+
type: 'nativeAnimMirror';
|
|
43
|
+
envelope: NativeAnimMirrorEnvelope;
|
|
44
|
+
} | ({
|
|
45
|
+
type: 'remoteFontRegister';
|
|
46
|
+
} & RemoteFontRegistration) | {
|
|
47
|
+
type: 'surfaceTreeApplied';
|
|
48
|
+
surfaceId: string;
|
|
49
|
+
generation: number;
|
|
50
|
+
seq: number;
|
|
51
|
+
} | {
|
|
52
|
+
type: 'surfaceTreePainted';
|
|
53
|
+
surfaceId: string;
|
|
54
|
+
generation: number;
|
|
55
|
+
seq: number;
|
|
56
|
+
} | {
|
|
57
|
+
type: 'capturePublicationBarrier';
|
|
58
|
+
requestId: number;
|
|
59
|
+
} | {
|
|
60
|
+
type: 'appMotion';
|
|
61
|
+
busy: boolean;
|
|
62
|
+
} | Extract<ShellToCompositorMessage, {
|
|
63
|
+
type: 'pipelineWarmApp';
|
|
64
|
+
}> | {
|
|
65
|
+
type: 'pipelineWarmScreen';
|
|
66
|
+
appId: string;
|
|
67
|
+
bundleRevision: string | null;
|
|
68
|
+
route: string;
|
|
69
|
+
state: string;
|
|
70
|
+
idle: boolean;
|
|
71
|
+
} | {
|
|
72
|
+
type: 'surfaceLayoutTick';
|
|
73
|
+
surfaceId: string;
|
|
74
|
+
generation: number;
|
|
75
|
+
};
|
|
76
|
+
export interface UnchangedPaintAckGate {
|
|
77
|
+
readonly generation: number;
|
|
78
|
+
readonly superseded: {
|
|
79
|
+
readonly generation: number;
|
|
80
|
+
readonly seq: number;
|
|
81
|
+
} | undefined;
|
|
82
|
+
readonly acknowledged: {
|
|
83
|
+
readonly generation: number;
|
|
84
|
+
readonly seq: number;
|
|
85
|
+
} | undefined;
|
|
86
|
+
readonly needsPaint: boolean;
|
|
87
|
+
}
|
|
88
|
+
export declare function shouldAckUnchangedPaintImmediately(gate: UnchangedPaintAckGate): boolean;
|
|
89
|
+
export interface SurfaceTreePaintAckState {
|
|
90
|
+
readonly accepted: SurfaceTreePaintAck | null;
|
|
91
|
+
readonly acknowledged: SurfaceTreePaintAck | null;
|
|
92
|
+
}
|
|
93
|
+
export interface SurfaceTreePaintAck {
|
|
94
|
+
readonly generation: number;
|
|
95
|
+
readonly seq: number;
|
|
96
|
+
}
|
|
97
|
+
export declare function createSurfaceTreePaintAcks<SurfaceId extends string>(postPainted: (surfaceId: SurfaceId, ack: SurfaceTreePaintAck) => void): {
|
|
98
|
+
snapshot(surfaceId: SurfaceId): SurfaceTreePaintAckState;
|
|
99
|
+
accept(surfaceId: SurfaceId, ack: SurfaceTreePaintAck): SurfaceTreePaintAck | undefined;
|
|
100
|
+
acknowledgeUnchanged(surfaceId: SurfaceId, ack: SurfaceTreePaintAck, superseded: SurfaceTreePaintAck | undefined, needsPaint: boolean): boolean;
|
|
101
|
+
acknowledgePainted(surfaceId: SurfaceId, generation: number): void;
|
|
102
|
+
};
|
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
import type { GraphiteDeviceContext, GraphiteOutstandingSubmissionPoll, GraphiteOwnedBuffer, GraphiteOwnedTexture, WebGpuErrorPort, WebGpuExternalImageSourcePort, WebGpuExtent3DPort, WebGpuImageCopyBufferPort, WebGpuImageCopyTexturePort, WebGpuOrigin3DPort } from './canvaskit-webgpu.d.ts';
|
|
2
|
+
export type WebGpuFrameTransactionKind = 'display' | 'capture' | 'auxiliary';
|
|
3
|
+
export type WebGpuFrameTransactionSource = 'display-frame' | 'demand-frame' | 'forced-display' | 'step-frame' | 'capture-batch' | 'capture-single' | 'prewarm-initial';
|
|
4
|
+
export interface WebGpuFrameTransactionOptions {
|
|
5
|
+
readonly kind: WebGpuFrameTransactionKind;
|
|
6
|
+
readonly source: WebGpuFrameTransactionSource;
|
|
7
|
+
readonly present: boolean;
|
|
8
|
+
readonly label?: string;
|
|
9
|
+
readonly measureTimings?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare const MAX_OUTSTANDING_GRAPHITE_SUBMISSIONS = 3;
|
|
12
|
+
export interface WebGpuFrameAdmission {
|
|
13
|
+
readonly source: WebGpuFrameTransactionSource;
|
|
14
|
+
readonly poll: GraphiteOutstandingSubmissionPoll;
|
|
15
|
+
readonly graphiteSubmissionBudget: WebGpuGraphiteSubmissionBudget;
|
|
16
|
+
readonly admissionToken: never;
|
|
17
|
+
}
|
|
18
|
+
export type WebGpuGraphiteSubmissionBudget = number;
|
|
19
|
+
export interface WebGpuFrameAdmissionOptions {
|
|
20
|
+
readonly graphiteSubmissionBudget?: WebGpuGraphiteSubmissionBudget;
|
|
21
|
+
readonly defer?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export type WebGpuFrameAdmissionDecision = {
|
|
24
|
+
readonly status: 'admitted';
|
|
25
|
+
readonly admission: WebGpuFrameAdmission;
|
|
26
|
+
readonly poll: GraphiteOutstandingSubmissionPoll;
|
|
27
|
+
} | {
|
|
28
|
+
readonly status: 'deferred';
|
|
29
|
+
readonly poll: GraphiteOutstandingSubmissionPoll;
|
|
30
|
+
};
|
|
31
|
+
export interface WebGpuFrameTransactionTimings {
|
|
32
|
+
readonly totalMs: number;
|
|
33
|
+
readonly textureUploadMs: number;
|
|
34
|
+
readonly gpuSubmitMs: number;
|
|
35
|
+
readonly compositeMs: number;
|
|
36
|
+
readonly captureMs: number;
|
|
37
|
+
}
|
|
38
|
+
export interface WebGpuTextureCopyOptions {
|
|
39
|
+
readonly kind: 'presentation' | 'snapshot' | 'bitmap';
|
|
40
|
+
readonly source: GraphiteOwnedTexture;
|
|
41
|
+
readonly destination: GraphiteOwnedTexture;
|
|
42
|
+
readonly sourceOrigin?: WebGpuOrigin3DPort;
|
|
43
|
+
readonly destinationOrigin?: WebGpuOrigin3DPort;
|
|
44
|
+
readonly size: WebGpuExtent3DPort;
|
|
45
|
+
}
|
|
46
|
+
export interface WebGpuTextureReadbackOptions {
|
|
47
|
+
readonly source: GraphiteOwnedTexture;
|
|
48
|
+
readonly destination: GraphiteOwnedBuffer;
|
|
49
|
+
readonly sourceOrigin?: WebGpuOrigin3DPort;
|
|
50
|
+
readonly destinationOffset?: number;
|
|
51
|
+
readonly bytesPerRow: number;
|
|
52
|
+
readonly rowsPerImage?: number;
|
|
53
|
+
readonly size: WebGpuExtent3DPort;
|
|
54
|
+
}
|
|
55
|
+
export interface WebGpuExternalImageUploadOptions {
|
|
56
|
+
readonly source: WebGpuExternalImageSourcePort;
|
|
57
|
+
readonly destination: GraphiteOwnedTexture;
|
|
58
|
+
readonly sourceOrigin?: {
|
|
59
|
+
readonly x?: number;
|
|
60
|
+
readonly y?: number;
|
|
61
|
+
};
|
|
62
|
+
readonly destinationOrigin?: WebGpuOrigin3DPort;
|
|
63
|
+
readonly flipY?: boolean;
|
|
64
|
+
readonly size: WebGpuExtent3DPort;
|
|
65
|
+
}
|
|
66
|
+
export interface WebGpuImagePixelUploadOptions {
|
|
67
|
+
readonly pixels: Uint8Array;
|
|
68
|
+
readonly destination: GraphiteOwnedTexture;
|
|
69
|
+
readonly size: WebGpuExtent3DPort;
|
|
70
|
+
}
|
|
71
|
+
export interface WebGpuRetirableResource {
|
|
72
|
+
readonly resourceKind: string;
|
|
73
|
+
readonly surfaceId: string;
|
|
74
|
+
readonly generation: number;
|
|
75
|
+
readonly surfaceEpoch: number;
|
|
76
|
+
readonly textureEpoch: number;
|
|
77
|
+
dispose(): void;
|
|
78
|
+
}
|
|
79
|
+
export interface WebGpuReadbackEncoding {
|
|
80
|
+
copyTextureToReadback(options: WebGpuTextureReadbackOptions): void;
|
|
81
|
+
}
|
|
82
|
+
export type WebGpuReadbackSubmission = Pick<WebGpuFrameTransactionResult, 'commandBatchSubmitted' | 'readbackCopies' | 'submissionSerial'>;
|
|
83
|
+
export interface WebGpuFrameTransactionResult {
|
|
84
|
+
readonly kind: WebGpuFrameTransactionKind;
|
|
85
|
+
readonly present: boolean;
|
|
86
|
+
readonly graphiteSubmitted: boolean;
|
|
87
|
+
readonly insertedRecordings: number;
|
|
88
|
+
readonly approximateMaskDraws: number;
|
|
89
|
+
readonly commandBatchSubmitted: boolean;
|
|
90
|
+
readonly presentationCopies: number;
|
|
91
|
+
readonly snapshotCopies: number;
|
|
92
|
+
readonly readbackCopies: number;
|
|
93
|
+
readonly externalImageUploads: number;
|
|
94
|
+
readonly submissionSerial: number;
|
|
95
|
+
readonly timings: WebGpuFrameTransactionTimings | null;
|
|
96
|
+
}
|
|
97
|
+
export interface WebGpuFrameTransactionCompletion<T> {
|
|
98
|
+
readonly value: T;
|
|
99
|
+
readonly transaction: WebGpuFrameTransactionResult;
|
|
100
|
+
readonly validation: Promise<void>;
|
|
101
|
+
}
|
|
102
|
+
export interface WebGpuFrameTransactionSourceCounters {
|
|
103
|
+
readonly displayFrame: number;
|
|
104
|
+
readonly demandFrame: number;
|
|
105
|
+
readonly forcedDisplay: number;
|
|
106
|
+
readonly stepFrame: number;
|
|
107
|
+
readonly captureBatch: number;
|
|
108
|
+
readonly captureSingle: number;
|
|
109
|
+
readonly prewarmInitial: number;
|
|
110
|
+
readonly unclassified: number;
|
|
111
|
+
}
|
|
112
|
+
export interface WebGpuFrameTransactionMeasurementCounters {
|
|
113
|
+
readonly started: number;
|
|
114
|
+
readonly committed: number;
|
|
115
|
+
readonly aborted: number;
|
|
116
|
+
readonly displayTransactions: number;
|
|
117
|
+
readonly captureTransactions: number;
|
|
118
|
+
readonly auxiliaryTransactions: number;
|
|
119
|
+
readonly graphiteSubmitCalls: number;
|
|
120
|
+
readonly graphiteSubmissions: number;
|
|
121
|
+
readonly jsCommandBatches: number;
|
|
122
|
+
readonly presentationCopies: number;
|
|
123
|
+
readonly snapshotCopies: number;
|
|
124
|
+
readonly readbackCopies: number;
|
|
125
|
+
readonly sources: WebGpuFrameTransactionSourceCounters;
|
|
126
|
+
readonly admissionAttempts: number;
|
|
127
|
+
readonly admissions: number;
|
|
128
|
+
readonly admissionDeferrals: number;
|
|
129
|
+
readonly admissionSources: WebGpuFrameTransactionSourceCounters;
|
|
130
|
+
readonly admissionDeferralSources: WebGpuFrameTransactionSourceCounters;
|
|
131
|
+
}
|
|
132
|
+
export interface WebGpuFrameTransactionProfileMeasurement {
|
|
133
|
+
readonly activeAtStop: true;
|
|
134
|
+
readonly window: WebGpuFrameTransactionMeasurementCounters;
|
|
135
|
+
readonly lifetime: WebGpuFrameTransactionMeasurementCounters;
|
|
136
|
+
}
|
|
137
|
+
export interface WebGpuFrameTransactionCounters {
|
|
138
|
+
readonly admissionLimit: number;
|
|
139
|
+
readonly admissionAttempts: number;
|
|
140
|
+
readonly admissions: number;
|
|
141
|
+
readonly admissionDeferrals: number;
|
|
142
|
+
readonly admissionTokenRejected: number;
|
|
143
|
+
readonly admissionWaiters: number;
|
|
144
|
+
readonly admissionTaskYields: number;
|
|
145
|
+
readonly admissionWaitCompletions: number;
|
|
146
|
+
readonly admissionWaitRejections: number;
|
|
147
|
+
readonly currentAdmissionDepth: number;
|
|
148
|
+
readonly maximumAdmissionDepth: number;
|
|
149
|
+
readonly started: number;
|
|
150
|
+
readonly committed: number;
|
|
151
|
+
readonly aborted: number;
|
|
152
|
+
readonly nestingRejected: number;
|
|
153
|
+
readonly displayTransactions: number;
|
|
154
|
+
readonly captureTransactions: number;
|
|
155
|
+
readonly auxiliaryTransactions: number;
|
|
156
|
+
readonly graphiteSubmitCalls: number;
|
|
157
|
+
readonly graphiteSubmissions: number;
|
|
158
|
+
readonly jsCommandBatches: number;
|
|
159
|
+
readonly presentationCopies: number;
|
|
160
|
+
readonly snapshotCopies: number;
|
|
161
|
+
readonly readbackCopies: number;
|
|
162
|
+
readonly externalImageUploads: number;
|
|
163
|
+
readonly externalImageUploadBytes: number;
|
|
164
|
+
readonly externalImageCleanupRequests: number;
|
|
165
|
+
readonly externalImageCleanupCompletions: number;
|
|
166
|
+
readonly externalImageCleanupCancellations: number;
|
|
167
|
+
readonly externalImageCleanupFailures: number;
|
|
168
|
+
readonly externalImageCleanupPending: number;
|
|
169
|
+
readonly externalImageCleanupTotalMs: number;
|
|
170
|
+
readonly externalImageCleanupMaxMs: number;
|
|
171
|
+
readonly externalImageCleanupLastMs: number;
|
|
172
|
+
readonly submissionCompletionRequests: number;
|
|
173
|
+
readonly submissionCompletionCompletions: number;
|
|
174
|
+
readonly submissionCompletionFailures: number;
|
|
175
|
+
readonly submissionCompletionPending: number;
|
|
176
|
+
readonly presentFalseTransactions: number;
|
|
177
|
+
readonly errorScopeFailures: number;
|
|
178
|
+
readonly lastErrorScopeMessage: string | null;
|
|
179
|
+
readonly retireQueued: number;
|
|
180
|
+
readonly retireDeferred: number;
|
|
181
|
+
readonly retireDisposed: number;
|
|
182
|
+
readonly retireDuplicateRejected: number;
|
|
183
|
+
readonly retireWaitFailures: number;
|
|
184
|
+
readonly retireDisposeFailures: number;
|
|
185
|
+
readonly pendingRetirements: number;
|
|
186
|
+
readonly submissionSerial: number;
|
|
187
|
+
readonly completedSubmissionSerial: number;
|
|
188
|
+
readonly sources: WebGpuFrameTransactionSourceCounters;
|
|
189
|
+
readonly admissionSources: WebGpuFrameTransactionSourceCounters;
|
|
190
|
+
readonly admissionDeferralSources: WebGpuFrameTransactionSourceCounters;
|
|
191
|
+
readonly profile: {
|
|
192
|
+
readonly active: boolean;
|
|
193
|
+
readonly completed: WebGpuFrameTransactionProfileMeasurement | null;
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
interface TextureCopyCommand {
|
|
197
|
+
readonly type: 'texture-to-texture';
|
|
198
|
+
readonly kind: 'presentation' | 'snapshot' | 'bitmap';
|
|
199
|
+
readonly source: WebGpuImageCopyTexturePort;
|
|
200
|
+
readonly destination: WebGpuImageCopyTexturePort;
|
|
201
|
+
readonly size: WebGpuExtent3DPort;
|
|
202
|
+
}
|
|
203
|
+
interface TextureReadbackCommand {
|
|
204
|
+
readonly type: 'texture-to-buffer';
|
|
205
|
+
readonly source: WebGpuImageCopyTexturePort;
|
|
206
|
+
readonly destination: WebGpuImageCopyBufferPort;
|
|
207
|
+
readonly size: WebGpuExtent3DPort;
|
|
208
|
+
}
|
|
209
|
+
type FrameCommand = TextureCopyCommand | TextureReadbackCommand;
|
|
210
|
+
type ImageUpload = ({
|
|
211
|
+
readonly kind: 'external';
|
|
212
|
+
} & WebGpuExternalImageUploadOptions) | ({
|
|
213
|
+
readonly kind: 'pixels';
|
|
214
|
+
} & WebGpuImagePixelUploadOptions);
|
|
215
|
+
export declare class WebGpuTransactionError extends Error {
|
|
216
|
+
readonly scopeErrors: readonly WebGpuErrorPort[];
|
|
217
|
+
constructor(message: string, scopeErrors: readonly WebGpuErrorPort[], cause?: unknown);
|
|
218
|
+
}
|
|
219
|
+
export declare class WebGpuFrameTransaction {
|
|
220
|
+
#private;
|
|
221
|
+
constructor(owner: WebGpuFrameTransactionOwner, options: WebGpuFrameTransactionOptions, graphiteSubmissionBudget: WebGpuGraphiteSubmissionBudget);
|
|
222
|
+
get present(): boolean;
|
|
223
|
+
get measureTimings(): boolean;
|
|
224
|
+
get graphiteSubmissionBudget(): WebGpuGraphiteSubmissionBudget;
|
|
225
|
+
get label(): string | undefined;
|
|
226
|
+
recordGraphiteWork(...textures: readonly GraphiteOwnedTexture[]): void;
|
|
227
|
+
recordGraphitePassInput(...textures: readonly GraphiteOwnedTexture[]): void;
|
|
228
|
+
runWebGpuPass(textures: readonly GraphiteOwnedTexture[], encode: (encoder: GPUCommandEncoder) => void): void;
|
|
229
|
+
copyTexture(options: WebGpuTextureCopyOptions): void;
|
|
230
|
+
copyTextureToReadback(options: WebGpuTextureReadbackOptions): void;
|
|
231
|
+
copyExternalImageToTexture(options: WebGpuExternalImageUploadOptions): void;
|
|
232
|
+
writeImagePixels(options: WebGpuImagePixelUploadOptions): void;
|
|
233
|
+
close(): void;
|
|
234
|
+
get graphiteWorkRecorded(): boolean;
|
|
235
|
+
get graphiteWorkVersion(): number;
|
|
236
|
+
get graphiteWorkPending(): boolean;
|
|
237
|
+
get graphiteSubmitCalls(): number;
|
|
238
|
+
noteGraphiteSubmitCall(): void;
|
|
239
|
+
get externalImageUploadsPending(): readonly ImageUpload[];
|
|
240
|
+
get commandsPending(): readonly FrameCommand[];
|
|
241
|
+
get graphiteSubmitted(): boolean;
|
|
242
|
+
get insertedRecordings(): number;
|
|
243
|
+
get approximateMaskDraws(): number;
|
|
244
|
+
get commandBatchSubmitted(): boolean;
|
|
245
|
+
get queueWorkSubmitted(): boolean;
|
|
246
|
+
get submissionSerialAdvanced(): boolean;
|
|
247
|
+
get shaderPassesSubmitted(): number;
|
|
248
|
+
get graphiteCompositionRecorded(): boolean;
|
|
249
|
+
get externalImageUploadsSubmitted(): number;
|
|
250
|
+
get externalImageUploadBytesSubmitted(): number;
|
|
251
|
+
get transactionTimings(): Pick<WebGpuFrameTransactionTimings, 'textureUploadMs' | 'gpuSubmitMs' | 'compositeMs' | 'captureMs'>;
|
|
252
|
+
noteGraphiteRecordingSubmitted(workVersion: number, submitted: boolean, insertedRecordings: number, approximateMaskDraws: number, elapsedMs: number): void;
|
|
253
|
+
noteExternalImageUploadSubmitted(upload: ImageUpload, elapsedMs: number): void;
|
|
254
|
+
noteWebGpuPassSubmitted(commandCount: number, elapsedMs: number): void;
|
|
255
|
+
noteCommandBatchSubmitted(commandCount: number): void;
|
|
256
|
+
noteSubmissionSerialAdvanced(): void;
|
|
257
|
+
noteCommandTiming(kind: 'composite' | 'capture', elapsedMs: number): void;
|
|
258
|
+
noteCommandBatchTiming(elapsedMs: number): void;
|
|
259
|
+
get commands(): readonly FrameCommand[];
|
|
260
|
+
get externalImageUploads(): readonly ImageUpload[];
|
|
261
|
+
get presentationCopies(): number;
|
|
262
|
+
get snapshotCopies(): number;
|
|
263
|
+
get readbackCopies(): number;
|
|
264
|
+
}
|
|
265
|
+
export declare class NativeFrameReadbacks implements WebGpuReadbackEncoding {
|
|
266
|
+
#private;
|
|
267
|
+
readonly commands: TextureReadbackCommand[];
|
|
268
|
+
constructor(deviceContext: GraphiteDeviceContext);
|
|
269
|
+
copyTextureToReadback(options: WebGpuTextureReadbackOptions): void;
|
|
270
|
+
}
|
|
271
|
+
export declare class WebGpuFrameTransactionOwner {
|
|
272
|
+
#private;
|
|
273
|
+
readonly deviceContext: GraphiteDeviceContext;
|
|
274
|
+
constructor(deviceContext: GraphiteDeviceContext, onTransactionCommitted: () => void);
|
|
275
|
+
tryAcquireAdmission(source: WebGpuFrameTransactionSource, options?: WebGpuFrameAdmissionOptions): WebGpuFrameAdmissionDecision;
|
|
276
|
+
waitForAdmission(source: WebGpuFrameTransactionSource, requestStillCurrent?: () => boolean, options?: WebGpuFrameAdmissionOptions): Promise<WebGpuFrameAdmission>;
|
|
277
|
+
failPendingAdmissions(error: Error): void;
|
|
278
|
+
runSync<T>(admission: WebGpuFrameAdmission, options: WebGpuFrameTransactionOptions, record: (transaction: WebGpuFrameTransaction) => T): WebGpuFrameTransactionCompletion<T>;
|
|
279
|
+
run<T>(admission: WebGpuFrameAdmission, options: WebGpuFrameTransactionOptions, record: (transaction: WebGpuFrameTransaction) => T | Promise<T>): Promise<{
|
|
280
|
+
readonly value: T;
|
|
281
|
+
readonly transaction: WebGpuFrameTransactionResult;
|
|
282
|
+
}>;
|
|
283
|
+
runWebGpuPass(transaction: WebGpuFrameTransaction, textures: readonly GraphiteOwnedTexture[], encode: (encoder: GPUCommandEncoder) => void): void;
|
|
284
|
+
retireWhenSubmitted(resource: WebGpuRetirableResource): void;
|
|
285
|
+
waitForRetirements(): Promise<void>;
|
|
286
|
+
waitForErrorScopes(): Promise<void>;
|
|
287
|
+
beginProfileMeasurement(): void;
|
|
288
|
+
finishProfileMeasurement(): WebGpuFrameTransactionProfileMeasurement;
|
|
289
|
+
getCounters(): WebGpuFrameTransactionCounters;
|
|
290
|
+
commitNativeFrame(submitted: boolean, copies: number, readbackCopies: number): WebGpuReadbackSubmission;
|
|
291
|
+
}
|
|
292
|
+
export {};
|