@satinhq/kit 0.0.0-stage → 0.1.0-beta.1
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/LICENSE +21 -0
- package/NOTICE +96 -0
- package/README.md +454 -2
- package/THIRD_PARTY_NOTICES.md +65 -0
- package/bin/satin.mjs +13 -0
- package/dist/acknowledgements/Acknowledgements.d.ts +4 -0
- package/dist/acknowledgements/Acknowledgements.js +42 -0
- package/dist/acknowledgements/bundledNotices.d.ts +4 -0
- package/dist/acknowledgements/bundledNotices.js +58 -0
- package/dist/acknowledgements/inventory.d.ts +17 -0
- package/dist/acknowledgements/inventory.js +10 -0
- package/dist/acknowledgements/inventory.json +39 -0
- package/dist/actions/ActionMenu.d.ts +30 -0
- package/dist/actions/ActionMenu.js +103 -0
- package/dist/actions/RowActions.d.ts +42 -0
- package/dist/actions/RowActions.js +820 -0
- package/dist/actions/contextMotion.d.ts +78 -0
- package/dist/actions/contextMotion.js +329 -0
- package/dist/actions/motion.d.ts +19 -0
- package/dist/actions/motion.js +74 -0
- package/dist/actions/nativeContextAppearance.json +86 -0
- package/dist/actions/nativeContextMotion.json +734 -0
- package/dist/actions/nativeMotion.json +388 -0
- package/dist/actions/preview.d.ts +27 -0
- package/dist/actions/preview.js +217 -0
- package/dist/actions/recognizers.d.ts +24 -0
- package/dist/actions/recognizers.js +87 -0
- package/dist/actions/rowScrub.d.ts +59 -0
- package/dist/actions/rowScrub.js +400 -0
- package/dist/actions/swipeSpring.d.ts +14 -0
- package/dist/actions/swipeSpring.js +35 -0
- package/dist/actions/types.d.ts +71 -0
- package/dist/actions/types.js +28 -0
- package/dist/app/InstallComponents.d.ts +16 -0
- package/dist/app/InstallComponents.js +104 -0
- package/dist/app/InstallationDiagnostics.d.ts +7 -0
- package/dist/app/InstallationDiagnostics.js +23 -0
- package/dist/app/OrientationGuard.d.ts +8 -0
- package/dist/app/OrientationGuard.js +9 -0
- package/dist/app/appearance.d.ts +18 -0
- package/dist/app/appearance.js +15 -0
- package/dist/app/appearanceStore.d.ts +30 -0
- package/dist/app/appearanceStore.js +228 -0
- package/dist/app/backgroundUpdate.d.ts +20 -0
- package/dist/app/backgroundUpdate.js +151 -0
- package/dist/app/buildInfo.d.ts +11 -0
- package/dist/app/buildInfo.js +12 -0
- package/dist/app/buildInfoBuild.d.ts +3 -0
- package/dist/app/buildInfoBuild.js +12 -0
- package/dist/app/checkCli.d.ts +1 -0
- package/dist/app/checkCli.js +73 -0
- package/dist/app/coldLaunchUpdate.d.ts +14 -0
- package/dist/app/coldLaunchUpdate.js +384 -0
- package/dist/app/definition.d.ts +85 -0
- package/dist/app/definition.js +347 -0
- package/dist/app/deployment.d.ts +28 -0
- package/dist/app/deployment.js +352 -0
- package/dist/app/deploymentBuild.d.ts +3 -0
- package/dist/app/deploymentBuild.js +55 -0
- package/dist/app/earlyWorker.d.ts +3 -0
- package/dist/app/earlyWorker.js +77 -0
- package/dist/app/head.d.ts +10 -0
- package/dist/app/head.js +120 -0
- package/dist/app/icons.d.ts +4 -0
- package/dist/app/icons.js +35 -0
- package/dist/app/install.d.ts +18 -0
- package/dist/app/install.js +82 -0
- package/dist/app/installCheck.d.ts +2 -0
- package/dist/app/installCheck.js +148 -0
- package/dist/app/installContext.d.ts +35 -0
- package/dist/app/installContext.js +45 -0
- package/dist/app/installCustom.d.ts +25 -0
- package/dist/app/installCustom.js +55 -0
- package/dist/app/installExperience.d.ts +22 -0
- package/dist/app/installExperience.js +389 -0
- package/dist/app/installExperienceDevice.d.ts +29 -0
- package/dist/app/installExperienceDevice.js +160 -0
- package/dist/app/installExperienceHome.d.ts +16 -0
- package/dist/app/installExperienceHome.js +304 -0
- package/dist/app/installExperienceRuntime.d.ts +37 -0
- package/dist/app/installExperienceRuntime.js +285 -0
- package/dist/app/installPolicy.d.ts +28 -0
- package/dist/app/installPolicy.js +90 -0
- package/dist/app/installQr.d.ts +10 -0
- package/dist/app/installQr.js +139 -0
- package/dist/app/installStrings.d.ts +52 -0
- package/dist/app/installStrings.js +75 -0
- package/dist/app/installTipPath.d.ts +12 -0
- package/dist/app/installTipPath.js +9 -0
- package/dist/app/installationFailure.d.ts +14 -0
- package/dist/app/installationFailure.js +38 -0
- package/dist/app/launch.d.ts +7 -0
- package/dist/app/launch.js +241 -0
- package/dist/app/launchReadiness.d.ts +9 -0
- package/dist/app/launchReadiness.js +72 -0
- package/dist/app/launchScreen.d.ts +16 -0
- package/dist/app/launchScreen.js +14 -0
- package/dist/app/launchScreenRuntime.d.ts +19 -0
- package/dist/app/launchScreenRuntime.js +313 -0
- package/dist/app/launchWatchdog.d.ts +1 -0
- package/dist/app/launchWatchdog.js +202 -0
- package/dist/app/manifests.d.ts +19 -0
- package/dist/app/manifests.js +20 -0
- package/dist/app/mdm.d.ts +3 -0
- package/dist/app/mdm.js +20 -0
- package/dist/app/mediaCheck.d.ts +9 -0
- package/dist/app/mediaCheck.js +122 -0
- package/dist/app/mediaTypes.d.ts +2 -0
- package/dist/app/mediaTypes.js +13 -0
- package/dist/app/platformPolicy.d.ts +3 -0
- package/dist/app/platformPolicy.js +10 -0
- package/dist/app/platformScripts.d.ts +6 -0
- package/dist/app/platformScripts.js +65 -0
- package/dist/app/releaseUpdates.d.ts +7 -0
- package/dist/app/releaseUpdates.js +53 -0
- package/dist/app/runtime.d.ts +9 -0
- package/dist/app/runtime.js +38 -0
- package/dist/app/startup.d.ts +30 -0
- package/dist/app/startup.js +24 -0
- package/dist/app/statusBand.d.ts +11 -0
- package/dist/app/statusBand.js +257 -0
- package/dist/app/viewport.d.ts +3 -0
- package/dist/app/viewport.js +42 -0
- package/dist/app/viewportValue.d.ts +5 -0
- package/dist/app/viewportValue.js +14 -0
- package/dist/app/vite.d.ts +27 -0
- package/dist/app/vite.js +440 -0
- package/dist/app/warmImage.d.ts +3 -0
- package/dist/app/warmImage.js +59 -0
- package/dist/content/content.d.ts +153 -0
- package/dist/content/content.js +315 -0
- package/dist/content/layout.d.ts +26 -0
- package/dist/content/layout.js +114 -0
- package/dist/content/scaledMetric.d.ts +3 -0
- package/dist/content/scaledMetric.js +68 -0
- package/dist/content/typography.d.ts +83 -0
- package/dist/content/typography.js +32 -0
- package/dist/controls/ActivityIndicatorSegments.d.ts +4 -0
- package/dist/controls/ActivityIndicatorSegments.js +5 -0
- package/dist/controls/ColorPicker.d.ts +20 -0
- package/dist/controls/ColorPicker.js +70 -0
- package/dist/controls/ControlRow.d.ts +5 -0
- package/dist/controls/ControlRow.js +10 -0
- package/dist/controls/DatePicker.d.ts +41 -0
- package/dist/controls/DatePicker.js +148 -0
- package/dist/controls/ProgressView.d.ts +17 -0
- package/dist/controls/ProgressView.js +24 -0
- package/dist/controls/civilDate.d.ts +49 -0
- package/dist/controls/civilDate.js +112 -0
- package/dist/data/database.d.ts +154 -0
- package/dist/data/database.js +710 -0
- package/dist/data/value-equal.d.ts +2 -0
- package/dist/data/value-equal.js +36 -0
- package/dist/data/write-store.d.ts +38 -0
- package/dist/data/write-store.js +192 -0
- package/dist/dev-menu/DevMenu.d.ts +1 -0
- package/dist/dev-menu/DevMenu.js +121 -0
- package/dist/dev-menu/actions.d.ts +12 -0
- package/dist/dev-menu/actions.js +99 -0
- package/dist/dev-menu/build.d.ts +5 -0
- package/dist/dev-menu/build.js +40 -0
- package/dist/dev-menu/gesture.d.ts +18 -0
- package/dist/dev-menu/gesture.js +109 -0
- package/dist/dev-menu/shake.d.ts +2 -0
- package/dist/dev-menu/shake.js +36 -0
- package/dist/dev-menu/types.d.ts +8 -0
- package/dist/dev-menu/types.js +1 -0
- package/dist/diagnostics.d.ts +3 -0
- package/dist/diagnostics.js +4 -0
- package/dist/docs/app-recipes.md +411 -0
- package/dist/docs/components/file-importer.md +54 -0
- package/dist/docs/components/paste-button.md +48 -0
- package/dist/docs/components/photos-picker.md +53 -0
- package/dist/docs/components/share-link.md +58 -0
- package/dist/docs/content.md +159 -0
- package/dist/docs/controls.md +151 -0
- package/dist/docs/data.md +332 -0
- package/dist/docs/limitations.md +40 -0
- package/dist/docs/messaging-scroll.md +234 -0
- package/dist/docs/networking.md +190 -0
- package/dist/docs/push.md +215 -0
- package/dist/docs/swiftui-reference.md +1895 -0
- package/dist/docs/symbols.md +293 -0
- package/dist/docs/tokens.md +60 -0
- package/dist/fidelity/devAssertions.d.ts +21 -0
- package/dist/fidelity/devAssertions.js +199 -0
- package/dist/focus/focusIntentMachine.d.ts +106 -0
- package/dist/focus/focusIntentMachine.js +359 -0
- package/dist/focus/navigationFocus.d.ts +42 -0
- package/dist/focus/navigationFocus.js +241 -0
- package/dist/focus/programmaticFocus.d.ts +15 -0
- package/dist/focus/programmaticFocus.js +152 -0
- package/dist/gestures/GestureView.d.ts +12 -0
- package/dist/gestures/GestureView.js +321 -0
- package/dist/gestures/arena.d.ts +138 -0
- package/dist/gestures/arena.js +417 -0
- package/dist/gestures/existingCompetitors.d.ts +79 -0
- package/dist/gestures/existingCompetitors.js +82 -0
- package/dist/gestures/gesture.d.ts +62 -0
- package/dist/gestures/gesture.js +107 -0
- package/dist/glass/ControlLens.d.ts +46 -0
- package/dist/glass/ControlLens.js +88 -0
- package/dist/glass/GlassBar.d.ts +9 -0
- package/dist/glass/GlassBar.js +22 -0
- package/dist/glass/GlassConfusionReview.d.ts +3 -0
- package/dist/glass/GlassConfusionReview.js +185 -0
- package/dist/glass/GlassEffect.d.ts +69 -0
- package/dist/glass/GlassEffect.js +550 -0
- package/dist/glass/GlassMaterialRoot.d.ts +7 -0
- package/dist/glass/GlassMaterialRoot.js +39 -0
- package/dist/glass/GlassPresentation.d.ts +29 -0
- package/dist/glass/GlassPresentation.js +1041 -0
- package/dist/glass/GlassProbeIcons.d.ts +8 -0
- package/dist/glass/GlassProbeIcons.js +12 -0
- package/dist/glass/GlassProbeOverlay.d.ts +52 -0
- package/dist/glass/GlassProbeOverlay.js +45 -0
- package/dist/glass/GlassTextField.d.ts +22 -0
- package/dist/glass/GlassTextField.js +12 -0
- package/dist/glass/MaterialEffectRoot.d.ts +9 -0
- package/dist/glass/MaterialEffectRoot.js +189 -0
- package/dist/glass/Menu.d.ts +3 -0
- package/dist/glass/Menu.js +35 -0
- package/dist/glass/MenuStack.d.ts +23 -0
- package/dist/glass/MenuStack.js +371 -0
- package/dist/glass/MenuSymbol.d.ts +7 -0
- package/dist/glass/MenuSymbol.js +16 -0
- package/dist/glass/MorphEllipsisArtwork.d.ts +2 -0
- package/dist/glass/MorphEllipsisArtwork.js +6 -0
- package/dist/glass/TabBar.d.ts +29 -0
- package/dist/glass/TabBar.js +176 -0
- package/dist/glass/capability.d.ts +25 -0
- package/dist/glass/capability.js +63 -0
- package/dist/glass/captureWindow.d.ts +60 -0
- package/dist/glass/captureWindow.js +119 -0
- package/dist/glass/confusionSession.d.ts +41 -0
- package/dist/glass/confusionSession.js +44 -0
- package/dist/glass/contactPhysics.d.ts +130 -0
- package/dist/glass/contactPhysics.js +214 -0
- package/dist/glass/context.d.ts +37 -0
- package/dist/glass/context.js +11 -0
- package/dist/glass/errorAlert.d.ts +6 -0
- package/dist/glass/errorAlert.js +57 -0
- package/dist/glass/errors.d.ts +22 -0
- package/dist/glass/errors.js +78 -0
- package/dist/glass/failurePolicy.d.ts +4 -0
- package/dist/glass/failurePolicy.js +20 -0
- package/dist/glass/fallback/material.d.ts +16 -0
- package/dist/glass/fallback/material.js +87 -0
- package/dist/glass/fallback/regions.d.ts +16 -0
- package/dist/glass/fallback/regions.js +249 -0
- package/dist/glass/fallback/runtime.d.ts +72 -0
- package/dist/glass/fallback/runtime.js +278 -0
- package/dist/glass/fallback/selection.d.ts +2 -0
- package/dist/glass/fallback/selection.js +9 -0
- package/dist/glass/fieldGeometry.d.ts +28 -0
- package/dist/glass/fieldGeometry.js +64 -0
- package/dist/glass/fieldMotion.d.ts +42 -0
- package/dist/glass/fieldMotion.js +47 -0
- package/dist/glass/glassContact.d.ts +76 -0
- package/dist/glass/glassContact.js +153 -0
- package/dist/glass/glassProbeSettings.d.ts +18 -0
- package/dist/glass/glassProbeSettings.js +133 -0
- package/dist/glass/lens/Scene.d.ts +108 -0
- package/dist/glass/lens/Scene.js +553 -0
- package/dist/glass/lens/backgrounds.json +103 -0
- package/dist/glass/lens/bitmapBackdrop.d.ts +14 -0
- package/dist/glass/lens/bitmapBackdrop.js +35 -0
- package/dist/glass/lens/controlLift.d.ts +94 -0
- package/dist/glass/lens/controlLift.js +78 -0
- package/dist/glass/lens/data.d.ts +19 -0
- package/dist/glass/lens/data.js +161 -0
- package/dist/glass/lens/drawableTop.d.ts +16 -0
- package/dist/glass/lens/drawableTop.js +15 -0
- package/dist/glass/lens/icons.d.ts +9 -0
- package/dist/glass/lens/icons.js +34 -0
- package/dist/glass/lens/interactiveContact.d.ts +33 -0
- package/dist/glass/lens/interactiveContact.js +158 -0
- package/dist/glass/lens/interactivePress.d.ts +95 -0
- package/dist/glass/lens/interactivePress.js +169 -0
- package/dist/glass/lens/ios27GlyphFit.json +126 -0
- package/dist/glass/lens/lensLightingSamples.json +1 -0
- package/dist/glass/lens/lensPress.d.ts +22 -0
- package/dist/glass/lens/lensPress.js +68 -0
- package/dist/glass/lens/lensPressSamples.json +1 -0
- package/dist/glass/lens/liquidMotion.d.ts +50 -0
- package/dist/glass/lens/liquidMotion.js +239 -0
- package/dist/glass/lens/materialGlassRecipes.json +776 -0
- package/dist/glass/lens/materialUniforms.d.ts +22 -0
- package/dist/glass/lens/materialUniforms.js +117 -0
- package/dist/glass/lens/menu-closing-close-fit.json +380 -0
- package/dist/glass/lens/menu-opening-native-fits.json +911 -0
- package/dist/glass/lens/menuContextFit.json +88 -0
- package/dist/glass/lens/menuContextOpacity.json +98 -0
- package/dist/glass/lens/menuContextPresentation.d.ts +15 -0
- package/dist/glass/lens/menuContextPresentation.js +65 -0
- package/dist/glass/lens/menuCornerFit.json +252 -0
- package/dist/glass/lens/menuCornerMotion.d.ts +9 -0
- package/dist/glass/lens/menuCornerMotion.js +5 -0
- package/dist/glass/lens/menuDropFit.json +64 -0
- package/dist/glass/lens/menuField.d.ts +178 -0
- package/dist/glass/lens/menuField.js +564 -0
- package/dist/glass/lens/menuGesturePresentation.d.ts +12 -0
- package/dist/glass/lens/menuGesturePresentation.js +42 -0
- package/dist/glass/lens/menuGlyphDropFit.json +38 -0
- package/dist/glass/lens/menuMorphFit.json +564 -0
- package/dist/glass/lens/menuMorphMotion.d.ts +70 -0
- package/dist/glass/lens/menuMorphMotion.js +219 -0
- package/dist/glass/lens/menuMorphPhoneFit.json +85 -0
- package/dist/glass/lens/menuMotion.d.ts +81 -0
- package/dist/glass/lens/menuMotion.js +323 -0
- package/dist/glass/lens/menuPlacement.d.ts +5 -0
- package/dist/glass/lens/menuPlacement.js +29 -0
- package/dist/glass/lens/menuSpring.d.ts +18 -0
- package/dist/glass/lens/menuSpring.js +29 -0
- package/dist/glass/lens/menuTouchLight.d.ts +13 -0
- package/dist/glass/lens/menuTouchLight.js +147 -0
- package/dist/glass/lens/mirrorConstants.d.ts +1 -0
- package/dist/glass/lens/mirrorConstants.js +2 -0
- package/dist/glass/lens/mirrorExtents.d.ts +52 -0
- package/dist/glass/lens/mirrorExtents.js +264 -0
- package/dist/glass/lens/mirrorInvalidation.d.ts +6 -0
- package/dist/glass/lens/mirrorInvalidation.js +10 -0
- package/dist/glass/lens/mirrorReuse.d.ts +20 -0
- package/dist/glass/lens/mirrorReuse.js +166 -0
- package/dist/glass/lens/motion.d.ts +62 -0
- package/dist/glass/lens/motion.js +93 -0
- package/dist/glass/lens/recordedMotion.d.ts +6 -0
- package/dist/glass/lens/recordedMotion.js +44 -0
- package/dist/glass/lens/referenceBackground.d.ts +9 -0
- package/dist/glass/lens/referenceBackground.js +151 -0
- package/dist/glass/lens/referenceProfiles.d.ts +21 -0
- package/dist/glass/lens/referenceProfiles.js +33 -0
- package/dist/glass/lens/referenceRegularTint.d.ts +12 -0
- package/dist/glass/lens/referenceRegularTint.js +41 -0
- package/dist/glass/lens/scopeSegments.d.ts +12 -0
- package/dist/glass/lens/scopeSegments.js +18 -0
- package/dist/glass/lens/scrollAnchoring.d.ts +15 -0
- package/dist/glass/lens/scrollAnchoring.js +17 -0
- package/dist/glass/lens/selectionParameters.json +94 -0
- package/dist/glass/lens/shapeParameters.json +198 -0
- package/dist/glass/lens/tab-motion-native-fits.json +778 -0
- package/dist/glass/lens/tabAccessoryMotion.d.ts +52 -0
- package/dist/glass/lens/tabAccessoryMotion.js +52 -0
- package/dist/glass/lens/tabChromaRimModel.d.ts +43 -0
- package/dist/glass/lens/tabChromaRimModel.js +93 -0
- package/dist/glass/lens/tabCollapseInkSamples.json +49 -0
- package/dist/glass/lens/tabCompactGesture.d.ts +15 -0
- package/dist/glass/lens/tabCompactGesture.js +50 -0
- package/dist/glass/lens/tabGeometryAttack.json +70 -0
- package/dist/glass/lens/tabGlyphColours.d.ts +17 -0
- package/dist/glass/lens/tabGlyphColours.js +38 -0
- package/dist/glass/lens/tabInterruptedDecaySamples.json +245 -0
- package/dist/glass/lens/tabInterruptedRestoreSamples.json +290 -0
- package/dist/glass/lens/tabMaterialModel.d.ts +10 -0
- package/dist/glass/lens/tabMaterialModel.js +108 -0
- package/dist/glass/lens/tabMinimizeInk.d.ts +15 -0
- package/dist/glass/lens/tabMinimizeInk.js +14 -0
- package/dist/glass/lens/tabMinimizeMotion.d.ts +36 -0
- package/dist/glass/lens/tabMinimizeMotion.js +107 -0
- package/dist/glass/lens/tabMinimizeSamples.json +411 -0
- package/dist/glass/lens/tabMotion.d.ts +91 -0
- package/dist/glass/lens/tabMotion.js +478 -0
- package/dist/glass/lens/tabMotionFit.d.ts +76 -0
- package/dist/glass/lens/tabMotionFit.js +61 -0
- package/dist/glass/lens/tabNativeSymbols.d.ts +1 -0
- package/dist/glass/lens/tabNativeSymbols.js +7 -0
- package/dist/glass/lens/tabPresentation.d.ts +21 -0
- package/dist/glass/lens/tabPresentation.js +20 -0
- package/dist/glass/lens/tabRelease.d.ts +5 -0
- package/dist/glass/lens/tabRelease.js +14 -0
- package/dist/glass/lens/tabRestoreMotion.d.ts +19 -0
- package/dist/glass/lens/tabRestoreMotion.js +65 -0
- package/dist/glass/lens/tabRestoreSamples.json +1272 -0
- package/dist/glass/lens/tabSearchMember.d.ts +38 -0
- package/dist/glass/lens/tabSearchMember.js +74 -0
- package/dist/glass/lens/tabSelectionMaterial.d.ts +20 -0
- package/dist/glass/lens/tabSelectionMaterial.js +23 -0
- package/dist/glass/lens/tabSelectionMeasurements.test-fixture.d.ts +9 -0
- package/dist/glass/lens/tabSelectionMeasurements.test-fixture.js +74 -0
- package/dist/glass/lens/tabSettingsSymbol.d.ts +1 -0
- package/dist/glass/lens/tabSettingsSymbol.js +2 -0
- package/dist/glass/lens/tabShapeResponse.d.ts +7 -0
- package/dist/glass/lens/tabShapeResponse.js +30 -0
- package/dist/glass/lens/theme.d.ts +18 -0
- package/dist/glass/lens/theme.js +40 -0
- package/dist/glass/lens/trace.d.ts +2 -0
- package/dist/glass/lens/trace.js +27 -0
- package/dist/glass/liquidContext.d.ts +32 -0
- package/dist/glass/liquidContext.js +2 -0
- package/dist/glass/menuPanelPlacement.d.ts +51 -0
- package/dist/glass/menuPanelPlacement.js +128 -0
- package/dist/glass/menuPresenter.d.ts +34 -0
- package/dist/glass/menuPresenter.js +983 -0
- package/dist/glass/menuSymbolMasks.d.ts +1 -0
- package/dist/glass/menuSymbolMasks.js +1 -0
- package/dist/glass/menuSymbolTokens.d.ts +22 -0
- package/dist/glass/menuSymbolTokens.js +12 -0
- package/dist/glass/menuTriggerGeometry.d.ts +99 -0
- package/dist/glass/menuTriggerGeometry.js +126 -0
- package/dist/glass/menuTriggerSnapshot.d.ts +77 -0
- package/dist/glass/menuTriggerSnapshot.js +69 -0
- package/dist/glass/menuTypes.d.ts +22 -0
- package/dist/glass/menuTypes.js +1 -0
- package/dist/glass/morphField.d.ts +18 -0
- package/dist/glass/morphField.js +139 -0
- package/dist/glass/presentationFrame.d.ts +43 -0
- package/dist/glass/presentationFrame.js +82 -0
- package/dist/glass/pressHighlight.d.ts +9 -0
- package/dist/glass/pressHighlight.js +158 -0
- package/dist/glass/regionRegistry.d.ts +93 -0
- package/dist/glass/regionRegistry.js +313 -0
- package/dist/glass/regions.d.ts +262 -0
- package/dist/glass/regions.js +147 -0
- package/dist/glass/regularMaterialContext.d.ts +45 -0
- package/dist/glass/regularMaterialContext.js +118 -0
- package/dist/glass/regularTriggerMaterial.d.ts +19 -0
- package/dist/glass/regularTriggerMaterial.js +111 -0
- package/dist/glass/regularTriggerRim.d.ts +163 -0
- package/dist/glass/regularTriggerRim.js +436 -0
- package/dist/glass/renderSpecs.d.ts +454 -0
- package/dist/glass/renderSpecs.js +231 -0
- package/dist/glass/rendererContract.d.ts +205 -0
- package/dist/glass/rendererContract.js +18 -0
- package/dist/glass/shapeTrack.d.ts +53 -0
- package/dist/glass/shapeTrack.js +74 -0
- package/dist/glass/shapeTrackRegistry.d.ts +40 -0
- package/dist/glass/shapeTrackRegistry.js +49 -0
- package/dist/glass/sourceDamage.d.ts +6 -0
- package/dist/glass/sourceDamage.js +8 -0
- package/dist/glass/submenuMotion.d.ts +205 -0
- package/dist/glass/submenuMotion.js +306 -0
- package/dist/glass/tabBarModel.d.ts +12 -0
- package/dist/glass/tabBarModel.js +32 -0
- package/dist/glass/testing.d.ts +14 -0
- package/dist/glass/testing.js +14 -0
- package/dist/glass/tokens.d.ts +79 -0
- package/dist/glass/tokens.js +86 -0
- package/dist/glass/toolbarMaterialContext.d.ts +28 -0
- package/dist/glass/toolbarMaterialContext.js +66 -0
- package/dist/glass/topLayer.d.ts +5 -0
- package/dist/glass/topLayer.js +10 -0
- package/dist/glass/unionOutline.d.ts +11 -0
- package/dist/glass/unionOutline.js +98 -0
- package/dist/glass/visibleDeadline.d.ts +21 -0
- package/dist/glass/visibleDeadline.js +61 -0
- package/dist/glass/webgpu/accessoryMorph.d.ts +99 -0
- package/dist/glass/webgpu/accessoryMorph.js +473 -0
- package/dist/glass/webgpu/accessoryTrack.d.ts +47 -0
- package/dist/glass/webgpu/accessoryTrack.js +59 -0
- package/dist/glass/webgpu/areaMips.d.ts +50 -0
- package/dist/glass/webgpu/areaMips.js +166 -0
- package/dist/glass/webgpu/backdrop.d.ts +86 -0
- package/dist/glass/webgpu/backdrop.js +243 -0
- package/dist/glass/webgpu/backdropLayers.d.ts +29 -0
- package/dist/glass/webgpu/backdropLayers.js +182 -0
- package/dist/glass/webgpu/backgroundLayers.d.ts +71 -0
- package/dist/glass/webgpu/backgroundLayers.js +385 -0
- package/dist/glass/webgpu/cadence.d.ts +18 -0
- package/dist/glass/webgpu/cadence.js +35 -0
- package/dist/glass/webgpu/canvasSubmission.d.ts +6 -0
- package/dist/glass/webgpu/canvasSubmission.js +22 -0
- package/dist/glass/webgpu/capture.d.ts +77 -0
- package/dist/glass/webgpu/capture.js +534 -0
- package/dist/glass/webgpu/captureBands.d.ts +39 -0
- package/dist/glass/webgpu/captureBands.js +53 -0
- package/dist/glass/webgpu/captureContext.d.ts +1 -0
- package/dist/glass/webgpu/captureContext.js +6 -0
- package/dist/glass/webgpu/captureDemand.d.ts +44 -0
- package/dist/glass/webgpu/captureDemand.js +81 -0
- package/dist/glass/webgpu/captureRelease.d.ts +18 -0
- package/dist/glass/webgpu/captureRelease.js +39 -0
- package/dist/glass/webgpu/client.d.ts +49 -0
- package/dist/glass/webgpu/client.js +336 -0
- package/dist/glass/webgpu/contextBackdrop.d.ts +6 -0
- package/dist/glass/webgpu/contextBackdrop.js +13 -0
- package/dist/glass/webgpu/contextComposite.d.ts +64 -0
- package/dist/glass/webgpu/contextComposite.js +66 -0
- package/dist/glass/webgpu/decodedImage.d.ts +1 -0
- package/dist/glass/webgpu/decodedImage.js +2 -0
- package/dist/glass/webgpu/deviceLimits.d.ts +5 -0
- package/dist/glass/webgpu/deviceLimits.js +8 -0
- package/dist/glass/webgpu/edgePass.d.ts +9 -0
- package/dist/glass/webgpu/edgePass.js +170 -0
- package/dist/glass/webgpu/entry.worker.d.ts +1 -0
- package/dist/glass/webgpu/entry.worker.js +28 -0
- package/dist/glass/webgpu/errorCode.d.ts +3 -0
- package/dist/glass/webgpu/errorCode.js +27 -0
- package/dist/glass/webgpu/errors.d.ts +8 -0
- package/dist/glass/webgpu/errors.js +55 -0
- package/dist/glass/webgpu/fieldInk.d.ts +9 -0
- package/dist/glass/webgpu/fieldInk.js +62 -0
- package/dist/glass/webgpu/foreground.d.ts +29 -0
- package/dist/glass/webgpu/foreground.js +313 -0
- package/dist/glass/webgpu/frameClock.d.ts +34 -0
- package/dist/glass/webgpu/frameClock.js +60 -0
- package/dist/glass/webgpu/frameGraph.d.ts +57 -0
- package/dist/glass/webgpu/frameGraph.js +287 -0
- package/dist/glass/webgpu/frameProbe.d.ts +58 -0
- package/dist/glass/webgpu/frameProbe.js +181 -0
- package/dist/glass/webgpu/interactionProfiles.d.ts +10 -0
- package/dist/glass/webgpu/interactionProfiles.js +25 -0
- package/dist/glass/webgpu/keptGlyphs.d.ts +68 -0
- package/dist/glass/webgpu/keptGlyphs.js +85 -0
- package/dist/glass/webgpu/keyboardBackdrop.d.ts +12 -0
- package/dist/glass/webgpu/keyboardBackdrop.js +51 -0
- package/dist/glass/webgpu/lagTrace.d.ts +31 -0
- package/dist/glass/webgpu/lagTrace.js +22 -0
- package/dist/glass/webgpu/layers.d.ts +100 -0
- package/dist/glass/webgpu/layers.js +301 -0
- package/dist/glass/webgpu/lensDebug.d.ts +4 -0
- package/dist/glass/webgpu/lensDebug.js +28 -0
- package/dist/glass/webgpu/lensDiffusion.d.ts +2 -0
- package/dist/glass/webgpu/lensDiffusion.js +20 -0
- package/dist/glass/webgpu/lensLightingFit.json +222 -0
- package/dist/glass/webgpu/menuLiftInput.d.ts +30 -0
- package/dist/glass/webgpu/menuLiftInput.js +39 -0
- package/dist/glass/webgpu/menuSurfaceGuard.d.ts +17 -0
- package/dist/glass/webgpu/menuSurfaceGuard.js +26 -0
- package/dist/glass/webgpu/minimize.d.ts +184 -0
- package/dist/glass/webgpu/minimize.js +470 -0
- package/dist/glass/webgpu/navigationAtlasCopy.d.ts +12 -0
- package/dist/glass/webgpu/navigationAtlasCopy.js +121 -0
- package/dist/glass/webgpu/navigationTracks.d.ts +3 -0
- package/dist/glass/webgpu/navigationTracks.js +84 -0
- package/dist/glass/webgpu/passes.d.ts +204 -0
- package/dist/glass/webgpu/passes.js +394 -0
- package/dist/glass/webgpu/pendingSurfaceInput.d.ts +29 -0
- package/dist/glass/webgpu/pendingSurfaceInput.js +51 -0
- package/dist/glass/webgpu/preparedSourcePixels.d.ts +21 -0
- package/dist/glass/webgpu/preparedSourcePixels.js +43 -0
- package/dist/glass/webgpu/presentationBackdrop.d.ts +3 -0
- package/dist/glass/webgpu/presentationBackdrop.js +33 -0
- package/dist/glass/webgpu/presentationDiffusion.d.ts +48 -0
- package/dist/glass/webgpu/presentationDiffusion.js +57 -0
- package/dist/glass/webgpu/presentationMaterial.d.ts +9 -0
- package/dist/glass/webgpu/presentationMaterial.js +156 -0
- package/dist/glass/webgpu/presenterViewport.d.ts +11 -0
- package/dist/glass/webgpu/presenterViewport.js +193 -0
- package/dist/glass/webgpu/production.d.ts +552 -0
- package/dist/glass/webgpu/production.js +1929 -0
- package/dist/glass/webgpu/productionInstalls.d.ts +53 -0
- package/dist/glass/webgpu/productionInstalls.js +225 -0
- package/dist/glass/webgpu/productionNavigation.d.ts +5 -0
- package/dist/glass/webgpu/productionNavigation.js +360 -0
- package/dist/glass/webgpu/productionPinnedTop.d.ts +80 -0
- package/dist/glass/webgpu/productionPinnedTop.js +77 -0
- package/dist/glass/webgpu/productionPinnedTopPrepare.d.ts +21 -0
- package/dist/glass/webgpu/productionPinnedTopPrepare.js +132 -0
- package/dist/glass/webgpu/productionPlanes.d.ts +135 -0
- package/dist/glass/webgpu/productionPlanes.js +412 -0
- package/dist/glass/webgpu/productionPrepare.d.ts +18 -0
- package/dist/glass/webgpu/productionPrepare.js +833 -0
- package/dist/glass/webgpu/productionTracks.d.ts +73 -0
- package/dist/glass/webgpu/productionTracks.js +22 -0
- package/dist/glass/webgpu/productionViewport.d.ts +20 -0
- package/dist/glass/webgpu/productionViewport.js +52 -0
- package/dist/glass/webgpu/profile.d.ts +37 -0
- package/dist/glass/webgpu/profile.js +101 -0
- package/dist/glass/webgpu/raster.d.ts +337 -0
- package/dist/glass/webgpu/raster.js +1360 -0
- package/dist/glass/webgpu/rasterMaterial.d.ts +19 -0
- package/dist/glass/webgpu/rasterMaterial.js +197 -0
- package/dist/glass/webgpu/rasterShaders.d.ts +7 -0
- package/dist/glass/webgpu/rasterShaders.js +105 -0
- package/dist/glass/webgpu/rasterUniforms.d.ts +304 -0
- package/dist/glass/webgpu/rasterUniforms.js +415 -0
- package/dist/glass/webgpu/regionBackdrop.d.ts +8 -0
- package/dist/glass/webgpu/regionBackdrop.js +12 -0
- package/dist/glass/webgpu/regionBridge.d.ts +145 -0
- package/dist/glass/webgpu/regionBridge.js +1691 -0
- package/dist/glass/webgpu/regionScene.d.ts +294 -0
- package/dist/glass/webgpu/regionScene.js +2144 -0
- package/dist/glass/webgpu/renderer.d.ts +8 -0
- package/dist/glass/webgpu/renderer.js +1478 -0
- package/dist/glass/webgpu/residentPlanes.d.ts +69 -0
- package/dist/glass/webgpu/residentPlanes.js +104 -0
- package/dist/glass/webgpu/restMaterial.d.ts +6 -0
- package/dist/glass/webgpu/restMaterial.js +65 -0
- package/dist/glass/webgpu/resumeOverlay.d.ts +44 -0
- package/dist/glass/webgpu/resumeOverlay.js +82 -0
- package/dist/glass/webgpu/sampleTrace.d.ts +11 -0
- package/dist/glass/webgpu/sampleTrace.js +50 -0
- package/dist/glass/webgpu/scrollEdgeBackdrop.d.ts +89 -0
- package/dist/glass/webgpu/scrollEdgeBackdrop.js +177 -0
- package/dist/glass/webgpu/scrollEdgePose.d.ts +4 -0
- package/dist/glass/webgpu/scrollEdgePose.js +49 -0
- package/dist/glass/webgpu/selectionThumb.d.ts +81 -0
- package/dist/glass/webgpu/selectionThumb.js +209 -0
- package/dist/glass/webgpu/shaders.d.ts +67 -0
- package/dist/glass/webgpu/shaders.js +595 -0
- package/dist/glass/webgpu/sharedLift.d.ts +7 -0
- package/dist/glass/webgpu/sharedLift.js +223 -0
- package/dist/glass/webgpu/sourcePixels.d.ts +42 -0
- package/dist/glass/webgpu/sourcePixels.js +140 -0
- package/dist/glass/webgpu/sourcePixels.worker.d.ts +1 -0
- package/dist/glass/webgpu/sourcePixels.worker.js +62 -0
- package/dist/glass/webgpu/tabGlyphInk.d.ts +14 -0
- package/dist/glass/webgpu/tabGlyphInk.js +72 -0
- package/dist/glass/webgpu/touchLight.d.ts +4 -0
- package/dist/glass/webgpu/touchLight.js +15 -0
- package/dist/glass/worker/client.d.ts +21 -0
- package/dist/glass/worker/client.js +152 -0
- package/dist/glass/worker/experiment.d.ts +13 -0
- package/dist/glass/worker/experiment.js +221 -0
- package/dist/glass/worker/fixture.d.ts +21 -0
- package/dist/glass/worker/fixture.js +152 -0
- package/dist/glass/worker/protocol.d.ts +439 -0
- package/dist/glass/worker/protocol.js +5 -0
- package/dist/graphicsProbe.d.ts +19 -0
- package/dist/graphicsProbe.js +111 -0
- package/dist/haptics/SensoryButton.d.ts +21 -0
- package/dist/haptics/SensoryButton.js +80 -0
- package/dist/image/ContentAdmission.d.ts +19 -0
- package/dist/image/ContentAdmission.js +70 -0
- package/dist/image/Image.d.ts +30 -0
- package/dist/image/Image.js +341 -0
- package/dist/image/asset.d.ts +9 -0
- package/dist/image/asset.js +1 -0
- package/dist/image/contentReadiness.d.ts +7 -0
- package/dist/image/contentReadiness.js +54 -0
- package/dist/image/imports.d.ts +4 -0
- package/dist/image/resource.d.ts +53 -0
- package/dist/image/resource.js +286 -0
- package/dist/image/vite.d.ts +3 -0
- package/dist/image/vite.js +63 -0
- package/dist/index.d.ts +87 -0
- package/dist/index.js +102 -0
- package/dist/install.d.ts +8 -0
- package/dist/install.js +8 -0
- package/dist/internal.d.ts +96 -0
- package/dist/internal.js +80 -0
- package/dist/keyboard/adapter.d.ts +82 -0
- package/dist/keyboard/adapter.js +727 -0
- package/dist/keyboard/avoidance.d.ts +24 -0
- package/dist/keyboard/avoidance.js +283 -0
- package/dist/keyboard/caretMirror.d.ts +13 -0
- package/dist/keyboard/caretMirror.js +122 -0
- package/dist/keyboard/expectedKeyboard.d.ts +10 -0
- package/dist/keyboard/expectedKeyboard.js +60 -0
- package/dist/keyboard/geometry.d.ts +10 -0
- package/dist/keyboard/geometry.js +21 -0
- package/dist/keyboard/modalTapFocus.d.ts +41 -0
- package/dist/keyboard/modalTapFocus.js +224 -0
- package/dist/keyboard/motion.d.ts +54 -0
- package/dist/keyboard/motion.js +80 -0
- package/dist/keyboard/translation.d.ts +12 -0
- package/dist/keyboard/translation.js +19 -0
- package/dist/layout/adaptiveTabsContext.d.ts +5 -0
- package/dist/layout/adaptiveTabsContext.js +2 -0
- package/dist/layout/deviceIdiom.d.ts +4 -0
- package/dist/layout/deviceIdiom.js +12 -0
- package/dist/layout/layoutClass.d.ts +44 -0
- package/dist/layout/layoutClass.js +102 -0
- package/dist/layout/navigationLayoutContext.d.ts +8 -0
- package/dist/layout/navigationLayoutContext.js +5 -0
- package/dist/list-form/ListForm.d.ts +158 -0
- package/dist/list-form/ListForm.js +427 -0
- package/dist/list-form/ListItem.d.ts +30 -0
- package/dist/list-form/ListItem.js +251 -0
- package/dist/list-form/RowLabel.d.ts +14 -0
- package/dist/list-form/RowLabel.js +11 -0
- package/dist/list-form/Slider.d.ts +18 -0
- package/dist/list-form/Slider.js +235 -0
- package/dist/list-form/StepperButton.d.ts +9 -0
- package/dist/list-form/StepperButton.js +60 -0
- package/dist/list-form/Toggle.d.ts +16 -0
- package/dist/list-form/Toggle.js +204 -0
- package/dist/list-form/editMotion.d.ts +15 -0
- package/dist/list-form/editMotion.js +25 -0
- package/dist/list-form/editing.d.ts +102 -0
- package/dist/list-form/editing.js +51 -0
- package/dist/list-form/listContext.d.ts +4 -0
- package/dist/list-form/listContext.js +5 -0
- package/dist/list-form/offsets.d.ts +26 -0
- package/dist/list-form/offsets.js +34 -0
- package/dist/list-form/reorder.d.ts +20 -0
- package/dist/list-form/reorder.js +193 -0
- package/dist/list-form/rowMotion.d.ts +11 -0
- package/dist/list-form/rowMotion.js +236 -0
- package/dist/list-form/rowMotionScope.d.ts +14 -0
- package/dist/list-form/rowMotionScope.js +61 -0
- package/dist/list-form/separatorInsets.d.ts +4 -0
- package/dist/list-form/separatorInsets.js +87 -0
- package/dist/list-form/sliderContact.d.ts +40 -0
- package/dist/list-form/sliderContact.js +98 -0
- package/dist/list-form/state.d.ts +5 -0
- package/dist/list-form/state.js +8 -0
- package/dist/list-form/toggleContact.d.ts +55 -0
- package/dist/list-form/toggleContact.js +164 -0
- package/dist/media/controller.d.ts +7 -0
- package/dist/media/controller.js +612 -0
- package/dist/media/react.d.ts +9 -0
- package/dist/media/react.js +38 -0
- package/dist/media/systemMedia.d.ts +6 -0
- package/dist/media/systemMedia.js +200 -0
- package/dist/media/types.d.ts +83 -0
- package/dist/media/types.js +1 -0
- package/dist/menu/menuContact.d.ts +20 -0
- package/dist/menu/menuContact.js +286 -0
- package/dist/menu/menuGesture.d.ts +84 -0
- package/dist/menu/menuGesture.js +502 -0
- package/dist/menu/menuInteraction.d.ts +17 -0
- package/dist/menu/menuInteraction.js +34 -0
- package/dist/menu/menuOutside.d.ts +9 -0
- package/dist/menu/menuOutside.js +58 -0
- package/dist/menu/menuPanelContact.d.ts +11 -0
- package/dist/menu/menuPanelContact.js +77 -0
- package/dist/menu/menuTriggerHold.d.ts +3 -0
- package/dist/menu/menuTriggerHold.js +52 -0
- package/dist/menu/sampledMotion.d.ts +37 -0
- package/dist/menu/sampledMotion.js +86 -0
- package/dist/modal/lifecycle.d.ts +10 -0
- package/dist/modal/lifecycle.js +189 -0
- package/dist/motion/TransitionView.d.ts +12 -0
- package/dist/motion/TransitionView.js +118 -0
- package/dist/motion/animate.d.ts +20 -0
- package/dist/motion/animate.js +79 -0
- package/dist/motion/animationValue.d.ts +25 -0
- package/dist/motion/animationValue.js +42 -0
- package/dist/motion/composerMotion.d.ts +3 -0
- package/dist/motion/composerMotion.js +15 -0
- package/dist/motion/layoutTransaction.d.ts +7 -0
- package/dist/motion/layoutTransaction.js +28 -0
- package/dist/motion/matchedGeometry.d.ts +55 -0
- package/dist/motion/matchedGeometry.js +412 -0
- package/dist/motion/springPath.d.ts +27 -0
- package/dist/motion/springPath.js +46 -0
- package/dist/motion/springTrack.d.ts +33 -0
- package/dist/motion/springTrack.js +69 -0
- package/dist/motion/transition.d.ts +48 -0
- package/dist/motion/transition.js +56 -0
- package/dist/motion/transitionImages.d.ts +7 -0
- package/dist/motion/transitionImages.js +49 -0
- package/dist/motionProbe.d.ts +227 -0
- package/dist/motionProbe.js +697 -0
- package/dist/motionProbeControls.d.ts +2 -0
- package/dist/motionProbeControls.js +118 -0
- package/dist/motionProbeDelivery.d.ts +15 -0
- package/dist/motionProbeDelivery.js +84 -0
- package/dist/navigation/DetailList.d.ts +9 -0
- package/dist/navigation/DetailList.js +7 -0
- package/dist/navigation/NavigationChrome.d.ts +18 -0
- package/dist/navigation/NavigationChrome.js +195 -0
- package/dist/navigation/NavigationSearchRow.d.ts +9 -0
- package/dist/navigation/NavigationSearchRow.js +101 -0
- package/dist/navigation/NavigationTitleSlots.d.ts +18 -0
- package/dist/navigation/NavigationTitleSlots.js +64 -0
- package/dist/navigation/NavigatorHost.d.ts +17 -0
- package/dist/navigation/NavigatorHost.js +534 -0
- package/dist/navigation/ScreenContainer.d.ts +31 -0
- package/dist/navigation/ScreenContainer.js +219 -0
- package/dist/navigation/ScrubSourceFrames.d.ts +18 -0
- package/dist/navigation/ScrubSourceFrames.js +67 -0
- package/dist/navigation/Sidebar.d.ts +16 -0
- package/dist/navigation/Sidebar.js +20 -0
- package/dist/navigation/SidebarSymbol.d.ts +4 -0
- package/dist/navigation/SidebarSymbol.js +6 -0
- package/dist/navigation/ToolbarGlass.d.ts +2 -0
- package/dist/navigation/ToolbarGlass.js +429 -0
- package/dist/navigation/TransitionEdge.d.ts +4 -0
- package/dist/navigation/TransitionEdge.js +33 -0
- package/dist/navigation/bottomToolbarGeometry.d.ts +6 -0
- package/dist/navigation/bottomToolbarGeometry.js +14 -0
- package/dist/navigation/chromeCurves.d.ts +48 -0
- package/dist/navigation/chromeCurves.js +255 -0
- package/dist/navigation/glassTransition.d.ts +32 -0
- package/dist/navigation/glassTransition.js +55 -0
- package/dist/navigation/horizontalDrag.d.ts +6 -0
- package/dist/navigation/horizontalDrag.js +15 -0
- package/dist/navigation/interactivePop.d.ts +45 -0
- package/dist/navigation/interactivePop.js +86 -0
- package/dist/navigation/interactivePopTypes.d.ts +85 -0
- package/dist/navigation/interactivePopTypes.js +36 -0
- package/dist/navigation/keyboard.d.ts +9 -0
- package/dist/navigation/keyboard.js +55 -0
- package/dist/navigation/motion.d.ts +19 -0
- package/dist/navigation/motion.js +645 -0
- package/dist/navigation/motionTokens.d.ts +43 -0
- package/dist/navigation/motionTokens.js +75 -0
- package/dist/navigation/nativeScrubExperiment.d.ts +5 -0
- package/dist/navigation/nativeScrubExperiment.js +153 -0
- package/dist/navigation/nativeScrubSource.d.ts +15 -0
- package/dist/navigation/nativeScrubSource.js +88 -0
- package/dist/navigation/navigationChromeModel.d.ts +8 -0
- package/dist/navigation/navigationChromeModel.js +30 -0
- package/dist/navigation/navigationContext.d.ts +22 -0
- package/dist/navigation/navigationContext.js +65 -0
- package/dist/navigation/navigationEdge.d.ts +4 -0
- package/dist/navigation/navigationEdge.js +101 -0
- package/dist/navigation/pointerPop.d.ts +32 -0
- package/dist/navigation/pointerPop.js +206 -0
- package/dist/navigation/probeLayers.d.ts +7 -0
- package/dist/navigation/probeLayers.js +8 -0
- package/dist/navigation/registry.d.ts +14 -0
- package/dist/navigation/registry.js +31 -0
- package/dist/navigation/releaseDecision.d.ts +21 -0
- package/dist/navigation/releaseDecision.js +94 -0
- package/dist/navigation/releaseTrajectory.d.ts +20 -0
- package/dist/navigation/releaseTrajectory.js +95 -0
- package/dist/navigation/releaseVelocity.d.ts +9 -0
- package/dist/navigation/releaseVelocity.js +38 -0
- package/dist/navigation/routeCodec.d.ts +33 -0
- package/dist/navigation/routeCodec.js +123 -0
- package/dist/navigation/scrollEdge.d.ts +18 -0
- package/dist/navigation/scrollEdge.js +66 -0
- package/dist/navigation/scrubFrameLoop.d.ts +44 -0
- package/dist/navigation/scrubFrameLoop.js +129 -0
- package/dist/navigation/sidebarSelection.d.ts +5 -0
- package/dist/navigation/sidebarSelection.js +8 -0
- package/dist/navigation/splitContext.d.ts +17 -0
- package/dist/navigation/splitContext.js +9 -0
- package/dist/navigation/splitState.d.ts +46 -0
- package/dist/navigation/splitState.js +130 -0
- package/dist/navigation/stack.d.ts +25 -0
- package/dist/navigation/stack.js +136 -0
- package/dist/navigation/store.d.ts +80 -0
- package/dist/navigation/store.js +464 -0
- package/dist/navigation/toolbarGlassMotion.d.ts +40 -0
- package/dist/navigation/toolbarGlassMotion.js +202 -0
- package/dist/navigation/toolbarMinimization.d.ts +9 -0
- package/dist/navigation/toolbarMinimization.js +76 -0
- package/dist/navigation/toolbarMotionOwner.d.ts +6 -0
- package/dist/navigation/toolbarMotionOwner.js +30 -0
- package/dist/navigation/touchArbitration.d.ts +34 -0
- package/dist/navigation/touchArbitration.js +550 -0
- package/dist/navigation/tracking.d.ts +7 -0
- package/dist/navigation/tracking.js +19 -0
- package/dist/navigation/transitionBindings.d.ts +31 -0
- package/dist/navigation/transitionBindings.js +106 -0
- package/dist/navigation/transitionChrome.d.ts +31 -0
- package/dist/navigation/transitionChrome.js +380 -0
- package/dist/navigation/transitionPose.d.ts +52 -0
- package/dist/navigation/transitionPose.js +295 -0
- package/dist/navigation/types.d.ts +133 -0
- package/dist/navigation/types.js +1 -0
- package/dist/navigation/zoomDrag.d.ts +3 -0
- package/dist/navigation/zoomDrag.js +125 -0
- package/dist/navigation/zoomGeometry.d.ts +48 -0
- package/dist/navigation/zoomGeometry.js +94 -0
- package/dist/navigation/zoomGlass.d.ts +27 -0
- package/dist/navigation/zoomGlass.js +64 -0
- package/dist/navigation/zoomMotion.d.ts +73 -0
- package/dist/navigation/zoomMotion.js +104 -0
- package/dist/navigation/zoomTransition.d.ts +82 -0
- package/dist/navigation/zoomTransition.js +975 -0
- package/dist/presentation/Presentation.d.ts +61 -0
- package/dist/presentation/Presentation.js +92 -0
- package/dist/presentation/PresentationSurface.d.ts +29 -0
- package/dist/presentation/PresentationSurface.js +586 -0
- package/dist/presentation/PresentedSheet.d.ts +2 -0
- package/dist/presentation/PresentedSheet.js +571 -0
- package/dist/presentation/activity.d.ts +3 -0
- package/dist/presentation/activity.js +24 -0
- package/dist/presentation/coldLaunch.d.ts +2 -0
- package/dist/presentation/coldLaunch.js +19 -0
- package/dist/presentation/dismiss.d.ts +26 -0
- package/dist/presentation/dismiss.js +30 -0
- package/dist/presentation/glassMotion.d.ts +39 -0
- package/dist/presentation/glassMotion.js +259 -0
- package/dist/presentation/glassReady.d.ts +11 -0
- package/dist/presentation/glassReady.js +246 -0
- package/dist/presentation/model.d.ts +108 -0
- package/dist/presentation/model.js +183 -0
- package/dist/presentation/motion.d.ts +56 -0
- package/dist/presentation/motion.js +263 -0
- package/dist/presentation/presentationMotion.d.ts +10 -0
- package/dist/presentation/presentationMotion.js +74 -0
- package/dist/presentation/presentationSource.d.ts +2 -0
- package/dist/presentation/presentationSource.js +28 -0
- package/dist/presentation/sheetChromeContext.d.ts +2 -0
- package/dist/presentation/sheetChromeContext.js +3 -0
- package/dist/presentation/sheetMaterialTransition.d.ts +14 -0
- package/dist/presentation/sheetMaterialTransition.js +33 -0
- package/dist/presentation/sheetReleaseMotion.d.ts +18 -0
- package/dist/presentation/sheetReleaseMotion.js +123 -0
- package/dist/presentation/useAlertKeyboardMotion.d.ts +8 -0
- package/dist/presentation/useAlertKeyboardMotion.js +104 -0
- package/dist/press/Pressable.d.ts +19 -0
- package/dist/press/Pressable.js +16 -0
- package/dist/press/activation.d.ts +20 -0
- package/dist/press/activation.js +28 -0
- package/dist/press/contactReceipt.d.ts +23 -0
- package/dist/press/contactReceipt.js +177 -0
- package/dist/press/gestureArbitration.d.ts +13 -0
- package/dist/press/gestureArbitration.js +38 -0
- package/dist/press/stateMachine.d.ts +29 -0
- package/dist/press/stateMachine.js +39 -0
- package/dist/press/tokens.d.ts +18 -0
- package/dist/press/tokens.js +19 -0
- package/dist/press/usePressInteraction.d.ts +30 -0
- package/dist/press/usePressInteraction.js +247 -0
- package/dist/public/Label.d.ts +16 -0
- package/dist/public/Label.js +40 -0
- package/dist/public/NativeFilePicker.d.ts +19 -0
- package/dist/public/NativeFilePicker.js +75 -0
- package/dist/public/Screen.d.ts +42 -0
- package/dist/public/Screen.js +87 -0
- package/dist/public/actions.d.ts +16 -0
- package/dist/public/actions.js +15 -0
- package/dist/public/buttonBorderShape.d.ts +7 -0
- package/dist/public/buttonBorderShape.js +9 -0
- package/dist/public/chrome.d.ts +3 -0
- package/dist/public/chrome.js +5 -0
- package/dist/public/colors.d.ts +29 -0
- package/dist/public/colors.js +28 -0
- package/dist/public/context.d.ts +19 -0
- package/dist/public/context.js +8 -0
- package/dist/public/controlStyle.d.ts +93 -0
- package/dist/public/controlStyle.js +52 -0
- package/dist/public/controls.d.ts +360 -0
- package/dist/public/controls.js +301 -0
- package/dist/public/definition.d.ts +65 -0
- package/dist/public/definition.js +58 -0
- package/dist/public/deviceActions.d.ts +23 -0
- package/dist/public/deviceActions.js +87 -0
- package/dist/public/environment.d.ts +77 -0
- package/dist/public/environment.js +171 -0
- package/dist/public/fieldContext.d.ts +2 -0
- package/dist/public/fieldContext.js +3 -0
- package/dist/public/filePickers.d.ts +25 -0
- package/dist/public/filePickers.js +11 -0
- package/dist/public/glass.d.ts +31 -0
- package/dist/public/glass.js +29 -0
- package/dist/public/glassValue.d.ts +19 -0
- package/dist/public/glassValue.js +32 -0
- package/dist/public/keyboard.d.ts +4 -0
- package/dist/public/keyboard.js +6 -0
- package/dist/public/navigationTransition.d.ts +48 -0
- package/dist/public/navigationTransition.js +49 -0
- package/dist/public/pickerNavigation.d.ts +7 -0
- package/dist/public/pickerNavigation.js +64 -0
- package/dist/public/presentation.d.ts +40 -0
- package/dist/public/presentation.js +21 -0
- package/dist/public/presentationContext.d.ts +2 -0
- package/dist/public/presentationContext.js +3 -0
- package/dist/public/routeRegistry.d.ts +3 -0
- package/dist/public/routeRegistry.js +10 -0
- package/dist/public/routes.d.ts +74 -0
- package/dist/public/routes.js +105 -0
- package/dist/public/runtime.d.ts +134 -0
- package/dist/public/runtime.js +292 -0
- package/dist/public/screenChrome.d.ts +91 -0
- package/dist/public/screenChrome.js +187 -0
- package/dist/public/scroll.d.ts +38 -0
- package/dist/public/scroll.js +7 -0
- package/dist/public/storage.d.ts +9 -0
- package/dist/public/storage.js +9 -0
- package/dist/public/structure.d.ts +65 -0
- package/dist/public/structure.js +40 -0
- package/dist/public/toolbar.d.ts +37 -0
- package/dist/public/toolbar.js +76 -0
- package/dist/push/PushPermissionExplainer.d.ts +14 -0
- package/dist/push/PushPermissionExplainer.js +30 -0
- package/dist/push/notifications.d.ts +54 -0
- package/dist/push/notifications.js +276 -0
- package/dist/push/routes.d.ts +20 -0
- package/dist/push/routes.js +63 -0
- package/dist/push/schema.d.ts +42 -0
- package/dist/push/schema.js +41 -0
- package/dist/push/urlProjection.d.ts +24 -0
- package/dist/push/urlProjection.js +207 -0
- package/dist/reachability/controller.d.ts +21 -0
- package/dist/reachability/controller.js +202 -0
- package/dist/reachability/model.d.ts +94 -0
- package/dist/reachability/model.js +131 -0
- package/dist/reachability/react.d.ts +29 -0
- package/dist/reachability/react.js +69 -0
- package/dist/restoration/navigation.d.ts +9 -0
- package/dist/restoration/navigation.js +55 -0
- package/dist/restoration/react.d.ts +6 -0
- package/dist/restoration/react.js +21 -0
- package/dist/restoration/routes.d.ts +22 -0
- package/dist/restoration/routes.js +166 -0
- package/dist/restoration/scene.d.ts +44 -0
- package/dist/restoration/scene.js +284 -0
- package/dist/root/SatinRoot.d.ts +25 -0
- package/dist/root/SatinRoot.js +512 -0
- package/dist/root/mountSatin.d.ts +12 -0
- package/dist/root/mountSatin.js +60 -0
- package/dist/root/runtimeContext.d.ts +26 -0
- package/dist/root/runtimeContext.js +30 -0
- package/dist/safe-area/Overlay.d.ts +9 -0
- package/dist/safe-area/Overlay.js +26 -0
- package/dist/safe-area/SafeAreaInset.d.ts +25 -0
- package/dist/safe-area/SafeAreaInset.js +138 -0
- package/dist/safe-area/bottomInsetGeometry.d.ts +12 -0
- package/dist/safe-area/bottomInsetGeometry.js +73 -0
- package/dist/safe-area/context.d.ts +15 -0
- package/dist/safe-area/context.js +8 -0
- package/dist/safe-area/displayCorners.d.ts +21 -0
- package/dist/safe-area/displayCorners.js +70 -0
- package/dist/safe-area/keyboardCarrier.d.ts +26 -0
- package/dist/safe-area/keyboardCarrier.js +394 -0
- package/dist/safe-area/keyboardCarrierGeometry.d.ts +37 -0
- package/dist/safe-area/keyboardCarrierGeometry.js +49 -0
- package/dist/safe-area/modifiers.d.ts +52 -0
- package/dist/safe-area/modifiers.js +86 -0
- package/dist/safe-area/useSafeAreaMetrics.d.ts +83 -0
- package/dist/safe-area/useSafeAreaMetrics.js +367 -0
- package/dist/safe-area/windowChrome.d.ts +7 -0
- package/dist/safe-area/windowChrome.js +14 -0
- package/dist/scroll/RefreshControl.d.ts +8 -0
- package/dist/scroll/RefreshControl.js +135 -0
- package/dist/scroll/ScrollSurface.d.ts +62 -0
- package/dist/scroll/ScrollSurface.js +278 -0
- package/dist/scroll/ScrollTarget.d.ts +6 -0
- package/dist/scroll/ScrollTarget.js +11 -0
- package/dist/scroll/edgePolicy.d.ts +21 -0
- package/dist/scroll/edgePolicy.js +17 -0
- package/dist/scroll/insertionMotion.d.ts +15 -0
- package/dist/scroll/insertionMotion.js +128 -0
- package/dist/scroll/nativeScroll.d.ts +14 -0
- package/dist/scroll/nativeScroll.js +71 -0
- package/dist/scroll/position.d.ts +31 -0
- package/dist/scroll/position.js +273 -0
- package/dist/scroll/pressOwnership.d.ts +4 -0
- package/dist/scroll/pressOwnership.js +65 -0
- package/dist/scroll/refreshMotion.d.ts +9 -0
- package/dist/scroll/refreshMotion.js +15 -0
- package/dist/scroll/refreshable.d.ts +6 -0
- package/dist/scroll/refreshable.js +50 -0
- package/dist/scroll/registry.d.ts +38 -0
- package/dist/scroll/registry.js +261 -0
- package/dist/scroll/screenGeometry.d.ts +8 -0
- package/dist/scroll/screenGeometry.js +50 -0
- package/dist/scroll/scrollIndicator.d.ts +7 -0
- package/dist/scroll/scrollIndicator.js +114 -0
- package/dist/scroll/scrollJump.d.ts +7 -0
- package/dist/scroll/scrollJump.js +16 -0
- package/dist/scroll/types.d.ts +12 -0
- package/dist/scroll/types.js +1 -0
- package/dist/search/SearchDrawer.d.ts +16 -0
- package/dist/search/SearchDrawer.js +421 -0
- package/dist/search/SearchScopesBar.d.ts +6 -0
- package/dist/search/SearchScopesBar.js +12 -0
- package/dist/search/SearchToolbarField.d.ts +8 -0
- package/dist/search/SearchToolbarField.js +115 -0
- package/dist/search/searchBackdrop.d.ts +12 -0
- package/dist/search/searchBackdrop.js +45 -0
- package/dist/search/searchChrome.d.ts +13 -0
- package/dist/search/searchChrome.js +31 -0
- package/dist/search/searchMotion.d.ts +30 -0
- package/dist/search/searchMotion.js +46 -0
- package/dist/search/searchPlacement.d.ts +11 -0
- package/dist/search/searchPlacement.js +15 -0
- package/dist/search/searchable.d.ts +46 -0
- package/dist/search/searchable.js +5 -0
- package/dist/search/useSearchPresentation.d.ts +15 -0
- package/dist/search/useSearchPresentation.js +61 -0
- package/dist/server.d.ts +7 -0
- package/dist/server.js +144 -0
- package/dist/settings/DisclosureIndicator.d.ts +4 -0
- package/dist/settings/DisclosureIndicator.js +6 -0
- package/dist/settings/tokens.d.ts +129 -0
- package/dist/settings/tokens.js +143 -0
- package/dist/shapes/corners.d.ts +14 -0
- package/dist/shapes/corners.js +80 -0
- package/dist/styles.css +9078 -0
- package/dist/styles.css.d.ts +3 -0
- package/dist/sw/activationState.d.ts +20 -0
- package/dist/sw/activationState.js +39 -0
- package/dist/sw/generator.d.ts +14 -0
- package/dist/sw/generator.js +26 -0
- package/dist/sw/manifest.d.ts +32 -0
- package/dist/sw/manifest.js +137 -0
- package/dist/sw/protocol.d.ts +7 -0
- package/dist/sw/protocol.js +7 -0
- package/dist/sw/pushRuntime.d.ts +2 -0
- package/dist/sw/pushRuntime.js +161 -0
- package/dist/sw/registerAppShell.d.ts +25 -0
- package/dist/sw/registerAppShell.js +259 -0
- package/dist/sw/renderServiceWorker.d.ts +10 -0
- package/dist/sw/renderServiceWorker.js +370 -0
- package/dist/sw/requestRouting.d.ts +13 -0
- package/dist/sw/requestRouting.js +26 -0
- package/dist/sw/updateCheck.d.ts +2 -0
- package/dist/sw/updateCheck.js +25 -0
- package/dist/sw/vite.d.ts +20 -0
- package/dist/sw/vite.js +71 -0
- package/dist/symbols/Symbol.d.ts +33 -0
- package/dist/symbols/Symbol.js +59 -0
- package/dist/symbols/catalogue.d.ts +4 -0
- package/dist/symbols/catalogue.js +4139 -0
- package/dist/symbols/exclusions.d.ts +2 -0
- package/dist/symbols/exclusions.js +4 -0
- package/dist/symbols/inheritedWeight.d.ts +3 -0
- package/dist/symbols/inheritedWeight.js +104 -0
- package/dist/symbols/metrics.d.ts +38 -0
- package/dist/symbols/metrics.js +53 -0
- package/dist/symbols/svg.d.ts +3 -0
- package/dist/symbols/svg.js +16 -0
- package/dist/symbols/types.d.ts +30 -0
- package/dist/symbols/types.js +1 -0
- package/dist/tabs/TabSection.d.ts +12 -0
- package/dist/tabs/TabSection.js +4 -0
- package/dist/tabs/TabSidebarSurface.d.ts +7 -0
- package/dist/tabs/TabSidebarSurface.js +29 -0
- package/dist/tabs/TabView.d.ts +28 -0
- package/dist/tabs/TabView.js +258 -0
- package/dist/tabs/accessoryContact.d.ts +2 -0
- package/dist/tabs/accessoryContact.js +42 -0
- package/dist/tabs/compactBar.d.ts +4 -0
- package/dist/tabs/compactBar.js +28 -0
- package/dist/tabs/context.d.ts +8 -0
- package/dist/tabs/context.js +6 -0
- package/dist/tabs/keyboard.d.ts +3 -0
- package/dist/tabs/keyboard.js +23 -0
- package/dist/tabs/model.d.ts +6 -0
- package/dist/tabs/model.js +16 -0
- package/dist/tabs/presentation.d.ts +7 -0
- package/dist/tabs/presentation.js +14 -0
- package/dist/tabs/sourceRevision.d.ts +3 -0
- package/dist/tabs/sourceRevision.js +36 -0
- package/dist/tabs/tabSidebarGlyph.d.ts +2 -0
- package/dist/tabs/tabSidebarGlyph.js +11 -0
- package/dist/tasks/useTask.d.ts +16 -0
- package/dist/tasks/useTask.js +67 -0
- package/dist/testing.d.ts +9 -0
- package/dist/testing.js +11 -0
- package/dist/text-input/TextEditor.d.ts +25 -0
- package/dist/text-input/TextEditor.js +74 -0
- package/dist/text-input/TextField.d.ts +32 -0
- package/dist/text-input/TextField.js +29 -0
- package/dist/text-input/editorGeometry.d.ts +2 -0
- package/dist/text-input/editorGeometry.js +6 -0
- package/dist/text-input/editorTextLayout.d.ts +2 -0
- package/dist/text-input/editorTextLayout.js +31 -0
- package/dist/text-input/focusChain.d.ts +27 -0
- package/dist/text-input/focusChain.js +62 -0
- package/dist/text-input/kinds.d.ts +8 -0
- package/dist/text-input/kinds.js +34 -0
- package/dist/text-input/measureEditor.d.ts +2 -0
- package/dist/text-input/measureEditor.js +50 -0
- package/dist/text-input/submit.d.ts +9 -0
- package/dist/text-input/submit.js +7 -0
- package/dist/unstable.d.ts +16 -0
- package/dist/unstable.js +16 -0
- package/dist/vite.d.ts +3 -0
- package/dist/vite.js +3 -0
- package/dist/web/WebView.d.ts +42 -0
- package/dist/web/WebView.js +115 -0
- package/dist/web/authentication.d.ts +75 -0
- package/dist/web/authentication.js +488 -0
- package/dist/web/openURL.d.ts +37 -0
- package/dist/web/openURL.js +89 -0
- package/dist/web/urlPolicy.d.ts +3 -0
- package/dist/web/urlPolicy.js +19 -0
- package/dist/web/useWebAuthentication.d.ts +3 -0
- package/dist/web/useWebAuthentication.js +6 -0
- package/dist/zoom/Zoomable.d.ts +10 -0
- package/dist/zoom/Zoomable.js +116 -0
- package/dist/zoom/geometry.d.ts +11 -0
- package/dist/zoom/geometry.js +16 -0
- package/package.json +116 -3
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* The geometry of SwiftUI's zoom navigation transition, as pure functions of a rectangle.
|
|
3
|
+
*
|
|
4
|
+
* At every moment the pushed screen is shown inside a rounded "window" rectangle that moves between
|
|
5
|
+
* the source view's frame and the full screen. As natively, the screen's content is scaled so its
|
|
6
|
+
* width fills the window and is pinned to the window's top; whatever falls below the window's
|
|
7
|
+
* bottom edge is cut off.
|
|
8
|
+
*
|
|
9
|
+
* The cut is made by two nested boxes that only move, so the compositor draws it with the content:
|
|
10
|
+
* the screen container is scaled into place and shifted up until its bottom edge is the window's
|
|
11
|
+
* bottom; the motion layer inside it is shifted back down by the same amount, so the content's top
|
|
12
|
+
* stays at the window's top. Each box clips its overflow with the window's corner radius: the outer
|
|
13
|
+
* one makes the bottom corners, the inner one the top corners.
|
|
14
|
+
*/
|
|
15
|
+
import { ZOOM_EDGE_SCALE_LOSS, ZOOM_EDGE_SLOP, ZOOM_DRAG_BOTTOM_RISE, ZOOM_DRAG_HEIGHT_LOSS_PER_POINT, ZOOM_DRAG_SLOP, ZOOM_DRAG_WIDTH_LOSS_PER_POINT, } from './zoomMotion.js';
|
|
16
|
+
/** The scale that makes the screen's width fill the window. */
|
|
17
|
+
export function contentScale(screen, window) {
|
|
18
|
+
return window.rect.width / screen.width;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* The styles that draw a screen laid out at `screen` inside `window`. Both boxes need
|
|
22
|
+
* `transform-origin: 0 0`, `overflow: hidden` and the screen's own layout frame.
|
|
23
|
+
*/
|
|
24
|
+
export function windowStyle(screen, window) {
|
|
25
|
+
const scale = contentScale(screen, window) || 1;
|
|
26
|
+
// The window's height in the content's own points, never taller than the content itself.
|
|
27
|
+
const visibleHeight = Math.min(window.rect.height / scale, screen.height);
|
|
28
|
+
const cut = screen.height - visibleHeight;
|
|
29
|
+
const x = window.rect.x - screen.x;
|
|
30
|
+
const y = window.rect.y - screen.y - cut * scale;
|
|
31
|
+
return {
|
|
32
|
+
containerTransform: `translate(${round(x)}px, ${round(y)}px) scale(${round(scale, 5)})`,
|
|
33
|
+
motionTransform: `translateY(${round(cut)}px)`,
|
|
34
|
+
borderRadius: `${round(window.radius / scale)}px`,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
const lerp = (from, to, progress) => from + (to - from) * progress;
|
|
38
|
+
/** The window `progress` of the way from `from` to `to`. Progress may overshoot 0…1 (springs). */
|
|
39
|
+
export function interpolateWindow(from, to, progress) {
|
|
40
|
+
return {
|
|
41
|
+
rect: {
|
|
42
|
+
x: lerp(from.rect.x, to.rect.x, progress),
|
|
43
|
+
y: lerp(from.rect.y, to.rect.y, progress),
|
|
44
|
+
width: Math.max(0, lerp(from.rect.width, to.rect.width, progress)),
|
|
45
|
+
height: Math.max(0, lerp(from.rect.height, to.rect.height, progress)),
|
|
46
|
+
},
|
|
47
|
+
radius: Math.max(0, lerp(from.radius, to.radius, progress)),
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/** How open a window is: 0 at the source's width, 1 at the screen's. */
|
|
51
|
+
export function openness(screen, source, rect) {
|
|
52
|
+
const span = screen.width - source.width;
|
|
53
|
+
return span > 0 ? Math.min(1, Math.max(0, (rect.width - source.width) / span)) : 1;
|
|
54
|
+
}
|
|
55
|
+
/** The window's corner radius at an openness: from the source to the full page's clip. */
|
|
56
|
+
export function windowRadius(open, sourceRadius, restingRadius) {
|
|
57
|
+
return lerp(sourceRadius, restingRadius, open);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* The window under a dismissing finger, as natively measured: dragging down narrows it (centred on
|
|
61
|
+
* the finger's sideways travel), shortens it faster still, and lifts its bottom edge with the
|
|
62
|
+
* square of the drag. `translation` is the finger's travel since it went down.
|
|
63
|
+
*/
|
|
64
|
+
export function dragRect(screen, translation) {
|
|
65
|
+
const pulled = Math.max(0, translation.y - ZOOM_DRAG_SLOP);
|
|
66
|
+
const width = screen.width * Math.max(0.2, 1 - ZOOM_DRAG_WIDTH_LOSS_PER_POINT * pulled);
|
|
67
|
+
const height = Math.max(width, screen.height * (1 - ZOOM_DRAG_HEIGHT_LOSS_PER_POINT * pulled));
|
|
68
|
+
const bottom = screen.y + screen.height - ZOOM_DRAG_BOTTOM_RISE * pulled * pulled;
|
|
69
|
+
return {
|
|
70
|
+
x: screen.x + (screen.width - width) / 2 + translation.x,
|
|
71
|
+
y: bottom - height,
|
|
72
|
+
width,
|
|
73
|
+
height,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* The window under the edge back swipe, as natively measured: it shrinks uniformly, its left edge
|
|
78
|
+
* follows the finger (less the recognizer's 18 pt) and it shrinks toward the screen's middle
|
|
79
|
+
* height. `progress` is the finger's travel over the screen's width.
|
|
80
|
+
*/
|
|
81
|
+
export function edgeRect(screen, progress) {
|
|
82
|
+
const pulled = Math.max(0, progress * screen.width - ZOOM_EDGE_SLOP);
|
|
83
|
+
const scale = Math.max(0.2, 1 - (ZOOM_EDGE_SCALE_LOSS * pulled) / screen.width);
|
|
84
|
+
return {
|
|
85
|
+
x: screen.x + pulled,
|
|
86
|
+
y: screen.y + (screen.height / 2) * (1 - scale),
|
|
87
|
+
width: screen.width * scale,
|
|
88
|
+
height: screen.height * scale,
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
function round(value, digits = 3) {
|
|
92
|
+
const factor = 10 ** digits;
|
|
93
|
+
return Math.round(value * factor) / factor;
|
|
94
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { ZoomRect } from './zoomGeometry.js';
|
|
2
|
+
/** The same viewport-space window that the compositor draws, sampled on its animation clock. */
|
|
3
|
+
export type ZoomGlassPose = Readonly<{
|
|
4
|
+
x: number;
|
|
5
|
+
y: number;
|
|
6
|
+
scale: number;
|
|
7
|
+
origin: readonly [number, number];
|
|
8
|
+
clip: readonly [number, number, number, number];
|
|
9
|
+
radius: number;
|
|
10
|
+
}>;
|
|
11
|
+
type ZoomGlassMotion = {
|
|
12
|
+
layout: ZoomRect;
|
|
13
|
+
carriers: readonly HTMLElement[];
|
|
14
|
+
read: (at: number) => {
|
|
15
|
+
end: number;
|
|
16
|
+
sample: (time: number) => ZoomGlassPose;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
export declare function registerZoomGlass(element: HTMLElement, motion: ZoomGlassMotion): () => void;
|
|
20
|
+
export declare const zoomGlassMotion: (element: HTMLElement) => ZoomGlassMotion | undefined;
|
|
21
|
+
/** Layout capture is synchronous. Important declarations override WAAPI only for these reads,
|
|
22
|
+
* and are restored before returning to WebKit; no animation clock or painted frame changes. */
|
|
23
|
+
export declare function withZoomAtRest<T>(element: HTMLElement, read: () => T): T;
|
|
24
|
+
/** In-content presenters travel inside the CSS window. Keep their material and allocation
|
|
25
|
+
* in the route's resting coordinates, rather than capturing Home through a scaled button. */
|
|
26
|
+
export declare function zoomRestRect(element: HTMLElement): ZoomRect | undefined;
|
|
27
|
+
export {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
const motions = new WeakMap();
|
|
2
|
+
export function registerZoomGlass(element, motion) {
|
|
3
|
+
motions.set(element, motion);
|
|
4
|
+
return () => {
|
|
5
|
+
if (motions.get(element) === motion)
|
|
6
|
+
motions.delete(element);
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
export const zoomGlassMotion = (element) => motions.get(element);
|
|
10
|
+
/** Layout capture is synchronous. Important declarations override WAAPI only for these reads,
|
|
11
|
+
* and are restored before returning to WebKit; no animation clock or painted frame changes. */
|
|
12
|
+
export function withZoomAtRest(element, read) {
|
|
13
|
+
const carriers = new Set();
|
|
14
|
+
for (let ancestor = element; ancestor; ancestor = ancestor.parentElement)
|
|
15
|
+
for (const carrier of motions.get(ancestor)?.carriers ?? [])
|
|
16
|
+
carriers.add(carrier);
|
|
17
|
+
const saved = [...carriers].map(carrier => ({
|
|
18
|
+
carrier,
|
|
19
|
+
value: carrier.style.getPropertyValue('transform'),
|
|
20
|
+
priority: carrier.style.getPropertyPriority('transform'),
|
|
21
|
+
visibility: carrier.style.getPropertyValue('visibility'),
|
|
22
|
+
visibilityPriority: carrier.style.getPropertyPriority('visibility'),
|
|
23
|
+
}));
|
|
24
|
+
for (const { carrier } of saved) {
|
|
25
|
+
carrier.style.setProperty('transform', 'none', 'important');
|
|
26
|
+
// The entrance remains hidden until its first glass submission. Capture its real
|
|
27
|
+
// content synchronously while that presentation barrier is still closed.
|
|
28
|
+
carrier.style.setProperty('visibility', 'visible', 'important');
|
|
29
|
+
}
|
|
30
|
+
try {
|
|
31
|
+
return read();
|
|
32
|
+
}
|
|
33
|
+
finally {
|
|
34
|
+
for (const { carrier, value, priority, visibility, visibilityPriority } of saved) {
|
|
35
|
+
if (value)
|
|
36
|
+
carrier.style.setProperty('transform', value, priority);
|
|
37
|
+
else
|
|
38
|
+
carrier.style.removeProperty('transform');
|
|
39
|
+
if (visibility)
|
|
40
|
+
carrier.style.setProperty('visibility', visibility, visibilityPriority);
|
|
41
|
+
else
|
|
42
|
+
carrier.style.removeProperty('visibility');
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
/** In-content presenters travel inside the CSS window. Keep their material and allocation
|
|
47
|
+
* in the route's resting coordinates, rather than capturing Home through a scaled button. */
|
|
48
|
+
export function zoomRestRect(element) {
|
|
49
|
+
let ancestor = element;
|
|
50
|
+
while (ancestor && !motions.has(ancestor))
|
|
51
|
+
ancestor = ancestor.parentElement;
|
|
52
|
+
if (!ancestor)
|
|
53
|
+
return undefined;
|
|
54
|
+
const motion = motions.get(ancestor);
|
|
55
|
+
const at = performance.now();
|
|
56
|
+
const pose = motion.read(at).sample(at);
|
|
57
|
+
const rect = element.getBoundingClientRect();
|
|
58
|
+
return {
|
|
59
|
+
x: motion.layout.x + (rect.x - pose.x) / pose.scale,
|
|
60
|
+
y: motion.layout.y + (rect.y - pose.y) / pose.scale,
|
|
61
|
+
width: rect.width / pose.scale,
|
|
62
|
+
height: rect.height / pose.scale,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/** A spring as Core Animation runs it: natural frequency (rad/s) and damping ratio. */
|
|
2
|
+
export type ZoomSpring = Readonly<{
|
|
3
|
+
omega: number;
|
|
4
|
+
zeta: number;
|
|
5
|
+
}>;
|
|
6
|
+
/** The window's centre and its size each follow their own spring. */
|
|
7
|
+
export type ZoomSprings = Readonly<{
|
|
8
|
+
center: ZoomSpring;
|
|
9
|
+
size: ZoomSpring;
|
|
10
|
+
}>;
|
|
11
|
+
/**
|
|
12
|
+
* Push: the centre and the width move together, critically damped (half way at 88 ms; SwiftUI's
|
|
13
|
+
* duration 0.33 s); the height lags slightly. Native moves the width with the centre, so the
|
|
14
|
+
* width shares the centre's spring here and the height takes the size spring (rms 0.002, 51 ticks).
|
|
15
|
+
*/
|
|
16
|
+
export declare const ZOOM_PUSH: ZoomSprings & {
|
|
17
|
+
height: ZoomSpring;
|
|
18
|
+
};
|
|
19
|
+
/** Pop (the back button): centre and size, slightly underdamped (rms 0.005, 49 ticks). */
|
|
20
|
+
export declare const ZOOM_POP: ZoomSprings;
|
|
21
|
+
/** A released drag that dismisses: it bounces about 4% into the source (two drags, rms ≤ 0.01). */
|
|
22
|
+
export declare const ZOOM_DISMISS: ZoomSprings;
|
|
23
|
+
/** A released drag that returns to full screen (rms 0.005). */
|
|
24
|
+
export declare const ZOOM_RETURN: ZoomSprings;
|
|
25
|
+
/** The screen behind darkens to 15% black at full openness, in proportion to the openness
|
|
26
|
+
* (0.028 / 0.043 / 0.063 / 0.079 / 0.099 measured at openness 0.18 / 0.30 / 0.42 / 0.52 / 0.69). */
|
|
27
|
+
export declare const ZOOM_DIM_OPACITY = 0.15;
|
|
28
|
+
/** The screen behind shrinks about its centre to this scale at full openness (1 − 0.0788 × openness,
|
|
29
|
+
* exact over 17 ticks). It holds there while a finger drags the zoomed screen. */
|
|
30
|
+
export declare const ZOOM_REAR_SCALE = 0.9212;
|
|
31
|
+
/** The window's corner radius goes from the source's to the display's, in proportion to the
|
|
32
|
+
* openness (residual ≤ 3 pt over 9 frames). 58 pt is the iPhone 17 Pro Max display's; iPad
|
|
33
|
+
* displays are far squarer. */
|
|
34
|
+
export declare const ZOOM_PHONE_DISPLAY_RADIUS = 58;
|
|
35
|
+
export declare const ZOOM_PAD_DISPLAY_RADIUS = 18;
|
|
36
|
+
/** The source tile is drawn over the window's top square and cross-fades with the page: on push it
|
|
37
|
+
* fades out linearly between these times (0.81 / 0.60 / 0.40 / 0.21 at 33 / 50 / 67 / 83 ms)… */
|
|
38
|
+
export declare const ZOOM_PUSH_SOURCE_FADE_MS: {
|
|
39
|
+
readonly start: 17;
|
|
40
|
+
readonly end: 100;
|
|
41
|
+
};
|
|
42
|
+
/** …and on pop it fades in (0.49 / 0.70 / 0.87 / 0.98 at 67 / 84 / 100 / 117 ms). */
|
|
43
|
+
export declare const ZOOM_POP_SOURCE_FADE_MS: {
|
|
44
|
+
readonly start: 25;
|
|
45
|
+
readonly end: 111;
|
|
46
|
+
};
|
|
47
|
+
/** Destination portal opacity during a native pop, independent of the source portal.
|
|
48
|
+
* Measured CADisplayLink presentation alpha, iOS 27 stock zoom fixture, October 13:
|
|
49
|
+
* zoom-return-zorder/native/{alpha.mp4,layers-alpha.log,alpha.json}. The page stays
|
|
50
|
+
* opaque through 67 ms, then fades while the already opaque tile continues its flight.
|
|
51
|
+
* These are rounded 60 Hz samples of that channel, not a newly chosen spring. */
|
|
52
|
+
export declare const ZOOM_POP_PAGE_ALPHA: readonly (readonly [number, number])[];
|
|
53
|
+
/** The bar's items (the back button's glass, the title) fade in over the push on a smoothstep… */
|
|
54
|
+
export declare const ZOOM_PUSH_CHROME_FADE_MS = 250;
|
|
55
|
+
/** …and out over the pop, linearly from this window (1 → 0, measured 0.91 at 50 ms, 0.07 at 217 ms). */
|
|
56
|
+
export declare const ZOOM_POP_CHROME_FADE_MS: {
|
|
57
|
+
readonly start: 33;
|
|
58
|
+
readonly end: 240;
|
|
59
|
+
};
|
|
60
|
+
export declare const ZOOM_DRAG_SLOP = 12;
|
|
61
|
+
export declare const ZOOM_DRAG_WIDTH_LOSS_PER_POINT = 0.000698;
|
|
62
|
+
export declare const ZOOM_DRAG_HEIGHT_LOSS_PER_POINT: number;
|
|
63
|
+
export declare const ZOOM_DRAG_BOTTOM_RISE = 0.000294;
|
|
64
|
+
/** The edge back swipe zooms too (dark run, 3 swipes): the window shrinks uniformly by 0.66 of the
|
|
65
|
+
* finger's travel over the screen's width (0.0015 per point on a 440 pt screen), counted from the
|
|
66
|
+
* recognizer's 18 pt; its left edge follows the finger. 88 pt returned; 298 and 398 pt dismissed. */
|
|
67
|
+
export declare const ZOOM_EDGE_SLOP = 18;
|
|
68
|
+
export declare const ZOOM_EDGE_SCALE_LOSS = 0.66;
|
|
69
|
+
/** A released drag dismisses past this distance down (native: 50 and 80 pt returned, 140 pt
|
|
70
|
+
* dismissed; an 80 pt flick at 849 pt/s still returned, so speed alone does not dismiss). */
|
|
71
|
+
export declare const ZOOM_DISMISS_DISTANCE = 110;
|
|
72
|
+
/** A drag starts once the finger has moved this far, mostly downward, from where it went down. */
|
|
73
|
+
export declare const ZOOM_DRAG_START_DISTANCE = 10;
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Measured values of SwiftUI's `.navigationTransition(.zoom(sourceID:in:))` on iOS 27.
|
|
3
|
+
*
|
|
4
|
+
* native reference: a stock native fixture (a 180 pt tile with a 10 pt corner in a
|
|
5
|
+
* NavigationStack grid, pushed to a full-screen page), iPhone 17 Pro Max Simulator, iOS 27.0.
|
|
6
|
+
* Core Animation presentation layers were logged on every display tick (the zoom draws through an
|
|
7
|
+
* SDF "window" layer and two portals: the source tile and the page), and idb drove real Simulator
|
|
8
|
+
* touches. Appearance (cross-fade, dim, corner) comes from frames of the same runs, matched to the
|
|
9
|
+
* logged ticks by the window's rectangle. Fits and plots: native measurements
|
|
10
|
+
* (the measured reference, October 11).
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Push: the centre and the width move together, critically damped (half way at 88 ms; SwiftUI's
|
|
14
|
+
* duration 0.33 s); the height lags slightly. Native moves the width with the centre, so the
|
|
15
|
+
* width shares the centre's spring here and the height takes the size spring (rms 0.002, 51 ticks).
|
|
16
|
+
*/
|
|
17
|
+
export const ZOOM_PUSH = {
|
|
18
|
+
center: { omega: 19.1, zeta: 1 },
|
|
19
|
+
size: { omega: 19.1, zeta: 1 },
|
|
20
|
+
height: { omega: 16.3, zeta: 0.95 },
|
|
21
|
+
};
|
|
22
|
+
/** Pop (the back button): centre and size, slightly underdamped (rms 0.005, 49 ticks). */
|
|
23
|
+
export const ZOOM_POP = {
|
|
24
|
+
center: { omega: 18.9, zeta: 0.93 },
|
|
25
|
+
size: { omega: 16.4, zeta: 0.9 },
|
|
26
|
+
};
|
|
27
|
+
/** A released drag that dismisses: it bounces about 4% into the source (two drags, rms ≤ 0.01). */
|
|
28
|
+
export const ZOOM_DISMISS = {
|
|
29
|
+
center: { omega: 13.75, zeta: 0.82 },
|
|
30
|
+
size: { omega: 13.75, zeta: 0.7 },
|
|
31
|
+
};
|
|
32
|
+
/** A released drag that returns to full screen (rms 0.005). */
|
|
33
|
+
export const ZOOM_RETURN = {
|
|
34
|
+
center: { omega: 22.6, zeta: 0.94 },
|
|
35
|
+
size: { omega: 22.6, zeta: 0.94 },
|
|
36
|
+
};
|
|
37
|
+
/** The screen behind darkens to 15% black at full openness, in proportion to the openness
|
|
38
|
+
* (0.028 / 0.043 / 0.063 / 0.079 / 0.099 measured at openness 0.18 / 0.30 / 0.42 / 0.52 / 0.69). */
|
|
39
|
+
export const ZOOM_DIM_OPACITY = 0.15;
|
|
40
|
+
/** The screen behind shrinks about its centre to this scale at full openness (1 − 0.0788 × openness,
|
|
41
|
+
* exact over 17 ticks). It holds there while a finger drags the zoomed screen. */
|
|
42
|
+
export const ZOOM_REAR_SCALE = 0.9212;
|
|
43
|
+
/** The window's corner radius goes from the source's to the display's, in proportion to the
|
|
44
|
+
* openness (residual ≤ 3 pt over 9 frames). 58 pt is the iPhone 17 Pro Max display's; iPad
|
|
45
|
+
* displays are far squarer. */
|
|
46
|
+
export const ZOOM_PHONE_DISPLAY_RADIUS = 58;
|
|
47
|
+
export const ZOOM_PAD_DISPLAY_RADIUS = 18;
|
|
48
|
+
/** The source tile is drawn over the window's top square and cross-fades with the page: on push it
|
|
49
|
+
* fades out linearly between these times (0.81 / 0.60 / 0.40 / 0.21 at 33 / 50 / 67 / 83 ms)… */
|
|
50
|
+
export const ZOOM_PUSH_SOURCE_FADE_MS = { start: 17, end: 100 };
|
|
51
|
+
/** …and on pop it fades in (0.49 / 0.70 / 0.87 / 0.98 at 67 / 84 / 100 / 117 ms). */
|
|
52
|
+
export const ZOOM_POP_SOURCE_FADE_MS = { start: 25, end: 111 };
|
|
53
|
+
/** Destination portal opacity during a native pop, independent of the source portal.
|
|
54
|
+
* Measured CADisplayLink presentation alpha, iOS 27 stock zoom fixture, October 13:
|
|
55
|
+
* zoom-return-zorder/native/{alpha.mp4,layers-alpha.log,alpha.json}. The page stays
|
|
56
|
+
* opaque through 67 ms, then fades while the already opaque tile continues its flight.
|
|
57
|
+
* These are rounded 60 Hz samples of that channel, not a newly chosen spring. */
|
|
58
|
+
export const ZOOM_POP_PAGE_ALPHA = [
|
|
59
|
+
[0, 1],
|
|
60
|
+
[67, 1],
|
|
61
|
+
[83, 0.86253],
|
|
62
|
+
[100, 0.6992],
|
|
63
|
+
[117, 0.55629],
|
|
64
|
+
[133, 0.43524],
|
|
65
|
+
[150, 0.33528],
|
|
66
|
+
[167, 0.25448],
|
|
67
|
+
[183, 0.19035],
|
|
68
|
+
[200, 0.14029],
|
|
69
|
+
[217, 0.10181],
|
|
70
|
+
[233, 0.07266],
|
|
71
|
+
[250, 0.0509],
|
|
72
|
+
[267, 0.03489],
|
|
73
|
+
[283, 0.02331],
|
|
74
|
+
[300, 0.01506],
|
|
75
|
+
[317, 0.0093],
|
|
76
|
+
[333, 0.00536],
|
|
77
|
+
[350, 0.00274],
|
|
78
|
+
[367, 0.00106],
|
|
79
|
+
[383, 0.00003],
|
|
80
|
+
[400, 0],
|
|
81
|
+
];
|
|
82
|
+
/** The bar's items (the back button's glass, the title) fade in over the push on a smoothstep… */
|
|
83
|
+
export const ZOOM_PUSH_CHROME_FADE_MS = 250;
|
|
84
|
+
/** …and out over the pop, linearly from this window (1 → 0, measured 0.91 at 50 ms, 0.07 at 217 ms). */
|
|
85
|
+
export const ZOOM_POP_CHROME_FADE_MS = { start: 33, end: 240 };
|
|
86
|
+
/*
|
|
87
|
+
* The interactive dismissal (a slow 540 pt drag, 70 ticks, linear throughout): the window's width
|
|
88
|
+
* shrinks 0.000698 of the screen per point dragged and its height 1.223 points per point, both
|
|
89
|
+
* counted from the 12 pt the recognizer needs. Its bottom edge rises with the square of the drag.
|
|
90
|
+
*/
|
|
91
|
+
export const ZOOM_DRAG_SLOP = 12;
|
|
92
|
+
export const ZOOM_DRAG_WIDTH_LOSS_PER_POINT = 0.000698;
|
|
93
|
+
export const ZOOM_DRAG_HEIGHT_LOSS_PER_POINT = 1.223 / 956;
|
|
94
|
+
export const ZOOM_DRAG_BOTTOM_RISE = 2.94e-4;
|
|
95
|
+
/** The edge back swipe zooms too (dark run, 3 swipes): the window shrinks uniformly by 0.66 of the
|
|
96
|
+
* finger's travel over the screen's width (0.0015 per point on a 440 pt screen), counted from the
|
|
97
|
+
* recognizer's 18 pt; its left edge follows the finger. 88 pt returned; 298 and 398 pt dismissed. */
|
|
98
|
+
export const ZOOM_EDGE_SLOP = 18;
|
|
99
|
+
export const ZOOM_EDGE_SCALE_LOSS = 0.66;
|
|
100
|
+
/** A released drag dismisses past this distance down (native: 50 and 80 pt returned, 140 pt
|
|
101
|
+
* dismissed; an 80 pt flick at 849 pt/s still returned, so speed alone does not dismiss). */
|
|
102
|
+
export const ZOOM_DISMISS_DISTANCE = 110;
|
|
103
|
+
/** A drag starts once the finger has moved this far, mostly downward, from where it went down. */
|
|
104
|
+
export const ZOOM_DRAG_START_DISTANCE = 10;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { NamespaceID } from '../motion/matchedGeometry.js';
|
|
2
|
+
import type { TransitionBinding, TransitionController, TransitionControllerFactory } from './types.js';
|
|
3
|
+
import { type ZoomRect } from './zoomGeometry.js';
|
|
4
|
+
import { type ZoomSpring, type ZoomSprings } from './zoomMotion.js';
|
|
5
|
+
type TransitionSource = Readonly<{
|
|
6
|
+
namespace: NamespaceID;
|
|
7
|
+
id: string;
|
|
8
|
+
wrapper: HTMLElement;
|
|
9
|
+
}>;
|
|
10
|
+
type ZoomRequest = Readonly<{
|
|
11
|
+
namespace: NamespaceID;
|
|
12
|
+
sourceID: string;
|
|
13
|
+
}>;
|
|
14
|
+
/** Registers a `MatchedTransitionSource`; returns its removal. */
|
|
15
|
+
export declare function registerTransitionSource(source: TransitionSource): () => void;
|
|
16
|
+
/** Registers a screen's `.navigationTransition(.zoom)`; returns its removal. */
|
|
17
|
+
export declare function registerZoomRequest(entryKey: string, request: ZoomRequest): () => void;
|
|
18
|
+
/**
|
|
19
|
+
* The source view a zoom of `entryKey` starts from or returns to, if it is on screen inside `rear`
|
|
20
|
+
* (and not inside `excluded`, the zoomed screen itself).
|
|
21
|
+
*/
|
|
22
|
+
export declare function visibleZoomSource(entryKey: string, rear: HTMLElement, excluded?: HTMLElement): HTMLElement | undefined;
|
|
23
|
+
/** What a zoom-dismissing drag needs from its transition. */
|
|
24
|
+
export type ZoomDragHandle = Readonly<{
|
|
25
|
+
/** Moves the screen with the finger: translation in points since the finger went down. */
|
|
26
|
+
track(translation: Readonly<{
|
|
27
|
+
x: number;
|
|
28
|
+
y: number;
|
|
29
|
+
}>): void;
|
|
30
|
+
/** Lets go: dismisses into the source or returns to full screen. Velocity in points/second. */
|
|
31
|
+
release(velocity: Readonly<{
|
|
32
|
+
x: number;
|
|
33
|
+
y: number;
|
|
34
|
+
}>): void;
|
|
35
|
+
}>;
|
|
36
|
+
/**
|
|
37
|
+
* Whether `controller` runs as a zoom once bound to `binding`. Deciding is idempotent and can
|
|
38
|
+
* happen before the binding is handed over (the navigator prepares glass first).
|
|
39
|
+
*/
|
|
40
|
+
export declare function decideZoomTransition(controller: TransitionController, binding: TransitionBinding): boolean;
|
|
41
|
+
/** The drag handle of an interactive pop that a zoom drag started, once the pop is a zoom. */
|
|
42
|
+
export declare function zoomDragHandleOf(controller: TransitionController | undefined): Readonly<{
|
|
43
|
+
/** Moves the screen with the finger: translation in points since the finger went down. */
|
|
44
|
+
track(translation: Readonly<{
|
|
45
|
+
x: number;
|
|
46
|
+
y: number;
|
|
47
|
+
}>): void;
|
|
48
|
+
/** Lets go: dismisses into the source or returns to full screen. Velocity in points/second. */
|
|
49
|
+
release(velocity: Readonly<{
|
|
50
|
+
x: number;
|
|
51
|
+
y: number;
|
|
52
|
+
}>): void;
|
|
53
|
+
}> | undefined;
|
|
54
|
+
/**
|
|
55
|
+
* Marks the next interactive pop of `entryKey` as a zoom drag (not the edge back swipe). The touch
|
|
56
|
+
* position is where the finger went down, which stays under the finger as the screen shrinks.
|
|
57
|
+
*/
|
|
58
|
+
export declare function beginZoomDrag(entryKey: string, touchDown: Readonly<{
|
|
59
|
+
x: number;
|
|
60
|
+
y: number;
|
|
61
|
+
}>): void;
|
|
62
|
+
/**
|
|
63
|
+
* Wraps the slide controller factory: each transition binds first, then runs as a zoom when its
|
|
64
|
+
* screens asked for one, and as the unchanged slide otherwise.
|
|
65
|
+
*/
|
|
66
|
+
export declare function withZoomTransitions(createSlide: TransitionControllerFactory): TransitionControllerFactory;
|
|
67
|
+
type WindowFrame = Readonly<{
|
|
68
|
+
ms: number;
|
|
69
|
+
rect: ZoomRect;
|
|
70
|
+
}>;
|
|
71
|
+
/**
|
|
72
|
+
* The 60 Hz frames of one window run, as native moves it: the window's centre follows one spring
|
|
73
|
+
* and its size another (a push moves the width with the centre and the height on its own spring).
|
|
74
|
+
* The finger's velocity starts the centre moving.
|
|
75
|
+
*/
|
|
76
|
+
export declare function windowKeyframes(from: ZoomRect, to: ZoomRect, springs: ZoomSprings & {
|
|
77
|
+
height?: ZoomSpring;
|
|
78
|
+
}, velocity: Readonly<{
|
|
79
|
+
x: number;
|
|
80
|
+
y: number;
|
|
81
|
+
}>): WindowFrame[];
|
|
82
|
+
export {};
|