@mkbabb/glass-ui 3.6.0 → 3.8.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/dist/CardAction-q2qHCJFG.js +157 -0
- package/dist/CollapsibleContent-CP9qF1v4.js +63 -0
- package/dist/{CommandShortcut-BiVyqipe.js → CommandShortcut-SzWRhROC.js} +4 -4
- package/dist/{ContextMenuContent-De01_83g.js → ContextMenuContent-DDa0v27s.js} +1 -1
- package/dist/{ContextMenuSubContent-DrWkXKQP.js → ContextMenuSubContent-Do977Cbf.js} +4 -4
- package/dist/{DataTable-BGVXx0Ww.js → DataTable-CvlWXz65.js} +14 -7
- package/dist/DeckProgress-AVgbIULY.js +23 -0
- package/dist/{DialogContent-IQ8_BRrC.js → DialogContent-DjZWT3lK.js} +24 -24
- package/dist/{DialogFooter-Er0wA3K6.js → DialogFooter-Gprw8H_A.js} +2 -2
- package/dist/{DiscoGlyph-BaZ8OawK.js → DiscoGlyph-CG0F410s.js} +1 -1
- package/dist/{GlyphFace-B_7vOmYn.js → GlyphFace-DRjDkB0s.js} +1 -1
- package/dist/{HoverCardContent-ICfIMZX1.js → HoverCardContent-B6CcQ8He.js} +1 -1
- package/dist/{HoverPopover-DTSYkJtw.js → HoverPopover-D56O6Ylp.js} +1 -1
- package/dist/{IconTooltip-DZlCkU-0.js → IconTooltip-D2T5nYOM.js} +1 -1
- package/dist/{Input-CRJ2owjN.js → Input-DVG_J0ne.js} +4 -1
- package/dist/{Label-CZk-3nTc.js → Label-zRfbQdCn.js} +1 -1
- package/dist/{MetricBadge-BlrdbOGN.js → MetricBadge-lTc002u2.js} +1 -1
- package/dist/{Notification-DP_ApJLo.js → Notification-BxK8LZMw.js} +5 -4
- package/dist/{NumberFieldContent-Bhhmk95p.js → NumberFieldContent-CLNVR1iY.js} +5 -5
- package/dist/{PopoverContent-B8WtJECb.js → PopoverContent-BId6ggf_.js} +2 -2
- package/dist/{Progress-DjM86vfb.js → Progress-iEuD9pxG.js} +7 -7
- package/dist/{ScrollingText-P9o_DuMn.js → ScrollingText-CVyqxvfv.js} +2 -2
- package/dist/{SelectScrollDownButton-BGn3rjs9.js → SelectScrollDownButton-C7TRe-ep.js} +8 -7
- package/dist/{Separator-C2XtAXRp.js → Separator-D7sD7RKj.js} +1 -1
- package/dist/{Switch-x8n6husW.js → Switch-LDKLmmgx.js} +8 -2
- package/dist/TabsList-qyHZ2lKY.js +101 -0
- package/dist/{Toaster-DdhMKfus.js → Toaster-CabYEEF_.js} +54 -60
- package/dist/{ToggleGroupItem-gyXj998A.js → ToggleGroupItem-CkXUcBlt.js} +13 -5
- package/dist/{TooltipProvider-D-JrSqDu.js → TooltipProvider-CmZzCuaG.js} +1 -1
- package/dist/{UnderlineTabs-CuIK16JI.js → UnderlineTabs-Uxn-R3MT.js} +2 -2
- package/dist/animated-digit.js +2 -2
- package/dist/api/index.d.ts +4 -2
- package/dist/api.js +1 -1
- package/dist/aurora.js +753 -359
- package/dist/{badge-Cl6JZ1B7.js → badge-DHQrc_GQ.js} +13 -9
- package/dist/badge.js +1 -1
- package/dist/{button-BcMzVrqs.js → button-CAywcrhO.js} +6 -3
- package/dist/button.js +1 -1
- package/dist/canvas.d.ts +1 -0
- package/dist/canvas.js +3 -0
- package/dist/card.js +2 -2
- package/dist/carousel.js +110 -109
- package/dist/{check-CdkxGxXJ.js → check-BBKKKSTf.js} +1 -1
- package/dist/{chevron-down-pBY8sYfV.js → chevron-down-BSkTP2aL.js} +1 -1
- package/dist/{chevron-right-BjeKC22V.js → chevron-right-sDM0Yvrf.js} +1 -1
- package/dist/{chevron-up-DBeNHUm1.js → chevron-up-CCOD_FTz.js} +1 -1
- package/dist/collapsible.js +1 -1
- package/dist/color-DMLTunJK.js +84 -0
- package/dist/color.js +2 -2
- package/dist/command.js +1 -1
- package/dist/compile-BBTRjvQS.js +158 -0
- package/dist/components/custom/aurora/Aurora.vue.d.ts +1 -0
- package/dist/components/custom/aurora/composables/atoms.d.ts +125 -0
- package/dist/components/custom/aurora/composables/color.d.ts +7 -25
- package/dist/components/custom/aurora/composables/cursorModel.d.ts +35 -2
- package/dist/components/custom/aurora/composables/glSetup.d.ts +1 -1
- package/dist/components/custom/aurora/composables/gpuRuntime.d.ts +16 -0
- package/dist/components/custom/aurora/composables/runtime.d.ts +18 -0
- package/dist/components/custom/aurora/composables/uniformBridge.d.ts +46 -12
- package/dist/components/custom/aurora/composables/useAurora.d.ts +6 -0
- package/dist/components/custom/aurora/composables/useCursorInteraction.d.ts +8 -0
- package/dist/components/custom/aurora/constants/presets.d.ts +60 -4
- package/dist/components/custom/aurora/constants/renderMode.d.ts +32 -0
- package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +7 -0
- package/dist/components/custom/aurora/constants/shaders/brush.glsl.d.ts +1 -1
- package/dist/components/custom/aurora/constants/shaders/composition.glsl.d.ts +1 -1
- package/dist/components/custom/aurora/constants/shaders/flow.glsl.d.ts +1 -1
- package/dist/components/custom/aurora/constants/shaders/mediums.glsl.d.ts +2 -2
- package/dist/components/custom/aurora/constants/shaders/painterly.wgsl.d.ts +7 -0
- package/dist/components/custom/aurora/constants/shaders/wake.wgsl.d.ts +4 -0
- package/dist/components/custom/aurora/index.d.ts +4 -3
- package/dist/components/custom/constellation/Constellation.vue.d.ts +40 -5
- package/dist/components/custom/constellation/constellationField.d.ts +110 -5
- package/dist/components/custom/constellation/index.d.ts +2 -2
- package/dist/components/custom/dock/GlassDock.vue.d.ts +12 -4
- package/dist/components/custom/dock/composables/dockMorphContext.d.ts +57 -0
- package/dist/components/custom/dock/composables/index.d.ts +3 -0
- package/dist/components/custom/dock/composables/useDockHold.d.ts +61 -0
- package/dist/components/custom/dock/composables/useLayerTransition.d.ts +13 -59
- package/dist/components/custom/dock/index.d.ts +2 -0
- package/dist/components/custom/fourier-field/FourierField.vue.d.ts +38 -0
- package/dist/components/custom/fourier-field/index.d.ts +2 -0
- package/dist/components/custom/fourier-field/math.d.ts +57 -0
- package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +15 -0
- package/dist/components/custom/goo-blob/composables/useBlobMood.d.ts +18 -2
- package/dist/components/custom/goo-blob/composables/useBlobPointer.d.ts +47 -4
- package/dist/components/custom/goo-blob/composables/useBlobSatellites.d.ts +2 -0
- package/dist/components/custom/goo-blob/composables/useMetaballRenderer.d.ts +19 -4
- package/dist/components/custom/goo-blob/index.d.ts +1 -1
- package/dist/components/custom/goo-blob/shaders/sdf-body.glsl.d.ts +1 -1
- package/dist/components/custom/goo-blob/shaders/watercolor-edges.glsl.d.ts +2 -2
- package/dist/components/custom/goo-blob/types.d.ts +48 -0
- package/dist/components/custom/metric-cell/MetricCell.vue.d.ts +1 -1
- package/dist/components/custom/metric-stack/MetricStack.vue.d.ts +1 -1
- package/dist/components/ui/_shared/ModalOverlay.vue.d.ts +1 -1
- package/dist/components/ui/alert/index.d.ts +1 -1
- package/dist/components/ui/card/Card.vue.d.ts +26 -3
- package/dist/components/ui/card/CardAction.vue.d.ts +24 -0
- package/dist/components/ui/card/index.d.ts +2 -1
- package/dist/components/ui/collapsible/CollapsibleTrigger.vue.d.ts +5 -1
- package/dist/components/ui/progress/ProgressDefault.vue.d.ts +14 -4
- package/dist/components/ui/slider/Slider.vue.d.ts +3 -1
- package/dist/components/ui/tabs/TabsList.vue.d.ts +13 -3
- package/dist/components/ui/toast/Toast.vue.d.ts +5 -5
- package/dist/components/ui/toast/use-toast.d.ts +1 -1
- package/dist/composables/color/index.d.ts +69 -0
- package/dist/composables/dom/index.d.ts +1 -1
- package/dist/composables/dom/useResolveTokenColor.d.ts +27 -0
- package/dist/composables/glass/canvas2d/index.d.ts +2 -1
- package/dist/composables/glass/canvas2d/resolveCanvasColor.d.ts +20 -0
- package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +15 -1
- package/dist/composables/glass/createGPUCanvas.d.ts +40 -0
- package/dist/composables/glass/index.d.ts +3 -1
- package/dist/composables/glass/useSpecularTracking.d.ts +33 -0
- package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +45 -0
- package/dist/composables/glass/webgl/shaders/procedural-color.glsl.d.ts +7 -0
- package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +5 -5
- package/dist/composables/motion/core/index.d.ts +1 -0
- package/dist/configurator.js +1 -1
- package/dist/confirm-dialog.js +3 -3
- package/dist/constellation.js +144 -75
- package/dist/context-menu.js +2 -2
- package/dist/controls.js +2 -2
- package/dist/dark.js +1 -1
- package/dist/data-table.js +1 -1
- package/dist/deck-progress.d.ts +1 -0
- package/dist/deck-progress.js +2 -0
- package/dist/dialog.js +2 -2
- package/dist/disco-glyph.js +1 -1
- package/dist/dock.js +388 -287
- package/dist/{dockContext-spUj_-E5.js → dockContext-BKeIMmNk.js} +1 -1
- package/dist/dom.js +6 -6
- package/dist/{dropdown-menu-EFjl5iKo.js → dropdown-menu-B_4bWyyG.js} +5 -5
- package/dist/dropdown-menu.js +1 -1
- package/dist/expandable-container.js +2 -2
- package/dist/fonts/README.md +26 -18
- package/dist/forms.js +10 -7
- package/dist/fourier-field.d.ts +1 -0
- package/dist/fourier-field.js +166 -0
- package/dist/glass-carousel.js +12 -7
- package/dist/glass-panel.js +7 -7
- package/dist/glass-ui.css +1 -1
- package/dist/glass-ui.js +209 -206
- package/dist/glyph-face.js +2 -2
- package/dist/goo-blob.js +485 -300
- package/dist/header-ribbon.js +1 -1
- package/dist/hover-card.js +1 -1
- package/dist/hover-popover.js +1 -1
- package/dist/icon-tooltip.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/instrument-chassis.js +1 -1
- package/dist/instrument-rail.js +1 -1
- package/dist/keyboard.js +1 -1
- package/dist/{keys-BFoma9vm.js → keys-BsYjEFOW.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-stack.js +1 -1
- package/dist/{minimize-2-BP27-qBY.js → minimize-2-lcXOuc6V.js} +1 -1
- package/dist/motion-core.js +68 -98
- package/dist/motion.js +3 -3
- package/dist/notification.js +1 -1
- package/dist/number-field.js +1 -1
- package/dist/paper-backdrop.js +1 -1
- package/dist/popover.js +1 -1
- package/dist/progress.js +1 -1
- package/dist/pulse.js +1 -1
- package/dist/reactive.js +2 -2
- package/dist/resolveCanvasColor-BBiYfp8g.js +11 -0
- package/dist/responsive-tabs.js +2 -2
- package/dist/scrolling-text.js +1 -1
- package/dist/{search-DBG8qaRs.js → search-nbkvr2dC.js} +1 -1
- package/dist/search.js +12 -12
- package/dist/select.js +3 -3
- package/dist/separator.js +1 -1
- package/dist/{sheet-CQYYrkr9.js → sheet-VZEtNFvO.js} +4 -4
- package/dist/sheet.js +1 -1
- package/dist/slider-D9puf-Ko.js +142 -0
- package/dist/slider.js +1 -1
- package/dist/sortable-list.js +3 -3
- package/dist/styles/components.css +1 -1
- package/dist/styles/dock-controls.css +21 -18
- package/dist/styles/dock.css +415 -224
- package/dist/styles/fonts.css +0 -25
- package/dist/styles/glass.css +100 -41
- package/dist/styles/theme.css +58 -2
- package/dist/styles/tokens.css +139 -32
- package/dist/styles/typography.css +55 -72
- package/dist/styles/utilities.css +19 -14
- package/dist/styles/view-transition.css +12 -40
- package/dist/supportsCssTimeline-C5oe0lnD.js +12 -0
- package/dist/switch.js +1 -1
- package/dist/tabs.js +5 -5
- package/dist/timeline.js +3 -3
- 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/{useAnimatedNumber-DfVgP4te.js → useAnimatedNumber-C_3wZLx4.js} +1 -1
- package/dist/{useCanvas2D-BeNJqqIS.js → useCanvas2D-ClrQuZtp.js} +2 -1
- package/dist/{useConfiguratorState-DUtC1jxr.js → useConfiguratorState-CMff4GzH.js} +5 -5
- package/dist/useResolveTokenColor-r9pnNjqK.js +24 -0
- package/dist/useScrollProgress-C9ysDic5.js +35 -0
- package/dist/useSpecularTracking-BVRZsRHA.js +26 -0
- package/dist/{useTextHighlight-Dmtofpk2.js → useTextHighlight-9nMW23Qb.js} +1 -1
- package/dist/{useTouchGate-CS5Csc2h.js → useTouchGate-WFyJYsth.js} +1 -1
- package/dist/vReveal-CqaCz_mC.js +44 -0
- package/dist/watercolor-dot.js +2 -2
- package/dist/{x-C4pz9nbD.js → x-Dfsegz9Y.js} +1 -1
- package/package.json +64 -4
- package/src/fonts/README.md +26 -18
- package/src/styles/dock-controls.css +21 -18
- package/src/styles/dock.css +415 -224
- package/src/styles/fonts.css +0 -25
- package/src/styles/glass.css +100 -41
- package/src/styles/theme.css +58 -2
- package/src/styles/tokens.css +139 -32
- package/src/styles/typography.css +55 -72
- package/src/styles/utilities.css +19 -14
- package/src/styles/view-transition.css +12 -40
- package/dist/CardFooter-C390imy7.js +0 -129
- package/dist/CollapsibleContent-cauTbZEM.js +0 -52
- package/dist/TabsIndicator-DA0x9gPr.js +0 -97
- package/dist/color-DS-iLRVM.js +0 -33
- package/dist/compile-C62K_FpC.js +0 -106
- package/dist/fonts/fraunces/fraunces-latin.woff2 +0 -0
- package/dist/slider-CgNzRSh6.js +0 -129
- package/dist/useViewTransition-DI0Rs2rV.js +0 -21
- package/dist/vReveal-u2wSG2El.js +0 -35
- package/src/fonts/fraunces/fraunces-latin.woff2 +0 -0
- /package/dist/{InstrumentChassis-DaHIZCqy.js → InstrumentChassis-C2f6cBaQ.js} +0 -0
- /package/dist/{InstrumentRail-B0qqLFN0.js → InstrumentRail-CUJ05YVG.js} +0 -0
- /package/dist/{ModalOverlay-B_CBtqcE.js → ModalOverlay-B1GkAjNb.js} +0 -0
- /package/dist/{PaperBackdrop-D_YZW47j.js → PaperBackdrop-CqwjnfLv.js} +0 -0
- /package/dist/{SelectGroup-CMdoCjRE.js → SelectGroup-BFiod7X2.js} +0 -0
- /package/dist/{SelectSeparator-CaJnPF3_.js → SelectSeparator-L8pPEn4L.js} +0 -0
- /package/dist/{_plugin-vue_export-helper-C1je1s0u.js → _plugin-vue_export-helper-ok8pgSl5.js} +0 -0
- /package/dist/composables/{dom → motion}/useTextHighlight.d.ts +0 -0
- /package/dist/{constants-C8NMonuo.js → constants-BPOqYJAm.js} +0 -0
- /package/dist/{createContext-DBMGRlx4.js → createContext-B44Sah_H.js} +0 -0
- /package/dist/{createLucideIcon-DuDoe_ra.js → createLucideIcon-B6uNAU9G.js} +0 -0
- /package/dist/{menuItemVariants-C2QlXqT3.js → menuItemVariants-DKM85SNE.js} +0 -0
- /package/dist/{presets-Dyv9Zl7W.js → presets-D1XPuTj-.js} +0 -0
- /package/dist/{prng-CjVgzjQT.js → prng-COGhh02-.js} +0 -0
- /package/dist/{useGlassRenderer-Dn3WpfG-.js → useGlassRenderer-5I0YkI4t.js} +0 -0
- /package/dist/{useGlobalDark-D7R9OypB.js → useGlobalDark-D3EBWzXK.js} +0 -0
- /package/dist/{useIntersectionPause-DsQYGc8V.js → useIntersectionPause-Bj4sPkMh.js} +0 -0
- /package/dist/{useInterval-CHVYFpXV.js → useInterval-CcLfq2WU.js} +0 -0
- /package/dist/{useKeyboardShortcuts-i8tHd5WO.js → useKeyboardShortcuts-BXWXOZ-9.js} +0 -0
- /package/dist/{useResizeObserver-DX-STszm.js → useResizeObserver-CWCbk5Px.js} +0 -0
- /package/dist/{useSortable-muI29agz.js → useSortable-MGAbCGVJ.js} +0 -0
- /package/dist/{useSpringMount-CnizvZGm.js → useSpringMount-BJSHcLl3.js} +0 -0
- /package/dist/{useTimer-DGgoxTXL.js → useTimer-3xqf_54b.js} +0 -0
- /package/dist/{useUserInvalidAria-DmvZ_6Dx.js → useUserInvalidAria-DoJKMZ3s.js} +0 -0
- /package/dist/{useViewportReady-Dcvf0c4p.js → useViewportReady-RIr5Wgkh.js} +0 -0
|
@@ -45,4 +45,18 @@ export interface Canvas2DHandle {
|
|
|
45
45
|
/** The live `prefers-reduced-motion: reduce` state (consumers read it to skip stepping). */
|
|
46
46
|
readonly reducedMotion: boolean;
|
|
47
47
|
}
|
|
48
|
-
|
|
48
|
+
/**
|
|
49
|
+
* The Canvas2D lifecycle substrate — the park/freeze/dispose twin of
|
|
50
|
+
* `useWebGLCanvas`. Returns an imperative {@link Canvas2DHandle} (the same
|
|
51
|
+
* handle idiom the WebGL twin uses — an imperative canvas seam is NOT a
|
|
52
|
+
* ref-bundle). `useCanvasLifecycle` is the alias-of-record for the
|
|
53
|
+
* lifecycle-only framing; both name the same factory.
|
|
54
|
+
*/
|
|
55
|
+
export declare function useCanvas2D(options: Canvas2DOptions): Canvas2DHandle;
|
|
56
|
+
/**
|
|
57
|
+
* Alias-of-record for {@link useCanvas2D} — the lifecycle-only framing (the
|
|
58
|
+
* park/freeze/dispose machinery, paralleling the WebGL substrate's
|
|
59
|
+
* `createCanvasLifecycle`). Same factory, same handle; reach for this name when
|
|
60
|
+
* the lifecycle (not the 2D drawing) is the consumer's emphasis.
|
|
61
|
+
*/
|
|
62
|
+
export declare const useCanvasLifecycle: typeof useCanvas2D;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/** The per-frame hooks a consumer's WebGPU `setup` returns (mirrors WebGLCanvasFrame). */
|
|
2
|
+
export interface GPUCanvasFrame {
|
|
3
|
+
frame: (timeSec: number) => void;
|
|
4
|
+
shouldContinue: () => boolean;
|
|
5
|
+
resize: () => void;
|
|
6
|
+
time?: (elapsedSec: number) => number;
|
|
7
|
+
teardown?: () => void;
|
|
8
|
+
}
|
|
9
|
+
export interface GPUCanvasSetupArgs {
|
|
10
|
+
device: GPUDevice;
|
|
11
|
+
context: GPUCanvasContext;
|
|
12
|
+
/** The swapchain format (`navigator.gpu.getPreferredCanvasFormat()`). */
|
|
13
|
+
format: GPUTextureFormat;
|
|
14
|
+
}
|
|
15
|
+
export interface GPUCanvasOptions {
|
|
16
|
+
/** The pre-acquired `GPUDevice` (from `resolveRenderModeAsync`'s adapter→device). */
|
|
17
|
+
device: GPUDevice;
|
|
18
|
+
/** Alpha mode for the swapchain (premultiplied to match the WebGL2 premultiply). */
|
|
19
|
+
alphaMode?: GPUCanvasAlphaMode;
|
|
20
|
+
mode?: "live" | "capture";
|
|
21
|
+
respectReducedMotion?: boolean;
|
|
22
|
+
/** Build the pipeline + bind group on the configured context. Returns frame hooks. */
|
|
23
|
+
setup: (args: GPUCanvasSetupArgs) => GPUCanvasFrame;
|
|
24
|
+
}
|
|
25
|
+
export interface GPUCanvasHandle {
|
|
26
|
+
arm: () => void;
|
|
27
|
+
suspend: (reason?: "tab-hidden" | "off-screen" | "manual") => void;
|
|
28
|
+
resume: (reason?: "tab-hidden" | "off-screen" | "manual") => void;
|
|
29
|
+
wake: () => void;
|
|
30
|
+
renderAt: (timeSec: number) => void;
|
|
31
|
+
dispose: () => void;
|
|
32
|
+
readonly device: GPUDevice | null;
|
|
33
|
+
readonly reducedMotion: boolean;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Build a WebGPU canvas over the shared lifecycle core. The `GPUDevice` is acquired
|
|
37
|
+
* by `resolveRenderModeAsync` (the probe) and passed in — `createGPUCanvas` configures
|
|
38
|
+
* the canvas context + threads the consumer `setup` through the agnostic schedule.
|
|
39
|
+
*/
|
|
40
|
+
export declare function createGPUCanvas(canvas: HTMLCanvasElement, options: GPUCanvasOptions): GPUCanvasHandle;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export { useGlassRenderer, createGlassFilter, destroyGlassFilter, type GlassTier, type GlassFilterState, type UseGlassRendererReturn, } from "./useGlassRenderer";
|
|
2
|
-
export {
|
|
2
|
+
export { useSpecularTracking } from "./useSpecularTracking";
|
|
3
|
+
export type { UseSpecularTracking } from "./useSpecularTracking";
|
|
4
|
+
export { useCanvas2D, useCanvasLifecycle, resolveCanvasColor } from "./canvas2d";
|
|
3
5
|
export type { Canvas2DFrame, Canvas2DHandle, Canvas2DOptions, Canvas2DSuspendReason, } from "./canvas2d";
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { ref, type CSSProperties } from "vue";
|
|
2
|
+
/**
|
|
3
|
+
* `useSpecularTracking` — the pointer-anchored moving-specular write seam
|
|
4
|
+
* (AX.W09). The single DRY home for the catch-light position write that was
|
|
5
|
+
* hand-copied VERBATIM in `Card.vue` and `DockIconButton.vue`.
|
|
6
|
+
*
|
|
7
|
+
* On pointer-move it writes the cursor position (`--mouse-x`/`--mouse-y`, as
|
|
8
|
+
* percentages of the host box) onto the host's inline style; the unified
|
|
9
|
+
* `.glass-material::before` recipe (`glass.css`) MAPS that host write onto its
|
|
10
|
+
* typed `--specular-x`/`--specular-y` channel and paints the travelling glow.
|
|
11
|
+
*
|
|
12
|
+
* VOCAB (HARDENING §G #28): `--mouse-x`/`--mouse-y` is the HOST WRITE this seam
|
|
13
|
+
* owns; `--specular-x`/`--specular-y` is the CSS-internal MAPPED channel the
|
|
14
|
+
* recipe reads. The host writes `--mouse-x/y`; the recipe maps it.
|
|
15
|
+
*
|
|
16
|
+
* The catch-light MAGNITUDE rides the `--glass-specular-intensity-{rest,hover,
|
|
17
|
+
* active}` token cohort (tokens.css) the recipe reads — this seam only feeds the
|
|
18
|
+
* position. The recipe's rest rung is `0` (dormant) so an UNWIRED surface is
|
|
19
|
+
* clean; calling this seam is the wire-or-omit opt-in that wakes the lens on
|
|
20
|
+
* hover/active.
|
|
21
|
+
*
|
|
22
|
+
* PRM-aware: under `prefers-reduced-motion: reduce` the seam DOES NOT write the
|
|
23
|
+
* position (the CSS half pins the catch-light static at the centred `50%`
|
|
24
|
+
* fallback). The write is style-only — no reflow, no re-render — and inert until
|
|
25
|
+
* the user actually moves the pointer over a wired host.
|
|
26
|
+
*/
|
|
27
|
+
export interface UseSpecularTracking {
|
|
28
|
+
/** Bind to the host element's `:style`. Carries the `--mouse-x/--mouse-y` write. */
|
|
29
|
+
specularStyle: ReturnType<typeof ref<CSSProperties>>;
|
|
30
|
+
/** Bind to the host's `@pointermove`. Writes the cursor position (PRM-gated). */
|
|
31
|
+
onPointerMove: (event: PointerEvent) => void;
|
|
32
|
+
}
|
|
33
|
+
export declare function useSpecularTracking(): UseSpecularTracking;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export type CanvasSuspendReason = "tab-hidden" | "off-screen" | "off-screen-io" | "manual";
|
|
2
|
+
/** The per-frame hooks a backend's `buildContext` returns to the lifecycle core. */
|
|
3
|
+
export interface CanvasFrameHooks {
|
|
4
|
+
/** Draw one frame at `timeSec`. */
|
|
5
|
+
frame: (timeSec: number) => void;
|
|
6
|
+
/** Demand-gate: is there live motion to render next frame? `false` → park. */
|
|
7
|
+
shouldContinue: () => boolean;
|
|
8
|
+
/** Frame time from elapsed seconds — the consumer owns frozen/reduced-motion. */
|
|
9
|
+
time?: (elapsedSec: number) => number;
|
|
10
|
+
/** Release backend resources (program/buffers/pipelines). */
|
|
11
|
+
teardown?: () => void;
|
|
12
|
+
}
|
|
13
|
+
export interface CanvasLifecycleOptions {
|
|
14
|
+
canvas: HTMLCanvasElement;
|
|
15
|
+
mode?: "live" | "capture";
|
|
16
|
+
respectReducedMotion?: boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Acquire the backend context + build the per-frame hooks. Called on `arm()` AND
|
|
19
|
+
* on a backend context-restore. Throws on backend-unavailable / setup failure.
|
|
20
|
+
*/
|
|
21
|
+
buildContext: () => CanvasFrameHooks;
|
|
22
|
+
/** Resize the backing store + viewport. The consumer owns its DPR policy. */
|
|
23
|
+
resize: () => void;
|
|
24
|
+
/**
|
|
25
|
+
* Bind/unbind backend-specific context-loss/restore listeners. `rebuild` re-runs
|
|
26
|
+
* `buildContext` on a fresh context + resumes the loop (the self-heal); the backend
|
|
27
|
+
* calls `markContextLost` on loss so the lifecycle NULLS its hooks + cancels the
|
|
28
|
+
* rAF (the loop parks while the surface is blank — no frame attaches to a dead gl).
|
|
29
|
+
*/
|
|
30
|
+
bindContextEvents?: (rebuild: () => void, markContextLost: () => void) => void;
|
|
31
|
+
unbindContextEvents?: () => void;
|
|
32
|
+
}
|
|
33
|
+
export interface CanvasLifecycleHandle {
|
|
34
|
+
arm: () => void;
|
|
35
|
+
suspend: (reason?: CanvasSuspendReason) => void;
|
|
36
|
+
resume: (reason?: CanvasSuspendReason) => void;
|
|
37
|
+
wake: () => void;
|
|
38
|
+
renderAt: (timeSec: number) => void;
|
|
39
|
+
dispose: () => void;
|
|
40
|
+
readonly armed: boolean;
|
|
41
|
+
readonly disposed: boolean;
|
|
42
|
+
readonly running: boolean;
|
|
43
|
+
readonly reducedMotion: boolean;
|
|
44
|
+
}
|
|
45
|
+
export declare function createCanvasLifecycle(options: CanvasLifecycleOptions): CanvasLifecycleHandle;
|
|
@@ -1,3 +1,10 @@
|
|
|
1
1
|
export declare const OETF_GLSL = "\nfloat srgbToLinearCh(float c) {\n return c <= 0.04045 ? c / 12.92 : pow((c + 0.055) / 1.055, 2.4);\n}\nvec3 srgbToLinear(vec3 c) {\n return vec3(srgbToLinearCh(c.r), srgbToLinearCh(c.g), srgbToLinearCh(c.b));\n}\n\nfloat linearToSrgbCh(float c) {\n return c <= 0.0031308 ? c * 12.92 : 1.055 * pow(c, 1.0 / 2.4) - 0.055;\n}\nvec3 linearToSrgb(vec3 c) {\n return vec3(linearToSrgbCh(c.r), linearToSrgbCh(c.g), linearToSrgbCh(c.b));\n}";
|
|
2
2
|
export declare const FBM_ROT_GLSL = "const mat2 FBM_ROT = mat2(0.8, 0.6, -0.6, 0.8);";
|
|
3
3
|
export declare const OKLCH_MATRICES_GLSL = "\n// value.js LINEAR_SRGB_TO_LMS (constants.ts), row-major; written here as GLSL\n// columns (= the transpose) so mat3 * vec3 evaluates the row-major M\u00B7v.\nconst mat3 LINEAR_SRGB_TO_LMS = mat3(\n 0.4122214708, 0.2119034982, 0.0883024619,\n 0.5363325363, 0.6806995451, 0.2817188376,\n 0.0514459929, 0.1073969566, 0.6299787005\n);\n\n// value.js srgbToOKLab's INLINE LMS\u2192OKLab coefficients (gamut.ts lines 295-297 \u2014\n// these differ at the ~1e-9 digit from LMS_TO_OKLAB_MATRIX; use the inline ones to\n// mirror the exact value.js path), row-major \u2192 GLSL columns.\nconst mat3 LMS_TO_OKLAB = mat3(\n 0.2104542553, 1.9779984951, 0.0259040371,\n 0.7936177850, -2.4285922050, 0.7827717662,\n -0.0040720468, 0.4505937099, -0.8086757660\n);\n\n// value.js OKLAB_TO_LMS_COEFF (constants.ts), row-major \u2192 GLSL columns. Rows:\n// l = [1, 0.3963377774, 0.2158037573], m = [1, -0.1055613458, -0.0638541728],\n// s = [1, -0.0894841775, -1.2914855480].\nconst mat3 OKLAB_TO_LMS = mat3(\n 1.0, 1.0, 1.0,\n 0.3963377774, -0.1055613458, -0.0894841775,\n 0.2158037573, -0.0638541728, -1.2914855480\n);\n\n// value.js LMS_TO_LINEAR_SRGB (constants.ts), row-major \u2192 GLSL columns.\nconst mat3 LMS_TO_LINEAR_SRGB = mat3(\n 4.0767416621, -1.2684380046, -0.0041960863,\n -3.3077115913, 2.6097574011, -0.7034186147,\n 0.2309699292, -0.3413193965, 1.7076147010\n);\n\n// Gamma sRGB \u2192 raw OKLab (L, a, b). Mirrors value.js srgbToOKLab.\nvec3 srgbToOklab(vec3 c) {\n vec3 lin = srgbToLinear(c);\n vec3 lms = LINEAR_SRGB_TO_LMS * lin;\n vec3 lmsCbrt = sign(lms) * pow(abs(lms), vec3(1.0 / 3.0));\n return LMS_TO_OKLAB * lmsCbrt;\n}\n\n// Raw OKLab (L, a, b) \u2192 linear sRGB. Mirrors value.js oklabToLinearSRGB.\nvec3 oklabToLinearSrgb(vec3 lab) {\n vec3 lms_ = OKLAB_TO_LMS * lab;\n vec3 lms = lms_ * lms_ * lms_;\n return LMS_TO_LINEAR_SRGB * lms;\n}\n\n// OKLab \u2192 OKLCh: H in RADIANS. Mirrors value.js rawOklabToOklch (which returns\n// degrees; we stay in radians and only fold to [0, 2pi)).\nvec3 oklabToOklch(vec3 lab) {\n float C = length(lab.yz);\n float H = atan(lab.z, lab.y);\n if (H < 0.0) H += 2.0 * PI;\n return vec3(lab.x, C, H);\n}\n\n// OKLCh (H radians) \u2192 OKLab. Mirrors value.js rawOklchToOklab.\nvec3 oklchToOklab(vec3 lch) {\n return vec3(lch.x, lch.y * cos(lch.z), lch.y * sin(lch.z));\n}";
|
|
4
|
+
export declare const PALETTE_RAMP_GLSL = "\n// value.js interpolateHue in the NORMALIZED-TURNS domain (h_rad/TAU \u2192 turns, the\n// exact .5/+1.0 branch per method, fract() wrap, *TAU back). A radians-native port\n// (PI thresholds / +TAU wrap) diverges 180\u00B0 at the antipode. methods: 0 shorter,\n// 1 longer, 2 increasing, 3 decreasing.\nfloat interpolateHueTurns(float h0, float h1, float t, int method) {\n float TAU = 2.0 * PI;\n float a = h0 / TAU;\n float b = h1 / TAU;\n float i = b - a;\n if (method == 0) { // shorter\n if (i > 0.5) a += 1.0; else if (i < -0.5) b += 1.0;\n } else if (method == 1) { // longer\n if (i > 0.0 && i < 0.5) a += 1.0; else if (i > -0.5 && i <= 0.0) b += 1.0;\n } else if (method == 2) { // increasing\n if (i < 0.0) b += 1.0;\n } else { // decreasing\n if (i > 0.0) a += 1.0;\n }\n float r = a + t * (b - a);\n r = fract(r); // (r % 1 + 1) % 1 \u2014 fract is non-negative in GLSL\n return r * TAU; // back to radians\n}\n\n// Linear-sRGB endpoint pair \u2192 OKLab-rectangular interpolation \u2192 linear sRGB. Holds\n// chroma across the ramp (no grey midpoint). The default/shorter ramp path.\nvec3 mixPaletteOklab(vec3 linA, vec3 linB, float t) {\n vec3 labA = LMS_TO_OKLAB * (sign(LINEAR_SRGB_TO_LMS * linA) * pow(abs(LINEAR_SRGB_TO_LMS * linA), vec3(1.0 / 3.0)));\n vec3 labB = LMS_TO_OKLAB * (sign(LINEAR_SRGB_TO_LMS * linB) * pow(abs(LINEAR_SRGB_TO_LMS * linB), vec3(1.0 / 3.0)));\n vec3 lab = mix(labA, labB, t);\n return oklabToLinearSrgb(lab);\n}\n\n// Linear-sRGB endpoint pair \u2192 OKLCh interpolation along the huePath arc \u2192 linear\n// sRGB. L and C lerp; H walks the chosen arc. The deliberate-rainbow path.\nvec3 mixPaletteOklchArc(vec3 linA, vec3 linB, float t, int method) {\n vec3 labA = LMS_TO_OKLAB * (sign(LINEAR_SRGB_TO_LMS * linA) * pow(abs(LINEAR_SRGB_TO_LMS * linA), vec3(1.0 / 3.0)));\n vec3 labB = LMS_TO_OKLAB * (sign(LINEAR_SRGB_TO_LMS * linB) * pow(abs(LINEAR_SRGB_TO_LMS * linB), vec3(1.0 / 3.0)));\n vec3 lchA = oklabToOklch(labA);\n vec3 lchB = oklabToOklch(labB);\n float L = mix(lchA.x, lchB.x, t);\n float C = mix(lchA.y, lchB.y, t);\n float H = interpolateHueTurns(lchA.z, lchB.z, t, method);\n return oklabToLinearSrgb(oklchToOklab(vec3(L, C, H)));\n}\n\n// The ramp dispatcher both samplePalette ports splice. tRaw is the raw inter-stop\n// parameter [0,1]; the smoothstep ease + the huePath branch live HERE so the GLSL\n// and WGSL ramps are character-for-character one source. increasing(2)/decreasing(3)\n// take the OKLCh hue-arc (rainbow sweep); every other method takes the OKLab-\n// rectangular straight line (no hue detour).\nvec3 samplePaletteRamp(vec3 a, vec3 b, float tRaw, int huePath) {\n float t = smoothstep(0.0, 1.0, tRaw);\n if (huePath == 2 || huePath == 3) {\n return mixPaletteOklchArc(a, b, t, huePath);\n }\n return mixPaletteOklab(a, b, t);\n}";
|
|
5
|
+
export declare const PCG_HASH_GLSL = "\n// Jarzynski PCG2D \u2014 uvec2 \u2192 uvec2 permuted-congruential hash (JCGT 2020).\nuvec2 pcg2d(uvec2 v) {\n v = v * 1664525u + 1013904223u;\n v.x += v.y * 1664525u;\n v.y += v.x * 1664525u;\n v = v ^ (v >> 16u);\n v.x += v.y * 1664525u;\n v.y += v.x * 1664525u;\n v = v ^ (v >> 16u);\n return v;\n}\n\n// Float\u2192[0,1) scalar hash: bit-reinterpret the lattice coordinate, pcg2d it, take the\n// high word back to [0,1). Integer-bit \u2014 no sin() periodicity, no float-fract lattice.\nfloat pcgHash2(vec2 p) {\n uvec2 u = floatBitsToUint(p);\n return float(pcg2d(u).x) * (1.0 / 4294967296.0);\n}\n\n// Integer-lattice gradient: pcg2d the integer cell, fold the hash to an angle, return\n// the unit gradient vector. The gradient basis (not a scalar value) is what makes the\n// noise zero at the nodes (no value-noise plateaus).\nvec2 pcgGrad2(ivec2 cell) {\n uvec2 h = pcg2d(uvec2(cell));\n float ang = float(h.x) * (1.0 / 4294967296.0) * 6.28318530717958647692;\n return vec2(cos(ang), sin(ang));\n}\n\n// 2D SIMPLEX gradient noise (Gustavson skew). The skew transform F2/G2 maps the square\n// lattice onto a simplex (triangular) grid \u2014 no axis-aligned directional bias. Each of\n// the three simplex corners contributes grad\u00B7offset shaped by a radial (0.5 - r\u00B2)\u2074\n// falloff. Output is ~[-1, 1]; callers remap to [0,1] via 0.5 + 0.5*gnoise.\nfloat gnoise(vec2 p) {\n const float F2 = 0.36602540378443864676; // (sqrt(3) - 1) / 2\n const float G2 = 0.21132486540518711775; // (3 - sqrt(3)) / 6\n float s = (p.x + p.y) * F2;\n vec2 i = floor(p + s);\n float tt = (i.x + i.y) * G2;\n vec2 x0 = p - (i - tt); // offset from the simplex origin corner\n ivec2 i1 = (x0.x > x0.y) ? ivec2(1, 0) : ivec2(0, 1);\n vec2 x1 = x0 - vec2(i1) + G2;\n vec2 x2 = x0 - 1.0 + 2.0 * G2;\n ivec2 ii = ivec2(i);\n float n = 0.0;\n float t0 = 0.5 - dot(x0, x0);\n if (t0 > 0.0) { t0 *= t0; n += t0 * t0 * dot(pcgGrad2(ii), x0); }\n float t1 = 0.5 - dot(x1, x1);\n if (t1 > 0.0) { t1 *= t1; n += t1 * t1 * dot(pcgGrad2(ii + i1), x1); }\n float t2 = 0.5 - dot(x2, x2);\n if (t2 > 0.0) { t2 *= t2; n += t2 * t2 * dot(pcgGrad2(ii + ivec2(1, 1)), x2); }\n return 70.0 * n; // normalize to ~[-1, 1]\n}";
|
|
6
|
+
export declare const OETF_WGSL = "\nfn srgbToLinearCh(c: f32) -> f32 {\n return select(pow((c + 0.055) / 1.055, 2.4), c / 12.92, c <= 0.04045);\n}\nfn srgbToLinear(c: vec3f) -> vec3f {\n return vec3f(srgbToLinearCh(c.r), srgbToLinearCh(c.g), srgbToLinearCh(c.b));\n}\nfn linearToSrgbCh(c: f32) -> f32 {\n return select(1.055 * pow(c, 1.0 / 2.4) - 0.055, c * 12.92, c <= 0.0031308);\n}\nfn linearToSrgb(c: vec3f) -> vec3f {\n return vec3f(linearToSrgbCh(c.r), linearToSrgbCh(c.g), linearToSrgbCh(c.b));\n}";
|
|
7
|
+
export declare const FBM_ROT_WGSL = "const FBM_ROT: mat2x2f = mat2x2f(0.8, 0.6, -0.6, 0.8);";
|
|
8
|
+
export declare const OKLCH_MATRICES_WGSL = "\nconst LINEAR_SRGB_TO_LMS: mat3x3f = mat3x3f(\n 0.4122214708, 0.2119034982, 0.0883024619,\n 0.5363325363, 0.6806995451, 0.2817188376,\n 0.0514459929, 0.1073969566, 0.6299787005\n);\nconst LMS_TO_OKLAB: mat3x3f = mat3x3f(\n 0.2104542553, 1.9779984951, 0.0259040371,\n 0.7936177850, -2.4285922050, 0.7827717662,\n -0.0040720468, 0.4505937099, -0.8086757660\n);\nconst OKLAB_TO_LMS: mat3x3f = mat3x3f(\n 1.0, 1.0, 1.0,\n 0.3963377774, -0.1055613458, -0.0894841775,\n 0.2158037573, -0.0638541728, -1.2914855480\n);\nconst LMS_TO_LINEAR_SRGB: mat3x3f = mat3x3f(\n 4.0767416621, -1.2684380046, -0.0041960863,\n -3.3077115913, 2.6097574011, -0.7034186147,\n 0.2309699292, -0.3413193965, 1.7076147010\n);\n\nfn srgbToOklab(c: vec3f) -> vec3f {\n let lin = srgbToLinear(c);\n let lms = LINEAR_SRGB_TO_LMS * lin;\n let lmsCbrt = sign(lms) * pow(abs(lms), vec3f(1.0 / 3.0));\n return LMS_TO_OKLAB * lmsCbrt;\n}\nfn oklabToLinearSrgb(lab: vec3f) -> vec3f {\n let lms_ = OKLAB_TO_LMS * lab;\n let lms = lms_ * lms_ * lms_;\n return LMS_TO_LINEAR_SRGB * lms;\n}\nfn oklabToOklch(lab: vec3f) -> vec3f {\n let C = length(lab.yz);\n var H = atan2(lab.z, lab.y);\n if (H < 0.0) { H = H + 2.0 * PI; }\n return vec3f(lab.x, C, H);\n}\nfn oklchToOklab(lch: vec3f) -> vec3f {\n return vec3f(lch.x, lch.y * cos(lch.z), lch.y * sin(lch.z));\n}";
|
|
9
|
+
export declare const PALETTE_RAMP_WGSL = "\nfn interpolateHueTurns(h0: f32, h1: f32, t: f32, method: i32) -> f32 {\n let TAU = 2.0 * PI;\n var a = h0 / TAU;\n var b = h1 / TAU;\n let i = b - a;\n if (method == 0) { // shorter\n if (i > 0.5) { a = a + 1.0; } else if (i < -0.5) { b = b + 1.0; }\n } else if (method == 1) { // longer\n if (i > 0.0 && i < 0.5) { a = a + 1.0; } else if (i > -0.5 && i <= 0.0) { b = b + 1.0; }\n } else if (method == 2) { // increasing\n if (i < 0.0) { b = b + 1.0; }\n } else { // decreasing\n if (i > 0.0) { a = a + 1.0; }\n }\n let r = fract(a + t * (b - a));\n return r * TAU;\n}\n\nfn mixPaletteOklab(linA: vec3f, linB: vec3f, t: f32) -> vec3f {\n let labA = LMS_TO_OKLAB * (sign(LINEAR_SRGB_TO_LMS * linA) * pow(abs(LINEAR_SRGB_TO_LMS * linA), vec3f(1.0 / 3.0)));\n let labB = LMS_TO_OKLAB * (sign(LINEAR_SRGB_TO_LMS * linB) * pow(abs(LINEAR_SRGB_TO_LMS * linB), vec3f(1.0 / 3.0)));\n let lab = mix(labA, labB, vec3f(t));\n return oklabToLinearSrgb(lab);\n}\n\nfn mixPaletteOklchArc(linA: vec3f, linB: vec3f, t: f32, method: i32) -> vec3f {\n let labA = LMS_TO_OKLAB * (sign(LINEAR_SRGB_TO_LMS * linA) * pow(abs(LINEAR_SRGB_TO_LMS * linA), vec3f(1.0 / 3.0)));\n let labB = LMS_TO_OKLAB * (sign(LINEAR_SRGB_TO_LMS * linB) * pow(abs(LINEAR_SRGB_TO_LMS * linB), vec3f(1.0 / 3.0)));\n let lchA = oklabToOklch(labA);\n let lchB = oklabToOklch(labB);\n let L = mix(lchA.x, lchB.x, t);\n let C = mix(lchA.y, lchB.y, t);\n let H = interpolateHueTurns(lchA.z, lchB.z, t, method);\n return oklabToLinearSrgb(oklchToOklab(vec3f(L, C, H)));\n}\n\nfn samplePaletteRamp(a: vec3f, b: vec3f, tRaw: f32, huePath: i32) -> vec3f {\n let t = smoothstep(0.0, 1.0, tRaw);\n if (huePath == 2 || huePath == 3) {\n return mixPaletteOklchArc(a, b, t, huePath);\n }\n return mixPaletteOklab(a, b, t);\n}";
|
|
10
|
+
export declare const PCG_HASH_WGSL = "\nfn pcg2d(v0: vec2u) -> vec2u {\n var v = v0 * 1664525u + vec2u(1013904223u);\n v.x = v.x + v.y * 1664525u;\n v.y = v.y + v.x * 1664525u;\n v = v ^ (v >> vec2u(16u));\n v.x = v.x + v.y * 1664525u;\n v.y = v.y + v.x * 1664525u;\n v = v ^ (v >> vec2u(16u));\n return v;\n}\n\nfn pcgHash2(p: vec2f) -> f32 {\n let u = bitcast<vec2u>(p);\n return f32(pcg2d(u).x) * (1.0 / 4294967296.0);\n}\n\nfn pcgGrad2(cell: vec2i) -> vec2f {\n let h = pcg2d(bitcast<vec2u>(cell));\n let ang = f32(h.x) * (1.0 / 4294967296.0) * 6.28318530717958647692;\n return vec2f(cos(ang), sin(ang));\n}\n\nfn gnoise(p: vec2f) -> f32 {\n let F2 = 0.36602540378443864676;\n let G2 = 0.21132486540518711775;\n let s = (p.x + p.y) * F2;\n let i = floor(p + vec2f(s));\n let tt = (i.x + i.y) * G2;\n let x0 = p - (i - vec2f(tt));\n var i1 = vec2i(0, 1);\n if (x0.x > x0.y) { i1 = vec2i(1, 0); }\n let x1 = x0 - vec2f(i1) + vec2f(G2);\n let x2 = x0 - vec2f(1.0) + vec2f(2.0 * G2);\n let ii = vec2i(i);\n var n = 0.0;\n var t0 = 0.5 - dot(x0, x0);\n if (t0 > 0.0) { t0 = t0 * t0; n = n + t0 * t0 * dot(pcgGrad2(ii), x0); }\n var t1 = 0.5 - dot(x1, x1);\n if (t1 > 0.0) { t1 = t1 * t1; n = n + t1 * t1 * dot(pcgGrad2(ii + i1), x1); }\n var t2 = 0.5 - dot(x2, x2);\n if (t2 > 0.0) { t2 = t2 * t2; n = n + t2 * t2 * dot(pcgGrad2(ii + vec2i(1, 1)), x2); }\n return 70.0 * n;\n}";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type WebGLSuspendReason = "tab-hidden" | "off-screen" | "manual";
|
|
1
|
+
export type WebGLSuspendReason = "tab-hidden" | "off-screen" | "off-screen-io" | "manual";
|
|
2
2
|
/** The per-frame hooks a consumer's `setup(gl)` returns. */
|
|
3
3
|
export interface WebGLCanvasFrame {
|
|
4
4
|
/** Draw one frame at `timeSec`. The consumer uploads its uniforms + draws. */
|
|
@@ -19,7 +19,7 @@ export interface WebGLCanvasOptions {
|
|
|
19
19
|
mode?: "live" | "capture";
|
|
20
20
|
/**
|
|
21
21
|
* Honor `prefers-reduced-motion: reduce` by painting ONE static frame then
|
|
22
|
-
* parking the loop
|
|
22
|
+
* parking the loop. The shared lifecycle core live-monitors the query via a
|
|
23
23
|
* `matchMedia` `change` listener and re-arms (one static frame) on un-reduce.
|
|
24
24
|
* Default `true` for live mode, `false` for capture mode (a capture runtime
|
|
25
25
|
* draws deterministic frames via `renderAt`, never the live loop). A consumer
|
|
@@ -45,9 +45,9 @@ export interface WebGLCanvasHandle {
|
|
|
45
45
|
/** The live context (null before arm / after dispose / mid-loss). */
|
|
46
46
|
readonly gl: WebGL2RenderingContext | null;
|
|
47
47
|
/**
|
|
48
|
-
* The live `prefers-reduced-motion: reduce` state
|
|
49
|
-
* owns + re-monitors it; consumers read it (e.g. aurora freezes its frame
|
|
50
|
-
*
|
|
48
|
+
* The live `prefers-reduced-motion: reduce` state. The shared lifecycle core
|
|
49
|
+
* owns + re-monitors it; consumers read it (e.g. aurora freezes its frame time
|
|
50
|
+
* at the authored offset while this is `true`). `false` when
|
|
51
51
|
* `respectReducedMotion` is off.
|
|
52
52
|
*/
|
|
53
53
|
readonly reducedMotion: boolean;
|
package/dist/configurator.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "./useConfiguratorState-
|
|
1
|
+
import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "./useConfiguratorState-CMff4GzH.js";
|
|
2
2
|
export { e as CONFIGURATOR_DENSITY_KEY, t as Configurator, i as ConfiguratorLayer, n as ConfiguratorRow, r as provideConfiguratorDensity, o as useConfiguratorState, a as useOptionalConfiguratorDensity };
|
package/dist/confirm-dialog.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { t as e } from "./createLucideIcon-
|
|
2
|
-
import { n as t } from "./button-
|
|
3
|
-
import { t as n } from "./_plugin-vue_export-helper-
|
|
1
|
+
import { t as e } from "./createLucideIcon-B6uNAU9G.js";
|
|
2
|
+
import { n as t } from "./button-CAywcrhO.js";
|
|
3
|
+
import { t as n } from "./_plugin-vue_export-helper-ok8pgSl5.js";
|
|
4
4
|
import { Transition as r, createBlock as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, createTextVNode as c, createVNode as l, defineComponent as u, mergeModels as d, openBlock as f, renderSlot as p, toDisplayString as m, unref as h, useModel as g, withCtx as _, withKeys as v, withModifiers as y } from "vue";
|
|
5
5
|
var b = e("loader-circle", [["path", {
|
|
6
6
|
d: "M21 12a9 9 0 1 1-6.219-8.56",
|
package/dist/constellation.js
CHANGED
|
@@ -1,24 +1,35 @@
|
|
|
1
1
|
import { t as e } from "./cn-DJXf4yaB.js";
|
|
2
|
-
import { t } from "./
|
|
3
|
-
import { t as n } from "./
|
|
4
|
-
import { n as r, t as i } from "./prng-
|
|
5
|
-
import { computed as a, createElementBlock as o, createElementVNode as s, defineComponent as c, normalizeClass as l, onMounted as u, openBlock as d,
|
|
2
|
+
import { t } from "./useCanvas2D-ClrQuZtp.js";
|
|
3
|
+
import { t as n } from "./_plugin-vue_export-helper-ok8pgSl5.js";
|
|
4
|
+
import { n as r, t as i } from "./prng-COGhh02-.js";
|
|
5
|
+
import { computed as a, createElementBlock as o, createElementVNode as s, defineComponent as c, normalizeClass as l, onMounted as u, openBlock as d, ref as f, unref as p, useTemplateRef as m } from "vue";
|
|
6
6
|
//#region src/components/custom/constellation/constellationField.ts
|
|
7
|
-
var
|
|
7
|
+
var h = 1280, g = {
|
|
8
8
|
node: "#b4afa3",
|
|
9
9
|
nodeDim: "#cdc8bd",
|
|
10
|
-
line: "#1c1714"
|
|
10
|
+
line: "#1c1714",
|
|
11
|
+
edgeAlpha: .22,
|
|
12
|
+
edgeFocusAlpha: .34,
|
|
13
|
+
alpha: .8
|
|
11
14
|
};
|
|
12
|
-
function
|
|
13
|
-
if (typeof window > "u") return { ...
|
|
14
|
-
let t = getComputedStyle(e), n = (e, n) => t.getPropertyValue(e).trim() || n
|
|
15
|
+
function _(e) {
|
|
16
|
+
if (typeof window > "u") return { ...g };
|
|
17
|
+
let t = getComputedStyle(e), n = (e, n) => t.getPropertyValue(e).trim() || n, r = (e, n) => {
|
|
18
|
+
let r = t.getPropertyValue(e).trim();
|
|
19
|
+
if (!r) return n;
|
|
20
|
+
let i = Number.parseFloat(r);
|
|
21
|
+
return Number.isFinite(i) ? i : n;
|
|
22
|
+
};
|
|
15
23
|
return {
|
|
16
|
-
node: n("--constellation-node",
|
|
17
|
-
nodeDim: n("--constellation-node-dim",
|
|
18
|
-
line: n("--constellation-line",
|
|
24
|
+
node: n("--constellation-node", g.node),
|
|
25
|
+
nodeDim: n("--constellation-node-dim", g.nodeDim),
|
|
26
|
+
line: n("--constellation-line", g.line),
|
|
27
|
+
edgeAlpha: r("--constellation-edge-alpha", g.edgeAlpha),
|
|
28
|
+
edgeFocusAlpha: r("--constellation-edge-focus-alpha", g.edgeFocusAlpha),
|
|
29
|
+
alpha: r("--constellation-alpha", g.alpha)
|
|
19
30
|
};
|
|
20
31
|
}
|
|
21
|
-
function
|
|
32
|
+
function v(e, t, n, r, i) {
|
|
22
33
|
let a = [];
|
|
23
34
|
for (let o = 0; o < t; o++) {
|
|
24
35
|
let t = e() * Math.PI * 2;
|
|
@@ -33,53 +44,84 @@ function _(e, t, n, r, i) {
|
|
|
33
44
|
}
|
|
34
45
|
return a;
|
|
35
46
|
}
|
|
36
|
-
function
|
|
37
|
-
let { nodes:
|
|
38
|
-
for (let e = 0; e <
|
|
39
|
-
let n =
|
|
40
|
-
n.x += n.vx * t, n.y += n.vy * t, n.x < 0 ? (n.x = 0, n.vx *= -1) : n.x >
|
|
47
|
+
function y(e, t, n, r, i = 0) {
|
|
48
|
+
let { nodes: a, w: o, h: s } = e;
|
|
49
|
+
for (let e = 0; e < a.length; e++) {
|
|
50
|
+
let n = a[e];
|
|
51
|
+
n.x += n.vx * t, n.y += n.vy * t, n.x < 0 ? (n.x = 0, n.vx *= -1) : n.x > o && (n.x = o, n.vx *= -1), n.y < 0 ? (n.y = 0, n.vy *= -1) : n.y > s && (n.y = s, n.vy *= -1);
|
|
41
52
|
}
|
|
42
53
|
if (r && r.x >= 0) {
|
|
43
54
|
let e = 180 * t;
|
|
44
|
-
for (let t = 0; t <
|
|
45
|
-
let
|
|
55
|
+
for (let t = 0; t < a.length; t++) {
|
|
56
|
+
let i = a[t], o = r.x - i.x, s = r.y - i.y, c = Math.hypot(o, s);
|
|
46
57
|
if (c > .5 && c < e) {
|
|
47
|
-
let t = Math.hypot(
|
|
48
|
-
|
|
58
|
+
let t = Math.hypot(i.vx, i.vy) || n, r = (1 - c / e) * .08, a = i.vx + o / c * r * t, l = i.vy + s / c * r * t, u = Math.hypot(a, l) || 1;
|
|
59
|
+
i.vx = a / u * t, i.vy = l / u * t;
|
|
49
60
|
}
|
|
50
61
|
}
|
|
51
62
|
}
|
|
63
|
+
T(e, i);
|
|
64
|
+
}
|
|
65
|
+
var b = .55, x = 1, S = 2 * Math.PI / b, C = .05;
|
|
66
|
+
function w(e, t, n, r = -1) {
|
|
67
|
+
let { nodes: i } = e, a = -1, o = Infinity;
|
|
68
|
+
for (let e = 0; e < i.length; e++) {
|
|
69
|
+
if (e === r) continue;
|
|
70
|
+
let s = i[e], c = s.x - t, l = s.y - n, u = c * c + l * l;
|
|
71
|
+
u < o && (o = u, a = e);
|
|
72
|
+
}
|
|
73
|
+
return a;
|
|
74
|
+
}
|
|
75
|
+
function T(e, t) {
|
|
76
|
+
let { warp: n, nodes: r } = e;
|
|
77
|
+
if (!n || n.targetIdx < 0 || n.targetIdx >= r.length || !(t > 0)) return;
|
|
78
|
+
let i = Math.min(t, C), a = r[n.targetIdx], o = -2 * x * S * n.vx - S * S * (n.x - a.x), s = -2 * x * S * n.vy - S * S * (n.y - a.y);
|
|
79
|
+
n.vx += o * i, n.vy += s * i, n.x += n.vx * i, n.y += n.vy * i;
|
|
52
80
|
}
|
|
53
|
-
function
|
|
54
|
-
let {
|
|
81
|
+
function E(e, t) {
|
|
82
|
+
let { warp: n, nodes: r } = e;
|
|
83
|
+
if (t < 0 || t >= r.length) {
|
|
84
|
+
n.targetIdx = -1, e.focalIndex = -1;
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
e.focalIndex = t, n.targetIdx = t;
|
|
88
|
+
}
|
|
89
|
+
function D(e, t, n) {
|
|
90
|
+
let r = w(e, t, n, -1);
|
|
91
|
+
if (r >= 0 && r === e.focalIndex) return e.focalIndex;
|
|
92
|
+
let i = w(e, t, n, e.focalIndex);
|
|
93
|
+
return i < 0 ? -1 : (E(e, i), i);
|
|
94
|
+
}
|
|
95
|
+
function O(e, t, n, r) {
|
|
96
|
+
let { nodes: i, k: a } = t, o = n * a, s = o * o, c = r.edgeAlpha * r.alpha;
|
|
55
97
|
e.strokeStyle = r.line, e.lineWidth = 1 * a;
|
|
56
98
|
for (let t = 0; t < i.length; t++) {
|
|
57
99
|
let n = i[t];
|
|
58
100
|
for (let r = t + 1; r < i.length; r++) {
|
|
59
|
-
let t = i[r], a = n.x - t.x, o = n.y - t.y,
|
|
60
|
-
|
|
101
|
+
let t = i[r], a = n.x - t.x, o = n.y - t.y, l = a * a + o * o;
|
|
102
|
+
l > s || (e.globalAlpha = c * (1 - l / s), e.beginPath(), e.moveTo(n.x, n.y), e.lineTo(t.x, t.y), e.stroke());
|
|
61
103
|
}
|
|
62
104
|
}
|
|
63
105
|
e.globalAlpha = 1;
|
|
64
106
|
}
|
|
65
|
-
function
|
|
107
|
+
function k(e, t, n) {
|
|
66
108
|
let { nodes: r, k: i } = t;
|
|
67
109
|
for (let t = 0; t < r.length; t++) {
|
|
68
110
|
let a = r[t];
|
|
69
111
|
e.fillStyle = a.dim ? n.nodeDim : n.node, e.beginPath(), e.arc(a.x, a.y, a.r * i, 0, Math.PI * 2), e.fill();
|
|
70
112
|
}
|
|
71
113
|
}
|
|
72
|
-
function
|
|
114
|
+
function A(e, t, n, r, i) {
|
|
73
115
|
if (!i || i.x < 0) return;
|
|
74
|
-
let { nodes: a, k: o } = t, s = n * o, c = s * s;
|
|
116
|
+
let { nodes: a, k: o } = t, s = n * o, c = s * s, l = r.edgeFocusAlpha * r.alpha;
|
|
75
117
|
e.strokeStyle = r.line, e.lineWidth = 1 * o;
|
|
76
118
|
for (let t of a) {
|
|
77
119
|
let n = t.x - i.x, r = t.y - i.y, a = n * n + r * r;
|
|
78
|
-
a > c || (e.globalAlpha = (1 - a / c) *
|
|
120
|
+
a > c || (e.globalAlpha = (1 - a / c) * l, e.beginPath(), e.moveTo(i.x, i.y), e.lineTo(t.x, t.y), e.stroke());
|
|
79
121
|
}
|
|
80
122
|
e.globalAlpha = .55, e.fillStyle = r.node, e.beginPath(), e.arc(i.x, i.y, 2.6 * o, 0, Math.PI * 2), e.fill(), e.globalAlpha = 1;
|
|
81
123
|
}
|
|
82
|
-
function
|
|
124
|
+
function j(e, t, n, r, i) {
|
|
83
125
|
let { k: a } = t;
|
|
84
126
|
e.strokeStyle = i.line;
|
|
85
127
|
for (let t = r.length - 1; t >= 0; t--) {
|
|
@@ -96,7 +138,7 @@ function S(e, t, n, r, i) {
|
|
|
96
138
|
}
|
|
97
139
|
//#endregion
|
|
98
140
|
//#region src/components/custom/constellation/Constellation.vue
|
|
99
|
-
var
|
|
141
|
+
var M = /* @__PURE__ */ n(/* @__PURE__ */ c({
|
|
100
142
|
__name: "Constellation",
|
|
101
143
|
props: {
|
|
102
144
|
count: { default: 64 },
|
|
@@ -107,6 +149,10 @@ var C = /* @__PURE__ */ t(/* @__PURE__ */ c({
|
|
|
107
149
|
type: Boolean,
|
|
108
150
|
default: !0
|
|
109
151
|
},
|
|
152
|
+
warpOnClick: {
|
|
153
|
+
type: Boolean,
|
|
154
|
+
default: !1
|
|
155
|
+
},
|
|
110
156
|
class: { type: [
|
|
111
157
|
Boolean,
|
|
112
158
|
null,
|
|
@@ -116,67 +162,90 @@ var C = /* @__PURE__ */ t(/* @__PURE__ */ c({
|
|
|
116
162
|
] },
|
|
117
163
|
drawOverlay: { type: Function }
|
|
118
164
|
},
|
|
119
|
-
setup(
|
|
120
|
-
let
|
|
165
|
+
setup(n, { expose: c }) {
|
|
166
|
+
let b = m("hostRef"), x = m("canvasRef"), S = a(() => n.seed === void 0 ? Math.random : r(typeof n.seed == "string" ? i(n.seed) : n.seed)), C = {
|
|
121
167
|
nodes: [],
|
|
122
168
|
canvas: null,
|
|
123
169
|
w: 0,
|
|
124
170
|
h: 0,
|
|
125
171
|
k: 1,
|
|
126
|
-
dpr: 1
|
|
127
|
-
|
|
172
|
+
dpr: 1,
|
|
173
|
+
focalIndex: -1,
|
|
174
|
+
warp: {
|
|
175
|
+
x: 0,
|
|
176
|
+
y: 0,
|
|
177
|
+
vx: 0,
|
|
178
|
+
vy: 0,
|
|
179
|
+
targetIdx: -1
|
|
180
|
+
}
|
|
181
|
+
}, w = {
|
|
128
182
|
x: -1,
|
|
129
183
|
y: -1
|
|
130
|
-
},
|
|
184
|
+
}, T = [], E = { ...g }, M = -1, N = f(null);
|
|
131
185
|
return u(() => {
|
|
132
|
-
let e =
|
|
186
|
+
let e = x.value;
|
|
133
187
|
if (!e) return;
|
|
134
|
-
let r =
|
|
135
|
-
canvas:
|
|
136
|
-
setup: (
|
|
137
|
-
let a = e.clientWidth || e.offsetWidth || 1280, o = e.clientHeight || e.offsetHeight || 720, s = a /
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
188
|
+
let r = t({
|
|
189
|
+
canvas: x,
|
|
190
|
+
setup: (t) => ({ render(t, i) {
|
|
191
|
+
let a = e.clientWidth || e.offsetWidth || 1280, o = e.clientHeight || e.offsetHeight || 720, s = a / h;
|
|
192
|
+
C.canvas = e, C.dpr = Math.min(typeof window < "u" && window.devicePixelRatio || 1, 2), (C.w !== a || C.h !== o) && (C.w = a, C.h = o, C.k = s, C.nodes.length || (C.nodes = v(S.value, n.count, a, o, n.speed), C.warp.x = a / 2, C.warp.y = o / 2), E = _(e)), C.k = s;
|
|
193
|
+
let c = M < 0 ? 0 : (i - M) / 1e3;
|
|
194
|
+
if (M = i, !r.reducedMotion) {
|
|
195
|
+
let e = n.pointerReactive ? w : null;
|
|
196
|
+
y(C, s, n.speed, e, c);
|
|
141
197
|
}
|
|
142
|
-
|
|
198
|
+
t.clearRect(0, 0, a, o), O(t, C, n.link, E), k(t, C, E), n.pointerReactive && !r.reducedMotion && (A(t, C, n.link, E, w), j(t, C, i, T, E)), n.drawOverlay?.(t, C, i);
|
|
143
199
|
} })
|
|
144
|
-
}), i =
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
x: r * E.w,
|
|
152
|
-
y: i * E.h
|
|
153
|
-
};
|
|
200
|
+
}), i = b.value, a = (t) => {
|
|
201
|
+
let n = e.getBoundingClientRect();
|
|
202
|
+
if (!n.width || !n.height) return null;
|
|
203
|
+
let r = (t.clientX - n.left) / n.width, i = (t.clientY - n.top) / n.height;
|
|
204
|
+
return r < 0 || i < 0 || r > 1 || i > 1 ? null : {
|
|
205
|
+
x: r * C.w,
|
|
206
|
+
y: i * C.h
|
|
154
207
|
};
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
});
|
|
208
|
+
};
|
|
209
|
+
N.value = a, n.pointerReactive && i && !r.reducedMotion && (i.addEventListener("pointermove", (e) => {
|
|
210
|
+
let t = a(e);
|
|
211
|
+
t ? (w.x = t.x, w.y = t.y) : (w.x = -1, w.y = -1), r.wake();
|
|
212
|
+
}), i.addEventListener("pointerleave", () => {
|
|
213
|
+
w.x = -1, w.y = -1;
|
|
214
|
+
}), i.addEventListener("pointerdown", (e) => {
|
|
215
|
+
let t = a(e);
|
|
216
|
+
t && T.push({
|
|
217
|
+
x: t.x,
|
|
218
|
+
y: t.y,
|
|
219
|
+
start: -1
|
|
220
|
+
}), r.wake();
|
|
221
|
+
})), n.warpOnClick && i && !r.reducedMotion && i.addEventListener("pointerdown", (e) => {
|
|
222
|
+
let t = a(e);
|
|
223
|
+
t && (D(C, t.x, t.y), r.wake());
|
|
224
|
+
});
|
|
225
|
+
}), c({
|
|
226
|
+
field: C,
|
|
227
|
+
warpTo(e, t) {
|
|
228
|
+
if (typeof e == "number" && typeof t == "number") {
|
|
229
|
+
let n = N.value?.({
|
|
230
|
+
clientX: e,
|
|
231
|
+
clientY: t
|
|
232
|
+
});
|
|
233
|
+
return n ? D(C, n.x, n.y) : -1;
|
|
234
|
+
}
|
|
235
|
+
let n = e;
|
|
236
|
+
return D(C, n.x, n.y);
|
|
168
237
|
}
|
|
169
|
-
}),
|
|
238
|
+
}), (t, r) => (d(), o("div", {
|
|
170
239
|
ref_key: "hostRef",
|
|
171
|
-
ref:
|
|
172
|
-
class: l(
|
|
240
|
+
ref: b,
|
|
241
|
+
class: l(p(e)("constellation", n.class))
|
|
173
242
|
}, [s("canvas", {
|
|
174
243
|
ref_key: "canvasRef",
|
|
175
|
-
ref:
|
|
244
|
+
ref: x,
|
|
176
245
|
class: "constellation-canvas",
|
|
177
246
|
"aria-hidden": "true"
|
|
178
247
|
}, null, 512)], 2));
|
|
179
248
|
}
|
|
180
|
-
}), [["__scopeId", "data-v-
|
|
249
|
+
}), [["__scopeId", "data-v-63dd743d"]]);
|
|
181
250
|
//#endregion
|
|
182
|
-
export {
|
|
251
|
+
export { h as BASE_WIDTH, M as Constellation, g as DEFAULT_PALETTE, O as drawEdges, k as drawNodes, A as drawPointerWeb, j as drawRipples, w as nearestNode, _ as readPalette, v as seedField, E as setWarpTarget, y as stepField, T as warpStep, D as warpTo };
|
package/dist/context-menu.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c } from "./ContextMenuSubContent-
|
|
2
|
-
import { n as l, r as u, t as d } from "./ContextMenuContent-
|
|
1
|
+
import { a as e, c as t, i as n, l as r, n as i, o as a, r as o, s, t as c } from "./ContextMenuSubContent-Do977Cbf.js";
|
|
2
|
+
import { n as l, r as u, t as d } from "./ContextMenuContent-DDa0v27s.js";
|
|
3
3
|
export { u as ContextMenu, s as ContextMenuCheckboxItem, d as ContextMenuContent, t as ContextMenuItem, o as ContextMenuLabel, r as ContextMenuRadioGroup, a as ContextMenuRadioItem, n as ContextMenuSeparator, e as ContextMenuShortcut, c as ContextMenuSubContent, i as ContextMenuSubTrigger, l as ContextMenuTrigger };
|
package/dist/controls.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as e } from "./cn-DJXf4yaB.js";
|
|
2
|
-
import { t } from "./_plugin-vue_export-helper-
|
|
3
|
-
import { t as n } from "./useGlobalDark-
|
|
2
|
+
import { t } from "./_plugin-vue_export-helper-ok8pgSl5.js";
|
|
3
|
+
import { t as n } from "./useGlobalDark-D3EBWzXK.js";
|
|
4
4
|
import { computed as r, createBlock as i, createElementVNode as a, defineComponent as o, mergeProps as s, openBlock as c, resolveDynamicComponent as l, unref as u, useAttrs as d, watchEffect as f, withCtx as p } from "vue";
|
|
5
5
|
//#endregion
|
|
6
6
|
//#region src/components/custom/controls/DarkModeToggle.vue
|
package/dist/dark.js
CHANGED
package/dist/data-table.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, t } from "./DataTable-
|
|
1
|
+
import { n as e, t } from "./DataTable-CvlWXz65.js";
|
|
2
2
|
export { t as DataTable, e as DataTablePagination };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./components/custom/deck-progress";
|
package/dist/dialog.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { n as e, t } from "./DialogContent-
|
|
2
|
-
import { a as n, i as r, n as i, o as a, r as o, s, t as c } from "./DialogFooter-
|
|
1
|
+
import { n as e, t } from "./DialogContent-DjZWT3lK.js";
|
|
2
|
+
import { a as n, i as r, n as i, o as a, r as o, s, t as c } from "./DialogFooter-Gprw8H_A.js";
|
|
3
3
|
export { e as Dialog, s as DialogClose, t as DialogContent, o as DialogDescription, c as DialogFooter, n as DialogHeader, i as DialogScrollContent, r as DialogTitle, a as DialogTrigger };
|
package/dist/disco-glyph.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "./DiscoGlyph-
|
|
1
|
+
import { t as e } from "./DiscoGlyph-CG0F410s.js";
|
|
2
2
|
export { e as DiscoGlyph };
|