@kuzenbo/core 0.0.4 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/action-icon-UjYZjXrB.d.ts +59 -0
- package/dist/action-icon-UjYZjXrB.d.ts.map +1 -0
- package/dist/{avatar-image-Ce26D2fb.d.ts → avatar-4S7I72CH.d.ts} +35 -2
- package/dist/avatar-4S7I72CH.d.ts.map +1 -0
- package/dist/avatar-C3vF6E7s.js +65 -0
- package/dist/avatar-C3vF6E7s.js.map +1 -0
- package/dist/badge-DB40swlt.js +58 -0
- package/dist/badge-DB40swlt.js.map +1 -0
- package/dist/button-CPPkhcmB.d.ts +59 -0
- package/dist/button-CPPkhcmB.d.ts.map +1 -0
- package/dist/button-shared-variants-J4RVI3K7.js +19 -0
- package/dist/button-shared-variants-J4RVI3K7.js.map +1 -0
- package/dist/{dialog-viewport-Ce1huyAI.d.ts → dialog-D3dAMsO_.d.ts} +64 -2
- package/dist/dialog-D3dAMsO_.d.ts.map +1 -0
- package/dist/{dialog-trigger-BUF3elAP.js → dialog-Dzvma_bu.js} +36 -12
- package/dist/dialog-Dzvma_bu.js.map +1 -0
- package/dist/{dropdown-menu-trigger-BpgtLUvf.d.ts → dropdown-menu-BG03sLbC.d.ts} +259 -123
- package/dist/dropdown-menu-BG03sLbC.d.ts.map +1 -0
- package/dist/{dropdown-menu-trigger-COnFGfDa.js → dropdown-menu-DOVY76ue.js} +137 -101
- package/dist/dropdown-menu-DOVY76ue.js.map +1 -0
- package/dist/input-BeE717GK.d.ts +46 -0
- package/dist/input-BeE717GK.d.ts.map +1 -0
- package/dist/input-cICL6sH_.js +38 -0
- package/dist/input-cICL6sH_.js.map +1 -0
- package/dist/{input-group-textarea-B-rP98r5.js → input-group-7kPror1q.js} +62 -33
- package/dist/input-group-7kPror1q.js.map +1 -0
- package/dist/provider.d.ts +3 -3
- package/dist/provider.js +2 -2
- package/dist/{scroll-bar-C4qEUKlT.js → scroll-bar-BKRy5Me9.js} +1 -1
- package/dist/{scroll-bar-C4qEUKlT.js.map → scroll-bar-BKRy5Me9.js.map} +1 -1
- package/dist/separator-CgOz2m5i.d.ts +13 -0
- package/dist/separator-CgOz2m5i.d.ts.map +1 -0
- package/dist/{sheet-trigger-D7neoTF5.js → sheet-FVsgl5Wk.js} +32 -13
- package/dist/sheet-FVsgl5Wk.js.map +1 -0
- package/dist/{size-context-BjRwqlSg.js → size-context-CvLl3pMC.js} +3 -3
- package/dist/size-context-CvLl3pMC.js.map +1 -0
- package/dist/{size-context-DXfCAlWF.d.ts → size-context-DWvVJytl.d.ts} +2 -2
- package/dist/size-context-DWvVJytl.d.ts.map +1 -0
- package/dist/size-provider-18EvJgDT.js.map +1 -1
- package/dist/{size-provider-Bd2C6gKd.d.ts → size-provider-PHAZhU6k.d.ts} +2 -2
- package/dist/{size-provider-Bd2C6gKd.d.ts.map → size-provider-PHAZhU6k.d.ts.map} +1 -1
- package/dist/{size-system-wzOLSuax.d.ts → size-system-BAI1CnwU.d.ts} +1 -1
- package/dist/size-system-BAI1CnwU.d.ts.map +1 -0
- package/dist/size-system-BTsMqZRQ.js +99 -0
- package/dist/size-system-BTsMqZRQ.js.map +1 -0
- package/dist/size.d.ts +3 -3
- package/dist/size.js +2 -2
- package/dist/{slider-root-presentation-ChJHPMIV.js → slider-root-presentation-G0ByTcvd.js} +19 -19
- package/dist/slider-root-presentation-G0ByTcvd.js.map +1 -0
- package/dist/{slider-value-Db8SCu0c.d.ts → slider-style-tokens-DNzHvGii.d.ts} +55 -55
- package/dist/slider-style-tokens-DNzHvGii.d.ts.map +1 -0
- package/dist/textarea-rmoEkvdu.d.ts +37 -0
- package/dist/textarea-rmoEkvdu.d.ts.map +1 -0
- package/dist/textarea-vNt8edEA.js +39 -0
- package/dist/textarea-vNt8edEA.js.map +1 -0
- package/dist/toggle-D8kPPZH9.d.ts +53 -0
- package/dist/toggle-D8kPPZH9.d.ts.map +1 -0
- package/dist/{tooltip-trigger-qXw-_nbh.js → tooltip-BUo_HPnp.js} +38 -13
- package/dist/tooltip-BUo_HPnp.js.map +1 -0
- package/dist/{tooltip-viewport-csA6luqI.d.ts → tooltip-DatN3AoZ.d.ts} +62 -14
- package/dist/tooltip-DatN3AoZ.d.ts.map +1 -0
- package/dist/ui/accordion.d.ts +5 -5
- package/dist/ui/accordion.d.ts.map +1 -1
- package/dist/ui/accordion.js +53 -52
- package/dist/ui/accordion.js.map +1 -1
- package/dist/ui/action-icon.d.ts +2 -0
- package/dist/ui/action-icon.js +74 -0
- package/dist/ui/action-icon.js.map +1 -0
- package/dist/ui/affix.d.ts +3 -2
- package/dist/ui/affix.d.ts.map +1 -1
- package/dist/ui/affix.js +8 -7
- package/dist/ui/affix.js.map +1 -1
- package/dist/ui/alert-dialog.d.ts +4 -2
- package/dist/ui/alert-dialog.d.ts.map +1 -1
- package/dist/ui/alert-dialog.js +10 -9
- package/dist/ui/alert-dialog.js.map +1 -1
- package/dist/ui/alert.d.ts +33 -33
- package/dist/ui/alert.d.ts.map +1 -1
- package/dist/ui/alert.js +86 -86
- package/dist/ui/alert.js.map +1 -1
- package/dist/ui/announcement.d.ts.map +1 -1
- package/dist/ui/announcement.js +5 -3
- package/dist/ui/announcement.js.map +1 -1
- package/dist/ui/aspect-ratio.d.ts.map +1 -1
- package/dist/ui/aspect-ratio.js.map +1 -1
- package/dist/ui/autocomplete.d.ts +74 -74
- package/dist/ui/autocomplete.d.ts.map +1 -1
- package/dist/ui/autocomplete.js +55 -53
- package/dist/ui/autocomplete.js.map +1 -1
- package/dist/ui/avatar.d.ts +2 -39
- package/dist/ui/avatar.js +2 -24
- package/dist/ui/badge.d.ts +28 -28
- package/dist/ui/badge.d.ts.map +1 -1
- package/dist/ui/badge.js +2 -54
- package/dist/ui/breadcrumb.d.ts +65 -65
- package/dist/ui/breadcrumb.d.ts.map +1 -1
- package/dist/ui/breadcrumb.js +47 -45
- package/dist/ui/breadcrumb.js.map +1 -1
- package/dist/ui/button-group.d.ts +35 -35
- package/dist/ui/button-group.d.ts.map +1 -1
- package/dist/ui/button-group.js +29 -28
- package/dist/ui/button-group.js.map +1 -1
- package/dist/ui/button.d.ts +2 -78
- package/dist/ui/button.js +33 -55
- package/dist/ui/button.js.map +1 -1
- package/dist/ui/card.d.ts +1 -1
- package/dist/ui/card.d.ts.map +1 -1
- package/dist/ui/card.js +6 -6
- package/dist/ui/card.js.map +1 -1
- package/dist/ui/carousel.d.ts +3 -3
- package/dist/ui/carousel.d.ts.map +1 -1
- package/dist/ui/carousel.js +41 -22
- package/dist/ui/carousel.js.map +1 -1
- package/dist/ui/checkbox-group.d.ts.map +1 -1
- package/dist/ui/checkbox-group.js.map +1 -1
- package/dist/ui/checkbox.d.ts +21 -21
- package/dist/ui/checkbox.js +13 -13
- package/dist/ui/checkbox.js.map +1 -1
- package/dist/ui/code.d.ts.map +1 -1
- package/dist/ui/code.js +5 -5
- package/dist/ui/code.js.map +1 -1
- package/dist/ui/collapsible.js +1 -1
- package/dist/ui/collapsible.js.map +1 -1
- package/dist/ui/combobox.d.ts +107 -107
- package/dist/ui/combobox.d.ts.map +1 -1
- package/dist/ui/combobox.js +94 -93
- package/dist/ui/combobox.js.map +1 -1
- package/dist/ui/command.d.ts +57 -58
- package/dist/ui/command.d.ts.map +1 -1
- package/dist/ui/command.js +54 -64
- package/dist/ui/command.js.map +1 -1
- package/dist/ui/container.d.ts.map +1 -1
- package/dist/ui/container.js.map +1 -1
- package/dist/ui/context-menu.d.ts +132 -132
- package/dist/ui/context-menu.d.ts.map +1 -1
- package/dist/ui/context-menu.js +100 -98
- package/dist/ui/context-menu.js.map +1 -1
- package/dist/ui/copy-button.d.ts +1 -3
- package/dist/ui/copy-button.d.ts.map +1 -1
- package/dist/ui/copy-button.js +40 -20
- package/dist/ui/copy-button.js.map +1 -1
- package/dist/ui/dialog.d.ts +2 -66
- package/dist/ui/dialog.js +2 -24
- package/dist/ui/drawer.d.ts +93 -93
- package/dist/ui/drawer.d.ts.map +1 -1
- package/dist/ui/drawer.js +68 -66
- package/dist/ui/drawer.js.map +1 -1
- package/dist/ui/dropdown-menu.d.ts +3 -144
- package/dist/ui/dropdown-menu.js +2 -39
- package/dist/ui/dropzone.d.ts +55 -55
- package/dist/ui/dropzone.d.ts.map +1 -1
- package/dist/ui/dropzone.js +77 -72
- package/dist/ui/dropzone.js.map +1 -1
- package/dist/ui/emoji-picker.d.ts +81 -81
- package/dist/ui/emoji-picker.d.ts.map +1 -1
- package/dist/ui/emoji-picker.js +92 -87
- package/dist/ui/emoji-picker.js.map +1 -1
- package/dist/ui/empty.d.ts +62 -60
- package/dist/ui/empty.d.ts.map +1 -1
- package/dist/ui/empty.js +47 -44
- package/dist/ui/empty.js.map +1 -1
- package/dist/ui/field.d.ts +12 -12
- package/dist/ui/field.d.ts.map +1 -1
- package/dist/ui/field.js +9 -7
- package/dist/ui/field.js.map +1 -1
- package/dist/ui/fieldset.d.ts.map +1 -1
- package/dist/ui/fieldset.js.map +1 -1
- package/dist/ui/form.d.ts +8 -8
- package/dist/ui/form.d.ts.map +1 -1
- package/dist/ui/form.js.map +1 -1
- package/dist/ui/input-group.d.ts +35 -35
- package/dist/ui/input-group.d.ts.map +1 -1
- package/dist/ui/input-group.js +2 -28
- package/dist/ui/input-otp.d.ts +36 -36
- package/dist/ui/input-otp.d.ts.map +1 -1
- package/dist/ui/input-otp.js +29 -28
- package/dist/ui/input-otp.js.map +1 -1
- package/dist/ui/input.d.ts +2 -46
- package/dist/ui/input.js +2 -34
- package/dist/ui/item.d.ts +20 -20
- package/dist/ui/item.d.ts.map +1 -1
- package/dist/ui/item.js +22 -22
- package/dist/ui/item.js.map +1 -1
- package/dist/ui/kbd.d.ts +1 -1
- package/dist/ui/kbd.d.ts.map +1 -1
- package/dist/ui/kbd.js +8 -8
- package/dist/ui/kbd.js.map +1 -1
- package/dist/ui/label.d.ts.map +1 -1
- package/dist/ui/label.js.map +1 -1
- package/dist/ui/marquee.d.ts.map +1 -1
- package/dist/ui/marquee.js +1 -1
- package/dist/ui/marquee.js.map +1 -1
- package/dist/ui/menubar.d.ts +133 -134
- package/dist/ui/menubar.d.ts.map +1 -1
- package/dist/ui/menubar.js +82 -81
- package/dist/ui/menubar.js.map +1 -1
- package/dist/ui/meter.d.ts.map +1 -1
- package/dist/ui/meter.js.map +1 -1
- package/dist/ui/navigation-list.d.ts +227 -227
- package/dist/ui/navigation-list.d.ts.map +1 -1
- package/dist/ui/navigation-list.js +240 -235
- package/dist/ui/navigation-list.js.map +1 -1
- package/dist/ui/navigation-menu.d.ts +82 -82
- package/dist/ui/navigation-menu.d.ts.map +1 -1
- package/dist/ui/navigation-menu.js +70 -67
- package/dist/ui/navigation-menu.js.map +1 -1
- package/dist/ui/number-field.d.ts +34 -34
- package/dist/ui/number-field.d.ts.map +1 -1
- package/dist/ui/number-field.js +24 -23
- package/dist/ui/number-field.js.map +1 -1
- package/dist/ui/pagination.d.ts +43 -43
- package/dist/ui/pagination.d.ts.map +1 -1
- package/dist/ui/pagination.js +57 -47
- package/dist/ui/pagination.js.map +1 -1
- package/dist/ui/pill.d.ts +3 -4
- package/dist/ui/pill.d.ts.map +1 -1
- package/dist/ui/pill.js +37 -26
- package/dist/ui/pill.js.map +1 -1
- package/dist/ui/popover.d.ts +15 -13
- package/dist/ui/popover.d.ts.map +1 -1
- package/dist/ui/popover.js +17 -14
- package/dist/ui/popover.js.map +1 -1
- package/dist/ui/portal.d.ts.map +1 -1
- package/dist/ui/portal.js +52 -11
- package/dist/ui/portal.js.map +1 -1
- package/dist/ui/preview-card.js +5 -5
- package/dist/ui/preview-card.js.map +1 -1
- package/dist/ui/progress.js.map +1 -1
- package/dist/ui/qr-code.d.ts.map +1 -1
- package/dist/ui/qr-code.js +7 -7
- package/dist/ui/qr-code.js.map +1 -1
- package/dist/ui/radio-group.d.ts +23 -23
- package/dist/ui/radio-group.js +15 -15
- package/dist/ui/radio-group.js.map +1 -1
- package/dist/ui/range-slider.d.ts +1 -1
- package/dist/ui/range-slider.d.ts.map +1 -1
- package/dist/ui/range-slider.js +4 -7
- package/dist/ui/range-slider.js.map +1 -1
- package/dist/ui/rating.d.ts +35 -35
- package/dist/ui/rating.d.ts.map +1 -1
- package/dist/ui/rating.js +55 -46
- package/dist/ui/rating.js.map +1 -1
- package/dist/ui/resizable.d.ts.map +1 -1
- package/dist/ui/resizable.js +2 -2
- package/dist/ui/resizable.js.map +1 -1
- package/dist/ui/scroll-area.js +1 -1
- package/dist/ui/scroll-area.js.map +1 -1
- package/dist/ui/select.d.ts +87 -87
- package/dist/ui/select.d.ts.map +1 -1
- package/dist/ui/select.js +85 -84
- package/dist/ui/select.js.map +1 -1
- package/dist/ui/separator.d.ts +2 -13
- package/dist/ui/separator.js.map +1 -1
- package/dist/ui/sheet.d.ts.map +1 -1
- package/dist/ui/sheet.js +2 -24
- package/dist/ui/sidebar.d.ts +75 -76
- package/dist/ui/sidebar.d.ts.map +1 -1
- package/dist/ui/sidebar.js +88 -87
- package/dist/ui/sidebar.js.map +1 -1
- package/dist/ui/skeleton.d.ts.map +1 -1
- package/dist/ui/skeleton.js +1 -1
- package/dist/ui/skeleton.js.map +1 -1
- package/dist/ui/slider.d.ts +1 -1
- package/dist/ui/slider.d.ts.map +1 -1
- package/dist/ui/slider.js +3 -1
- package/dist/ui/slider.js.map +1 -1
- package/dist/ui/spacer.d.ts.map +1 -1
- package/dist/ui/spacer.js +2 -2
- package/dist/ui/spacer.js.map +1 -1
- package/dist/ui/spinner.d.ts +1 -1
- package/dist/ui/spinner.d.ts.map +1 -1
- package/dist/ui/spinner.js +2 -2
- package/dist/ui/spinner.js.map +1 -1
- package/dist/ui/switch.d.ts +12 -12
- package/dist/ui/switch.js +7 -7
- package/dist/ui/switch.js.map +1 -1
- package/dist/ui/table.d.ts +62 -62
- package/dist/ui/table.d.ts.map +1 -1
- package/dist/ui/table.js +53 -47
- package/dist/ui/table.js.map +1 -1
- package/dist/ui/tabs.d.ts +25 -25
- package/dist/ui/tabs.d.ts.map +1 -1
- package/dist/ui/tabs.js +75 -68
- package/dist/ui/tabs.js.map +1 -1
- package/dist/ui/textarea.d.ts +2 -37
- package/dist/ui/textarea.js +2 -35
- package/dist/ui/theme-icon.d.ts +30 -30
- package/dist/ui/theme-icon.d.ts.map +1 -1
- package/dist/ui/theme-icon.js +22 -22
- package/dist/ui/theme-icon.js.map +1 -1
- package/dist/ui/timeline.d.ts +6 -6
- package/dist/ui/timeline.d.ts.map +1 -1
- package/dist/ui/timeline.js +163 -163
- package/dist/ui/timeline.js.map +1 -1
- package/dist/ui/toggle-group.d.ts +33 -33
- package/dist/ui/toggle-group.d.ts.map +1 -1
- package/dist/ui/toggle-group.js +22 -16
- package/dist/ui/toggle-group.js.map +1 -1
- package/dist/ui/toggle.d.ts +2 -53
- package/dist/ui/toggle.js +15 -15
- package/dist/ui/toggle.js.map +1 -1
- package/dist/ui/toolbar.d.ts +56 -56
- package/dist/ui/toolbar.d.ts.map +1 -1
- package/dist/ui/toolbar.js +43 -40
- package/dist/ui/toolbar.js.map +1 -1
- package/dist/ui/tooltip.d.ts +3 -55
- package/dist/ui/tooltip.js +2 -28
- package/dist/ui/typography.d.ts +50 -36
- package/dist/ui/typography.d.ts.map +1 -1
- package/dist/ui/typography.js +28 -17
- package/dist/ui/typography.js.map +1 -1
- package/package.json +17 -15
- package/dist/avatar-image-BQ_NEKH4.js +0 -47
- package/dist/avatar-image-BQ_NEKH4.js.map +0 -1
- package/dist/avatar-image-Ce26D2fb.d.ts.map +0 -1
- package/dist/dialog-trigger-BUF3elAP.js.map +0 -1
- package/dist/dialog-viewport-Ce1huyAI.d.ts.map +0 -1
- package/dist/dropdown-menu-trigger-BpgtLUvf.d.ts.map +0 -1
- package/dist/dropdown-menu-trigger-COnFGfDa.js.map +0 -1
- package/dist/input-group-textarea-B-rP98r5.js.map +0 -1
- package/dist/sheet-trigger-D7neoTF5.js.map +0 -1
- package/dist/size-context-BjRwqlSg.js.map +0 -1
- package/dist/size-context-DXfCAlWF.d.ts.map +0 -1
- package/dist/size-system-DTXmtQXw.js +0 -47
- package/dist/size-system-DTXmtQXw.js.map +0 -1
- package/dist/size-system-wzOLSuax.d.ts.map +0 -1
- package/dist/slider-root-presentation-ChJHPMIV.js.map +0 -1
- package/dist/slider-value-Db8SCu0c.d.ts.map +0 -1
- package/dist/tooltip-trigger-qXw-_nbh.js.map +0 -1
- package/dist/tooltip-viewport-csA6luqI.d.ts.map +0 -1
- package/dist/ui/avatar.d.ts.map +0 -1
- package/dist/ui/avatar.js.map +0 -1
- package/dist/ui/badge.js.map +0 -1
- package/dist/ui/button.d.ts.map +0 -1
- package/dist/ui/dialog.d.ts.map +0 -1
- package/dist/ui/dialog.js.map +0 -1
- package/dist/ui/dropdown-menu.d.ts.map +0 -1
- package/dist/ui/dropdown-menu.js.map +0 -1
- package/dist/ui/input-group.js.map +0 -1
- package/dist/ui/input.d.ts.map +0 -1
- package/dist/ui/input.js.map +0 -1
- package/dist/ui/separator.d.ts.map +0 -1
- package/dist/ui/sheet.js.map +0 -1
- package/dist/ui/textarea.d.ts.map +0 -1
- package/dist/ui/textarea.js.map +0 -1
- package/dist/ui/toggle.d.ts.map +0 -1
- package/dist/ui/tooltip.d.ts.map +0 -1
- package/dist/ui/tooltip.js.map +0 -1
- package/dist/use-badge-default-props-8d9wPL0k.js +0 -8
- package/dist/use-badge-default-props-8d9wPL0k.js.map +0 -1
- package/dist/use-input-default-props-B6VgKXGM.js +0 -8
- package/dist/use-input-default-props-B6VgKXGM.js.map +0 -1
- package/dist/use-textarea-default-props-7MlOxkDO.js +0 -8
- package/dist/use-textarea-default-props-7MlOxkDO.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-list.js","names":["CollapsiblePrimitive","CollapsiblePrimitive","CollapsiblePrimitive"],"sources":["../../src/ui/navigation-list/navigation-list-context.tsx","../../src/ui/navigation-list/navigation-list-item-context.tsx","../../src/ui/navigation-list/navigation-list-action.tsx","../../src/ui/navigation-list/navigation-list-badge.tsx","../../src/ui/navigation-list/navigation-list-content.tsx","../../src/ui/navigation-list/navigation-list-group.tsx","../../src/ui/navigation-list/navigation-list-group-content.tsx","../../src/ui/navigation-list/navigation-list-group-label.tsx","../../src/ui/navigation-list/navigation-list-item.tsx","../../src/ui/navigation-list/navigation-list-link.tsx","../../src/ui/navigation-list/navigation-list-separator.tsx","../../src/ui/navigation-list/navigation-list-skeleton.tsx","../../src/ui/navigation-list/navigation-list-sub.tsx","../../src/ui/navigation-list/navigation-list-sub-item.tsx","../../src/ui/navigation-list/navigation-list-sub-link.tsx","../../src/ui/navigation-list/navigation-list.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, useContext } from \"react\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nexport type NavigationListTone = \"surface\" | \"sidebar\";\nexport type NavigationListVariant = \"subtle\" | \"light\" | \"filled\";\n\nexport interface NavigationListContextValue {\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n}\n\nconst NavigationListContext = createContext<NavigationListContextValue>({\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n});\n\nconst resolveCandidate = <T,>(\n fallback: T,\n contextValue: T | undefined,\n candidates: (T | null | undefined)[]\n): T => {\n for (const candidate of candidates) {\n if (candidate !== undefined && candidate !== null) {\n return candidate;\n }\n }\n\n return contextValue ?? fallback;\n};\n\nconst useResolvedNavigationListTone = (\n ...candidates: (NavigationListTone | null | undefined)[]\n): NavigationListTone => {\n const { tone } = useContext(NavigationListContext);\n\n return resolveCandidate(\"surface\", tone, candidates);\n};\n\nconst useResolvedNavigationListVariant = (\n ...candidates: (NavigationListVariant | null | undefined)[]\n): NavigationListVariant => {\n const { variant } = useContext(NavigationListContext);\n\n return resolveCandidate(\"light\", variant, candidates);\n};\n\nconst useResolvedNavigationListSize = (\n ...candidates: (UISize | null | undefined)[]\n): UISize => {\n const { size } = useContext(NavigationListContext);\n\n return resolveCandidate(\"md\", size, candidates);\n};\n\nexport {\n NavigationListContext,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n};\n","\"use client\";\n\nimport { createContext, useContext } from \"react\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport type {\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\n\nexport interface NavigationListItemContextValue {\n collapsible: boolean;\n disabled: boolean;\n open: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n}\n\nconst NavigationListItemContext = createContext<NavigationListItemContextValue>(\n {\n collapsible: false,\n disabled: false,\n open: false,\n size: undefined,\n tone: undefined,\n variant: undefined,\n }\n);\n\nconst useNavigationListItemContext = () =>\n useContext(NavigationListItemContext);\n\nexport { NavigationListItemContext, useNavigationListItemContext };\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n type NavigationListTone,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n} from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListActionVariants = tv({\n base: \"absolute right-1 flex aspect-square cursor-pointer items-center justify-center rounded-md p-0 outline-hidden transition-transform group-data-[collapsible=true]/navigation-list-item:right-10 group-has-data-[slot=navigation-list-badge]/navigation-list-item:right-14 [&>svg]:shrink-0\",\n variants: {\n size: {\n xs: \"top-0.5 w-4 [&>svg:not([class*='size-'])]:size-3\",\n sm: \"top-1 w-5 [&>svg:not([class*='size-'])]:size-3.5\",\n md: \"top-1.5 w-5 [&>svg:not([class*='size-'])]:size-4\",\n lg: \"top-2 w-6 [&>svg:not([class*='size-'])]:size-4\",\n xl: \"top-2.5 w-7 [&>svg:not([class*='size-'])]:size-5\",\n },\n tone: {\n surface:\n \"text-muted-foreground ring-ring hover:bg-muted hover:text-foreground focus-visible:ring-2 peer-hover/navigation-list-link:text-foreground peer-data-active/navigation-list-link:text-foreground\",\n sidebar:\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/navigation-list-link:text-sidebar-accent-foreground peer-data-active/navigation-list-link:text-sidebar-accent-foreground\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n },\n});\n\nexport type NavigationListActionProps = useRender.ComponentProps<\"button\"> &\n ComponentProps<\"button\"> & {\n showOnHover?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n } & VariantProps<typeof navigationListActionVariants>;\n\nconst NavigationListAction = ({\n className,\n render,\n showOnHover = false,\n size,\n tone,\n ...props\n}: NavigationListActionProps) => {\n const itemContext = useNavigationListItemContext();\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n\n return useRender({\n defaultTagName: \"button\",\n props: mergeProps<\"button\">(\n {\n className: cn(\n navigationListActionVariants({\n size: resolvedSize,\n tone: resolvedTone,\n }),\n itemContext.variant === \"filled\" &&\n resolvedTone === \"surface\" &&\n \"peer-data-active/navigation-list-link:text-primary-foreground\",\n itemContext.variant === \"filled\" &&\n resolvedTone === \"sidebar\" &&\n \"peer-data-active/navigation-list-link:text-sidebar-primary-foreground\",\n \"peer-data-[size=xs]/navigation-list-link:top-0.5 peer-data-[size=sm]/navigation-list-link:top-1 peer-data-[size=md]/navigation-list-link:top-1.5 peer-data-[size=lg]/navigation-list-link:top-2 peer-data-[size=xl]/navigation-list-link:top-2.5\",\n showOnHover &&\n \"group-focus-within/navigation-list-item:opacity-100 group-hover/navigation-list-item:opacity-100 peer-data-active/navigation-list-link:opacity-100 md:opacity-0\",\n className\n ),\n type: render ? undefined : \"button\",\n },\n props\n ),\n render,\n state: {\n size: resolvedSize,\n slot: \"navigation-list-action\",\n tone: resolvedTone,\n },\n });\n};\n\nexport { NavigationListAction };\n","import type { ComponentProps } from \"react\";\n\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n type NavigationListTone,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n} from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListBadgeVariants = tv({\n base: \"pointer-events-none absolute right-1 flex items-center justify-center rounded-md px-1 font-medium tabular-nums select-none group-data-[collapsible=true]/navigation-list-item:right-8\",\n variants: {\n size: {\n xs: \"top-0.5 h-4 min-w-4 text-[10px]\",\n sm: \"top-1 h-5 min-w-5 text-[11px]\",\n md: \"top-1.5 h-5 min-w-5 text-xs\",\n lg: \"top-2 h-6 min-w-6 text-xs\",\n xl: \"top-2.5 h-7 min-w-7 text-sm\",\n },\n tone: {\n surface:\n \"text-muted-foreground peer-hover/navigation-list-link:text-foreground peer-data-active/navigation-list-link:text-foreground\",\n sidebar:\n \"text-sidebar-foreground peer-hover/navigation-list-link:text-sidebar-accent-foreground peer-data-active/navigation-list-link:text-sidebar-accent-foreground\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n },\n});\n\nexport type NavigationListBadgeProps = ComponentProps<\"div\"> & {\n size?: UISize;\n tone?: NavigationListTone;\n} & VariantProps<typeof navigationListBadgeVariants>;\n\nconst NavigationListBadge = ({\n className,\n size,\n tone,\n ...props\n}: NavigationListBadgeProps) => {\n const itemContext = useNavigationListItemContext();\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n\n return (\n <div\n className={cn(\n navigationListBadgeVariants({\n size: resolvedSize,\n tone: resolvedTone,\n }),\n itemContext.variant === \"filled\" &&\n resolvedTone === \"surface\" &&\n \"peer-data-active/navigation-list-link:text-primary-foreground\",\n itemContext.variant === \"filled\" &&\n resolvedTone === \"sidebar\" &&\n \"peer-data-active/navigation-list-link:text-sidebar-primary-foreground\",\n className\n )}\n data-size={resolvedSize}\n data-slot=\"navigation-list-badge\"\n data-tone={resolvedTone}\n {...props}\n />\n );\n};\n\nexport { NavigationListBadge };\n","import type { ComponentProps } from \"react\";\n\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n type NavigationListTone,\n type NavigationListVariant,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\n\nconst navigationListContentVariants = tv({\n base: \"flex min-w-0 list-none flex-col rounded-lg border\",\n variants: {\n size: {\n xs: \"gap-0.5 p-1\",\n sm: \"gap-1 p-1.5\",\n md: \"gap-1 p-2\",\n lg: \"gap-1.5 p-2.5\",\n xl: \"gap-2 p-3\",\n },\n tone: {\n surface: \"border-border bg-background text-foreground\",\n sidebar: \"border-sidebar-border bg-sidebar text-sidebar-foreground\",\n },\n variant: {\n subtle: \"\",\n light: \"\",\n filled: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n});\n\nexport type NavigationListContentProps = ComponentProps<\"ul\"> &\n VariantProps<typeof navigationListContentVariants> & {\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n };\n\nconst NavigationListContent = ({\n className,\n size,\n tone,\n variant,\n ...props\n}: NavigationListContentProps) => {\n const resolvedSize = useResolvedNavigationListSize(size);\n const resolvedTone = useResolvedNavigationListTone(tone);\n const resolvedVariant = useResolvedNavigationListVariant(variant);\n\n return (\n <ul\n className={cn(\n navigationListContentVariants({\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n )}\n data-navigation-list=\"content\"\n data-size={resolvedSize}\n data-slot=\"navigation-list-content\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n {...props}\n />\n );\n};\n\nexport { NavigationListContent };\n","import type { ComponentProps } from \"react\";\n\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n type NavigationListTone,\n type NavigationListVariant,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\n\nconst navigationListGroupVariants = tv({\n base: \"list-none space-y-1\",\n variants: {\n size: {\n xs: \"\",\n sm: \"\",\n md: \"\",\n lg: \"\",\n xl: \"\",\n },\n tone: {\n surface: \"\",\n sidebar: \"\",\n },\n variant: {\n subtle: \"\",\n light: \"\",\n filled: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n});\n\nexport type NavigationListGroupProps = ComponentProps<\"li\"> &\n VariantProps<typeof navigationListGroupVariants> & {\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n };\n\nconst NavigationListGroup = ({\n className,\n size,\n tone,\n variant,\n ...props\n}: NavigationListGroupProps) => {\n const resolvedSize = useResolvedNavigationListSize(size);\n const resolvedTone = useResolvedNavigationListTone(tone);\n const resolvedVariant = useResolvedNavigationListVariant(variant);\n\n return (\n <li\n className={cn(\n navigationListGroupVariants({\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"navigation-list-group\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n {...props}\n />\n );\n};\n\nexport { NavigationListGroup };\n","import type { ComponentProps } from \"react\";\n\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n type NavigationListTone,\n type NavigationListVariant,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\n\nconst navigationListGroupContentVariants = tv({\n base: \"flex list-none flex-col\",\n variants: {\n size: {\n xs: \"gap-0.5\",\n sm: \"gap-0.5\",\n md: \"gap-1\",\n lg: \"gap-1\",\n xl: \"gap-1.5\",\n },\n tone: {\n surface: \"\",\n sidebar: \"\",\n },\n variant: {\n subtle: \"\",\n light: \"\",\n filled: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n});\n\nexport type NavigationListGroupContentProps = ComponentProps<\"ul\"> &\n VariantProps<typeof navigationListGroupContentVariants> & {\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n };\n\nconst NavigationListGroupContent = ({\n className,\n size,\n tone,\n variant,\n ...props\n}: NavigationListGroupContentProps) => {\n const resolvedSize = useResolvedNavigationListSize(size);\n const resolvedTone = useResolvedNavigationListTone(tone);\n const resolvedVariant = useResolvedNavigationListVariant(variant);\n\n return (\n <ul\n className={cn(\n navigationListGroupContentVariants({\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"navigation-list-group-content\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n {...props}\n />\n );\n};\n\nexport { NavigationListGroupContent };\n","import type { ComponentProps } from \"react\";\n\nimport { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n type NavigationListTone,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n} from \"./navigation-list-context\";\n\nconst navigationListGroupLabelVariants = tv({\n base: \"flex items-center rounded-md px-2 font-medium uppercase tracking-wide\",\n variants: {\n size: {\n xs: \"h-6 text-[10px]\",\n sm: \"h-7 text-[10px]\",\n md: \"h-8 text-[11px]\",\n lg: \"h-9 text-xs\",\n xl: \"h-10 text-xs\",\n },\n tone: {\n surface: \"text-muted-foreground\",\n sidebar: \"text-sidebar-foreground/70\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n },\n});\n\nexport type NavigationListGroupLabelProps = useRender.ComponentProps<\"div\"> &\n ComponentProps<\"div\"> &\n Omit<VariantProps<typeof navigationListGroupLabelVariants>, \"size\"> & {\n size?: UISize;\n tone?: NavigationListTone;\n };\n\nconst NavigationListGroupLabel = ({\n className,\n render,\n size,\n tone,\n ...props\n}: NavigationListGroupLabelProps) => {\n const resolvedSize = useResolvedNavigationListSize(size);\n const resolvedTone = useResolvedNavigationListTone(tone);\n\n return useRender({\n defaultTagName: \"div\",\n props: mergeProps<\"div\">(\n {\n className: cn(\n navigationListGroupLabelVariants({\n size: resolvedSize,\n tone: resolvedTone,\n }),\n className\n ),\n },\n props\n ),\n render,\n state: {\n slot: \"navigation-list-group-label\",\n size: resolvedSize,\n tone: resolvedTone,\n },\n });\n};\n\nexport { NavigationListGroupLabel };\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { Collapsible as CollapsiblePrimitive } from \"@base-ui/react/collapsible\";\nimport { useCallback, useMemo, useState } from \"react\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n type NavigationListTone,\n type NavigationListVariant,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\nimport {\n NavigationListItemContext,\n type NavigationListItemContextValue,\n} from \"./navigation-list-item-context\";\n\nconst navigationListItemVariants = tv({\n base: \"group/navigation-list-item relative list-none\",\n variants: {\n size: {\n xs: \"\",\n sm: \"\",\n md: \"\",\n lg: \"\",\n xl: \"\",\n },\n tone: {\n surface: \"\",\n sidebar: \"\",\n },\n variant: {\n subtle: \"\",\n light: \"\",\n filled: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n});\n\nexport type NavigationListItemProps = ComponentProps<\"li\"> &\n VariantProps<typeof navigationListItemVariants> & {\n collapsible?: boolean;\n opened?: boolean;\n defaultOpened?: boolean;\n onOpenedChange?: (opened: boolean) => void;\n disabled?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n };\n\nconst NavigationListItem = ({\n className,\n collapsible = false,\n opened,\n defaultOpened = false,\n onOpenedChange,\n disabled = false,\n size,\n tone,\n variant,\n children,\n ...props\n}: NavigationListItemProps) => {\n const [internalOpen, setInternalOpen] = useState(defaultOpened);\n const isControlled = opened !== undefined;\n const currentOpen = isControlled ? (opened ?? false) : internalOpen;\n const resolvedOpen = collapsible ? currentOpen : false;\n\n const handleOpenChange = useCallback(\n (nextOpen: boolean) => {\n if (!collapsible) {\n return;\n }\n\n if (!isControlled) {\n setInternalOpen(nextOpen);\n }\n\n onOpenedChange?.(nextOpen);\n },\n [collapsible, isControlled, onOpenedChange]\n );\n\n const resolvedSize = useResolvedNavigationListSize(size);\n const resolvedTone = useResolvedNavigationListTone(tone);\n const resolvedVariant = useResolvedNavigationListVariant(variant);\n\n const contextValue = useMemo<NavigationListItemContextValue>(\n () => ({\n collapsible,\n disabled,\n open: resolvedOpen,\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n [\n collapsible,\n disabled,\n resolvedOpen,\n resolvedSize,\n resolvedTone,\n resolvedVariant,\n ]\n );\n\n const itemProps = {\n className: cn(\n navigationListItemVariants({\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n ),\n \"data-collapsible\": collapsible ? \"true\" : \"false\",\n \"data-disabled\": disabled ? \"true\" : undefined,\n \"data-open\": resolvedOpen ? \"true\" : \"false\",\n \"data-size\": resolvedSize,\n \"data-slot\": \"navigation-list-item\",\n \"data-tone\": resolvedTone,\n \"data-variant\": resolvedVariant,\n ...props,\n };\n\n return (\n <NavigationListItemContext.Provider value={contextValue}>\n <li {...itemProps}>\n {collapsible ? (\n <CollapsiblePrimitive.Root\n disabled={disabled}\n onOpenChange={handleOpenChange}\n open={resolvedOpen}\n >\n {children}\n </CollapsiblePrimitive.Root>\n ) : (\n children\n )}\n </li>\n </NavigationListItemContext.Provider>\n );\n};\n\nexport { NavigationListItem };\n","\"use client\";\n\nimport type { ComponentProps, MouseEvent, ReactNode } from \"react\";\n\nimport { Collapsible as CollapsiblePrimitive } from \"@base-ui/react/collapsible\";\nimport { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport { ArrowRight01Icon } from \"@hugeicons/core-free-icons\";\nimport { HugeiconsIcon } from \"@hugeicons/react\";\nimport { useCallback, useEffect } from \"react\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { BaseUIClassName } from \"../../utils/merge-base-ui-class-name\";\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n type NavigationListTone,\n type NavigationListVariant,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListLinkVariants = tv({\n base: \"peer/navigation-list-link flex w-full cursor-pointer gap-2 overflow-hidden rounded-md text-left ring-offset-background outline-hidden transition-colors group-has-data-[slot=navigation-list-action]/navigation-list-item:pr-20 group-has-data-[slot=navigation-list-badge]/navigation-list-item:pr-20 focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50\",\n variants: {\n size: {\n xs: \"min-h-6 px-1.5 text-xs [&_svg:not([class*='size-'])]:size-3\",\n sm: \"min-h-7 px-2 text-xs [&_svg:not([class*='size-'])]:size-3.5\",\n md: \"min-h-8 px-2 text-sm [&_svg:not([class*='size-'])]:size-4\",\n lg: \"min-h-9 px-2.5 text-sm [&_svg:not([class*='size-'])]:size-4\",\n xl: \"min-h-10 px-3 text-base [&_svg:not([class*='size-'])]:size-5\",\n },\n tone: {\n surface: \"ring-ring\",\n sidebar: \"ring-sidebar-ring\",\n },\n variant: {\n subtle: \"\",\n light: \"\",\n filled: \"\",\n },\n noWrap: {\n true: \"\",\n false: \"\",\n },\n hasDescription: {\n true: \"items-start py-1.5\",\n false: \"items-center\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n noWrap: false,\n hasDescription: false,\n },\n compoundVariants: [\n {\n tone: \"surface\",\n variant: \"subtle\",\n className:\n \"hover:bg-muted/70 hover:text-foreground data-active:bg-muted/50 data-active:text-foreground data-active:font-medium\",\n },\n {\n tone: \"surface\",\n variant: \"light\",\n className:\n \"hover:bg-muted hover:text-foreground data-active:bg-muted data-active:text-foreground data-active:font-medium\",\n },\n {\n tone: \"surface\",\n variant: \"filled\",\n className:\n \"hover:bg-muted hover:text-foreground data-active:bg-primary data-active:text-primary-foreground data-active:font-medium\",\n },\n {\n tone: \"sidebar\",\n variant: \"subtle\",\n className:\n \"hover:bg-sidebar-accent/70 hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent/60 data-active:text-sidebar-accent-foreground data-active:font-medium\",\n },\n {\n tone: \"sidebar\",\n variant: \"light\",\n className:\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground data-active:font-medium\",\n },\n {\n tone: \"sidebar\",\n variant: \"filled\",\n className:\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground data-active:bg-sidebar-primary data-active:text-sidebar-primary-foreground data-active:font-medium\",\n },\n ],\n});\n\nconst navigationListLinkBodyVariants = tv({\n base: \"min-w-0 flex-1\",\n variants: {\n noWrap: {\n true: \"truncate\",\n false: \"\",\n },\n },\n defaultVariants: {\n noWrap: false,\n },\n});\n\nconst navigationListLinkLabelVariants = tv({\n base: \"block\",\n variants: {\n noWrap: {\n true: \"truncate\",\n false: \"\",\n },\n },\n defaultVariants: {\n noWrap: false,\n },\n});\n\nconst navigationListLinkDescriptionVariants = tv({\n base: \"mt-0.5 block text-xs\",\n variants: {\n noWrap: {\n true: \"truncate\",\n false: \"\",\n },\n tone: {\n surface: \"text-muted-foreground\",\n sidebar: \"text-sidebar-foreground/70\",\n },\n },\n defaultVariants: {\n noWrap: false,\n tone: \"surface\",\n },\n});\n\nconst navigationListDefaultChevron = (\n <HugeiconsIcon aria-hidden=\"true\" icon={ArrowRight01Icon} strokeWidth={2} />\n);\n\nexport interface NavigationListLinkState {\n active: boolean;\n collapsible: boolean;\n disabled: boolean;\n open: boolean;\n size: UISize;\n slot: \"navigation-list-link\";\n tone: NavigationListTone;\n variant: NavigationListVariant;\n}\n\nexport type NavigationListLinkProps = Omit<\n useRender.ComponentProps<\"button\">,\n \"className\"\n> &\n Omit<ComponentProps<\"button\">, \"className\"> &\n Omit<\n VariantProps<typeof navigationListLinkVariants>,\n | \"class\"\n | \"className\"\n | \"hasDescription\"\n | \"noWrap\"\n | \"size\"\n | \"tone\"\n | \"variant\"\n > & {\n href?: string;\n active?: boolean;\n label?: ReactNode;\n description?: ReactNode;\n leftSection?: ReactNode;\n rightSection?: ReactNode | null;\n noWrap?: boolean;\n disableRightSectionRotation?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n className?: BaseUIClassName<NavigationListLinkState>;\n };\n\nconst NavigationListLink = ({\n className,\n render,\n href,\n active,\n label,\n description,\n leftSection,\n rightSection,\n noWrap = false,\n disableRightSectionRotation = false,\n size,\n tone,\n variant,\n disabled,\n onClick,\n onKeyDown,\n children,\n ...props\n}: NavigationListLinkProps) => {\n const itemContext = useNavigationListItemContext();\n\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n const resolvedVariant = useResolvedNavigationListVariant(\n variant,\n itemContext.variant\n );\n\n const hasToggleBehavior = itemContext.collapsible;\n const isLinkLike =\n !hasToggleBehavior && (href !== undefined || render !== undefined);\n const resolvedActive = Boolean(active || props[\"aria-current\"] === \"page\");\n const resolvedAriaCurrent =\n props[\"aria-current\"] ??\n (resolvedActive && isLinkLike ? \"page\" : undefined);\n const resolvedDisabled = disabled ?? itemContext.disabled;\n\n useEffect(() => {\n if (process.env.NODE_ENV === \"production\" || !hasToggleBehavior) {\n return;\n }\n\n if (href !== undefined) {\n console.warn(\n \"[NavigationList.Link] `href` is ignored when used inside `NavigationList.Item collapsible`. Parent rows are disclosure buttons.\"\n );\n }\n\n if (render !== undefined) {\n console.warn(\n \"[NavigationList.Link] `render` is ignored when used inside `NavigationList.Item collapsible`. Parent rows are disclosure buttons.\"\n );\n }\n }, [hasToggleBehavior, href, render]);\n\n const usesDefaultChevron = rightSection === undefined && hasToggleBehavior;\n const renderedRightSection = usesDefaultChevron\n ? navigationListDefaultChevron\n : rightSection;\n const hasRenderedRightSection = renderedRightSection !== null;\n\n const handleClick = useCallback(\n (event: MouseEvent<HTMLElement>) => {\n onClick?.(event as never);\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (resolvedDisabled) {\n event.preventDefault();\n }\n },\n [onClick, resolvedDisabled]\n );\n\n const composedContent =\n children ??\n (label || description || leftSection || hasRenderedRightSection ? (\n <>\n {leftSection ? (\n <span\n className=\"shrink-0\"\n data-slot=\"navigation-list-link-left-section\"\n >\n {leftSection}\n </span>\n ) : null}\n\n <span className={navigationListLinkBodyVariants({ noWrap })}>\n {label ? (\n <span\n className={navigationListLinkLabelVariants({ noWrap })}\n data-slot=\"navigation-list-link-label\"\n >\n {label}\n </span>\n ) : null}\n {description ? (\n <span\n className={navigationListLinkDescriptionVariants({\n noWrap,\n tone: resolvedTone,\n })}\n data-slot=\"navigation-list-link-description\"\n >\n {description}\n </span>\n ) : null}\n </span>\n\n {hasRenderedRightSection ? (\n <span\n aria-hidden={usesDefaultChevron ? \"true\" : undefined}\n className={cn(\n \"ml-auto flex shrink-0 items-center justify-center\",\n hasToggleBehavior &&\n !disableRightSectionRotation &&\n \"data-[open=true]:rotate-90\"\n )}\n data-open={itemContext.open ? \"true\" : \"false\"}\n data-slot=\"navigation-list-link-right-section\"\n >\n {renderedRightSection}\n </span>\n ) : null}\n </>\n ) : null);\n\n const state: NavigationListLinkState = {\n active: resolvedActive,\n collapsible: hasToggleBehavior,\n disabled: resolvedDisabled,\n open: itemContext.open,\n size: resolvedSize,\n slot: \"navigation-list-link\",\n tone: resolvedTone,\n variant: resolvedVariant,\n };\n const resolvedClassName =\n typeof className === \"function\" ? className(state) : className;\n\n const mergedClassName = cn(\n navigationListLinkVariants({\n hasDescription: Boolean(description),\n noWrap,\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n resolvedClassName\n );\n\n const resolvedRender =\n render ??\n (href\n ? (renderProps: ComponentProps<\"a\">) => {\n const { children: renderChildren, ...anchorProps } = renderProps;\n\n return (\n <a {...anchorProps} href={href}>\n {renderChildren}\n </a>\n );\n }\n : undefined);\n\n const renderedLinkElement = useRender({\n defaultTagName: \"button\",\n props: mergeProps<\"button\">(\n {\n className: mergedClassName,\n \"aria-current\": resolvedAriaCurrent,\n \"aria-disabled\": resolvedDisabled ? \"true\" : undefined,\n disabled: isLinkLike ? undefined : resolvedDisabled,\n onClick: handleClick,\n onKeyDown,\n type: isLinkLike ? undefined : \"button\",\n children: composedContent,\n },\n props\n ),\n render: resolvedRender,\n state,\n });\n\n if (hasToggleBehavior) {\n return (\n <CollapsiblePrimitive.Trigger\n aria-disabled={resolvedDisabled ? \"true\" : undefined}\n className={mergedClassName}\n data-active={resolvedActive ? \"true\" : undefined}\n data-size={resolvedSize}\n data-slot=\"navigation-list-link\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n disabled={resolvedDisabled}\n onClick={onClick}\n onKeyDown={onKeyDown}\n type=\"button\"\n >\n {composedContent}\n </CollapsiblePrimitive.Trigger>\n );\n }\n\n return renderedLinkElement;\n};\n\nexport { NavigationListLink };\n","import type { ComponentProps } from \"react\";\n\nimport { cn } from \"tailwind-variants\";\n\nimport { Separator } from \"../separator/separator\";\nimport {\n type NavigationListTone,\n useResolvedNavigationListTone,\n} from \"./navigation-list-context\";\n\nexport type NavigationListSeparatorProps = ComponentProps<typeof Separator> & {\n tone?: NavigationListTone;\n};\n\nconst NavigationListSeparator = ({\n className,\n tone,\n ...props\n}: NavigationListSeparatorProps) => {\n const resolvedTone = useResolvedNavigationListTone(tone);\n\n return (\n <Separator\n className={cn(\n resolvedTone === \"sidebar\" ? \"bg-sidebar-border\" : \"bg-border\",\n className\n )}\n data-slot=\"navigation-list-separator\"\n data-tone={resolvedTone}\n {...props}\n />\n );\n};\n\nexport { NavigationListSeparator };\n","import type { ComponentProps, CSSProperties } from \"react\";\n\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { Skeleton } from \"../skeleton/skeleton\";\nimport {\n type NavigationListTone,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n} from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListSkeletonVariants = tv({\n base: \"flex items-center gap-2 rounded-md px-2\",\n variants: {\n size: {\n xs: \"h-6\",\n sm: \"h-7\",\n md: \"h-8\",\n lg: \"h-9\",\n xl: \"h-10\",\n },\n tone: {\n surface: \"\",\n sidebar: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n },\n});\n\nexport type NavigationListSkeletonProps = ComponentProps<\"div\"> & {\n showIcon?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n} & VariantProps<typeof navigationListSkeletonVariants>;\n\nconst NavigationListSkeleton = ({\n className,\n showIcon = false,\n size,\n tone,\n ...props\n}: NavigationListSkeletonProps) => {\n const itemContext = useNavigationListItemContext();\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n\n return (\n <div\n className={cn(\n navigationListSkeletonVariants({\n size: resolvedSize,\n tone: resolvedTone,\n }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"navigation-list-skeleton\"\n data-tone={resolvedTone}\n {...props}\n >\n {showIcon ? (\n <Skeleton\n className=\"size-4 rounded-md\"\n data-slot=\"navigation-list-skeleton-icon\"\n />\n ) : null}\n <Skeleton\n className=\"h-4 max-w-(--navigation-list-skeleton-width) flex-1\"\n data-slot=\"navigation-list-skeleton-text\"\n style={\n {\n \"--navigation-list-skeleton-width\": \"100%\",\n } as CSSProperties\n }\n />\n </div>\n );\n};\n\nexport { NavigationListSkeleton };\n","import type { ComponentProps } from \"react\";\n\nimport { Collapsible as CollapsiblePrimitive } from \"@base-ui/react/collapsible\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n type NavigationListTone,\n type NavigationListVariant,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListSubVariants = tv({\n base: \"mx-2 mt-1 flex min-w-0 list-none flex-col border-l overflow-hidden [&[hidden]:not([hidden='until-found'])]:hidden data-[open=false]:pointer-events-none data-[open=false]:mt-0 data-[open=false]:max-h-0 data-[open=false]:opacity-0 data-[open=false]:py-0 data-[open=false]:border-transparent data-[open=true]:max-h-[48rem] data-[open=true]:opacity-100\",\n variants: {\n size: {\n xs: \"gap-0.5 px-1 py-0.5\",\n sm: \"gap-0.5 px-1.5 py-0.5\",\n md: \"gap-1 px-2 py-0.5\",\n lg: \"gap-1 px-2.5 py-1\",\n xl: \"gap-1.5 px-3 py-1\",\n },\n tone: {\n surface: \"border-border\",\n sidebar: \"border-sidebar-border\",\n },\n variant: {\n subtle: \"\",\n light: \"\",\n filled: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n});\n\nexport type NavigationListSubProps = ComponentProps<\"ul\"> & {\n keepMounted?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n} & VariantProps<typeof navigationListSubVariants>;\n\nconst NavigationListSub = ({\n className,\n keepMounted = true,\n size,\n tone,\n variant,\n ...props\n}: NavigationListSubProps) => {\n const itemContext = useNavigationListItemContext();\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n const resolvedVariant = useResolvedNavigationListVariant(\n variant,\n itemContext.variant\n );\n\n const resolvedClassName = cn(\n navigationListSubVariants({\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n );\n\n if (!itemContext.collapsible) {\n return (\n <ul\n className={resolvedClassName}\n data-open=\"true\"\n data-size={resolvedSize}\n data-slot=\"navigation-list-sub\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n {...props}\n />\n );\n }\n\n return (\n <CollapsiblePrimitive.Panel keepMounted={keepMounted}>\n <ul\n className={resolvedClassName}\n data-open={itemContext.open ? \"true\" : \"false\"}\n data-size={resolvedSize}\n data-slot=\"navigation-list-sub\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n hidden={keepMounted && !itemContext.open}\n {...props}\n />\n </CollapsiblePrimitive.Panel>\n );\n};\n\nexport { NavigationListSub };\n","import type { ComponentProps } from \"react\";\n\nimport { cn } from \"tailwind-variants\";\n\nexport type NavigationListSubItemProps = ComponentProps<\"li\">;\n\nconst NavigationListSubItem = ({\n className,\n ...props\n}: NavigationListSubItemProps) => (\n <li\n className={cn(\n \"group/navigation-list-sub-item relative list-none\",\n className\n )}\n data-slot=\"navigation-list-sub-item\"\n {...props}\n />\n);\n\nexport { NavigationListSubItem };\n","import type { ComponentProps } from \"react\";\n\nimport { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport {\n type NavigationListTone,\n type NavigationListVariant,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListSubLinkVariants = tv({\n base: \"flex min-w-0 items-center gap-2 overflow-hidden rounded-md text-left outline-hidden transition-colors focus-visible:ring-2 [&>span:last-child]:truncate\",\n variants: {\n size: {\n xs: \"h-6 px-1.5 text-xs [&_svg:not([class*='size-'])]:size-3\",\n sm: \"h-7 px-2 text-xs [&_svg:not([class*='size-'])]:size-3.5\",\n md: \"h-8 px-2 text-sm [&_svg:not([class*='size-'])]:size-4\",\n lg: \"h-9 px-2.5 text-sm [&_svg:not([class*='size-'])]:size-4\",\n xl: \"h-10 px-3 text-base [&_svg:not([class*='size-'])]:size-5\",\n },\n tone: {\n surface: \"ring-ring\",\n sidebar: \"ring-sidebar-ring\",\n },\n variant: {\n subtle: \"\",\n light: \"\",\n filled: \"\",\n },\n active: {\n true: \"font-medium\",\n false: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n active: false,\n },\n compoundVariants: [\n {\n tone: \"surface\",\n variant: \"subtle\",\n className:\n \"hover:bg-muted/70 hover:text-foreground data-active:bg-muted/50\",\n },\n {\n tone: \"surface\",\n variant: \"light\",\n className: \"hover:bg-muted hover:text-foreground data-active:bg-muted\",\n },\n {\n tone: \"surface\",\n variant: \"filled\",\n className:\n \"hover:bg-muted hover:text-foreground data-active:bg-primary data-active:text-primary-foreground\",\n },\n {\n tone: \"sidebar\",\n variant: \"subtle\",\n className:\n \"hover:bg-sidebar-accent/70 hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent/60 data-active:text-sidebar-accent-foreground\",\n },\n {\n tone: \"sidebar\",\n variant: \"light\",\n className:\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground\",\n },\n {\n tone: \"sidebar\",\n variant: \"filled\",\n className:\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground data-active:bg-sidebar-primary data-active:text-sidebar-primary-foreground\",\n },\n ],\n});\n\nexport type NavigationListSubLinkProps = useRender.ComponentProps<\"a\"> &\n ComponentProps<\"a\"> & {\n active?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n } & VariantProps<typeof navigationListSubLinkVariants>;\n\nconst NavigationListSubLink = ({\n className,\n render,\n active,\n size,\n tone,\n variant,\n ...props\n}: NavigationListSubLinkProps) => {\n const itemContext = useNavigationListItemContext();\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n const resolvedVariant = useResolvedNavigationListVariant(\n variant,\n itemContext.variant\n );\n const resolvedActive = active ?? props[\"aria-current\"] === \"page\";\n const resolvedAriaCurrent =\n props[\"aria-current\"] ?? (resolvedActive ? \"page\" : undefined);\n\n return useRender({\n defaultTagName: \"a\",\n props: mergeProps<\"a\">(\n {\n \"aria-current\": resolvedAriaCurrent,\n className: cn(\n navigationListSubLinkVariants({\n active: resolvedActive,\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n ),\n },\n props\n ),\n render,\n state: {\n active: resolvedActive,\n size: resolvedSize,\n slot: \"navigation-list-sub-link\",\n tone: resolvedTone,\n variant: resolvedVariant,\n },\n });\n};\n\nexport { NavigationListSubLink };\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\n\nimport { cn, tv, type VariantProps } from \"tailwind-variants\";\n\nimport type { BaseUIClassName } from \"../../utils/merge-base-ui-class-name\";\nimport type { UISize } from \"../shared/size/size-system\";\n\nimport { useComponentSize } from \"../shared/size/size-provider\";\nimport { NavigationListAction } from \"./navigation-list-action\";\nimport { NavigationListBadge } from \"./navigation-list-badge\";\nimport { NavigationListContent } from \"./navigation-list-content\";\nimport {\n NavigationListContext,\n type NavigationListTone,\n type NavigationListVariant,\n} from \"./navigation-list-context\";\nimport { NavigationListGroup } from \"./navigation-list-group\";\nimport { NavigationListGroupContent } from \"./navigation-list-group-content\";\nimport { NavigationListGroupLabel } from \"./navigation-list-group-label\";\nimport { NavigationListItem } from \"./navigation-list-item\";\nimport { NavigationListLink } from \"./navigation-list-link\";\nimport { NavigationListSeparator } from \"./navigation-list-separator\";\nimport { NavigationListSkeleton } from \"./navigation-list-skeleton\";\nimport { NavigationListSub } from \"./navigation-list-sub\";\nimport { NavigationListSubItem } from \"./navigation-list-sub-item\";\nimport { NavigationListSubLink } from \"./navigation-list-sub-link\";\n\nconst navigationListVariants = tv({\n base: \"flex min-w-0 flex-col\",\n variants: {\n size: {\n xs: \"gap-1\",\n sm: \"gap-1\",\n md: \"gap-1.5\",\n lg: \"gap-2\",\n xl: \"gap-2.5\",\n },\n tone: {\n surface: \"\",\n sidebar: \"\",\n },\n variant: {\n subtle: \"\",\n light: \"\",\n filled: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n});\n\nexport interface NavigationListRootState {\n size: UISize;\n slot: \"navigation-list\";\n tone: NavigationListTone;\n variant: NavigationListVariant;\n}\n\nexport type NavigationListProps = Omit<ComponentProps<\"nav\">, \"className\"> &\n Omit<\n VariantProps<typeof navigationListVariants>,\n \"class\" | \"className\" | \"size\"\n > & {\n className?: BaseUIClassName<NavigationListRootState>;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n };\n\nconst NavigationList = ({\n className,\n size: providedSize,\n tone = \"surface\",\n variant = \"light\",\n children,\n ...props\n}: NavigationListProps) => {\n const size = useComponentSize(providedSize);\n const state: NavigationListRootState = {\n size,\n slot: \"navigation-list\",\n tone,\n variant,\n };\n\n const resolvedClassName =\n typeof className === \"function\" ? className(state) : className;\n\n return (\n <NavigationListContext.Provider value={{ size, tone, variant }}>\n <nav\n className={cn(\n navigationListVariants({\n size,\n tone,\n variant,\n }),\n resolvedClassName\n )}\n data-size={size}\n data-slot=\"navigation-list\"\n data-tone={tone}\n data-variant={variant}\n {...props}\n >\n {children}\n </nav>\n </NavigationListContext.Provider>\n );\n};\n\nNavigationList.Action = NavigationListAction;\nNavigationList.Badge = NavigationListBadge;\nNavigationList.Content = NavigationListContent;\nNavigationList.Group = NavigationListGroup;\nNavigationList.GroupContent = NavigationListGroupContent;\nNavigationList.GroupLabel = NavigationListGroupLabel;\nNavigationList.Item = NavigationListItem;\nNavigationList.Link = NavigationListLink;\nNavigationList.Separator = NavigationListSeparator;\nNavigationList.Skeleton = NavigationListSkeleton;\nNavigationList.Sub = NavigationListSub;\nNavigationList.SubItem = NavigationListSubItem;\nNavigationList.SubLink = NavigationListSubLink;\n\nexport {\n NavigationList,\n NavigationListAction,\n NavigationListBadge,\n NavigationListContent,\n NavigationListGroup,\n NavigationListGroupContent,\n NavigationListGroupLabel,\n NavigationListItem,\n NavigationListLink,\n NavigationListSeparator,\n NavigationListSkeleton,\n NavigationListSub,\n NavigationListSubItem,\n NavigationListSubLink,\n};\n\nexport type { NavigationListActionProps } from \"./navigation-list-action\";\nexport type { NavigationListBadgeProps } from \"./navigation-list-badge\";\nexport type { NavigationListContentProps } from \"./navigation-list-content\";\nexport type {\n NavigationListContextValue,\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\nexport type { NavigationListGroupProps } from \"./navigation-list-group\";\nexport type { NavigationListGroupContentProps } from \"./navigation-list-group-content\";\nexport type { NavigationListGroupLabelProps } from \"./navigation-list-group-label\";\nexport type { NavigationListItemProps } from \"./navigation-list-item\";\nexport type { NavigationListLinkProps } from \"./navigation-list-link\";\nexport type { NavigationListSeparatorProps } from \"./navigation-list-separator\";\nexport type { NavigationListSkeletonProps } from \"./navigation-list-skeleton\";\nexport type { NavigationListSubProps } from \"./navigation-list-sub\";\nexport type { NavigationListSubItemProps } from \"./navigation-list-sub-item\";\nexport type { NavigationListSubLinkProps } from \"./navigation-list-sub-link\";\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"navigation-list.js","names":["CollapsiblePrimitive","CollapsiblePrimitive","CollapsiblePrimitive"],"sources":["../../src/ui/navigation-list/navigation-list-context.tsx","../../src/ui/navigation-list/navigation-list-item-context.tsx","../../src/ui/navigation-list/navigation-list-action.tsx","../../src/ui/navigation-list/navigation-list-badge.tsx","../../src/ui/navigation-list/navigation-list-content.tsx","../../src/ui/navigation-list/navigation-list-group.tsx","../../src/ui/navigation-list/navigation-list-group-content.tsx","../../src/ui/navigation-list/navigation-list-group-label.tsx","../../src/ui/navigation-list/navigation-list-item.tsx","../../src/ui/navigation-list/navigation-list-link.tsx","../../src/ui/navigation-list/navigation-list-separator.tsx","../../src/ui/navigation-list/navigation-list-skeleton.tsx","../../src/ui/navigation-list/navigation-list-sub.tsx","../../src/ui/navigation-list/navigation-list-sub-item.tsx","../../src/ui/navigation-list/navigation-list-sub-link.tsx","../../src/ui/navigation-list/navigation-list.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, useContext } from \"react\";\n\nimport type { UISize } from \"../shared/size/size-system\";\n\nexport type NavigationListTone = \"surface\" | \"sidebar\";\nexport type NavigationListVariant = \"subtle\" | \"light\" | \"filled\";\n\nexport interface NavigationListContextValue {\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n}\n\nconst NavigationListContext = createContext<NavigationListContextValue>({\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n});\n\nconst resolveCandidate = <T,>(\n fallback: T,\n contextValue: T | undefined,\n candidates: (T | null | undefined)[]\n): T => {\n for (const candidate of candidates) {\n if (candidate !== undefined && candidate !== null) {\n return candidate;\n }\n }\n\n return contextValue ?? fallback;\n};\n\nconst useResolvedNavigationListTone = (\n ...candidates: (NavigationListTone | null | undefined)[]\n): NavigationListTone => {\n const { tone } = useContext(NavigationListContext);\n\n return resolveCandidate(\"surface\", tone, candidates);\n};\n\nconst useResolvedNavigationListVariant = (\n ...candidates: (NavigationListVariant | null | undefined)[]\n): NavigationListVariant => {\n const { variant } = useContext(NavigationListContext);\n\n return resolveCandidate(\"light\", variant, candidates);\n};\n\nconst useResolvedNavigationListSize = (\n ...candidates: (UISize | null | undefined)[]\n): UISize => {\n const { size } = useContext(NavigationListContext);\n\n return resolveCandidate(\"md\", size, candidates);\n};\n\nexport {\n NavigationListContext,\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n};\n","\"use client\";\n\nimport { createContext, useContext } from \"react\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport type {\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\n\nexport interface NavigationListItemContextValue {\n collapsible: boolean;\n disabled: boolean;\n open: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n}\n\nconst NavigationListItemContext = createContext<NavigationListItemContextValue>(\n {\n collapsible: false,\n disabled: false,\n open: false,\n size: undefined,\n tone: undefined,\n variant: undefined,\n }\n);\n\nconst useNavigationListItemContext = () =>\n useContext(NavigationListItemContext);\n\nexport { NavigationListItemContext, useNavigationListItemContext };\n","\"use client\";\n\nimport { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n} from \"./navigation-list-context\";\nimport type { NavigationListTone } from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListActionVariants = tv({\n base: \"cursor-clickable absolute right-1 flex aspect-square items-center justify-center rounded-md p-0 outline-hidden transition-transform group-has-data-[slot=navigation-list-badge]/navigation-list-item:right-14 group-data-[collapsible=true]/navigation-list-item:right-10 [&>svg]:shrink-0\",\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n },\n variants: {\n size: {\n lg: \"top-2 w-6 [&>svg:not([class*='size-'])]:size-4\",\n md: \"top-1.5 w-5 [&>svg:not([class*='size-'])]:size-4\",\n sm: \"top-1 w-5 [&>svg:not([class*='size-'])]:size-3.5\",\n xl: \"top-2.5 w-7 [&>svg:not([class*='size-'])]:size-5\",\n xs: \"top-0.5 w-4 [&>svg:not([class*='size-'])]:size-3\",\n },\n tone: {\n sidebar:\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/navigation-list-link:text-sidebar-accent-foreground peer-data-active/navigation-list-link:text-sidebar-accent-foreground focus-visible:ring-2\",\n surface:\n \"text-muted-foreground ring-ring hover:bg-muted hover:text-foreground peer-hover/navigation-list-link:text-foreground peer-data-active/navigation-list-link:text-foreground focus-visible:ring-2\",\n },\n },\n});\n\nexport type NavigationListActionProps = useRender.ComponentProps<\"button\"> &\n ComponentProps<\"button\"> & {\n showOnHover?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n } & VariantProps<typeof navigationListActionVariants>;\n\nconst NavigationListAction = ({\n className,\n render,\n showOnHover = false,\n size,\n tone,\n ...props\n}: NavigationListActionProps) => {\n const itemContext = useNavigationListItemContext();\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n\n return useRender({\n defaultTagName: \"button\",\n props: mergeProps<\"button\">(\n {\n className: cn(\n navigationListActionVariants({\n size: resolvedSize,\n tone: resolvedTone,\n }),\n itemContext.variant === \"filled\" &&\n resolvedTone === \"surface\" &&\n \"peer-data-active/navigation-list-link:text-primary-foreground\",\n itemContext.variant === \"filled\" &&\n resolvedTone === \"sidebar\" &&\n \"peer-data-active/navigation-list-link:text-sidebar-primary-foreground\",\n \"peer-data-[size=lg]/navigation-list-link:top-2 peer-data-[size=md]/navigation-list-link:top-1.5 peer-data-[size=sm]/navigation-list-link:top-1 peer-data-[size=xl]/navigation-list-link:top-2.5 peer-data-[size=xs]/navigation-list-link:top-0.5\",\n showOnHover &&\n \"group-focus-within/navigation-list-item:opacity-100 group-hover/navigation-list-item:opacity-100 peer-data-active/navigation-list-link:opacity-100 md:opacity-0\",\n className\n ),\n type: render ? undefined : \"button\",\n },\n props\n ),\n render,\n state: {\n size: resolvedSize,\n slot: \"navigation-list-action\",\n tone: resolvedTone,\n },\n });\n};\n\nexport { NavigationListAction };\n","import type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n} from \"./navigation-list-context\";\nimport type { NavigationListTone } from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListBadgeVariants = tv({\n base: \"pointer-events-none absolute right-1 flex items-center justify-center rounded-md px-1 font-medium tabular-nums select-none group-data-[collapsible=true]/navigation-list-item:right-8\",\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n },\n variants: {\n size: {\n lg: \"top-2 h-6 min-w-6 text-xs\",\n md: \"top-1.5 h-5 min-w-5 text-xs\",\n sm: \"top-1 h-5 min-w-5 text-[11px]\",\n xl: \"top-2.5 h-7 min-w-7 text-sm\",\n xs: \"top-0.5 h-4 min-w-4 text-[10px]\",\n },\n tone: {\n sidebar:\n \"text-sidebar-foreground peer-hover/navigation-list-link:text-sidebar-accent-foreground peer-data-active/navigation-list-link:text-sidebar-accent-foreground\",\n surface:\n \"text-muted-foreground peer-hover/navigation-list-link:text-foreground peer-data-active/navigation-list-link:text-foreground\",\n },\n },\n});\n\nexport type NavigationListBadgeProps = ComponentProps<\"div\"> & {\n size?: UISize;\n tone?: NavigationListTone;\n} & VariantProps<typeof navigationListBadgeVariants>;\n\nconst NavigationListBadge = ({\n className,\n size,\n tone,\n ...props\n}: NavigationListBadgeProps) => {\n const itemContext = useNavigationListItemContext();\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n\n return (\n <div\n className={cn(\n navigationListBadgeVariants({\n size: resolvedSize,\n tone: resolvedTone,\n }),\n itemContext.variant === \"filled\" &&\n resolvedTone === \"surface\" &&\n \"peer-data-active/navigation-list-link:text-primary-foreground\",\n itemContext.variant === \"filled\" &&\n resolvedTone === \"sidebar\" &&\n \"peer-data-active/navigation-list-link:text-sidebar-primary-foreground\",\n className\n )}\n data-size={resolvedSize}\n data-slot=\"navigation-list-badge\"\n data-tone={resolvedTone}\n {...props}\n />\n );\n};\n\nexport { NavigationListBadge };\n","import type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\nimport type {\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\n\nconst navigationListContentVariants = tv({\n base: \"flex min-w-0 list-none flex-col rounded-lg border\",\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n variants: {\n size: {\n lg: \"gap-1.5 p-2.5\",\n md: \"gap-1 p-2\",\n sm: \"gap-1 p-1.5\",\n xl: \"gap-2 p-3\",\n xs: \"gap-0.5 p-1\",\n },\n tone: {\n sidebar: \"border-sidebar-border bg-sidebar text-sidebar-foreground\",\n surface: \"border-border bg-background text-foreground\",\n },\n variant: {\n filled: \"\",\n light: \"\",\n subtle: \"\",\n },\n },\n});\n\nexport type NavigationListContentProps = ComponentProps<\"ul\"> &\n VariantProps<typeof navigationListContentVariants> & {\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n };\n\nconst NavigationListContent = ({\n className,\n size,\n tone,\n variant,\n ...props\n}: NavigationListContentProps) => {\n const resolvedSize = useResolvedNavigationListSize(size);\n const resolvedTone = useResolvedNavigationListTone(tone);\n const resolvedVariant = useResolvedNavigationListVariant(variant);\n\n return (\n <ul\n className={cn(\n navigationListContentVariants({\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n )}\n data-navigation-list=\"content\"\n data-size={resolvedSize}\n data-slot=\"navigation-list-content\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n {...props}\n />\n );\n};\n\nexport { NavigationListContent };\n","import type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\nimport type {\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\n\nconst navigationListGroupVariants = tv({\n base: \"list-none space-y-1\",\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n variants: {\n size: {\n lg: \"\",\n md: \"\",\n sm: \"\",\n xl: \"\",\n xs: \"\",\n },\n tone: {\n sidebar: \"\",\n surface: \"\",\n },\n variant: {\n filled: \"\",\n light: \"\",\n subtle: \"\",\n },\n },\n});\n\nexport type NavigationListGroupProps = ComponentProps<\"li\"> &\n VariantProps<typeof navigationListGroupVariants> & {\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n };\n\nconst NavigationListGroup = ({\n className,\n size,\n tone,\n variant,\n ...props\n}: NavigationListGroupProps) => {\n const resolvedSize = useResolvedNavigationListSize(size);\n const resolvedTone = useResolvedNavigationListTone(tone);\n const resolvedVariant = useResolvedNavigationListVariant(variant);\n\n return (\n <li\n className={cn(\n navigationListGroupVariants({\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"navigation-list-group\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n {...props}\n />\n );\n};\n\nexport { NavigationListGroup };\n","import type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\nimport type {\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\n\nconst navigationListGroupContentVariants = tv({\n base: \"flex list-none flex-col\",\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n variants: {\n size: {\n lg: \"gap-1\",\n md: \"gap-1\",\n sm: \"gap-0.5\",\n xl: \"gap-1.5\",\n xs: \"gap-0.5\",\n },\n tone: {\n sidebar: \"\",\n surface: \"\",\n },\n variant: {\n filled: \"\",\n light: \"\",\n subtle: \"\",\n },\n },\n});\n\nexport type NavigationListGroupContentProps = ComponentProps<\"ul\"> &\n VariantProps<typeof navigationListGroupContentVariants> & {\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n };\n\nconst NavigationListGroupContent = ({\n className,\n size,\n tone,\n variant,\n ...props\n}: NavigationListGroupContentProps) => {\n const resolvedSize = useResolvedNavigationListSize(size);\n const resolvedTone = useResolvedNavigationListTone(tone);\n const resolvedVariant = useResolvedNavigationListVariant(variant);\n\n return (\n <ul\n className={cn(\n navigationListGroupContentVariants({\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"navigation-list-group-content\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n {...props}\n />\n );\n};\n\nexport { NavigationListGroupContent };\n","import { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n} from \"./navigation-list-context\";\nimport type { NavigationListTone } from \"./navigation-list-context\";\n\nconst navigationListGroupLabelVariants = tv({\n base: \"flex items-center rounded-md px-2 font-medium tracking-wide uppercase\",\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n },\n variants: {\n size: {\n lg: \"h-9 text-xs\",\n md: \"h-8 text-[11px]\",\n sm: \"h-7 text-[10px]\",\n xl: \"h-10 text-xs\",\n xs: \"h-6 text-[10px]\",\n },\n tone: {\n sidebar: \"text-sidebar-foreground/70\",\n surface: \"text-muted-foreground\",\n },\n },\n});\n\nexport type NavigationListGroupLabelProps = useRender.ComponentProps<\"div\"> &\n ComponentProps<\"div\"> &\n Omit<VariantProps<typeof navigationListGroupLabelVariants>, \"size\"> & {\n size?: UISize;\n tone?: NavigationListTone;\n };\n\nconst NavigationListGroupLabel = ({\n className,\n render,\n size,\n tone,\n ...props\n}: NavigationListGroupLabelProps) => {\n const resolvedSize = useResolvedNavigationListSize(size);\n const resolvedTone = useResolvedNavigationListTone(tone);\n\n return useRender({\n defaultTagName: \"div\",\n props: mergeProps<\"div\">(\n {\n className: cn(\n navigationListGroupLabelVariants({\n size: resolvedSize,\n tone: resolvedTone,\n }),\n className\n ),\n },\n props\n ),\n render,\n state: {\n size: resolvedSize,\n slot: \"navigation-list-group-label\",\n tone: resolvedTone,\n },\n });\n};\n\nexport { NavigationListGroupLabel };\n","\"use client\";\n\nimport { Collapsible as CollapsiblePrimitive } from \"@base-ui/react/collapsible\";\nimport type { ComponentProps } from \"react\";\nimport { useCallback, useMemo, useState } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\nimport type {\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\nimport { NavigationListItemContext } from \"./navigation-list-item-context\";\nimport type { NavigationListItemContextValue } from \"./navigation-list-item-context\";\n\nconst navigationListItemVariants = tv({\n base: \"group/navigation-list-item relative list-none\",\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n variants: {\n size: {\n lg: \"\",\n md: \"\",\n sm: \"\",\n xl: \"\",\n xs: \"\",\n },\n tone: {\n sidebar: \"\",\n surface: \"\",\n },\n variant: {\n filled: \"\",\n light: \"\",\n subtle: \"\",\n },\n },\n});\n\nexport type NavigationListItemProps = ComponentProps<\"li\"> &\n VariantProps<typeof navigationListItemVariants> & {\n collapsible?: boolean;\n opened?: boolean;\n defaultOpened?: boolean;\n onOpenedChange?: (opened: boolean) => void;\n disabled?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n };\n\nconst NavigationListItem = ({\n className,\n collapsible = false,\n opened,\n defaultOpened = false,\n onOpenedChange,\n disabled = false,\n size,\n tone,\n variant,\n children,\n ...props\n}: NavigationListItemProps) => {\n const [internalOpen, setInternalOpen] = useState(defaultOpened);\n const isControlled = opened !== undefined;\n const currentOpen = isControlled ? (opened ?? false) : internalOpen;\n const resolvedOpen = collapsible ? currentOpen : false;\n\n const handleOpenChange = useCallback(\n (nextOpen: boolean) => {\n if (!collapsible) {\n return;\n }\n\n if (!isControlled) {\n setInternalOpen(nextOpen);\n }\n\n onOpenedChange?.(nextOpen);\n },\n [collapsible, isControlled, onOpenedChange]\n );\n\n const resolvedSize = useResolvedNavigationListSize(size);\n const resolvedTone = useResolvedNavigationListTone(tone);\n const resolvedVariant = useResolvedNavigationListVariant(variant);\n\n const contextValue = useMemo<NavigationListItemContextValue>(\n () => ({\n collapsible,\n disabled,\n open: resolvedOpen,\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n [\n collapsible,\n disabled,\n resolvedOpen,\n resolvedSize,\n resolvedTone,\n resolvedVariant,\n ]\n );\n\n const itemProps = {\n className: cn(\n navigationListItemVariants({\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n ),\n \"data-collapsible\": collapsible ? \"true\" : \"false\",\n \"data-disabled\": disabled ? \"true\" : undefined,\n \"data-open\": resolvedOpen ? \"true\" : \"false\",\n \"data-size\": resolvedSize,\n \"data-slot\": \"navigation-list-item\",\n \"data-tone\": resolvedTone,\n \"data-variant\": resolvedVariant,\n ...props,\n };\n\n return (\n <NavigationListItemContext.Provider value={contextValue}>\n <li {...itemProps}>\n {collapsible ? (\n <CollapsiblePrimitive.Root\n disabled={disabled}\n onOpenChange={handleOpenChange}\n open={resolvedOpen}\n >\n {children}\n </CollapsiblePrimitive.Root>\n ) : (\n children\n )}\n </li>\n </NavigationListItemContext.Provider>\n );\n};\n\nexport { NavigationListItem };\n","\"use client\";\n\nimport { Collapsible as CollapsiblePrimitive } from \"@base-ui/react/collapsible\";\nimport { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport { ArrowRight01Icon } from \"@hugeicons/core-free-icons\";\nimport { HugeiconsIcon } from \"@hugeicons/react\";\nimport type { ComponentProps, MouseEvent, ReactNode } from \"react\";\nimport { useCallback, useEffect } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { BaseUIClassName } from \"../../utils/merge-base-ui-class-name\";\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\nimport type {\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListLinkVariants = tv({\n base: \"peer/navigation-list-link cursor-clickable ring-offset-background flex w-full gap-2 overflow-hidden rounded-md text-left outline-hidden transition-colors group-has-data-[slot=navigation-list-action]/navigation-list-item:pr-20 group-has-data-[slot=navigation-list-badge]/navigation-list-item:pr-20 focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50\",\n compoundVariants: [\n {\n className:\n \"hover:bg-muted/70 hover:text-foreground data-active:bg-muted/50 data-active:text-foreground data-active:font-medium\",\n tone: \"surface\",\n variant: \"subtle\",\n },\n {\n className:\n \"hover:bg-muted hover:text-foreground data-active:bg-muted data-active:text-foreground data-active:font-medium\",\n tone: \"surface\",\n variant: \"light\",\n },\n {\n className:\n \"hover:bg-muted hover:text-foreground data-active:bg-primary data-active:text-primary-foreground data-active:font-medium\",\n tone: \"surface\",\n variant: \"filled\",\n },\n {\n className:\n \"hover:bg-sidebar-accent/70 hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent/60 data-active:text-sidebar-accent-foreground data-active:font-medium\",\n tone: \"sidebar\",\n variant: \"subtle\",\n },\n {\n className:\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground data-active:font-medium\",\n tone: \"sidebar\",\n variant: \"light\",\n },\n {\n className:\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground data-active:bg-sidebar-primary data-active:text-sidebar-primary-foreground data-active:font-medium\",\n tone: \"sidebar\",\n variant: \"filled\",\n },\n ],\n defaultVariants: {\n hasDescription: false,\n noWrap: false,\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n variants: {\n hasDescription: {\n false: \"items-center\",\n true: \"items-start py-1.5\",\n },\n noWrap: {\n false: \"\",\n true: \"\",\n },\n size: {\n lg: \"min-h-9 px-2.5 text-sm [&_svg:not([class*='size-'])]:size-4\",\n md: \"min-h-8 px-2 text-sm [&_svg:not([class*='size-'])]:size-4\",\n sm: \"min-h-7 px-2 text-xs [&_svg:not([class*='size-'])]:size-3.5\",\n xl: \"min-h-10 px-3 text-base [&_svg:not([class*='size-'])]:size-5\",\n xs: \"min-h-6 px-1.5 text-xs [&_svg:not([class*='size-'])]:size-3\",\n },\n tone: {\n sidebar: \"ring-sidebar-ring\",\n surface: \"ring-ring\",\n },\n variant: {\n filled: \"\",\n light: \"\",\n subtle: \"\",\n },\n },\n});\n\nconst navigationListLinkBodyVariants = tv({\n base: \"min-w-0 flex-1\",\n defaultVariants: {\n noWrap: false,\n },\n variants: {\n noWrap: {\n false: \"\",\n true: \"truncate\",\n },\n },\n});\n\nconst navigationListLinkLabelVariants = tv({\n base: \"block\",\n defaultVariants: {\n noWrap: false,\n },\n variants: {\n noWrap: {\n false: \"\",\n true: \"truncate\",\n },\n },\n});\n\nconst navigationListLinkDescriptionVariants = tv({\n base: \"mt-0.5 block text-xs\",\n defaultVariants: {\n noWrap: false,\n tone: \"surface\",\n },\n variants: {\n noWrap: {\n false: \"\",\n true: \"truncate\",\n },\n tone: {\n sidebar: \"text-sidebar-foreground/70\",\n surface: \"text-muted-foreground\",\n },\n },\n});\n\nconst navigationListDefaultChevron = (\n <HugeiconsIcon aria-hidden=\"true\" icon={ArrowRight01Icon} strokeWidth={2} />\n);\n\nexport interface NavigationListLinkState {\n active: boolean;\n collapsible: boolean;\n disabled: boolean;\n open: boolean;\n size: UISize;\n slot: \"navigation-list-link\";\n tone: NavigationListTone;\n variant: NavigationListVariant;\n}\n\nexport type NavigationListLinkProps = Omit<\n useRender.ComponentProps<\"button\">,\n \"className\"\n> &\n Omit<ComponentProps<\"button\">, \"className\"> &\n Omit<\n VariantProps<typeof navigationListLinkVariants>,\n | \"class\"\n | \"className\"\n | \"hasDescription\"\n | \"noWrap\"\n | \"size\"\n | \"tone\"\n | \"variant\"\n > & {\n href?: string;\n active?: boolean;\n label?: ReactNode;\n description?: ReactNode;\n leftSection?: ReactNode;\n rightSection?: ReactNode | null;\n noWrap?: boolean;\n disableRightSectionRotation?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n className?: BaseUIClassName<NavigationListLinkState>;\n };\n\nconst NavigationListLink = ({\n className,\n render,\n href,\n active,\n label,\n description,\n leftSection,\n rightSection,\n noWrap = false,\n disableRightSectionRotation = false,\n size,\n tone,\n variant,\n disabled,\n onClick,\n onKeyDown,\n children,\n ...props\n}: NavigationListLinkProps) => {\n const itemContext = useNavigationListItemContext();\n\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n const resolvedVariant = useResolvedNavigationListVariant(\n variant,\n itemContext.variant\n );\n\n const hasToggleBehavior = itemContext.collapsible;\n const isLinkLike =\n !hasToggleBehavior && (href !== undefined || render !== undefined);\n const resolvedActive = Boolean(active || props[\"aria-current\"] === \"page\");\n const resolvedAriaCurrent =\n props[\"aria-current\"] ??\n (resolvedActive && isLinkLike ? \"page\" : undefined);\n const resolvedDisabled = disabled ?? itemContext.disabled;\n\n useEffect(() => {\n if (process.env.NODE_ENV === \"production\" || !hasToggleBehavior) {\n return;\n }\n\n if (href !== undefined) {\n console.warn(\n \"[NavigationList.Link] `href` is ignored when used inside `NavigationList.Item collapsible`. Parent rows are disclosure buttons.\"\n );\n }\n\n if (render !== undefined) {\n console.warn(\n \"[NavigationList.Link] `render` is ignored when used inside `NavigationList.Item collapsible`. Parent rows are disclosure buttons.\"\n );\n }\n }, [hasToggleBehavior, href, render]);\n\n const usesDefaultChevron = rightSection === undefined && hasToggleBehavior;\n const renderedRightSection = usesDefaultChevron\n ? navigationListDefaultChevron\n : rightSection;\n const hasRenderedRightSection = renderedRightSection !== null;\n\n const handleClick = useCallback(\n (event: MouseEvent<HTMLElement>) => {\n onClick?.(event as never);\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (resolvedDisabled) {\n event.preventDefault();\n }\n },\n [onClick, resolvedDisabled]\n );\n\n const composedContent =\n children ??\n (label || description || leftSection || hasRenderedRightSection ? (\n <>\n {leftSection ? (\n <span\n className=\"shrink-0\"\n data-slot=\"navigation-list-link-left-section\"\n >\n {leftSection}\n </span>\n ) : null}\n\n <span className={navigationListLinkBodyVariants({ noWrap })}>\n {label ? (\n <span\n className={navigationListLinkLabelVariants({ noWrap })}\n data-slot=\"navigation-list-link-label\"\n >\n {label}\n </span>\n ) : null}\n {description ? (\n <span\n className={navigationListLinkDescriptionVariants({\n noWrap,\n tone: resolvedTone,\n })}\n data-slot=\"navigation-list-link-description\"\n >\n {description}\n </span>\n ) : null}\n </span>\n\n {hasRenderedRightSection ? (\n <span\n aria-hidden={usesDefaultChevron ? \"true\" : undefined}\n className={cn(\n \"ml-auto flex shrink-0 items-center justify-center\",\n hasToggleBehavior &&\n !disableRightSectionRotation &&\n \"data-[open=true]:rotate-90\"\n )}\n data-open={itemContext.open ? \"true\" : \"false\"}\n data-slot=\"navigation-list-link-right-section\"\n >\n {renderedRightSection}\n </span>\n ) : null}\n </>\n ) : null);\n\n const state: NavigationListLinkState = {\n active: resolvedActive,\n collapsible: hasToggleBehavior,\n disabled: resolvedDisabled,\n open: itemContext.open,\n size: resolvedSize,\n slot: \"navigation-list-link\",\n tone: resolvedTone,\n variant: resolvedVariant,\n };\n const resolvedClassName =\n typeof className === \"function\" ? className(state) : className;\n\n const mergedClassName = cn(\n navigationListLinkVariants({\n hasDescription: Boolean(description),\n noWrap,\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n resolvedClassName\n );\n\n const resolvedRender =\n render ??\n (href\n ? (renderProps: ComponentProps<\"a\">) => {\n const { children: renderChildren, ...anchorProps } = renderProps;\n\n return (\n <a {...anchorProps} href={href}>\n {renderChildren}\n </a>\n );\n }\n : undefined);\n\n const renderedLinkElement = useRender({\n defaultTagName: \"button\",\n props: mergeProps<\"button\">(\n {\n \"aria-current\": resolvedAriaCurrent,\n \"aria-disabled\": resolvedDisabled ? \"true\" : undefined,\n children: composedContent,\n className: mergedClassName,\n disabled: isLinkLike ? undefined : resolvedDisabled,\n onClick: handleClick,\n onKeyDown,\n type: isLinkLike ? undefined : \"button\",\n },\n props\n ),\n render: resolvedRender,\n state,\n });\n\n if (hasToggleBehavior) {\n return (\n <CollapsiblePrimitive.Trigger\n aria-disabled={resolvedDisabled ? \"true\" : undefined}\n className={mergedClassName}\n data-active={resolvedActive ? \"true\" : undefined}\n data-size={resolvedSize}\n data-slot=\"navigation-list-link\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n disabled={resolvedDisabled}\n onClick={onClick}\n onKeyDown={onKeyDown}\n type=\"button\"\n >\n {composedContent}\n </CollapsiblePrimitive.Trigger>\n );\n }\n\n return renderedLinkElement;\n};\n\nexport { NavigationListLink };\n","import type { ComponentProps } from \"react\";\nimport { cn } from \"tailwind-variants\";\n\nimport { Separator } from \"../separator/separator\";\nimport { useResolvedNavigationListTone } from \"./navigation-list-context\";\nimport type { NavigationListTone } from \"./navigation-list-context\";\n\nexport type NavigationListSeparatorProps = ComponentProps<typeof Separator> & {\n tone?: NavigationListTone;\n};\n\nconst NavigationListSeparator = ({\n className,\n tone,\n ...props\n}: NavigationListSeparatorProps) => {\n const resolvedTone = useResolvedNavigationListTone(tone);\n\n return (\n <Separator\n className={cn(\n resolvedTone === \"sidebar\" ? \"bg-sidebar-border\" : \"bg-border\",\n className\n )}\n data-slot=\"navigation-list-separator\"\n data-tone={resolvedTone}\n {...props}\n />\n );\n};\n\nexport { NavigationListSeparator };\n","import type { ComponentProps, CSSProperties } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport { Skeleton } from \"../skeleton/skeleton\";\nimport {\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n} from \"./navigation-list-context\";\nimport type { NavigationListTone } from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListSkeletonVariants = tv({\n base: \"flex items-center gap-2 rounded-md px-2\",\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n },\n variants: {\n size: {\n lg: \"h-9\",\n md: \"h-8\",\n sm: \"h-7\",\n xl: \"h-10\",\n xs: \"h-6\",\n },\n tone: {\n sidebar: \"\",\n surface: \"\",\n },\n },\n});\n\nexport type NavigationListSkeletonProps = ComponentProps<\"div\"> & {\n showIcon?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n} & VariantProps<typeof navigationListSkeletonVariants>;\n\nconst NavigationListSkeleton = ({\n className,\n showIcon = false,\n size,\n tone,\n ...props\n}: NavigationListSkeletonProps) => {\n const itemContext = useNavigationListItemContext();\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n\n return (\n <div\n className={cn(\n navigationListSkeletonVariants({\n size: resolvedSize,\n tone: resolvedTone,\n }),\n className\n )}\n data-size={resolvedSize}\n data-slot=\"navigation-list-skeleton\"\n data-tone={resolvedTone}\n {...props}\n >\n {showIcon ? (\n <Skeleton\n className=\"size-4 rounded-md\"\n data-slot=\"navigation-list-skeleton-icon\"\n />\n ) : null}\n <Skeleton\n className=\"h-4 max-w-(--navigation-list-skeleton-width) flex-1\"\n data-slot=\"navigation-list-skeleton-text\"\n style={\n {\n \"--navigation-list-skeleton-width\": \"100%\",\n } as CSSProperties\n }\n />\n </div>\n );\n};\n\nexport { NavigationListSkeleton };\n","import { Collapsible as CollapsiblePrimitive } from \"@base-ui/react/collapsible\";\nimport type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\nimport type {\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListSubVariants = tv({\n base: \"mx-2 mt-1 flex min-w-0 list-none flex-col overflow-hidden border-l data-[open=false]:pointer-events-none data-[open=false]:mt-0 data-[open=false]:max-h-0 data-[open=false]:border-transparent data-[open=false]:py-0 data-[open=false]:opacity-0 data-[open=true]:max-h-[48rem] data-[open=true]:opacity-100 [&[hidden]:not([hidden='until-found'])]:hidden\",\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n variants: {\n size: {\n lg: \"gap-1 px-2.5 py-1\",\n md: \"gap-1 px-2 py-0.5\",\n sm: \"gap-0.5 px-1.5 py-0.5\",\n xl: \"gap-1.5 px-3 py-1\",\n xs: \"gap-0.5 px-1 py-0.5\",\n },\n tone: {\n sidebar: \"border-sidebar-border\",\n surface: \"border-border\",\n },\n variant: {\n filled: \"\",\n light: \"\",\n subtle: \"\",\n },\n },\n});\n\nexport type NavigationListSubProps = ComponentProps<\"ul\"> & {\n keepMounted?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n} & VariantProps<typeof navigationListSubVariants>;\n\nconst NavigationListSub = ({\n className,\n keepMounted = true,\n size,\n tone,\n variant,\n ...props\n}: NavigationListSubProps) => {\n const itemContext = useNavigationListItemContext();\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n const resolvedVariant = useResolvedNavigationListVariant(\n variant,\n itemContext.variant\n );\n\n const resolvedClassName = cn(\n navigationListSubVariants({\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n );\n\n if (!itemContext.collapsible) {\n return (\n <ul\n className={resolvedClassName}\n data-open=\"true\"\n data-size={resolvedSize}\n data-slot=\"navigation-list-sub\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n {...props}\n />\n );\n }\n\n return (\n <CollapsiblePrimitive.Panel keepMounted={keepMounted}>\n <ul\n className={resolvedClassName}\n data-open={itemContext.open ? \"true\" : \"false\"}\n data-size={resolvedSize}\n data-slot=\"navigation-list-sub\"\n data-tone={resolvedTone}\n data-variant={resolvedVariant}\n hidden={keepMounted && !itemContext.open}\n {...props}\n />\n </CollapsiblePrimitive.Panel>\n );\n};\n\nexport { NavigationListSub };\n","import type { ComponentProps } from \"react\";\nimport { cn } from \"tailwind-variants\";\n\nexport type NavigationListSubItemProps = ComponentProps<\"li\">;\n\nconst NavigationListSubItem = ({\n className,\n ...props\n}: NavigationListSubItemProps) => (\n <li\n className={cn(\n \"group/navigation-list-sub-item relative list-none\",\n className\n )}\n data-slot=\"navigation-list-sub-item\"\n {...props}\n />\n);\n\nexport { NavigationListSubItem };\n","import { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport type { ComponentProps } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { UISize } from \"../shared/size/size-system\";\nimport {\n useResolvedNavigationListSize,\n useResolvedNavigationListTone,\n useResolvedNavigationListVariant,\n} from \"./navigation-list-context\";\nimport type {\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\nimport { useNavigationListItemContext } from \"./navigation-list-item-context\";\n\nconst navigationListSubLinkVariants = tv({\n base: \"flex min-w-0 items-center gap-2 overflow-hidden rounded-md text-left outline-hidden transition-colors focus-visible:ring-2 [&>span:last-child]:truncate\",\n compoundVariants: [\n {\n className:\n \"hover:bg-muted/70 hover:text-foreground data-active:bg-muted/50\",\n tone: \"surface\",\n variant: \"subtle\",\n },\n {\n className: \"hover:bg-muted hover:text-foreground data-active:bg-muted\",\n tone: \"surface\",\n variant: \"light\",\n },\n {\n className:\n \"hover:bg-muted hover:text-foreground data-active:bg-primary data-active:text-primary-foreground\",\n tone: \"surface\",\n variant: \"filled\",\n },\n {\n className:\n \"hover:bg-sidebar-accent/70 hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent/60 data-active:text-sidebar-accent-foreground\",\n tone: \"sidebar\",\n variant: \"subtle\",\n },\n {\n className:\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground\",\n tone: \"sidebar\",\n variant: \"light\",\n },\n {\n className:\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground data-active:bg-sidebar-primary data-active:text-sidebar-primary-foreground\",\n tone: \"sidebar\",\n variant: \"filled\",\n },\n ],\n defaultVariants: {\n active: false,\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n variants: {\n active: {\n false: \"\",\n true: \"font-medium\",\n },\n size: {\n lg: \"h-9 px-2.5 text-sm [&_svg:not([class*='size-'])]:size-4\",\n md: \"h-8 px-2 text-sm [&_svg:not([class*='size-'])]:size-4\",\n sm: \"h-7 px-2 text-xs [&_svg:not([class*='size-'])]:size-3.5\",\n xl: \"h-10 px-3 text-base [&_svg:not([class*='size-'])]:size-5\",\n xs: \"h-6 px-1.5 text-xs [&_svg:not([class*='size-'])]:size-3\",\n },\n tone: {\n sidebar: \"ring-sidebar-ring\",\n surface: \"ring-ring\",\n },\n variant: {\n filled: \"\",\n light: \"\",\n subtle: \"\",\n },\n },\n});\n\nexport type NavigationListSubLinkProps = useRender.ComponentProps<\"a\"> &\n ComponentProps<\"a\"> & {\n active?: boolean;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n } & VariantProps<typeof navigationListSubLinkVariants>;\n\nconst NavigationListSubLink = ({\n className,\n render,\n active,\n size,\n tone,\n variant,\n ...props\n}: NavigationListSubLinkProps) => {\n const itemContext = useNavigationListItemContext();\n const resolvedSize = useResolvedNavigationListSize(size, itemContext.size);\n const resolvedTone = useResolvedNavigationListTone(tone, itemContext.tone);\n const resolvedVariant = useResolvedNavigationListVariant(\n variant,\n itemContext.variant\n );\n const resolvedActive = active ?? props[\"aria-current\"] === \"page\";\n const resolvedAriaCurrent =\n props[\"aria-current\"] ?? (resolvedActive ? \"page\" : undefined);\n\n return useRender({\n defaultTagName: \"a\",\n props: mergeProps<\"a\">(\n {\n \"aria-current\": resolvedAriaCurrent,\n className: cn(\n navigationListSubLinkVariants({\n active: resolvedActive,\n size: resolvedSize,\n tone: resolvedTone,\n variant: resolvedVariant,\n }),\n className\n ),\n },\n props\n ),\n render,\n state: {\n active: resolvedActive,\n size: resolvedSize,\n slot: \"navigation-list-sub-link\",\n tone: resolvedTone,\n variant: resolvedVariant,\n },\n });\n};\n\nexport { NavigationListSubLink };\n","\"use client\";\n\nimport type { ComponentProps } from \"react\";\nimport { useMemo } from \"react\";\nimport { cn, tv } from \"tailwind-variants\";\nimport type { VariantProps } from \"tailwind-variants\";\n\nimport type { BaseUIClassName } from \"../../utils/merge-base-ui-class-name\";\nimport { useComponentSize } from \"../shared/size/size-provider\";\nimport type { UISize } from \"../shared/size/size-system\";\nimport { NavigationListAction } from \"./navigation-list-action\";\nimport { NavigationListBadge } from \"./navigation-list-badge\";\nimport { NavigationListContent } from \"./navigation-list-content\";\nimport { NavigationListContext } from \"./navigation-list-context\";\nimport type {\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\nimport { NavigationListGroup } from \"./navigation-list-group\";\nimport { NavigationListGroupContent } from \"./navigation-list-group-content\";\nimport { NavigationListGroupLabel } from \"./navigation-list-group-label\";\nimport { NavigationListItem } from \"./navigation-list-item\";\nimport { NavigationListLink } from \"./navigation-list-link\";\nimport { NavigationListSeparator } from \"./navigation-list-separator\";\nimport { NavigationListSkeleton } from \"./navigation-list-skeleton\";\nimport { NavigationListSub } from \"./navigation-list-sub\";\nimport { NavigationListSubItem } from \"./navigation-list-sub-item\";\nimport { NavigationListSubLink } from \"./navigation-list-sub-link\";\n\nconst navigationListVariants = tv({\n base: \"flex min-w-0 flex-col\",\n defaultVariants: {\n size: \"md\",\n tone: \"surface\",\n variant: \"light\",\n },\n variants: {\n size: {\n lg: \"gap-2\",\n md: \"gap-1.5\",\n sm: \"gap-1\",\n xl: \"gap-2.5\",\n xs: \"gap-1\",\n },\n tone: {\n sidebar: \"\",\n surface: \"\",\n },\n variant: {\n filled: \"\",\n light: \"\",\n subtle: \"\",\n },\n },\n});\n\nexport interface NavigationListRootState {\n size: UISize;\n slot: \"navigation-list\";\n tone: NavigationListTone;\n variant: NavigationListVariant;\n}\n\nexport type NavigationListProps = Omit<ComponentProps<\"nav\">, \"className\"> &\n Omit<\n VariantProps<typeof navigationListVariants>,\n \"class\" | \"className\" | \"size\"\n > & {\n className?: BaseUIClassName<NavigationListRootState>;\n size?: UISize;\n tone?: NavigationListTone;\n variant?: NavigationListVariant;\n };\n\nconst NavigationList = ({\n className,\n size: providedSize,\n tone = \"surface\",\n variant = \"light\",\n children,\n ...props\n}: NavigationListProps) => {\n const size = useComponentSize(providedSize);\n const state: NavigationListRootState = {\n size,\n slot: \"navigation-list\",\n tone,\n variant,\n };\n\n const resolvedClassName =\n typeof className === \"function\" ? className(state) : className;\n const contextValue = useMemo(\n () => ({ size, tone, variant }),\n [size, tone, variant]\n );\n\n return (\n <NavigationListContext.Provider value={contextValue}>\n <nav\n className={cn(\n navigationListVariants({\n size,\n tone,\n variant,\n }),\n resolvedClassName\n )}\n data-size={size}\n data-slot=\"navigation-list\"\n data-tone={tone}\n data-variant={variant}\n {...props}\n >\n {children}\n </nav>\n </NavigationListContext.Provider>\n );\n};\n\nNavigationList.Action = NavigationListAction;\nNavigationList.Badge = NavigationListBadge;\nNavigationList.Content = NavigationListContent;\nNavigationList.Group = NavigationListGroup;\nNavigationList.GroupContent = NavigationListGroupContent;\nNavigationList.GroupLabel = NavigationListGroupLabel;\nNavigationList.Item = NavigationListItem;\nNavigationList.Link = NavigationListLink;\nNavigationList.Separator = NavigationListSeparator;\nNavigationList.Skeleton = NavigationListSkeleton;\nNavigationList.Sub = NavigationListSub;\nNavigationList.SubItem = NavigationListSubItem;\nNavigationList.SubLink = NavigationListSubLink;\n\nexport {\n NavigationList,\n NavigationListAction,\n NavigationListBadge,\n NavigationListContent,\n NavigationListGroup,\n NavigationListGroupContent,\n NavigationListGroupLabel,\n NavigationListItem,\n NavigationListLink,\n NavigationListSeparator,\n NavigationListSkeleton,\n NavigationListSub,\n NavigationListSubItem,\n NavigationListSubLink,\n};\n\nexport type { NavigationListActionProps } from \"./navigation-list-action\";\nexport type { NavigationListBadgeProps } from \"./navigation-list-badge\";\nexport type { NavigationListContentProps } from \"./navigation-list-content\";\nexport type {\n NavigationListContextValue,\n NavigationListTone,\n NavigationListVariant,\n} from \"./navigation-list-context\";\nexport type { NavigationListGroupProps } from \"./navigation-list-group\";\nexport type { NavigationListGroupContentProps } from \"./navigation-list-group-content\";\nexport type { NavigationListGroupLabelProps } from \"./navigation-list-group-label\";\nexport type { NavigationListItemProps } from \"./navigation-list-item\";\nexport type { NavigationListLinkProps } from \"./navigation-list-link\";\nexport type { NavigationListSeparatorProps } from \"./navigation-list-separator\";\nexport type { NavigationListSkeletonProps } from \"./navigation-list-skeleton\";\nexport type { NavigationListSubProps } from \"./navigation-list-sub\";\nexport type { NavigationListSubItemProps } from \"./navigation-list-sub-item\";\nexport type { NavigationListSubLinkProps } from \"./navigation-list-sub-link\";\n"],"mappings":";;;;;;;;;;;;;;;AAeA,MAAM,wBAAwB,cAA0C;CACtE,MAAM;CACN,MAAM;CACN,SAAS;CACV,CAAC;AAEF,MAAM,oBACJ,UACA,cACA,eACM;AACN,MAAK,MAAM,aAAa,WACtB,KAAI,cAAc,UAAa,cAAc,KAC3C,QAAO;AAIX,QAAO,gBAAgB;;AAGzB,MAAM,iCACJ,GAAG,eACoB;CACvB,MAAM,EAAE,SAAS,WAAW,sBAAsB;AAElD,QAAO,iBAAiB,WAAW,MAAM,WAAW;;AAGtD,MAAM,oCACJ,GAAG,eACuB;CAC1B,MAAM,EAAE,YAAY,WAAW,sBAAsB;AAErD,QAAO,iBAAiB,SAAS,SAAS,WAAW;;AAGvD,MAAM,iCACJ,GAAG,eACQ;CACX,MAAM,EAAE,SAAS,WAAW,sBAAsB;AAElD,QAAO,iBAAiB,MAAM,MAAM,WAAW;;;;;ACrCjD,MAAM,4BAA4B,cAChC;CACE,aAAa;CACb,UAAU;CACV,MAAM;CACN,MAAM;CACN,MAAM;CACN,SAAS;CACV,CACF;AAED,MAAM,qCACJ,WAAW,0BAA0B;;;;ACfvC,MAAM,+BAA+B,GAAG;CACtC,MAAM;CACN,iBAAiB;EACf,MAAM;EACN,MAAM;EACP;CACD,UAAU;EACR,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SACE;GACF,SACE;GACH;EACF;CACF,CAAC;AASF,MAAM,wBAAwB,EAC5B,WACA,QACA,cAAc,OACd,MACA,MACA,GAAG,YAC4B;CAC/B,MAAM,cAAc,8BAA8B;CAClD,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;CAC1E,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;AAE1E,QAAO,UAAU;EACf,gBAAgB;EAChB,OAAO,WACL;GACE,WAAW,GACT,6BAA6B;IAC3B,MAAM;IACN,MAAM;IACP,CAAC,EACF,YAAY,YAAY,YACtB,iBAAiB,aACjB,iEACF,YAAY,YAAY,YACtB,iBAAiB,aACjB,yEACF,oPACA,eACE,mKACF,UACD;GACD,MAAM,SAAS,SAAY;GAC5B,EACD,MACD;EACD;EACA,OAAO;GACL,MAAM;GACN,MAAM;GACN,MAAM;GACP;EACF,CAAC;;;;;AC5EJ,MAAM,8BAA8B,GAAG;CACrC,MAAM;CACN,iBAAiB;EACf,MAAM;EACN,MAAM;EACP;CACD,UAAU;EACR,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SACE;GACF,SACE;GACH;EACF;CACF,CAAC;AAOF,MAAM,uBAAuB,EAC3B,WACA,MACA,MACA,GAAG,YAC2B;CAC9B,MAAM,cAAc,8BAA8B;CAClD,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;CAC1E,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;AAE1E,QACE,oBAAC,OAAD;EACE,WAAW,GACT,4BAA4B;GAC1B,MAAM;GACN,MAAM;GACP,CAAC,EACF,YAAY,YAAY,YACtB,iBAAiB,aACjB,iEACF,YAAY,YAAY,YACtB,iBAAiB,aACjB,yEACF,UACD;EACD,aAAW;EACX,aAAU;EACV,aAAW;EACX,GAAI;EACJ;;;;;ACtDN,MAAM,gCAAgC,GAAG;CACvC,MAAM;CACN,iBAAiB;EACf,MAAM;EACN,MAAM;EACN,SAAS;EACV;CACD,UAAU;EACR,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACD,SAAS;GACP,QAAQ;GACR,OAAO;GACP,QAAQ;GACT;EACF;CACF,CAAC;AASF,MAAM,yBAAyB,EAC7B,WACA,MACA,MACA,SACA,GAAG,YAC6B;CAChC,MAAM,eAAe,8BAA8B,KAAK;CACxD,MAAM,eAAe,8BAA8B,KAAK;CACxD,MAAM,kBAAkB,iCAAiC,QAAQ;AAEjE,QACE,oBAAC,MAAD;EACE,WAAW,GACT,8BAA8B;GAC5B,MAAM;GACN,MAAM;GACN,SAAS;GACV,CAAC,EACF,UACD;EACD,wBAAqB;EACrB,aAAW;EACX,aAAU;EACV,aAAW;EACX,gBAAc;EACd,GAAI;EACJ;;;;;AC7DN,MAAM,8BAA8B,GAAG;CACrC,MAAM;CACN,iBAAiB;EACf,MAAM;EACN,MAAM;EACN,SAAS;EACV;CACD,UAAU;EACR,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACD,SAAS;GACP,QAAQ;GACR,OAAO;GACP,QAAQ;GACT;EACF;CACF,CAAC;AASF,MAAM,uBAAuB,EAC3B,WACA,MACA,MACA,SACA,GAAG,YAC2B;CAC9B,MAAM,eAAe,8BAA8B,KAAK;CACxD,MAAM,eAAe,8BAA8B,KAAK;CACxD,MAAM,kBAAkB,iCAAiC,QAAQ;AAEjE,QACE,oBAAC,MAAD;EACE,WAAW,GACT,4BAA4B;GAC1B,MAAM;GACN,MAAM;GACN,SAAS;GACV,CAAC,EACF,UACD;EACD,aAAW;EACX,aAAU;EACV,aAAW;EACX,gBAAc;EACd,GAAI;EACJ;;;;;AC5DN,MAAM,qCAAqC,GAAG;CAC5C,MAAM;CACN,iBAAiB;EACf,MAAM;EACN,MAAM;EACN,SAAS;EACV;CACD,UAAU;EACR,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACD,SAAS;GACP,QAAQ;GACR,OAAO;GACP,QAAQ;GACT;EACF;CACF,CAAC;AASF,MAAM,8BAA8B,EAClC,WACA,MACA,MACA,SACA,GAAG,YACkC;CACrC,MAAM,eAAe,8BAA8B,KAAK;CACxD,MAAM,eAAe,8BAA8B,KAAK;CACxD,MAAM,kBAAkB,iCAAiC,QAAQ;AAEjE,QACE,oBAAC,MAAD;EACE,WAAW,GACT,mCAAmC;GACjC,MAAM;GACN,MAAM;GACN,SAAS;GACV,CAAC,EACF,UACD;EACD,aAAW;EACX,aAAU;EACV,aAAW;EACX,gBAAc;EACd,GAAI;EACJ;;;;;AC9DN,MAAM,mCAAmC,GAAG;CAC1C,MAAM;CACN,iBAAiB;EACf,MAAM;EACN,MAAM;EACP;CACD,UAAU;EACR,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACF;CACF,CAAC;AASF,MAAM,4BAA4B,EAChC,WACA,QACA,MACA,MACA,GAAG,YACgC;CACnC,MAAM,eAAe,8BAA8B,KAAK;CACxD,MAAM,eAAe,8BAA8B,KAAK;AAExD,QAAO,UAAU;EACf,gBAAgB;EAChB,OAAO,WACL,EACE,WAAW,GACT,iCAAiC;GAC/B,MAAM;GACN,MAAM;GACP,CAAC,EACF,UACD,EACF,EACD,MACD;EACD;EACA,OAAO;GACL,MAAM;GACN,MAAM;GACN,MAAM;GACP;EACF,CAAC;;;;;AClDJ,MAAM,6BAA6B,GAAG;CACpC,MAAM;CACN,iBAAiB;EACf,MAAM;EACN,MAAM;EACN,SAAS;EACV;CACD,UAAU;EACR,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACD,SAAS;GACP,QAAQ;GACR,OAAO;GACP,QAAQ;GACT;EACF;CACF,CAAC;AAcF,MAAM,sBAAsB,EAC1B,WACA,cAAc,OACd,QACA,gBAAgB,OAChB,gBACA,WAAW,OACX,MACA,MACA,SACA,UACA,GAAG,YAC0B;CAC7B,MAAM,CAAC,cAAc,mBAAmB,SAAS,cAAc;CAC/D,MAAM,eAAe,WAAW;CAEhC,MAAM,eAAe,cADD,eAAgB,UAAU,QAAS,eACN;CAEjD,MAAM,mBAAmB,aACtB,aAAsB;AACrB,MAAI,CAAC,YACH;AAGF,MAAI,CAAC,aACH,iBAAgB,SAAS;AAG3B,mBAAiB,SAAS;IAE5B;EAAC;EAAa;EAAc;EAAe,CAC5C;CAED,MAAM,eAAe,8BAA8B,KAAK;CACxD,MAAM,eAAe,8BAA8B,KAAK;CACxD,MAAM,kBAAkB,iCAAiC,QAAQ;CAEjE,MAAM,eAAe,eACZ;EACL;EACA;EACA,MAAM;EACN,MAAM;EACN,MAAM;EACN,SAAS;EACV,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACD,CACF;CAED,MAAM,YAAY;EAChB,WAAW,GACT,2BAA2B;GACzB,MAAM;GACN,MAAM;GACN,SAAS;GACV,CAAC,EACF,UACD;EACD,oBAAoB,cAAc,SAAS;EAC3C,iBAAiB,WAAW,SAAS;EACrC,aAAa,eAAe,SAAS;EACrC,aAAa;EACb,aAAa;EACb,aAAa;EACb,gBAAgB;EAChB,GAAG;EACJ;AAED,QACE,oBAAC,0BAA0B,UAA3B;EAAoC,OAAO;YACzC,oBAAC,MAAD;GAAI,GAAI;aACL,cACC,oBAACA,YAAqB,MAAtB;IACY;IACV,cAAc;IACd,MAAM;IAEL;IACyB,IAE5B;GAEC;EAC8B;;;;;AC7HzC,MAAM,6BAA6B,GAAG;CACpC,MAAM;CACN,kBAAkB;EAChB;GACE,WACE;GACF,MAAM;GACN,SAAS;GACV;EACD;GACE,WACE;GACF,MAAM;GACN,SAAS;GACV;EACD;GACE,WACE;GACF,MAAM;GACN,SAAS;GACV;EACD;GACE,WACE;GACF,MAAM;GACN,SAAS;GACV;EACD;GACE,WACE;GACF,MAAM;GACN,SAAS;GACV;EACD;GACE,WACE;GACF,MAAM;GACN,SAAS;GACV;EACF;CACD,iBAAiB;EACf,gBAAgB;EAChB,QAAQ;EACR,MAAM;EACN,MAAM;EACN,SAAS;EACV;CACD,UAAU;EACR,gBAAgB;GACd,OAAO;GACP,MAAM;GACP;EACD,QAAQ;GACN,OAAO;GACP,MAAM;GACP;EACD,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACD,SAAS;GACP,QAAQ;GACR,OAAO;GACP,QAAQ;GACT;EACF;CACF,CAAC;AAEF,MAAM,iCAAiC,GAAG;CACxC,MAAM;CACN,iBAAiB,EACf,QAAQ,OACT;CACD,UAAU,EACR,QAAQ;EACN,OAAO;EACP,MAAM;EACP,EACF;CACF,CAAC;AAEF,MAAM,kCAAkC,GAAG;CACzC,MAAM;CACN,iBAAiB,EACf,QAAQ,OACT;CACD,UAAU,EACR,QAAQ;EACN,OAAO;EACP,MAAM;EACP,EACF;CACF,CAAC;AAEF,MAAM,wCAAwC,GAAG;CAC/C,MAAM;CACN,iBAAiB;EACf,QAAQ;EACR,MAAM;EACP;CACD,UAAU;EACR,QAAQ;GACN,OAAO;GACP,MAAM;GACP;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACF;CACF,CAAC;AAEF,MAAM,+BACJ,oBAAC,eAAD;CAAe,eAAY;CAAO,MAAM;CAAkB,aAAa;CAAK;AA2C9E,MAAM,sBAAsB,EAC1B,WACA,QACA,MACA,QACA,OACA,aACA,aACA,cACA,SAAS,OACT,8BAA8B,OAC9B,MACA,MACA,SACA,UACA,SACA,WACA,UACA,GAAG,YAC0B;CAC7B,MAAM,cAAc,8BAA8B;CAElD,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;CAC1E,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;CAC1E,MAAM,kBAAkB,iCACtB,SACA,YAAY,QACb;CAED,MAAM,oBAAoB,YAAY;CACtC,MAAM,aACJ,CAAC,sBAAsB,SAAS,UAAa,WAAW;CAC1D,MAAM,iBAAiB,QAAQ,UAAU,MAAM,oBAAoB,OAAO;CAC1E,MAAM,sBACJ,MAAM,oBACL,kBAAkB,aAAa,SAAS;CAC3C,MAAM,mBAAmB,YAAY,YAAY;AAEjD,iBAAgB;AACd,MAAI,QAAQ,IAAI,aAAa,gBAAgB,CAAC,kBAC5C;AAGF,MAAI,SAAS,OACX,SAAQ,KACN,kIACD;AAGH,MAAI,WAAW,OACb,SAAQ,KACN,oIACD;IAEF;EAAC;EAAmB;EAAM;EAAO,CAAC;CAErC,MAAM,qBAAqB,iBAAiB,UAAa;CACzD,MAAM,uBAAuB,qBACzB,+BACA;CACJ,MAAM,0BAA0B,yBAAyB;CAEzD,MAAM,cAAc,aACjB,UAAmC;AAClC,YAAU,MAAe;AAEzB,MAAI,MAAM,iBACR;AAGF,MAAI,iBACF,OAAM,gBAAgB;IAG1B,CAAC,SAAS,iBAAiB,CAC5B;CAED,MAAM,kBACJ,aACC,SAAS,eAAe,eAAe,0BACtC;EACG,cACC,oBAAC,QAAD;GACE,WAAU;GACV,aAAU;aAET;GACI,IACL;EAEJ,qBAAC,QAAD;GAAM,WAAW,+BAA+B,EAAE,QAAQ,CAAC;aAA3D,CACG,QACC,oBAAC,QAAD;IACE,WAAW,gCAAgC,EAAE,QAAQ,CAAC;IACtD,aAAU;cAET;IACI,IACL,MACH,cACC,oBAAC,QAAD;IACE,WAAW,sCAAsC;KAC/C;KACA,MAAM;KACP,CAAC;IACF,aAAU;cAET;IACI,IACL,KACC;;EAEN,0BACC,oBAAC,QAAD;GACE,eAAa,qBAAqB,SAAS;GAC3C,WAAW,GACT,qDACA,qBACE,CAAC,+BACD,6BACH;GACD,aAAW,YAAY,OAAO,SAAS;GACvC,aAAU;aAET;GACI,IACL;EACH,MACD;CAEN,MAAM,QAAiC;EACrC,QAAQ;EACR,aAAa;EACb,UAAU;EACV,MAAM,YAAY;EAClB,MAAM;EACN,MAAM;EACN,MAAM;EACN,SAAS;EACV;CACD,MAAM,oBACJ,OAAO,cAAc,aAAa,UAAU,MAAM,GAAG;CAEvD,MAAM,kBAAkB,GACtB,2BAA2B;EACzB,gBAAgB,QAAQ,YAAY;EACpC;EACA,MAAM;EACN,MAAM;EACN,SAAS;EACV,CAAC,EACF,kBACD;CAED,MAAM,iBACJ,WACC,QACI,gBAAqC;EACpC,MAAM,EAAE,UAAU,gBAAgB,GAAG,gBAAgB;AAErD,SACE,oBAAC,KAAD;GAAG,GAAI;GAAmB;aACvB;GACC;KAGR;CAEN,MAAM,sBAAsB,UAAU;EACpC,gBAAgB;EAChB,OAAO,WACL;GACE,gBAAgB;GAChB,iBAAiB,mBAAmB,SAAS;GAC7C,UAAU;GACV,WAAW;GACX,UAAU,aAAa,SAAY;GACnC,SAAS;GACT;GACA,MAAM,aAAa,SAAY;GAChC,EACD,MACD;EACD,QAAQ;EACR;EACD,CAAC;AAEF,KAAI,kBACF,QACE,oBAACC,YAAqB,SAAtB;EACE,iBAAe,mBAAmB,SAAS;EAC3C,WAAW;EACX,eAAa,iBAAiB,SAAS;EACvC,aAAW;EACX,aAAU;EACV,aAAW;EACX,gBAAc;EACd,UAAU;EACD;EACE;EACX,MAAK;YAEJ;EAC4B;AAInC,QAAO;;;;;AChYT,MAAM,2BAA2B,EAC/B,WACA,MACA,GAAG,YAC+B;CAClC,MAAM,eAAe,8BAA8B,KAAK;AAExD,QACE,oBAAC,WAAD;EACE,WAAW,GACT,iBAAiB,YAAY,sBAAsB,aACnD,UACD;EACD,aAAU;EACV,aAAW;EACX,GAAI;EACJ;;;;;ACdN,MAAM,iCAAiC,GAAG;CACxC,MAAM;CACN,iBAAiB;EACf,MAAM;EACN,MAAM;EACP;CACD,UAAU;EACR,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACF;CACF,CAAC;AAQF,MAAM,0BAA0B,EAC9B,WACA,WAAW,OACX,MACA,MACA,GAAG,YAC8B;CACjC,MAAM,cAAc,8BAA8B;CAClD,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;CAC1E,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;AAE1E,QACE,qBAAC,OAAD;EACE,WAAW,GACT,+BAA+B;GAC7B,MAAM;GACN,MAAM;GACP,CAAC,EACF,UACD;EACD,aAAW;EACX,aAAU;EACV,aAAW;EACX,GAAI;YAXN,CAaG,WACC,oBAAC,UAAD;GACE,WAAU;GACV,aAAU;GACV,IACA,MACJ,oBAAC,UAAD;GACE,WAAU;GACV,aAAU;GACV,OACE,EACE,oCAAoC,QACrC;GAEH,EACE;;;;;;AC/DV,MAAM,4BAA4B,GAAG;CACnC,MAAM;CACN,iBAAiB;EACf,MAAM;EACN,MAAM;EACN,SAAS;EACV;CACD,UAAU;EACR,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACD,SAAS;GACP,QAAQ;GACR,OAAO;GACP,QAAQ;GACT;EACF;CACF,CAAC;AASF,MAAM,qBAAqB,EACzB,WACA,cAAc,MACd,MACA,MACA,SACA,GAAG,YACyB;CAC5B,MAAM,cAAc,8BAA8B;CAClD,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;CAC1E,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;CAC1E,MAAM,kBAAkB,iCACtB,SACA,YAAY,QACb;CAED,MAAM,oBAAoB,GACxB,0BAA0B;EACxB,MAAM;EACN,MAAM;EACN,SAAS;EACV,CAAC,EACF,UACD;AAED,KAAI,CAAC,YAAY,YACf,QACE,oBAAC,MAAD;EACE,WAAW;EACX,aAAU;EACV,aAAW;EACX,aAAU;EACV,aAAW;EACX,gBAAc;EACd,GAAI;EACJ;AAIN,QACE,oBAACC,YAAqB,OAAtB;EAAyC;YACvC,oBAAC,MAAD;GACE,WAAW;GACX,aAAW,YAAY,OAAO,SAAS;GACvC,aAAW;GACX,aAAU;GACV,aAAW;GACX,gBAAc;GACd,QAAQ,eAAe,CAAC,YAAY;GACpC,GAAI;GACJ;EACyB;;;;;ACjGjC,MAAM,yBAAyB,EAC7B,WACA,GAAG,YAEH,oBAAC,MAAD;CACE,WAAW,GACT,qDACA,UACD;CACD,aAAU;CACV,GAAI;CACJ;;;;ACEJ,MAAM,gCAAgC,GAAG;CACvC,MAAM;CACN,kBAAkB;EAChB;GACE,WACE;GACF,MAAM;GACN,SAAS;GACV;EACD;GACE,WAAW;GACX,MAAM;GACN,SAAS;GACV;EACD;GACE,WACE;GACF,MAAM;GACN,SAAS;GACV;EACD;GACE,WACE;GACF,MAAM;GACN,SAAS;GACV;EACD;GACE,WACE;GACF,MAAM;GACN,SAAS;GACV;EACD;GACE,WACE;GACF,MAAM;GACN,SAAS;GACV;EACF;CACD,iBAAiB;EACf,QAAQ;EACR,MAAM;EACN,MAAM;EACN,SAAS;EACV;CACD,UAAU;EACR,QAAQ;GACN,OAAO;GACP,MAAM;GACP;EACD,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACD,SAAS;GACP,QAAQ;GACR,OAAO;GACP,QAAQ;GACT;EACF;CACF,CAAC;AAUF,MAAM,yBAAyB,EAC7B,WACA,QACA,QACA,MACA,MACA,SACA,GAAG,YAC6B;CAChC,MAAM,cAAc,8BAA8B;CAClD,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;CAC1E,MAAM,eAAe,8BAA8B,MAAM,YAAY,KAAK;CAC1E,MAAM,kBAAkB,iCACtB,SACA,YAAY,QACb;CACD,MAAM,iBAAiB,UAAU,MAAM,oBAAoB;CAC3D,MAAM,sBACJ,MAAM,oBAAoB,iBAAiB,SAAS;AAEtD,QAAO,UAAU;EACf,gBAAgB;EAChB,OAAO,WACL;GACE,gBAAgB;GAChB,WAAW,GACT,8BAA8B;IAC5B,QAAQ;IACR,MAAM;IACN,MAAM;IACN,SAAS;IACV,CAAC,EACF,UACD;GACF,EACD,MACD;EACD;EACA,OAAO;GACL,QAAQ;GACR,MAAM;GACN,MAAM;GACN,MAAM;GACN,SAAS;GACV;EACF,CAAC;;;;;AC/GJ,MAAM,yBAAyB,GAAG;CAChC,MAAM;CACN,iBAAiB;EACf,MAAM;EACN,MAAM;EACN,SAAS;EACV;CACD,UAAU;EACR,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;GACL;EACD,MAAM;GACJ,SAAS;GACT,SAAS;GACV;EACD,SAAS;GACP,QAAQ;GACR,OAAO;GACP,QAAQ;GACT;EACF;CACF,CAAC;AAoBF,MAAM,kBAAkB,EACtB,WACA,MAAM,cACN,OAAO,WACP,UAAU,SACV,UACA,GAAG,YACsB;CACzB,MAAM,OAAO,iBAAiB,aAAa;CAQ3C,MAAM,oBACJ,OAAO,cAAc,aAAa,UARG;EACrC;EACA,MAAM;EACN;EACA;EACD,CAGmD,GAAG;CACvD,MAAM,eAAe,eACZ;EAAE;EAAM;EAAM;EAAS,GAC9B;EAAC;EAAM;EAAM;EAAQ,CACtB;AAED,QACE,oBAAC,sBAAsB,UAAvB;EAAgC,OAAO;YACrC,oBAAC,OAAD;GACE,WAAW,GACT,uBAAuB;IACrB;IACA;IACA;IACD,CAAC,EACF,kBACD;GACD,aAAW;GACX,aAAU;GACV,aAAW;GACX,gBAAc;GACd,GAAI;GAEH;GACG;EACyB;;AAIrC,eAAe,SAAS;AACxB,eAAe,QAAQ;AACvB,eAAe,UAAU;AACzB,eAAe,QAAQ;AACvB,eAAe,eAAe;AAC9B,eAAe,aAAa;AAC5B,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB,eAAe,YAAY;AAC3B,eAAe,WAAW;AAC1B,eAAe,MAAM;AACrB,eAAe,UAAU;AACzB,eAAe,UAAU"}
|