@mkbabb/glass-ui 3.13.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (304) hide show
  1. package/dist/CardAction-XH4YBVEK.js +158 -0
  2. package/dist/{CommandShortcut-RowNEO6i.js → CommandShortcut-DdtWXxOK.js} +57 -52
  3. package/dist/{ContextMenuSubContent-BQmxTAdw.js → ContextMenuSubContent-B0Vs6atR.js} +1 -1
  4. package/dist/{DataTable-BCddn3T3.js → DataTable-C464Zbqd.js} +99 -97
  5. package/dist/DialogContent-DDE6pQBU.js +103 -0
  6. package/dist/{DialogFooter-Blu4t7tJ.js → DialogFooter-8eZbdmPc.js} +1 -1
  7. package/dist/FadingScroll-DwNnvKMs.js +76 -0
  8. package/dist/{HoverPopover-CISOJQuZ.js → HoverPopover-Dpzwvc4t.js} +1 -1
  9. package/dist/IconChip-BDw1j5mu.js +54 -0
  10. package/dist/{MetricBadge-C9QMz1KT.js → MetricBadge-BpC0R_Ec.js} +1 -1
  11. package/dist/{Notification-DdwNxIrI.js → Notification-DKjKsQq8.js} +8 -8
  12. package/dist/{NumberFieldContent-CqaN-SvN.js → NumberFieldContent-1VtwDSgf.js} +1 -1
  13. package/dist/PopoverContent-BTorlp--.js +127 -0
  14. package/dist/{Progress-DwlUKGbr.js → Progress-hAT4gqGH.js} +97 -77
  15. package/dist/{ScrollingText-DfFrwSph.js → ScrollingText-CUVFTWk2.js} +2 -2
  16. package/dist/{SelectScrollDownButton-CiDUxfEj.js → SelectScrollDownButton-C1jb3b3K.js} +22 -6
  17. package/dist/{Switch-CsIuYP_e.js → Switch-Dr--uLGH.js} +1 -1
  18. package/dist/{Toaster-D6q4HtXu.js → Toaster-Bm_HQSpc.js} +6 -6
  19. package/dist/{ToggleGroupItem-D_AHlRw9.js → ToggleGroupItem-Dzk9hWsF.js} +1 -1
  20. package/dist/animated-digit.js +2 -2
  21. package/dist/api/index.d.ts +8 -5
  22. package/dist/api.js +2 -2
  23. package/dist/aurora.js +132 -117
  24. package/dist/{button-ChXMfsud.js → button-BNDWhAZb.js} +2 -2
  25. package/dist/button.js +1 -1
  26. package/dist/card.js +1 -1
  27. package/dist/carousel.d.ts +1 -1
  28. package/dist/carousel.js +97 -141
  29. package/dist/collapsible.js +1 -1
  30. package/dist/color-swatch.d.ts +1 -0
  31. package/dist/color-swatch.js +47 -0
  32. package/dist/color.js +1 -1
  33. package/dist/command.js +1 -1
  34. package/dist/components/custom/aurora/constants/presets.d.ts +28 -0
  35. package/dist/components/custom/aurora/constants/renderMode.d.ts +2 -0
  36. package/dist/components/custom/aurora/index.d.ts +1 -1
  37. package/dist/components/custom/color-swatch/ColorSwatch.vue.d.ts +22 -0
  38. package/dist/components/custom/color-swatch/index.d.ts +1 -0
  39. package/dist/components/custom/configurator/Configurator.vue.d.ts +19 -8
  40. package/dist/components/custom/constellation/Constellation.vue.d.ts +18 -206
  41. package/dist/components/custom/constellation/composables/useConstellation.d.ts +26 -0
  42. package/dist/components/custom/constellation/constellationField.d.ts +2 -369
  43. package/dist/components/custom/constellation/constellationTypes.d.ts +369 -0
  44. package/dist/components/custom/constellation/index.d.ts +1 -1
  45. package/dist/components/custom/dock/DockRail.vue.d.ts +17 -16
  46. package/dist/components/custom/dock/DockSection.vue.d.ts +69 -0
  47. package/dist/components/custom/dock/DockSeparator.vue.d.ts +49 -1
  48. package/dist/components/custom/dock/DockTabButton.vue.d.ts +5 -5
  49. package/dist/components/custom/dock/constants.d.ts +35 -0
  50. package/dist/components/custom/dock/index.d.ts +2 -0
  51. package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +10 -0
  52. package/dist/components/custom/fading-scroll/FadingScroll.vue.d.ts +25 -0
  53. package/dist/components/custom/fading-scroll/composables/useFadingScroll.d.ts +31 -0
  54. package/dist/components/custom/fading-scroll/constants.d.ts +19 -0
  55. package/dist/components/custom/fading-scroll/index.d.ts +2 -0
  56. package/dist/components/custom/fourier-field/FourierField.vue.d.ts +7 -0
  57. package/dist/components/custom/fourier-field/index.d.ts +1 -1
  58. package/dist/components/custom/fourier-field/math.d.ts +17 -0
  59. package/dist/components/custom/glass-panel/GlassPanel.vue.d.ts +8 -0
  60. package/dist/components/custom/goo-blob/composables/useMetaballRenderer.d.ts +11 -1
  61. package/dist/components/custom/goo-blob/constants.d.ts +6 -1
  62. package/dist/components/custom/handmark/HandMark.vue.d.ts +29 -0
  63. package/dist/components/custom/handmark/brush.d.ts +269 -0
  64. package/dist/components/custom/handmark/composables/useHandMark.d.ts +89 -0
  65. package/dist/components/custom/handmark/constants.d.ts +39 -0
  66. package/dist/components/custom/handmark/freehand.d.ts +69 -0
  67. package/dist/components/custom/handmark/geometry.d.ts +52 -0
  68. package/dist/components/custom/handmark/index.d.ts +27 -0
  69. package/dist/components/custom/handmark/ink.d.ts +11 -0
  70. package/dist/components/custom/handmark/texture.d.ts +39 -0
  71. package/dist/components/custom/handmark/types.d.ts +62 -0
  72. package/dist/components/custom/icon-chip/IconChip.vue.d.ts +4 -0
  73. package/dist/components/custom/icon-chip/index.d.ts +2 -0
  74. package/dist/components/custom/icon-chip/types.d.ts +72 -0
  75. package/dist/components/custom/instrument-chassis/InstrumentChassis.vue.d.ts +15 -2
  76. package/dist/components/custom/pager-dots/PagerDots.vue.d.ts +39 -0
  77. package/dist/components/custom/pager-dots/index.d.ts +2 -0
  78. package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +20 -25
  79. package/dist/components/custom/tabs/composables/useTabIndicator.d.ts +30 -21
  80. package/dist/components/custom/tabs/constants.d.ts +9 -3
  81. package/dist/components/custom/tabs/index.d.ts +1 -1
  82. package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +14 -0
  83. package/dist/components/ui/_shared/index.d.ts +2 -0
  84. package/dist/components/ui/_shared/menuItemVariants.d.ts +19 -0
  85. package/dist/components/ui/_shared/useSurfaceAxis.d.ts +41 -0
  86. package/dist/components/ui/card/Card.vue.d.ts +1 -1
  87. package/dist/components/ui/carousel/index.d.ts +0 -1
  88. package/dist/components/ui/command/Command.vue.d.ts +3 -0
  89. package/dist/components/ui/dialog/DialogContent.vue.d.ts +8 -3
  90. package/dist/components/ui/drawer/DrawerContent.vue.d.ts +5 -0
  91. package/dist/components/ui/index.d.ts +0 -1
  92. package/dist/components/ui/popover/PopoverContent.vue.d.ts +3 -0
  93. package/dist/components/ui/progress/ProgressSectioned.vue.d.ts +14 -3
  94. package/dist/components/ui/select/SelectTrigger.vue.d.ts +27 -4
  95. package/dist/components/ui/sheet/SheetContent.vue.d.ts +6 -0
  96. package/dist/components/ui/skeleton/Skeleton.vue.d.ts +3 -0
  97. package/dist/composables/dark/index.d.ts +1 -1
  98. package/dist/composables/dark/useGlobalDark.d.ts +23 -1
  99. package/dist/composables/motion/useViewTransition.d.ts +36 -1
  100. package/dist/configurator.js +1 -1
  101. package/dist/confirm-dialog.js +2 -2
  102. package/dist/constellation.js +92 -94
  103. package/dist/context-menu.js +2 -2
  104. package/dist/controls.js +10 -4
  105. package/dist/dark.d.ts +1 -1
  106. package/dist/dark.js +1 -1
  107. package/dist/data-table.js +1 -1
  108. package/dist/dialog.js +2 -2
  109. package/dist/dock.js +510 -321
  110. package/dist/{dockContext-BegmJVmx.js → dockContext-Bu1Avy-a.js} +1 -1
  111. package/dist/dom.js +5 -5
  112. package/dist/{dropdown-menu-DzkkyBwX.js → dropdown-menu-BJ7E9js_.js} +2 -2
  113. package/dist/dropdown-menu.js +1 -1
  114. package/dist/expandable-container.js +42 -38
  115. package/dist/fading-scroll.d.ts +1 -0
  116. package/dist/fading-scroll.js +2 -0
  117. package/dist/forms.js +3 -3
  118. package/dist/fourier-field.js +38 -37
  119. package/dist/fourier-math.js +2 -2
  120. package/dist/glass-panel.js +39 -36
  121. package/dist/glass-ui.css +1 -1
  122. package/dist/glass-ui.js +129 -145
  123. package/dist/goo-blob.js +86 -81
  124. package/dist/handmark.d.ts +1 -0
  125. package/dist/handmark.js +707 -0
  126. package/dist/header-ribbon.js +1 -1
  127. package/dist/hover-card.js +1 -1
  128. package/dist/hover-popover.js +1 -1
  129. package/dist/icon-chip.d.ts +1 -0
  130. package/dist/icon-chip.js +2 -0
  131. package/dist/icon-tooltip.js +1 -1
  132. package/dist/index.d.ts +2 -2
  133. package/dist/keyboard.js +1 -1
  134. package/dist/label.js +1 -1
  135. package/dist/labeled-field.js +6 -6
  136. package/dist/{math-U6-RrLmV.js → math-DeuJwLFx.js} +11 -3
  137. package/dist/{menuItemVariants-DPiEarb0.js → menuItemVariants-DWRQXBxJ.js} +10 -4
  138. package/dist/metric-badge.js +1 -1
  139. package/dist/metric-cell.js +25 -22
  140. package/dist/metric-stack.js +1 -1
  141. package/dist/motion-core.js +33 -32
  142. package/dist/motion-curves.js +1 -1
  143. package/dist/motion.js +4 -4
  144. package/dist/notification.js +1 -1
  145. package/dist/number-field.js +1 -1
  146. package/dist/pager-dots.d.ts +1 -0
  147. package/dist/pager-dots.js +91 -0
  148. package/dist/paper-backdrop.js +1 -1
  149. package/dist/popover.js +1 -1
  150. package/dist/{presets-BKVyQfbt.js → presets-BW2b-fr1.js} +14 -1
  151. package/dist/progress.js +1 -1
  152. package/dist/pulse.js +1 -1
  153. package/dist/reactive.js +2 -2
  154. package/dist/scrolling-text.js +1 -1
  155. package/dist/search.js +5 -5
  156. package/dist/select.js +3 -3
  157. package/dist/separator.js +1 -1
  158. package/dist/{sheet-1fChZjtw.js → sheet-CquRYOAw.js} +59 -55
  159. package/dist/sheet.js +1 -1
  160. package/dist/{slider-B-JP2JlI.js → slider-DQ95MET2.js} +7 -7
  161. package/dist/slider.js +1 -1
  162. package/dist/sortable-list.js +3 -3
  163. package/dist/styles/animations.css +11 -26
  164. package/dist/styles/components.css +1 -1
  165. package/dist/styles/configurator.css +35 -0
  166. package/dist/styles/dock/density.css +19 -0
  167. package/dist/styles/dock/overflow.css +15 -0
  168. package/dist/styles/dock/rail-extend.css +168 -71
  169. package/dist/styles/dock/section.css +59 -0
  170. package/dist/styles/dock/shell.css +34 -5
  171. package/dist/styles/dock-controls/icon-button.css +11 -1
  172. package/dist/styles/dock-controls/tab-button.css +24 -83
  173. package/dist/styles/dock-controls/triggers.css +7 -0
  174. package/dist/styles/dock.css +6 -3
  175. package/dist/styles/drawer.css +46 -0
  176. package/dist/styles/feedback-tone.css +104 -0
  177. package/dist/styles/glass/ladder.css +68 -22
  178. package/dist/styles/glass/surface-axis.css +113 -0
  179. package/dist/styles/glass/surfaces.css +88 -12
  180. package/dist/styles/glass.css +5 -2
  181. package/dist/styles/icon-chip.css +149 -0
  182. package/dist/styles/index.css +67 -5
  183. package/dist/styles/instrument-chassis.css +42 -0
  184. package/dist/styles/menu.css +127 -0
  185. package/dist/styles/segmented-tabs.css +160 -89
  186. package/dist/styles/select.css +50 -0
  187. package/dist/styles/theme/bridges.css +11 -1
  188. package/dist/styles/tokens/color-radius.css +40 -13
  189. package/dist/styles/tokens/dark-arm.css +124 -16
  190. package/dist/styles/tokens/glass.css +83 -23
  191. package/dist/styles/tokens/light-dark.css +48 -19
  192. package/dist/styles/tokens/offsets-sizing.css +62 -0
  193. package/dist/styles/tokens/property-regs.css +3 -10
  194. package/dist/styles/tokens/scale-paper.css +45 -2
  195. package/dist/styles/tokens/scheme-motion.css +32 -14
  196. package/dist/styles/transitions.css +7 -7
  197. package/dist/styles/typography/scale.css +153 -0
  198. package/dist/styles/typography/semantic.css +220 -0
  199. package/dist/styles/typography/utilities.css +159 -0
  200. package/dist/styles/typography.css +23 -507
  201. package/dist/styles/utilities/a11y-overrides.css +33 -4
  202. package/dist/styles/utilities/base.css +177 -1
  203. package/dist/styles/utilities/btn.css +18 -201
  204. package/dist/styles/view-transition.css +4 -1
  205. package/dist/switch.js +1 -1
  206. package/dist/tabs.js +154 -183
  207. package/dist/timeline.js +2 -2
  208. package/dist/toast.js +1 -1
  209. package/dist/toggle-chip.js +3 -1
  210. package/dist/toggle-group.js +1 -1
  211. package/dist/typewriter.js +1 -1
  212. package/dist/{useAnimatedNumber-C5I3wWd8.js → useAnimatedNumber-C_3wZLx4.js} +1 -1
  213. package/dist/useConfiguratorState-kiIlun8I.js +303 -0
  214. package/dist/{useGlobalDark-yhL4Wp-s.js → useGlobalDark-C28t0VWJ.js} +22 -3
  215. package/dist/{useRAFLoop-Bxv0o6L5.js → useRAFLoop-CdwJ7284.js} +1 -1
  216. package/dist/{useSpringMount-CI2jOstM.js → useSpringMount-CvopqiFr.js} +1 -1
  217. package/dist/useSurfaceAxis-CMnF2zHb.js +7 -0
  218. package/dist/{useTouchGate-Dg7MQI1G.js → useTouchGate-28Tk2-t2.js} +1 -1
  219. package/dist/{vReveal-CqaCz_mC.js → useViewTransition-COsPjQVZ.js} +15 -12
  220. package/dist/vReveal-D9k0jADx.js +10 -0
  221. package/dist/watercolor-dot.js +12 -5
  222. package/package.json +71 -7
  223. package/src/styles/animations.css +11 -26
  224. package/src/styles/configurator.css +35 -0
  225. package/src/styles/dock/density.css +19 -0
  226. package/src/styles/dock/overflow.css +15 -0
  227. package/src/styles/dock/rail-extend.css +168 -71
  228. package/src/styles/dock/section.css +59 -0
  229. package/src/styles/dock/shell.css +34 -5
  230. package/src/styles/dock-controls/icon-button.css +11 -1
  231. package/src/styles/dock-controls/tab-button.css +24 -83
  232. package/src/styles/dock-controls/triggers.css +7 -0
  233. package/src/styles/dock.css +6 -3
  234. package/src/styles/drawer.css +42 -0
  235. package/src/styles/feedback-tone.css +104 -0
  236. package/src/styles/glass/ladder.css +68 -22
  237. package/src/styles/glass/surface-axis.css +113 -0
  238. package/src/styles/glass/surfaces.css +88 -12
  239. package/src/styles/glass.css +5 -2
  240. package/src/styles/icon-chip.css +149 -0
  241. package/src/styles/index.css +66 -4
  242. package/src/styles/instrument-chassis.css +42 -0
  243. package/src/styles/menu.css +127 -0
  244. package/src/styles/segmented-tabs.css +156 -87
  245. package/src/styles/select.css +50 -0
  246. package/src/styles/theme/bridges.css +11 -1
  247. package/src/styles/tokens/color-radius.css +40 -13
  248. package/src/styles/tokens/dark-arm.css +124 -16
  249. package/src/styles/tokens/glass.css +83 -23
  250. package/src/styles/tokens/light-dark.css +48 -19
  251. package/src/styles/tokens/offsets-sizing.css +62 -0
  252. package/src/styles/tokens/property-regs.css +3 -10
  253. package/src/styles/tokens/scale-paper.css +45 -2
  254. package/src/styles/tokens/scheme-motion.css +32 -14
  255. package/src/styles/transitions.css +7 -7
  256. package/src/styles/typography/scale.css +153 -0
  257. package/src/styles/typography/semantic.css +220 -0
  258. package/src/styles/typography/utilities.css +159 -0
  259. package/src/styles/typography.css +23 -507
  260. package/src/styles/utilities/a11y-overrides.css +33 -4
  261. package/src/styles/utilities/base.css +177 -1
  262. package/src/styles/utilities/btn.css +18 -201
  263. package/src/styles/view-transition.css +4 -1
  264. package/dist/CardAction-Cj2eycQ2.js +0 -157
  265. package/dist/DialogContent-Dl9WkAoS.js +0 -100
  266. package/dist/PopoverContent-BYwt2-4x.js +0 -121
  267. package/dist/TabsList-Dttss653.js +0 -105
  268. package/dist/components/custom/underline/GlassUnderline.vue.d.ts +0 -84
  269. package/dist/components/custom/underline/index.d.ts +0 -2
  270. package/dist/components/custom/underline/types.d.ts +0 -56
  271. package/dist/components/ui/carousel/CarouselDots.vue.d.ts +0 -4
  272. package/dist/underline.d.ts +0 -1
  273. package/dist/underline.js +0 -85
  274. package/dist/useConfiguratorState-DAoeHVue.js +0 -287
  275. /package/dist/{CollapsibleContent-CP9qF1v4.js → CollapsibleContent-C_s6fG7r.js} +0 -0
  276. /package/dist/{ContextMenuContent-CT3AS1WX.js → ContextMenuContent-ON3x7cuk.js} +0 -0
  277. /package/dist/{HoverCardContent-Csywg3YF.js → HoverCardContent-DkMaQzH5.js} +0 -0
  278. /package/dist/{IconTooltip-DPzE09X9.js → IconTooltip-DSjasZIt.js} +0 -0
  279. /package/dist/{Input-DWQQIOC4.js → Input-DVG_J0ne.js} +0 -0
  280. /package/dist/{Label-r3WzWrsj.js → Label-Ck9SWEKM.js} +0 -0
  281. /package/dist/{ModalOverlay-DVLI2VRr.js → ModalOverlay-CkPRRgl_.js} +0 -0
  282. /package/dist/{PaperBackdrop-DIXTtVq6.js → PaperBackdrop-nBKe0vkB.js} +0 -0
  283. /package/dist/{SelectGroup-aumMgWLs.js → SelectGroup-Dcczq44n.js} +0 -0
  284. /package/dist/{SelectSeparator-BQ_1Fcbp.js → SelectSeparator-DK2y1Bun.js} +0 -0
  285. /package/dist/{Separator-0JE6LtNu.js → Separator-BArl4OaB.js} +0 -0
  286. /package/dist/{_plugin-vue_export-helper-ok8pgSl5.js → _plugin-vue_export-helper-CBt_VvXa.js} +0 -0
  287. /package/dist/{color-CUYeFbgd.js → color-DweYl7pE.js} +0 -0
  288. /package/dist/{compile-B7NGOBcP.js → compile-EXXzEr1q.js} +0 -0
  289. /package/dist/{constants-CS75AWHG.js → constants-BPOqYJAm.js} +0 -0
  290. /package/dist/{createContext-BM46COQ-.js → createContext-B2RaZ-b8.js} +0 -0
  291. /package/dist/{prng-D27-B3tK.js → prng-Cg22zv8g.js} +0 -0
  292. /package/dist/{springPresets--YdWTHtm.js → springPresets-WXaLbu8u.js} +0 -0
  293. /package/dist/{useIntersectionPause-Cc-H9ees.js → useIntersectionPause-Bj4sPkMh.js} +0 -0
  294. /package/dist/{useInterval-iHludrxk.js → useInterval-CNdua40W.js} +0 -0
  295. /package/dist/{useKeyboardShortcuts-Be3w_Rwk.js → useKeyboardShortcuts-BXWXOZ-9.js} +0 -0
  296. /package/dist/{useLiquidFlex-BL0lLLN2.js → useLiquidFlex-C12hXwOZ.js} +0 -0
  297. /package/dist/{useResizeObserver-BhgdhOIj.js → useResizeObserver-V6nq5gJb.js} +0 -0
  298. /package/dist/{useResolveTokenColor-Dvn2RZJW.js → useResolveTokenColor-NUG2zYAW.js} +0 -0
  299. /package/dist/{useScrollProgress-Dlvx-L3v.js → useScrollProgress-D7bYU2RK.js} +0 -0
  300. /package/dist/{useSortable-muI29agz.js → useSortable-BVqlJRBR.js} +0 -0
  301. /package/dist/{useTextHighlight-DmRYkOBx.js → useTextHighlight-NmBM5V_4.js} +0 -0
  302. /package/dist/{useTimer-Dzarvzuk.js → useTimer-B_PAasDL.js} +0 -0
  303. /package/dist/{useUserInvalidAria-B2h6jAM_.js → useUserInvalidAria-CDfJuakL.js} +0 -0
  304. /package/dist/{useViewportReady-B40FK4Pa.js → useViewportReady-CvBcCYDf.js} +0 -0
