@manafishrov/ui 1.0.5 → 1.2.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 (155) hide show
  1. package/dist/_virtual/calendar-month.js +10 -0
  2. package/dist/_virtual/calendar-month.js.map +1 -0
  3. package/dist/_virtual/check-circle.js +10 -0
  4. package/dist/_virtual/check-circle.js.map +1 -0
  5. package/dist/_virtual/check.js +10 -0
  6. package/dist/_virtual/check.js.map +1 -0
  7. package/dist/_virtual/{outline-check.js → chevron-left.js} +4 -4
  8. package/dist/_virtual/chevron-left.js.map +1 -0
  9. package/dist/_virtual/{outline-expand-more.js → chevron-right.js} +4 -4
  10. package/dist/_virtual/chevron-right.js.map +1 -0
  11. package/dist/_virtual/close.js +10 -0
  12. package/dist/_virtual/close.js.map +1 -0
  13. package/dist/_virtual/error.js +10 -0
  14. package/dist/_virtual/error.js.map +1 -0
  15. package/dist/_virtual/{outline-expand-less.js → expand-less.js} +2 -2
  16. package/dist/_virtual/expand-less.js.map +1 -0
  17. package/dist/_virtual/expand-more.js +10 -0
  18. package/dist/_virtual/expand-more.js.map +1 -0
  19. package/dist/_virtual/info.js +10 -0
  20. package/dist/_virtual/info.js.map +1 -0
  21. package/dist/_virtual/more-horiz.js +10 -0
  22. package/dist/_virtual/more-horiz.js.map +1 -0
  23. package/dist/_virtual/progress-activity.js +10 -0
  24. package/dist/_virtual/progress-activity.js.map +1 -0
  25. package/dist/_virtual/search.js +10 -0
  26. package/dist/_virtual/search.js.map +1 -0
  27. package/dist/_virtual/side-navigation.js +10 -0
  28. package/dist/_virtual/side-navigation.js.map +1 -0
  29. package/dist/_virtual/visibility-off.js +10 -0
  30. package/dist/_virtual/visibility-off.js.map +1 -0
  31. package/dist/_virtual/visibility.js +10 -0
  32. package/dist/_virtual/visibility.js.map +1 -0
  33. package/dist/_virtual/warning.js +10 -0
  34. package/dist/_virtual/warning.js.map +1 -0
  35. package/dist/components/Accordion.js +1 -1
  36. package/dist/components/Accordion.js.map +1 -1
  37. package/dist/components/Breadcrumb.js +28 -24
  38. package/dist/components/Breadcrumb.js.map +1 -1
  39. package/dist/components/Carousel.js +23 -23
  40. package/dist/components/Carousel.js.map +1 -1
  41. package/dist/components/Checkbox.js +11 -11
  42. package/dist/components/Checkbox.js.map +1 -1
  43. package/dist/components/Combobox.js +15 -15
  44. package/dist/components/Combobox.js.map +1 -1
  45. package/dist/components/DatePicker.js +21 -21
  46. package/dist/components/DatePicker.js.map +1 -1
  47. package/dist/components/Dialog.js +7 -7
  48. package/dist/components/Dialog.js.map +1 -1
  49. package/dist/components/Menu.js +5 -5
  50. package/dist/components/Menu.js.map +1 -1
  51. package/dist/components/MenuCombobox.js +29 -29
  52. package/dist/components/MenuCombobox.js.map +1 -1
  53. package/dist/components/NavigationMenu.js +5 -5
  54. package/dist/components/NavigationMenu.js.map +1 -1
  55. package/dist/components/NumberInput.js +2 -2
  56. package/dist/components/NumberInput.js.map +1 -1
  57. package/dist/components/Pagination.js +18 -18
  58. package/dist/components/Pagination.js.map +1 -1
  59. package/dist/components/PasswordInput.js +11 -11
  60. package/dist/components/PasswordInput.js.map +1 -1
  61. package/dist/components/PinInput.js +24 -24
  62. package/dist/components/PinInput.js.map +1 -1
  63. package/dist/components/Select.js +8 -8
  64. package/dist/components/Select.js.map +1 -1
  65. package/dist/components/Sheet.js +10 -10
  66. package/dist/components/Sheet.js.map +1 -1
  67. package/dist/components/Spinner.js +17 -13
  68. package/dist/components/Spinner.js.map +1 -1
  69. package/dist/components/TagsInput.js +6 -6
  70. package/dist/components/TagsInput.js.map +1 -1
  71. package/dist/components/TreeView.js +1 -1
  72. package/dist/components/TreeView.js.map +1 -1
  73. package/dist/components/sidebar/Sidebar.d.ts +2 -1
  74. package/dist/components/sidebar/Sidebar.js +25 -18
  75. package/dist/components/sidebar/Sidebar.js.map +1 -1
  76. package/dist/components/sidebar/SidebarDesktop.js +39 -27
  77. package/dist/components/sidebar/SidebarDesktop.js.map +1 -1
  78. package/dist/components/sidebar/SidebarMenu.d.ts +5 -1
  79. package/dist/components/sidebar/SidebarMenu.js +96 -89
  80. package/dist/components/sidebar/SidebarMenu.js.map +1 -1
  81. package/dist/components/sidebar/SidebarMobile.js +30 -31
  82. package/dist/components/sidebar/SidebarMobile.js.map +1 -1
  83. package/dist/components/sidebar/SidebarProvider.d.ts +5 -2
  84. package/dist/components/sidebar/SidebarProvider.js +46 -50
  85. package/dist/components/sidebar/SidebarProvider.js.map +1 -1
  86. package/dist/components/sidebar/SidebarSubComponents.js +79 -64
  87. package/dist/components/sidebar/SidebarSubComponents.js.map +1 -1
  88. package/dist/components/sidebar/context.d.ts +1 -0
  89. package/dist/components/sidebar/context.js.map +1 -1
  90. package/dist/components/sidebar/index.js +23 -22
  91. package/dist/components/toaster/Toaster.js +11 -11
  92. package/dist/components/toaster/Toaster.js.map +1 -1
  93. package/dist/paraglide/messages/ui_breadcrumb_label.js +21 -0
  94. package/dist/paraglide/messages/ui_breadcrumb_label.js.map +1 -0
  95. package/dist/theme.css +1 -1
  96. package/package.json +3 -3
  97. package/src/components/Accordion.tsx +2 -2
  98. package/src/components/Breadcrumb.tsx +12 -5
  99. package/src/components/Carousel.tsx +4 -4
  100. package/src/components/Checkbox.tsx +2 -2
  101. package/src/components/Combobox.tsx +8 -8
  102. package/src/components/DatePicker.tsx +6 -6
  103. package/src/components/Dialog.tsx +2 -2
  104. package/src/components/Menu.tsx +8 -8
  105. package/src/components/MenuCombobox.tsx +7 -7
  106. package/src/components/NavigationMenu.tsx +6 -6
  107. package/src/components/NumberInput.tsx +4 -4
  108. package/src/components/Pagination.tsx +6 -6
  109. package/src/components/PasswordInput.tsx +4 -4
  110. package/src/components/PinInput.tsx +3 -3
  111. package/src/components/Select.tsx +6 -6
  112. package/src/components/Sheet.tsx +6 -6
  113. package/src/components/Spinner.tsx +2 -9
  114. package/src/components/TagsInput.tsx +9 -9
  115. package/src/components/TreeView.tsx +2 -2
  116. package/src/components/sidebar/Sidebar.tsx +20 -4
  117. package/src/components/sidebar/SidebarDesktop.tsx +47 -19
  118. package/src/components/sidebar/SidebarMenu.tsx +64 -17
  119. package/src/components/sidebar/SidebarMobile.tsx +6 -2
  120. package/src/components/sidebar/SidebarProvider.tsx +36 -35
  121. package/src/components/sidebar/SidebarSubComponents.tsx +19 -9
  122. package/src/components/sidebar/context.ts +1 -0
  123. package/src/components/toaster/Toaster.tsx +12 -12
  124. package/src/theme.css +9 -6
  125. package/dist/_virtual/outline-calendar-month.js +0 -10
  126. package/dist/_virtual/outline-calendar-month.js.map +0 -1
  127. package/dist/_virtual/outline-check-circle.js +0 -10
  128. package/dist/_virtual/outline-check-circle.js.map +0 -1
  129. package/dist/_virtual/outline-check.js.map +0 -1
  130. package/dist/_virtual/outline-chevron-left.js +0 -10
  131. package/dist/_virtual/outline-chevron-left.js.map +0 -1
  132. package/dist/_virtual/outline-chevron-right.js +0 -10
  133. package/dist/_virtual/outline-chevron-right.js.map +0 -1
  134. package/dist/_virtual/outline-close.js +0 -10
  135. package/dist/_virtual/outline-close.js.map +0 -1
  136. package/dist/_virtual/outline-error.js +0 -10
  137. package/dist/_virtual/outline-error.js.map +0 -1
  138. package/dist/_virtual/outline-expand-less.js.map +0 -1
  139. package/dist/_virtual/outline-expand-more.js.map +0 -1
  140. package/dist/_virtual/outline-info.js +0 -10
  141. package/dist/_virtual/outline-info.js.map +0 -1
  142. package/dist/_virtual/outline-more-horiz.js +0 -10
  143. package/dist/_virtual/outline-more-horiz.js.map +0 -1
  144. package/dist/_virtual/outline-remove.js +0 -10
  145. package/dist/_virtual/outline-remove.js.map +0 -1
  146. package/dist/_virtual/outline-search.js +0 -10
  147. package/dist/_virtual/outline-search.js.map +0 -1
  148. package/dist/_virtual/outline-view-sidebar.js +0 -10
  149. package/dist/_virtual/outline-view-sidebar.js.map +0 -1
  150. package/dist/_virtual/outline-visibility-off.js +0 -10
  151. package/dist/_virtual/outline-visibility-off.js.map +0 -1
  152. package/dist/_virtual/outline-visibility.js +0 -10
  153. package/dist/_virtual/outline-visibility.js.map +0 -1
  154. package/dist/_virtual/outline-warning.js +0 -10
  155. package/dist/_virtual/outline-warning.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarProvider.js","sources":["../../../src/components/sidebar/SidebarProvider.tsx"],"sourcesContent":["import {\n type Component,\n type ComponentProps,\n createMemo,\n createSignal,\n onCleanup,\n onMount,\n splitProps,\n type JSX,\n} from 'solid-js';\nimport { cn } from 'tailwind-variants';\n\nimport { createMediaQuery } from '@/primitives/createMediaQuery';\n\nimport { SIDEBAR_KEYBOARD_SHORTCUT, SIDEBAR_WIDTH, SIDEBAR_WIDTH_ICON } from './constants';\nimport { SidebarContext, type SidebarContextProps } from './context';\nimport { setSidebarCookie } from './utils';\n\nexport type SidebarProviderProps = ComponentProps<'div'> & {\n defaultOpen?: boolean;\n open?: boolean;\n onOpenChange?: (openValue: boolean) => void;\n};\n\nconst useSidebarState = (\n props: SidebarProviderProps,\n): {\n isMobile: () => boolean;\n openMobile: () => boolean;\n setOpenMobile: (value: boolean | ((prev: boolean) => boolean)) => void;\n open: () => boolean;\n setOpen: (value: boolean) => void;\n side: () => 'left' | 'right';\n setSide: (value: 'left' | 'right') => void;\n} => {\n const isMobile = createMediaQuery('(max-width: 768px)');\n const [openMobile, setOpenMobile] = createSignal(false);\n const [internalOpen, setInternalOpen] = createSignal(props.defaultOpen ?? true);\n const [side, setSide] = createSignal<'left' | 'right'>('left');\n\n const open = (): boolean => (typeof props.open === 'boolean' ? props.open : internalOpen());\n\n const setOpen = (value: boolean): void => {\n if (props.onOpenChange) {\n props.onOpenChange(value);\n } else {\n setInternalOpen(value);\n }\n setSidebarCookie(value);\n };\n\n return { isMobile, openMobile, setOpenMobile, open, setOpen, side, setSide };\n};\nconst useSidebarEvents = (stateSet: ReturnType<typeof useSidebarState>): { toggle: () => void } => {\n const toggle = (): void => {\n if (stateSet.isMobile()) {\n stateSet.setOpenMobile((prev) => !prev);\n } else {\n stateSet.setOpen(!stateSet.open());\n }\n };\n\n onMount(() => {\n const handleKeyDown = (event: KeyboardEvent): void => {\n if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {\n event.preventDefault();\n toggle();\n }\n };\n globalThis.addEventListener('keydown', handleKeyDown);\n onCleanup(() => {\n globalThis.removeEventListener('keydown', handleKeyDown);\n });\n });\n\n return { toggle };\n};\n\nconst createSidebarContextValue = (\n stateSet: ReturnType<typeof useSidebarState>,\n toggle: () => void,\n): SidebarContextProps => ({\n state: (): 'expanded' | 'collapsed' => (stateSet.open() ? 'expanded' : 'collapsed'),\n open: stateSet.open,\n setOpen: stateSet.setOpen,\n isMobile: stateSet.isMobile,\n openMobile: stateSet.openMobile,\n setOpenMobile: stateSet.setOpenMobile,\n toggleSidebar: toggle,\n side: stateSet.side,\n setSide: stateSet.setSide,\n});\n\nexport const SidebarProvider: Component<SidebarProviderProps> = (props) => {\n const [local, others] = splitProps(props, [\n 'defaultOpen',\n 'open',\n 'onOpenChange',\n 'class',\n 'style',\n 'children',\n ]);\n const stateSet = useSidebarState(local);\n const { toggle } = useSidebarEvents(stateSet);\n\n const style = createMemo((): JSX.CSSProperties => {\n const base: JSX.CSSProperties = {\n '--sidebar-width': SIDEBAR_WIDTH,\n '--sidebar-width-icon': SIDEBAR_WIDTH_ICON,\n };\n return typeof local.style === 'object' && local.style !== null\n ? { ...base, ...local.style }\n : base;\n });\n\n return (\n <SidebarContext.Provider value={createSidebarContextValue(stateSet, toggle)}>\n <div\n data-slot='sidebar-wrapper'\n style={style()}\n class={cn(\n 'group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar',\n local.class,\n )}\n {...others}\n >\n {local.children}\n </div>\n </SidebarContext.Provider>\n );\n};\n"],"names":["useSidebarState","props","isMobile","createMediaQuery","openMobile","setOpenMobile","createSignal","internalOpen","setInternalOpen","defaultOpen","side","setSide","open","setOpen","value","onOpenChange","setSidebarCookie","useSidebarEvents","stateSet","toggle","prev","onMount","handleKeyDown","event","key","SIDEBAR_KEYBOARD_SHORTCUT","metaKey","ctrlKey","preventDefault","globalThis","addEventListener","onCleanup","removeEventListener","createSidebarContextValue","state","toggleSidebar","SidebarProvider","local","others","splitProps","style","createMemo","base","SIDEBAR_WIDTH","SIDEBAR_WIDTH_ICON","_$createComponent","SidebarContext","Provider","children","_el$","_tmpl$","_$spread","_$mergeProps","cn","class","_$insert"],"mappings":"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"}
