@mkbabb/glass-ui 6.0.0 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +36 -34
- package/dist/DropdownMenuTrigger-ClIq8RJE.js +93 -0
- package/dist/FeedbackMark-DZq5001h.js +23 -0
- package/dist/Input-9BlLluik.js +77 -0
- package/dist/{PagerDots-BoTQ7g5l.js → PagerDots-BEq0MgtH.js} +85 -81
- package/dist/Surface-kFQeYrYv.js +82 -0
- package/dist/accent-tone-solve-Cw7WkRD9.js +14 -0
- package/dist/animated-digit.js +5 -5
- package/dist/asElement-CRnm6A2v.js +9 -0
- package/dist/aurora.js +831 -776
- package/dist/axes.js +25 -14
- package/dist/badge-u65NClWn.js +62 -0
- package/dist/badge.js +1 -1
- package/dist/blob-config.js +1 -1
- package/dist/blob.js +442 -395
- package/dist/button-Bu9F4uU6.js +98 -0
- package/dist/button.js +2 -2
- package/dist/canvas.js +1 -1
- package/dist/card-Bk96VI2R.js +234 -0
- package/dist/card.js +2 -2
- package/dist/carousel.js +109 -169
- package/dist/chip-DFZQr6rV.js +129 -0
- package/dist/chip.js +2 -81
- package/dist/{class-names-5jotTFzp.js → class-names-Cpy5eaBk.js} +11 -4
- package/dist/collapsible-BAP95XTt.js +154 -0
- package/dist/collapsible.js +1 -1
- package/dist/color.js +46 -50
- package/dist/{procedural-color.wgsl-B9mLK7v0.js → color.wgsl-Ct5o9dpf.js} +155 -121
- package/dist/command-SFqDQ65h.js +320 -0
- package/dist/command.js +1 -1
- package/dist/completion-seal.js +54 -54
- package/dist/components/_shared/FeedbackMark.vue.d.ts +11 -0
- package/dist/components/_shared/axes.d.ts +9 -3
- package/dist/components/_shared/class-names.d.ts +9 -8
- package/dist/components/_shared/control-size.d.ts +2 -0
- package/dist/components/_shared/disclosure-context.d.ts +7 -0
- package/dist/components/_shared/disclosure.css +1 -0
- package/dist/components/_shared/feedback.d.ts +7 -0
- package/dist/components/_shared/field-control.css +1 -0
- package/dist/components/_shared/field-surfaces.css +1 -1
- package/dist/components/_shared/fieldControl.d.ts +13 -0
- package/dist/components/_shared/floating.d.ts +14 -0
- package/dist/components/_shared/index.d.ts +2 -6
- package/dist/components/_shared/interaction.d.ts +23 -0
- package/dist/components/_shared/menu.css +1 -1
- package/dist/components/_shared/menuRowClass.d.ts +2 -0
- package/dist/components/_shared/primitive.d.ts +19 -0
- package/dist/components/_shared/resolveSurfaceClass.d.ts +3 -0
- package/dist/components/_shared/selection.d.ts +7 -0
- package/dist/components/_shared/useMotionAxis.d.ts +3 -2
- package/dist/components/accordion/Accordion.vue.d.ts +41 -16
- package/dist/components/accordion/AccordionContent.vue.d.ts +11 -9
- package/dist/components/accordion/AccordionItem.vue.d.ts +12 -9
- package/dist/components/accordion/AccordionTrigger.vue.d.ts +8 -11
- package/dist/components/accordion/index.d.ts +4 -4
- package/dist/components/alert/Alert.vue.d.ts +9 -5
- package/dist/components/alert/index.d.ts +17 -8
- package/dist/components/animated-digit/AnimatedDigit.vue.d.ts +2 -3
- package/dist/components/aurora/Aurora.vue.d.ts +37 -42
- package/dist/components/aurora/composables/atoms-fields.d.ts +13 -2
- package/dist/components/aurora/composables/atoms.d.ts +52 -50
- package/dist/components/aurora/composables/auroraFallbackGround.d.ts +13 -13
- package/dist/components/aurora/composables/auroraImageSource.d.ts +4 -5
- package/dist/components/aurora/composables/color.d.ts +15 -20
- package/dist/components/aurora/composables/frameLoop.d.ts +14 -11
- package/dist/components/aurora/composables/glSetup.d.ts +19 -2
- package/dist/components/aurora/composables/runtime.d.ts +56 -60
- package/dist/components/aurora/composables/uniformBridge.d.ts +9 -14
- package/dist/components/aurora/composables/uniformBridgeWGPU.d.ts +21 -22
- package/dist/components/aurora/composables/uniformBridgeWGPUImage.d.ts +13 -13
- package/dist/components/aurora/composables/useAurora.d.ts +19 -30
- package/dist/components/aurora/composables/wgpuSetup.d.ts +10 -8
- package/dist/components/aurora/constants/budget.d.ts +12 -25
- package/dist/components/aurora/constants/presets.d.ts +47 -58
- package/dist/components/aurora/constants/renderMode.d.ts +21 -36
- package/dist/components/aurora/constants/shaders/aurora-image.wgsl.d.ts +1 -1
- package/dist/components/aurora/constants/shaders/aurora-mediums.wgsl.d.ts +1 -1
- package/dist/components/aurora/constants/shaders/aurora.wgsl.d.ts +1 -1
- package/dist/components/aurora/constants/shaders/brush.glsl.d.ts +1 -1
- package/dist/components/aurora/constants/shaders/composition.glsl.d.ts +1 -1
- package/dist/components/aurora/constants/shaders/flow.glsl.d.ts +1 -1
- package/dist/components/aurora/constants/shaders/metal-medium.glsl.d.ts +2 -2
- package/dist/components/aurora/constants/shaders/oil-modes.glsl.d.ts +1 -1
- package/dist/components/aurora/constants/shaders/vangogh-medium.glsl.d.ts +1 -1
- package/dist/components/aurora/index.d.ts +2 -1
- package/dist/components/avatar/Avatar.vue.d.ts +72 -11
- package/dist/components/avatar/AvatarFallback.vue.d.ts +1 -2
- package/dist/components/avatar/AvatarImage.vue.d.ts +12 -8
- package/dist/components/avatar/index.d.ts +3 -9
- package/dist/components/avatar/styles.css +1 -0
- package/dist/components/badge/Badge.vue.d.ts +2 -9
- package/dist/components/badge/index.d.ts +32 -9
- package/dist/components/blob/Blob.vue.d.ts +5 -12
- package/dist/components/blob/composables/blobSimulation.d.ts +80 -0
- package/dist/components/blob/composables/buildMetaballProgram.d.ts +1 -1
- package/dist/components/blob/composables/resolveBlobSurface.d.ts +6 -0
- package/dist/components/blob/composables/satelliteKinematics.d.ts +3 -3
- package/dist/components/blob/composables/uniformBridgeWGPU.d.ts +1 -1
- package/dist/components/blob/composables/uploadBlobUniforms.d.ts +4 -31
- package/dist/components/blob/composables/useBlobMood.d.ts +5 -5
- package/dist/components/blob/composables/useBlobPointer.d.ts +11 -12
- package/dist/components/blob/composables/useMetaballRenderer.d.ts +27 -24
- package/dist/components/blob/composables/wgpuSetup.d.ts +7 -5
- package/dist/components/blob/config.d.ts +1 -1
- package/dist/components/blob/index.d.ts +2 -2
- package/dist/components/blob/presets.d.ts +2 -2
- package/dist/components/blob/shaders/metaball-palette.wgsl.d.ts +1 -1
- package/dist/components/blob/shaders/metaball-uniforms.glsl.d.ts +1 -1
- package/dist/components/blob/shaders/metaball.wgsl.d.ts +1 -1
- package/dist/components/blob/shaders/sdf-body.glsl.d.ts +1 -1
- package/dist/components/blob/shaders/watercolor-edges.glsl.d.ts +1 -1
- package/dist/components/blob/types.d.ts +28 -60
- package/dist/components/button/Button.vue.d.ts +26 -20
- package/dist/components/button/index.d.ts +1 -9
- package/dist/components/button/styles.css +1 -0
- package/dist/components/card/Card.vue.d.ts +20 -155
- package/dist/components/card/CardAction.vue.d.ts +0 -7
- package/dist/components/card/CardContent.vue.d.ts +2 -2
- package/dist/components/card/CardDescription.vue.d.ts +2 -2
- package/dist/components/card/CardFooter.vue.d.ts +2 -2
- package/dist/components/card/CardHeader.vue.d.ts +3 -42
- package/dist/components/card/CardTitle.vue.d.ts +6 -3
- package/dist/components/card/card-scroll.css +1 -1
- package/dist/components/card/index.d.ts +1 -3
- package/dist/components/card/styles.css +1 -1
- package/dist/components/carousel/index.d.ts +0 -2
- package/dist/components/carousel/interface.d.ts +2 -0
- package/dist/components/checkbox/Checkbox.vue.d.ts +17 -9
- package/dist/components/checkbox/index.d.ts +1 -1
- package/dist/components/checkbox/styles.css +1 -0
- package/dist/components/chip/Chip.vue.d.ts +12 -7
- package/dist/components/chip/chipVariants.d.ts +20 -43
- package/dist/components/chip/index.d.ts +1 -1
- package/dist/components/chip/types.d.ts +45 -30
- package/dist/components/collapsible/Collapsible.vue.d.ts +22 -9
- package/dist/components/collapsible/CollapsibleContent.vue.d.ts +11 -5
- package/dist/components/collapsible/CollapsibleTrigger.vue.d.ts +12 -9
- package/dist/components/collapsible/index.d.ts +3 -3
- package/dist/components/combobox/Combobox.vue.d.ts +10 -20
- package/dist/components/combobox/ComboboxAnchor.vue.d.ts +2 -6
- package/dist/components/combobox/ComboboxEmpty.vue.d.ts +2 -6
- package/dist/components/combobox/ComboboxGroup.vue.d.ts +2 -7
- package/dist/components/combobox/ComboboxInput.vue.d.ts +7 -12
- package/dist/components/combobox/ComboboxItem.vue.d.ts +7 -11
- package/dist/components/combobox/ComboboxItemIndicator.vue.d.ts +2 -6
- package/dist/components/combobox/ComboboxList.vue.d.ts +14 -17
- package/dist/components/combobox/ComboboxTrigger.vue.d.ts +16 -0
- package/dist/components/combobox/index.d.ts +2 -1
- package/dist/components/combobox/types.d.ts +87 -0
- package/dist/components/command/Command.vue.d.ts +9 -23
- package/dist/components/command/CommandDialog.vue.d.ts +4 -9
- package/dist/components/command/CommandEmpty.vue.d.ts +2 -6
- package/dist/components/command/CommandGroup.vue.d.ts +2 -7
- package/dist/components/command/CommandInput.vue.d.ts +6 -7
- package/dist/components/command/CommandItem.vue.d.ts +7 -11
- package/dist/components/command/CommandList.vue.d.ts +12 -19
- package/dist/components/command/CommandSeparator.vue.d.ts +2 -6
- package/dist/components/command/CommandShortcut.vue.d.ts +2 -2
- package/dist/components/command/dialogContext.d.ts +6 -0
- package/dist/components/command/index.d.ts +10 -10
- package/dist/components/command/styles.css +1 -0
- package/dist/components/command/types.d.ts +27 -0
- package/dist/components/completion-seal/CompletionSeal.vue.d.ts +2 -2
- package/dist/components/completion-seal/constants.d.ts +2 -2
- package/dist/components/configurator/Configurator.vue.d.ts +6 -6
- package/dist/components/configurator/ConfiguratorLayer.vue.d.ts +14 -18
- package/dist/components/configurator/ConfiguratorRow.vue.d.ts +14 -17
- package/dist/components/configurator/size.d.ts +5 -7
- package/dist/components/configurator/styles.css +1 -1
- package/dist/components/constellation/Constellation.vue.d.ts +1 -1
- package/dist/components/constellation/composables/createConstellationField.d.ts +2 -2
- package/dist/components/constellation/constants.d.ts +8 -8
- package/dist/components/constellation/constellationField.d.ts +5 -6
- package/dist/components/constellation/constellationInteraction.d.ts +8 -8
- package/dist/components/constellation/constellationTypes.d.ts +53 -54
- package/dist/components/constellation/constellationWell.d.ts +2 -2
- package/dist/components/dark-mode-toggle/DarkModeToggle.vue.d.ts +12 -0
- package/dist/components/dark-mode-toggle/dark-mode-toggle.css +1 -0
- package/dist/components/dark-mode-toggle/index.d.ts +2 -0
- package/dist/components/data-table/DataTable.vue.d.ts +11 -59
- package/dist/components/data-table/composables/useDataTableRowIdentity.d.ts +5 -23
- package/dist/components/data-table/index.d.ts +1 -1
- package/dist/components/data-table/styles.css +1 -0
- package/dist/components/data-table/types.d.ts +10 -12
- package/dist/components/deck/index.d.ts +0 -1
- package/dist/components/dialog/Dialog.vue.d.ts +8 -3
- package/dist/components/dialog/DialogClose.vue.d.ts +3 -1
- package/dist/components/dialog/DialogContent.vue.d.ts +27 -90
- package/dist/components/dialog/DialogDescription.vue.d.ts +5 -6
- package/dist/components/dialog/DialogTitle.vue.d.ts +5 -6
- package/dist/components/dialog/DialogTrigger.vue.d.ts +3 -1
- package/dist/components/{_shared → dialog}/ModalOverlay.vue.d.ts +18 -16
- package/dist/components/dialog/dialogStageContext.d.ts +7 -0
- package/dist/components/dialog/index.d.ts +8 -8
- package/dist/components/dialog/placement.css +1 -1
- package/dist/components/dialog/sheet-motion.d.ts +17 -0
- package/dist/components/dock/DockControl.vue.d.ts +9 -12
- package/dist/components/dock/DockCrossfade.vue.d.ts +4 -8
- package/dist/components/dock/DockLayer.vue.d.ts +2 -3
- package/dist/components/dock/DockLayerGroup.vue.d.ts +6 -6
- package/dist/components/dock/DockSeparator.vue.d.ts +8 -8
- package/dist/components/dock/composables/dockContext.d.ts +4 -14
- package/dist/components/dock/composables/dockCrossfadeContext.d.ts +6 -7
- package/dist/components/dock/composables/dockMorphMeasure.d.ts +7 -86
- package/dist/components/dock/composables/index.d.ts +1 -1
- package/dist/components/dock/composables/useDockClickIntegrity.d.ts +1 -1
- package/dist/components/dock/composables/useDockHold.d.ts +4 -5
- package/dist/components/dock/composables/useDockMorph.d.ts +26 -0
- package/dist/components/dock/composables/useDockOverflowFit.d.ts +4 -6
- package/dist/components/dock/composables/useDockSearch.d.ts +8 -8
- package/dist/components/dock/composables/useDockShellProps.d.ts +46 -43
- package/dist/components/dock/composables/useDockSpring.d.ts +7 -11
- package/dist/components/dock/composables/useDockState.d.ts +12 -3
- package/dist/components/dock/composables/useDockTouchGate.d.ts +14 -23
- package/dist/components/dock/constants.d.ts +5 -78
- package/dist/components/dock/index.d.ts +2 -7
- package/dist/components/dock/styles/controls.css +1 -1
- package/dist/components/dock/styles/crossfade.css +1 -1
- package/dist/components/dock/styles/density.css +1 -1
- package/dist/components/dock/styles/index.css +1 -1
- package/dist/components/dock/styles/layer-group.css +1 -1
- package/dist/components/dock/styles/layers.css +1 -1
- package/dist/components/dock/styles/morph.css +1 -1
- package/dist/components/dock/styles/shape.css +1 -1
- package/dist/components/dock/styles/shell.css +1 -1
- package/dist/components/drawer/Drawer.vue.d.ts +17 -20
- package/dist/components/drawer/DrawerContent.vue.d.ts +15 -16
- package/dist/components/drawer/DrawerDescription.vue.d.ts +5 -6
- package/dist/components/drawer/DrawerOverlay.vue.d.ts +6 -6
- package/dist/components/drawer/DrawerTitle.vue.d.ts +5 -6
- package/dist/components/drawer/composables/drawerSnapContext.d.ts +7 -1
- package/dist/components/drawer/composables/useDrawerSnap.d.ts +3 -1
- package/dist/components/drawer/constants.d.ts +7 -25
- package/dist/components/drawer/index.d.ts +10 -10
- package/dist/components/drawer/styles.css +1 -1
- package/dist/components/dropdown-menu/DropdownMenu.vue.d.ts +43 -16
- package/dist/components/dropdown-menu/DropdownMenuCheckboxItem.vue.d.ts +22 -13
- package/dist/components/dropdown-menu/DropdownMenuContent.vue.d.ts +28 -19
- package/dist/components/dropdown-menu/DropdownMenuGroup.vue.d.ts +6 -4
- package/dist/components/dropdown-menu/DropdownMenuItem.vue.d.ts +21 -9
- package/dist/components/dropdown-menu/DropdownMenuLabel.vue.d.ts +9 -9
- package/dist/components/dropdown-menu/DropdownMenuRadioGroup.vue.d.ts +13 -6
- package/dist/components/dropdown-menu/DropdownMenuRadioItem.vue.d.ts +18 -11
- package/dist/components/dropdown-menu/DropdownMenuSeparator.vue.d.ts +5 -6
- package/dist/components/dropdown-menu/DropdownMenuShortcut.vue.d.ts +7 -8
- package/dist/components/dropdown-menu/DropdownMenuSub.vue.d.ts +15 -7
- package/dist/components/dropdown-menu/DropdownMenuSubContent.vue.d.ts +24 -17
- package/dist/components/dropdown-menu/DropdownMenuSubTrigger.vue.d.ts +11 -9
- package/dist/components/dropdown-menu/DropdownMenuTrigger.vue.d.ts +15 -8
- package/dist/components/dropdown-menu/index.d.ts +15 -15
- package/dist/components/dropdown-menu/styles.css +1 -0
- package/dist/components/dropdown-menu/useMenuTrigger.d.ts +2 -9
- package/dist/components/easing/composables/useEasingPicker.d.ts +5 -8
- package/dist/components/easing/constants.d.ts +1 -1
- package/dist/components/expandable-container/ExpandableContainer.vue.d.ts +1 -25
- package/dist/components/expandable-container/styles.css +1 -0
- package/dist/components/fading-scroll/FadingScroll.vue.d.ts +4 -0
- package/dist/components/fading-scroll/composables/useFadingScroll.d.ts +4 -0
- package/dist/components/fading-scroll/constants.d.ts +1 -2
- package/dist/components/fourier-field/FourierField.vue.d.ts +3 -5
- package/dist/components/fourier-field/composables/fourierFieldGLSetup.d.ts +1 -1
- package/dist/components/fourier-field/composables/fourierFieldWGPUSetup.d.ts +1 -1
- package/dist/components/fourier-field/composables/useFourierField.d.ts +4 -4
- package/dist/components/fourier-field/constants.d.ts +10 -10
- package/dist/components/fourier-field/index.d.ts +3 -3
- package/dist/components/fourier-field/presets.d.ts +3 -3
- package/dist/components/fourier-field/shaders/fourier-field.glsl.d.ts +2 -2
- package/dist/components/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -1
- package/dist/components/handmark/HandMark.vue.d.ts +1 -1
- package/dist/components/handmark/brush.d.ts +1 -1
- package/dist/components/handmark/composables/useHandMark.d.ts +4 -4
- package/dist/components/handmark/constants.d.ts +10 -10
- package/dist/components/handmark/geometry.d.ts +8 -8
- package/dist/components/handmark/index.d.ts +7 -8
- package/dist/components/handmark/noise.d.ts +3 -3
- package/dist/components/handmark/types.d.ts +2 -2
- package/dist/components/header-ribbon/HeaderRibbon.vue.d.ts +3 -21
- package/dist/components/header-ribbon/styles.css +1 -0
- package/dist/components/header-ribbon/types.d.ts +5 -2
- package/dist/components/index.d.ts +0 -3
- package/dist/components/infinite-scroll/composables/types.d.ts +1 -1
- package/dist/components/input/Input.vue.d.ts +10 -35
- package/dist/components/input/index.d.ts +2 -1
- package/dist/components/input/types.d.ts +22 -0
- package/dist/components/instrument-chassis/InstrumentChassis.vue.d.ts +10 -84
- package/dist/components/instrument-chassis/index.d.ts +1 -2
- package/dist/components/instrument-chassis/styles.css +1 -1
- package/dist/components/instrument-chassis/types.d.ts +13 -0
- package/dist/components/label/Label.vue.d.ts +9 -14
- package/dist/components/label/index.d.ts +1 -1
- package/dist/components/labeled-field/LabeledField.vue.d.ts +10 -108
- package/dist/components/labeled-field/LabeledInput.vue.d.ts +3 -23
- package/dist/components/labeled-field/LabeledSelect.vue.d.ts +12 -18
- package/dist/components/labeled-field/LabeledSlider.vue.d.ts +12 -18
- package/dist/components/labeled-field/LabeledSwitch.vue.d.ts +14 -17
- package/dist/components/labeled-field/index.d.ts +1 -0
- package/dist/components/labeled-field/types.d.ts +50 -0
- package/dist/components/liquid-grid/composables/liquidGrid.d.ts +5 -5
- package/dist/components/liquid-grid/constants.d.ts +6 -7
- package/dist/components/liquid-grid/shaders/liquid-grid.glsl.d.ts +1 -1
- package/dist/components/liquid-grid/shaders/liquid-grid.wgsl.d.ts +1 -1
- package/dist/components/metric/Metric.vue.d.ts +24 -0
- package/dist/components/metric/MetricCell.vue.d.ts +26 -0
- package/dist/components/metric/MetricRow.vue.d.ts +22 -0
- package/dist/components/metric/MetricStack.vue.d.ts +16 -0
- package/dist/components/metric/coalesce-metric.d.ts +7 -28
- package/dist/components/metric/index.d.ts +5 -0
- package/dist/components/metric/styles.css +1 -0
- package/dist/components/metric/types.d.ts +32 -0
- package/dist/components/number-field/NumberField.vue.d.ts +21 -9
- package/dist/components/number-field/NumberFieldContent.vue.d.ts +2 -2
- package/dist/components/number-field/NumberFieldDecrement.vue.d.ts +6 -6
- package/dist/components/number-field/NumberFieldIncrement.vue.d.ts +6 -6
- package/dist/components/number-field/NumberFieldInput.vue.d.ts +1 -6
- package/dist/components/number-field/context.d.ts +6 -0
- package/dist/components/number-field/index.d.ts +5 -5
- package/dist/components/number-field/styles.css +1 -0
- package/dist/components/pager-dots/constants.d.ts +1 -2
- package/dist/components/pager-dots/index.d.ts +0 -2
- package/dist/components/paper-backdrop/PaperBackdrop.vue.d.ts +1 -14
- package/dist/components/paper-backdrop/index.d.ts +1 -1
- package/dist/components/popover/Popover.vue.d.ts +24 -36
- package/dist/components/popover/PopoverContent.vue.d.ts +23 -29
- package/dist/components/popover/PopoverTrigger.vue.d.ts +12 -7
- package/dist/components/popover/index.d.ts +3 -3
- package/dist/components/popover/popoverContext.d.ts +3 -4
- package/dist/components/progress/Progress.vue.d.ts +5 -13
- package/dist/components/progress/index.d.ts +1 -0
- package/dist/components/progress/types.d.ts +19 -0
- package/dist/components/pulse/Pulse.vue.d.ts +8 -47
- package/dist/components/pulse/index.d.ts +1 -0
- package/dist/components/radio-group/RadioGroup.vue.d.ts +27 -15
- package/dist/components/radio-group/RadioGroupItem.vue.d.ts +9 -6
- package/dist/components/radio-group/index.d.ts +2 -0
- package/dist/components/radio-group/styles.css +1 -0
- package/dist/components/scroll-progress-rim/styles.css +1 -1
- package/dist/components/search/FuzzySearch.vue.d.ts +2 -2
- package/dist/components/search/SearchBar.vue.d.ts +2 -2
- package/dist/components/search/searchVariants.d.ts +15 -17
- package/dist/components/select/Select.vue.d.ts +25 -14
- package/dist/components/select/SelectContent.vue.d.ts +26 -29
- package/dist/components/select/SelectGroup.vue.d.ts +7 -11
- package/dist/components/select/SelectItem.vue.d.ts +24 -13
- package/dist/components/select/SelectLabel.vue.d.ts +7 -11
- package/dist/components/select/SelectScrollDownButton.vue.d.ts +3 -4
- package/dist/components/select/SelectScrollUpButton.vue.d.ts +3 -4
- package/dist/components/select/SelectSeparator.vue.d.ts +5 -6
- package/dist/components/select/SelectTrigger.vue.d.ts +15 -41
- package/dist/components/select/SelectValue.vue.d.ts +13 -7
- package/dist/components/select/index.d.ts +16 -8
- package/dist/components/separator/Separator.vue.d.ts +11 -6
- package/dist/components/separator/index.d.ts +1 -1
- package/dist/components/skeleton/Skeleton.vue.d.ts +3 -31
- package/dist/components/slider/Slider.vue.d.ts +10 -37
- package/dist/components/slider/index.d.ts +1 -45
- package/dist/components/slider/types.d.ts +25 -0
- package/dist/components/sortable-list/SortableList.vue.d.ts +1 -1
- package/dist/components/sortable-list/composables/ghostRenderer.d.ts +1 -1
- package/dist/components/sortable-list/composables/touchGate.d.ts +1 -1
- package/dist/components/sortable-list/composables/transitionTiming.d.ts +1 -1
- package/dist/components/status-dot/StatusDot.vue.d.ts +7 -10
- package/dist/components/status-dot/index.d.ts +1 -0
- package/dist/components/surface/Surface.vue.d.ts +13 -21
- package/dist/components/surface/index.d.ts +2 -2
- package/dist/components/switch/Switch.vue.d.ts +20 -11
- package/dist/components/switch/index.d.ts +2 -1
- package/dist/components/switch/styles.css +1 -0
- package/dist/components/table/Table.vue.d.ts +1 -1
- package/dist/components/tabs/SegmentedTabs.vue.d.ts +21 -13
- package/dist/components/tabs/composables/useTabDragMorph.d.ts +6 -6
- package/dist/components/tabs/composables/useTabResponsive.d.ts +5 -6
- package/dist/components/tabs/composables/useTabRovingFocus.d.ts +16 -16
- package/dist/components/tabs/constants.d.ts +1 -1
- package/dist/components/tabs/index.d.ts +1 -1
- package/dist/components/tabs/styles/drag.css +1 -1
- package/dist/components/tabs/styles/segmented.css +1 -1
- package/dist/components/tags-input/TagsInput.vue.d.ts +28 -15
- package/dist/components/tags-input/TagsInputInput.vue.d.ts +8 -6
- package/dist/components/tags-input/TagsInputItem.vue.d.ts +9 -8
- package/dist/components/tags-input/TagsInputItemDelete.vue.d.ts +5 -6
- package/dist/components/tags-input/TagsInputItemText.vue.d.ts +5 -6
- package/dist/components/tags-input/context.d.ts +5 -0
- package/dist/components/tags-input/index.d.ts +5 -5
- package/dist/components/tags-input/styles.css +1 -0
- package/dist/components/textarea/Textarea.vue.d.ts +10 -55
- package/dist/components/textarea/index.d.ts +2 -1
- package/dist/components/textarea/types.d.ts +22 -0
- package/dist/components/timeline/ContinuousMarkers.vue.d.ts +2 -4
- package/dist/components/timeline/ContinuousRail.vue.d.ts +3 -6
- package/dist/components/timeline/ContinuousTimeline.vue.d.ts +12 -13
- package/dist/components/timeline/GlassTimeline.vue.d.ts +7 -8
- package/dist/components/timeline/ScrubberTimeline.vue.d.ts +4 -4
- package/dist/components/timeline/SegmentedTimeline.vue.d.ts +2 -3
- package/dist/components/timeline/geometry.d.ts +3 -4
- package/dist/components/timeline/types.d.ts +3 -3
- package/dist/components/toast/Toast.vue.d.ts +37 -79
- package/dist/components/toast/ToastAction.vue.d.ts +5 -5
- package/dist/components/toast/ToastClose.vue.d.ts +4 -5
- package/dist/components/toast/ToastDescription.vue.d.ts +4 -5
- package/dist/components/toast/ToastTitle.vue.d.ts +4 -5
- package/dist/components/toast/Toaster.vue.d.ts +1 -1
- package/dist/components/toast/index.d.ts +8 -9
- package/dist/components/toast/use-toast.d.ts +20 -163
- package/dist/components/toggle-group/ToggleGroup.vue.d.ts +44 -22
- package/dist/components/toggle-group/ToggleGroupItem.vue.d.ts +11 -9
- package/dist/components/toggle-group/index.d.ts +3 -2
- package/dist/components/toggle-group/styles.css +1 -0
- package/dist/components/toggle-group/toggleGroupContext.d.ts +4 -15
- package/dist/components/tooltip/Tooltip.vue.d.ts +20 -7
- package/dist/components/tooltip/TooltipContent.vue.d.ts +20 -12
- package/dist/components/tooltip/TooltipProvider.vue.d.ts +12 -5
- package/dist/components/tooltip/TooltipTrigger.vue.d.ts +12 -5
- package/dist/components/tooltip/index.d.ts +4 -4
- package/dist/components/typewriter/composables/useTypewriter.d.ts +1 -0
- package/dist/components/typewriter/utils/timing.d.ts +0 -2
- package/dist/components/watercolor-dot/WatercolorDot.vue.d.ts +5 -18
- package/dist/components/watercolor-dot/useWatercolorBlob.d.ts +1 -4
- package/dist/composables/color/accent-tone-solve.d.ts +2 -5
- package/dist/composables/color/index.d.ts +31 -38
- package/dist/composables/color/useAccentTone.d.ts +0 -3
- package/dist/composables/color/value.d.ts +21 -0
- package/dist/composables/context/createContext.d.ts +2 -2
- package/dist/composables/dark/index.d.ts +1 -1
- package/dist/composables/dark/useGlobalDark.d.ts +7 -6
- package/dist/composables/dom/useBreakpoint.d.ts +2 -2
- package/dist/composables/dom/useClipboard.d.ts +28 -52
- package/dist/composables/dom/useDocumentVisibility.d.ts +3 -1
- package/dist/composables/dom/useIdleReady.d.ts +5 -6
- package/dist/composables/dom/useTokenColor.d.ts +2 -2
- package/dist/composables/dom/useUserInvalidAria.d.ts +2 -3
- package/dist/composables/dom/useViewportReady.d.ts +4 -4
- package/dist/composables/glass/backdropLuminanceSample.d.ts +7 -6
- package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +7 -1
- package/dist/composables/glass/textureUpload.d.ts +8 -10
- package/dist/composables/glass/useGlassBackdropLuminance.d.ts +11 -19
- package/dist/composables/glass/useSpecularPointer.d.ts +6 -6
- package/dist/composables/glass/useSpecularTracking.d.ts +12 -15
- package/dist/composables/glass/wave/waveField.d.ts +2 -2
- package/dist/composables/glass/wave/waveField.glsl.d.ts +1 -1
- package/dist/composables/glass/wave/waveField.wgsl.d.ts +1 -1
- package/dist/composables/glass/webgl/backingSize.d.ts +5 -8
- package/dist/composables/glass/webgl/compile.d.ts +1 -1
- package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +20 -20
- package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +16 -28
- package/dist/composables/glass/webgl/visibility.d.ts +3 -4
- package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +10 -10
- package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +1 -1
- package/dist/composables/glass/webgpu/webgpuCanvasTypes.d.ts +12 -10
- package/dist/composables/glass/webgpu/webgpuDevice.d.ts +15 -16
- package/dist/composables/motion/core/asElement.d.ts +2 -0
- package/dist/composables/motion/{constants.d.ts → core/constants.d.ts} +2 -3
- package/dist/composables/motion/core/index.d.ts +20 -23
- package/dist/composables/motion/core/useReducedMotion.d.ts +5 -0
- package/dist/composables/motion/core/useViewTransition.d.ts +44 -0
- package/dist/composables/motion/index.d.ts +14 -16
- package/dist/composables/motion/{useDockCtaReceive.d.ts → morph/useDockCtaReceive.d.ts} +2 -3
- package/dist/composables/motion/{useDragMorph.d.ts → morph/useDragMorph.d.ts} +7 -7
- package/dist/composables/motion/morph/useElementMorph.d.ts +50 -0
- package/dist/composables/motion/{useLeadTrail.d.ts → morph/useLeadTrail.d.ts} +6 -6
- package/dist/composables/motion/{useSelectionGroup.d.ts → morph/useSelectionGroup.d.ts} +7 -5
- package/dist/composables/motion/{useSelectionIndicator.d.ts → morph/useSelectionIndicator.d.ts} +9 -16
- package/dist/composables/motion/{useNumericTransition.d.ts → number/useNumericTransition.d.ts} +2 -2
- package/dist/composables/motion/{pointerFieldMappings.d.ts → pointer/pointerFieldMappings.d.ts} +7 -10
- package/dist/composables/motion/{usePointerVelocityField.d.ts → pointer/usePointerVelocityField.d.ts} +1 -1
- package/dist/composables/motion/{bloomUpField.d.ts → reveal/bloomUpField.d.ts} +1 -1
- package/dist/composables/motion/reveal/useBloomUp.d.ts +33 -0
- package/dist/composables/motion/{useLiquidReveal.d.ts → reveal/useLiquidReveal.d.ts} +5 -5
- package/dist/composables/motion/{useStagger.d.ts → reveal/useStagger.d.ts} +3 -3
- package/dist/composables/motion/reveal/useStaggerReveal.d.ts +28 -0
- package/dist/composables/motion/{useScrollChrome.d.ts → scroll/useScrollChrome.d.ts} +2 -2
- package/dist/composables/motion/{useScrollProgress.d.ts → scroll/useScrollProgress.d.ts} +12 -2
- package/dist/composables/motion/{springPresets.d.ts → spring/springPresets.d.ts} +8 -7
- package/dist/composables/motion/{springProjection.d.ts → spring/springProjection.d.ts} +3 -0
- package/dist/composables/motion/{useLiquidFlex.d.ts → spring/useLiquidFlex.d.ts} +11 -12
- package/dist/composables/motion/{useLiquidPress.d.ts → spring/useLiquidPress.d.ts} +3 -3
- package/dist/composables/motion/{useSpring.d.ts → spring/useSpring.d.ts} +5 -2
- package/dist/composables/motion/{useSpringMount.d.ts → spring/useSpringMount.d.ts} +8 -1
- package/dist/composables/sidebar/types.d.ts +3 -3
- package/dist/{configurator-CSENXXSy.js → configurator-M5OaIlJd.js} +11 -11
- package/dist/configurator.js +1 -1
- package/dist/{constants-DRZmNIY-.js → constants-nBz23tJE.js} +1 -1
- package/dist/constellation.js +125 -124
- package/dist/{createCanvasLifecycle-hsFkQVdl.js → createCanvasLifecycle-DbXRwjU_.js} +87 -82
- package/dist/dark-mode-toggle.d.ts +1 -0
- package/dist/dark-mode-toggle.js +43 -0
- package/dist/dark.js +1 -1
- package/dist/data-table-BygKg6ZA.js +491 -0
- package/dist/data-table.js +1 -1
- package/dist/deck.js +3 -3
- package/dist/dialog-TNRDkcE4.js +385 -0
- package/dist/dialog.js +1 -1
- package/dist/dock.js +523 -940
- package/dist/dockContext-BUTlGRNJ.js +13 -0
- package/dist/dom.js +52 -114
- package/dist/drawer.js +262 -209
- package/dist/dropdown-menu-BlbnvMaZ.js +507 -0
- package/dist/dropdown-menu.js +2 -2
- package/dist/easing.js +294 -278
- package/dist/expandable-container.js +107 -93
- package/dist/fading-scroll-DhxXIhm2.js +96 -0
- package/dist/fading-scroll.js +1 -1
- package/dist/field-control.css_vue_type_style_index_0_src_true_lang-CeLay9Tk.js +21 -0
- package/dist/floating-dB5TD88k.js +7 -0
- package/dist/{flow.glsl-DEGFGE11.js → flow.wgsl-Cd2GUkPx.js} +2 -2
- package/dist/fonts/README.md +14 -18
- package/dist/forms.js +279 -174
- package/dist/fourier-field.js +148 -148
- package/dist/glass-ui.css +1 -1
- package/dist/glass-ui.js +512 -373
- package/dist/handmark.js +4 -4
- package/dist/header-ribbon.js +37 -68
- package/dist/index.d.ts +9 -18
- package/dist/infinite-scroll.js +31 -28
- package/dist/instrument-chassis.js +54 -2
- package/dist/label-DnMqH7jr.js +55 -0
- package/dist/label.js +1 -1
- package/dist/labeled-field.js +291 -214
- package/dist/liquid-grid.js +141 -151
- package/dist/menuRowClass-Nh7CtMON.js +12 -0
- package/dist/metric.d.ts +1 -0
- package/dist/metric.js +192 -0
- package/dist/motion-core.js +73 -165
- package/dist/motion.js +104 -161
- package/dist/number-field-Boe09SvX.js +154 -0
- package/dist/number-field.js +1 -1
- package/dist/pager-dots.js +2 -2
- package/dist/paper-backdrop.js +16 -24
- package/dist/{pointerFieldMappings-CZojkgKj.js → pointerFieldMappings-DP5tla5z.js} +4 -7
- package/dist/popover-BQGYXZyO.js +244 -0
- package/dist/popover.js +1 -1
- package/dist/{presets-CxeNvxuO.js → presets-5myqNv59.js} +1 -1
- package/dist/primitive-B2t2jdqM.js +11 -0
- package/dist/progress-DClbhRAT.js +88 -0
- package/dist/progress.js +1 -1
- package/dist/pulse.js +29 -43
- package/dist/reactive.js +1 -1
- package/dist/resolveCanvasColor-DS_6DBxA.js +82 -0
- package/dist/resolveSurfaceClass-DCZ4PZcy.js +6 -0
- package/dist/{scrollReader-C2oK9Hb8.js → scrollReader-Brf5cQNo.js} +1 -1
- package/dist/search.js +241 -213
- package/dist/select-BcBAyLXA.js +336 -0
- package/dist/select.js +1 -1
- package/dist/selection-DqIULxRG.js +6 -0
- package/dist/separator-CgZInrX-.js +75 -0
- package/dist/separator.js +1 -1
- package/dist/sidebar.js +53 -42
- package/dist/slider-DzqeQmMu.js +162 -0
- package/dist/slider.js +2 -2
- package/dist/sortable-list.js +9 -8
- package/dist/springPresets-rCii5KqX.js +52 -0
- package/dist/status-dot.js +26 -43
- package/dist/styles/accessibility.css +1 -1
- package/dist/styles/animations.css +1 -1
- package/dist/styles/components.css +1 -1
- package/dist/styles/glass/a11y-fallback.css +1 -1
- package/dist/styles/glass/accent-tone.css +1 -1
- package/dist/styles/glass/control-surfaces.css +1 -1
- package/dist/styles/glass/defined.css +1 -1
- package/dist/styles/glass/glass-atom.css +1 -1
- package/dist/styles/glass/glass-capsule.css +1 -1
- package/dist/styles/glass/glass-chip.css +1 -1
- package/dist/styles/glass/ladder.css +1 -1
- package/dist/styles/glass/liquid-fill.css +1 -1
- package/dist/styles/glass/material-roles.css +1 -1
- package/dist/styles/glass/material.css +1 -1
- package/dist/styles/glass/reveal.css +1 -1
- package/dist/styles/glass/squircle.css +1 -1
- package/dist/styles/glass/surface-axis.css +1 -1
- package/dist/styles/glass/surfaces-pager.css +1 -1
- package/dist/styles/glass/surfaces.css +1 -1
- package/dist/styles/glass-refract.css +1 -1
- package/dist/styles/glass.css +1 -1
- package/dist/styles/index.css +1 -1
- package/dist/styles/paper.css +1 -1
- package/dist/styles/scroll-driven.css +1 -1
- package/dist/styles/theme/bridges.css +1 -1
- package/dist/styles/theme/radius.css +1 -1
- package/dist/styles/tokens/color-radius.css +1 -1
- package/dist/styles/tokens/dark-arm.css +1 -1
- package/dist/styles/tokens/glass-deep.css +1 -1
- package/dist/styles/tokens/glass-fx.css +1 -1
- package/dist/styles/tokens/glass.css +1 -1
- package/dist/styles/tokens/light-dark.css +1 -1
- package/dist/styles/tokens/manifest.d.ts +14 -0
- package/dist/styles/tokens/manifest.ts +56 -0
- package/dist/styles/tokens/motion-registers.css +1 -1
- package/dist/styles/tokens/offsets.css +1 -1
- package/dist/styles/tokens/property-regs-specular.css +1 -1
- package/dist/styles/tokens/property-regs.css +1 -1
- package/dist/styles/tokens/scale-paper.css +1 -1
- package/dist/styles/tokens/scheme-motion.css +1 -1
- package/dist/styles/tokens/scheme-spring.css +1 -1
- package/dist/styles/tokens/scroll-tokens.css +1 -1
- package/dist/styles/tokens/shadow.css +1 -1
- package/dist/styles/tokens/sizing-config.css +1 -1
- package/dist/styles/tokens/sizing.css +1 -1
- package/dist/styles/tokens.d.ts +4 -9
- package/dist/styles/tokens.ts +5 -9
- package/dist/styles/transitions.css +1 -1
- package/dist/styles/typography/scale.css +1 -1
- package/dist/styles/typography/semantic.css +1 -1
- package/dist/styles/typography/utilities.css +1 -1
- package/dist/styles/utilities/a11y-overrides.css +1 -1
- package/dist/styles/utilities/base-misc.css +1 -1
- package/dist/styles/utilities/base.css +1 -1
- package/dist/styles/utilities/btn.css +1 -1
- package/dist/styles/utilities/components.css +1 -1
- package/dist/styles/utilities/metal.css +1 -1
- package/dist/styles/utilities/responsive.css +1 -0
- package/dist/styles/view-transition.css +1 -1
- package/dist/{supportsCssTimeline-Dz-GVxXM.js → supportsCssTimeline-C2zyWpl8.js} +1 -1
- package/dist/surface.js +2 -3
- package/dist/switch-DZjQuFLa.js +54 -0
- package/dist/switch.js +1 -1
- package/dist/tabs.js +141 -169
- package/dist/timeline.js +86 -87
- package/dist/toast-CH5mnsYT.js +267 -0
- package/dist/toast.js +1 -1
- package/dist/toggle-group-O6jBo7AE.js +150 -0
- package/dist/toggle-group.js +1 -1
- package/dist/tokens.js +96 -5
- package/dist/tooltip-Drx5qnw_.js +148 -0
- package/dist/tooltip.js +1 -1
- package/dist/typewriter.js +222 -193
- package/dist/{useAccentTone-C-p6WdPe.js → useAccentTone-DyInfHXE.js} +2 -2
- package/dist/{useAnimatedNumber-BRVVaFFc.js → useAnimatedNumber-WPtMz0AN.js} +2 -2
- package/dist/useClipboard-D36OTaeT.js +53 -0
- package/dist/useDockCtaReceive-DkrOTM0q.js +146 -0
- package/dist/useDocumentVisibility-Dh_TGXsU.js +21 -0
- package/dist/useDragMorph-BogSV_nv.js +293 -0
- package/dist/{useIntersectionPause-B-dbxl9w.js → useIntersectionPause-B5mAU6XY.js} +15 -15
- package/dist/useLeadTrail-AW1-zZcd.js +74 -0
- package/dist/{useLiquidFlex-Ch4exNvN.js → useLiquidFlex-TJZmRqyY.js} +1 -1
- package/dist/useLiquidPress-BOxuDkKa.js +101 -0
- package/dist/useMotionAxis-D-rtIhca.js +19 -0
- package/dist/usePointerVelocityField-DsIf7yyq.js +121 -0
- package/dist/useRAFLoop-B3YlWK4M.js +98 -0
- package/dist/useReducedMotion-vCXA_vyM.js +27 -0
- package/dist/useRoutePointer-B8itM7Ka.js +53 -0
- package/dist/useScrollProgress-CSFYXIZT.js +43 -0
- package/dist/useScrollTrigger-BDdqptlc.js +87 -0
- package/dist/useSelectionGroup-B5XplBbo.js +132 -0
- package/dist/{useSpring-BBSKFx_0.js → useSpring-9u2_shxV.js} +2 -2
- package/dist/useSpringMount-uQ8QL9Ff.js +74 -0
- package/dist/useTabRovingFocus-YnWh-Ytr.js +169 -0
- package/dist/useTextHighlight-mfwNIC1f.js +112 -0
- package/dist/{useTouchGate-Cj5fOkTv.js → useTouchGate-B4mzQcHJ.js} +1 -1
- package/dist/vSpecular-DMJo8pfD.js +68 -0
- package/dist/value-DMhh2R94.js +33 -0
- package/dist/watercolor-dot.js +77 -103
- package/package.json +163 -232
- package/dist/DropdownMenuTrigger-BzQtd9lt.js +0 -65
- package/dist/FadingScroll-C1ZWEjmG.js +0 -83
- package/dist/Input-B4WQ_CMc.js +0 -57
- package/dist/Surface-BWRfwyn8.js +0 -59
- package/dist/accent-tone-solve-Dii9ePhK.js +0 -20
- package/dist/badge-C0C-rTBu.js +0 -80
- package/dist/button-32mg6xA8.js +0 -194
- package/dist/card-16xmzIr3.js +0 -303
- package/dist/coalesce-metric-znAcLzkB.js +0 -13
- package/dist/collapsible-bPzS1aQk.js +0 -63
- package/dist/color-swatch.d.ts +0 -1
- package/dist/color-swatch.js +0 -48
- package/dist/command-BjPjUU9z.js +0 -307
- package/dist/components/_shared/menuItemVariants.d.ts +0 -51
- package/dist/components/_shared/useControlSize.d.ts +0 -46
- package/dist/components/_shared/useStalePropWarning.d.ts +0 -27
- package/dist/components/_shared/useSurfaceAxis.d.ts +0 -64
- package/dist/components/card/ScrollCard.vue.d.ts +0 -33
- package/dist/components/card/ScrollCardHeader.vue.d.ts +0 -17
- package/dist/components/carousel/CarouselNext.vue.d.ts +0 -21
- package/dist/components/carousel/CarouselPrevious.vue.d.ts +0 -21
- package/dist/components/color-swatch/ColorSwatch.vue.d.ts +0 -22
- package/dist/components/color-swatch/index.d.ts +0 -1
- package/dist/components/controls/DarkModeToggle.vue.d.ts +0 -32
- package/dist/components/controls/dark-mode-toggle.css +0 -1
- package/dist/components/controls/index.d.ts +0 -1
- package/dist/components/data-table/DataTablePagination.vue.d.ts +0 -13
- package/dist/components/dock/DockSection.vue.d.ts +0 -69
- package/dist/components/dock/DockStack.vue.d.ts +0 -73
- package/dist/components/dock/composables/dockMorphContext.d.ts +0 -91
- package/dist/components/dock/composables/useDockFisheye.d.ts +0 -24
- package/dist/components/dock/composables/useDockPopover.d.ts +0 -70
- package/dist/components/dock/styles/fisheye.css +0 -1
- package/dist/components/dock/styles/popover.css +0 -1
- package/dist/components/dock/styles/section.css +0 -1
- package/dist/components/focus-scope/FocusScope.vue.d.ts +0 -20
- package/dist/components/focus-scope/index.d.ts +0 -2
- package/dist/components/goo-filter/GooFilter.vue.d.ts +0 -22
- package/dist/components/goo-filter/index.d.ts +0 -1
- package/dist/components/icon-chip/IconChip.vue.d.ts +0 -4
- package/dist/components/icon-chip/index.d.ts +0 -2
- package/dist/components/icon-chip/styles.css +0 -1
- package/dist/components/icon-chip/types.d.ts +0 -92
- package/dist/components/icon-tooltip/IconTooltip.vue.d.ts +0 -16
- package/dist/components/icon-tooltip/index.d.ts +0 -1
- package/dist/components/instrument-chassis/ChassisDivider.vue.d.ts +0 -30
- package/dist/components/metric-badge/MetricBadge.vue.d.ts +0 -40
- package/dist/components/metric-badge/index.d.ts +0 -2
- package/dist/components/metric-cell/MetricCell.vue.d.ts +0 -108
- package/dist/components/metric-cell/index.d.ts +0 -2
- package/dist/components/metric-stack/MetricRow.vue.d.ts +0 -120
- package/dist/components/metric-stack/MetricStack.vue.d.ts +0 -92
- package/dist/components/metric-stack/index.d.ts +0 -4
- package/dist/components/notification/Notification.vue.d.ts +0 -16
- package/dist/components/notification/index.d.ts +0 -1
- package/dist/components/progress/ProgressDefault.vue.d.ts +0 -9
- package/dist/components/progress/ProgressGradient.vue.d.ts +0 -26
- package/dist/components/progress/ProgressLiquid.vue.d.ts +0 -22
- package/dist/components/progress/valueMarks.css +0 -1
- package/dist/components/spa-view/SpaView.vue.d.ts +0 -50
- package/dist/components/spa-view/index.d.ts +0 -2
- package/dist/components/split-chars/SplitChars.vue.d.ts +0 -53
- package/dist/components/split-chars/index.d.ts +0 -1
- package/dist/components/tabs/composables/useEyeglassLive.d.ts +0 -17
- package/dist/components/toggle/Toggle.vue.d.ts +0 -29
- package/dist/components/toggle/index.d.ts +0 -26
- package/dist/composables/glass/webgl/shaders/glass-refract.glsl.d.ts +0 -36
- package/dist/composables/motion/curves.d.ts +0 -48
- package/dist/composables/motion/gooBarbellGeometry.d.ts +0 -79
- package/dist/composables/motion/morphSignatures.d.ts +0 -88
- package/dist/composables/motion/suite.d.ts +0 -2
- package/dist/composables/motion/useBloomUp.d.ts +0 -97
- package/dist/composables/motion/useCharStagger.d.ts +0 -44
- package/dist/composables/motion/useElementMorph.d.ts +0 -107
- package/dist/composables/motion/useGooMorph.d.ts +0 -72
- package/dist/composables/motion/usePrioritizedTask.d.ts +0 -41
- package/dist/composables/motion/useStaggerReveal.d.ts +0 -52
- package/dist/composables/motion/useViewTransition.d.ts +0 -81
- package/dist/composables/virtual/index.d.ts +0 -4
- package/dist/composables/virtual/useVirtualSectionWindow.d.ts +0 -72
- package/dist/composables/virtual/useWindowedStore.d.ts +0 -43
- package/dist/composables/virtual/virtualSectionLayout.d.ts +0 -103
- package/dist/controls.d.ts +0 -1
- package/dist/controls.js +0 -83
- package/dist/data-table-DveMdgBM.js +0 -629
- package/dist/dialog-BzQxKrUr.js +0 -281
- package/dist/dockContext-4S9qP0Z4.js +0 -13
- package/dist/dropdown-menu-DORIA52F.js +0 -378
- package/dist/focus-scope-DUTKveod.js +0 -23
- package/dist/focus-scope.d.ts +0 -1
- package/dist/focus-scope.js +0 -2
- package/dist/icon-chip-BWuxz1-u.js +0 -57
- package/dist/icon-chip.d.ts +0 -1
- package/dist/icon-chip.js +0 -2
- package/dist/icon-tooltip-CO6rw0dZ.js +0 -25
- package/dist/icon-tooltip.d.ts +0 -1
- package/dist/icon-tooltip.js +0 -2
- package/dist/instrument-chassis-Cvstg4_U.js +0 -65
- package/dist/label-Cj38tJKG.js +0 -36
- package/dist/menuItemVariants-D6AOzzND.js +0 -36
- package/dist/metric-badge.d.ts +0 -1
- package/dist/metric-badge.js +0 -79
- package/dist/metric-cell.d.ts +0 -1
- package/dist/metric-cell.js +0 -61
- package/dist/metric-stack.d.ts +0 -1
- package/dist/metric-stack.js +0 -113
- package/dist/motion-curves.d.ts +0 -1
- package/dist/motion-curves.js +0 -146
- package/dist/notification-DVs7ODMg.js +0 -52
- package/dist/notification.d.ts +0 -1
- package/dist/notification.js +0 -2
- package/dist/number-field-PvkGedHk.js +0 -140
- package/dist/popover-WMgyRSyN.js +0 -256
- package/dist/progress-C-HHuFZy.js +0 -192
- package/dist/resolveCanvasColor-yarP5bdk.js +0 -93
- package/dist/select-BIv4R3Ir.js +0 -326
- package/dist/separator-CBU94kTM.js +0 -62
- package/dist/slider-Cc_qw6GA.js +0 -166
- package/dist/spa-view.d.ts +0 -1
- package/dist/spa-view.js +0 -46
- package/dist/springPresets-h5VKJQqG.js +0 -58
- package/dist/styles/glass/progress-rail.css +0 -1
- package/dist/switch-Boj4Ucn5.js +0 -49
- package/dist/toast-kAbchIN2.js +0 -281
- package/dist/toggle-group-BPchFsns.js +0 -178
- package/dist/tooltip-BmOQJzh0.js +0 -111
- package/dist/useControlSize-CFfOk8I-.js +0 -9
- package/dist/useDockCtaReceive-CK-RLASa.js +0 -257
- package/dist/useDocumentVisibility-YeBDGqtI.js +0 -17
- package/dist/useDragMorph-7ygF9O0m.js +0 -93
- package/dist/useGooMorph-D1F6QJlH.js +0 -349
- package/dist/useLeadTrail-BYu8dq4G.js +0 -74
- package/dist/useLiquidPress-BYcwwGQV.js +0 -68
- package/dist/useMotionAxis-DCCXMC-i.js +0 -20
- package/dist/usePointerVelocityField-BdvnO0py.js +0 -122
- package/dist/useRAFLoop-BtwQ9DyY.js +0 -109
- package/dist/useRoutePointer-BDNMFN73.js +0 -52
- package/dist/useScrollProgress-DZI4nf4v.js +0 -35
- package/dist/useSelectionGroup-LDzBdR1Y.js +0 -215
- package/dist/useSpringMount-C6-DBx4e.js +0 -71
- package/dist/useSpringPress-BypV_KO-.js +0 -36
- package/dist/useSurfaceAxis-DudiZVOR.js +0 -10
- package/dist/useTabRovingFocus-DkLYwo4L.js +0 -143
- package/dist/vReveal-DZfWl9XI.js +0 -10
- package/dist/vSpecular-CQFmLNzA.js +0 -68
- package/src/fonts/README.md +0 -124
- package/src/fonts/fira-code/OFL.txt +0 -93
- package/src/fonts/fira-code/fira-code-latin-ext.woff2 +0 -0
- package/src/fonts/fira-code/fira-code-latin.woff2 +0 -0
- package/src/fonts/plus-jakarta-sans/OFL.txt +0 -93
- package/src/fonts/plus-jakarta-sans/plus-jakarta-sans-latin-ext.woff2 +0 -0
- package/src/fonts/plus-jakarta-sans/plus-jakarta-sans-latin.woff2 +0 -0
- package/src/styles/accessibility.css +0 -48
- package/src/styles/animations.css +0 -468
- package/src/styles/draw-in.css +0 -89
- package/src/styles/fonts.css +0 -143
- package/src/styles/glass/a11y-fallback.css +0 -188
- package/src/styles/glass/accent-tone.css +0 -66
- package/src/styles/glass/control-surfaces.css +0 -171
- package/src/styles/glass/deep.css +0 -114
- package/src/styles/glass/defined.css +0 -88
- package/src/styles/glass/glass-atom.css +0 -247
- package/src/styles/glass/glass-capsule.css +0 -175
- package/src/styles/glass/glass-chip.css +0 -211
- package/src/styles/glass/grain-overlay.css +0 -79
- package/src/styles/glass/ladder-undershadow.css +0 -61
- package/src/styles/glass/ladder.css +0 -452
- package/src/styles/glass/liquid-enter.css +0 -240
- package/src/styles/glass/liquid-fill.css +0 -65
- package/src/styles/glass/material-roles.css +0 -18
- package/src/styles/glass/material.css +0 -500
- package/src/styles/glass/progress-rail.css +0 -78
- package/src/styles/glass/reveal.css +0 -333
- package/src/styles/glass/rim.css +0 -122
- package/src/styles/glass/squircle.css +0 -58
- package/src/styles/glass/surface-axis.css +0 -136
- package/src/styles/glass/surfaces-pager.css +0 -79
- package/src/styles/glass/surfaces.css +0 -434
- package/src/styles/glass-refract.css +0 -112
- package/src/styles/glass-specular-track.css +0 -74
- package/src/styles/glass.css +0 -110
- package/src/styles/index.css +0 -288
- package/src/styles/paper.css +0 -187
- package/src/styles/scroll-choreography.css +0 -294
- package/src/styles/scroll-chrome.css +0 -123
- package/src/styles/scroll-driven.css +0 -123
- package/src/styles/theme/bridges.css +0 -380
- package/src/styles/theme/dark.css +0 -7
- package/src/styles/theme/literals.css +0 -104
- package/src/styles/theme/radius.css +0 -148
- package/src/styles/theme.css +0 -33
- package/src/styles/tokens/color-radius.css +0 -308
- package/src/styles/tokens/dark-arm-glass.css +0 -55
- package/src/styles/tokens/dark-arm.css +0 -455
- package/src/styles/tokens/glass-deep.css +0 -126
- package/src/styles/tokens/glass-fx.css +0 -480
- package/src/styles/tokens/glass.css +0 -477
- package/src/styles/tokens/light-dark.css +0 -216
- package/src/styles/tokens/motion-registers.css +0 -93
- package/src/styles/tokens/offsets.css +0 -142
- package/src/styles/tokens/on-glass-fg.css +0 -39
- package/src/styles/tokens/property-regs-specular.css +0 -160
- package/src/styles/tokens/property-regs.css +0 -448
- package/src/styles/tokens/scale-paper.css +0 -495
- package/src/styles/tokens/scheme-motion.css +0 -425
- package/src/styles/tokens/scheme-spring.css +0 -282
- package/src/styles/tokens/scroll-tokens.css +0 -137
- package/src/styles/tokens/shadow.css +0 -206
- package/src/styles/tokens/sizing-config.css +0 -110
- package/src/styles/tokens/sizing.css +0 -505
- package/src/styles/tokens.css +0 -68
- package/src/styles/tokens.ts +0 -58
- package/src/styles/transitions.css +0 -228
- package/src/styles/typography/scale.css +0 -166
- package/src/styles/typography/semantic.css +0 -233
- package/src/styles/typography/utilities.css +0 -197
- package/src/styles/typography.css +0 -46
- package/src/styles/utilities/a11y-overrides.css +0 -184
- package/src/styles/utilities/base-misc.css +0 -307
- package/src/styles/utilities/base.css +0 -337
- package/src/styles/utilities/btn.css +0 -306
- package/src/styles/utilities/components.css +0 -337
- package/src/styles/utilities/metal.css +0 -272
- package/src/styles/utilities.css +0 -24
- package/src/styles/view-transition.css +0 -67
- package/src/styles/viz-reveal.css +0 -63
- /package/dist/{_plugin-vue_export-helper-C1je1s0u.js → _plugin-vue_export-helper-B3ysoDQm.js} +0 -0
- /package/dist/{compile-DK3Fri1B.js → compile-D7VYG3gi.js} +0 -0
- /package/dist/composables/glass/{webgl/shaders/procedural-color.glsl.d.ts → procedural/color.glsl.d.ts} +0 -0
- /package/dist/{components/aurora/constants/shaders/procedural-color.wgsl.d.ts → composables/glass/procedural/color.wgsl.d.ts} +0 -0
- /package/dist/composables/motion/{motionTempo.d.ts → core/motionTempo.d.ts} +0 -0
- /package/dist/composables/motion/{useIntersectionPause.d.ts → core/useIntersectionPause.d.ts} +0 -0
- /package/dist/composables/motion/{useRAFLoop.d.ts → core/useRAFLoop.d.ts} +0 -0
- /package/dist/composables/motion/{useYieldToMain.d.ts → core/useYieldToMain.d.ts} +0 -0
- /package/dist/composables/motion/{useAnimatedNumber.d.ts → number/useAnimatedNumber.d.ts} +0 -0
- /package/dist/composables/motion/{useAnimatedNumberMap.d.ts → number/useAnimatedNumberMap.d.ts} +0 -0
- /package/dist/composables/motion/{useCountup.d.ts → number/useCountup.d.ts} +0 -0
- /package/dist/composables/motion/{useRoutePointer.d.ts → pointer/useRoutePointer.d.ts} +0 -0
- /package/dist/composables/motion/{useTextHighlight.d.ts → reveal/useTextHighlight.d.ts} +0 -0
- /package/dist/composables/motion/{vReveal.d.ts → reveal/vReveal.d.ts} +0 -0
- /package/dist/composables/motion/{scrollReader.d.ts → scroll/scrollReader.d.ts} +0 -0
- /package/dist/composables/motion/{supportsCssTimeline.d.ts → scroll/supportsCssTimeline.d.ts} +0 -0
- /package/dist/composables/motion/{useScrollPin.d.ts → scroll/useScrollPin.d.ts} +0 -0
- /package/dist/composables/motion/{useScrollScene.d.ts → scroll/useScrollScene.d.ts} +0 -0
- /package/dist/composables/motion/{useScrollTrigger.d.ts → scroll/useScrollTrigger.d.ts} +0 -0
- /package/dist/composables/motion/{useSpringPress.d.ts → spring/useSpringPress.d.ts} +0 -0
- /package/dist/{createContext-FU0n5MGK.js → createContext-BhkE9mLH.js} +0 -0
- /package/dist/{dark-DIH-blY1.js → dark-z_P5QwqI.js} +0 -0
- /package/dist/{motionTempo-CMS5b0Vu.js → motionTempo-tscp92Nm.js} +0 -0
- /package/dist/{prng-Dz2_9RJu.js → prng-2uS6J_A1.js} +0 -0
- /package/dist/{rendererStatus-C2-zC2Q-.js → rendererStatus-BxUlBLVy.js} +0 -0
- /package/dist/{useDragVelocity-CbMZEBaC.js → useDragVelocity-6ONX0sr0.js} +0 -0
- /package/dist/{useFuzzySearch-BOgep7RE.js → useFuzzySearch-CUnZknpm.js} +0 -0
- /package/dist/{useResizeObserver-BcUTquV7.js → useResizeObserver-CdUlm2QZ.js} +0 -0
- /package/dist/{useResolveTokenColor-C07e-qaT.js → useResolveTokenColor-B2FfJnd9.js} +0 -0
- /package/dist/{useTimer-D8koDvJS.js → useTimer-C3yfti4C.js} +0 -0
- /package/dist/{useUserInvalidAria-Cr4nR3tu.js → useUserInvalidAria-0GNrddMX.js} +0 -0
- /package/dist/{valueDomain-B8L04u3U.js → valueDomain-SbVzoHMH.js} +0 -0
- /package/dist/{writeVelocityWeight-D_AcvTsE.js → writeVelocityWeight-DoGOCW3e.js} +0 -0
|
@@ -1,96 +1,17 @@
|
|
|
1
1
|
import { type Ref } from "vue";
|
|
2
|
-
/**
|
|
3
|
-
* BD.W-DOCK-CORE (the width-seizure cure) — the dock morph SIZE measure.
|
|
4
|
-
*
|
|
5
|
-
* THE BUG THIS RETIRES (the year-old seizure): the prior pipeline measured a
|
|
6
|
-
* per-swap `from/to` FLIP ratio and drove the visible size by
|
|
7
|
-
* `--dock-root-scale = max(ratio + (1−ratio)·t, 0.06)` — a FLOOR with NO CEILING.
|
|
8
|
-
* When the morph target measured small (a degenerate `to` racing the content
|
|
9
|
-
* layout), `ratio = from/max(to,1px)` ran to ~56 → `scaleX(56)` = a ~2451px
|
|
10
|
-
* detonation on collapse / an inversion at the spring overshoot peak. The
|
|
11
|
-
* `transform-origin: center` kept the centroid clean (`cxRange 0`), which is
|
|
12
|
-
* exactly why every prior judge measuring the centroid PASSED while the WIDTH
|
|
13
|
-
* detonated. The whole measure-and-arm FLIP machinery
|
|
14
|
-
* (`measureAndArmMorph`/`seatTargetSync`/`rebaseSiblingSpans`/
|
|
15
|
-
* `forceNestedMaxContent`/`nestedTargetsWithin`/`measureTo`/`armRootMorphSpan`/
|
|
16
|
-
* `clearRootMorphSpan`/`morphMinFloorPx`/the per-target generation gating) is
|
|
17
|
-
* DELETED — clean break, no legacy, no floor that masks a bad measurement.
|
|
18
|
-
*
|
|
19
|
-
* THE CURE — a ratio-FREE measure-ONCE convex blend. The dock measures its two
|
|
20
|
-
* KNOWN footprints ONCE per content change (a `ResizeObserver`, NOT a per-swap
|
|
21
|
-
* rAF race): `--dock-expanded-px` (the expanded content width, read behind the
|
|
22
|
-
* clip aperture) and `--dock-collapsed-px` (the collapsed summary box). The
|
|
23
|
-
* visible size is the convex blend `--dock-live = collapsed + (expanded −
|
|
24
|
-
* collapsed)·--dock-morph-t` and `--dock-size-scale = --dock-live / expanded`
|
|
25
|
-
* (layers.css). A convex blend of two POSITIVE endpoints can NEVER exceed the
|
|
26
|
-
* larger nor invert below the smaller — BOUNDED by construction, no ratio, no
|
|
27
|
-
* `scaleX` explosion, regardless of spring overshoot (the `clamp(0,t,1)` caps the
|
|
28
|
-
* size term; the >1 excursion routes to the orthogonal punch channel).
|
|
29
|
-
*
|
|
30
|
-
* THE FRESHNESS GUARD (challenge 3·R2): a measure-ONCE endpoint can still be read
|
|
31
|
-
* stale — before `fonts.ready`, before async icon SVGs lay out, on a
|
|
32
|
-
* `display:none`→0 route swap, or on a `content-visibility:auto` parent (the RO
|
|
33
|
-
* fires 0). A 0 expanded would give `collapsed/0 = ∞`. So FLOOR `--dock-expanded-px`
|
|
34
|
-
* at `max(measured, --dock-collapsed-px)` and re-measure on `fonts.ready` + the
|
|
35
|
-
* FIRST non-zero RO callback + visibility-enter. This is NOT the deleted magic
|
|
36
|
-
* floor (which masked a per-frame measurement); it is a one-shot endpoint
|
|
37
|
-
* sanity bound on a value that is otherwise stable across the whole morph.
|
|
38
|
-
*
|
|
39
|
-
* `DOCK_SPRING` is byte-fenced — it lives in `../constants`, never touched here.
|
|
40
|
-
*/
|
|
41
|
-
export declare function dimOf(axis: "horizontal" | "vertical"): "width" | "height";
|
|
42
2
|
export declare function getSize(el: HTMLElement, axis: "horizontal" | "vertical"): number;
|
|
43
3
|
export interface UseDockExpandedSizeOptions {
|
|
44
|
-
/** The `.glass-dock` root the `--dock-expanded-px`/`--dock-collapsed-px` write to. */
|
|
45
4
|
rootEl: Ref<HTMLElement | null>;
|
|
46
|
-
/**
|
|
47
|
-
* The content element whose intrinsic morph-axis span is observed for size
|
|
48
|
-
* changes (the active full-pane container — `.dock-layers`). Its resizes are the
|
|
49
|
-
* RO trigger; the ENDPOINTS are read off the ROOT box (content + chrome), keyed
|
|
50
|
-
* by the dock's at-rest expanded/collapsed state.
|
|
51
|
-
*/
|
|
52
5
|
contentEl: Ref<HTMLElement | null>;
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
*/
|
|
6
|
+
expandedEl: Ref<HTMLElement | null>;
|
|
7
|
+
collapsedEl: Ref<HTMLElement | null>;
|
|
56
8
|
axis: Ref<"horizontal" | "vertical">;
|
|
57
|
-
/**
|
|
58
|
-
* Whether the dock is currently in its EXPANDED visual state (a `Ref<boolean>`).
|
|
59
|
-
* The endpoint captured at rest is keyed off this: at rest expanded → the root
|
|
60
|
-
* box is the `--dock-expanded-px` endpoint; at rest collapsed → the
|
|
61
|
-
* `--dock-collapsed-px` endpoint. (A reactive read, so a state flip re-captures.)
|
|
62
|
-
*/
|
|
63
9
|
expanded: Ref<boolean>;
|
|
64
10
|
}
|
|
65
|
-
export interface DockMorphMeasureFailure {
|
|
66
|
-
readonly code: "invalid-morph-min";
|
|
67
|
-
readonly token: string;
|
|
68
|
-
}
|
|
69
|
-
export interface UseDockExpandedSizeReturn {
|
|
70
|
-
/** The single fail-closed state for an unreadable semantic geometry token. */
|
|
71
|
-
failure: Readonly<Ref<DockMorphMeasureFailure | null>>;
|
|
72
|
-
}
|
|
73
|
-
/** Resolve the inherited semantic token through CSS itself, including max()/rem/var(). */
|
|
74
|
-
export declare function resolveDockMorphMin(root: HTMLElement): number | null;
|
|
75
11
|
/**
|
|
76
|
-
*
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
*
|
|
80
|
-
* must be the ROOT's OWN expanded/collapsed footprints — NOT the bare content span
|
|
81
|
-
* (which omits the padding/min-width chrome). The endpoints are captured at REST
|
|
82
|
-
* (when `[data-morphing]` is OFF): the dock's settled root box in its current
|
|
83
|
-
* expanded/collapsed state IS that state's endpoint. A `ResizeObserver` on the
|
|
84
|
-
* content re-captures the CURRENT state's endpoint whenever the content reflows
|
|
85
|
-
* (more controls, a font swap), so the blend stays fresh — but it never reads the
|
|
86
|
-
* box MID-MORPH (the scaled box would feed back a degenerate endpoint, the seizure's
|
|
87
|
-
* cousin). The expanded endpoint is FLOORED at `max(captured, collapsed)` — the
|
|
88
|
-
* freshness guard against a 0/degenerate read giving `collapsed/0 = ∞`.
|
|
89
|
-
*
|
|
90
|
-
* The collapsed endpoint starts at the resolved `--dock-morph-min` icon-square floor
|
|
91
|
-
* and is refined to the real collapsed root box the first time the dock rests
|
|
92
|
-
* collapsed; the expanded endpoint is captured the first (and every) time it rests
|
|
93
|
-
* expanded. So the FIRST morph from a freshly-mounted expanded dock already has a
|
|
94
|
-
* real expanded endpoint + a sane collapsed floor — bounded by construction.
|
|
12
|
+
* Measure the dock's two rendered pane compositions. The inactive pane remains
|
|
13
|
+
* laid out (visibility, never display, hides it), so the first morph can derive
|
|
14
|
+
* both endpoints from real content—coarse controls bring their own 44px floor;
|
|
15
|
+
* non-interactive visuals receive no invented one.
|
|
95
16
|
*/
|
|
96
|
-
export declare function useDockExpandedSize(options: UseDockExpandedSizeOptions):
|
|
17
|
+
export declare function useDockExpandedSize(options: UseDockExpandedSizeOptions): void;
|
|
@@ -7,4 +7,4 @@ export type { UseDockHoldOptions, UseDockHoldReturn } from "./useDockHold";
|
|
|
7
7
|
export { isTeleportedTarget } from "./isTeleportedTarget";
|
|
8
8
|
export { provideDockContext, useDockContext, useOptionalDockContext, DOCK_CONTEXT_KEY, type DockContext, type DockOrientation, } from "./dockContext";
|
|
9
9
|
export { provideDockCrossfadeContext, useDockCrossfadeContext, useOptionalDockCrossfadeContext, DOCK_CROSSFADE_KEY, type DockFaceDescriptor, type DockFaceRegistration, type DockCrossfadeContext, } from "./dockCrossfadeContext";
|
|
10
|
-
export { useDockMorphOrchestrator,
|
|
10
|
+
export { useDockMorphOrchestrator, type UseDockMorphOrchestratorOptions, type UseDockMorphOrchestratorReturn, } from "./useDockMorph";
|
|
@@ -18,7 +18,7 @@ export interface UseDockClickIntegrityOptions {
|
|
|
18
18
|
visualExpanded: Ref<boolean>;
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
21
|
-
* The dock click-integrity guard
|
|
21
|
+
* The dock click-integrity guard. Returns the three capture-phase handlers
|
|
22
22
|
* the GlassDock SFC wires onto its root. The guard is a pure DOM-timing concern: it
|
|
23
23
|
* holds the press-time element identity + the settle-window deadline and decides, on
|
|
24
24
|
* the click, whether the click landed on the SAME control it was aimed at. Owns its
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ComputedRef } from "vue";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* Host-native dock hold.
|
|
4
4
|
*
|
|
5
5
|
* `keepDockOpen` is a FIRST-CLASS, synchronous morph-state input to the dock's
|
|
6
6
|
* one state machine: while a continuous pointer/touch gesture is live on a
|
|
@@ -17,9 +17,8 @@ import type { ComputedRef } from "vue";
|
|
|
17
17
|
* Slot/forwardRef boundary — vue-tsc + units pass, only a real drag catches it
|
|
18
18
|
* (the canonical binding-verification class, `feedback_glass_ui_binding_*`). A
|
|
19
19
|
* native `addEventListener` on the RESOLVED host element is immune: the event
|
|
20
|
-
* always reaches the DOM node the user actually presses. This is
|
|
21
|
-
*
|
|
22
|
-
* over a reka `dragging`-ref subscription, which reka does not publicly expose
|
|
20
|
+
* always reaches the DOM node the user actually presses. This host-native behavior is
|
|
21
|
+
* preferable to a Reka `dragging`-ref subscription, which Reka does not publicly expose
|
|
23
22
|
* and which would re-introduce the same forwarding fragility).
|
|
24
23
|
*
|
|
25
24
|
* The hold is INSTANT-ON (Apple "Building Fluid Interfaces", facet 5): the first
|
|
@@ -34,7 +33,7 @@ import type { ComputedRef } from "vue";
|
|
|
34
33
|
* hold path, no parallel `touchGate` watch).
|
|
35
34
|
*
|
|
36
35
|
* DI: consumes the EXISTING typed `DockContext` via `useOptionalDockContext()`
|
|
37
|
-
*
|
|
36
|
+
* through the `keepOpen` and `release` pair. A control
|
|
38
37
|
* rendered OUTSIDE a `<GlassDock>` gets the befitting-silent default (no dock) —
|
|
39
38
|
* every hook is a no-op, a primitive may legitimately render outside a dock.
|
|
40
39
|
*/
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { Ref } from "vue";
|
|
2
|
+
/**
|
|
3
|
+
* The dock collapse/expand morph has one job: project the current outer face
|
|
4
|
+
* onto the shared `--dock-morph-t` spring. Controlled face swaps belong to
|
|
5
|
+
* `DockCrossfade`; they do not register with, or resize, the dock shell.
|
|
6
|
+
*/
|
|
7
|
+
export interface UseDockMorphOrchestratorOptions {
|
|
8
|
+
/** The `.glass-dock` root carrying the shared scalar. */
|
|
9
|
+
rootEl: Ref<HTMLElement | null>;
|
|
10
|
+
/** The outer collapsed/expanded face id. */
|
|
11
|
+
outerActiveLayer: Ref<string>;
|
|
12
|
+
/** Notifies the shell when the spring arms and settles. */
|
|
13
|
+
onMorphActiveChange?: (active: boolean) => void;
|
|
14
|
+
}
|
|
15
|
+
export interface UseDockMorphOrchestratorReturn {
|
|
16
|
+
/** The outer face that currently owns layout and interaction. */
|
|
17
|
+
outerCurrentLayer: Readonly<Ref<string>>;
|
|
18
|
+
/** The face fading out, or null after settle. */
|
|
19
|
+
outerLeavingLayer: Readonly<Ref<string | null>>;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Drive the outer collapsed/expanded pair from the sole dock spring. Mid-flight
|
|
23
|
+
* reversals complement both position and velocity so the painted trajectory is
|
|
24
|
+
* continuous; reduced motion seats the same endpoint immediately.
|
|
25
|
+
*/
|
|
26
|
+
export declare function useDockMorphOrchestrator(options: UseDockMorphOrchestratorOptions): UseDockMorphOrchestratorReturn;
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { type Ref } from "vue";
|
|
2
2
|
/**
|
|
3
|
-
* useDockOverflowFit
|
|
4
|
-
*
|
|
5
|
-
* container-query / measured branch"): it toggles `[data-dock-overflow]` on the dock root
|
|
3
|
+
* useDockOverflowFit resolves fits-vs-scrollable mode for the dock's native scroll
|
|
4
|
+
* track. It toggles `[data-dock-overflow]` on the dock root
|
|
6
5
|
* when content exceeds the horizontal full-layer port or vertical root scroll host.
|
|
7
6
|
* The overflow.css scroll track + FadingScroll edge mask engage ONLY under that attr, so
|
|
8
|
-
* at rest (fits) the mask is `none
|
|
9
|
-
* (fisheye.css gates on `:not([data-dock-overflow])`, the exclusive-mode ruling).
|
|
7
|
+
* at rest (fits) the mask is `none`.
|
|
10
8
|
*
|
|
11
|
-
*
|
|
9
|
+
* The measure is resize- and content-driven, with no scroll listener (a
|
|
12
10
|
* `ResizeObserver` on the dock + the port, plus a narrowly filtered `MutationObserver`
|
|
13
11
|
* on dock content). It never listens to `scroll` — the traveling indicator (`useSelectionIndicator`)
|
|
14
12
|
* lives inside the scroll port and travels WITH scroll in content coordinates, needing no
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type MaybeRefOrGetter, type Ref } from "vue";
|
|
2
2
|
import type { UseDockStateReturn } from "./useDockState";
|
|
3
3
|
import { type FuzzySearchState, type SearchableItem, type SearchResult } from "../../search/composables";
|
|
4
|
-
import { type UseScrollChromeReturn } from "../../../composables/motion/useScrollChrome";
|
|
4
|
+
import { type UseScrollChromeReturn } from "../../../composables/motion/scroll/useScrollChrome";
|
|
5
5
|
export interface UseDockSearchOptions<T extends SearchableItem = SearchableItem> {
|
|
6
6
|
/** Composes the existing dock state machine (no fork) — `armSearch`/`disarmSearch`
|
|
7
7
|
ride its `onClickCollapsed`/`keepOpen`/`release`. */
|
|
@@ -34,19 +34,19 @@ export interface UseDockSearchOptions<T extends SearchableItem = SearchableItem>
|
|
|
34
34
|
/** The dock element the collapse-on-scroll writes `--chrome-collapse-t` onto. */
|
|
35
35
|
chromeRef?: MaybeRefOrGetter<HTMLElement | null>;
|
|
36
36
|
/**
|
|
37
|
-
* Result-select hook — wires the ToC subsume: `ensureTargetWindow(id)` (
|
|
38
|
-
*
|
|
37
|
+
* Result-select hook — wires the ToC subsume: `ensureTargetWindow(id)` (seat the
|
|
38
|
+
* target's bounded render window) + `scrollTo(id)` (the rAF-retry scroll-to-and-land).
|
|
39
39
|
* The dock owns the gesture; the consumer passes the two leaves' bound functions.
|
|
40
40
|
*/
|
|
41
41
|
onResultSelect?: (result: SearchResult<T>) => void;
|
|
42
42
|
/**
|
|
43
|
-
*
|
|
44
|
-
*
|
|
43
|
+
* Consumer-provided target-window step. Called BEFORE `scrollTo` on result
|
|
44
|
+
* selection so a windowed target can render before the scroll lands.
|
|
45
45
|
*/
|
|
46
46
|
ensureTargetWindow?: (id: string) => void;
|
|
47
47
|
/**
|
|
48
48
|
* The ToC scroll-to (composed `useScrollTo.scrollTo`) — the rAF-retry scroll-to-id.
|
|
49
|
-
* Called AFTER the
|
|
49
|
+
* Called AFTER the target-window step on a result-select.
|
|
50
50
|
*/
|
|
51
51
|
scrollTo?: (id: string) => void;
|
|
52
52
|
}
|
|
@@ -71,9 +71,9 @@ export interface UseDockSearchReturn<T extends SearchableItem = SearchableItem>
|
|
|
71
71
|
* `useScrollChrome`); the `armSearch`/`disarmSearch`/`autocompleteText`/
|
|
72
72
|
* `acceptAutocomplete` surface; the async `onSearch` adapter; the `onResultSelect` →
|
|
73
73
|
* `ensureTargetWindow` + `scrollTo` wire. Does NOT edit the morph engine
|
|
74
|
-
* (`
|
|
74
|
+
* (`useDockMorph`/`DOCK_SPRING` byte-untouched — the box-inviolate fence); the
|
|
75
75
|
* pill→field morph is the dock's OWN `--dock-morph-t`/`--dock-t` plate glide, and the
|
|
76
|
-
* results
|
|
76
|
+
* results surface is consumer-authored and can be portaled independently of the dock.
|
|
77
77
|
*
|
|
78
78
|
* @example
|
|
79
79
|
* ```ts
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { type ComputedRef } from "vue";
|
|
2
2
|
export type DockSize = "sm" | "md" | "lg" | "xl";
|
|
3
3
|
export type DockBackdropMode = "live" | "static";
|
|
4
|
+
export type DockInteraction = "auto" | "manual";
|
|
4
5
|
/**
|
|
5
|
-
* The
|
|
6
|
-
*
|
|
6
|
+
* The GlassDock prop shape. Every dock—horizontal or vertical—reads the same
|
|
7
|
+
* surface; orientation
|
|
7
8
|
* is the single layout axis and the collapse surface applies on both.
|
|
8
9
|
*/
|
|
9
10
|
export interface DockProps {
|
|
@@ -16,37 +17,29 @@ export interface DockProps {
|
|
|
16
17
|
*/
|
|
17
18
|
backdropMode?: DockBackdropMode;
|
|
18
19
|
/**
|
|
19
|
-
* Never collapse
|
|
20
|
+
* Never collapse: render permanently expanded, the single opt-out of the
|
|
20
21
|
* collapse↔expand machinery. Default `false` (every dock is collapsible).
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
* `alwaysExpanded` BY CONTRACT (a 2D tile panel does not read as a collapsible
|
|
25
|
-
* pill). A vertical nav column that wants the static always-expanded look opts
|
|
26
|
-
* in via this prop. (A positive `collapsible` boolean was considered and
|
|
27
|
-
* rejected: Vue coerces an absent boolean prop to `false`, so a `collapsible`
|
|
28
|
-
* defaulting to `true` would need a `withDefaults` second default-path; the
|
|
29
|
-
* existing `alwaysExpanded` opt-out — which correctly defaults `false` — is the
|
|
30
|
-
* one knob, no Vue boolean-trap.)
|
|
22
|
+
* A vertical dock morphs its height too. A `layout="grid"` dock is
|
|
23
|
+
* always expanded by contract (a 2D tile panel does not read as a collapsible
|
|
24
|
+
* pill). A vertical navigation column can opt into the static expanded posture.
|
|
31
25
|
*/
|
|
32
26
|
alwaysExpanded?: boolean;
|
|
33
27
|
/**
|
|
34
28
|
* Corner treatment.
|
|
35
29
|
* `"pill"` — the stadium silhouette (default).
|
|
36
30
|
* `"rounded"` — a finite rounded radius (`--radius-xl`).
|
|
37
|
-
* `"card"` —
|
|
31
|
+
* `"card"` — a finite concentric big-dock shell
|
|
38
32
|
* radius (`--dock-card-radius`, default `--radius-3xl`)
|
|
39
33
|
* ABOVE 2xl, below pill — does NOT collapse to a stadium.
|
|
40
34
|
* Collapsed it returns to a pill; the pill↔card swap
|
|
41
|
-
* morphs on the `--dock-motion-resize` spring.
|
|
35
|
+
* morphs on the `--dock-motion-resize` spring. The
|
|
42
36
|
* squircle policy applies `corner-shape:
|
|
43
37
|
* var(--corner-shape-bigdock)` here under `@supports
|
|
44
38
|
* (corner-shape: superellipse(2))` — the big-dock is the ONE
|
|
45
39
|
* surface where the superellipse reads (cards/pills stay
|
|
46
40
|
* round); the border-radius arc is the cross-engine contract.
|
|
47
41
|
*
|
|
48
|
-
* Paints on
|
|
49
|
-
* variant-gated; a vertical dock reads `shape="rounded"` for the tool-palette
|
|
42
|
+
* Paints on both orientations: a vertical dock reads `shape="rounded"` for the tool-palette
|
|
50
43
|
* look, a horizontal dock reads `shape="card"` for the big-dock shell).
|
|
51
44
|
*/
|
|
52
45
|
shape?: "pill" | "rounded" | "card";
|
|
@@ -54,7 +47,7 @@ export interface DockProps {
|
|
|
54
47
|
* Layout axis of the dock. `"horizontal"` (default) lays items out
|
|
55
48
|
* left-to-right and animates `width`; `"vertical"` lays items out
|
|
56
49
|
* top-to-bottom and animates `height`. This is the SINGLE layout axis — there
|
|
57
|
-
* is no `variant` second-way to express "vertical"
|
|
50
|
+
* is no `variant` second-way to express "vertical".
|
|
58
51
|
*/
|
|
59
52
|
orientation?: "horizontal" | "vertical";
|
|
60
53
|
/**
|
|
@@ -66,9 +59,7 @@ export interface DockProps {
|
|
|
66
59
|
* Overflow strategy when the expanded content exceeds the dock's
|
|
67
60
|
* axis cap (`--dock-max-inline-size` horizontally,
|
|
68
61
|
* `--dock-max-block-size` vertically). The ONE knob governing every
|
|
69
|
-
* overflow
|
|
70
|
-
* prior `wrap` boolean + `overflow` pair + `containerName` clip-lift,
|
|
71
|
-
* which all touched overflow divergently).
|
|
62
|
+
* overflow behavior.
|
|
72
63
|
* `"grow"` — content grows to fit then overflows visibly past
|
|
73
64
|
* the cap (the default; nothing clips or scrolls).
|
|
74
65
|
* `"wrap"` — expanded content wraps to multiple rows via CONTENT-DRIVEN
|
|
@@ -84,8 +75,7 @@ export interface DockProps {
|
|
|
84
75
|
* `.dock-overflow-wrap` class is not emitted for a vertical
|
|
85
76
|
* orientation.
|
|
86
77
|
*
|
|
87
|
-
*
|
|
88
|
-
* no alias). A capped axis is INTRINSICALLY a scroll axis: a horizontal
|
|
78
|
+
* A capped axis is intrinsically a scroll axis: a horizontal
|
|
89
79
|
* dock's inline axis reads `.dock-scroll-x` unconditionally (the CSS
|
|
90
80
|
* `overflow-x: auto` scrolls ONLY when the row exceeds
|
|
91
81
|
* `--dock-max-inline-size`; under the cap nothing scrolls), and a vertical
|
|
@@ -99,27 +89,45 @@ export interface DockProps {
|
|
|
99
89
|
* subject (`container-type: inline-size; container-name: <value>`) so
|
|
100
90
|
* descendants can query the named container via `@container <value>
|
|
101
91
|
* (...)` rules. ORTHOGONAL to the `overflow` clip: opting into a
|
|
102
|
-
* container subject does
|
|
103
|
-
*
|
|
104
|
-
* `overflow="wrap"` to allow multi-line content).
|
|
92
|
+
* container subject does not change the dock's clip shell; use
|
|
93
|
+
* `overflow="wrap"` for multi-line content.
|
|
105
94
|
*
|
|
106
|
-
*
|
|
95
|
+
* Always-expanded only: `container-type: inline-size`
|
|
107
96
|
* clamps the box to its contained intrinsic size, so on a COLLAPSIBLE
|
|
108
97
|
* dock the collapse↔expand FLIP measures collapsed→collapsed and the
|
|
109
98
|
* morph FREEZES. A collapsible dock that needs deterministic targeting
|
|
110
99
|
* uses a plain `data-testid` (no layout side-effect).
|
|
111
100
|
*/
|
|
112
101
|
containerName?: string;
|
|
102
|
+
/**
|
|
103
|
+
* Opt this dock into a consumer-owned shared-element View Transition. Leave
|
|
104
|
+
* unset for ordinary route transitions so the dock remains in the root
|
|
105
|
+
* snapshot rather than becoming a separate backdrop-filter snapshot.
|
|
106
|
+
*/
|
|
107
|
+
viewTransitionName?: string;
|
|
113
108
|
/**
|
|
114
109
|
* Idle-collapse delay in ms (default 2000). Inert on an always-expanded dock.
|
|
115
110
|
*/
|
|
116
111
|
collapseDelay?: number;
|
|
117
112
|
/**
|
|
118
113
|
* Start in the collapsed state (default true). Applies on BOTH orientations
|
|
119
|
-
*
|
|
120
|
-
* axis open too). Inert on an always-expanded dock.
|
|
114
|
+
* and a vertical dock morphs its block axis open too. Inert on an always-expanded dock.
|
|
121
115
|
*/
|
|
122
116
|
startCollapsed?: boolean;
|
|
117
|
+
/**
|
|
118
|
+
* Posture ownership on a COLLAPSIBLE dock.
|
|
119
|
+
* `"auto"` (default) — the built-in FSM owns posture.
|
|
120
|
+
* `"manual"` — the consumer owns posture. Every internal environmental writer
|
|
121
|
+
* (hover, focus, idle timer, outside-click, collapsed-tap, touch)
|
|
122
|
+
* is suppressed at BOTH poles; only `expand()`/`collapse()` write.
|
|
123
|
+
* Mount pole from `startCollapsed`. Read posture via `expanded`.
|
|
124
|
+
* a11y: the consumer MUST author a focusable disclosure in a
|
|
125
|
+
* never-inert slot (`#persistent`/`#collapsed`) — glass does not
|
|
126
|
+
* auto-expand on focus in manual and provides no fallback.
|
|
127
|
+
* Resolved to `"auto"` on an always-expanded dock (that pole is force-pinned;
|
|
128
|
+
* interaction is meaningless there — no dead combination reaches the FSM).
|
|
129
|
+
*/
|
|
130
|
+
interaction?: DockInteraction;
|
|
123
131
|
/**
|
|
124
132
|
* In-cap arrangement. `"linear"` (default) lays the active layer out as a
|
|
125
133
|
* linear row/column. `"grid"` makes the active layer a self-wrapping tile
|
|
@@ -135,11 +143,9 @@ export interface DockProps {
|
|
|
135
143
|
*/
|
|
136
144
|
layout?: "linear" | "grid";
|
|
137
145
|
/**
|
|
138
|
-
*
|
|
139
|
-
*
|
|
140
|
-
*
|
|
141
|
-
* surface most often over a live/bright backdrop). It REFINES the floor (the
|
|
142
|
-
* unconditional self-engage + the declarative bucket stay the guarantee); a
|
|
146
|
+
* The sampled-luminance observer dynamically refines the declarative bright-
|
|
147
|
+
* backdrop tint. Default `true` because docks commonly sit over live fields.
|
|
148
|
+
* It refines the material floor; a
|
|
143
149
|
* dark-substrate consumer opts out with `:auto-luminance="false"` (or
|
|
144
150
|
* `--glass-tint-strength: 0%` on the dock). The observer is rAF-throttled ≤ 4 Hz,
|
|
145
151
|
* IntersectionObserver-gated, and parks under `prefers-reduced-motion: reduce`.
|
|
@@ -148,19 +154,15 @@ export interface DockProps {
|
|
|
148
154
|
/**
|
|
149
155
|
* The KNOWN background-layer canvas the dock floats over (an aurora/blob
|
|
150
156
|
* `<canvas>`) — an element, a getter, or a CSS selector. When present, the
|
|
151
|
-
* observer downsamples it under the dock's box
|
|
157
|
+
* observer downsamples it under the dock's box after settling (the animated-backdrop
|
|
152
158
|
* case); absent, it stack-walks the painted page background (the static case).
|
|
153
159
|
*/
|
|
154
160
|
backgroundCanvas?: HTMLCanvasElement | (() => HTMLCanvasElement | null) | string | null;
|
|
155
161
|
/**
|
|
156
|
-
*
|
|
157
|
-
*
|
|
158
|
-
* `
|
|
159
|
-
*
|
|
160
|
-
* consumer composes `useDockSearch` (the gesture/shrink/dropdown seam) and slots
|
|
161
|
-
* its search field + fuzzy dropdown there. The pill→field morph is the dock's OWN
|
|
162
|
-
* `--dock-morph-t` glide (box-inviolate — no second engine). A non-search dock is
|
|
163
|
-
* byte-identical to HEAD (the slot + the data-attr are present only when authored).
|
|
162
|
+
* Native dynamic-search mode. Default `false`. When enabled, the dock stamps
|
|
163
|
+
* `[data-search]` and renders `#search` inside the existing morph aperture. The
|
|
164
|
+
* consumer composes `useDockSearch` and supplies its field and result menu. The
|
|
165
|
+
* dock's `--dock-morph-t` remains the sole pill-to-field motion scalar.
|
|
164
166
|
*/
|
|
165
167
|
search?: boolean;
|
|
166
168
|
}
|
|
@@ -169,6 +171,7 @@ export interface DockShellProps {
|
|
|
169
171
|
containerStyle: ComputedRef<Record<string, string> | undefined>;
|
|
170
172
|
collapseDelay: ComputedRef<number>;
|
|
171
173
|
startCollapsed: ComputedRef<boolean>;
|
|
174
|
+
interaction: ComputedRef<DockInteraction>;
|
|
172
175
|
layoutValue: ComputedRef<"linear" | "grid">;
|
|
173
176
|
shape: ComputedRef<"pill" | "rounded" | "card">;
|
|
174
177
|
orientation: ComputedRef<"horizontal" | "vertical">;
|
|
@@ -1,16 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* the ONE `SpringProgress` owner for the dock band.
|
|
3
3
|
*
|
|
4
|
-
* The dock
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* BI.W-DOCK-FOLD, counted by W-DOCK-SPRING-UNIFY SU1) — copies of the
|
|
9
|
-
* identical iOS interruptible-physics dance (create-carrying-prior-velocity →
|
|
10
|
-
* play the glide writing the scalar → self-dispose on settle → PRM-jump). This
|
|
11
|
-
* factory owns that dance ONCE. A consumer supplies the `(response, ζ)` pair +
|
|
12
|
-
* its per-frame writer; the spring construction, the velocity-continuous
|
|
13
|
-
* re-base, and the teardown live here — the sole `new SpringProgress` site.
|
|
4
|
+
* The outer dock morph and controlled face crossfade share this one spring
|
|
5
|
+
* factory instead of duplicating the interruptible-physics lifecycle. A consumer
|
|
6
|
+
* supplies the `(response, ζ)` pair and per-frame writer; construction, velocity-
|
|
7
|
+
* continuous re-base, and teardown live here — the sole `new SpringProgress` site.
|
|
14
8
|
*
|
|
15
9
|
* `SpringProgress` owns its own rAF via `.play(onFrame)` and carries no static
|
|
16
10
|
* value.js edge, so this leaf never imports `AnimationGroup`/`./engine`. The
|
|
@@ -37,6 +31,8 @@ export interface DockSpringPlayOptions {
|
|
|
37
31
|
* `|velocity|`). Called once per frame while the glide runs.
|
|
38
32
|
*/
|
|
39
33
|
onFrame: (value: number, velocity: number) => void;
|
|
34
|
+
/** Coordinate transform applied when carrying a live episode's velocity. */
|
|
35
|
+
inheritVelocityScale?: number;
|
|
40
36
|
/** Fired ONCE on settle, immediately BEFORE the self-dispose. */
|
|
41
37
|
onSettle?: () => void;
|
|
42
38
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ComputedRef, Ref } from "vue";
|
|
2
|
+
import type { DockInteraction } from "./useDockShellProps";
|
|
2
3
|
export interface UseDockStateOptions {
|
|
3
4
|
/** Delay before auto-collapse after mouse leaves (ms) */
|
|
4
5
|
collapseDelay?: number;
|
|
@@ -6,6 +7,15 @@ export interface UseDockStateOptions {
|
|
|
6
7
|
rootEl: Ref<HTMLElement | null>;
|
|
7
8
|
/** Disable collapse behavior and keep the dock expanded. */
|
|
8
9
|
alwaysExpanded?: Ref<boolean> | boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Posture ownership. `"auto"` (default) runs the built-in FSM; `"manual"`
|
|
12
|
+
* suppresses every environmental writer (hover, focus, idle timer,
|
|
13
|
+
* outside-click, collapsed-tap) at BOTH poles, leaving only `expand()` /
|
|
14
|
+
* `collapse()` operative — the consumer owns posture.
|
|
15
|
+
*/
|
|
16
|
+
interaction?: Ref<DockInteraction> | DockInteraction;
|
|
17
|
+
/** Mount-only posture for a collapsible dock. */
|
|
18
|
+
initialExpanded?: boolean;
|
|
9
19
|
/** Ref that suppresses click-away during an active dock animation. */
|
|
10
20
|
isTransitioning?: Ref<boolean>;
|
|
11
21
|
/** Owner id for dock-owned teleported targets. */
|
|
@@ -15,9 +25,8 @@ export interface UseDockStateOptions {
|
|
|
15
25
|
}
|
|
16
26
|
export type DockState = "collapsed" | "hover" | "pinned";
|
|
17
27
|
/**
|
|
18
|
-
* Canonical return shape for `useDockState
|
|
19
|
-
*
|
|
20
|
-
* return"); freezes today's surface so consumers wrapping `<GlassDock>` (or
|
|
28
|
+
* Canonical return shape for `useDockState`, paralleling other named composable return
|
|
29
|
+
* types. It lets consumers wrapping `<GlassDock>` (or
|
|
21
30
|
* authoring a custom dock chassis) can type the composable handle from `/api`
|
|
22
31
|
* or the `/dock` subpath without reaching for `ReturnType<typeof useDockState>`.
|
|
23
32
|
*/
|
|
@@ -1,35 +1,26 @@
|
|
|
1
1
|
import type { Ref } from "vue";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* instance + the tap/scroll discrimination handlers + the collapse-on-deactivate
|
|
6
|
-
* watch — ONE structural concern (the collapsed-pill tap-to-expand gesture), NEVER
|
|
7
|
-
* a morph-scalar writer (`--dock-morph-t`/`--dock-morph-v` stay the orchestrator's).
|
|
3
|
+
* Own collapsed-pill tap/scroll discrimination and collapse-on-deactivate state.
|
|
4
|
+
* Morph scalars remain owned by the Dock orchestrator.
|
|
8
5
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* `touchend`: the browser's native tap→click compatibility event is allowed to flow
|
|
14
|
-
* to the tapped control, so a SINGLE tap on a collapsed dock control BOTH expands the
|
|
15
|
-
* dock AND activates that control (via the native click) — the iOS Now-Playing
|
|
16
|
-
* mini-bar single-tap-play contract. No `elementFromPoint`, no synthetic dispatch. A
|
|
17
|
-
* scroll gesture cancels the pending tap inside the gate and never emits a tap-click,
|
|
18
|
-
* so vertical scrolling on the pill stays browser-owned. (Swallowing the tap was the
|
|
19
|
-
* root cause of the double-tap field defect — a prevented touch sequence emits no
|
|
20
|
-
* compatibility click, so the control under the finger fired nothing.)
|
|
21
|
-
*
|
|
22
|
-
* AZ.W-DOCK-TAXONOMY — the gate applies to ANY collapsible dock, not just the
|
|
23
|
-
* horizontal one (a vertical dock now collapses too), so it must distinguish a tap
|
|
24
|
-
* from a vertical scroll on its pill as well.
|
|
6
|
+
* The gate distinguishes a tap from vertical scrolling without preventing the
|
|
7
|
+
* browser's compatibility click. A single tap can expand the Dock and activate its
|
|
8
|
+
* control; a scroll cancels the pending tap. No hit-test lookup or synthetic
|
|
9
|
+
* dispatch is used. The same behavior applies to both orientations.
|
|
25
10
|
*/
|
|
26
11
|
export interface UseDockTouchGateOptions {
|
|
27
12
|
/** The dock's auto-collapse delay (ms) — the gate's deactivation timer. */
|
|
28
13
|
collapseDelay: number;
|
|
29
14
|
/** The dock body root — the tap discrimination anchors on it. */
|
|
30
15
|
rootEl: Ref<HTMLElement | null>;
|
|
31
|
-
/**
|
|
32
|
-
|
|
16
|
+
/**
|
|
17
|
+
* True when every environmental writer is suppressed — an always-expanded dock
|
|
18
|
+
* (force-pinned) OR a manual dock (the consumer owns posture). The gate no-ops:
|
|
19
|
+
* no tap-to-expand, no collapse-on-deactivate. Without folding `manual` in here
|
|
20
|
+
* the gate would leak a `collapse()` on deactivate (in manual `isPinned` is
|
|
21
|
+
* false and `alwaysExpanded` is false, so the collapse guard would fire).
|
|
22
|
+
*/
|
|
23
|
+
quiet: Readonly<Ref<boolean>>;
|
|
33
24
|
/** The painted expand state (`alwaysExpanded || expanded`). */
|
|
34
25
|
visualExpanded: Readonly<Ref<boolean>>;
|
|
35
26
|
/** The raw expand ref (the collapse-on-deactivate guard reads it). */
|