package/dist/dock.js CHANGED
@@ -3,19 +3,19 @@ import { t } from "./createLucideIcon-DydS2qgk.js";
3
3
  import { t as n } from "./chevron-down-DKkxb4VV.js";
4
4
  import { t as r } from "./chevron-right-CPXbqQQz.js";
5
5
  import { t as i } from "./useSpecularTracking-Bo5su68i.js";
6
- import { t as a } from "./useResizeObserver-BhgdhOIj.js";
7
- import { t as o } from "./useTouchGate-Dg7MQI1G.js";
8
- import { n as s } from "./useResolveTokenColor-Dvn2RZJW.js";
9
- import { n as c, t as l } from "./createContext-BM46COQ-.js";
10
- import { a as u, c as d, i as f, n as p, o as m, r as h, s as g, t as _ } from "./dockContext-BegmJVmx.js";
11
- import { i as v, n as y, r as b, t as x } from "./TabsList-Dttss653.js";
12
- import { t as S } from "./useLiquidFlex-BL0lLLN2.js";
13
- import { t as C } from "./useIntersectionPause-Cc-H9ees.js";
14
- import { t as w } from "./useRAFLoop-Bxv0o6L5.js";
15
- import { Fragment as T, computed as E, createBlock as D, createCommentVNode as O, createElementBlock as k, createElementVNode as A, createVNode as j, defineComponent as M, mergeModels as N, mergeProps as P, nextTick as F, normalizeClass as I, normalizeStyle as L, onBeforeUnmount as R, onMounted as ee, onScopeDispose as z, onUnmounted as B, openBlock as V, readonly as H, ref as U, renderList as te, renderSlot as W, resolveDynamicComponent as G, toDisplayString as ne, unref as K, useAttrs as re, useId as ie, useModel as q, useSlots as ae, useTemplateRef as J, watch as Y, withCtx as X } from "vue";
16
- import { DropdownMenuTrigger as oe, Primitive as se, SelectIcon as Z, SelectTrigger as ce, useForwardProps as le } from "reka-ui";
17
- import { SpringProgress as Q } from "@mkbabb/keyframes.js";
18
- var ue = t("pause", [["rect", {
6
+ import { t as a } from "./useResizeObserver-V6nq5gJb.js";
7
+ import { t as o } from "./useTouchGate-28Tk2-t2.js";
8
+ import { n as s } from "./useResolveTokenColor-NUG2zYAW.js";
9
+ import { n as c, t as l } from "./createContext-B2RaZ-b8.js";
10
+ import { a as u, c as d, i as f, n as p, o as m, r as h, s as g, t as _ } from "./dockContext-Bu1Avy-a.js";
11
+ import { t as v } from "./FadingScroll-DwNnvKMs.js";
12
+ import { t as y } from "./useLiquidFlex-C12hXwOZ.js";
13
+ import { t as b } from "./useIntersectionPause-Bj4sPkMh.js";
14
+ import { t as x } from "./useRAFLoop-CdwJ7284.js";
15
+ import { Fragment as S, computed as C, createBlock as w, createCommentVNode as T, createElementBlock as E, createElementVNode as D, createVNode as O, defineComponent as k, mergeModels as A, mergeProps as j, nextTick as M, normalizeClass as N, normalizeStyle as P, onBeforeUnmount as F, onMounted as I, onScopeDispose as L, onUnmounted as R, openBlock as z, readonly as B, ref as V, renderList as H, renderSlot as U, resolveDynamicComponent as W, toDisplayString as G, unref as K, useId as ee, useModel as q, useSlots as te, useTemplateRef as J, watch as Y, withCtx as X } from "vue";
16
+ import { DropdownMenuTrigger as Z, Primitive as ne, SelectIcon as re, SelectTrigger as ie, TabsIndicator as ae, TabsList as Q, TabsRoot as oe, TabsTrigger as se, useForwardProps as ce, useForwardPropsEmits as le } from "reka-ui";
17
+ import { SpringProgress as ue } from "@mkbabb/keyframes.js";
18
+ var de = t("pause", [["rect", {
19
19
  x: "14",
20
20
  y: "3",
21
21
  width: "5",
@@ -29,21 +29,21 @@ var ue = t("pause", [["rect", {
29
29
  height: "18",
30
30
  rx: "1",
31
31
  key: "1wsw3u"
32
- }]]), de = t("play", [["path", {
32
+ }]]), fe = t("play", [["path", {
33
33
  d: "M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",
34
34
  key: "10ikf1"
35
- }]]), fe = "(prefers-reduced-motion: reduce)", $ = 32;
36
- function pe(e) {
35
+ }]]), pe = "(prefers-reduced-motion: reduce)", $ = 32;
36
+ function me(e) {
37
37
  return typeof HTMLCanvasElement < "u" && e instanceof HTMLCanvasElement;
38
38
  }
39
- function me(e) {
39
+ function he(e) {
40
40
  let t = e / 255;
41
41
  return t <= .03928 ? t / 12.92 : ((t + .055) / 1.055) ** 2.4;
42
42
  }
43
- function he(e, t, n) {
44
- return .2126 * me(e) + .7152 * me(t) + .0722 * me(n);
43
+ function ge(e, t, n) {
44
+ return .2126 * he(e) + .7152 * he(t) + .0722 * he(n);
45
45
  }
46
- function ge(e) {
46
+ function _e(e) {
47
47
  let t = e.match(/rgba?\(\s*([\d.]+)[,\s]+([\d.]+)[,\s]+([\d.]+)(?:[,\s/]+([\d.]+))?/i);
48
48
  return t ? [
49
49
  Number(t[1]),
@@ -52,28 +52,28 @@ function ge(e) {
52
52
  t[4] === void 0 ? 1 : Number(t[4])
53
53
  ] : null;
54
54
  }
55
- function _e(e) {
55
+ function ve(e) {
56
56
  if (!e) return null;
57
- if (pe(e)) return e;
57
+ if (me(e)) return e;
58
58
  if (typeof e == "function") {
59
59
  let t = e();
60
- return pe(t) ? t : null;
60
+ return me(t) ? t : null;
61
61
  }
62
62
  if (typeof e == "string" && typeof document < "u") {
63
63
  let t = document.querySelector(e);
64
- return pe(t) ? t : null;
64
+ return me(t) ? t : null;
65
65
  }
66
66
  return null;
67
67
  }
68
- function ve(e, t = {}) {
69
- let { lightThreshold: n = .6, minSampleIntervalMs: r = 250, writeBucket: i = !0 } = t, o = Math.max(250, r), c = U(null), l = U(null);
68
+ function ye(e, t = {}) {
69
+ let { lightThreshold: n = .6, minSampleIntervalMs: r = 250, writeBucket: i = !0 } = t, o = Math.max(250, r), c = V(null), l = V(null);
70
70
  if (typeof window > "u") return {
71
- luma: H(c),
72
- bucket: H(l),
71
+ luma: B(c),
72
+ bucket: B(l),
73
73
  sampleNow: () => {},
74
74
  dispose: () => {}
75
75
  };
76
- let u = window.matchMedia(fe), d = u.matches, f = null, p = null;
76
+ let u = window.matchMedia(pe), d = u.matches, f = null, p = null;
77
77
  function m() {
78
78
  return f || (f = document.createElement("canvas"), f.width = $, f.height = $), p ||= f.getContext("2d", { willReadFrequently: !0 }), p;
79
79
  }
@@ -81,7 +81,7 @@ function ve(e, t = {}) {
81
81
  return t.live === void 0 ? e.value?.dataset.glassSample === "live" : t.live;
82
82
  }
83
83
  function g(e) {
84
- let n = _e(t.backgroundCanvas);
84
+ let n = ve(t.backgroundCanvas);
85
85
  if (!n || n.width === 0 || n.height === 0) return null;
86
86
  let r = m();
87
87
  if (!r) return null;
@@ -94,7 +94,7 @@ function ve(e, t = {}) {
94
94
  let e = r.getImageData(0, 0, $, $).data, t = 0, i = 0;
95
95
  for (let n = 0; n < e.length; n += 4) {
96
96
  let r = e[n + 3] / 255, a = e[n] * r + 255 * (1 - r), o = e[n + 1] * r + 255 * (1 - r), s = e[n + 2] * r + 255 * (1 - r);
97
- t += he(a, o, s), i++;
97
+ t += ge(a, o, s), i++;
98
98
  }
99
99
  return i > 0 ? t / i : null;
100
100
  } catch {
@@ -105,11 +105,11 @@ function ve(e, t = {}) {
105
105
  let t = e.getBoundingClientRect(), n = t.left + t.width / 2, r = t.top + t.height / 2, i = document.elementsFromPoint(n, r);
106
106
  for (let t of i) {
107
107
  if (!(t instanceof HTMLElement) || t === e || e.contains(t)) continue;
108
- let n = getComputedStyle(t).backgroundColor, r = ge(s(n, e));
109
- if (r && !(r[3] < .5)) return he(r[0], r[1], r[2]);
108
+ let n = getComputedStyle(t).backgroundColor, r = _e(s(n, e));
109
+ if (r && !(r[3] < .5)) return ge(r[0], r[1], r[2]);
110
110
  }
111
- let a = ge(s(getComputedStyle(document.body).backgroundColor, e));
112
- return a ? he(a[0], a[1], a[2]) : null;
111
+ let a = _e(s(getComputedStyle(document.body).backgroundColor, e));
112
+ return a ? ge(a[0], a[1], a[2]) : null;
113
113
  }
114
114
  function v(t) {
115
115
  c.value = t;
@@ -120,56 +120,56 @@ function ve(e, t = {}) {
120
120
  }
121
121
  }
122
122
  let y = 0;
123
- function b() {
123
+ function S() {
124
124
  let t = e.value;
125
125
  if (!t) return;
126
126
  let n = h() ? g(t) ?? _(t) : _(t);
127
127
  n !== null && v(n), y = typeof performance < "u" ? performance.now() : Date.now();
128
128
  }
129
- let x = w(({ now: e }) => {
130
- d || e - y < o || b();
129
+ let C = x(({ now: e }) => {
130
+ d || e - y < o || S();
131
131
  }, {
132
132
  immediate: !1,
133
133
  pauseWhenHidden: !0,
134
134
  respectReducedMotion: !0
135
- }), S = C(() => e.value, {
136
- pause: () => x.pause(),
135
+ }), w = b(() => e.value, {
136
+ pause: () => C.pause(),
137
137
  resume: () => {
138
- h() && !d && x.resume();
138
+ h() && !d && C.resume();
139
139
  }
140
- }, { rootMargin: "200px" }), T = a(e, () => b());
140
+ }, { rootMargin: "200px" }), T = a(e, () => S());
141
141
  function E() {
142
- d = u.matches, d ? (x.stop(), b()) : h() && x.start();
142
+ d = u.matches, d ? (C.stop(), S()) : h() && C.start();
143
143
  }
144
144
  let D = () => E();
145
145
  typeof u.addEventListener == "function" && u.addEventListener("change", D);
146
146
  let O = Y(() => e.value, (e) => {
147
- e && (b(), E());
147
+ e && (S(), E());
148
148
  }, {
149
149
  immediate: !0,
150
150
  flush: "post"
151
151
  });
152
152
  function k() {
153
- O(), x.dispose(), S.dispose(), T.stop(), typeof u.removeEventListener == "function" && u.removeEventListener("change", D), f = null, p = null;
153
+ O(), C.dispose(), w.dispose(), T.stop(), typeof u.removeEventListener == "function" && u.removeEventListener("change", D), f = null, p = null;
154
154
  }
155
- return z(k), {
156
- luma: H(c),
157
- bucket: H(l),
158
- sampleNow: b,
155
+ return L(k), {
156
+ luma: B(c),
157
+ bucket: B(l),
158
+ sampleNow: S,
159
159
  dispose: k
160
160
  };
161
161
  }
162
162
  //#endregion
163
163
  //#region src/components/custom/dock/composables/isTeleportedTarget.ts
164
- function ye(e, t) {
164
+ function be(e, t) {
165
165
  if (!(e instanceof Element)) return !1;
166
166
  let n = e.closest("[data-glass-dock-portal]");
167
167
  return n ? t ? n.getAttribute("data-glass-dock-owner") === t : !0 : !1;
168
168
  }
169
169
  //#endregion
170
170
  //#region src/components/custom/dock/composables/useDockState.ts
171
- function be(e) {
172
- let { collapseDelay: t = 2500, rootEl: n, alwaysExpanded: r = !1, isTransitioning: i, dockId: a, onStateChange: o } = e, s = () => typeof r == "boolean" ? r : r.value, c = s(), l = U(c ? "pinned" : "collapsed"), u = U(c), d = U(c), f = null, p = U(0), m = E(() => p.value > 0), h = null, g = null, _ = !1, v = null;
171
+ function xe(e) {
172
+ let { collapseDelay: t = 2500, rootEl: n, alwaysExpanded: r = !1, isTransitioning: i, dockId: a, onStateChange: o } = e, s = () => typeof r == "boolean" ? r : r.value, c = s(), l = V(c ? "pinned" : "collapsed"), u = V(c), d = V(c), f = null, p = V(0), m = C(() => p.value > 0), h = null, g = null, _ = !1, v = null;
173
173
  function y() {
174
174
  v &&= (clearTimeout(v), null);
175
175
  }
@@ -184,17 +184,17 @@ function be(e) {
184
184
  function S() {
185
185
  s() && (l.value = "pinned"), u.value = l.value !== "collapsed", d.value = l.value === "pinned", o && x !== l.value && o(l.value, x), x = l.value;
186
186
  }
187
- function C() {
187
+ function w() {
188
188
  f &&= (clearTimeout(f), null);
189
189
  }
190
- function w() {
190
+ function T() {
191
191
  g !== null && (cancelAnimationFrame(g), g = null);
192
192
  }
193
- function T() {
194
- w(), h?.();
193
+ function E() {
194
+ T(), h?.();
195
195
  }
196
196
  function D() {
197
- s() || p.value > 0 || (C(), f = setTimeout(() => {
197
+ s() || p.value > 0 || (w(), f = setTimeout(() => {
198
198
  O(), l.value = "collapsed", S();
199
199
  }, t));
200
200
  }
@@ -209,17 +209,17 @@ function be(e) {
209
209
  l.value = "pinned", S();
210
210
  return;
211
211
  }
212
- _ ||= (_ = !0, C(), y(), O(), l.value = "collapsed", S(), !1);
212
+ _ ||= (_ = !0, w(), y(), O(), l.value = "collapsed", S(), !1);
213
213
  }
214
214
  function A() {
215
215
  if (s()) {
216
216
  l.value = "pinned", S();
217
217
  return;
218
218
  }
219
- C(), y(), l.value = "hover", S();
219
+ w(), y(), l.value = "hover", S();
220
220
  }
221
221
  function j() {
222
- s() || (C(), l.value === "collapsed" && (y(), v = setTimeout(() => {
222
+ s() || (w(), l.value === "collapsed" && (y(), v = setTimeout(() => {
223
223
  v = null, !s() && l.value === "collapsed" && (l.value = "hover", S());
224
224
  }, 60)));
225
225
  }
@@ -228,53 +228,53 @@ function be(e) {
228
228
  if (p.value > 0) return;
229
229
  if (e) {
230
230
  let t = n.value;
231
- if (t && e.relatedTarget instanceof Node && t.contains(e.relatedTarget) || ye(e.relatedTarget, a) || b(e)) return;
231
+ if (t && e.relatedTarget instanceof Node && t.contains(e.relatedTarget) || be(e.relatedTarget, a) || b(e)) return;
232
232
  }
233
233
  D();
234
234
  }
235
235
  }
236
236
  function N() {
237
- s() || (C(), l.value === "collapsed" && (l.value = "hover", S()));
237
+ s() || (w(), l.value === "collapsed" && (l.value = "hover", S()));
238
238
  }
239
239
  function P(e) {
240
240
  if (s() || l.value !== "hover" || p.value > 0) return;
241
241
  let t = e.currentTarget;
242
- e.relatedTarget && t.contains(e.relatedTarget) || ye(e.relatedTarget, a) || D();
242
+ e.relatedTarget && t.contains(e.relatedTarget) || be(e.relatedTarget, a) || D();
243
243
  }
244
244
  function F() {
245
245
  if (s()) {
246
246
  l.value = "pinned", S();
247
247
  return;
248
248
  }
249
- C(), y(), l.value = "pinned", S();
249
+ w(), y(), l.value = "pinned", S();
250
250
  }
251
251
  function I() {
252
- p.value++, C();
252
+ p.value++, w();
253
253
  }
254
254
  function L() {
255
- p.value = Math.max(0, p.value - 1), p.value === 0 && l.value === "hover" && (C(), f = setTimeout(() => {
255
+ p.value = Math.max(0, p.value - 1), p.value === 0 && l.value === "hover" && (w(), f = setTimeout(() => {
256
256
  p.value === 0 && l.value === "hover" && D();
257
257
  }, Math.min(t, 800)));
258
258
  }
259
- function R(e) {
259
+ function z(e) {
260
260
  if (s() || i?.value) return;
261
261
  let t = n.value;
262
- !t || t.contains(e.target) || ye(e.target, a) || k();
262
+ !t || t.contains(e.target) || be(e.target, a) || k();
263
263
  }
264
264
  return Y(u, (e) => {
265
- e ? (T(), g = requestAnimationFrame(() => {
266
- g = null, u.value && (document.addEventListener("pointerdown", R, !0), h = () => {
267
- document.removeEventListener("pointerdown", R, !0), h = null;
265
+ e ? (E(), g = requestAnimationFrame(() => {
266
+ g = null, u.value && (document.addEventListener("pointerdown", z, !0), h = () => {
267
+ document.removeEventListener("pointerdown", z, !0), h = null;
268
268
  });
269
- })) : T();
269
+ })) : E();
270
270
  }), typeof r == "boolean" ? r && (l.value = "pinned", S()) : Y(r, (e) => {
271
271
  if (e) {
272
- C(), l.value = "pinned", S();
272
+ w(), l.value = "pinned", S();
273
273
  return;
274
274
  }
275
275
  l.value = "collapsed", S();
276
- }, { immediate: !0 }), B(() => {
277
- C(), y(), T();
276
+ }, { immediate: !0 }), R(() => {
277
+ w(), y(), E();
278
278
  }), {
279
279
  state: l,
280
280
  expanded: u,
@@ -293,12 +293,12 @@ function be(e) {
293
293
  }
294
294
  //#endregion
295
295
  //#region src/components/custom/dock/composables/dockMorphContext.ts
296
- var xe = l(m), { KEY: Se } = xe;
297
- function Ce(e) {
298
- xe.provide(e);
296
+ var Se = l(m), { KEY: Ce } = Se;
297
+ function we(e) {
298
+ Se.provide(e);
299
299
  }
300
- var we = xe.use;
301
- function Te(e) {
300
+ var Te = Se.use;
301
+ function Ee(e) {
302
302
  let { rootEl: t, outerEl: n, outerActiveLayer: r, outerAxis: i } = e, a = null, o = /* @__PURE__ */ new Set();
303
303
  function s() {
304
304
  return t.value;
@@ -338,7 +338,7 @@ function Te(e) {
338
338
  if (!s()) return;
339
339
  let e = a !== null && !a.settled ? a.velocity : 0;
340
340
  if (!a || a.settled) {
341
- c(), a = new Q({
341
+ c(), a = new ue({
342
342
  response: g.response,
343
343
  dampingFraction: g.dampingFraction,
344
344
  initial: 0,
@@ -390,19 +390,38 @@ function Te(e) {
390
390
  let t = e.containerEl.value, n = s();
391
391
  if (!t || !n) return;
392
392
  f(t);
393
- let r = u(c);
393
+ let r = u(c), i = b(e, t).map((e) => x(e));
394
394
  t.style.setProperty(r, "max-content");
395
- let i = d(t, c);
396
- t.style.removeProperty(r), v(e, a, l, i);
395
+ let o = d(t, c);
396
+ t.style.removeProperty(r);
397
+ for (let e of i) e();
398
+ v(e, a, l, o);
397
399
  });
398
400
  }
399
- function b(e) {
401
+ function b(e, t) {
402
+ let n = [];
403
+ for (let r of o) {
404
+ if (r === e) continue;
405
+ let i = r.containerEl.value;
406
+ i && i !== t && t.contains(i) && n.push(r);
407
+ }
408
+ return n;
409
+ }
410
+ function x(e) {
411
+ let t = e.containerEl.value;
412
+ if (!t) return () => {};
413
+ let n = u(e.axis.value), r = t.style.getPropertyValue(n);
414
+ return t.style.setProperty(n, "max-content"), () => {
415
+ r ? t.style.setProperty(n, r) : t.style.removeProperty(n);
416
+ };
417
+ }
418
+ function S(e) {
400
419
  let t = {
401
420
  containerEl: e.containerEl,
402
421
  activeLayer: e.activeLayer,
403
422
  axis: e.axis,
404
- currentLayer: U(e.activeLayer.value),
405
- leavingLayer: U(null),
423
+ currentLayer: V(e.activeLayer.value),
424
+ leavingLayer: V(null),
406
425
  txId: 0,
407
426
  stop: () => {}
408
427
  };
@@ -410,73 +429,73 @@ function Te(e) {
410
429
  y(t, e, n);
411
430
  }), o.add(t), t;
412
431
  }
413
- function x(e) {
432
+ function C(e) {
414
433
  e.stop(), o.delete(e), h();
415
434
  }
416
- let S = b({
435
+ let w = S({
417
436
  containerEl: n,
418
437
  activeLayer: r,
419
438
  axis: i
420
- }), C = { registerGroup(e) {
421
- let t = b(e);
439
+ }), T = { registerGroup(e) {
440
+ let t = S(e);
422
441
  return {
423
- currentLayer: H(t.currentLayer),
424
- leavingLayer: H(t.leavingLayer),
425
- release: () => x(t)
442
+ currentLayer: B(t.currentLayer),
443
+ leavingLayer: B(t.leavingLayer),
444
+ release: () => C(t)
426
445
  };
427
446
  } };
428
- function w(e) {
447
+ function E(e) {
429
448
  let t = n.value;
430
449
  if (!t || e.target !== t) return;
431
450
  let r = u(i.value);
432
- e.propertyName !== r && e.propertyName !== l(i.value) || a && a.settled && (m(S), h());
451
+ e.propertyName !== r && e.propertyName !== l(i.value) || a && a.settled && (m(w), h());
433
452
  }
434
- return B(() => {
453
+ return R(() => {
435
454
  for (let e of o) e.stop();
436
455
  o.clear(), c();
437
456
  }), {
438
- context: C,
439
- outerCurrentLayer: H(S.currentLayer),
440
- onOuterTransitionEnd: w
457
+ context: T,
458
+ outerCurrentLayer: B(w.currentLayer),
459
+ onOuterTransitionEnd: E
441
460
  };
442
461
  }
443
462
  //#endregion
444
463
  //#region src/components/custom/dock/composables/useDockShellProps.ts
445
- function Ee(e) {
446
- let t = E(() => {
464
+ function De(e) {
465
+ let t = C(() => {
447
466
  if (e.containerName) return {
448
467
  "container-type": "inline-size",
449
468
  "container-name": e.containerName
450
469
  };
451
- }), n = E(() => e.collapseDelay ?? 2e3), r = E(() => e.layout ?? "linear"), i = E(() => e.shape ?? "pill"), a = E(() => e.orientation ?? "horizontal"), o = E(() => e.density ?? "comfortable"), s = E(() => e.overflow === "scroll" ? a.value === "vertical" ? "dock-scroll-y" : "dock-scroll-x" : null), c = E(() => e.alwaysExpanded || r.value === "grid");
470
+ }), n = C(() => e.collapseDelay ?? 2e3), r = C(() => e.layout ?? "linear"), i = C(() => e.shape ?? "pill"), a = C(() => e.orientation ?? "horizontal"), o = C(() => e.density ?? "comfortable"), s = C(() => e.overflow === "scroll" ? a.value === "vertical" ? "dock-scroll-y" : "dock-scroll-x" : null), c = C(() => e.alwaysExpanded || r.value === "grid");
452
471
  return {
453
472
  containerStyle: t,
454
473
  collapseDelay: n,
455
- startCollapsed: E(() => c.value ? !1 : e.startCollapsed ?? !0),
474
+ startCollapsed: C(() => c.value ? !1 : e.startCollapsed ?? !0),
456
475
  layoutValue: r,
457
476
  shape: i,
458
477
  orientation: a,
459
478
  density: o,
460
479
  scrollClass: s,
461
480
  alwaysExpanded: c,
462
- fitContent: E(() => e.fitContent ?? !1)
481
+ fitContent: C(() => e.fitContent ?? !1)
463
482
  };
464
483
  }
465
484
  //#endregion
466
485
  //#region src/components/custom/dock/composables/useDockMorphWindow.ts
467
- function De(e) {
486
+ function Oe(e) {
468
487
  let t = e.trim();
469
488
  return t ? t.endsWith("ms") ? Number.parseFloat(t) : t.endsWith("s") ? Number.parseFloat(t) * 1e3 : Number.parseFloat(t) || 0 : 0;
470
489
  }
471
- function Oe(e) {
472
- let t = getComputedStyle(e), n = t.transitionDuration.split(",").map(De), r = t.transitionDelay.split(",").map(De);
490
+ function ke(e) {
491
+ let t = getComputedStyle(e), n = t.transitionDuration.split(",").map(Oe), r = t.transitionDelay.split(",").map(Oe);
473
492
  return Math.max(0, ...n.map((e, t) => e + (r[t] ?? r[0] ?? 0)));
474
493
  }
475
- function ke(e) {
476
- let t = De(getComputedStyle(e).getPropertyValue("--duration-normal") || "0.3s");
494
+ function Ae(e) {
495
+ let t = Oe(getComputedStyle(e).getPropertyValue("--duration-normal") || "0.3s");
477
496
  return Math.max(t > 0 ? t * 2 : 0, 600);
478
497
  }
479
- function Ae(e, t) {
498
+ function je(e, t) {
480
499
  let n = null, r = 0;
481
500
  function i() {
482
501
  n &&= (clearTimeout(n), null);
@@ -487,12 +506,12 @@ function Ae(e, t) {
487
506
  let o = ++r;
488
507
  i(), t.value = !0, n = setTimeout(() => {
489
508
  o === r && (t.value = !1, n = null);
490
- }, Math.max(Oe(a), ke(a)) + 50);
509
+ }, Math.max(ke(a), Ae(a)) + 50);
491
510
  }
492
511
  function o(n) {
493
512
  n.target === e.value && d.has(n.propertyName) && (i(), r++, t.value = !1);
494
513
  }
495
- return R(i), {
514
+ return F(i), {
496
515
  markTransitioning: a,
497
516
  onDockTransitionDone: o,
498
517
  clearTransitionTimer: i
@@ -500,7 +519,7 @@ function Ae(e, t) {
500
519
  }
501
520
  //#endregion
502
521
  //#region src/components/custom/dock/composables/useDockClickIntegrity.ts
503
- function je(e) {
522
+ function Me(e) {
504
523
  let { rootEl: t, visualExpanded: n } = e, r = null, i = !1, a = 0, o = null;
505
524
  function s() {
506
525
  o !== null && (clearTimeout(o), o = null);
@@ -544,7 +563,7 @@ function je(e) {
544
563
  e.stopPropagation(), e.preventDefault(), r = null;
545
564
  }
546
565
  }
547
- return R(s), {
566
+ return F(s), {
548
567
  onPointerDownCapture: f,
549
568
  onClickCapture: m,
550
569
  markExpandFlip: c
@@ -552,14 +571,14 @@ function je(e) {
552
571
  }
553
572
  //#endregion
554
573
  //#region src/components/custom/dock/GlassDock.vue?vue&type=script&setup=true&lang.ts
555
- var Me = ["data-has-rail"], Ne = [
574
+ var Ne = ["data-has-rail"], Pe = [
556
575
  "data-density",
557
576
  "data-held",
558
577
  "data-container-name"
559
- ], Pe = {
578
+ ], Fe = {
560
579
  key: 0,
561
580
  class: "dock-persistent"
562
- }, Fe = ["inert"], Ie = ["inert"], Le = /* @__PURE__ */ M({
581
+ }, Ie = ["inert"], Le = ["inert"], Re = /* @__PURE__ */ k({
563
582
  inheritAttrs: !1,
564
583
  __name: "GlassDock",
565
584
  props: {
@@ -582,130 +601,242 @@ var Me = ["data-has-rail"], Ne = [
582
601
  ] }
583
602
  },
584
603
  setup(e, { expose: t }) {
585
- let n = e, { containerStyle: r, collapseDelay: i, startCollapsed: a, layoutValue: s, shape: c, orientation: l, density: u, scrollClass: d, alwaysExpanded: f, fitContent: m } = Ee(n), h = s, g = J("dockEl"), _ = J("layersEl");
586
- n.autoLuminance !== !1 && ve(g, { backgroundCanvas: n.backgroundCanvas ?? null });
587
- let v = U(!1), y = o(i.value), b = `glass-dock-${ie()}`, { expanded: x, isPinned: S, isHeld: C, onMouseEnter: w, onMouseLeave: T, onFocusIn: D, onFocusOut: j, onClickCollapsed: M, keepOpen: N, release: F, expand: L, collapse: R } = be({
604
+ let n = e, { containerStyle: r, collapseDelay: i, startCollapsed: s, layoutValue: c, shape: l, orientation: u, density: d, scrollClass: f, alwaysExpanded: m, fitContent: h } = De(n), g = c, _ = J("dockEl"), v = J("layersEl");
605
+ n.autoLuminance !== !1 && ye(_, { backgroundCanvas: n.backgroundCanvas ?? null });
606
+ let y = V(!1), b = o(i.value), x = `glass-dock-${ee()}`, { expanded: S, isPinned: w, isHeld: O, onMouseEnter: k, onMouseLeave: A, onFocusIn: M, onFocusOut: P, onClickCollapsed: F, keepOpen: L, release: R, expand: B, collapse: H } = xe({
588
607
  collapseDelay: i.value,
589
- rootEl: g,
590
- alwaysExpanded: f,
591
- isTransitioning: v,
592
- dockId: b
608
+ rootEl: _,
609
+ alwaysExpanded: m,
610
+ isTransitioning: y,
611
+ dockId: x
593
612
  });
594
613
  p({
595
- id: b,
596
- orientation: l,
597
- layout: h,
598
- keepOpen: N,
599
- release: F,
600
- held: C
614
+ id: x,
615
+ orientation: u,
616
+ layout: g,
617
+ keepOpen: L,
618
+ release: R,
619
+ held: O
601
620
  });
602
- let z = E(() => f.value || x.value), B = ae(), H = E(() => !!B.rail), { context: te, onOuterTransitionEnd: G } = Te({
603
- rootEl: g,
604
- outerEl: _,
605
- outerActiveLayer: E(() => z.value ? "full" : "summary"),
606
- outerAxis: E(() => l.value)
621
+ let W = C(() => m.value || S.value), G = te(), q = C(() => !!G.rail), X = J("frameEl");
622
+ function Z() {
623
+ let e = X.value;
624
+ if (!e || !q.value) return;
625
+ let t = _.value?.querySelector("[data-rail-anchor]");
626
+ if (!t) {
627
+ e.style.removeProperty("--dock-rail-seam-offset");
628
+ return;
629
+ }
630
+ let n = e.getBoundingClientRect(), r = t.getBoundingClientRect(), i = u.value === "vertical" ? r.top + r.height / 2 - n.top : r.left + r.width / 2 - n.left;
631
+ e.style.setProperty("--dock-rail-seam-offset", `${Math.round(i)}px`);
632
+ }
633
+ a(_, () => Z()), I(() => Z()), Y([u, q], () => Z(), { flush: "post" });
634
+ let { context: ne, onOuterTransitionEnd: re } = Ee({
635
+ rootEl: _,
636
+ outerEl: v,
637
+ outerActiveLayer: C(() => W.value ? "full" : "summary"),
638
+ outerAxis: C(() => u.value)
607
639
  });
608
- Ce(te);
609
- let ne = E(() => ({ "view-transition-name": b.replace(/[^a-zA-Z0-9_-]/g, "-") })), { markTransitioning: re, onDockTransitionDone: q } = Ae(g, v), { onPointerDownCapture: X, onClickCapture: oe, markExpandFlip: se } = je({
610
- rootEl: g,
611
- visualExpanded: z
640
+ we(ne);
641
+ let ie = C(() => ({ "view-transition-name": x.replace(/[^a-zA-Z0-9_-]/g, "-") })), { markTransitioning: ae, onDockTransitionDone: Q } = je(_, y), { onPointerDownCapture: oe, onClickCapture: se, markExpandFlip: ce } = Me({
642
+ rootEl: _,
643
+ visualExpanded: W
612
644
  });
613
- ee(() => {
614
- (n.alwaysExpanded || !a.value) && L();
645
+ I(() => {
646
+ (n.alwaysExpanded || !s.value) && B();
615
647
  });
616
- function Z() {
617
- return !f.value;
648
+ function le() {
649
+ return !m.value;
618
650
  }
619
- function ce(e) {
620
- if (!Z() || z.value) return;
621
- let t = g.value, n = e.touches[0];
622
- !t || !n || y.handleTouchStart(t, n.clientY);
651
+ function ue(e) {
652
+ if (!le() || W.value) return;
653
+ let t = _.value, n = e.touches[0];
654
+ !t || !n || b.handleTouchStart(t, n.clientY);
623
655
  }
624
- function le(e) {
625
- Z() && y.handleScrollCheck(e);
656
+ function de(e) {
657
+ le() && b.handleScrollCheck(e);
626
658
  }
627
- function Q() {
628
- if (!Z()) return;
629
- let e = y.isActive.value;
630
- y.handleTouchEnd(), !e && y.isActive.value && !z.value && L();
659
+ function fe() {
660
+ if (!le()) return;
661
+ let e = b.isActive.value;
662
+ b.handleTouchEnd(), !e && b.isActive.value && !W.value && B();
631
663
  }
632
- return Y(y.isActive, (e) => {
633
- !e && x.value && !S.value && !f.value && R();
634
- }), Y(z, (e) => {
635
- re(), e ? se() : y.deactivate();
664
+ return Y(b.isActive, (e) => {
665
+ !e && S.value && !w.value && !m.value && H();
666
+ }), Y(W, (e) => {
667
+ ae(), e ? ce() : b.deactivate();
636
668
  }), t({
637
- expanded: x,
638
- isPinned: S,
639
- isHeld: C,
640
- isTransitioning: v,
641
- expand: L,
642
- collapse: R,
643
- keepOpen: N,
644
- release: F
645
- }), (t, n) => (V(), k("div", {
646
- class: I(["glass-dock-frame", K(l)]),
647
- "data-has-rail": H.value || void 0
648
- }, [A("div", P({
669
+ expanded: S,
670
+ isPinned: w,
671
+ isHeld: O,
672
+ isTransitioning: y,
673
+ expand: B,
674
+ collapse: H,
675
+ keepOpen: L,
676
+ release: R
677
+ }), (t, n) => (z(), E("div", {
678
+ ref_key: "frameEl",
679
+ ref: X,
680
+ class: N(["glass-dock-frame", K(u)]),
681
+ "data-has-rail": q.value || void 0
682
+ }, [D("div", j({
649
683
  ref_key: "dockEl",
650
- ref: g
684
+ ref: _
651
685
  }, t.$attrs, {
652
686
  class: ["glass-dock", [
653
- K(l),
654
- `shape-${K(c)}`,
655
- `layout-${K(h)}`,
656
- K(d),
687
+ K(u),
688
+ `shape-${K(l)}`,
689
+ `layout-${K(g)}`,
690
+ K(f),
657
691
  {
658
- expanded: z.value,
659
- collapsed: !z.value,
660
- pinned: K(S),
661
- "fit-content": K(m),
662
- "always-expanded": K(f),
663
- "dock-overflow-wrap": e.overflow === "wrap" && K(l) !== "vertical"
692
+ expanded: W.value,
693
+ collapsed: !W.value,
694
+ pinned: K(w),
695
+ "fit-content": K(h),
696
+ "always-expanded": K(m),
697
+ "dock-overflow-wrap": e.overflow === "wrap" && K(u) !== "vertical"
664
698
  },
665
699
  e.position === "fixed" ? "fixed bottom-(--dock-pos) left-1/2 -translate-x-1/2" : e.position === "sticky" ? "dock-sticky" : "dock-inline"
666
700
  ]],
667
- "data-density": K(u),
668
- "data-held": K(C) || void 0,
701
+ "data-density": K(d),
702
+ "data-held": K(O) || void 0,
669
703
  "data-container-name": e.containerName || void 0,
670
- style: [K(r), ne.value],
671
- onMouseenter: n[2] ||= (...e) => K(w) && K(w)(...e),
672
- onMouseleave: n[3] ||= (e) => K(T)(e),
673
- onFocusin: n[4] ||= (...e) => K(D) && K(D)(...e),
674
- onFocusout: n[5] ||= (...e) => K(j) && K(j)(...e),
675
- onTouchstart: ce,
676
- onTouchmove: le,
677
- onTouchend: Q,
678
- onPointerdownCapture: n[6] ||= (...e) => K(X) && K(X)(...e),
679
- onClickCapture: n[7] ||= (...e) => K(oe) && K(oe)(...e),
680
- onTransitionend: n[8] ||= (...e) => K(q) && K(q)(...e),
681
- onTransitioncancel: n[9] ||= (...e) => K(q) && K(q)(...e)
682
- }), [t.$slots.persistent ? (V(), k("div", Pe, [W(t.$slots, "persistent")])) : O("", !0), A("div", {
704
+ style: [K(r), ie.value],
705
+ onMouseenter: n[2] ||= (...e) => K(k) && K(k)(...e),
706
+ onMouseleave: n[3] ||= (e) => K(A)(e),
707
+ onFocusin: n[4] ||= (...e) => K(M) && K(M)(...e),
708
+ onFocusout: n[5] ||= (...e) => K(P) && K(P)(...e),
709
+ onTouchstart: ue,
710
+ onTouchmove: de,
711
+ onTouchend: fe,
712
+ onPointerdownCapture: n[6] ||= (...e) => K(oe) && K(oe)(...e),
713
+ onClickCapture: n[7] ||= (...e) => K(se) && K(se)(...e),
714
+ onTransitionend: n[8] ||= (...e) => K(Q) && K(Q)(...e),
715
+ onTransitioncancel: n[9] ||= (...e) => K(Q) && K(Q)(...e)
716
+ }), [t.$slots.persistent ? (z(), E("div", Fe, [U(t.$slots, "persistent")])) : T("", !0), D("div", {
683
717
  ref_key: "layersEl",
684
- ref: _,
718
+ ref: v,
685
719
  class: "dock-layers",
686
- onTransitionend: n[1] ||= (...e) => K(G) && K(G)(...e)
687
- }, [A("div", {
688
- class: I(["dock-layer dock-layer--full", { "is-active": z.value }]),
689
- inert: !K(x) || void 0
690
- }, [W(t.$slots, "default")], 10, Fe), A("div", {
691
- class: I(["dock-layer dock-layer--summary", { "is-active": !z.value }]),
692
- inert: K(x) || void 0,
693
- onClick: n[0] ||= (...e) => K(M) && K(M)(...e)
694
- }, [W(t.$slots, "collapsed")], 10, Ie)], 544)], 16, Ne), H.value ? (V(), k("div", {
720
+ onTransitionend: n[1] ||= (...e) => K(re) && K(re)(...e)
721
+ }, [D("div", {
722
+ class: N(["dock-layer dock-layer--full", { "is-active": W.value }]),
723
+ inert: !K(S) || void 0
724
+ }, [U(t.$slots, "default")], 10, Ie), D("div", {
725
+ class: N(["dock-layer dock-layer--summary", { "is-active": !W.value }]),
726
+ inert: K(S) || void 0,
727
+ onClick: n[0] ||= (...e) => K(F) && K(F)(...e)
728
+ }, [U(t.$slots, "collapsed")], 10, Le)], 544)], 16, Pe), q.value ? (z(), E("div", {
695
729
  key: 0,
696
- class: I(["dock-hairline-slot", K(l)])
697
- }, [W(t.$slots, "rail")], 2)) : O("", !0)], 10, Me));
730
+ class: N(["dock-hairline-slot", K(u)])
731
+ }, [U(t.$slots, "rail")], 2)) : T("", !0)], 10, Ne));
732
+ }
733
+ }), ze = /* @__PURE__ */ k({
734
+ __name: "Tabs",
735
+ props: {
736
+ defaultValue: {},
737
+ orientation: {},
738
+ dir: {},
739
+ activationMode: {},
740
+ modelValue: {},
741
+ unmountOnHide: { type: Boolean },
742
+ asChild: { type: Boolean },
743
+ as: {}
744
+ },
745
+ emits: ["update:modelValue"],
746
+ setup(e, { emit: t }) {
747
+ let n = le(e, t);
748
+ return (e, t) => (z(), w(K(oe), j({ "data-slot": "tabs" }, K(n)), {
749
+ default: X(() => [U(e.$slots, "default")]),
750
+ _: 3
751
+ }, 16));
752
+ }
753
+ }), Be = /* @__PURE__ */ k({
754
+ __name: "TabsTrigger",
755
+ props: {
756
+ value: {},
757
+ disabled: { type: Boolean },
758
+ asChild: { type: Boolean },
759
+ as: {},
760
+ class: { type: [
761
+ Boolean,
762
+ null,
763
+ String,
764
+ Object,
765
+ Array
766
+ ] }
767
+ },
768
+ setup(t) {
769
+ let n = t, r = ce(C(() => {
770
+ let { class: e, ...t } = n;
771
+ return t;
772
+ }));
773
+ return (t, i) => (z(), w(K(se), j({ "data-slot": "tabs-trigger" }, K(r), { class: K(e)("tap-squish focus-ring relative z-[1] inline-flex items-center justify-center whitespace-nowrap rounded-control p-1 px-3 text-sm font-medium transition-control disabled:pointer-events-none disabled:opacity-disabled data-[state=active]:text-[var(--active-tab-color,var(--foreground))] hover:text-foreground/70", n.class) }), {
774
+ default: X(() => [U(t.$slots, "default")]),
775
+ _: 3
776
+ }, 16, ["class"]));
698
777
  }
699
- }), Re = c(u, "[glass-ui:dock] <DockLayer> must be used inside <DockLayerGroup>"), { KEY: ze } = Re;
700
- function Be(e) {
701
- Re.provide(e);
778
+ }), Ve = /* @__PURE__ */ k({
779
+ __name: "TabsIndicator",
780
+ props: {
781
+ asChild: { type: Boolean },
782
+ as: {},
783
+ class: { type: [
784
+ Boolean,
785
+ null,
786
+ String,
787
+ Object,
788
+ Array
789
+ ] },
790
+ surface: {
791
+ type: Boolean,
792
+ default: !0
793
+ }
794
+ },
795
+ setup(t) {
796
+ let n = t, r = C(() => {
797
+ let { class: e, surface: t, ...r } = n;
798
+ return r;
799
+ });
800
+ return (t, i) => (z(), w(K(ae), j({ "data-slot": "tabs-indicator" }, r.value, { class: K(e)("pointer-events-none absolute left-0 bottom-1 top-1 z-0 w-(--reka-tabs-indicator-size) translate-x-(--reka-tabs-indicator-position) rounded-pill transition-[width,translate] duration-normal ease-spring-snappy", n.surface && "bg-(--glass-bg-quiet) [backdrop-filter:var(--glass-blur-quiet)]", n.class) }), null, 16, ["class"]));
801
+ }
802
+ }), He = /* @__PURE__ */ k({
803
+ __name: "TabsList",
804
+ props: {
805
+ loop: { type: Boolean },
806
+ asChild: { type: Boolean },
807
+ as: {},
808
+ class: { type: [
809
+ Boolean,
810
+ null,
811
+ String,
812
+ Object,
813
+ Array
814
+ ] },
815
+ indicator: {
816
+ type: Boolean,
817
+ default: !0
818
+ }
819
+ },
820
+ setup(t) {
821
+ let n = t, r = C(() => {
822
+ let { class: e, indicator: t, ...r } = n;
823
+ return r;
824
+ });
825
+ return (i, a) => (z(), w(K(Q), j({ "data-slot": "tabs-list" }, r.value, { class: K(e)("relative inline-flex h-(--control-h-md) items-center justify-center rounded-input p-1 text-muted-foreground", n.class) }), {
826
+ default: X(() => [t.indicator ? (z(), w(Ve, { key: 0 })) : T("", !0), U(i.$slots, "default")]),
827
+ _: 3
828
+ }, 16, ["class"]));
829
+ }
830
+ }), Ue = c(u, "[glass-ui:dock] <DockLayer> must be used inside <DockLayerGroup>"), { KEY: We } = Ue;
831
+ function Ge(e) {
832
+ Ue.provide(e);
702
833
  }
703
- var Ve = Re.use;
704
- Re.useOptional;
834
+ var Ke = Ue.use;
835
+ Ue.useOptional;
705
836
  //#endregion
706
837
  //#region src/components/custom/dock/composables/useLayerTransition.ts
707
- function He(e) {
708
- let { containerEl: t, activeLayer: n, axis: r } = e, i = E(() => r?.value === "vertical" ? "height" : "width"), a = E(() => i.value === "width" ? "inline-size" : "block-size"), o = (e) => e.getBoundingClientRect()[i.value], s = U(n.value), c = U(null), l = 0, u = null, d = null;
838
+ function qe(e) {
839
+ let { containerEl: t, activeLayer: n, axis: r } = e, i = C(() => r?.value === "vertical" ? "height" : "width"), a = C(() => i.value === "width" ? "inline-size" : "block-size"), o = (e) => e.getBoundingClientRect()[i.value], s = V(n.value), c = V(null), l = 0, u = null, d = null;
709
840
  function f() {
710
841
  u &&= (u.dispose(), null), d = null;
711
842
  }
@@ -723,7 +854,7 @@ function He(e) {
723
854
  h(e, t);
724
855
  return;
725
856
  }
726
- e.style.setProperty("--dock-morph-from", `${r}px`), e.style.setProperty("--dock-morph-to", `${i}px`), t.style.setProperty("--dock-morph-t", "0"), t.setAttribute("data-morphing", ""), o || (f(), u = new Q({
857
+ e.style.setProperty("--dock-morph-from", `${r}px`), e.style.setProperty("--dock-morph-to", `${i}px`), t.style.setProperty("--dock-morph-t", "0"), t.setAttribute("data-morphing", ""), o || (f(), u = new ue({
727
858
  response: g.response,
728
859
  dampingFraction: g.dampingFraction,
729
860
  initial: 0,
@@ -756,7 +887,7 @@ function He(e) {
756
887
  let n = t.value;
757
888
  n && e.target === n && (e.propertyName !== a.value && e.propertyName !== i.value || u && u.settled && h(n, p(n)));
758
889
  }
759
- return B(f), {
890
+ return R(f), {
760
891
  onTransitionEnd: v,
761
892
  currentLayer: s,
762
893
  leavingLayer: c
@@ -764,9 +895,9 @@ function He(e) {
764
895
  }
765
896
  //#endregion
766
897
  //#region src/components/custom/dock/DockLayerGroup.vue?vue&type=script&setup=true&lang.ts
767
- var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
898
+ var Je = { key: 1 }, Ye = { key: 2 }, Xe = /* @__PURE__ */ k({
768
899
  __name: "DockLayerGroup",
769
- props: /* @__PURE__ */ N({
900
+ props: /* @__PURE__ */ A({
770
901
  orientation: {},
771
902
  showRail: {
772
903
  type: Boolean,
@@ -779,23 +910,23 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
779
910
  }),
780
911
  emits: ["update:active"],
781
912
  setup(e) {
782
- let t = e, n = q(e, "active"), r = f(), i = U([]), a = J("containerEl");
913
+ let t = e, n = q(e, "active"), r = f(), i = V([]), a = J("containerEl");
783
914
  function o(e) {
784
915
  i.value.find((t) => t.id === e.id) || i.value.push(e);
785
916
  }
786
917
  function s(e) {
787
918
  i.value = i.value.filter((t) => t.id !== e);
788
919
  }
789
- let c = E(() => t.orientation ?? r?.orientation.value ?? "horizontal"), l = E(() => c.value === "vertical" ? "horizontal" : "vertical"), u = we(), d, p, m;
920
+ let c = C(() => t.orientation ?? r?.orientation.value ?? "horizontal"), l = C(() => c.value === "vertical" ? "horizontal" : "vertical"), u = Te(), d, p, m;
790
921
  if (u) {
791
922
  let e = u.registerGroup({
792
923
  containerEl: a,
793
924
  activeLayer: n,
794
925
  axis: c
795
926
  });
796
- d = e.currentLayer, p = e.leavingLayer, m = () => {}, R(() => e.release());
927
+ d = e.currentLayer, p = e.leavingLayer, m = () => {}, F(() => e.release());
797
928
  } else {
798
- let e = He({
929
+ let e = qe({
799
930
  containerEl: a,
800
931
  activeLayer: n,
801
932
  axis: c,
@@ -804,78 +935,78 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
804
935
  return [i.value.findIndex((e) => e.id === t) < n ? "layer-back" : "layer-forward"];
805
936
  }
806
937
  });
807
- d = H(e.currentLayer), p = H(e.leavingLayer), m = e.onTransitionEnd;
938
+ d = B(e.currentLayer), p = B(e.leavingLayer), m = e.onTransitionEnd;
808
939
  }
809
- let h = typeof document < "u" && "startViewTransition" in document, g = ie(), _ = E(() => h ? {
940
+ let h = typeof document < "u" && "startViewTransition" in document, g = ee(), _ = C(() => h ? {
810
941
  "view-transition-name": `gl-dock-stack-${g.replace(/[^a-zA-Z0-9_-]/g, "-")}`,
811
942
  "view-transition-class": "gl-dock-layer"
812
943
  } : void 0);
813
- Be({
944
+ Ge({
814
945
  register: o,
815
946
  unregister: s,
816
947
  currentLayerId: d,
817
948
  leavingLayerId: p
818
949
  });
819
- function S(e) {
950
+ function v(e) {
820
951
  return typeof e == "object" && !!e || typeof e == "function";
821
952
  }
822
- let C = U(!1);
823
- function w() {
824
- C.value || (C.value = !0, r?.keepOpen());
953
+ let y = V(!1);
954
+ function b() {
955
+ y.value || (y.value = !0, r?.keepOpen());
825
956
  }
826
- function M(e) {
957
+ function x(e) {
827
958
  let t = e.relatedTarget, n = e.currentTarget;
828
- t && n?.contains(t) || C.value && (C.value = !1, r?.release());
959
+ t && n?.contains(t) || y.value && (y.value = !1, r?.release());
829
960
  }
830
- return (t, r) => (V(), k("div", { class: I(["dock-layer-group", [c.value, `rail-${e.railPosition}`]]) }, [e.showRail && i.value.length > 1 ? (V(), D(K(v), {
961
+ return (t, r) => (z(), E("div", { class: N(["dock-layer-group", [c.value, `rail-${e.railPosition}`]]) }, [e.showRail && i.value.length > 1 ? (z(), w(K(ze), {
831
962
  key: 0,
832
963
  modelValue: n.value,
833
964
  "onUpdate:modelValue": r[0] ||= (e) => n.value = e,
834
965
  orientation: l.value,
835
966
  "as-child": !0
836
967
  }, {
837
- default: X(() => [j(K(x), {
838
- class: I(["dock-layer-rail", e.railPosition]),
968
+ default: X(() => [O(K(He), {
969
+ class: N(["dock-layer-rail", e.railPosition]),
839
970
  indicator: !1,
840
- onFocusin: w,
841
- onFocusout: M
971
+ onFocusin: b,
972
+ onFocusout: x
842
973
  }, {
843
- default: X(() => [(V(!0), k(T, null, te(i.value, (e) => (V(), D(K(b), {
974
+ default: X(() => [(z(!0), E(S, null, H(i.value, (e) => (z(), w(K(Be), {
844
975
  key: e.id,
845
976
  value: e.id,
846
977
  class: "dock-layer-tab",
847
978
  title: e.label,
848
979
  "aria-label": e.label ?? e.id
849
980
  }, {
850
- default: X(() => [S(e.icon) ? (V(), D(G(e.icon), {
981
+ default: X(() => [v(e.icon) ? (z(), w(W(e.icon), {
851
982
  key: 0,
852
983
  class: "size-4"
853
- })) : typeof e.icon == "string" ? (V(), k("span", Ue, ne(e.icon), 1)) : (V(), k("span", We, ne((e.label ?? e.id).charAt(0)), 1))]),
984
+ })) : typeof e.icon == "string" ? (z(), E("span", Je, G(e.icon), 1)) : (z(), E("span", Ye, G((e.label ?? e.id).charAt(0)), 1))]),
854
985
  _: 2
855
986
  }, 1032, [
856
987
  "value",
857
988
  "title",
858
989
  "aria-label"
859
- ]))), 128)), j(K(y), {
990
+ ]))), 128)), O(K(Ve), {
860
991
  class: "dock-layer-tab-indicator",
861
992
  surface: !1
862
993
  })]),
863
994
  _: 1
864
995
  }, 8, ["class"])]),
865
996
  _: 1
866
- }, 8, ["modelValue", "orientation"])) : O("", !0), A("div", {
997
+ }, 8, ["modelValue", "orientation"])) : T("", !0), D("div", {
867
998
  ref_key: "containerEl",
868
999
  ref: a,
869
1000
  class: "dock-layer-stack",
870
- style: L(_.value),
1001
+ style: P(_.value),
871
1002
  onTransitionend: r[1] ||= (...e) => K(m) && K(m)(...e)
872
- }, [W(t.$slots, "default")], 36)], 2));
1003
+ }, [U(t.$slots, "default")], 36)], 2));
873
1004
  }
874
- }), Ke = [
1005
+ }), Ze = [
875
1006
  "inert",
876
1007
  "aria-hidden",
877
1008
  "tabindex"
878
- ], qe = /* @__PURE__ */ M({
1009
+ ], Qe = /* @__PURE__ */ k({
879
1010
  __name: "DockLayer",
880
1011
  props: {
881
1012
  id: {},
@@ -883,35 +1014,35 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
883
1014
  icon: {}
884
1015
  },
885
1016
  setup(e) {
886
- let t = e, n = Ve();
887
- ee(() => {
1017
+ let t = e, n = Ke();
1018
+ I(() => {
888
1019
  n.register({
889
1020
  id: t.id,
890
1021
  label: t.label,
891
1022
  icon: t.icon
892
1023
  });
893
- }), R(() => {
1024
+ }), F(() => {
894
1025
  n.unregister(t.id);
895
1026
  });
896
- let r = E(() => n.currentLayerId.value === t.id), i = E(() => n.leavingLayerId.value === t.id), a = J("hostEl");
1027
+ let r = C(() => n.currentLayerId.value === t.id), i = C(() => n.leavingLayerId.value === t.id), a = J("hostEl");
897
1028
  return Y(r, async (e, t) => {
898
1029
  !e || t || typeof document < "u" && (() => {
899
1030
  let e = document.activeElement;
900
1031
  return !e || e === document.body ? !0 : !!e.closest("[inert]");
901
- })() && (await F(), a.value?.focus());
902
- }), (e, t) => (V(), k("div", {
1032
+ })() && (await M(), a.value?.focus());
1033
+ }), (e, t) => (z(), E("div", {
903
1034
  ref_key: "hostEl",
904
1035
  ref: a,
905
- class: I(["dock-layer-item-host", {
1036
+ class: N(["dock-layer-item-host", {
906
1037
  "is-active": r.value,
907
1038
  "is-leaving": i.value
908
1039
  }]),
909
1040
  inert: r.value ? void 0 : !0,
910
1041
  "aria-hidden": r.value ? void 0 : !0,
911
1042
  tabindex: r.value ? -1 : void 0
912
- }, [W(e.$slots, "default")], 10, Ke));
1043
+ }, [U(e.$slots, "default")], 10, Ze));
913
1044
  }
914
- }), Je = /* @__PURE__ */ M({
1045
+ }), $e = /* @__PURE__ */ k({
915
1046
  __name: "DockIconButton",
916
1047
  props: {
917
1048
  compact: {
@@ -933,8 +1064,8 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
933
1064
  ] }
934
1065
  },
935
1066
  setup(t) {
936
- let n = t, r = E(() => e("dock-icon-button glass-specular-track", { "dock-icon-button--compact": n.compact }, n.class)), { specularStyle: a, onPointerMove: o } = i(), s = E(() => !n.asChild && n.as === "button" ? { type: n.type } : {});
937
- return (e, n) => (V(), D(K(se), P({
1067
+ let n = t, r = C(() => e("dock-icon-button glass-specular-track", { "dock-icon-button--compact": n.compact }, n.class)), { specularStyle: a, onPointerMove: o } = i(), s = C(() => !n.asChild && n.as === "button" ? { type: n.type } : {});
1068
+ return (e, n) => (z(), w(K(ne), j({
938
1069
  as: t.as,
939
1070
  "as-child": t.asChild
940
1071
  }, s.value, {
@@ -942,7 +1073,7 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
942
1073
  style: K(a),
943
1074
  onPointermove: K(o)
944
1075
  }), {
945
- default: X(() => [W(e.$slots, "default")]),
1076
+ default: X(() => [U(e.$slots, "default")]),
946
1077
  _: 3
947
1078
  }, 16, [
948
1079
  "as",
@@ -952,7 +1083,7 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
952
1083
  "onPointermove"
953
1084
  ]));
954
1085
  }
955
- }), Ye = /* @__PURE__ */ M({
1086
+ }), et = /* @__PURE__ */ k({
956
1087
  __name: "DockBackgroundToggle",
957
1088
  props: {
958
1089
  paused: {
@@ -964,22 +1095,22 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
964
1095
  },
965
1096
  emits: ["update:paused"],
966
1097
  setup(e, { emit: t }) {
967
- let n = e, r = t, i = E(() => n.paused ? n.playLabel : n.pauseLabel);
1098
+ let n = e, r = t, i = C(() => n.paused ? n.playLabel : n.pauseLabel);
968
1099
  function a() {
969
1100
  r("update:paused", !n.paused);
970
1101
  }
971
- return (t, n) => (V(), D(Je, {
1102
+ return (t, n) => (z(), w($e, {
972
1103
  type: "button",
973
1104
  "aria-pressed": e.paused,
974
1105
  "aria-label": i.value,
975
1106
  title: i.value,
976
1107
  onClick: a
977
1108
  }, {
978
- default: X(() => [e.paused ? (V(), D(K(de), {
1109
+ default: X(() => [e.paused ? (z(), w(K(fe), {
979
1110
  key: 0,
980
1111
  size: 18,
981
1112
  "aria-hidden": "true"
982
- })) : (V(), D(K(ue), {
1113
+ })) : (z(), w(K(de), {
983
1114
  key: 1,
984
1115
  size: 18,
985
1116
  "aria-hidden": "true"
@@ -991,7 +1122,7 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
991
1122
  "title"
992
1123
  ]));
993
1124
  }
994
- }), Xe = /* @__PURE__ */ M({
1125
+ }), tt = /* @__PURE__ */ k({
995
1126
  __name: "DockTabButton",
996
1127
  props: {
997
1128
  as: { default: "button" },
@@ -1008,13 +1139,13 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
1008
1139
  ] }
1009
1140
  },
1010
1141
  setup(t) {
1011
- let n = t, r = re(), i = E(() => r["data-tier"] === "primary"), a = E(() => e("dock-tab-button", i.value && "btn-audacious", n.class));
1012
- return (e, n) => (V(), D(K(se), {
1142
+ let n = t, r = C(() => e("dock-tab-button", n.class));
1143
+ return (e, n) => (z(), w(K(ne), {
1013
1144
  as: t.as,
1014
1145
  "as-child": t.asChild,
1015
- class: I(a.value)
1146
+ class: N(r.value)
1016
1147
  }, {
1017
- default: X(() => [W(e.$slots, "default")]),
1148
+ default: X(() => [U(e.$slots, "default")]),
1018
1149
  _: 3
1019
1150
  }, 8, [
1020
1151
  "as",
@@ -1022,7 +1153,7 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
1022
1153
  "class"
1023
1154
  ]));
1024
1155
  }
1025
- }), Ze = /* @__PURE__ */ M({
1156
+ }), nt = /* @__PURE__ */ k({
1026
1157
  __name: "DockSelectTrigger",
1027
1158
  props: {
1028
1159
  disabled: { type: Boolean },
@@ -1038,19 +1169,19 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
1038
1169
  ] }
1039
1170
  },
1040
1171
  setup(t) {
1041
- let r = t, i = le(E(() => {
1172
+ let r = t, i = ce(C(() => {
1042
1173
  let { class: e, ...t } = r;
1043
1174
  return t;
1044
1175
  }));
1045
- return (t, a) => (V(), D(K(ce), P(K(i), { class: K(e)("dock-select-trigger", r.class) }), {
1046
- default: X(() => [W(t.$slots, "default"), j(K(Z), { "as-child": "" }, {
1047
- default: X(() => [W(t.$slots, "icon", {}, () => [j(K(n), { class: "dock-select-trigger__chevron" })])]),
1176
+ return (t, a) => (z(), w(K(ie), j(K(i), { class: K(e)("dock-select-trigger", r.class) }), {
1177
+ default: X(() => [U(t.$slots, "default"), O(K(re), { "as-child": "" }, {
1178
+ default: X(() => [U(t.$slots, "icon", {}, () => [O(K(n), { class: "dock-select-trigger__chevron" })])]),
1048
1179
  _: 3
1049
1180
  })]),
1050
1181
  _: 3
1051
1182
  }, 16, ["class"]));
1052
1183
  }
1053
- }), Qe = /* @__PURE__ */ M({
1184
+ }), rt = /* @__PURE__ */ k({
1054
1185
  __name: "DockDropdownTrigger",
1055
1186
  props: {
1056
1187
  disabled: { type: Boolean },
@@ -1066,29 +1197,38 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
1066
1197
  ] }
1067
1198
  },
1068
1199
  setup(t) {
1069
- let n = t, r = le(E(() => {
1200
+ let n = t, r = ce(C(() => {
1070
1201
  let { class: e, ...t } = n;
1071
1202
  return t;
1072
1203
  }));
1073
- return (t, i) => (V(), D(K(oe), P(K(r), { class: K(e)("dock-dropdown-trigger", n.class) }), {
1074
- default: X(() => [W(t.$slots, "default")]),
1204
+ return (t, i) => (z(), w(K(Z), j(K(r), { class: K(e)("dock-dropdown-trigger", n.class) }), {
1205
+ default: X(() => [U(t.$slots, "default")]),
1075
1206
  _: 3
1076
1207
  }, 16, ["class"]));
1077
1208
  }
1078
- }), $e = ["data-orientation", "aria-orientation"], et = /* @__PURE__ */ M({
1209
+ }), it = [
1210
+ "data-orientation",
1211
+ "data-rail-anchor",
1212
+ "aria-orientation"
1213
+ ], at = /* @__PURE__ */ k({
1079
1214
  __name: "DockSeparator",
1215
+ props: { anchor: {
1216
+ type: Boolean,
1217
+ default: !1
1218
+ } },
1080
1219
  setup(e) {
1081
- let t = f(), n = E(() => t?.orientation.value ?? "horizontal"), r = E(() => n.value), i = E(() => n.value === "vertical" ? "horizontal" : "vertical");
1082
- return (e, t) => (V(), k("div", {
1083
- class: "dock-separator",
1220
+ let t = f(), n = C(() => t?.orientation.value ?? "horizontal"), r = C(() => n.value), i = C(() => n.value === "vertical" ? "horizontal" : "vertical");
1221
+ return (t, n) => (z(), E("div", {
1222
+ class: N(["dock-separator", { "dock-separator--anchor": e.anchor }]),
1084
1223
  role: "separator",
1085
1224
  "data-orientation": r.value,
1225
+ "data-rail-anchor": e.anchor || void 0,
1086
1226
  "aria-orientation": i.value
1087
- }, null, 8, $e));
1227
+ }, null, 10, it));
1088
1228
  }
1089
- }), tt = ["data-orientation", "aria-label"], nt = ["aria-label"], rt = { class: "dock-hairline-extend-chip-label" }, it = /* @__PURE__ */ M({
1229
+ }), ot = ["data-orientation", "aria-label"], st = ["aria-label"], ct = { class: "dock-hairline-extend-chip-label" }, lt = /* @__PURE__ */ k({
1090
1230
  __name: "DockRail",
1091
- props: /* @__PURE__ */ N({
1231
+ props: /* @__PURE__ */ A({
1092
1232
  extent: { default: "beyond" },
1093
1233
  position: { default: "end" },
1094
1234
  items: {},
@@ -1098,14 +1238,14 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
1098
1238
  context: {},
1099
1239
  contextModifiers: {}
1100
1240
  }),
1101
- emits: /* @__PURE__ */ N(["advance"], ["update:context"]),
1241
+ emits: /* @__PURE__ */ A(["advance"], ["update:context"]),
1102
1242
  setup(e, { emit: t }) {
1103
- let n = e, i = q(e, "context"), a = t, o = f(), s = E(() => o?.orientation.value ?? "horizontal"), c = E(() => n.icon ?? r), l = E(() => n.items && n.items.length > 0 ? [...n.items] : []);
1243
+ let n = e, i = q(e, "context"), a = t, o = f(), s = C(() => o?.orientation.value ?? "horizontal"), c = C(() => n.icon ?? r), l = C(() => n.items && n.items.length > 0 ? [...n.items] : []);
1104
1244
  function u(e) {
1105
1245
  i.value = e, a("advance", e);
1106
1246
  }
1107
- return (t, n) => (V(), k("div", {
1108
- class: I(["dock-hairline-extend", [
1247
+ return (t, n) => (z(), E("div", {
1248
+ class: N(["dock-hairline-extend", [
1109
1249
  s.value,
1110
1250
  `extent-${e.extent}`,
1111
1251
  `at-${e.position}`
@@ -1113,39 +1253,88 @@ var Ue = { key: 1 }, We = { key: 2 }, Ge = /* @__PURE__ */ M({
1113
1253
  "data-orientation": s.value,
1114
1254
  role: "group",
1115
1255
  "aria-label": e.iconLabel
1116
- }, [A("div", {
1117
- class: "dock-hairline-strip",
1118
- role: "tablist",
1119
- "aria-label": e.iconLabel
1120
- }, [(V(!0), k(T, null, te(l.value, (e) => (V(), D(Je, {
1121
- key: e.id,
1122
- type: "button",
1123
- class: I(["dock-hairline-extend-chip", { "is-active": i.value === e.id }]),
1124
- role: "tab",
1125
- "aria-selected": i.value === e.id,
1126
- "aria-label": e.label,
1127
- title: e.label,
1128
- onClick: (t) => u(e.id)
1256
+ }, [O(v, {
1257
+ axis: "x",
1258
+ class: "dock-hairline-fade"
1129
1259
  }, {
1130
- default: X(() => [(V(), D(G(e.icon ?? c.value), { class: "size-4" })), A("span", rt, ne(e.label), 1)]),
1131
- _: 2
1132
- }, 1032, [
1133
- "class",
1134
- "aria-selected",
1135
- "aria-label",
1136
- "title",
1137
- "onClick"
1138
- ]))), 128))], 8, nt)], 10, tt));
1260
+ default: X(() => [D("div", {
1261
+ class: "dock-hairline-strip",
1262
+ role: "tablist",
1263
+ "aria-label": e.iconLabel
1264
+ }, [(z(!0), E(S, null, H(l.value, (e) => (z(), w($e, {
1265
+ key: e.id,
1266
+ type: "button",
1267
+ class: N(["dock-hairline-extend-chip", { "is-active": i.value === e.id }]),
1268
+ role: "tab",
1269
+ "aria-selected": i.value === e.id,
1270
+ "aria-label": e.label,
1271
+ title: e.label,
1272
+ onClick: (t) => u(e.id)
1273
+ }, {
1274
+ default: X(() => [(z(), w(W(e.icon ?? c.value), { class: "size-4" })), D("span", ct, G(e.label), 1)]),
1275
+ _: 2
1276
+ }, 1032, [
1277
+ "class",
1278
+ "aria-selected",
1279
+ "aria-label",
1280
+ "title",
1281
+ "onClick"
1282
+ ]))), 128))], 8, st)]),
1283
+ _: 1
1284
+ })], 10, ot));
1285
+ }
1286
+ }), ut = ["aria-label"], dt = [
1287
+ "data-kind",
1288
+ "data-section-id",
1289
+ "aria-label"
1290
+ ], ft = /* @__PURE__ */ k({
1291
+ __name: "DockSection",
1292
+ props: {
1293
+ sections: {},
1294
+ anchorId: {},
1295
+ ariaLabel: { default: "Dock sections" }
1296
+ },
1297
+ setup(e) {
1298
+ let t = e, n = C(() => {
1299
+ if (t.anchorId) return t.anchorId;
1300
+ let e = t.sections.find((e) => e.kind === "nav");
1301
+ return e ? e.id : t.sections.find((e) => e.kind !== "rail-core")?.id;
1302
+ });
1303
+ function r(e) {
1304
+ return e > 0;
1305
+ }
1306
+ function i(e) {
1307
+ return e.id === n.value;
1308
+ }
1309
+ function a(e) {
1310
+ return `dock-section-zone--${e === "rail-core" ? "core" : e}`;
1311
+ }
1312
+ return (t, n) => (z(), E("div", {
1313
+ class: "dock-section",
1314
+ role: "group",
1315
+ "aria-label": e.ariaLabel
1316
+ }, [(z(!0), E(S, null, H(e.sections, (e, n) => (z(), E(S, { key: e.id }, [r(n) ? (z(), w(at, {
1317
+ key: 0,
1318
+ anchor: i(e)
1319
+ }, null, 8, ["anchor"])) : T("", !0), D("div", {
1320
+ class: N(["dock-section-zone", a(e.kind)]),
1321
+ "data-kind": e.kind,
1322
+ "data-section-id": e.id,
1323
+ "aria-label": e.label || void 0
1324
+ }, [U(t.$slots, e.id, {
1325
+ section: e,
1326
+ kind: e.kind
1327
+ })], 10, dt)], 64))), 128))], 8, ut));
1139
1328
  }
1140
1329
  });
1141
1330
  //#endregion
1142
1331
  //#region src/components/custom/dock/composables/useDockOrientationMorph.ts
1143
- function at(e) {
1144
- let { rootEl: t } = e, n = U("vertical"), r = U(0), i = U(!1), a = S({
1332
+ function pt(e) {
1333
+ let { rootEl: t } = e, n = V("vertical"), r = V(0), i = V(!1), a = y({
1145
1334
  from: e.verticalSize,
1146
1335
  to: 0,
1147
1336
  axis: "height"
1148
- }), o = S({
1337
+ }), o = y({
1149
1338
  from: 0,
1150
1339
  to: e.horizontalSize,
1151
1340
  axis: "width"
@@ -1168,7 +1357,7 @@ function at(e) {
1168
1357
  }
1169
1358
  let n = t.value, a = s !== null && !s.settled ? s.velocity : 0;
1170
1359
  if (!s || s.settled) {
1171
- l(), s = new Q({
1360
+ l(), s = new ue({
1172
1361
  response: g.response,
1173
1362
  dampingFraction: g.dampingFraction,
1174
1363
  initial: r.value,
@@ -1204,22 +1393,22 @@ function at(e) {
1204
1393
  let t = Math.min(Math.max((e - .5) / .5, 0), 1);
1205
1394
  return t * t * (3 - 2 * t);
1206
1395
  }
1207
- let v = E(() => a.sizeStyle.value), y = E(() => o.sizeStyle.value), b = E(() => ({ opacity: String(h(r.value)) })), x = E(() => ({ opacity: String(_(r.value)) })), C = E(() => Math.max(a.stretch.value, o.stretch.value));
1396
+ let v = C(() => a.sizeStyle.value), b = C(() => o.sizeStyle.value), x = C(() => ({ opacity: String(h(r.value)) })), S = C(() => ({ opacity: String(_(r.value)) })), w = C(() => Math.max(a.stretch.value, o.stretch.value));
1208
1397
  return Y(t, (e) => {
1209
1398
  e && e.style.setProperty("--dock-morph-t", `${r.value}`);
1210
- }, { immediate: !0 }), z(l), {
1399
+ }, { immediate: !0 }), L(l), {
1211
1400
  orientation: n,
1212
1401
  t: r,
1213
1402
  morphing: i,
1214
1403
  verticalStyle: v,
1215
- horizontalStyle: y,
1216
- verticalOpacity: b,
1217
- horizontalOpacity: x,
1218
- stretch: C,
1404
+ horizontalStyle: b,
1405
+ verticalOpacity: x,
1406
+ horizontalOpacity: S,
1407
+ stretch: w,
1219
1408
  morphTo: f,
1220
1409
  toggle: p,
1221
1410
  pin: m
1222
1411
  };
1223
1412
  }
1224
1413
  //#endregion
1225
- export { _ as DOCK_CONTEXT_KEY, Ye as DockBackgroundToggle, Qe as DockDropdownTrigger, Je as DockIconButton, qe as DockLayer, Ge as DockLayerGroup, it as DockRail, Ze as DockSelectTrigger, et as DockSeparator, Xe as DockTabButton, Le as GlassDock, p as provideDockContext, h as useDockContext, at as useDockOrientationMorph, He as useLayerTransition, f as useOptionalDockContext };
1414
+ export { _ as DOCK_CONTEXT_KEY, et as DockBackgroundToggle, rt as DockDropdownTrigger, $e as DockIconButton, Qe as DockLayer, Xe as DockLayerGroup, lt as DockRail, ft as DockSection, nt as DockSelectTrigger, at as DockSeparator, tt as DockTabButton, Re as GlassDock, p as provideDockContext, h as useDockContext, pt as useDockOrientationMorph, qe as useLayerTransition, f as useOptionalDockContext };