1
+ {"version":3,"file":"SidebarProvider.js","sources":["../../../src/components/sidebar/SidebarProvider.tsx"],"sourcesContent":["import {\n type Component,\n type ComponentProps,\n createSignal,\n onCleanup,\n onMount,\n splitProps,\n type JSX,\n} from 'solid-js';\nimport { cn } from 'tailwind-variants';\n\nimport { createMediaQuery } from '@/primitives/createMediaQuery';\n\nimport { SIDEBAR_KEYBOARD_SHORTCUT } from './constants';\nimport { SidebarContext, type SidebarContextProps } from './context';\nimport { setSidebarCookie } from './utils';\n\nexport type SidebarProviderProps = {\n defaultOpen?: boolean;\n open?: boolean;\n onOpenChange?: (openValue: boolean) => void;\n children?: JSX.Element;\n};\n\nexport type SidebarLayoutProps = ComponentProps<'div'>;\n\nexport const SidebarLayout: Component<SidebarLayoutProps> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <div\n data-slot='sidebar-wrapper'\n class={cn(\n 'relative flex h-full min-h-full w-full has-data-[variant=inset]:bg-sidebar',\n local.class,\n )}\n {...others}\n />\n );\n};\n\nconst useSidebarState = (\n props: SidebarProviderProps,\n): {\n isMobile: () => boolean;\n setMobileDisabled: (value: boolean) => void;\n openMobile: () => boolean;\n setOpenMobile: (value: boolean | ((prev: boolean) => boolean)) => void;\n open: () => boolean;\n setOpen: (value: boolean) => void;\n side: () => 'left' | 'right';\n setSide: (value: 'left' | 'right') => void;\n} => {\n const isViewportMobile = createMediaQuery('(max-width: 768px)');\n const [mobileDisabled, setMobileDisabled] = createSignal(false);\n const isMobile = (): boolean => isViewportMobile() && !mobileDisabled();\n const [openMobile, setOpenMobile] = createSignal(false);\n const [internalOpen, setInternalOpen] = createSignal(props.defaultOpen ?? true);\n const [side, setSide] = createSignal<'left' | 'right'>('left');\n\n const open = (): boolean => (typeof props.open === 'boolean' ? props.open : internalOpen());\n\n const setOpen = (value: boolean): void => {\n if (props.onOpenChange) {\n props.onOpenChange(value);\n } else {\n setInternalOpen(value);\n }\n setSidebarCookie(value);\n };\n\n return {\n isMobile,\n setMobileDisabled,\n openMobile,\n setOpenMobile,\n open,\n setOpen,\n side,\n setSide,\n };\n};\nconst useSidebarEvents = (stateSet: ReturnType<typeof useSidebarState>): { toggle: () => void } => {\n const toggle = (): void => {\n if (stateSet.isMobile()) {\n stateSet.setOpenMobile((prev) => !prev);\n } else {\n stateSet.setOpen(!stateSet.open());\n }\n };\n\n onMount(() => {\n const handleKeyDown = (event: KeyboardEvent): void => {\n if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {\n event.preventDefault();\n toggle();\n }\n };\n globalThis.addEventListener('keydown', handleKeyDown);\n onCleanup(() => {\n globalThis.removeEventListener('keydown', handleKeyDown);\n });\n });\n\n return { toggle };\n};\n\nconst createSidebarContextValue = (\n stateSet: ReturnType<typeof useSidebarState>,\n toggle: () => void,\n): SidebarContextProps => ({\n state: (): 'expanded' | 'collapsed' => (stateSet.open() ? 'expanded' : 'collapsed'),\n open: stateSet.open,\n setOpen: stateSet.setOpen,\n isMobile: stateSet.isMobile,\n setMobileDisabled: stateSet.setMobileDisabled,\n openMobile: stateSet.openMobile,\n setOpenMobile: stateSet.setOpenMobile,\n toggleSidebar: toggle,\n side: stateSet.side,\n setSide: stateSet.setSide,\n});\n\nexport const SidebarProvider: Component<SidebarProviderProps> = (props) => {\n const stateSet = useSidebarState(props);\n const { toggle } = useSidebarEvents(stateSet);\n\n return (\n <SidebarContext.Provider value={createSidebarContextValue(stateSet, toggle)}>\n {props.children}\n </SidebarContext.Provider>\n );\n};\n"],"names":["SidebarLayout","props","local","others","splitProps","_el$","_tmpl$","_$spread","_$mergeProps","cn","class","useSidebarState","isViewportMobile","createMediaQuery","mobileDisabled","setMobileDisabled","createSignal","isMobile","openMobile","setOpenMobile","internalOpen","setInternalOpen","defaultOpen","side","setSide","open","setOpen","value","onOpenChange","setSidebarCookie","useSidebarEvents","stateSet","toggle","prev","onMount","handleKeyDown","event","key","SIDEBAR_KEYBOARD_SHORTCUT","metaKey","ctrlKey","preventDefault","globalThis","addEventListener","onCleanup","removeEventListener","createSidebarContextValue","state","toggleSidebar","SidebarProvider","_$createComponent","SidebarContext","Provider","children"],"mappings":";;;;;;;;AA0BO,MAAMA,IAAgDC,CAAAA,MAAU;AACrE,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,OAAO,CAAC;AACnD,UAAA,MAAA;AAAA,QAAAI,IAAAC,EAAAA;AAAAC,WAAAA,EAAAF,GAAAG,EAAA;AAAA,MAAA,IAAA,QAAA;AAAA,eAGWC,EACL,8EACAP,EAAMQ,KACR;AAAA,MAAC;AAAA,IAAA,GACGP,CAAM,GAAA,IAAA,EAAA,GAAAE;AAAAA,EAAA,GAAA;AAGhB,GAEMM,IAAkBA,CACtBV,MAUG;AACH,QAAMW,IAAmBC,EAAiB,oBAAoB,GACxD,CAACC,GAAgBC,CAAiB,IAAIC,EAAa,EAAK,GACxDC,IAAWA,MAAeL,EAAAA,KAAsB,CAACE,EAAAA,GACjD,CAACI,GAAYC,CAAa,IAAIH,EAAa,EAAK,GAChD,CAACI,GAAcC,CAAe,IAAIL,EAAaf,EAAMqB,eAAe,EAAI,GACxE,CAACC,GAAMC,CAAO,IAAIR,EAA+B,MAAM;AAa7D,SAAO;AAAA,IACLC,UAAAA;AAAAA,IACAF,mBAAAA;AAAAA,IACAG,YAAAA;AAAAA,IACAC,eAAAA;AAAAA,IACAM,MAhBWA,MAAgB,OAAOxB,EAAMwB,QAAS,YAAYxB,EAAMwB,OAAOL,EAAAA;AAAAA,IAiB1EM,SAfcA,CAACC,MAAyB;AACxC,MAAI1B,EAAM2B,eACR3B,EAAM2B,aAAaD,CAAK,IAExBN,EAAgBM,CAAK,GAEvBE,EAAiBF,CAAK;AAAA,IACxB;AAAA,IASEJ,MAAAA;AAAAA,IACAC,SAAAA;AAAAA,EAAAA;AAEJ,GACMM,IAAmBA,CAACC,MAAyE;AACjG,QAAMC,IAASA,MAAY;AACzB,IAAID,EAASd,aACXc,EAASZ,cAAec,CAAAA,MAAS,CAACA,CAAI,IAEtCF,EAASL,QAAQ,CAACK,EAASN,KAAAA,CAAM;AAAA,EAErC;AAEAS,SAAAA,EAAQ,MAAM;AACZ,UAAMC,IAAgBA,CAACC,MAA+B;AACpD,MAAIA,EAAMC,QAAQC,MAA8BF,EAAMG,WAAWH,EAAMI,aACrEJ,EAAMK,eAAAA,GACNT,EAAAA;AAAAA,IAEJ;AACAU,eAAWC,iBAAiB,WAAWR,CAAa,GACpDS,EAAU,MAAM;AACdF,iBAAWG,oBAAoB,WAAWV,CAAa;AAAA,IACzD,CAAC;AAAA,EACH,CAAC,GAEM;AAAA,IAAEH,QAAAA;AAAAA,EAAAA;AACX,GAEMc,IAA4BA,CAChCf,GACAC,OACyB;AAAA,EACzBe,OAAOA,MAAiChB,EAASN,KAAAA,IAAS,aAAa;AAAA,EACvEA,MAAMM,EAASN;AAAAA,EACfC,SAASK,EAASL;AAAAA,EAClBT,UAAUc,EAASd;AAAAA,EACnBF,mBAAmBgB,EAAShB;AAAAA,EAC5BG,YAAYa,EAASb;AAAAA,EACrBC,eAAeY,EAASZ;AAAAA,EACxB6B,eAAehB;AAAAA,EACfT,MAAMQ,EAASR;AAAAA,EACfC,SAASO,EAASP;AACpB,IAEayB,IAAoDhD,CAAAA,MAAU;AACzE,QAAM8B,IAAWpB,EAAgBV,CAAK,GAChC;AAAA,IAAE+B,QAAAA;AAAAA,EAAAA,IAAWF,EAAiBC,CAAQ;AAE5C,SAAAmB,EACGC,EAAeC,UAAQ;AAAA,IAAA,IAACzB,QAAK;AAAA,aAAEmB,EAA0Bf,GAAUC,CAAM;AAAA,IAAC;AAAA,IAAA,IAAAqB,WAAA;AAAA,aACxEpD,EAAMoD;AAAAA,IAAQ;AAAA,EAAA,CAAA;AAGrB;"}
@@ -1,18 +1,18 @@
1
- import { createComponent as c, mergeProps as s, template as o, spread as n, memo as f, delegateEvents as g } from "solid-js/web";
1
+ import { createComponent as d, mergeProps as s, template as i, spread as n, memo as p, delegateEvents as g } from "solid-js/web";
2
2
  import { cn as l } from "../../node_modules/.bun/tailwind-variants@3.2.2_e7cab99c1b720a38/node_modules/tailwind-variants/dist/index.js";
