@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,63 @@
|
|
|
1
|
+
export function resolveGlassCapability({ forcedBaseline, reducedTransparency, renderTest, }) {
|
|
2
|
+
if (forcedBaseline)
|
|
3
|
+
return { reason: 'forced-baseline', state: 'baseline' };
|
|
4
|
+
if (reducedTransparency) {
|
|
5
|
+
return { reason: 'reduced-transparency', state: 'baseline' };
|
|
6
|
+
}
|
|
7
|
+
if (renderTest === 'pending') {
|
|
8
|
+
return { reason: 'render-test-pending', state: 'baseline' };
|
|
9
|
+
}
|
|
10
|
+
if (renderTest === 'failed') {
|
|
11
|
+
return { reason: 'render-test-failed', state: 'baseline' };
|
|
12
|
+
}
|
|
13
|
+
return { reason: 'raster-probe-passed', state: 'displacement' };
|
|
14
|
+
}
|
|
15
|
+
function loadImage(source) {
|
|
16
|
+
return new Promise((resolve, reject) => {
|
|
17
|
+
const image = new Image();
|
|
18
|
+
image.onload = () => resolve(image);
|
|
19
|
+
image.onerror = () => reject(new Error('The foreground SVG render probe did not load.'));
|
|
20
|
+
image.src = source;
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Paints a deliberately displaced standalone SVG image into a readable canvas
|
|
25
|
+
* and verifies the resulting pixels. This is a raster-path prerequisite, not a
|
|
26
|
+
* live-compositor proof: WebKit can pass this Image -> canvas path while an SVG
|
|
27
|
+
* filter referenced by a live HTML element paints no displacement. JavaScript
|
|
28
|
+
* has no pixel-read API for the latter; installed-PWA capture and the lens-boost
|
|
29
|
+
* diagnostic remain the acceptance boundary.
|
|
30
|
+
*/
|
|
31
|
+
export async function runForegroundSvgRenderTest() {
|
|
32
|
+
if (typeof document === 'undefined' || typeof Image === 'undefined')
|
|
33
|
+
return false;
|
|
34
|
+
const svg = [
|
|
35
|
+
'<svg xmlns="http://www.w3.org/2000/svg" width="18" height="2" viewBox="0 0 18 2">',
|
|
36
|
+
'<defs><filter id="d" x="0" y="0" width="18" height="2" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">',
|
|
37
|
+
'<feFlood flood-color="rgb(255 128 128)" result="map"/>',
|
|
38
|
+
'<feDisplacementMap in="SourceGraphic" in2="map" scale="6" xChannelSelector="R" yChannelSelector="G"/>',
|
|
39
|
+
'</filter></defs>',
|
|
40
|
+
'<g id="source"><rect width="9" height="2" fill="black"/><rect x="9" width="9" height="2" fill="white"/></g>',
|
|
41
|
+
'<use href="#source" filter="url(#d)"/>',
|
|
42
|
+
'</svg>',
|
|
43
|
+
].join('');
|
|
44
|
+
const source = `data:image/svg+xml;charset=utf-8,${encodeURIComponent(svg)}`;
|
|
45
|
+
try {
|
|
46
|
+
const image = await loadImage(source);
|
|
47
|
+
const canvas = document.createElement('canvas');
|
|
48
|
+
canvas.width = 18;
|
|
49
|
+
canvas.height = 2;
|
|
50
|
+
const context = canvas.getContext('2d', { willReadFrequently: true });
|
|
51
|
+
if (!context)
|
|
52
|
+
return false;
|
|
53
|
+
context.drawImage(image, 0, 0);
|
|
54
|
+
// Without displacement x=7 is black. A +3 px foreground sample makes it
|
|
55
|
+
// white. Keep a wide threshold so color-management rounding cannot decide
|
|
56
|
+
// the gate.
|
|
57
|
+
const pixel = context.getImageData(7, 1, 1, 1).data;
|
|
58
|
+
return pixel[0] > 220 && pixel[1] > 220 && pixel[2] > 220 && pixel[3] > 220;
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/** Renderer-independent content-space interval for a backdrop capture. */
|
|
2
|
+
export type CaptureWindow = {
|
|
3
|
+
top: number;
|
|
4
|
+
bottom: number;
|
|
5
|
+
viewport: number;
|
|
6
|
+
};
|
|
7
|
+
export declare function filterCaptureNodes<Node extends {
|
|
8
|
+
y: number;
|
|
9
|
+
height: number;
|
|
10
|
+
}>(nodes: readonly Node[], window: CaptureWindow, paintOverflow?: number): Node[];
|
|
11
|
+
/** How far beyond the scrollport a glass surface samples its backdrop: the sample overscan of a
|
|
12
|
+
* surface (GLASS_OVERSCAN_Y_PX in lens/Scene.tsx, renderSpecs.ts `sampleInsetY`). A window covers
|
|
13
|
+
* the scrollport only when it holds this much content either side of it (or reaches the content's
|
|
14
|
+
* end): a lens at the scrollport's edge must never sample past the window. */
|
|
15
|
+
export declare const LENS_REACH_POINTS = 128;
|
|
16
|
+
/** Content either side of the scrollport in an entry window, beyond the lens reach, in
|
|
17
|
+
* scrollports: room to scroll before the first recentre (more than the recentre guard). */
|
|
18
|
+
export declare const ENTRY_MARGIN_VIEWPORTS = 0.15;
|
|
19
|
+
/** A Canvas2D taller than this is rasterized on the CPU in WebKit (device pixels). */
|
|
20
|
+
export declare const ACCELERATED_CANVAS_PIXELS = 8192;
|
|
21
|
+
/** Share of a recentred window's spare extent that lies ahead in the direction of travel. */
|
|
22
|
+
export declare const RECENTRE_AHEAD_SHARE = 0.75;
|
|
23
|
+
/** A recentre starts while the scrollport is still this far from the window's edge (scrollports)… */
|
|
24
|
+
export declare const RECENTRE_GUARD_VIEWPORTS = 0.125;
|
|
25
|
+
/** …or as far as the scroll travels in this many seconds, whichever is larger. */
|
|
26
|
+
export declare const RECENTRE_LEAD_SECONDS = 0.2;
|
|
27
|
+
export type CaptureWindowRequest = {
|
|
28
|
+
scrollTop: number;
|
|
29
|
+
viewport: number;
|
|
30
|
+
contentHeight: number;
|
|
31
|
+
resolution: number;
|
|
32
|
+
/** What the plane holds now: a window, the whole content ('full'), or nothing. */
|
|
33
|
+
current?: CaptureWindow | 'full';
|
|
34
|
+
/** The scene is idle: an entry window may grow. */
|
|
35
|
+
grow: boolean;
|
|
36
|
+
/** Signed scroll speed in points per second (positive: towards the end of the content). */
|
|
37
|
+
velocity: number;
|
|
38
|
+
};
|
|
39
|
+
/** Device pixels needed to cover `value` points. Window edges are texel multiples held in floating
|
|
40
|
+
* point, so a window of exactly 8192 px can measure 8192.000000004 px; that rounding error must not
|
|
41
|
+
* round up to another pixel (and past the accelerated-canvas limit). */
|
|
42
|
+
export declare const texelCount: (value: number, resolution: number) => number;
|
|
43
|
+
/** The largest extent a grown or recentred window takes, in points: one accelerated canvas.
|
|
44
|
+
* (A phone plane of that extent is 43 MB, more than the resident budget keeps for one plane, so
|
|
45
|
+
* a grown window is captured again, as an entry, when its tab comes back.) */
|
|
46
|
+
export declare function grownExtent(request: Pick<CaptureWindowRequest, 'viewport' | 'resolution'>): number;
|
|
47
|
+
/** How far ahead of the scrollport a window must still reach before a recentre starts. */
|
|
48
|
+
export declare function recentreGuard(viewport: number, velocity: number): number;
|
|
49
|
+
/** Whether `window` holds everything glass over a scrollport of `viewport` points at `scrollTop`
|
|
50
|
+
* can sample: the scrollport and the lens reach either side, up to the ends of the content.
|
|
51
|
+
* The scrollport is the one the host has NOW: a window captured while the keyboard was up, or in
|
|
52
|
+
* landscape, does not cover the taller scrollport that follows (`window.viewport` is only what
|
|
53
|
+
* the window was captured for). */
|
|
54
|
+
export declare function windowCoversScrollport(window: CaptureWindow, scrollTop: number, viewport: number, contentHeight: number): boolean;
|
|
55
|
+
/** Whether `window` no longer reaches far enough around the scrollport at `scrollTop`: it does
|
|
56
|
+
* not cover it (windowCoversScrollport), or its edge in a direction that has more content is
|
|
57
|
+
* inside the guard. `viewport` is the host's scrollport now. */
|
|
58
|
+
export declare function captureWindowExhausted(window: CaptureWindow, scrollTop: number, contentHeight: number, velocity: number, viewport?: number): boolean;
|
|
59
|
+
/** The capture window of a scrolling plane, or undefined for a capture of the whole content. */
|
|
60
|
+
export declare function planCaptureWindow(request: CaptureWindowRequest): CaptureWindow | undefined;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
export function filterCaptureNodes(nodes, window, paintOverflow = 64) {
|
|
2
|
+
return nodes.filter(node => node.y + node.height >= window.top - paintOverflow && node.y <= window.bottom + paintOverflow);
|
|
3
|
+
}
|
|
4
|
+
// ---------------------------------------------------------------------------------------------
|
|
5
|
+
// Bounded capture: a scrolling plane captures a window around its scrollport. Small sources
|
|
6
|
+
// are captured whole; longer lists keep the capture within one accelerated canvas.
|
|
7
|
+
//
|
|
8
|
+
// entry the first capture of a visit: the scrollport, what a lens samples beyond it, and
|
|
9
|
+
// a small margin, either side.
|
|
10
|
+
// grown once the scene has been idle, and at every recentre: as much content as one
|
|
11
|
+
// accelerated canvas holds (the whole content when it fits, and then the plane has
|
|
12
|
+
// no window and needs none again).
|
|
13
|
+
// recentre while scrolling, before the scrollport reaches the window's edge: the same extent,
|
|
14
|
+
// placed ahead in the direction of travel.
|
|
15
|
+
//
|
|
16
|
+
// A window the plane already holds is kept for as long as it covers the scrollport with the
|
|
17
|
+
// guard to spare (a tab comes back to the capture it left with, and nothing is captured).
|
|
18
|
+
/** How far beyond the scrollport a glass surface samples its backdrop: the sample overscan of a
|
|
19
|
+
* surface (GLASS_OVERSCAN_Y_PX in lens/Scene.tsx, renderSpecs.ts `sampleInsetY`). A window covers
|
|
20
|
+
* the scrollport only when it holds this much content either side of it (or reaches the content's
|
|
21
|
+
* end): a lens at the scrollport's edge must never sample past the window. */
|
|
22
|
+
export const LENS_REACH_POINTS = 128;
|
|
23
|
+
/** Content either side of the scrollport in an entry window, beyond the lens reach, in
|
|
24
|
+
* scrollports: room to scroll before the first recentre (more than the recentre guard). */
|
|
25
|
+
export const ENTRY_MARGIN_VIEWPORTS = 0.15;
|
|
26
|
+
/** A Canvas2D taller than this is rasterized on the CPU in WebKit (device pixels). */
|
|
27
|
+
export const ACCELERATED_CANVAS_PIXELS = 8192;
|
|
28
|
+
/** Share of a recentred window's spare extent that lies ahead in the direction of travel. */
|
|
29
|
+
export const RECENTRE_AHEAD_SHARE = 0.75;
|
|
30
|
+
/** A recentre starts while the scrollport is still this far from the window's edge (scrollports)… */
|
|
31
|
+
export const RECENTRE_GUARD_VIEWPORTS = 0.125;
|
|
32
|
+
/** …or as far as the scroll travels in this many seconds, whichever is larger. */
|
|
33
|
+
export const RECENTRE_LEAD_SECONDS = 0.2;
|
|
34
|
+
const texelFloor = (value, resolution) => Math.floor(value * resolution) / resolution;
|
|
35
|
+
/** Device pixels needed to cover `value` points. Window edges are texel multiples held in floating
|
|
36
|
+
* point, so a window of exactly 8192 px can measure 8192.000000004 px; that rounding error must not
|
|
37
|
+
* round up to another pixel (and past the accelerated-canvas limit). */
|
|
38
|
+
export const texelCount = (value, resolution) => Math.ceil(value * resolution - 1e-6);
|
|
39
|
+
/** The largest extent a grown or recentred window takes, in points: one accelerated canvas.
|
|
40
|
+
* (A phone plane of that extent is 43 MB, more than the resident budget keeps for one plane, so
|
|
41
|
+
* a grown window is captured again, as an entry, when its tab comes back.) */
|
|
42
|
+
export function grownExtent(request) {
|
|
43
|
+
return Math.max(request.viewport, ACCELERATED_CANVAS_PIXELS / request.resolution);
|
|
44
|
+
}
|
|
45
|
+
/** How far ahead of the scrollport a window must still reach before a recentre starts. */
|
|
46
|
+
export function recentreGuard(viewport, velocity) {
|
|
47
|
+
return Math.max(viewport * RECENTRE_GUARD_VIEWPORTS, Math.abs(velocity) * RECENTRE_LEAD_SECONDS);
|
|
48
|
+
}
|
|
49
|
+
/** Whether `window` holds everything glass over a scrollport of `viewport` points at `scrollTop`
|
|
50
|
+
* can sample: the scrollport and the lens reach either side, up to the ends of the content.
|
|
51
|
+
* The scrollport is the one the host has NOW: a window captured while the keyboard was up, or in
|
|
52
|
+
* landscape, does not cover the taller scrollport that follows (`window.viewport` is only what
|
|
53
|
+
* the window was captured for). */
|
|
54
|
+
export function windowCoversScrollport(window, scrollTop, viewport, contentHeight) {
|
|
55
|
+
const needTop = Math.max(0, scrollTop - LENS_REACH_POINTS);
|
|
56
|
+
const needBottom = Math.min(contentHeight, scrollTop + viewport + LENS_REACH_POINTS);
|
|
57
|
+
return window.top <= needTop + 1 / 64 && window.bottom >= needBottom - 1 / 64;
|
|
58
|
+
}
|
|
59
|
+
/** Whether `window` no longer reaches far enough around the scrollport at `scrollTop`: it does
|
|
60
|
+
* not cover it (windowCoversScrollport), or its edge in a direction that has more content is
|
|
61
|
+
* inside the guard. `viewport` is the host's scrollport now. */
|
|
62
|
+
export function captureWindowExhausted(window, scrollTop, contentHeight, velocity, viewport = window.viewport) {
|
|
63
|
+
if (!windowCoversScrollport(window, scrollTop, viewport, contentHeight))
|
|
64
|
+
return true;
|
|
65
|
+
const guard = recentreGuard(viewport, velocity);
|
|
66
|
+
const before = scrollTop - LENS_REACH_POINTS - window.top;
|
|
67
|
+
const after = window.bottom - (scrollTop + viewport + LENS_REACH_POINTS);
|
|
68
|
+
// Only the direction of travel needs the lead; at rest both edges keep the small guard.
|
|
69
|
+
const rest = viewport * RECENTRE_GUARD_VIEWPORTS;
|
|
70
|
+
const beforeGuard = velocity < 0 ? guard : rest;
|
|
71
|
+
const afterGuard = velocity > 0 ? guard : rest;
|
|
72
|
+
return ((window.top > 0 && before < beforeGuard) ||
|
|
73
|
+
(window.bottom < contentHeight - 1 / 64 && after < afterGuard));
|
|
74
|
+
}
|
|
75
|
+
/** The capture window of a scrolling plane, or undefined for a capture of the whole content. */
|
|
76
|
+
export function planCaptureWindow(request) {
|
|
77
|
+
const { scrollTop, viewport, contentHeight, resolution, current, grow, velocity } = request;
|
|
78
|
+
if (![scrollTop, viewport, contentHeight, resolution, velocity].every(Number.isFinite))
|
|
79
|
+
throw Error('Capture window geometry must be finite');
|
|
80
|
+
if (viewport <= 0 || resolution <= 0)
|
|
81
|
+
throw Error('Capture window geometry is invalid');
|
|
82
|
+
const largest = grownExtent(request);
|
|
83
|
+
// Overscan cannot turn content above the accelerated limit into a whole-content capture.
|
|
84
|
+
const entryExtent = Math.min(largest, viewport + 2 * (LENS_REACH_POINTS + viewport * ENTRY_MARGIN_VIEWPORTS));
|
|
85
|
+
// Content that an entry window would hold anyway is captured whole: no window to manage.
|
|
86
|
+
if (contentHeight <= entryExtent)
|
|
87
|
+
return undefined;
|
|
88
|
+
const fitsWhole = contentHeight <= largest;
|
|
89
|
+
if (current === 'full') {
|
|
90
|
+
if (fitsWhole)
|
|
91
|
+
return undefined;
|
|
92
|
+
}
|
|
93
|
+
else if (current) {
|
|
94
|
+
const exhausted = captureWindowExhausted(current, scrollTop, contentHeight, velocity, viewport);
|
|
95
|
+
const grown = current.bottom - current.top >= Math.min(contentHeight, largest) - 1 / 64;
|
|
96
|
+
// Kept with its pixels; it records the scrollport it serves now.
|
|
97
|
+
if (!exhausted && (grown || !grow))
|
|
98
|
+
return current.viewport === viewport ? current : { ...current, viewport };
|
|
99
|
+
}
|
|
100
|
+
const place = (extent, aheadShare) => {
|
|
101
|
+
const spare = extent - viewport;
|
|
102
|
+
const desired = scrollTop - spare * (1 - aheadShare);
|
|
103
|
+
const top = texelFloor(Math.max(0, Math.min(contentHeight - extent, desired)), resolution);
|
|
104
|
+
return { top, bottom: top + extent, viewport };
|
|
105
|
+
};
|
|
106
|
+
// A jump while at rest (a scroll-to-top tap, a scripted scroll) is an entry at the new place:
|
|
107
|
+
// the small window is installed soonest, and it grows when the scene is idle again.
|
|
108
|
+
const jumped = current !== undefined &&
|
|
109
|
+
current !== 'full' &&
|
|
110
|
+
velocity === 0 &&
|
|
111
|
+
!windowCoversScrollport(current, scrollTop, viewport, contentHeight);
|
|
112
|
+
const first = current === undefined || jumped;
|
|
113
|
+
if (first && !grow)
|
|
114
|
+
return place(texelFloor(entryExtent, resolution), 0.5);
|
|
115
|
+
if (fitsWhole)
|
|
116
|
+
return undefined;
|
|
117
|
+
const ahead = velocity > 0 ? RECENTRE_AHEAD_SHARE : velocity < 0 ? 1 - RECENTRE_AHEAD_SHARE : 0.5;
|
|
118
|
+
return place(texelFloor(largest, resolution), ahead);
|
|
119
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export type ConfusionPair = Readonly<{
|
|
2
|
+
id: string;
|
|
3
|
+
backdrop: string;
|
|
4
|
+
appearance: 'light' | 'dark';
|
|
5
|
+
state: string;
|
|
6
|
+
kind: 'still' | 'clip';
|
|
7
|
+
native: string;
|
|
8
|
+
pwa: string;
|
|
9
|
+
widthPt: number;
|
|
10
|
+
heightPt: number;
|
|
11
|
+
frames?: number;
|
|
12
|
+
fps?: number;
|
|
13
|
+
build: string;
|
|
14
|
+
}>;
|
|
15
|
+
export type ConfusionManifest = Readonly<{
|
|
16
|
+
version: string;
|
|
17
|
+
status: string;
|
|
18
|
+
pairs: readonly ConfusionPair[];
|
|
19
|
+
pending: readonly string[];
|
|
20
|
+
}>;
|
|
21
|
+
export type ConfusionTrial = {
|
|
22
|
+
pairId: string;
|
|
23
|
+
nativeLeft: boolean;
|
|
24
|
+
guess?: 'left' | 'right';
|
|
25
|
+
guessedAt?: string;
|
|
26
|
+
revealed: boolean;
|
|
27
|
+
};
|
|
28
|
+
export type ConfusionSession = {
|
|
29
|
+
id: string;
|
|
30
|
+
manifestVersion: string;
|
|
31
|
+
startedAt: string;
|
|
32
|
+
trials: ConfusionTrial[];
|
|
33
|
+
};
|
|
34
|
+
export declare function makeConfusionSession(manifest: ConfusionManifest): ConfusionSession;
|
|
35
|
+
export declare function scoreConfusion(trials: readonly ConfusionTrial[]): {
|
|
36
|
+
count: number;
|
|
37
|
+
hits: number;
|
|
38
|
+
hitRate: number | null;
|
|
39
|
+
chance: number;
|
|
40
|
+
interval95: number[] | null;
|
|
41
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
function randomInt(max) {
|
|
2
|
+
const ceiling = Math.floor(4294967296 / max) * max;
|
|
3
|
+
let value;
|
|
4
|
+
do {
|
|
5
|
+
value = crypto.getRandomValues(new Uint32Array(1))[0];
|
|
6
|
+
} while (value >= ceiling);
|
|
7
|
+
return value % max;
|
|
8
|
+
}
|
|
9
|
+
export function makeConfusionSession(manifest) {
|
|
10
|
+
const trials = manifest.pairs.map(pair => ({
|
|
11
|
+
pairId: pair.id,
|
|
12
|
+
nativeLeft: randomInt(2) === 0,
|
|
13
|
+
revealed: false,
|
|
14
|
+
}));
|
|
15
|
+
for (let i = trials.length - 1; i > 0; i--) {
|
|
16
|
+
const j = randomInt(i + 1);
|
|
17
|
+
[trials[i], trials[j]] = [trials[j], trials[i]];
|
|
18
|
+
}
|
|
19
|
+
return {
|
|
20
|
+
id: Array.from(crypto.getRandomValues(new Uint32Array(4)), x => x.toString(16)).join('-'),
|
|
21
|
+
manifestVersion: manifest.version,
|
|
22
|
+
startedAt: new Date().toISOString(),
|
|
23
|
+
trials,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
export function scoreConfusion(trials) {
|
|
27
|
+
const scored = trials.filter(t => t.guess !== undefined);
|
|
28
|
+
const hits = scored.filter(t => (t.guess === 'left') === t.nativeLeft).length;
|
|
29
|
+
const n = scored.length;
|
|
30
|
+
const rate = n ? hits / n : null;
|
|
31
|
+
// Wilson interval expresses sampling uncertainty. It is not an equivalence test.
|
|
32
|
+
const z = 1.959963984540054, denominator = 1 + (z * z) / Math.max(1, n);
|
|
33
|
+
const center = n ? (hits / n + (z * z) / (2 * n)) / denominator : null;
|
|
34
|
+
const half = n
|
|
35
|
+
? (z * Math.sqrt(((hits / n) * (1 - hits / n)) / n + (z * z) / (4 * n * n))) / denominator
|
|
36
|
+
: null;
|
|
37
|
+
return {
|
|
38
|
+
count: n,
|
|
39
|
+
hits,
|
|
40
|
+
hitRate: rate,
|
|
41
|
+
chance: 0.5,
|
|
42
|
+
interval95: center === null || half === null ? null : [center - half, center + half],
|
|
43
|
+
};
|
|
44
|
+
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
export declare function menuPull(displacement: number, gain: number, range: number): number;
|
|
2
|
+
export declare const MENU_RELEASE_SPRING: Readonly<{
|
|
3
|
+
stiffness: 111.73389187035956;
|
|
4
|
+
damping: 10.51444760548088;
|
|
5
|
+
delayMilliseconds: 4.941103419008078;
|
|
6
|
+
}>;
|
|
7
|
+
export declare function menuReturn(milliseconds: number): number;
|
|
8
|
+
export declare const MENU_STRAIN_RESPONSE_MS = 109.7745877972179;
|
|
9
|
+
export declare const MENU_TRIGGER_FOLLOW: Readonly<{
|
|
10
|
+
gainX: 0.028852199054395337;
|
|
11
|
+
gainY: 0.01683370428028321;
|
|
12
|
+
rangePt: 300;
|
|
13
|
+
responseMs: 211.1299624689032;
|
|
14
|
+
}>;
|
|
15
|
+
/** The menu panel's velocity strain, in seconds of finger velocity: the panel leads along the
|
|
16
|
+
* motion (x, y), stretches along it and narrows across it. */
|
|
17
|
+
export declare const MENU_STRAIN: Readonly<{
|
|
18
|
+
leadXSeconds: 0.003524681648458459;
|
|
19
|
+
leadYSeconds: 0.0042655868076027946;
|
|
20
|
+
stretchSeconds: 0.004789086076060811;
|
|
21
|
+
narrowSeconds: 0.006870711203430614;
|
|
22
|
+
}>;
|
|
23
|
+
/**
|
|
24
|
+
* The kinds of interactive glass. Every interactive glass surface presses through the one contact
|
|
25
|
+
* (glassContact.ts in the document, InteractiveContact + InteractivePress in the glass worker);
|
|
26
|
+
* the kind only picks its parameters.
|
|
27
|
+
*
|
|
28
|
+
* - `button`: a glass Button in content (`.buttonStyle(.glass)`, `.glassProminent`, any shape).
|
|
29
|
+
* - `bar`: a toolbar or navigation-bar button, toolbar group, back/close/sidebar chrome buttons.
|
|
30
|
+
* - `menu`: a Menu's trigger (its glass becomes the menu).
|
|
31
|
+
* - `field`: interactive glass hosting one text editor (TextField, TextEditor, a composer).
|
|
32
|
+
* - `surface`: any other app `glassEffect(.regular.interactive())` shape: cards, the bottom
|
|
33
|
+
* accessory, the mini player.
|
|
34
|
+
*
|
|
35
|
+
* Track thumbs (Toggle, Slider) take their finger through the same contact and respond as the
|
|
36
|
+
* thumb note at the end of this file describes. Contacts with their own measured engines use this table's laws
|
|
37
|
+
* through other entry points: the open menu panel (menuGesture: MENU_STRAIN, menuReturn, the menu
|
|
38
|
+
* touch light) and the tab bar's dragged selection (tabMotion).
|
|
39
|
+
*/
|
|
40
|
+
export type GlassContactKind = 'button' | 'bar' | 'menu' | 'field' | 'surface' | 'segmented';
|
|
41
|
+
/** The kinds a framework control declares (`press`); `field` and `surface` follow from content. */
|
|
42
|
+
export type GlassPressKind = 'button' | 'bar' | 'menu';
|
|
43
|
+
/**
|
|
44
|
+
* OWNER DECISION PENDING (Oct 12): which kinds of interactive glass let a horizontal drag that
|
|
45
|
+
* starts on them start the navigation back swipe.
|
|
46
|
+
*
|
|
47
|
+
* - `[]` (current): every interactive glass owns its horizontal drag; it stretches toward the
|
|
48
|
+
* finger and never navigates.
|
|
49
|
+
* - `['button']` (native, iPad catalog Oct 13): a rightward drag that starts on a content glass
|
|
50
|
+
* button drives the back swipe while the button stays pressed and moves with the page; its tap
|
|
51
|
+
* cancels. Add `'bar'` / `'menu'` to extend that to toolbar buttons and menu triggers.
|
|
52
|
+
*
|
|
53
|
+
* Fields always own their drag (a composer drag must not open the iPad split pane), as do
|
|
54
|
+
* surfaces, Toggles and Sliders.
|
|
55
|
+
*/
|
|
56
|
+
export declare const GLASS_BACK_SWIPE: {
|
|
57
|
+
yieldingKinds: readonly GlassPressKind[];
|
|
58
|
+
};
|
|
59
|
+
/** A highlight curve: [ms since touch-down, white amount over the glass]. */
|
|
60
|
+
export type HighlightCurve = readonly (readonly [number, number])[];
|
|
61
|
+
export type GlassContactParameters = Readonly<{
|
|
62
|
+
/** Uniform press growth: the shape grows this many points wide (INTERACTIVE_GLASS_PRESS). */
|
|
63
|
+
growthPt: number;
|
|
64
|
+
/** The held shape trailing the finger: menuPull gains per point over `rangePt`, approached
|
|
65
|
+
* with `responseMs`. */
|
|
66
|
+
follow: Readonly<{
|
|
67
|
+
gainX: number;
|
|
68
|
+
gainY: number;
|
|
69
|
+
rangePt: number;
|
|
70
|
+
responseMs: number;
|
|
71
|
+
}>;
|
|
72
|
+
/** Squish while the finger moves: the menu panel's velocity strain. */
|
|
73
|
+
strain: typeof MENU_STRAIN;
|
|
74
|
+
/** Pose limits in CSS px. They keep the pose inside the press growth's sampling margin. */
|
|
75
|
+
maxOffset: number;
|
|
76
|
+
maxSizeChange: number;
|
|
77
|
+
/**
|
|
78
|
+
* Light of the pressed glass. `whole`: a white curve across the whole shape (buttons, measured
|
|
79
|
+
* per appearance, released linearly over `releaseMs`). `finger`: the menu's touch light at the
|
|
80
|
+
* finger, scaled to the menu field, over a held floor across the shape (surfaces).
|
|
81
|
+
*/
|
|
82
|
+
light: Readonly<{
|
|
83
|
+
kind: 'whole';
|
|
84
|
+
light: HighlightCurve;
|
|
85
|
+
dark: HighlightCurve;
|
|
86
|
+
releaseMs: Readonly<{
|
|
87
|
+
light: number;
|
|
88
|
+
dark: number;
|
|
89
|
+
}>;
|
|
90
|
+
}> | Readonly<{
|
|
91
|
+
kind: 'finger';
|
|
92
|
+
scale: number;
|
|
93
|
+
floor: number;
|
|
94
|
+
menuPeak: number;
|
|
95
|
+
}>;
|
|
96
|
+
/**
|
|
97
|
+
* The label above the glass (live DOM): `steady` keeps it at full strength; a curve gives its
|
|
98
|
+
* opacity [ms, opacity] while held, returning over the glass's release.
|
|
99
|
+
*/
|
|
100
|
+
label: Readonly<{
|
|
101
|
+
light: HighlightCurve | 'steady';
|
|
102
|
+
dark: HighlightCurve | 'steady';
|
|
103
|
+
}>;
|
|
104
|
+
}>;
|
|
105
|
+
/** The contact kind of an interactive glass material. */
|
|
106
|
+
export declare function glassContactKind(material: {
|
|
107
|
+
press?: GlassPressKind;
|
|
108
|
+
field?: true;
|
|
109
|
+
}): GlassContactKind;
|
|
110
|
+
export declare const GLASS_CONTACT_PHYSICS: Readonly<Record<GlassContactKind, GlassContactParameters>>;
|
|
111
|
+
/**
|
|
112
|
+
* Track thumbs: a Toggle's or a Slider's thumb is a lens on a track. Its finger arrives through
|
|
113
|
+
* the same GlassContact as every interactive glass (glassContact.ts); its response differs from a
|
|
114
|
+
* free shape's in ways native shows, so it has its own rows:
|
|
115
|
+
*
|
|
116
|
+
* - Follow: the thumb follows the finger 1:1 along its track, clamped to the travel's ends (the
|
|
117
|
+
* value moves with it), and never leaves the track. A free shape trails the finger by ~1% of the
|
|
118
|
+
* drag (follow gains above). Native catalog `toggle-thumb-quiet` / `slider-thumb-quiet` (iPad,
|
|
119
|
+
* cadence VALID): the held lens rides the finger to the ends; across the track it moves ≤1.4 pt.
|
|
120
|
+
* - Growth: the white thumb lifts into a clear lens after a stationary hold of `activationMs`, or
|
|
121
|
+
* as soon as it drags, with the control's own springs (CONTROL_LIFT); a free shape grows at
|
|
122
|
+
* touch-down.
|
|
123
|
+
* - Light: none. The lens is clear; the track shows through it.
|
|
124
|
+
* - A gesture that claims the touch before the thumb drags (a vertical scroll) cancels it; once it
|
|
125
|
+
* drags the thumb keeps the finger (GlassContactOptions.yieldsTo).
|
|
126
|
+
*
|
|
127
|
+
* The page owns a thumb's value, so its response model runs in the document (toggleContact.ts,
|
|
128
|
+
* sliderContact.ts) and the renderer draws the lens it is sent (ControlLens). Values live in
|
|
129
|
+
* lens/controlLift.ts (CONTROL_LIFT, ControlLiftKind) beside the scope bar's selection lens.
|
|
130
|
+
*/
|