@mkbabb/glass-ui 4.0.0 → 4.0.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/README.md +3 -1
- package/dist/CardAction-CW7a0m8M.js +253 -0
- package/dist/{CommandShortcut-DdtWXxOK.js → CommandShortcut-DvZNQ_HF.js} +4 -4
- package/dist/ConfiguratorRow-BR4l-ixA.js +143 -0
- package/dist/{ContextMenuContent-ON3x7cuk.js → ContextMenuContent-uWnVxDab.js} +1 -1
- package/dist/{ContextMenuSubContent-B0Vs6atR.js → ContextMenuSubContent-xol4sD2q.js} +32 -37
- package/dist/{DataTable-C464Zbqd.js → DataTable-CuKwF7wr.js} +4 -4
- package/dist/{DialogContent-DDE6pQBU.js → DialogContent-DcKK8k9i.js} +5 -5
- package/dist/{DialogFooter-8eZbdmPc.js → DialogFooter-BZNX5aVr.js} +3 -3
- package/dist/{FadingScroll-DwNnvKMs.js → FadingScroll-DI6hQhT9.js} +1 -1
- package/dist/{HoverCardContent-DkMaQzH5.js → HoverCardContent-b2uaAMRR.js} +1 -1
- package/dist/{HoverPopover-Dpzwvc4t.js → HoverPopover-CbqbNwgU.js} +2 -2
- package/dist/{IconChip-BDw1j5mu.js → IconChip-BTD-nay5.js} +3 -2
- package/dist/{IconTooltip-DSjasZIt.js → IconTooltip-Bl8gFZ8d.js} +1 -1
- package/dist/{Input-DVG_J0ne.js → Input-h9v5LeXf.js} +1 -1
- package/dist/{MetricBadge-BpC0R_Ec.js → MetricBadge-RHdBP72w.js} +1 -1
- package/dist/Notification-VUwexFUf.js +43 -0
- package/dist/NumberFieldContent-Cq7EzX-U.js +138 -0
- package/dist/{PopoverContent-BTorlp--.js → PopoverContent-DL7E6vJP.js} +4 -4
- package/dist/{Progress-hAT4gqGH.js → Progress-DctG61iZ.js} +4 -4
- package/dist/{ScrollingText-CUVFTWk2.js → ScrollingText-yOpBzFYq.js} +2 -2
- package/dist/{SelectScrollDownButton-C1jb3b3K.js → SelectScrollDownButton-CrA8F0iV.js} +18 -19
- package/dist/Toaster-Bw4xR8xV.js +274 -0
- package/dist/{ToggleGroupItem-Dzk9hWsF.js → ToggleGroupItem-pEM9vIhs.js} +50 -37
- package/dist/{TooltipProvider-B3MkB_8P.js → TooltipProvider-rzvnXz60.js} +1 -1
- package/dist/animated-digit.js +2 -2
- package/dist/api/index.d.ts +8 -3
- package/dist/api/types-extra.d.ts +6 -0
- package/dist/aurora.js +885 -242
- package/dist/badge.js +1 -1
- package/dist/border-progress.d.ts +1 -0
- package/dist/border-progress.js +106 -0
- package/dist/{button-BNDWhAZb.js → button-DYCUa-tH.js} +71 -26
- package/dist/button.js +1 -1
- package/dist/canvas.js +2 -2
- package/dist/card.js +2 -2
- package/dist/carousel.js +93 -110
- package/dist/collapsible.js +1 -1
- package/dist/command.js +1 -1
- package/dist/compile-CQEFRTmx.js +19 -0
- package/dist/components/custom/aurora/composables/atoms-fields.d.ts +39 -0
- package/dist/components/custom/aurora/composables/auroraFallbackGround.d.ts +108 -0
- package/dist/components/custom/aurora/composables/runtime.d.ts +19 -0
- package/dist/components/custom/aurora/composables/uniformBridge.d.ts +5 -1
- package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +51 -0
- package/dist/components/custom/aurora/composables/wgpuSetup.d.ts +29 -0
- package/dist/components/custom/aurora/constants/budget.d.ts +21 -0
- package/dist/components/custom/aurora/constants/presets.d.ts +2 -2
- package/dist/components/custom/aurora/constants/renderMode.d.ts +63 -12
- package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +1 -0
- package/dist/components/custom/aurora/constants/shaders/oil-modes.glsl.d.ts +1 -0
- package/dist/components/custom/aurora/constants/shaders/procedural-color.wgsl.d.ts +4 -0
- package/dist/components/custom/aurora/index.d.ts +2 -1
- package/dist/components/custom/border-progress/BorderProgress.vue.d.ts +46 -0
- package/dist/components/custom/border-progress/composables/useBorderSpectrum.d.ts +22 -0
- package/dist/components/custom/border-progress/constants.d.ts +59 -0
- package/dist/components/custom/border-progress/index.d.ts +4 -0
- package/dist/components/custom/concentric/Concentric.vue.d.ts +39 -0
- package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +11 -0
- package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +13 -0
- package/dist/components/custom/concentric/composables/ringField.d.ts +44 -0
- package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +13 -0
- package/dist/components/custom/concentric/composables/useConcentric.d.ts +35 -0
- package/dist/components/custom/concentric/constants.d.ts +43 -0
- package/dist/components/custom/concentric/index.d.ts +5 -0
- package/dist/components/custom/concentric/shaders/concentric.glsl.d.ts +4 -0
- package/dist/components/custom/concentric/shaders/concentric.wgsl.d.ts +1 -0
- package/dist/components/custom/dock/DockIconButton.vue.d.ts +13 -4
- package/dist/components/custom/dock/DockLayerGroup.vue.d.ts +10 -2
- package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +75 -0
- package/dist/components/custom/dock/composables/useLayerTransition.d.ts +13 -0
- package/dist/components/custom/dot-flow-field/DotFlowField.vue.d.ts +38 -0
- package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +41 -0
- package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +24 -0
- package/dist/components/custom/dot-flow-field/composables/useDotFlowField.d.ts +34 -0
- package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +18 -0
- package/dist/components/custom/dot-flow-field/constants.d.ts +48 -0
- package/dist/components/custom/dot-flow-field/index.d.ts +5 -0
- package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +1 -0
- package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +20 -0
- package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +1 -0
- package/dist/components/custom/easing/EasingConfigurator.vue.d.ts +33 -0
- package/dist/components/custom/easing/EasingPicker.vue.d.ts +49 -0
- package/dist/components/custom/easing/composables/useEasingPicker.d.ts +75 -0
- package/dist/components/custom/easing/constants.d.ts +28 -0
- package/dist/components/custom/easing/index.d.ts +3 -0
- package/dist/components/custom/fourier-field/FourierField.vue.d.ts +12 -2
- package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +39 -0
- package/dist/components/custom/fourier-field/constants.d.ts +7 -0
- package/dist/components/custom/glass-panel/GlassPanel.vue.d.ts +1 -1
- package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +4 -2
- package/dist/components/custom/goo-blob/composables/uniformBridgeWGPU.d.ts +24 -0
- package/dist/components/custom/goo-blob/composables/useMetaballRenderer.d.ts +18 -11
- package/dist/components/custom/goo-blob/composables/wgpuSetup.d.ts +23 -0
- package/dist/components/custom/goo-blob/shaders/metaball.wgsl.d.ts +1 -0
- package/dist/components/custom/handmark/HandMark.vue.d.ts +1 -1
- package/dist/components/custom/icon-chip/types.d.ts +11 -1
- package/dist/components/custom/instrument-chassis/InstrumentChassis.vue.d.ts +3 -1
- package/dist/components/custom/metric-stack/MetricStack.vue.d.ts +1 -1
- package/dist/components/custom/spa-view/SpaView.vue.d.ts +50 -0
- package/dist/components/custom/spa-view/index.d.ts +2 -0
- package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +10 -0
- package/dist/components/custom/tabs/composables/useTabDragMorph.d.ts +42 -0
- package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +1 -1
- package/dist/components/ui/_shared/menuItemVariants.d.ts +1 -1
- package/dist/components/ui/badge/index.d.ts +1 -1
- package/dist/components/ui/button/Button.vue.d.ts +5 -2
- package/dist/components/ui/button/index.d.ts +2 -2
- package/dist/components/ui/card/Card.vue.d.ts +34 -4
- package/dist/components/ui/card/CardHeader.vue.d.ts +42 -16
- package/dist/components/ui/card/ScrollCard.vue.d.ts +33 -0
- package/dist/components/ui/card/ScrollCardHeader.vue.d.ts +17 -0
- package/dist/components/ui/card/index.d.ts +2 -0
- package/dist/components/ui/carousel/CarouselNext.vue.d.ts +2 -2
- package/dist/components/ui/carousel/CarouselPrevious.vue.d.ts +2 -2
- package/dist/components/ui/carousel/GlassCarouselPager.vue.d.ts +2 -2
- package/dist/components/ui/command/Command.vue.d.ts +1 -1
- package/dist/components/ui/drawer/Drawer.vue.d.ts +46 -33
- package/dist/components/ui/drawer/DrawerContent.vue.d.ts +7 -8
- package/dist/components/ui/drawer/DrawerDescription.vue.d.ts +2 -2
- package/dist/components/ui/drawer/DrawerOverlay.vue.d.ts +1 -1
- package/dist/components/ui/drawer/DrawerTitle.vue.d.ts +2 -2
- package/dist/components/ui/drawer/composables/drawerSnapContext.d.ts +26 -0
- package/dist/components/ui/drawer/composables/useDrawerSnap.d.ts +17 -0
- package/dist/components/ui/drawer/constants.d.ts +45 -0
- package/dist/components/ui/drawer/index.d.ts +23 -15
- package/dist/components/ui/focus-scope/FocusScope.vue.d.ts +20 -0
- package/dist/components/ui/focus-scope/index.d.ts +2 -0
- package/dist/components/ui/index.d.ts +1 -0
- package/dist/components/ui/progress/ProgressDefault.vue.d.ts +3 -2
- package/dist/components/ui/select/SelectContent.vue.d.ts +1 -1
- package/dist/components/ui/sheet/index.d.ts +1 -1
- package/dist/components/ui/tags-input/TagsInput.vue.d.ts +2 -2
- package/dist/components/ui/toast/Toast.vue.d.ts +5 -2
- package/dist/components/ui/toast/use-toast.d.ts +14 -0
- package/dist/components/ui/toggle/Toggle.vue.d.ts +1 -1
- package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +13 -6
- package/dist/composables/glass/index.d.ts +5 -2
- package/dist/composables/glass/useSpecularPointer.d.ts +33 -0
- package/dist/composables/glass/useSpecularTracking.d.ts +20 -0
- package/dist/composables/glass/vSpecular.d.ts +2 -0
- package/dist/composables/glass/webgl/shaders/flow.glsl.d.ts +1 -0
- package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +16 -0
- package/dist/composables/glass/webgpu/index.d.ts +2 -0
- package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +54 -0
- package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +84 -0
- package/dist/composables/motion/core/index.d.ts +1 -0
- package/dist/composables/motion/index.d.ts +4 -0
- package/dist/composables/motion/useDockCtaReceive.d.ts +59 -0
- package/dist/composables/motion/useDragMorph.d.ts +77 -0
- package/dist/composables/motion/useLiquidFlex.d.ts +11 -0
- package/dist/composables/motion/useLiquidPress.d.ts +71 -0
- package/dist/composables/motion/useLiquidReveal.d.ts +51 -0
- package/dist/composables/motion/useNumericTransition.d.ts +3 -3
- package/dist/composables/motion/usePointerVelocityField.d.ts +98 -0
- package/dist/concentric.d.ts +1 -0
- package/dist/concentric.js +562 -0
- package/dist/configurator.js +3 -2
- package/dist/confirm-dialog.js +22 -24
- package/dist/constellation.js +11 -11
- package/dist/context-menu.js +3 -3
- package/dist/controls.js +1 -1
- package/dist/createCanvasLifecycle-CHD5XrDW.js +82 -0
- package/dist/data-table.js +1 -1
- package/dist/dialog.js +2 -2
- package/dist/dock.js +564 -457
- package/dist/{dockContext-Bu1Avy-a.js → dockContext-BNfyPLe9.js} +1 -1
- package/dist/dom.js +5 -5
- package/dist/dot-flow-field.d.ts +1 -0
- package/dist/dot-flow-field.js +604 -0
- package/dist/drawer.d.ts +1 -0
- package/dist/drawer.js +380 -0
- package/dist/{dropdown-menu-BJ7E9js_.js → dropdown-menu-CofSZuk8.js} +14 -15
- package/dist/dropdown-menu.js +1 -1
- package/dist/easing.d.ts +1 -0
- package/dist/easing.js +463 -0
- package/dist/expandable-container.js +7 -4
- package/dist/fading-scroll.js +1 -1
- package/dist/focus-scope.d.ts +1 -0
- package/dist/focus-scope.js +23 -0
- package/dist/forms.js +7 -7
- package/dist/fourier-field.js +128 -116
- package/dist/fourier-math.js +1 -1
- package/dist/glass-panel.js +2 -2
- package/dist/glass-ui.css +1 -1
- package/dist/glass-ui.js +149 -341
- package/dist/goo-blob.js +830 -224
- package/dist/handmark.js +2 -2
- package/dist/header-ribbon.js +1 -1
- package/dist/hover-card.js +1 -1
- package/dist/hover-popover.js +1 -1
- package/dist/icon-chip.js +1 -1
- package/dist/icon-tooltip.js +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/instrument-chassis.js +1 -1
- package/dist/label.js +1 -1
- package/dist/labeled-field.js +6 -6
- package/dist/metric-badge.js +1 -1
- package/dist/metric-cell.js +1 -1
- package/dist/metric-stack.js +4 -8
- package/dist/motion-core.js +36 -36
- package/dist/motion-curves.js +1 -1
- package/dist/motion.js +157 -55
- package/dist/notification.js +1 -1
- package/dist/number-field.js +1 -1
- package/dist/pager-dots.js +1 -1
- package/dist/paper-backdrop.js +1 -1
- package/dist/popover.js +1 -1
- package/dist/{compile-EXXzEr1q.js → procedural-color.glsl-CIFsJhwI.js} +1 -155
- package/dist/procedural-color.wgsl-CToRHugY.js +224 -0
- package/dist/progress.js +1 -1
- package/dist/pulse.js +1 -1
- package/dist/reactive.js +2 -2
- package/dist/scrolling-text.js +1 -1
- package/dist/search.js +9 -11
- package/dist/select.js +3 -3
- package/dist/separator.js +1 -1
- package/dist/{sheet-CquRYOAw.js → sheet-tZMg0E0w.js} +5 -5
- package/dist/sheet.js +1 -1
- package/dist/{slider-DQ95MET2.js → slider-DVb4HXU-.js} +3 -3
- package/dist/slider.js +1 -1
- package/dist/sortable-list.js +3 -3
- package/dist/spa-view.d.ts +1 -0
- package/dist/spa-view.js +46 -0
- package/dist/styles/animations.css +33 -9
- package/dist/styles/border-progress.css +109 -0
- package/dist/styles/cards.css +76 -0
- package/dist/styles/components.css +1 -1
- package/dist/styles/critical-partition.mjs +140 -0
- package/dist/styles/critical.css +12 -0
- package/dist/styles/deferred.css +31 -0
- package/dist/styles/dock/density.css +45 -0
- package/dist/styles/dock/layers.css +54 -30
- package/dist/styles/dock/morph.css +124 -7
- package/dist/styles/dock/overflow.css +16 -2
- package/dist/styles/dock/shell.css +54 -16
- package/dist/styles/dock.css +32 -0
- package/dist/styles/drawer.css +81 -35
- package/dist/styles/glass/deep.css +44 -0
- package/dist/styles/glass/ladder.css +87 -31
- package/dist/styles/glass/material.css +78 -15
- package/dist/styles/glass/reveal.css +136 -0
- package/dist/styles/glass/rim.css +100 -0
- package/dist/styles/glass/surfaces.css +101 -3
- package/dist/styles/glass-refract.css +96 -44
- package/dist/styles/glass-specular-track.css +7 -0
- package/dist/styles/glass.css +3 -0
- package/dist/styles/hover-popover.css +7 -6
- package/dist/styles/icon-chip.css +77 -15
- package/dist/styles/index.css +21 -9
- package/dist/styles/instrument-chassis.css +66 -3
- package/dist/styles/scroll-choreography.css +300 -0
- package/dist/styles/segmented-tabs.css +31 -0
- package/dist/styles/theme/bridges.css +11 -0
- package/dist/styles/theme/literals.css +11 -2
- package/dist/styles/theme/radius.css +6 -1
- package/dist/styles/tokens/dark-arm.css +98 -26
- package/dist/styles/tokens/glass-deep.css +75 -0
- package/dist/styles/tokens/glass-fx.css +333 -0
- package/dist/styles/tokens/glass.css +39 -319
- package/dist/styles/tokens/light-dark.css +15 -2
- package/dist/styles/tokens/offsets.css +116 -0
- package/dist/styles/tokens/on-glass-fg.css +39 -0
- package/dist/styles/tokens/property-regs.css +127 -0
- package/dist/styles/tokens/scale-paper.css +117 -89
- package/dist/styles/tokens/scheme-motion.css +70 -32
- package/dist/styles/tokens/scroll-tokens.css +123 -0
- package/dist/styles/tokens/{offsets-sizing.css → sizing.css} +37 -100
- package/dist/styles/tokens.css +9 -3
- package/dist/styles/typography/semantic.css +8 -8
- package/dist/styles/typography/utilities.css +22 -7
- package/dist/styles/utilities/animate.css +27 -24
- package/dist/styles/utilities/base-misc.css +255 -0
- package/dist/styles/utilities/base.css +47 -261
- package/dist/styles/utilities/btn.css +3 -1
- package/dist/styles/utilities/metal.css +189 -0
- package/dist/styles/utilities.css +14 -7
- package/dist/switch.js +1 -1
- package/dist/tabs.js +220 -107
- package/dist/timeline.js +2 -2
- package/dist/toast.js +1 -1
- package/dist/toggle-group.js +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/useCanvas2D-B8w_E3Rr.js +83 -0
- package/dist/useConfiguratorState-DNlOh6c8.js +161 -0
- package/dist/useDragMorph-DgxnsVJz.js +102 -0
- package/dist/useLiquidPress-kfb4KX79.js +39 -0
- package/dist/usePointerVelocityField-JbRd5CrM.js +137 -0
- package/dist/useSpring-C0jyvEJB.js +40 -0
- package/dist/useSpringMount-q1amq1SJ.js +71 -0
- package/dist/useSpringPress-BsqPr7FJ.js +34 -0
- package/dist/{useTouchGate-28Tk2-t2.js → useTouchGate-CBZTD4SD.js} +1 -1
- package/dist/vSpecular-CQFmLNzA.js +68 -0
- package/dist/vendor-CKmzio-i.js +226 -0
- package/dist/watercolor-dot.js +2 -2
- package/package.json +126 -22
- package/src/styles/animations.css +33 -9
- package/src/styles/border-progress.css +109 -0
- package/src/styles/cards.css +76 -0
- package/src/styles/critical-partition.mjs +140 -0
- package/src/styles/dock/density.css +45 -0
- package/src/styles/dock/layers.css +54 -30
- package/src/styles/dock/morph.css +124 -7
- package/src/styles/dock/overflow.css +16 -2
- package/src/styles/dock/shell.css +54 -16
- package/src/styles/dock.css +32 -0
- package/src/styles/drawer.css +81 -35
- package/src/styles/glass/deep.css +44 -0
- package/src/styles/glass/ladder.css +87 -31
- package/src/styles/glass/material.css +78 -15
- package/src/styles/glass/reveal.css +136 -0
- package/src/styles/glass/rim.css +100 -0
- package/src/styles/glass/surfaces.css +101 -3
- package/src/styles/glass-refract.css +96 -44
- package/src/styles/glass-specular-track.css +7 -0
- package/src/styles/glass.css +3 -0
- package/src/styles/hover-popover.css +7 -6
- package/src/styles/icon-chip.css +77 -15
- package/src/styles/index.css +12 -0
- package/src/styles/instrument-chassis.css +66 -3
- package/src/styles/scroll-choreography.css +300 -0
- package/src/styles/segmented-tabs.css +31 -0
- package/src/styles/theme/bridges.css +11 -0
- package/src/styles/theme/literals.css +11 -2
- package/src/styles/theme/radius.css +6 -1
- package/src/styles/tokens/dark-arm.css +98 -26
- package/src/styles/tokens/glass-deep.css +75 -0
- package/src/styles/tokens/glass-fx.css +333 -0
- package/src/styles/tokens/glass.css +39 -319
- package/src/styles/tokens/light-dark.css +15 -2
- package/src/styles/tokens/offsets.css +116 -0
- package/src/styles/tokens/on-glass-fg.css +39 -0
- package/src/styles/tokens/property-regs.css +127 -0
- package/src/styles/tokens/scale-paper.css +117 -89
- package/src/styles/tokens/scheme-motion.css +70 -32
- package/src/styles/tokens/scroll-tokens.css +123 -0
- package/src/styles/tokens/{offsets-sizing.css → sizing.css} +37 -100
- package/src/styles/tokens.css +9 -3
- package/src/styles/typography/semantic.css +8 -8
- package/src/styles/typography/utilities.css +22 -7
- package/src/styles/utilities/animate.css +27 -24
- package/src/styles/utilities/base-misc.css +255 -0
- package/src/styles/utilities/base.css +47 -261
- package/src/styles/utilities/btn.css +3 -1
- package/src/styles/utilities/metal.css +189 -0
- package/src/styles/utilities.css +14 -7
- package/dist/CardAction-XH4YBVEK.js +0 -158
- package/dist/Notification-DKjKsQq8.js +0 -100
- package/dist/NumberFieldContent-1VtwDSgf.js +0 -145
- package/dist/Toaster-Bm_HQSpc.js +0 -263
- package/dist/check-njhk-vfu.js +0 -7
- package/dist/chevron-down-DKkxb4VV.js +0 -7
- package/dist/chevron-right-CPXbqQQz.js +0 -7
- package/dist/chevron-up-n_24SqI-.js +0 -7
- package/dist/createLucideIcon-DydS2qgk.js +0 -43
- package/dist/minimize-2-BV31Ob_h.js +0 -38
- package/dist/search-BSGrf2Sk.js +0 -12
- package/dist/useCanvas2D-ClrQuZtp.js +0 -96
- package/dist/useConfiguratorState-kiIlun8I.js +0 -303
- package/dist/useSpecularTracking-Bo5su68i.js +0 -32
- package/dist/useSpringMount-CvopqiFr.js +0 -108
- package/dist/useViewTransition-COsPjQVZ.js +0 -47
- package/dist/x-BUwTKe50.js +0 -10
- /package/dist/{CollapsibleContent-C_s6fG7r.js → CollapsibleContent-68dEXIAl.js} +0 -0
- /package/dist/{InstrumentChassis-UUJX0-mW.js → InstrumentChassis-Bx0F_q5g.js} +0 -0
- /package/dist/{Label-Ck9SWEKM.js → Label-C2ejNWeC.js} +0 -0
- /package/dist/{ModalOverlay-CkPRRgl_.js → ModalOverlay-D1VrWyoi.js} +0 -0
- /package/dist/{PaperBackdrop-nBKe0vkB.js → PaperBackdrop-Vf3tlpvd.js} +0 -0
- /package/dist/{SelectGroup-Dcczq44n.js → SelectGroup-DwwjicPY.js} +0 -0
- /package/dist/{SelectSeparator-DK2y1Bun.js → SelectSeparator-DXswVdRz.js} +0 -0
- /package/dist/{Separator-BArl4OaB.js → Separator-pKF0oA4M.js} +0 -0
- /package/dist/{Switch-Dr--uLGH.js → Switch-CwYNf8bo.js} +0 -0
- /package/dist/{_plugin-vue_export-helper-CBt_VvXa.js → _plugin-vue_export-helper-C1je1s0u.js} +0 -0
- /package/dist/{badge-UILT_3pZ.js → badge-D9XWW4GT.js} +0 -0
- /package/dist/{createContext-B2RaZ-b8.js → createContext-CpBNTRMI.js} +0 -0
- /package/dist/{math-DeuJwLFx.js → math-BINYmg5z.js} +0 -0
- /package/dist/{menuItemVariants-DWRQXBxJ.js → menuItemVariants-D8VNHq22.js} +0 -0
- /package/dist/{prng-Cg22zv8g.js → prng-Za0Rmgag.js} +0 -0
- /package/dist/{resolveCanvasColor-BBiYfp8g.js → resolveCanvasColor-CUyHr5Uu.js} +0 -0
- /package/dist/{springPresets-WXaLbu8u.js → springPresets-CFQGQfdl.js} +0 -0
- /package/dist/{useAnimatedNumber-C_3wZLx4.js → useAnimatedNumber-BfUq2bUM.js} +0 -0
- /package/dist/{useInterval-CNdua40W.js → useInterval-CvK1mL92.js} +0 -0
- /package/dist/{useLiquidFlex-C12hXwOZ.js → useLiquidFlex-mZPMiNXh.js} +0 -0
- /package/dist/{useRAFLoop-CdwJ7284.js → useRAFLoop-UYa4zoiN.js} +0 -0
- /package/dist/{useResizeObserver-V6nq5gJb.js → useResizeObserver-Bpoi7tRE.js} +0 -0
- /package/dist/{useResolveTokenColor-NUG2zYAW.js → useResolveTokenColor-vAylyR0x.js} +0 -0
- /package/dist/{useSortable-BVqlJRBR.js → useSortable-DHjtZSEd.js} +0 -0
- /package/dist/{useSurfaceAxis-CMnF2zHb.js → useSurfaceAxis-g0NloYEF.js} +0 -0
- /package/dist/{useTextHighlight-NmBM5V_4.js → useTextHighlight-CWEi25hf.js} +0 -0
- /package/dist/{useTimer-B_PAasDL.js → useTimer-BHJOKr35.js} +0 -0
- /package/dist/{useUserInvalidAria-CDfJuakL.js → useUserInvalidAria-y5namzeE.js} +0 -0
- /package/dist/{useViewportReady-CvBcCYDf.js → useViewportReady-anbac3m6.js} +0 -0
- /package/dist/{vReveal-D9k0jADx.js → vReveal-Czsb7zQC.js} +0 -0
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { t as e } from "./cn-DJXf4yaB.js";
|
|
2
|
+
import { t } from "./FadingScroll-DI6hQhT9.js";
|
|
3
|
+
import { i as n } from "./ConfiguratorRow-BR4l-ixA.js";
|
|
4
|
+
import { Fragment as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createVNode as l, defineComponent as u, normalizeClass as d, normalizeStyle as f, openBlock as p, reactive as m, ref as h, renderList as g, renderSlot as _, toDisplayString as v, toRaw as y, unref as b, withCtx as x } from "vue";
|
|
5
|
+
//#region src/components/custom/configurator/Configurator.vue?vue&type=script&setup=true&lang.ts
|
|
6
|
+
var S = {
|
|
7
|
+
key: 0,
|
|
8
|
+
class: "configurator-presets shrink-0 border-b px-3 py-2"
|
|
9
|
+
}, C = [
|
|
10
|
+
"aria-selected",
|
|
11
|
+
"data-active",
|
|
12
|
+
"onClick"
|
|
13
|
+
], w = { class: "flex flex-col" }, T = {
|
|
14
|
+
key: 2,
|
|
15
|
+
class: "configurator-controls flex-1 min-h-0 overflow-visible"
|
|
16
|
+
}, E = { class: "flex flex-col" }, D = {
|
|
17
|
+
key: 3,
|
|
18
|
+
class: "configurator-footer shrink-0 border-t px-3 py-2"
|
|
19
|
+
}, O = /* @__PURE__ */ u({
|
|
20
|
+
__name: "Configurator",
|
|
21
|
+
props: {
|
|
22
|
+
presets: {},
|
|
23
|
+
activePreset: {},
|
|
24
|
+
layers: {},
|
|
25
|
+
activeLayer: {},
|
|
26
|
+
scrollMode: { default: "auto" },
|
|
27
|
+
density: { default: "comfortable" },
|
|
28
|
+
asideSide: { default: "right" },
|
|
29
|
+
asideWidth: {},
|
|
30
|
+
class: { type: [
|
|
31
|
+
Boolean,
|
|
32
|
+
null,
|
|
33
|
+
String,
|
|
34
|
+
Object,
|
|
35
|
+
Array
|
|
36
|
+
] }
|
|
37
|
+
},
|
|
38
|
+
emits: [
|
|
39
|
+
"select-preset",
|
|
40
|
+
"select-layer",
|
|
41
|
+
"reset"
|
|
42
|
+
],
|
|
43
|
+
setup(u, { emit: m }) {
|
|
44
|
+
let h = u;
|
|
45
|
+
n(i(() => h.density));
|
|
46
|
+
let y = m, O = i(() => e("configurator glass-floating rounded-panel border border-border/60 overflow-hidden", "grid grid-cols-1", "grid-rows-[minmax(var(--configurator-stage-min,18rem),auto)_minmax(0,1fr)] lg:grid-rows-none", "lg:grid-cols-[minmax(0,1fr)_minmax(var(--configurator-aside-min,280px),var(--configurator-aside-max,360px))]", "min-h-0", h.class)), k = i(() => {
|
|
47
|
+
if (h.asideWidth == null) return;
|
|
48
|
+
let [e, t] = Array.isArray(h.asideWidth) ? h.asideWidth : [h.asideWidth, h.asideWidth];
|
|
49
|
+
return {
|
|
50
|
+
"--configurator-aside-min": e,
|
|
51
|
+
"--configurator-aside-max": t
|
|
52
|
+
};
|
|
53
|
+
}), A = i(() => h.asideSide === "left" ? "lg:col-start-2" : ""), j = i(() => h.asideSide === "left" ? "lg:col-start-1 lg:row-start-1" : ""), M = i(() => h.asideSide === "left" ? "lg:border-r lg:border-l-0" : "lg:border-l"), N = i(() => h.scrollMode !== "never");
|
|
54
|
+
return (n, i) => (p(), s("section", {
|
|
55
|
+
"data-slot": "configurator",
|
|
56
|
+
class: d(O.value),
|
|
57
|
+
style: f(k.value)
|
|
58
|
+
}, [c("div", { class: d(b(e)("configurator-stage relative min-h-0 min-w-0 overflow-hidden", A.value)) }, [_(n.$slots, "stage")], 2), c("aside", { class: d(b(e)("configurator-aside flex min-h-0 min-w-0 flex-col border-t lg:border-t-0", M.value, j.value)) }, [
|
|
59
|
+
n.$slots.presets || u.presets && u.presets.length > 0 ? (p(), s("div", S, [_(n.$slots, "presets", {
|
|
60
|
+
presets: u.presets,
|
|
61
|
+
activePreset: u.activePreset
|
|
62
|
+
}, () => [l(b(t), {
|
|
63
|
+
axis: "x",
|
|
64
|
+
class: "flex gap-2 scrollbar-hidden",
|
|
65
|
+
role: "tablist",
|
|
66
|
+
"aria-label": "Presets"
|
|
67
|
+
}, {
|
|
68
|
+
default: x(() => [(p(!0), s(r, null, g(u.presets, (t) => (p(), s("button", {
|
|
69
|
+
key: t.key,
|
|
70
|
+
type: "button",
|
|
71
|
+
role: "tab",
|
|
72
|
+
"data-slot": "configurator-preset",
|
|
73
|
+
"aria-selected": t.key === u.activePreset,
|
|
74
|
+
"data-active": t.key === u.activePreset || void 0,
|
|
75
|
+
class: d(b(e)("tap-squish focus-ring transition-control shrink-0 rounded-pill border px-3 py-1 text-xs font-medium", t.key === u.activePreset ? "glass-quiet border-border/50 text-foreground" : "border-border/40 bg-card/40 text-foreground hover:bg-card/70")),
|
|
76
|
+
onClick: (e) => y("select-preset", t.key)
|
|
77
|
+
}, v(t.label), 11, C))), 128))]),
|
|
78
|
+
_: 1
|
|
79
|
+
})])])) : o("", !0),
|
|
80
|
+
N.value ? (p(), a(b(t), {
|
|
81
|
+
key: 1,
|
|
82
|
+
axis: "y",
|
|
83
|
+
class: "configurator-controls flex-1 min-h-0 scrollbar-thin"
|
|
84
|
+
}, {
|
|
85
|
+
default: x(() => [_(n.$slots, "controls", {
|
|
86
|
+
layers: u.layers,
|
|
87
|
+
activeLayer: u.activeLayer,
|
|
88
|
+
selectLayer: (e) => y("select-layer", e)
|
|
89
|
+
}, () => [c("div", w, [_(n.$slots, "default")])])]),
|
|
90
|
+
_: 3
|
|
91
|
+
})) : (p(), s("div", T, [_(n.$slots, "controls", {
|
|
92
|
+
layers: u.layers,
|
|
93
|
+
activeLayer: u.activeLayer,
|
|
94
|
+
selectLayer: (e) => y("select-layer", e)
|
|
95
|
+
}, () => [c("div", E, [_(n.$slots, "default")])])])),
|
|
96
|
+
n.$slots.footer ? (p(), s("div", D, [_(n.$slots, "footer", { reset: () => y("reset") })])) : o("", !0)
|
|
97
|
+
], 2)], 6));
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
//#endregion
|
|
101
|
+
//#region src/components/custom/configurator/useConfiguratorState.ts
|
|
102
|
+
function k(e) {
|
|
103
|
+
let t = y(e);
|
|
104
|
+
if (typeof structuredClone != "function") throw Error("[glass-ui:configurator] structuredClone is unavailable in this runtime. Pass a custom clone via ConfiguratorStateOptions.clone for environments without structured-clone support.");
|
|
105
|
+
try {
|
|
106
|
+
return structuredClone(t);
|
|
107
|
+
} catch (e) {
|
|
108
|
+
throw Error("[glass-ui:configurator] structuredClone failed: " + (e instanceof Error ? e.message : String(e)) + ". Preset values must be structured-cloneable (no functions, symbols, DOM nodes, or class instances). Pass a custom clone via ConfiguratorStateOptions.clone if the data shape requires it.");
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
function A(e, t) {
|
|
112
|
+
return JSON.stringify(e) === JSON.stringify(t);
|
|
113
|
+
}
|
|
114
|
+
function j(e) {
|
|
115
|
+
let t = e.clone ?? k, n = e.equals ?? A, r = e.presets, a = e.cloneMode ?? "commit-on-write", o = e.initialPreset ?? (r.length > 0 ? r[0].key : void 0), s = o ? r.find((e) => e.key === o) : void 0, c = m(s ? t(s.config) : {}), l = h(o), u = a === "per-preset" ? Object.fromEntries(r.map((e) => [e.key, t(e.config)])) : null, d = i(() => l.value), f = i(() => {
|
|
116
|
+
let e = l.value;
|
|
117
|
+
if (!e) return !1;
|
|
118
|
+
let t = r.find((t) => t.key === e);
|
|
119
|
+
return t ? !n(c, t.config) : !1;
|
|
120
|
+
});
|
|
121
|
+
function p(e) {
|
|
122
|
+
return r.find((t) => t.key === e);
|
|
123
|
+
}
|
|
124
|
+
function g(e) {
|
|
125
|
+
let t = c, n = e;
|
|
126
|
+
for (let e of Object.keys(t)) e in n || delete t[e];
|
|
127
|
+
for (let e of Object.keys(n)) t[e] = n[e];
|
|
128
|
+
}
|
|
129
|
+
function _(e) {
|
|
130
|
+
u && (u[e] = t(c));
|
|
131
|
+
}
|
|
132
|
+
function v(e) {
|
|
133
|
+
let n = p(e);
|
|
134
|
+
if (n) if (a === "per-preset" && u) {
|
|
135
|
+
let t = l.value;
|
|
136
|
+
t && t !== e && t in u && _(t), l.value = e, g(u[e]);
|
|
137
|
+
} else l.value = e, g(t(n.config));
|
|
138
|
+
}
|
|
139
|
+
function y() {
|
|
140
|
+
let e = l.value;
|
|
141
|
+
if (!e) return;
|
|
142
|
+
let n = p(e);
|
|
143
|
+
n && (a === "per-preset" && u ? (u[e] = t(n.config), g(u[e])) : g(t(n.config)));
|
|
144
|
+
}
|
|
145
|
+
function b(e = 1) {
|
|
146
|
+
if (r.length === 0) return;
|
|
147
|
+
let t = l.value, n = t ? r.findIndex((e) => e.key === t) : -1, i = r.length, a = r[(n + e + i) % i];
|
|
148
|
+
v(a.key);
|
|
149
|
+
}
|
|
150
|
+
return {
|
|
151
|
+
config: c,
|
|
152
|
+
activePreset: d,
|
|
153
|
+
isDirty: f,
|
|
154
|
+
selectPreset: v,
|
|
155
|
+
resetCurrent: y,
|
|
156
|
+
cyclePreset: b,
|
|
157
|
+
getPreset: p
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
//#endregion
|
|
161
|
+
export { O as n, j as t };
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { t as e } from "./useLiquidFlex-mZPMiNXh.js";
|
|
2
|
+
import { n as t } from "./springPresets-CFQGQfdl.js";
|
|
3
|
+
import { computed as n, onScopeDispose as r, readonly as i, ref as a } from "vue";
|
|
4
|
+
import { Draggable as o, SpringProgress as s, decayRest as c } from "@mkbabb/keyframes.js";
|
|
5
|
+
//#region src/composables/motion/useDragMorph.ts
|
|
6
|
+
function l() {
|
|
7
|
+
return typeof window < "u" && typeof window.matchMedia == "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
8
|
+
}
|
|
9
|
+
function u(u) {
|
|
10
|
+
let d = () => typeof u.axis == "function" ? u.axis() : u.axis, f = () => typeof u.snapTargets == "function" ? u.snapTargets() : u.snapTargets, p = u.respectReducedMotion !== !1, m = a(!1), h = a(0), { response: g, dampingFraction: _ } = t("snappy"), v = null, y = null;
|
|
11
|
+
function b() {
|
|
12
|
+
if (v) return v;
|
|
13
|
+
let e = new s({
|
|
14
|
+
response: g,
|
|
15
|
+
dampingFraction: _,
|
|
16
|
+
respectReducedMotion: p
|
|
17
|
+
});
|
|
18
|
+
return v = e, y = e.subscribe((t) => {
|
|
19
|
+
if (h.value = t, p && l() || x.drive(T(t)), A && !m.value && e.settled && !k) {
|
|
20
|
+
let e = D(t);
|
|
21
|
+
e != null && (k = !0, A = !1, u.onSnap(e));
|
|
22
|
+
}
|
|
23
|
+
}), e.play(() => {}), e;
|
|
24
|
+
}
|
|
25
|
+
let x = e({
|
|
26
|
+
from: 0,
|
|
27
|
+
to: 1,
|
|
28
|
+
axis: "width",
|
|
29
|
+
squishLaw: "tanh",
|
|
30
|
+
maxStretch: u.maxStretch ?? (() => 1.08)
|
|
31
|
+
}), S = n(() => p && l() ? 1 : x.stretch.value), C = a(0), w = n(() => {
|
|
32
|
+
if (!m.value && (v?.settled ?? !0)) return {};
|
|
33
|
+
let e = h.value - C.value;
|
|
34
|
+
return { translate: d() === "y" ? `0 ${e}px` : `${e}px 0` };
|
|
35
|
+
});
|
|
36
|
+
function T(e) {
|
|
37
|
+
let t = f();
|
|
38
|
+
if (t.length < 2) return 0;
|
|
39
|
+
let n = t[0].center, r = t[t.length - 1].center - n;
|
|
40
|
+
if (r === 0) return 0;
|
|
41
|
+
let i = (e - n) / r;
|
|
42
|
+
return i < 0 ? 0 : i > 1 ? 1 : i;
|
|
43
|
+
}
|
|
44
|
+
function E(e) {
|
|
45
|
+
let t = f();
|
|
46
|
+
if (t.length === 0) return null;
|
|
47
|
+
let n = t[0], r = Math.abs(e - n.center);
|
|
48
|
+
for (let i = 1; i < t.length; i++) {
|
|
49
|
+
let a = t[i], o = Math.abs(e - a.center);
|
|
50
|
+
o < r && (n = a, r = o);
|
|
51
|
+
}
|
|
52
|
+
return n;
|
|
53
|
+
}
|
|
54
|
+
let D = (e) => E(e)?.value ?? null;
|
|
55
|
+
function O() {
|
|
56
|
+
if (!v) return;
|
|
57
|
+
let e = E(c({
|
|
58
|
+
initial: v.value,
|
|
59
|
+
velocity: v.velocity,
|
|
60
|
+
friction: 5
|
|
61
|
+
}));
|
|
62
|
+
e && (v.target = e.center);
|
|
63
|
+
}
|
|
64
|
+
let k = !1, A = !1, j = null, M = null;
|
|
65
|
+
function N() {
|
|
66
|
+
M?.(), M = null, j?.detach();
|
|
67
|
+
let e = u.el.value;
|
|
68
|
+
e && (j = new o({
|
|
69
|
+
spring: b(),
|
|
70
|
+
axis: d()
|
|
71
|
+
}), e.addEventListener("pointerdown", P), M = j.attach(e));
|
|
72
|
+
}
|
|
73
|
+
function P() {
|
|
74
|
+
m.value = !0, k = !1, A = !0, C.value = b().value;
|
|
75
|
+
}
|
|
76
|
+
function F() {
|
|
77
|
+
m.value && (m.value = !1, O());
|
|
78
|
+
}
|
|
79
|
+
function I() {
|
|
80
|
+
typeof window > "u" || (window.addEventListener("pointerup", F), window.addEventListener("pointercancel", F));
|
|
81
|
+
}
|
|
82
|
+
function L() {
|
|
83
|
+
typeof window > "u" || (window.removeEventListener("pointerup", F), window.removeEventListener("pointercancel", F));
|
|
84
|
+
}
|
|
85
|
+
function R() {
|
|
86
|
+
m.value || N();
|
|
87
|
+
}
|
|
88
|
+
N(), I();
|
|
89
|
+
function z() {
|
|
90
|
+
u.el.value?.removeEventListener("pointerdown", P), M?.(), M = null, L(), y?.(), j?.dispose(), j = null;
|
|
91
|
+
}
|
|
92
|
+
return r(z), {
|
|
93
|
+
dragging: i(m),
|
|
94
|
+
position: i(h),
|
|
95
|
+
stretch: i(S),
|
|
96
|
+
dragStyle: w,
|
|
97
|
+
refresh: R,
|
|
98
|
+
detach: z
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
//#endregion
|
|
102
|
+
export { u as t };
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { t as e } from "./useSpringPress-BsqPr7FJ.js";
|
|
2
|
+
import { t } from "./useLiquidFlex-mZPMiNXh.js";
|
|
3
|
+
import { computed as n, watch as r } from "vue";
|
|
4
|
+
//#region src/composables/motion/useLiquidPress.ts
|
|
5
|
+
function i(i = {}) {
|
|
6
|
+
let a = i.shrinkDepth ?? .03, o = i.maxStretch ?? 1.04, s = i.pressVar ?? "--press-t", c = i.engageThreshold ?? .001, l = e({
|
|
7
|
+
response: i.response,
|
|
8
|
+
dampingFraction: i.dampingFraction,
|
|
9
|
+
initial: i.initial,
|
|
10
|
+
initialVelocity: i.initialVelocity,
|
|
11
|
+
settleThreshold: i.settleThreshold,
|
|
12
|
+
velocitySettleThreshold: i.velocitySettleThreshold,
|
|
13
|
+
respectReducedMotion: i.respectReducedMotion,
|
|
14
|
+
onValue: i.onValue
|
|
15
|
+
}), u = t({
|
|
16
|
+
from: 0,
|
|
17
|
+
to: 1,
|
|
18
|
+
axis: "width",
|
|
19
|
+
maxStretch: o,
|
|
20
|
+
squishLaw: "linear"
|
|
21
|
+
});
|
|
22
|
+
r(() => l.value.value, (e) => u.squish(e), {
|
|
23
|
+
immediate: !0,
|
|
24
|
+
flush: "sync"
|
|
25
|
+
});
|
|
26
|
+
let d = n(() => {
|
|
27
|
+
let e = l.value.value, t = u.stretch.value, n = 1 - e * a, r = (n * t).toFixed(4), i = (n / t).toFixed(4), o = { [s]: e.toFixed(4) };
|
|
28
|
+
return e > c && (o.scale = `${r} ${i}`), o;
|
|
29
|
+
});
|
|
30
|
+
return {
|
|
31
|
+
value: l.value,
|
|
32
|
+
press: l.press,
|
|
33
|
+
release: l.release,
|
|
34
|
+
handlers: l.handlers,
|
|
35
|
+
pressStyle: d
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
//#endregion
|
|
39
|
+
export { i as t };
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { onScopeDispose as e, readonly as t, ref as n } from "vue";
|
|
2
|
+
//#region src/utils/moveBefore.ts
|
|
3
|
+
function r(e, t, n) {
|
|
4
|
+
let r = e;
|
|
5
|
+
typeof r.moveBefore == "function" ? r.moveBefore(t, n) : e.insertBefore(t, n);
|
|
6
|
+
}
|
|
7
|
+
function i() {
|
|
8
|
+
return typeof Element < "u" && "moveBefore" in Element.prototype;
|
|
9
|
+
}
|
|
10
|
+
//#endregion
|
|
11
|
+
//#region src/utils/platformSupport.ts
|
|
12
|
+
function a() {
|
|
13
|
+
return typeof globalThis.scheduler?.postTask == "function";
|
|
14
|
+
}
|
|
15
|
+
//#endregion
|
|
16
|
+
//#region src/composables/motion/useViewTransition.ts
|
|
17
|
+
function o() {
|
|
18
|
+
return typeof document < "u" && typeof document.startViewTransition == "function";
|
|
19
|
+
}
|
|
20
|
+
function s() {
|
|
21
|
+
return typeof window > "u" || typeof window.matchMedia != "function" ? !1 : window.matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
22
|
+
}
|
|
23
|
+
function c(e, t) {
|
|
24
|
+
let n = typeof document > "u" ? void 0 : document;
|
|
25
|
+
if (!n || typeof n.startViewTransition != "function" || t?.instantUnderReducedMotion && s()) return {
|
|
26
|
+
finished: (async () => e())().then(() => void 0, () => void 0),
|
|
27
|
+
transitioned: !1
|
|
28
|
+
};
|
|
29
|
+
let r = t?.types && t.types.length > 0 ? n.startViewTransition({
|
|
30
|
+
update: () => e(),
|
|
31
|
+
types: t.types
|
|
32
|
+
}) : n.startViewTransition(() => e());
|
|
33
|
+
return r.ready?.catch(() => {}), {
|
|
34
|
+
finished: r.finished.then(() => void 0, () => void 0),
|
|
35
|
+
transitioned: !0
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
function l(e, t) {
|
|
39
|
+
return c(e, {
|
|
40
|
+
...t,
|
|
41
|
+
instantUnderReducedMotion: !0
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
function u() {
|
|
45
|
+
return o();
|
|
46
|
+
}
|
|
47
|
+
//#endregion
|
|
48
|
+
//#region src/composables/motion/usePointerVelocityField.ts
|
|
49
|
+
var d = "(prefers-reduced-motion: reduce)";
|
|
50
|
+
function f(e) {
|
|
51
|
+
return e < 0 ? 0 : e > 1 ? 1 : e;
|
|
52
|
+
}
|
|
53
|
+
function p(r = {}) {
|
|
54
|
+
let i = r.positionLerp ?? .22, a = r.velocityLerp ?? .3, o = r.accelerationLerp ?? .3, s = r.burstDecay ?? .96, c = r.respectReducedMotion !== !1, l = typeof window < "u" && typeof window.matchMedia == "function" ? window.matchMedia(d) : null, u = l?.matches ?? !1, p = (e) => {
|
|
55
|
+
u = e.matches, u && x();
|
|
56
|
+
};
|
|
57
|
+
l?.addEventListener("change", p);
|
|
58
|
+
let m = n(!1), h = n({
|
|
59
|
+
x: .5,
|
|
60
|
+
y: .5
|
|
61
|
+
}), g = n({
|
|
62
|
+
x: .5,
|
|
63
|
+
y: .5
|
|
64
|
+
}), _ = n({
|
|
65
|
+
x: 0,
|
|
66
|
+
y: 0
|
|
67
|
+
}), v = n(0), y = n({
|
|
68
|
+
x: 0,
|
|
69
|
+
y: 0
|
|
70
|
+
}), b = n(0);
|
|
71
|
+
function x() {
|
|
72
|
+
_.value = {
|
|
73
|
+
x: 0,
|
|
74
|
+
y: 0
|
|
75
|
+
}, v.value = 0, y.value = {
|
|
76
|
+
x: 0,
|
|
77
|
+
y: 0
|
|
78
|
+
}, b.value = 0, g.value = { ...h.value };
|
|
79
|
+
}
|
|
80
|
+
function S(e, t) {
|
|
81
|
+
c && u || (h.value = {
|
|
82
|
+
x: f(e),
|
|
83
|
+
y: f(t)
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
function C(e) {
|
|
87
|
+
if (c && u) return;
|
|
88
|
+
let t = e.currentTarget;
|
|
89
|
+
if (!t) return;
|
|
90
|
+
let n = t.getBoundingClientRect();
|
|
91
|
+
n.width === 0 || n.height === 0 || S((e.clientX - n.left) / n.width, (e.clientY - n.top) / n.height);
|
|
92
|
+
}
|
|
93
|
+
function w() {
|
|
94
|
+
m.value = !0;
|
|
95
|
+
}
|
|
96
|
+
function T() {
|
|
97
|
+
m.value = !1;
|
|
98
|
+
}
|
|
99
|
+
function E(e) {
|
|
100
|
+
if (c && u || !(e > 0)) {
|
|
101
|
+
x();
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
let t = e / 1e3, n = g.value, r = _.value, l = 1 - (1 - i) ** (t * 60), d = n.x + (h.value.x - n.x) * l, f = n.y + (h.value.y - n.y) * l, p = (d - n.x) / t, m = (f - n.y) / t, S = 1 - (1 - a) ** (t * 60), C = r.x + (p - r.x) * S, w = r.y + (m - r.y) * S, T = (C - r.x) / t, E = (w - r.y) / t, D = 1 - (1 - o) ** (t * 60), O = y.value.x + (T - y.value.x) * D, k = y.value.y + (E - y.value.y) * D, A = Math.hypot(C, w), j = s ** (t * 60), M = Math.min(1, b.value * j + A * t * 4);
|
|
105
|
+
g.value = {
|
|
106
|
+
x: d,
|
|
107
|
+
y: f
|
|
108
|
+
}, _.value = {
|
|
109
|
+
x: C,
|
|
110
|
+
y: w
|
|
111
|
+
}, v.value = A, y.value = {
|
|
112
|
+
x: O,
|
|
113
|
+
y: k
|
|
114
|
+
}, b.value = M;
|
|
115
|
+
}
|
|
116
|
+
function D() {
|
|
117
|
+
l?.removeEventListener("change", p);
|
|
118
|
+
}
|
|
119
|
+
return e(D), {
|
|
120
|
+
active: t(m),
|
|
121
|
+
position: t(h),
|
|
122
|
+
smoothedPosition: t(g),
|
|
123
|
+
velocity: t(_),
|
|
124
|
+
speed: t(v),
|
|
125
|
+
acceleration: t(y),
|
|
126
|
+
burst: t(b),
|
|
127
|
+
onPointerMove: C,
|
|
128
|
+
onPointerEnter: w,
|
|
129
|
+
onPointerLeave: T,
|
|
130
|
+
setPointer: S,
|
|
131
|
+
tick: E,
|
|
132
|
+
reset: x,
|
|
133
|
+
dispose: D
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
//#endregion
|
|
137
|
+
export { o as a, i as c, u as i, l as n, a as o, c as r, r as s, p as t };
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { getCurrentScope as e, onScopeDispose as t, readonly as n, ref as r, shallowRef as i, toValue as a, watch as o } from "vue";
|
|
2
|
+
import { SpringProgress as s } from "@mkbabb/keyframes.js";
|
|
3
|
+
//#region src/composables/motion/useSpring.ts
|
|
4
|
+
function c(c, l = {}) {
|
|
5
|
+
let u = l.initial ?? 0, d = l.initialVelocity ?? 0, f = r(u), p = r(d), m = r(d === 0), h = i(new s({
|
|
6
|
+
response: l.response ?? .5,
|
|
7
|
+
dampingFraction: l.dampingFraction ?? .86,
|
|
8
|
+
initial: u,
|
|
9
|
+
initialVelocity: d,
|
|
10
|
+
settleThreshold: l.settleThreshold ?? .001,
|
|
11
|
+
velocitySettleThreshold: l.velocitySettleThreshold ?? .001,
|
|
12
|
+
respectReducedMotion: l.respectReducedMotion !== !1
|
|
13
|
+
})), g = h.value.subscribe((e, t) => {
|
|
14
|
+
f.value = e, p.value = t, m.value = h.value.settled, l.onValue?.(e, t);
|
|
15
|
+
});
|
|
16
|
+
h.value.play(() => {});
|
|
17
|
+
let _ = o(() => a(c), (e) => {
|
|
18
|
+
e != null && (h.value.target = e);
|
|
19
|
+
}, { immediate: !0 });
|
|
20
|
+
function v() {
|
|
21
|
+
f.value = h.value.value, p.value = h.value.velocity, m.value = h.value.settled;
|
|
22
|
+
}
|
|
23
|
+
function y() {
|
|
24
|
+
_(), g(), h.value.dispose();
|
|
25
|
+
}
|
|
26
|
+
return e() && t(y), {
|
|
27
|
+
value: n(f),
|
|
28
|
+
velocity: n(p),
|
|
29
|
+
isSettled: n(m),
|
|
30
|
+
snap: () => {
|
|
31
|
+
h.value.snap(), v();
|
|
32
|
+
},
|
|
33
|
+
reset: (e, t) => {
|
|
34
|
+
h.value.reset(e ?? 0, t ?? 0), v();
|
|
35
|
+
},
|
|
36
|
+
dispose: y
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
//#endregion
|
|
40
|
+
export { c as t };
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { t as e } from "./useSpring-C0jyvEJB.js";
|
|
2
|
+
import { n as t } from "./springPresets-CFQGQfdl.js";
|
|
3
|
+
import { computed as n, nextTick as r, onMounted as i, onScopeDispose as a, ref as o, watch as s } from "vue";
|
|
4
|
+
//#region src/composables/motion/useSpringMount.ts
|
|
5
|
+
var c = Object.fromEntries([
|
|
6
|
+
"smooth",
|
|
7
|
+
"snappy",
|
|
8
|
+
"bouncy",
|
|
9
|
+
"gentle"
|
|
10
|
+
].map((e) => {
|
|
11
|
+
let { response: n, dampingFraction: r } = t(e);
|
|
12
|
+
return [e, {
|
|
13
|
+
response: n,
|
|
14
|
+
dampingFraction: r
|
|
15
|
+
}];
|
|
16
|
+
}));
|
|
17
|
+
function l(t) {
|
|
18
|
+
let l = c[t.preset ?? "smooth"], u = o(1), d = o(!1), f = 0, p = 0, m = null, h = !1, g = e(u, {
|
|
19
|
+
response: l.response,
|
|
20
|
+
dampingFraction: l.dampingFraction,
|
|
21
|
+
initial: 1,
|
|
22
|
+
settleThreshold: .001,
|
|
23
|
+
velocitySettleThreshold: .001,
|
|
24
|
+
respectReducedMotion: t.respectReducedMotion !== !1
|
|
25
|
+
});
|
|
26
|
+
i(() => {
|
|
27
|
+
t.open.value && r(() => {
|
|
28
|
+
u.value = 0;
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
let _ = s(() => t.open.value, (e, t) => {
|
|
32
|
+
e !== t && (d.value || (u.value = +!e));
|
|
33
|
+
}, { immediate: !1 }), v = s(() => g.isSettled.value, (e) => {
|
|
34
|
+
e && h && u.value >= 1 && (h = !1, t.onDismiss?.());
|
|
35
|
+
});
|
|
36
|
+
function y(e) {
|
|
37
|
+
if (e.button !== 0) return;
|
|
38
|
+
let t = e.currentTarget;
|
|
39
|
+
p = t.getBoundingClientRect().height || 1, f = e.clientY, m = e.pointerId, d.value = !0, t.setPointerCapture(e.pointerId);
|
|
40
|
+
}
|
|
41
|
+
function b(e) {
|
|
42
|
+
if (!d.value || e.pointerId !== m) return;
|
|
43
|
+
let t = e.clientY - f;
|
|
44
|
+
if (t <= 0) {
|
|
45
|
+
u.value = 0;
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
u.value = Math.min(1, t / p);
|
|
49
|
+
}
|
|
50
|
+
function x(e) {
|
|
51
|
+
if (!d.value || e.pointerId !== m) return;
|
|
52
|
+
let n = e.currentTarget;
|
|
53
|
+
n.hasPointerCapture(e.pointerId) && n.releasePointerCapture(e.pointerId), d.value = !1, m = null;
|
|
54
|
+
let r = t.dismissThreshold ?? .3;
|
|
55
|
+
u.value >= r ? (h = !0, u.value = 1) : u.value = 0;
|
|
56
|
+
}
|
|
57
|
+
return a(() => {
|
|
58
|
+
_(), v();
|
|
59
|
+
}), {
|
|
60
|
+
position: g.value,
|
|
61
|
+
isDragging: n(() => d.value),
|
|
62
|
+
dragHandlers: {
|
|
63
|
+
onPointerdown: y,
|
|
64
|
+
onPointermove: b,
|
|
65
|
+
onPointerup: x,
|
|
66
|
+
onPointercancel: x
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
//#endregion
|
|
71
|
+
export { l as t };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { t as e } from "./useSpring-C0jyvEJB.js";
|
|
2
|
+
import { ref as t } from "vue";
|
|
3
|
+
//#region src/composables/motion/useSpringPress.ts
|
|
4
|
+
function n(n = {}) {
|
|
5
|
+
let r = t(0), i = e(r, {
|
|
6
|
+
response: n.response ?? .25,
|
|
7
|
+
dampingFraction: n.dampingFraction ?? .7,
|
|
8
|
+
initial: n.initial ?? 0,
|
|
9
|
+
initialVelocity: n.initialVelocity,
|
|
10
|
+
settleThreshold: n.settleThreshold,
|
|
11
|
+
velocitySettleThreshold: n.velocitySettleThreshold,
|
|
12
|
+
respectReducedMotion: n.respectReducedMotion,
|
|
13
|
+
onValue: n.onValue
|
|
14
|
+
});
|
|
15
|
+
function a() {
|
|
16
|
+
r.value = 1;
|
|
17
|
+
}
|
|
18
|
+
function o() {
|
|
19
|
+
r.value = 0;
|
|
20
|
+
}
|
|
21
|
+
return {
|
|
22
|
+
...i,
|
|
23
|
+
press: a,
|
|
24
|
+
release: o,
|
|
25
|
+
handlers: {
|
|
26
|
+
onPointerdown: a,
|
|
27
|
+
onPointerup: o,
|
|
28
|
+
onPointercancel: o,
|
|
29
|
+
onPointerleave: o
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
//#endregion
|
|
34
|
+
export { n as t };
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { onScopeDispose as e, ref as t } from "vue";
|
|
2
|
+
//#region src/composables/glass/useSpecularTracking.ts
|
|
3
|
+
function n(e) {
|
|
4
|
+
let t = typeof window < "u" && typeof window.matchMedia == "function" ? window.matchMedia("(prefers-reduced-motion: reduce)") : null, n = t?.matches ?? !1, r = (e) => {
|
|
5
|
+
n = e.matches;
|
|
6
|
+
};
|
|
7
|
+
t?.addEventListener("change", r);
|
|
8
|
+
let i = null, a = 0, o = 0, s = 0;
|
|
9
|
+
function c() {
|
|
10
|
+
s = 0;
|
|
11
|
+
let t = i;
|
|
12
|
+
if (i = null, !t) return;
|
|
13
|
+
let n = t.getBoundingClientRect();
|
|
14
|
+
n.width === 0 || n.height === 0 || e((a - n.left) / n.width * 100, (o - n.top) / n.height * 100);
|
|
15
|
+
}
|
|
16
|
+
function l(e) {
|
|
17
|
+
n || (i = e.currentTarget, a = e.clientX, o = e.clientY, s === 0 && (typeof requestAnimationFrame == "function" ? s = requestAnimationFrame(c) : c()));
|
|
18
|
+
}
|
|
19
|
+
function u() {
|
|
20
|
+
s !== 0 && typeof cancelAnimationFrame == "function" && cancelAnimationFrame(s), s = 0, i = null, t?.removeEventListener("change", r);
|
|
21
|
+
}
|
|
22
|
+
return {
|
|
23
|
+
onPointerMove: l,
|
|
24
|
+
dispose: u
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
function r() {
|
|
28
|
+
let r = t({}), i = n((e, t) => {
|
|
29
|
+
r.value = {
|
|
30
|
+
"--mouse-x": `${e.toFixed(2)}%`,
|
|
31
|
+
"--mouse-y": `${t.toFixed(2)}%`
|
|
32
|
+
};
|
|
33
|
+
});
|
|
34
|
+
return e(i.dispose), {
|
|
35
|
+
specularStyle: r,
|
|
36
|
+
onPointerMove: i.onPointerMove
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
//#endregion
|
|
40
|
+
//#region src/composables/glass/vSpecular.ts
|
|
41
|
+
var i = /* @__PURE__ */ new WeakMap();
|
|
42
|
+
function a(e) {
|
|
43
|
+
return e.value !== !1;
|
|
44
|
+
}
|
|
45
|
+
function o(e) {
|
|
46
|
+
if (i.has(e)) return;
|
|
47
|
+
let t = n((t, n) => {
|
|
48
|
+
e.style.setProperty("--mouse-x", `${t.toFixed(2)}%`), e.style.setProperty("--mouse-y", `${n.toFixed(2)}%`);
|
|
49
|
+
});
|
|
50
|
+
e.addEventListener("pointermove", t.onPointerMove), i.set(e, t);
|
|
51
|
+
}
|
|
52
|
+
function s(e) {
|
|
53
|
+
let t = i.get(e);
|
|
54
|
+
t && (e.removeEventListener("pointermove", t.onPointerMove), t.dispose(), i.delete(e));
|
|
55
|
+
}
|
|
56
|
+
function c(e, t) {
|
|
57
|
+
a(t) && o(e);
|
|
58
|
+
}
|
|
59
|
+
function l(e, t) {
|
|
60
|
+
a(t) ? o(e) : s(e);
|
|
61
|
+
}
|
|
62
|
+
var u = {
|
|
63
|
+
mounted: c,
|
|
64
|
+
updated: l,
|
|
65
|
+
unmounted: s
|
|
66
|
+
};
|
|
67
|
+
//#endregion
|
|
68
|
+
export { n, r, u as t };
|