3
- import m from "../../_virtual/outline-view-sidebar.js";
3
+ import m from "../../_virtual/side-navigation.js";
4
4
  import { Button as v } from "../Button.js";
5
- import { ScrollArea as h } from "../ScrollArea.js";
6
- import { Separator as x } from "../Separator.js";
5
+ import { ScrollArea as h, ScrollAreaViewport as x, ScrollAreaContent as S, ScrollAreaScrollbar as _, ScrollAreaThumb as $ } from "../ScrollArea.js";
6
+ import { Separator as w } from "../Separator.js";
7
7
  import { useSidebar as u } from "./context.js";
8
- import { splitProps as i } from "solid-js";
8
+ import { splitProps as o } from "solid-js";
9
9
  import { ui_sidebar_toggle as b } from "../../paraglide/messages/ui_sidebar_toggle.js";
10
- var _ = /* @__PURE__ */ o("<button data-sidebar=rail data-slot=sidebar-rail tabindex=-1>"), $ = /* @__PURE__ */ o("<main data-slot=sidebar-inset>"), S = /* @__PURE__ */ o("<input data-slot=sidebar-input data-sidebar=input>"), w = /* @__PURE__ */ o("<div data-slot=sidebar-header data-sidebar=header>"), k = /* @__PURE__ */ o("<div data-slot=sidebar-footer data-sidebar=footer>"), y = /* @__PURE__ */ o("<div data-slot=sidebar-group data-sidebar=group>"), C = /* @__PURE__ */ o("<div data-slot=sidebar-group-label data-sidebar=group-label>"), z = /* @__PURE__ */ o("<button data-slot=sidebar-group-action data-sidebar=group-action>"), G = /* @__PURE__ */ o("<div data-slot=sidebar-group-content data-sidebar=group-content>");
11
- const L = (r) => {
12
- const [e, t] = i(r, ["class", "onClick"]), {
10
+ var k = /* @__PURE__ */ i("<button data-sidebar=rail data-slot=sidebar-rail tabindex=-1>"), y = /* @__PURE__ */ i("<main data-slot=sidebar-inset>"), C = /* @__PURE__ */ i("<input data-slot=sidebar-input data-sidebar=input>"), z = /* @__PURE__ */ i("<div data-slot=sidebar-header data-sidebar=header>"), A = /* @__PURE__ */ i("<div data-slot=sidebar-footer data-sidebar=footer>"), G = /* @__PURE__ */ i("<div data-slot=sidebar-group data-sidebar=group>"), I = /* @__PURE__ */ i("<div data-slot=sidebar-group-label data-sidebar=group-label>"), P = /* @__PURE__ */ i("<button data-slot=sidebar-group-action data-sidebar=group-action>"), T = /* @__PURE__ */ i("<div data-slot=sidebar-group-content data-sidebar=group-content>");
11
+ const D = (r) => {
12
+ const [e, t] = o(r, ["class", "onClick"]), {
13
13
  toggleSidebar: a
14
14
  } = u();
15
- return c(v, s({
15
+ return d(v, s({
16
16
  "data-sidebar": "trigger",
17
17
  "data-slot": "sidebar-trigger",
18
18
  get "aria-label"() {
@@ -23,132 +23,147 @@ const L = (r) => {
23
23
  get class() {
24
24
  return l(e.class);
25
25
  },
26
- onClick: (p) => {
27
- typeof e.onClick == "function" && e.onClick(p), a();
26
+ onClick: (f) => {
27
+ typeof e.onClick == "function" && e.onClick(f), a();
28
28
  }
29
29
  }, t, {
30
30
  get children() {
31
- return c(m, {
31
+ return d(m, {
32
32
  "aria-hidden": "true"
33
33
  });
34
34
  }
35
35
  }));
36
- }, O = (r) => {
37
- const [e, t] = i(r, ["class"]), {
36
+ }, J = (r) => {
37
+ const [e, t] = o(r, ["class"]), {
38
38
  toggleSidebar: a
39
39
  } = u();
40
40
  return (() => {
41
- var d = _();
42
- return d.$$click = () => {
41
+ var c = k();
42
+ return c.$$click = () => {
43
43
  a();
44
- }, n(d, s({
44
+ }, n(c, s({
45
45
  get "aria-label"() {
46
46
  return b();
47
47
  },
48
48
  get class() {
49
49
  return l("inset-y-0 w-4 group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:inset-y-0 after:w-0.5 sm:flex absolute z-20 hidden -translate-x-1/2 transition-all ease-linear after:absolute after:left-1/2 hover:after:bg-sidebar-border", "in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize", "[data-side=left][data-state=collapsed]_&]:cursor-e-resize [data-side=right][data-state=collapsed]_&]:cursor-w-resize", "group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar", "[data-side=left][data-collapsible=offcanvas]_&]:-right-2", "[data-side=right][data-collapsible=offcanvas]_&]:-left-2", e.class);
50
50
  }
51
- }, t), !1, !1), d;
51
+ }, t), !1, !1), c;
52
52
  })();
53
- }, R = (r) => {
54
- const [e, t] = i(r, ["class"]);
53
+ }, K = (r) => {
54
+ const [e, t] = o(r, ["class"]);
55
55
  return (() => {
56
- var a = $();
56
+ var a = y();
57
57
  return n(a, s({
58
58
  get class() {
59
59
  return l("md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2 relative flex w-full flex-1 flex-col bg-background", e.class);
60
60
  }
61
61
  }, t), !1, !1), a;
62
62
  })();
63
- }, T = (r) => {
64
- const [e, t] = i(r, ["class"]);
63
+ }, M = (r) => {
64
+ const [e, t] = o(r, ["class"]);
65
65
  return (() => {
66
- var a = S();
66
+ var a = C();
67
67
  return n(a, s({
68
68
  get class() {
69
69
  return l("min-w-0 text-base md:text-sm flex w-full bg-transparent transition-colors outline-none placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 data-readonly:cursor-default", "h-8 px-2.5 py-1 rounded-lg border border-input focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:bg-input/50 data-invalid:border-destructive data-invalid:ring-[3px] data-invalid:ring-destructive/20 data-readonly:focus-visible:border-input data-readonly:focus-visible:ring-0 dark:bg-input/30 dark:disabled:bg-input/80 dark:data-invalid:border-destructive/50 dark:data-invalid:ring-destructive/40", "h-8 w-full bg-background shadow-none", e.class);
70
70
  }
71
71
  }, t), !1, !1), a;
72
72
  })();
73
- }, V = (r) => {
74
- const [e, t] = i(r, ["class"]);
73
+ }, N = (r) => {
74
+ const [e, t] = o(r, ["class"]);
75
75
  return (() => {
76
- var a = w();
76
+ var a = z();
77
77
  return n(a, s({
78
78
  get class() {
79
79
  return l("gap-2 p-2 flex flex-col", e.class);
80
80
  }
81
81
  }, t), !1, !1), a;
82
82
  })();
83
- }, D = (r) => {
84
- const [e, t] = i(r, ["class"]);
83
+ }, O = (r) => {
84
+ const [e, t] = o(r, ["class"]);
85
85
  return (() => {
86
- var a = k();
86
+ var a = A();
87
87
  return n(a, s({
88
88
  get class() {
89
89
  return l("gap-2 p-2 flex flex-col", e.class);
90
90
  }
91
91
  }, t), !1, !1), a;
92
92
  })();
93
- }, J = (r) => {
94
- const [e, t] = i(r, ["class"]);
95
- return c(x, s({
93
+ }, Q = (r) => {
94
+ const [e, t] = o(r, ["class"]);
95
+ return d(w, s({
96
96
  "data-slot": "sidebar-separator",
97
97
  "data-sidebar": "separator",
98
98
  get class() {
99
99
  return l("mx-2 w-auto bg-sidebar-border", e.class);
100
100
  }
101
101
  }, t));
102
- }, K = (r) => {
103
- const [e, t] = i(r, ["class", "children", "id"]);
104
- return c(h, s({
102
+ }, U = (r) => {
103
+ const [e, t] = o(r, ["class", "children", "id"]);
104
+ return d(h, s({
105
105
  "data-slot": "sidebar-content",
106
106
  "data-sidebar": "content",
107
107
  get id() {
108
- return f(() => typeof e.id == "string")() ? e.id : "sidebar-content";
108
+ return p(() => typeof e.id == "string")() ? e.id : "sidebar-content";
109
109
  },
110
110
  get class() {
111
- return l("gap-0 min-h-0 flex flex-1 flex-col group-data-[collapsible=icon]:overflow-hidden", e.class);
111
+ return l("min-h-0 flex flex-1 flex-col", e.class);
112
112
  }
113
113
  }, t, {
114
114
  get children() {
115
- return e.children;
115
+ return [d(x, {
116
+ class: "h-full",
117
+ get children() {
118
+ return d(S, {
119
+ class: "gap-0 flex min-h-full flex-col group-data-[collapsible=icon]:overflow-hidden",
120
+ get children() {
121
+ return e.children;
122
+ }
123
+ });
124
+ }
125
+ }), d(_, {
126
+ orientation: "vertical",
127
+ get children() {
128
+ return d($, {});
129
+ }
130
+ })];
116
131
  }
117
132
  }));
118
- }, M = (r) => {
119
- const [e, t] = i(r, ["class"]);
133
+ }, W = (r) => {
134
+ const [e, t] = o(r, ["class"]);
120
135
  return (() => {
121
- var a = y();
136
+ var a = G();
122
137
  return n(a, s({
123
138
  get class() {
124
139
  return l("p-2 min-w-0 relative flex w-full flex-col", e.class);
125
140
  }
126
141
  }, t), !1, !1), a;
127
142
  })();
128
- }, N = (r) => {
129
- const [e, t] = i(r, ["class"]);
143
+ }, X = (r) => {
144
+ const [e, t] = o(r, ["class"]);
130
145
  return (() => {
131
- var a = C();
146
+ var a = I();
132
147
  return n(a, s({
133
148
  get class() {
134
- return l("h-8 px-2 text-xs font-medium group-data-[collapsible=icon]:-mt-8 [&>svg]:size-4 flex shrink-0 items-center rounded-md text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:shrink-0", e.class);
149
+ return l("h-8 px-2 text-xs group-data-[collapsible=icon]:-mt-8 [&>svg]:size-4 flex shrink-0 items-center rounded-md text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:shrink-0", e.class);
135
150
  }
136
151
  }, t), !1, !1), a;
137
152
  })();
138
- }, Q = (r) => {
139
- const [e, t] = i(r, ["class"]);
153
+ }, Y = (r) => {
154
+ const [e, t] = o(r, ["class"]);
140
155
  return (() => {
141
- var a = z();
156
+ var a = P();
142
157
  return n(a, s({
143
158
  get class() {
144
159
  return l("top-3.5 right-3 w-5 p-0 [&>svg]:size-4 after:-inset-2 md:after:hidden absolute flex aspect-square items-center justify-center rounded-md text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden after:absolute hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:shrink-0", e.class);
145
160
  }
146
161
  }, t), !1, !1), a;
147
162
  })();
148
- }, U = (r) => {
149
- const [e, t] = i(r, ["class"]);
163
+ }, Z = (r) => {
164
+ const [e, t] = o(r, ["class"]);
150
165
  return (() => {
151
- var a = G();
166
+ var a = T();
152
167
  return n(a, s({
153
168
  get class() {
154
169
  return l("text-sm w-full", e.class);
@@ -158,17 +173,17 @@ const L = (r) => {
158
173
  };
159
174
  g(["click"]);
160
175
  export {
161
- K as SidebarContent,
162
- D as SidebarFooter,
163
- M as SidebarGroup,
164
- Q as SidebarGroupAction,
165
- U as SidebarGroupContent,
166
- N as SidebarGroupLabel,
167
- V as SidebarHeader,
168
- T as SidebarInput,
169
- R as SidebarInset,
170
- O as SidebarRail,
171
- J as SidebarSeparator,
172
- L as SidebarTrigger
176
+ U as SidebarContent,
177
+ O as SidebarFooter,
178
+ W as SidebarGroup,
179
+ Y as SidebarGroupAction,
180
+ Z as SidebarGroupContent,
181
+ X as SidebarGroupLabel,
182
+ N as SidebarHeader,
183
+ M as SidebarInput,
184
+ K as SidebarInset,
185
+ J as SidebarRail,
186
+ Q as SidebarSeparator,
187
+ D as SidebarTrigger
173
188
  };
174
189
  //# sourceMappingURL=SidebarSubComponents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarSubComponents.js","sources":["../../../src/components/sidebar/SidebarSubComponents.tsx"],"sourcesContent":["import type { Component, ComponentProps } from 'solid-js';\n\nimport { cn } from 'tailwind-variants';\nimport OutlineViewSidebarIcon from '~icons/ic/outline-view-sidebar';\n\nimport { Button } from '@/components/Button';\nimport { ScrollArea } from '@/components/ScrollArea';\nimport { Separator } from '@/components/Separator';\nimport * as messages from '@/paraglide/messages';\n\nimport { useSidebar } from './context';\n\nexport const SidebarTrigger: Component<ComponentProps<typeof Button>> = (props) => {\n const [local, others] = splitProps(props, ['class', 'onClick']);\n const { toggleSidebar } = useSidebar();\n\n const handleClick = (\n event: MouseEvent & { currentTarget: HTMLButtonElement; target: Element },\n ): void => {\n if (typeof local.onClick === 'function') {\n local.onClick(event);\n }\n toggleSidebar();\n };\n\n return (\n <Button\n data-sidebar='trigger'\n data-slot='sidebar-trigger'\n aria-label={messages.ui_sidebar_toggle()}\n variant='ghost'\n size='icon-sm'\n class={cn(local.class)}\n onClick={handleClick}\n {...others}\n >\n <OutlineViewSidebarIcon aria-hidden='true' />\n </Button>\n );\n};\n\nexport const SidebarRail: Component<ComponentProps<'button'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n const { toggleSidebar } = useSidebar();\n\n return (\n <button\n data-sidebar='rail'\n data-slot='sidebar-rail'\n aria-label={messages.ui_sidebar_toggle()}\n tabIndex={-1}\n onClick={() => {\n toggleSidebar();\n }}\n class={cn(\n 'inset-y-0 w-4 group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:inset-y-0 after:w-0.5 sm:flex absolute z-20 hidden -translate-x-1/2 transition-all ease-linear after:absolute after:left-1/2 hover:after:bg-sidebar-border',\n 'in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize',\n '[data-side=left][data-state=collapsed]_&]:cursor-e-resize [data-side=right][data-state=collapsed]_&]:cursor-w-resize',\n 'group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar',\n '[data-side=left][data-collapsible=offcanvas]_&]:-right-2',\n '[data-side=right][data-collapsible=offcanvas]_&]:-left-2',\n local.class,\n )}\n {...others}\n />\n );\n};\n\nexport const SidebarInset: Component<ComponentProps<'main'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <main\n data-slot='sidebar-inset'\n class={cn(\n 'md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2 relative flex w-full flex-1 flex-col bg-background',\n local.class,\n )}\n {...others}\n />\n );\n};\n\nexport const SidebarInput: Component<ComponentProps<'input'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <input\n data-slot='sidebar-input'\n data-sidebar='input'\n class={cn(\n 'min-w-0 text-base md:text-sm flex w-full bg-transparent transition-colors outline-none placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 data-readonly:cursor-default',\n 'h-8 px-2.5 py-1 rounded-lg border border-input focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:bg-input/50 data-invalid:border-destructive data-invalid:ring-[3px] data-invalid:ring-destructive/20 data-readonly:focus-visible:border-input data-readonly:focus-visible:ring-0 dark:bg-input/30 dark:disabled:bg-input/80 dark:data-invalid:border-destructive/50 dark:data-invalid:ring-destructive/40',\n 'h-8 w-full bg-background shadow-none',\n local.class,\n )}\n {...others}\n />\n );\n};\n\nexport const SidebarHeader: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <div\n data-slot='sidebar-header'\n data-sidebar='header'\n class={cn('gap-2 p-2 flex flex-col', local.class)}\n {...others}\n />\n );\n};\n\nexport const SidebarFooter: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <div\n data-slot='sidebar-footer'\n data-sidebar='footer'\n class={cn('gap-2 p-2 flex flex-col', local.class)}\n {...others}\n />\n );\n};\n\nexport const SidebarSeparator: Component<ComponentProps<typeof Separator>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <Separator\n data-slot='sidebar-separator'\n data-sidebar='separator'\n class={cn('mx-2 w-auto bg-sidebar-border', local.class)}\n {...others}\n />\n );\n};\n\nexport const SidebarContent: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class', 'children', 'id']);\n return (\n <ScrollArea\n data-slot='sidebar-content'\n data-sidebar='content'\n id={typeof local.id === 'string' ? local.id : 'sidebar-content'}\n class={cn(\n 'gap-0 min-h-0 flex flex-1 flex-col group-data-[collapsible=icon]:overflow-hidden',\n local.class,\n )}\n {...others}\n >\n {local.children}\n </ScrollArea>\n );\n};\n\nexport const SidebarGroup: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <div\n data-slot='sidebar-group'\n data-sidebar='group'\n class={cn('p-2 min-w-0 relative flex w-full flex-col', local.class)}\n {...others}\n />\n );\n};\n\nexport const SidebarGroupLabel: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <div\n data-slot='sidebar-group-label'\n data-sidebar='group-label'\n class={cn(\n 'h-8 px-2 text-xs font-medium group-data-[collapsible=icon]:-mt-8 [&>svg]:size-4 flex shrink-0 items-center rounded-md text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:shrink-0',\n local.class,\n )}\n {...others}\n />\n );\n};\n\nexport const SidebarGroupAction: Component<ComponentProps<'button'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <button\n data-slot='sidebar-group-action'\n data-sidebar='group-action'\n class={cn(\n 'top-3.5 right-3 w-5 p-0 [&>svg]:size-4 after:-inset-2 md:after:hidden absolute flex aspect-square items-center justify-center rounded-md text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden after:absolute hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:shrink-0',\n local.class,\n )}\n {...others}\n />\n );\n};\n\nexport const SidebarGroupContent: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <div\n data-slot='sidebar-group-content'\n data-sidebar='group-content'\n class={cn('text-sm w-full', local.class)}\n {...others}\n />\n );\n};\n"],"names":["SidebarTrigger","props","local","others","splitProps","toggleSidebar","useSidebar","_$createComponent","Button","_$mergeProps","messages","ui_sidebar_toggle","variant","size","cn","class","onClick","handleClick","event","children","OutlineViewSidebarIcon","SidebarRail","_el$","_tmpl$","$$click","_$spread","SidebarInset","_el$2","_tmpl$2","SidebarInput","_el$3","_tmpl$3","SidebarHeader","_el$4","_tmpl$4","SidebarFooter","_el$5","_tmpl$5","SidebarSeparator","Separator","SidebarContent","ScrollArea","id","_$memo","SidebarGroup","_el$6","_tmpl$6","SidebarGroupLabel","_el$7","_tmpl$7","SidebarGroupAction","_el$8","_tmpl$8","SidebarGroupContent","_el$9","_tmpl$9","_$delegateEvents"],"mappings":";;;;;;;;;;AAYO,MAAMA,IAA4DC,CAAAA,MAAU;AACjF,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,SAAS,SAAS,CAAC,GACxD;AAAA,IAAEI,eAAAA;AAAAA,EAAAA,IAAkBC,EAAAA;AAW1B,SAAAC,EACGC,GAAMC,EAAA;AAAA,IAAA,gBAAA;AAAA,IAAA,aAAA;AAAA,IAAA,IAAA,eAAA;AAAA,aAGOC,EAASC;AAAAA,IAAmB;AAAA,IACxCC,SAAO;AAAA,IACPC,MAAI;AAAA,IAAA,IAAA,QAAA;AAAA,aACGC,EAAGZ,EAAMa,KAAK;AAAA,IAAC;AAAA,IACtBC,SAjBgBC,CAClBC,MACS;AACT,MAAI,OAAOhB,EAAMc,WAAY,cAC3Bd,EAAMc,QAAQE,CAAK,GAErBb,EAAAA;AAAAA,IACF;AAAA,EAUaY,GACLd,GAAM;AAAA,IAAA,IAAAgB,WAAA;AAAA,aAAAZ,EAETa,GAAsB;AAAA,QAAA,eAAA;AAAA,MAAA,CAAA;AAAA,IAAA;AAAA,EAAA,CAAA,CAAA;AAG7B,GAEaC,IAAoDpB,CAAAA,MAAU;AACzE,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,OAAO,CAAC,GAC7C;AAAA,IAAEI,eAAAA;AAAAA,EAAAA,IAAkBC,EAAAA;AAE1B,UAAA,MAAA;AAAA,QAAAgB,IAAAC,EAAAA;AAAAD,WAAAA,EAAAE,UAMa,MAAM;AACbnB,MAAAA,EAAAA;AAAAA,IACF,GAACoB,EAAAH,GAAAb,EAAA;AAAA,MAAA,IAAA,eAAA;AAAA,eAJWC,EAASC;AAAAA,MAAmB;AAAA,MAAA,IAAA,QAAA;AAAA,eAKjCG,EACL,iPACA,4EACA,wHACA,2JACA,4DACA,4DACAZ,EAAMa,KACR;AAAA,MAAC;AAAA,IAAA,GACGZ,CAAM,GAAA,IAAA,EAAA,GAAAmB;AAAAA,EAAA,GAAA;AAGhB,GAEaI,IAAmDzB,CAAAA,MAAU;AACxE,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,OAAO,CAAC;AACnD,UAAA,MAAA;AAAA,QAAA0B,IAAAC,EAAAA;AAAAH,WAAAA,EAAAE,GAAAlB,EAAA;AAAA,MAAA,IAAA,QAAA;AAAA,eAGWK,EACL,sQACAZ,EAAMa,KACR;AAAA,MAAC;AAAA,IAAA,GACGZ,CAAM,GAAA,IAAA,EAAA,GAAAwB;AAAAA,EAAA,GAAA;AAGhB,GAEaE,IAAoD5B,CAAAA,MAAU;AACzE,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,OAAO,CAAC;AACnD,UAAA,MAAA;AAAA,QAAA6B,IAAAC,EAAAA;AAAAN,WAAAA,EAAAK,GAAArB,EAAA;AAAA,MAAA,IAAA,QAAA;AAAA,eAIWK,EACL,sOACA,mbACA,wCACAZ,EAAMa,KACR;AAAA,MAAC;AAAA,IAAA,GACGZ,CAAM,GAAA,IAAA,EAAA,GAAA2B;AAAAA,EAAA,GAAA;AAGhB,GAEaE,IAAmD/B,CAAAA,MAAU;AACxE,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,OAAO,CAAC;AACnD,UAAA,MAAA;AAAA,QAAAgC,IAAAC,EAAAA;AAAAT,WAAAA,EAAAQ,GAAAxB,EAAA;AAAA,MAAA,IAAA,QAAA;AAAA,eAIWK,EAAG,2BAA2BZ,EAAMa,KAAK;AAAA,MAAC;AAAA,IAAA,GAC7CZ,CAAM,GAAA,IAAA,EAAA,GAAA8B;AAAAA,EAAA,GAAA;AAGhB,GAEaE,IAAmDlC,CAAAA,MAAU;AACxE,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,OAAO,CAAC;AACnD,UAAA,MAAA;AAAA,QAAAmC,IAAAC,EAAAA;AAAAZ,WAAAA,EAAAW,GAAA3B,EAAA;AAAA,MAAA,IAAA,QAAA;AAAA,eAIWK,EAAG,2BAA2BZ,EAAMa,KAAK;AAAA,MAAC;AAAA,IAAA,GAC7CZ,CAAM,GAAA,IAAA,EAAA,GAAAiC;AAAAA,EAAA,GAAA;AAGhB,GAEaE,IAAiErC,CAAAA,MAAU;AACtF,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,OAAO,CAAC;AACnD,SAAAM,EACGgC,GAAS9B,EAAA;AAAA,IAAA,aAAA;AAAA,IAAA,gBAAA;AAAA,IAAA,IAAA,QAAA;AAAA,aAGDK,EAAG,iCAAiCZ,EAAMa,KAAK;AAAA,IAAC;AAAA,EAAA,GACnDZ,CAAM,CAAA;AAGhB,GAEaqC,IAAoDvC,CAAAA,MAAU;AACzE,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,SAAS,YAAY,IAAI,CAAC;AACrE,SAAAM,EACGkC,GAAUhC,EAAA;AAAA,IAAA,aAAA;AAAA,IAAA,gBAAA;AAAA,IAAA,IAGTiC,KAAE;AAAA,aAAEC,EAAA,MAAA,OAAOzC,EAAMwC,MAAO,QAAQ,EAAA,IAAGxC,EAAMwC,KAAK;AAAA,IAAiB;AAAA,IAAA,IAAA,QAAA;AAAA,aACxD5B,EACL,oFACAZ,EAAMa,KACR;AAAA,IAAC;AAAA,EAAA,GACGZ,GAAM;AAAA,IAAA,IAAAgB,WAAA;AAAA,aAETjB,EAAMiB;AAAAA,IAAQ;AAAA,EAAA,CAAA,CAAA;AAGrB,GAEayB,IAAkD3C,CAAAA,MAAU;AACvE,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,OAAO,CAAC;AACnD,UAAA,MAAA;AAAA,QAAA4C,IAAAC,EAAAA;AAAArB,WAAAA,EAAAoB,GAAApC,EAAA;AAAA,MAAA,IAAA,QAAA;AAAA,eAIWK,EAAG,6CAA6CZ,EAAMa,KAAK;AAAA,MAAC;AAAA,IAAA,GAC/DZ,CAAM,GAAA,IAAA,EAAA,GAAA0C;AAAAA,EAAA,GAAA;AAGhB,GAEaE,IAAuD9C,CAAAA,MAAU;AAC5E,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,OAAO,CAAC;AACnD,UAAA,MAAA;AAAA,QAAA+C,IAAAC,EAAAA;AAAAxB,WAAAA,EAAAuB,GAAAvC,EAAA;AAAA,MAAA,IAAA,QAAA;AAAA,eAIWK,EACL,wTACAZ,EAAMa,KACR;AAAA,MAAC;AAAA,IAAA,GACGZ,CAAM,GAAA,IAAA,EAAA,GAAA6C;AAAAA,EAAA,GAAA;AAGhB,GAEaE,IAA2DjD,CAAAA,MAAU;AAChF,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,OAAO,CAAC;AACnD,UAAA,MAAA;AAAA,QAAAkD,IAAAC,EAAAA;AAAA3B,WAAAA,EAAA0B,GAAA1C,EAAA;AAAA,MAAA,IAAA,QAAA;AAAA,eAIWK,EACL,iXACAZ,EAAMa,KACR;AAAA,MAAC;AAAA,IAAA,GACGZ,CAAM,GAAA,IAAA,EAAA,GAAAgD;AAAAA,EAAA,GAAA;AAGhB,GAEaE,IAAyDpD,CAAAA,MAAU;AAC9E,QAAM,CAACC,GAAOC,CAAM,IAAIC,EAAWH,GAAO,CAAC,OAAO,CAAC;AACnD,UAAA,MAAA;AAAA,QAAAqD,IAAAC,EAAAA;AAAA9B,WAAAA,EAAA6B,GAAA7C,EAAA;AAAA,MAAA,IAAA,QAAA;AAAA,eAIWK,EAAG,kBAAkBZ,EAAMa,KAAK;AAAA,MAAC;AAAA,IAAA,GACpCZ,CAAM,GAAA,IAAA,EAAA,GAAAmD;AAAAA,EAAA,GAAA;AAGhB;AAAEE,EAAA,CAAA,OAAA,CAAA;"}
1
+ {"version":3,"file":"SidebarSubComponents.js","sources":["../../../src/components/sidebar/SidebarSubComponents.tsx"],"sourcesContent":["import type { Component, ComponentProps } from 'solid-js';\n\nimport { cn } from 'tailwind-variants';\nimport ViewSidebarIcon from '~icons/material-symbols/side-navigation';\n\nimport { Button } from '@/components/Button';\nimport {\n ScrollArea,\n ScrollAreaContent,\n ScrollAreaScrollbar,\n ScrollAreaThumb,\n ScrollAreaViewport,\n} from '@/components/ScrollArea';\nimport { Separator } from '@/components/Separator';\nimport * as messages from '@/paraglide/messages';\n\nimport { useSidebar } from './context';\n\nexport const SidebarTrigger: Component<ComponentProps<typeof Button>> = (props) => {\n const [local, others] = splitProps(props, ['class', 'onClick']);\n const { toggleSidebar } = useSidebar();\n\n const handleClick = (\n event: MouseEvent & { currentTarget: HTMLButtonElement; target: Element },\n ): void => {\n if (typeof local.onClick === 'function') {\n local.onClick(event);\n }\n toggleSidebar();\n };\n\n return (\n <Button\n data-sidebar='trigger'\n data-slot='sidebar-trigger'\n aria-label={messages.ui_sidebar_toggle()}\n variant='ghost'\n size='icon-sm'\n class={cn(local.class)}\n onClick={handleClick}\n {...others}\n >\n <ViewSidebarIcon aria-hidden='true' />\n </Button>\n );\n};\n\nexport const SidebarRail: Component<ComponentProps<'button'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n const { toggleSidebar } = useSidebar();\n\n return (\n <button\n data-sidebar='rail'\n data-slot='sidebar-rail'\n aria-label={messages.ui_sidebar_toggle()}\n tabIndex={-1}\n onClick={() => {\n toggleSidebar();\n }}\n class={cn(\n 'inset-y-0 w-4 group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:inset-y-0 after:w-0.5 sm:flex absolute z-20 hidden -translate-x-1/2 transition-all ease-linear after:absolute after:left-1/2 hover:after:bg-sidebar-border',\n 'in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize',\n '[data-side=left][data-state=collapsed]_&]:cursor-e-resize [data-side=right][data-state=collapsed]_&]:cursor-w-resize',\n 'group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar',\n '[data-side=left][data-collapsible=offcanvas]_&]:-right-2',\n '[data-side=right][data-collapsible=offcanvas]_&]:-left-2',\n local.class,\n )}\n {...others}\n />\n );\n};\n\nexport const SidebarInset: Component<ComponentProps<'main'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <main\n data-slot='sidebar-inset'\n class={cn(\n 'md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2 relative flex w-full flex-1 flex-col bg-background',\n local.class,\n )}\n {...others}\n />\n );\n};\n\nexport const SidebarInput: Component<ComponentProps<'input'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <input\n data-slot='sidebar-input'\n data-sidebar='input'\n class={cn(\n 'min-w-0 text-base md:text-sm flex w-full bg-transparent transition-colors outline-none placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 data-readonly:cursor-default',\n 'h-8 px-2.5 py-1 rounded-lg border border-input focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:bg-input/50 data-invalid:border-destructive data-invalid:ring-[3px] data-invalid:ring-destructive/20 data-readonly:focus-visible:border-input data-readonly:focus-visible:ring-0 dark:bg-input/30 dark:disabled:bg-input/80 dark:data-invalid:border-destructive/50 dark:data-invalid:ring-destructive/40',\n 'h-8 w-full bg-background shadow-none',\n local.class,\n )}\n {...others}\n />\n );\n};\n\nexport const SidebarHeader: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <div\n data-slot='sidebar-header'\n data-sidebar='header'\n class={cn('gap-2 p-2 flex flex-col', local.class)}\n {...others}\n />\n );\n};\n\nexport const SidebarFooter: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <div\n data-slot='sidebar-footer'\n data-sidebar='footer'\n class={cn('gap-2 p-2 flex flex-col', local.class)}\n {...others}\n />\n );\n};\n\nexport const SidebarSeparator: Component<ComponentProps<typeof Separator>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <Separator\n data-slot='sidebar-separator'\n data-sidebar='separator'\n class={cn('mx-2 w-auto bg-sidebar-border', local.class)}\n {...others}\n />\n );\n};\n\nexport const SidebarContent: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class', 'children', 'id']);\n return (\n <ScrollArea\n data-slot='sidebar-content'\n data-sidebar='content'\n id={typeof local.id === 'string' ? local.id : 'sidebar-content'}\n class={cn('min-h-0 flex flex-1 flex-col', local.class)}\n {...others}\n >\n <ScrollAreaViewport class='h-full'>\n <ScrollAreaContent class='gap-0 flex min-h-full flex-col group-data-[collapsible=icon]:overflow-hidden'>\n {local.children}\n </ScrollAreaContent>\n </ScrollAreaViewport>\n <ScrollAreaScrollbar orientation='vertical'>\n <ScrollAreaThumb />\n </ScrollAreaScrollbar>\n </ScrollArea>\n );\n};\n\nexport const SidebarGroup: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <div\n data-slot='sidebar-group'\n data-sidebar='group'\n class={cn('p-2 min-w-0 relative flex w-full flex-col', local.class)}\n {...others}\n />\n );\n};\n\nexport const SidebarGroupLabel: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <div\n data-slot='sidebar-group-label'\n data-sidebar='group-label'\n class={cn(\n 'h-8 px-2 text-xs group-data-[collapsible=icon]:-mt-8 [&>svg]:size-4 flex shrink-0 items-center rounded-md text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:shrink-0',\n local.class,\n )}\n {...others}\n />\n );\n};\n\nexport const SidebarGroupAction: Component<ComponentProps<'button'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <button\n data-slot='sidebar-group-action'\n data-sidebar='group-action'\n class={cn(\n 'top-3.5 right-3 w-5 p-0 [&>svg]:size-4 after:-inset-2 md:after:hidden absolute flex aspect-square items-center justify-center rounded-md text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden after:absolute hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:shrink-0',\n local.class,\n )}\n {...others}\n />\n );\n};\n\nexport const SidebarGroupContent: Component<ComponentProps<'div'>> = (props) => {\n const [local, others] = splitProps(props, ['class']);\n return (\n <div\n data-slot='sidebar-group-content'\n data-sidebar='group-content'\n class={cn('text-sm w-full', local.class)}\n {...others}\n />\n );\n};\n"],"names":["SidebarTrigger","props","local","others","splitProps","toggleSidebar","useSidebar","_$createComponent","Button","_$mergeProps","messages","ui_sidebar_toggle","variant","size","cn","class","onClick","handleClick","event","children","ViewSidebarIcon","SidebarRail","_el$","_tmpl$","$$click","_$spread","SidebarInset","_el$2","_tmpl$2","SidebarInput","_el$3","_tmpl$3","SidebarHeader","_el$4","_tmpl$4","SidebarFooter","_el$5","_tmpl$5","SidebarSeparator","Separator","SidebarContent","ScrollArea","id","_$memo","ScrollAreaViewport","ScrollAreaContent","ScrollAreaScrollbar","orientation","ScrollAreaThumb","SidebarGroup","_el$6","_tmpl$6","SidebarGroupLabel","_el$7","_tmpl$7","SidebarGroupAction","_el$8","_tmpl$8","SidebarGroupContent","_el$9","_tmpl$9","_$delegateEvents"],"mappings":"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"}
@@ -5,6 +5,7 @@ export type SidebarContextProps = {
5
5
  openMobile: () => boolean;
6
6
  setOpenMobile: (open: boolean) => void;
7
7
  isMobile: () => boolean;
8
+ setMobileDisabled: (mobileDisabled: boolean) => void;
8
9
  toggleSidebar: () => void;
9
10
  side: () => 'left' | 'right';
10
11
  setSide: (side: 'left' | 'right') => void;
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sources":["../../../src/components/sidebar/context.ts"],"sourcesContent":["export type SidebarContextProps = {\n state: () => 'expanded' | 'collapsed';\n open: () => boolean;\n setOpen: (open: boolean) => void;\n openMobile: () => boolean;\n setOpenMobile: (open: boolean) => void;\n isMobile: () => boolean;\n toggleSidebar: () => void;\n side: () => 'left' | 'right';\n setSide: (side: 'left' | 'right') => void;\n};\n\nexport const SidebarContext = createContext<SidebarContextProps>();\n\nexport const useSidebar = (): SidebarContextProps => {\n const context = useContext(SidebarContext);\n if (!context) {\n throw new Error('useSidebar must be used within a SidebarProvider.');\n }\n\n return context;\n};\n"],"names":["SidebarContext","createContext","useSidebar","context","useContext"],"mappings":";AAYO,MAAMA,IAAiBC,EAAA,GAEjBC,IAAa,MAA2B;AACnD,QAAMC,IAAUC,EAAWJ,CAAc;AACzC,MAAI,CAACG;AACH,UAAM,IAAI,MAAM,mDAAmD;AAGrE,SAAOA;AACT;"}
1
+ {"version":3,"file":"context.js","sources":["../../../src/components/sidebar/context.ts"],"sourcesContent":["export type SidebarContextProps = {\n state: () => 'expanded' | 'collapsed';\n open: () => boolean;\n setOpen: (open: boolean) => void;\n openMobile: () => boolean;\n setOpenMobile: (open: boolean) => void;\n isMobile: () => boolean;\n setMobileDisabled: (mobileDisabled: boolean) => void;\n toggleSidebar: () => void;\n side: () => 'left' | 'right';\n setSide: (side: 'left' | 'right') => void;\n};\n\nexport const SidebarContext = createContext<SidebarContextProps>();\n\nexport const useSidebar = (): SidebarContextProps => {\n const context = useContext(SidebarContext);\n if (!context) {\n throw new Error('useSidebar must be used within a SidebarProvider.');\n }\n\n return context;\n};\n"],"names":["SidebarContext","createContext","useSidebar","context","useContext"],"mappings":";AAaO,MAAMA,IAAiBC,EAAA,GAEjBC,IAAa,MAA2B;AACnD,QAAMC,IAAUC,EAAWJ,CAAc;AACzC,MAAI,CAACG;AACH,UAAM,IAAI,MAAM,mDAAmD;AAGrE,SAAOA;AACT;"}
@@ -1,9 +1,9 @@
1
1
  import { SidebarContext as S, useSidebar as a } from "./context.js";
2
2
  import { DAYS_IN_WEEK as b, HOURS_IN_DAY as d, MINUTES_IN_HOUR as o, MS_PER_SECOND as t, RANDOM_WIDTH_BASE as _, RANDOM_WIDTH_RANGE as I, SECONDS_IN_MINUTE as n, SIDEBAR_COOKIE_MAX_AGE as u, SIDEBAR_COOKIE_NAME as E, SIDEBAR_KEYBOARD_SHORTCUT as A, SIDEBAR_WIDTH as D, SIDEBAR_WIDTH_ICON as M, SIDEBAR_WIDTH_MOBILE as R } from "./constants.js";
3
- import { SidebarProvider as B } from "./SidebarProvider.js";
4
- import { Sidebar as p } from "./Sidebar.js";
5
- import { SidebarContent as C, SidebarFooter as H, SidebarGroup as m, SidebarGroupAction as x, SidebarGroupContent as f, SidebarGroupLabel as G, SidebarHeader as W, SidebarInput as U, SidebarInset as s, SidebarRail as K, SidebarSeparator as g, SidebarTrigger as l } from "./SidebarSubComponents.js";
6
- import { SidebarMenu as c, SidebarMenuAction as L, SidebarMenuBadge as P, SidebarMenuButton as k, SidebarMenuItem as v, SidebarMenuSkeleton as F, SidebarMenuSub as V, SidebarMenuSubButton as X, SidebarMenuSubItem as h, sidebarMenuButtonVariants as j } from "./SidebarMenu.js";
3
+ import { SidebarLayout as B, SidebarProvider as N } from "./SidebarProvider.js";
4
+ import { Sidebar as T } from "./Sidebar.js";
5
+ import { SidebarContent as H, SidebarFooter as m, SidebarGroup as x, SidebarGroupAction as f, SidebarGroupContent as G, SidebarGroupLabel as W, SidebarHeader as U, SidebarInput as s, SidebarInset as K, SidebarRail as g, SidebarSeparator as l, SidebarTrigger as L } from "./SidebarSubComponents.js";
6
+ import { SidebarMenu as c, SidebarMenuAction as P, SidebarMenuBadge as k, SidebarMenuButton as v, SidebarMenuItem as y, SidebarMenuSkeleton as F, SidebarMenuSub as V, SidebarMenuSubButton as X, SidebarMenuSubItem as h, sidebarMenuButtonVariants as j } from "./SidebarMenu.js";
7
7
  export {
8
8
  b as DAYS_IN_WEEK,
9
9
  d as HOURS_IN_DAY,
@@ -18,30 +18,31 @@ export {
18
18
  D as SIDEBAR_WIDTH,
19
19
  M as SIDEBAR_WIDTH_ICON,
20
20
  R as SIDEBAR_WIDTH_MOBILE,
21
- p as Sidebar,
22
- C as SidebarContent,
21
+ T as Sidebar,
22
+ H as SidebarContent,
23
23
  S as SidebarContext,
24
- H as SidebarFooter,
25
- m as SidebarGroup,
26
- x as SidebarGroupAction,
27
- f as SidebarGroupContent,
28
- G as SidebarGroupLabel,
29
- W as SidebarHeader,
30
- U as SidebarInput,
31
- s as SidebarInset,
24
+ m as SidebarFooter,
25
+ x as SidebarGroup,
26
+ f as SidebarGroupAction,
27
+ G as SidebarGroupContent,
28
+ W as SidebarGroupLabel,
29
+ U as SidebarHeader,
30
+ s as SidebarInput,
31
+ K as SidebarInset,
32
+ B as SidebarLayout,
32
33
  c as SidebarMenu,
33
- L as SidebarMenuAction,
34
- P as SidebarMenuBadge,
35
- k as SidebarMenuButton,
36
- v as SidebarMenuItem,
34
+ P as SidebarMenuAction,
35
+ k as SidebarMenuBadge,
36
+ v as SidebarMenuButton,
37
+ y as SidebarMenuItem,
37
38
  F as SidebarMenuSkeleton,
38
39
  V as SidebarMenuSub,
39
40
  X as SidebarMenuSubButton,
40
41
  h as SidebarMenuSubItem,
41
- B as SidebarProvider,
42
- K as SidebarRail,
43
- g as SidebarSeparator,
44
- l as SidebarTrigger,
42
+ N as SidebarProvider,
43
+ g as SidebarRail,
44
+ l as SidebarSeparator,
45
+ L as SidebarTrigger,
45
46
  j as sidebarMenuButtonVariants,
46
47
  a as useSidebar
47
48
  };
@@ -1,21 +1,21 @@
1
1
  import { createComponent as t, Portal as s, template as l, insert as a } from "solid-js/web";
2
- import { createToaster as u, Toaster as c, toast_exports as o } from "../../node_modules/.bun/@ark-ui_solid@5.34.0_95b571dd5236cc92/node_modules/@ark-ui/solid/dist/chunk/4OJLSY6B.js";
2
+ import { createToaster as c, Toaster as u, toast_exports as o } from "../../node_modules/.bun/@ark-ui_solid@5.34.0_95b571dd5236cc92/node_modules/@ark-ui/solid/dist/chunk/4OJLSY6B.js";
3
3
  import { Show as r } from "solid-js";
4
4
  import { cn as n } from "../../node_modules/.bun/tailwind-variants@3.2.2_e7cab99c1b720a38/node_modules/tailwind-variants/dist/index.js";
5
- import d from "../../_virtual/outline-check-circle.js";
6
- import g from "../../_virtual/outline-close.js";
7
- import m from "../../_virtual/outline-error.js";
8
- import h from "../../_virtual/outline-info.js";
9
- import p from "../../_virtual/outline-warning.js";
5
+ import d from "../../_virtual/check-circle.js";
6
+ import g from "../../_virtual/close.js";
7
+ import m from "../../_virtual/error.js";
8
+ import h from "../../_virtual/info.js";
9
+ import p from "../../_virtual/warning.js";
10
10
  import { Spinner as f } from "../Spinner.js";
11
11
  var x = /* @__PURE__ */ l('<div class="gap-1 grid">');
12
- const w = u({
12
+ const w = c({
13
13
  placement: "bottom-end",
14
14
  overlap: !0,
15
15
  gap: 16
16
16
  }), b = (e) => t(o.Root, {
17
17
  get class() {
18
- return n("group gap-3 p-4 pr-10 shadow-lg pointer-events-auto relative flex min-w-72 w-full items-center rounded-lg border bg-popover transition-all", "data-[state=open]:animate-in data-[state=open]:sm:slide-in-from-bottom-full data-[state=open]:slide-in-from-top-full", "border-border text-popover-foreground");
18
+ return n("group gap-3 p-4 pr-10 shadow-lg min-w-72 pointer-events-auto relative flex w-full items-center rounded-lg border bg-popover transition-all", "data-[state=open]:sm:slide-in-from-bottom-full data-[state=open]:animate-in data-[state=open]:slide-in-from-top-full", "border-border text-popover-foreground");
19
19
  },
20
20
  get children() {
21
21
  return [t(r, {
@@ -113,9 +113,9 @@ const w = u({
113
113
  }
114
114
  })];
115
115
  }
116
- }), S = () => t(s, {
116
+ }), D = () => t(s, {
117
117
  get children() {
118
- return t(c, {
118
+ return t(u, {
119
119
  toaster: w,
120
120
  children: (e) => t(b, {
121
121
  toast: e
@@ -124,7 +124,7 @@ const w = u({
124
124
  }
125
125
  });
126
126
  export {
127
- S as Toaster,
127
+ D as Toaster,
128
128
  w as toast
129
129
  };
130
130
  //# sourceMappingURL=Toaster.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Toaster.js","sources":["../../../src/components/toaster/Toaster.tsx"],"sourcesContent":["import {\n Toast,\n Toaster as ToasterPrimitive,\n createToaster,\n type ToastOptions,\n} from '@ark-ui/solid/toast';\nimport { type Component, type Accessor, Show } from 'solid-js';\nimport { Portal } from 'solid-js/web';\nimport { cn } from 'tailwind-variants';\nimport OutlineCheckCircleIcon from '~icons/ic/outline-check-circle';\nimport OutlineCloseIcon from '~icons/ic/outline-close';\nimport OutlineErrorIcon from '~icons/ic/outline-error';\nimport OutlineInfoIcon from '~icons/ic/outline-info';\nimport OutlineWarningIcon from '~icons/ic/outline-warning';\n\nimport { Spinner } from '@/components/Spinner';\n\nexport const toast = createToaster({\n placement: 'bottom-end',\n overlap: true,\n gap: 16,\n});\n\nconst ToastItem: Component<{ toast: Accessor<ToastOptions> }> = (props) => (\n <Toast.Root\n class={cn(\n 'group gap-3 p-4 pr-10 shadow-lg pointer-events-auto relative flex min-w-72 w-full items-center rounded-lg border bg-popover transition-all',\n 'data-[state=open]:animate-in data-[state=open]:sm:slide-in-from-bottom-full data-[state=open]:slide-in-from-top-full',\n 'border-border text-popover-foreground',\n )}\n >\n <Show when={props.toast().type === 'success'}>\n <OutlineCheckCircleIcon class={cn('size-5 text-green-500 shrink-0')} aria-hidden='true' />\n </Show>\n <Show when={props.toast().type === 'info'}>\n <OutlineInfoIcon class={cn('size-5 text-blue-500 shrink-0')} aria-hidden='true' />\n </Show>\n <Show when={props.toast().type === 'warning'}>\n <OutlineWarningIcon class={cn('size-5 text-amber-500 shrink-0')} aria-hidden='true' />\n </Show>\n <Show when={props.toast().type === 'error'}>\n <OutlineErrorIcon class={cn('size-5 text-red-500 shrink-0')} aria-hidden='true' />\n </Show>\n <Show when={props.toast().type === 'loading'}>\n <Spinner class={cn('size-5 text-muted-foreground')} />\n </Show>\n <div class='gap-1 grid'>\n <Show when={props.toast().title}>\n <Toast.Title class='text-sm font-semibold tracking-tight leading-none'>\n {props.toast().title}\n </Toast.Title>\n </Show>\n <Show when={props.toast().description}>\n <Toast.Description class='text-sm opacity-90'>\n {props.toast().description}\n </Toast.Description>\n </Show>\n </div>\n <Toast.CloseTrigger class='top-2 right-2 p-1 absolute cursor-pointer rounded-md text-foreground/50 opacity-0 transition-opacity group-hover:opacity-100 hover:text-foreground focus:opacity-100 focus:outline-none'>\n <OutlineCloseIcon class='size-4' />\n </Toast.CloseTrigger>\n </Toast.Root>\n);\n\nexport const Toaster: Component = () => (\n <Portal>\n <ToasterPrimitive toaster={toast}>{(item) => <ToastItem toast={item} />}</ToasterPrimitive>\n </Portal>\n);\n"],"names":["toast","createToaster","placement","overlap","gap","ToastItem","props","_$createComponent","Toast","Root","cn","children","Show","when","type","OutlineCheckCircleIcon","OutlineInfoIcon","OutlineWarningIcon","OutlineErrorIcon","Spinner","_el$","_tmpl$","_$insert","title","Title","description","Description","CloseTrigger","OutlineCloseIcon","Toaster","Portal","ToasterPrimitive","toaster","item"],"mappings":"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"}
1
+ {"version":3,"file":"Toaster.js","sources":["../../../src/components/toaster/Toaster.tsx"],"sourcesContent":["import {\n Toast,\n Toaster as ToasterPrimitive,\n createToaster,\n type ToastOptions,\n} from '@ark-ui/solid/toast';\nimport { type Component, type Accessor, Show } from 'solid-js';\nimport { Portal } from 'solid-js/web';\nimport { cn } from 'tailwind-variants';\nimport CheckCircleIcon from '~icons/material-symbols/check-circle';\nimport CloseIcon from '~icons/material-symbols/close';\nimport ErrorIcon from '~icons/material-symbols/error';\nimport InfoIcon from '~icons/material-symbols/info';\nimport WarningIcon from '~icons/material-symbols/warning';\n\nimport { Spinner } from '@/components/Spinner';\n\nexport const toast = createToaster({\n placement: 'bottom-end',\n overlap: true,\n gap: 16,\n});\n\nconst ToastItem: Component<{ toast: Accessor<ToastOptions> }> = (props) => (\n <Toast.Root\n class={cn(\n 'group gap-3 p-4 pr-10 shadow-lg min-w-72 pointer-events-auto relative flex w-full items-center rounded-lg border bg-popover transition-all',\n 'data-[state=open]:sm:slide-in-from-bottom-full data-[state=open]:animate-in data-[state=open]:slide-in-from-top-full',\n 'border-border text-popover-foreground',\n )}\n >\n <Show when={props.toast().type === 'success'}>\n <CheckCircleIcon class={cn('size-5 text-green-500 shrink-0')} aria-hidden='true' />\n </Show>\n <Show when={props.toast().type === 'info'}>\n <InfoIcon class={cn('size-5 text-blue-500 shrink-0')} aria-hidden='true' />\n </Show>\n <Show when={props.toast().type === 'warning'}>\n <WarningIcon class={cn('size-5 text-amber-500 shrink-0')} aria-hidden='true' />\n </Show>\n <Show when={props.toast().type === 'error'}>\n <ErrorIcon class={cn('size-5 text-red-500 shrink-0')} aria-hidden='true' />\n </Show>\n <Show when={props.toast().type === 'loading'}>\n <Spinner class={cn('size-5 text-muted-foreground')} />\n </Show>\n <div class='gap-1 grid'>\n <Show when={props.toast().title}>\n <Toast.Title class='text-sm font-semibold tracking-tight leading-none'>\n {props.toast().title}\n </Toast.Title>\n </Show>\n <Show when={props.toast().description}>\n <Toast.Description class='text-sm opacity-90'>\n {props.toast().description}\n </Toast.Description>\n </Show>\n </div>\n <Toast.CloseTrigger class='top-2 right-2 p-1 absolute cursor-pointer rounded-md text-foreground/50 opacity-0 transition-opacity group-hover:opacity-100 hover:text-foreground focus:opacity-100 focus:outline-none'>\n <CloseIcon class='size-4' />\n </Toast.CloseTrigger>\n </Toast.Root>\n);\n\nexport const Toaster: Component = () => (\n <Portal>\n <ToasterPrimitive toaster={toast}>{(item) => <ToastItem toast={item} />}</ToasterPrimitive>\n </Portal>\n);\n"],"names":["toast","createToaster","placement","overlap","gap","ToastItem","props","_$createComponent","Toast","Root","cn","children","Show","when","type","CheckCircleIcon","InfoIcon","WarningIcon","ErrorIcon","Spinner","_el$","_tmpl$","_$insert","title","Title","description","Description","CloseTrigger","CloseIcon","Toaster","Portal","ToasterPrimitive","toaster","item"],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { getLocale as r } from "../runtime.js";
2
+ const l = (
3
+ /** @type {(inputs: Ui_Breadcrumb_LabelInputs) => LocalizedString} */
4
+ () => (
5
+ /** @type {LocalizedString} */
6
+ "Breadcrumb"
7
+ )
8
+ ), b = (
9
+ /** @type {(inputs: Ui_Breadcrumb_LabelInputs) => LocalizedString} */
10
+ () => (
11
+ /** @type {LocalizedString} */
12
+ "Brødsmulesti"
13
+ )
14
+ ), n = (
15
+ /** @type {((inputs?: Ui_Breadcrumb_LabelInputs, options?: { locale?: "en-gb" | "nb" }) => LocalizedString) & import('../runtime.js').MessageMetadata<Ui_Breadcrumb_LabelInputs, { locale?: "en-gb" | "nb" }, {}>} */
16
+ ((t = {}, e = {}) => (e.locale ?? r()) === "en-gb" ? l() : b())
17
+ );
18
+ export {
19
+ n as ui_breadcrumb_label
20
+ };
21
+ //# sourceMappingURL=ui_breadcrumb_label.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui_breadcrumb_label.js","sources":["../../../src/paraglide/messages/ui_breadcrumb_label.js"],"sourcesContent":["/* eslint-disable */\nimport { getLocale, experimentalStaticLocale } from '../runtime.js';\n\n/** @typedef {import('../runtime.js').LocalizedString} LocalizedString */\n\n/** @typedef {{}} Ui_Breadcrumb_LabelInputs */\n\nconst en_gb_ui_breadcrumb_label = /** @type {(inputs: Ui_Breadcrumb_LabelInputs) => LocalizedString} */ () => {\n\treturn /** @type {LocalizedString} */ (`Breadcrumb`)\n};\n\nconst nb_ui_breadcrumb_label = /** @type {(inputs: Ui_Breadcrumb_LabelInputs) => LocalizedString} */ () => {\n\treturn /** @type {LocalizedString} */ (`Brødsmulesti`)\n};\n\n/**\n* | output |\n* | --- |\n* | \"Breadcrumb\" |\n*\n* @param {Ui_Breadcrumb_LabelInputs} inputs\n* @param {{ locale?: \"en-gb\" | \"nb\" }} options\n* @returns {LocalizedString}\n*/\nexport const ui_breadcrumb_label = /** @type {((inputs?: Ui_Breadcrumb_LabelInputs, options?: { locale?: \"en-gb\" | \"nb\" }) => LocalizedString) & import('../runtime.js').MessageMetadata<Ui_Breadcrumb_LabelInputs, { locale?: \"en-gb\" | \"nb\" }, {}>} */ ((inputs = {}, options = {}) => {\n\tconst locale = experimentalStaticLocale ?? options.locale ?? getLocale()\n\tif (locale === \"en-gb\") return en_gb_ui_breadcrumb_label(inputs)\n\treturn nb_ui_breadcrumb_label(inputs)\n});"],"names":["en_gb_ui_breadcrumb_label","nb_ui_breadcrumb_label","ui_breadcrumb_label","inputs","options","getLocale"],"mappings":";AAOA,MAAMA;AAAA;AAAA,EAAkG;AAAA;AAAA,IAChE;AAAA;AAAA,GAGlCC;AAAA;AAAA,EAA+F;AAAA;AAAA,IAC7D;AAAA;AAAA,GAY3BC;AAAA;AAAA,GAA6O,CAACC,IAAS,IAAIC,IAAU,CAAA,OACtOA,EAAQ,UAAUC,EAAS,OACvD,UAAgBL,EAAgC,IACxDC,EAA6B;AAAA;"}