@etus/ui 0.4.0-beta.6 → 0.4.0-beta.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-2Y7PQ6ZL.js → chunk-237TQKWH.js} +4 -4
- package/dist/{chunk-2Y7PQ6ZL.js.map → chunk-237TQKWH.js.map} +1 -1
- package/dist/{chunk-KR3IVNQH.js → chunk-2FJJOHHH.js} +16 -10
- package/dist/chunk-2FJJOHHH.js.map +1 -0
- package/dist/{chunk-W4NC5CU5.js → chunk-2Q4I4VDB.js} +4 -4
- package/dist/{chunk-W4NC5CU5.js.map → chunk-2Q4I4VDB.js.map} +1 -1
- package/dist/{chunk-2HM5Z2YP.js → chunk-2YWWZEPE.js} +3 -3
- package/dist/{chunk-2HM5Z2YP.js.map → chunk-2YWWZEPE.js.map} +1 -1
- package/dist/chunk-2Z722V5K.js +231 -0
- package/dist/chunk-2Z722V5K.js.map +1 -0
- package/dist/chunk-37IIHQP4.js +233 -0
- package/dist/chunk-37IIHQP4.js.map +1 -0
- package/dist/{chunk-UFRMZ3M6.js → chunk-3JCV72FO.js} +6 -2
- package/dist/chunk-3JCV72FO.js.map +1 -0
- package/dist/{chunk-HT5XM6XK.js → chunk-43BS3PPX.js} +3 -3
- package/dist/{chunk-HT5XM6XK.js.map → chunk-43BS3PPX.js.map} +1 -1
- package/dist/{chunk-2UGDLAYC.js → chunk-45D4O7RK.js} +10 -3
- package/dist/chunk-45D4O7RK.js.map +1 -0
- package/dist/{chunk-32IJQOUV.js → chunk-4EYYCHLD.js} +4 -4
- package/dist/{chunk-32IJQOUV.js.map → chunk-4EYYCHLD.js.map} +1 -1
- package/dist/{chunk-J62TFQHR.js → chunk-5I7AXWJU.js} +13 -13
- package/dist/chunk-5I7AXWJU.js.map +1 -0
- package/dist/{chunk-65YSTUD2.js → chunk-5SUD32RK.js} +44 -14
- package/dist/chunk-5SUD32RK.js.map +1 -0
- package/dist/{chunk-23BHD62H.js → chunk-5TZDEGZN.js} +4 -4
- package/dist/chunk-5TZDEGZN.js.map +1 -0
- package/dist/{chunk-VPNFYQBL.js → chunk-6DN2UAIR.js} +3 -3
- package/dist/chunk-6DN2UAIR.js.map +1 -0
- package/dist/{chunk-EGYWK2XX.js → chunk-7CTFBOD4.js} +3 -3
- package/dist/{chunk-EGYWK2XX.js.map → chunk-7CTFBOD4.js.map} +1 -1
- package/dist/{chunk-36XTKR3B.js → chunk-BMNCNBPA.js} +3 -3
- package/dist/{chunk-36XTKR3B.js.map → chunk-BMNCNBPA.js.map} +1 -1
- package/dist/{chunk-AWYOWR5N.js → chunk-C5HSYDJC.js} +3 -3
- package/dist/{chunk-AWYOWR5N.js.map → chunk-C5HSYDJC.js.map} +1 -1
- package/dist/{chunk-VFALJSXB.js → chunk-DCUFQJYP.js} +3 -3
- package/dist/chunk-DCUFQJYP.js.map +1 -0
- package/dist/{chunk-LATTRPLQ.js → chunk-E2TI5V67.js} +3 -3
- package/dist/{chunk-LATTRPLQ.js.map → chunk-E2TI5V67.js.map} +1 -1
- package/dist/{chunk-IRKDMISK.js → chunk-G2MAGZHQ.js} +4 -3
- package/dist/chunk-G2MAGZHQ.js.map +1 -0
- package/dist/{chunk-ONQCNOLU.js → chunk-HDOR3SN3.js} +3 -3
- package/dist/{chunk-ONQCNOLU.js.map → chunk-HDOR3SN3.js.map} +1 -1
- package/dist/{chunk-PLLJNHWU.js → chunk-HI3T55XK.js} +3 -33
- package/dist/chunk-HI3T55XK.js.map +1 -0
- package/dist/chunk-HJ4E6YPW.js +236 -0
- package/dist/chunk-HJ4E6YPW.js.map +1 -0
- package/dist/{chunk-LS3WD6IZ.js → chunk-I55QJ4CU.js} +4 -4
- package/dist/{chunk-LS3WD6IZ.js.map → chunk-I55QJ4CU.js.map} +1 -1
- package/dist/{chunk-HKXQLWGR.js → chunk-IOWHM7ZY.js} +13 -11
- package/dist/chunk-IOWHM7ZY.js.map +1 -0
- package/dist/{chunk-ILAV2AZ4.js → chunk-IZC5YFGO.js} +3 -3
- package/dist/{chunk-ILAV2AZ4.js.map → chunk-IZC5YFGO.js.map} +1 -1
- package/dist/{chunk-Y7UFBSAD.js → chunk-KHOCAVQO.js} +3 -3
- package/dist/{chunk-Y7UFBSAD.js.map → chunk-KHOCAVQO.js.map} +1 -1
- package/dist/{chunk-IBVCSZCH.js → chunk-KVJOKWP4.js} +5 -4
- package/dist/chunk-KVJOKWP4.js.map +1 -0
- package/dist/{chunk-KC6CHPT3.js → chunk-KZRTQF64.js} +3 -3
- package/dist/{chunk-KC6CHPT3.js.map → chunk-KZRTQF64.js.map} +1 -1
- package/dist/{chunk-QIETN4UU.js → chunk-LEAK22ZP.js} +3 -3
- package/dist/{chunk-QIETN4UU.js.map → chunk-LEAK22ZP.js.map} +1 -1
- package/dist/{chunk-OWOVCGUZ.js → chunk-M2C7HBR5.js} +3 -3
- package/dist/{chunk-OWOVCGUZ.js.map → chunk-M2C7HBR5.js.map} +1 -1
- package/dist/{chunk-33JGPMUW.js → chunk-M7TPROVH.js} +20 -7
- package/dist/chunk-M7TPROVH.js.map +1 -0
- package/dist/{chunk-AVR3LVOQ.js → chunk-MQMRVBUL.js} +4 -4
- package/dist/{chunk-AVR3LVOQ.js.map → chunk-MQMRVBUL.js.map} +1 -1
- package/dist/{chunk-KPNNSUXM.js → chunk-O7AUE5GP.js} +5 -3
- package/dist/chunk-O7AUE5GP.js.map +1 -0
- package/dist/{chunk-6HEURMY3.js → chunk-OCXGG7UP.js} +5 -5
- package/dist/{chunk-6HEURMY3.js.map → chunk-OCXGG7UP.js.map} +1 -1
- package/dist/{chunk-V7XHE25E.js → chunk-ON7WFRYH.js} +3 -3
- package/dist/{chunk-V7XHE25E.js.map → chunk-ON7WFRYH.js.map} +1 -1
- package/dist/{chunk-FSMHI7DW.js → chunk-OXDWUKGP.js} +3 -3
- package/dist/chunk-OXDWUKGP.js.map +1 -0
- package/dist/{chunk-SJSYKUCL.js → chunk-Q335YODG.js} +3 -3
- package/dist/{chunk-SJSYKUCL.js.map → chunk-Q335YODG.js.map} +1 -1
- package/dist/{chunk-DDM2I5C6.js → chunk-R5OIL4I4.js} +3 -3
- package/dist/{chunk-DDM2I5C6.js.map → chunk-R5OIL4I4.js.map} +1 -1
- package/dist/{chunk-FYJHWYPM.js → chunk-S524YVMO.js} +3 -3
- package/dist/{chunk-FYJHWYPM.js.map → chunk-S524YVMO.js.map} +1 -1
- package/dist/{chunk-OWIFNJXZ.js → chunk-S7TVRVRU.js} +3 -3
- package/dist/chunk-S7TVRVRU.js.map +1 -0
- package/dist/{chunk-TNROOKX3.js → chunk-UDY3IDCY.js} +10 -2
- package/dist/chunk-UDY3IDCY.js.map +1 -0
- package/dist/{chunk-3WOGOTOV.js → chunk-UPYT2XM5.js} +7 -7
- package/dist/chunk-UPYT2XM5.js.map +1 -0
- package/dist/{chunk-YWA63YN3.js → chunk-VAVE4ZJF.js} +2 -2
- package/dist/chunk-VAVE4ZJF.js.map +1 -0
- package/dist/chunk-WKWLKGNI.js +643 -0
- package/dist/chunk-WKWLKGNI.js.map +1 -0
- package/dist/{chunk-Z3FL7LEK.js → chunk-X253YD45.js} +71 -6
- package/dist/chunk-X253YD45.js.map +1 -0
- package/dist/{chunk-6XY7QYVR.js → chunk-X3AXEE3S.js} +3 -3
- package/dist/{chunk-6XY7QYVR.js.map → chunk-X3AXEE3S.js.map} +1 -1
- package/dist/{chunk-R4UOT76L.js → chunk-XAIUZJOJ.js} +8 -8
- package/dist/chunk-XAIUZJOJ.js.map +1 -0
- package/dist/{chunk-ZO2EKJZM.js → chunk-XCZMJA2D.js} +7 -7
- package/dist/{chunk-ZO2EKJZM.js.map → chunk-XCZMJA2D.js.map} +1 -1
- package/dist/{chunk-XRMKL43Y.js → chunk-XOLV7G4S.js} +3 -3
- package/dist/{chunk-XRMKL43Y.js.map → chunk-XOLV7G4S.js.map} +1 -1
- package/dist/chunk-XYYOV5GW.js +186 -0
- package/dist/chunk-XYYOV5GW.js.map +1 -0
- package/dist/{chunk-4MQNDQ4O.js → chunk-YACIRNVP.js} +12 -4
- package/dist/chunk-YACIRNVP.js.map +1 -0
- package/dist/{chunk-JKYB5QAP.js → chunk-YDZBLZVZ.js} +3 -3
- package/dist/{chunk-JKYB5QAP.js.map → chunk-YDZBLZVZ.js.map} +1 -1
- package/dist/{chunk-5XQIH6WM.js → chunk-YM5YBDRM.js} +4 -4
- package/dist/{chunk-5XQIH6WM.js.map → chunk-YM5YBDRM.js.map} +1 -1
- package/dist/{chunk-AUCDXPWH.js → chunk-YQX7XZES.js} +4 -4
- package/dist/{chunk-AUCDXPWH.js.map → chunk-YQX7XZES.js.map} +1 -1
- package/dist/{chunk-CP2PEDG2.js → chunk-Z4KW5VW6.js} +3 -3
- package/dist/chunk-Z4KW5VW6.js.map +1 -0
- package/dist/{chunk-Y3BOERVB.js → chunk-ZEFK3AXP.js} +3 -3
- package/dist/{chunk-Y3BOERVB.js.map → chunk-ZEFK3AXP.js.map} +1 -1
- package/dist/{chunk-L3Z5FAJE.js → chunk-ZEYLSDSG.js} +3 -3
- package/dist/{chunk-L3Z5FAJE.js.map → chunk-ZEYLSDSG.js.map} +1 -1
- package/dist/components/advanced/Calendar/index.js +3 -3
- package/dist/components/advanced/Command/index.js +1 -1
- package/dist/components/advanced/EventCalendar/index.js +3 -3
- package/dist/components/advanced/FileDropzone/index.js +1 -1
- package/dist/components/advanced/FilterBuilder/index.js +3 -3
- package/dist/components/advanced/MarkdownEditor/index.js +2 -2
- package/dist/components/advanced/ReportBuilder/index.js +2 -2
- package/dist/components/advanced/RichTextEditor/index.js +2 -2
- package/dist/components/advanced/index.js +13 -13
- package/dist/components/data-display/AreaChart/index.js +1 -1
- package/dist/components/data-display/BarChart/index.js +1 -1
- package/dist/components/data-display/Carousel/index.js +3 -3
- package/dist/components/data-display/ChartCard/index.js +2 -2
- package/dist/components/data-display/DashboardFilterbar/index.js +5 -5
- package/dist/components/data-display/DataTable/FilterBuilder/index.js +3 -3
- package/dist/components/data-display/DataTable/index.js +6 -6
- package/dist/components/data-display/ImageGallery/index.js +6 -6
- package/dist/components/data-display/KPICard/index.js +3 -3
- package/dist/components/data-display/Lightbox/index.js +1 -1
- package/dist/components/data-display/LineChart/index.js +1 -1
- package/dist/components/data-display/List/index.js +2 -2
- package/dist/components/data-display/Table/index.js +1 -1
- package/dist/components/data-display/VirtualTable/index.js +2 -2
- package/dist/components/data-display/index.js +29 -29
- package/dist/components/feedback/Alert/index.js +1 -1
- package/dist/components/feedback/AlertDialog/index.js +3 -3
- package/dist/components/feedback/ConfirmModal/index.js +4 -4
- package/dist/components/feedback/Modal/index.js +1 -1
- package/dist/components/feedback/index.js +8 -8
- package/dist/components/forms/ColorPicker/index.js +1 -1
- package/dist/components/forms/DatePicker/index.js +4 -4
- package/dist/components/forms/DateRangePicker/index.js +4 -4
- package/dist/components/forms/IftaLabel/index.js +1 -1
- package/dist/components/forms/InputGroup/index.js +3 -3
- package/dist/components/forms/MultiSelect/index.js +2 -1
- package/dist/components/forms/RadioButton/index.js +1 -1
- package/dist/components/forms/Rating/index.js +1 -1
- package/dist/components/forms/Slider/index.js +1 -1
- package/dist/components/forms/TagsInput/index.js +2 -2
- package/dist/components/forms/ToggleGroup/index.js +1 -1
- package/dist/components/forms/index.js +19 -19
- package/dist/components/index.js +104 -104
- package/dist/components/layout/index.js +2 -2
- package/dist/components/navigation/AccountSwitch/index.js +3 -3
- package/dist/components/navigation/Drawer/index.js +1 -1
- package/dist/components/navigation/DropdownMenu/index.js +1 -1
- package/dist/components/navigation/Header/index.js +1 -1
- package/dist/components/navigation/MobileSidebar/index.js +3 -3
- package/dist/components/navigation/Pagination/index.js +3 -3
- package/dist/components/navigation/Sidebar/index.js +3 -3
- package/dist/components/navigation/UserProfileDropdown/index.js +1 -1
- package/dist/components/navigation/WorkspaceDropdown/index.js +1 -1
- package/dist/components/navigation/index.js +13 -13
- package/dist/components/primitives/AspectRatio/index.js +1 -1
- package/dist/components/primitives/Badge/index.js +1 -1
- package/dist/components/primitives/Button/index.js +2 -2
- package/dist/components/primitives/ConfirmButton/index.js +4 -4
- package/dist/components/primitives/ProgressBar/index.js +1 -1
- package/dist/components/primitives/SplitButton/index.js +2 -2
- package/dist/components/primitives/StatusIndicator/index.js +1 -1
- package/dist/components/primitives/Tag/index.js +1 -1
- package/dist/components/primitives/Toggle/index.js +1 -1
- package/dist/components/primitives/index.js +16 -16
- package/dist/components/workflow/ApprovalFlow/index.js +3 -3
- package/dist/components/workflow/CommentSystem/index.js +3 -3
- package/dist/components/workflow/Dashboard/index.js +3 -3
- package/dist/components/workflow/DashboardBuilder/index.js +3 -3
- package/dist/components/workflow/KanbanBoard/index.js +3 -3
- package/dist/components/workflow/ReportGenerator/index.js +3 -3
- package/dist/components/workflow/TaskStatus/index.js +2 -2
- package/dist/components/workflow/Wizard/index.js +3 -3
- package/dist/components/workflow/index.js +12 -12
- package/dist/index.d.ts +156 -50
- package/dist/index.js +104 -104
- package/dist/styles.css +23 -0
- package/package.json +2 -2
- package/dist/chunk-23BHD62H.js.map +0 -1
- package/dist/chunk-2UGDLAYC.js.map +0 -1
- package/dist/chunk-33JGPMUW.js.map +0 -1
- package/dist/chunk-3WOGOTOV.js.map +0 -1
- package/dist/chunk-4MQNDQ4O.js.map +0 -1
- package/dist/chunk-65YSTUD2.js.map +0 -1
- package/dist/chunk-CP2PEDG2.js.map +0 -1
- package/dist/chunk-FSMHI7DW.js.map +0 -1
- package/dist/chunk-GAP3OZR7.js +0 -223
- package/dist/chunk-GAP3OZR7.js.map +0 -1
- package/dist/chunk-HKXQLWGR.js.map +0 -1
- package/dist/chunk-IBVCSZCH.js.map +0 -1
- package/dist/chunk-ICAQYWCX.js +0 -153
- package/dist/chunk-ICAQYWCX.js.map +0 -1
- package/dist/chunk-IRKDMISK.js.map +0 -1
- package/dist/chunk-J62TFQHR.js.map +0 -1
- package/dist/chunk-KPNNSUXM.js.map +0 -1
- package/dist/chunk-KR3IVNQH.js.map +0 -1
- package/dist/chunk-OWIFNJXZ.js.map +0 -1
- package/dist/chunk-PLLJNHWU.js.map +0 -1
- package/dist/chunk-R4UOT76L.js.map +0 -1
- package/dist/chunk-SHS6EGWS.js +0 -226
- package/dist/chunk-SHS6EGWS.js.map +0 -1
- package/dist/chunk-TNROOKX3.js.map +0 -1
- package/dist/chunk-UFRMZ3M6.js.map +0 -1
- package/dist/chunk-VFALJSXB.js.map +0 -1
- package/dist/chunk-VPNFYQBL.js.map +0 -1
- package/dist/chunk-XD5LE64P.js +0 -311
- package/dist/chunk-XD5LE64P.js.map +0 -1
- package/dist/chunk-XV6NXXXP.js +0 -206
- package/dist/chunk-XV6NXXXP.js.map +0 -1
- package/dist/chunk-YWA63YN3.js.map +0 -1
- package/dist/chunk-Z3FL7LEK.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/primitives/Toggle/Toggle.tsx"],"names":[],"mappings":"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","file":"chunk-3WOGOTOV.js","sourcesContent":["\"use client\"\n\nimport type { ToggleGroupProps, ToggleItemProps, ToggleProps } from \"./Toggle.types\"\n\nimport * as TogglePrimitive from \"@radix-ui/react-toggle\"\nimport * as ToggleGroupPrimitive from \"@radix-ui/react-toggle-group\"\nimport { cva } from \"class-variance-authority\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\n\nconst toggleVariants = cva(\n \"inline-flex items-center justify-center gap-[var(--toggle-root-gap)] font-[var(--toggle-root-font-weight)] border-[length:var(--toggle-root-border-width)] transition-all duration-150 hover:bg-[color:var(--toggle-variant-default-bg-hover)] hover:text-[color:var(--toggle-variant-default-color-hover)] hover:shadow-sm active:scale-[0.97] disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-[color:var(--toggle-variant-default-bg-on)] data-[state=on]:text-[color:var(--toggle-variant-default-color-on)] data-[state=on]:shadow-sm [&_svg]:pointer-events-none [&_svg]:size-[var(--toggle-icon-size)] [&_svg]:shrink-0 focus-visible:z-10 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] outline-none aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive whitespace-nowrap\",\n {\n variants: {\n variant: {\n default: \"bg-[color:var(--toggle-variant-default-bg-default)] text-[color:var(--toggle-variant-default-color-default)] border-[color:var(--toggle-variant-default-border)]\",\n outline:\n \"border-[color:var(--toggle-variant-outline-border)] bg-[color:var(--toggle-variant-outline-bg-default)] text-[color:var(--toggle-variant-outline-color-default)] hover:bg-[color:var(--toggle-variant-outline-bg-hover)] hover:text-[color:var(--toggle-variant-outline-color-hover)] data-[state=on]:bg-[color:var(--toggle-variant-outline-bg-on)] data-[state=on]:text-[color:var(--toggle-variant-outline-color-on)]\",\n },\n size: {\n default: \"h-[var(--toggle-size-default-height)] px-[var(--toggle-size-default-padding-x)] min-w-[var(--toggle-size-default-min-width)]\",\n sm: \"h-[var(--toggle-size-sm-height)] px-[var(--toggle-size-sm-padding-x)] min-w-[var(--toggle-size-sm-min-width)]\",\n md: \"h-[var(--toggle-size-md-height)] px-[var(--toggle-size-md-padding-x)] min-w-[var(--toggle-size-md-min-width)]\",\n lg: \"h-[var(--toggle-size-lg-height)] px-[var(--toggle-size-lg-padding-x)] min-w-[var(--toggle-size-lg-min-width)]\",\n },\n /**\n * The shape of the toggle button\n */\n shape: {\n pill: \"rounded-[var(--toggle-root-border-radius-pill)]\",\n rounded: \"rounded-[var(--toggle-root-border-radius-rounded)]\",\n },\n /**\n * Whether the item is connected to adjacent items (spacing=0)\n */\n connected: {\n true: \"rounded-none first:rounded-l-[var(--toggle-root-border-radius-pill)] last:rounded-r-[var(--toggle-root-border-radius-pill)]\",\n false: \"\",\n },\n },\n compoundVariants: [\n {\n variant: \"outline\",\n connected: true,\n className: \"border-l-0 first:border-l\",\n },\n {\n shape: \"rounded\",\n connected: true,\n className: \"first:rounded-l-[var(--toggle-root-border-radius-rounded)] last:rounded-r-[var(--toggle-root-border-radius-rounded)]\",\n },\n ],\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n shape: \"rounded\",\n connected: false,\n },\n }\n)\n\n// Context for sharing group props with items\nconst ToggleGroupContext = React.createContext<{\n shape?: ToggleProps[\"shape\"]\n size?: ToggleProps[\"size\"]\n spacing?: ToggleGroupProps[\"spacing\"]\n variant?: ToggleProps[\"variant\"]\n}>({})\n\nfunction Toggle({\n className,\n variant,\n size,\n shape,\n icon,\n children,\n ...props\n}: ToggleProps) {\n return (\n <TogglePrimitive.Root\n className={cn(toggleVariants({ variant, size, shape, className }))}\n data-slot=\"toggle\"\n {...props}\n >\n {icon && (\n <span className=\"shrink-0\" data-slot=\"toggle-icon\">\n {icon}\n </span>\n )}\n {children}\n </TogglePrimitive.Root>\n )\n}\n\nconst spacingVariants = {\n 0: \"gap-0\",\n 1: \"gap-1\",\n 2: \"gap-2\",\n 3: \"gap-3\",\n 4: \"gap-4\",\n}\n\nfunction ToggleGroup({\n className,\n variant,\n size,\n shape,\n spacing = 1,\n children,\n ...props\n}: ToggleGroupProps) {\n return (\n <ToggleGroupContext value={{ variant, size, shape, spacing }}>\n <ToggleGroupPrimitive.Root\n className={cn(\n \"group/toggle-group inline-flex items-center\",\n spacingVariants[spacing],\n className\n )}\n data-slot=\"toggle-group\"\n data-spacing={spacing}\n {...props}\n >\n {children}\n </ToggleGroupPrimitive.Root>\n </ToggleGroupContext>\n )\n}\n\nfunction ToggleItem({\n className,\n variant,\n size,\n shape,\n icon,\n children,\n ...props\n}: ToggleItemProps) {\n const context = React.use(ToggleGroupContext)\n const resolvedVariant = variant ?? context.variant\n const resolvedSize = size ?? context.size\n const resolvedShape = shape ?? context.shape\n const resolvedSpacing = context.spacing ?? 1\n const isConnected = resolvedSpacing === 0\n\n return (\n <ToggleGroupPrimitive.Item\n className={cn(\n toggleVariants({\n variant: resolvedVariant,\n size: resolvedSize,\n shape: resolvedShape,\n connected: isConnected,\n className,\n })\n )}\n data-slot=\"toggle-item\"\n {...props}\n >\n {icon && (\n <span className=\"shrink-0\" data-slot=\"toggle-icon\">\n {icon}\n </span>\n )}\n {children}\n </ToggleGroupPrimitive.Item>\n )\n}\n\nToggle.Group = ToggleGroup\nToggle.Item = ToggleItem\n\nexport { Toggle, ToggleGroup, ToggleItem, toggleVariants }"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/forms/IftaLabel/IftaLabel.tsx"],"names":[],"mappings":";;;;AAmBA,SAAS,SAAA,CAAU;AAAA,EACjB,QAAA;AAAA,EACA,KAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAmB;AACjB,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAU,KAAA,CAAA,QAAA,EAA6B;AACjE,EAAA,MAAM,cAAoB,KAAA,CAAA,KAAA,EAAM;AAChC,EAAA,MAAM,UAAA,GAAmB,aAAuB,IAAI,CAAA;AAIpD,EAAM,gBAAU,MAAM;AACpB,IAAA,IAAI,WAAW,OAAA,EAAS;AACtB,MAAA,MAAM,KAAA,GAAQ,UAAA,CAAW,OAAA,CAAQ,aAAA,CAAc,yBAAyB,CAAA;AACxE,MAAA,IAAI,KAAA,EAAO;AACT,QAAA,MAAM,UAAA,GAAa,KAAA,CAAM,YAAA,CAAa,IAAI,CAAA;AAC1C,QAAA,IAAI,UAAA,EAAY;AACd,UAAA,UAAA,CAAW,UAAU,CAAA;AAAA,QACvB,CAAA,MAAO;AACL,UAAA,MAAM,QAAQ,CAAA,iBAAA,EAAoB,WAAA,CAAY,UAAA,CAAW,GAAA,EAAK,EAAE,CAAC,CAAA,CAAA;AACjE,UAAA,KAAA,CAAM,YAAA,CAAa,MAAM,KAAK,CAAA;AAC9B,UAAA,UAAA,CAAW,KAAK,CAAA;AAAA,QAClB;AACA,QAAA,IAAI,MAAM,OAAA,KAAY,OAAA,IAAW,CAAC,KAAA,CAAM,YAAA,CAAa,aAAa,CAAA,EAAG;AACnE,UAAA,KAAA,CAAM,YAAA,CAAa,eAAe,GAAG,CAAA;AAAA,QACvC;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAA,EAAG,CAAC,WAAA,EAAa,QAAQ,CAAC,CAAA;AAG1B,EAAA,uBACE,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,GAAA,EAAK,UAAA;AAAA,MACL,SAAA,EAAW,EAAA;AAAA,QACT,4KAAA;AAAA,QACA,2EAAA;AAAA,QACA,kFAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,WAAA,EAAU,YAAA;AAAA,MACT,GAAG,KAAA;AAAA,MAEJ,QAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,UAAC,OAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,8bAAA;AAAA,YACV,WAAA,EAAU,iBAAA;AAAA,YACV,OAAA,EAAS,OAAA;AAAA,YAER,QAAA,EAAA;AAAA;AAAA,SACH;AAAA,QACC;AAAA;AAAA;AAAA,GACH;AAEJ","file":"chunk-4MQNDQ4O.js","sourcesContent":["import type { IftaLabelProps } from \"./IftaLabel.types\"\n\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\n\n/**\n * IftaLabel - A wrapper component with an always-visible label inside the input\n *\n * IFTA = \"In Field Top Aligned\" - the label is always visible at the top\n * of the input container, unlike FloatLabel which animates on focus.\n *\n * @example\n * ```tsx\n * <IftaLabel label=\"Email\">\n * <TextInput value={email} onChange={(e) => setEmail(e.target.value)} />\n * </IftaLabel>\n * ```\n */\nfunction IftaLabel({\n children,\n label,\n className,\n ...props\n}: IftaLabelProps) {\n const [inputId, setInputId] = React.useState<string | undefined>()\n const generatedId = React.useId()\n const wrapperRef = React.useRef<HTMLDivElement>(null)\n\n // Find the input element and get its id\n /* eslint-disable react-you-might-not-need-an-effect/no-adjust-state-on-prop-change, @eslint-react/hooks-extra/no-direct-set-state-in-use-effect -- DOM discovery for label-input association */\n React.useEffect(() => {\n if (wrapperRef.current) {\n const input = wrapperRef.current.querySelector(\"input, select, textarea\")\n if (input) {\n const existingId = input.getAttribute(\"id\")\n if (existingId) {\n setInputId(existingId)\n } else {\n const newId = `ifta-label-input-${generatedId.replaceAll(':', \"\")}`\n input.setAttribute(\"id\", newId)\n setInputId(newId)\n }\n if (input.tagName === \"INPUT\" && !input.hasAttribute(\"placeholder\")) {\n input.setAttribute(\"placeholder\", \" \")\n }\n }\n }\n }, [generatedId, children])\n /* eslint-enable react-you-might-not-need-an-effect/no-adjust-state-on-prop-change, @eslint-react/hooks-extra/no-direct-set-state-in-use-effect */\n\n return (\n <div\n ref={wrapperRef}\n className={cn(\n \"relative group [&_input]:pt-[var(--ifta-label-wrapper-padding-top)] [&_input]:pb-[var(--ifta-label-wrapper-padding-bottom)] [&_input]:h-[var(--ifta-label-wrapper-height)]\",\n \"has-[input:disabled]:opacity-[var(--ifta-label-wrapper-disabled-opacity)]\",\n \"has-[input:disabled]:pointer-events-none has-[input:disabled]:cursor-not-allowed\",\n className\n )}\n data-slot=\"ifta-label\"\n {...props}\n >\n <label\n className=\"pointer-events-none absolute left-3 top-1.5 text-xs font-normal text-[color:var(--ifta-label-label-color-muted)] group-focus-within:text-[color:var(--ifta-label-label-color-foreground)] group-has-[input:not(:placeholder-shown)]:text-[color:var(--ifta-label-label-color-foreground)] group-has-[[aria-invalid=true]]:text-[color:var(--ifta-label-label-color-destructive)] group-has-[input:disabled]:text-[color:var(--ifta-label-label-color-muted)]\"\n data-slot=\"ifta-label-text\"\n htmlFor={inputId}\n >\n {label}\n </label>\n {children}\n </div>\n )\n}\n\nexport { IftaLabel }\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/data-display/Table/Table.variants.ts","../src/components/data-display/Table/Table.tsx"],"names":[],"mappings":";;;;;AAQO,IAAM,sBAAA,GAAyB,GAAA;AAAA;AAAA,EAEpC,iCAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,mBAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,QAAA,EAAU;AAAA;AACZ;AAEJ,CAAA;AAKO,IAAM,aAAA,GAAgB,GAAA;AAAA;AAAA,EAE3B,+BAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,iGAAA;AAAA,QACT,OAAA,EAAS,iGAAA;AAAA,QACT,WAAA,EAAa;AAAA;AACf,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS;AAAA;AACX;AAEJ,CAAA;AAKO,IAAM,gBAAA,GAAmB,GAAA;AAAA;AAAA,EAE9B,mEAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,SAAA,EAAW;AAAA,QACT,IAAA,EAAM,yCAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,sCAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA,OAAA,EAAS;AAAA,QACP,IAAA,EAAM,0CAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,SAAA,EAAW,IAAA;AAAA,MACX,QAAA,EAAU,KAAA;AAAA,MACV,OAAA,EAAS;AAAA;AACX;AAEJ,CAAA;AAKO,IAAM,iBAAA,GAAoB,GAAA;AAAA;AAAA,EAE/B,wMAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,QAAA,EAAU;AAAA,QACR,IAAA,EAAM,8CAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA,MAAA,EAAQ;AAAA,QACN,IAAA,EAAM,iCAAA;AAAA,QACN,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,QAAA,EAAU,KAAA;AAAA,MACV,MAAA,EAAQ;AAAA;AACV;AAEJ,CAAA;AAKO,IAAM,iBAAA,GAAoB,GAAA;AAAA;AAAA,EAE/B,sGAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,KAAA,EAAO;AAAA,QACL,IAAA,EAAM,WAAA;AAAA,QACN,MAAA,EAAQ,aAAA;AAAA,QACR,KAAA,EAAO;AAAA;AACT,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,KAAA,EAAO;AAAA;AACT;AAEJ,CAAA;ACxGA,SAAS,MAAM,EAAE,SAAA,EAAW,GAAA,EAAK,GAAG,OAAM,EAAkC;AAC1E,EAAA,uBACE,GAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,sBAAA,EAAuB,EAAG,wBAAwB,CAAA;AAAA,MAChE,WAAA,EAAU,iBAAA;AAAA,MAEV,QAAA,kBAAA,GAAA;AAAA,QAAC,OAAA;AAAA,QAAA;AAAA,UACC,GAAA;AAAA,UACA,SAAA,EAAW,EAAA,CAAG,aAAA,EAAc,EAAG,SAAS,CAAA;AAAA,UACxC,WAAA,EAAU,OAAA;AAAA,UACT,GAAG;AAAA;AAAA;AACN;AAAA,GACF;AAEJ;AAEA,SAAS,WAAA,CAAY,EAAE,SAAA,EAAW,GAAG,OAAM,EAAkC;AAC3E,EAAA,uBACE,GAAA;AAAA,IAAC,OAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,iBAAA,EAAmB,SAAS,CAAA;AAAA,MAC1C,WAAA,EAAU,cAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,SAAA,CAAU,EAAE,SAAA,EAAW,GAAG,OAAM,EAAkC;AACzE,EAAA,uBACE,GAAA;AAAA,IAAC,OAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,4BAAA,EAA8B,SAAS,CAAA;AAAA,MACrD,WAAA,EAAU,YAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,WAAA,CAAY,EAAE,SAAA,EAAW,GAAG,OAAM,EAAkC;AAC3E,EAAA,uBACE,GAAA;AAAA,IAAC,OAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,yHAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,WAAA,EAAU,cAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,QAAA,CAAS,EAAE,SAAA,EAAW,GAAG,OAAM,EAA+B;AACrE,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,gBAAA,EAAiB;AAAA,QACjB;AAAA,OACF;AAAA,MACA,WAAA,EAAU,WAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,SAAA,CAAU,EAAE,SAAA,EAAW,GAAG,OAAM,EAA+B;AACtE,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,iBAAA,EAAkB;AAAA,QAClB,qEAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,WAAA,EAAU,YAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,SAAA,CAAU,EAAE,SAAA,EAAW,GAAG,OAAM,EAA+B;AACtE,EAAA,uBACE,GAAA;AAAA,IAAC,IAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,iBAAA,EAAkB;AAAA,QAClB,qEAAA;AAAA,QACA;AAAA,OACF;AAAA,MACA,WAAA,EAAU,YAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,YAAA,CAAa;AAAA,EACpB,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAoC;AAClC,EAAA,uBACE,GAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA,CAAG,mHAAA,EAAqH,SAAS,CAAA;AAAA,MAC5I,WAAA,EAAU,eAAA;AAAA,MACT,GAAG;AAAA;AAAA,GACN;AAEJ","file":"chunk-65YSTUD2.js","sourcesContent":["// Table/Table.variants.ts\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * Table container style variants using CVA\n *\n * @see https://cva.style/docs\n */\nexport const tableContainerVariants = cva(\n // Base styles (always applied)\n \"relative w-full overflow-x-auto\",\n {\n variants: {\n bordered: {\n true: \"rounded-md border\",\n false: \"\",\n },\n },\n defaultVariants: {\n bordered: false,\n },\n }\n)\n\n/**\n * Table style variants\n */\nexport const tableVariants = cva(\n // Base styles (always applied)\n \"w-full caption-bottom text-sm\",\n {\n variants: {\n density: {\n compact: \"[&_td]:py-[var(--table-cell-padding-compact-y)] [&_th]:py-[var(--table-cell-padding-compact-y)]\",\n default: \"[&_td]:py-[var(--table-cell-padding-default-y)] [&_th]:py-[var(--table-cell-padding-default-y)]\",\n comfortable: \"[&_td]:py-[var(--table-cell-padding-comfortable-y)] [&_th]:py-[var(--table-cell-padding-comfortable-y)]\",\n },\n },\n defaultVariants: {\n density: \"default\",\n },\n }\n)\n\n/**\n * Table row style variants\n */\nexport const tableRowVariants = cva(\n // Base styles (always applied)\n \"border-b border-[color:var(--table-row-border)] transition-colors\",\n {\n variants: {\n hoverable: {\n true: \"hover:bg-[color:var(--table-row-hover)]\",\n false: \"\",\n },\n selected: {\n true: \"bg-[color:var(--table-row-selected)]\",\n false: \"\",\n },\n striped: {\n true: \"even:bg-[color:var(--table-row-striped)]\",\n false: \"\",\n },\n },\n defaultVariants: {\n hoverable: true,\n selected: false,\n striped: false,\n },\n }\n)\n\n/**\n * Table header cell style variants\n */\nexport const tableHeadVariants = cva(\n // Base styles (always applied)\n \"text-[length:var(--text-size-sm-font-size)] h-[var(--table-header-height)] px-[var(--table-header-padding-x)] text-left align-middle font-medium text-[color:var(--table-header-fg)] whitespace-nowrap\",\n {\n variants: {\n sortable: {\n true: \"cursor-pointer select-none hover:bg-muted/50\",\n false: \"\",\n },\n sticky: {\n true: \"sticky top-0 bg-background z-10\",\n false: \"\",\n },\n },\n defaultVariants: {\n sortable: false,\n sticky: false,\n },\n }\n)\n\n/**\n * Table cell style variants\n */\nexport const tableCellVariants = cva(\n // Base styles (always applied)\n \"px-[var(--table-cell-padding-x)] align-middle whitespace-nowrap text-[length:var(--table-cell-text)]\",\n {\n variants: {\n align: {\n left: \"text-left\",\n center: \"text-center\",\n right: \"text-right\",\n },\n },\n defaultVariants: {\n align: \"left\",\n },\n }\n)\n\n// Export variant prop types\nexport type TableContainerVariantProps = VariantProps<typeof tableContainerVariants>\nexport type TableVariantProps = VariantProps<typeof tableVariants>\nexport type TableRowVariantProps = VariantProps<typeof tableRowVariants>\nexport type TableHeadVariantProps = VariantProps<typeof tableHeadVariants>\nexport type TableCellVariantProps = VariantProps<typeof tableCellVariants>\n","import * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n tableCellVariants,\n tableContainerVariants,\n tableHeadVariants,\n tableRowVariants,\n tableVariants,\n} from \"./Table.variants\"\n\nfunction Table({ className, ref, ...props }: React.ComponentProps<\"table\">) {\n return (\n <div\n className={cn(tableContainerVariants(), \"w-full overflow-x-auto\")}\n data-slot=\"table-container\"\n >\n <table\n ref={ref}\n className={cn(tableVariants(), className)}\n data-slot=\"table\"\n {...props}\n />\n </div>\n )\n}\n\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return (\n <thead\n className={cn(\"[&_tr]:border-b\", className)}\n data-slot=\"table-header\"\n {...props}\n />\n )\n}\n\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n data-slot=\"table-body\"\n {...props}\n />\n )\n}\n\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n className={cn(\n \"bg-[color:var(--table-footer-bg)] border-[color:var(--table-footer-border)] border-t font-medium [&>tr]:last:border-b-0\",\n className\n )}\n data-slot=\"table-footer\"\n {...props}\n />\n )\n}\n\nfunction TableRow({ className, ...props }: React.ComponentProps<\"tr\">) {\n return (\n <tr\n className={cn(\n tableRowVariants(),\n className\n )}\n data-slot=\"table-row\"\n {...props}\n />\n )\n}\n\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n className={cn(\n tableHeadVariants(),\n \"[&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]\",\n className\n )}\n data-slot=\"table-head\"\n {...props}\n />\n )\n}\n\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n className={cn(\n tableCellVariants(),\n \"[&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]\",\n className\n )}\n data-slot=\"table-cell\"\n {...props}\n />\n )\n}\n\nfunction TableCaption({\n className,\n ...props\n}: React.ComponentProps<\"caption\">) {\n return (\n <caption\n className={cn(\"text-[color:var(--table-caption-fg)] mt-[var(--table-caption-margin-top)] text-[length:var(--table-caption-text)]\", className)}\n data-slot=\"table-caption\"\n {...props}\n />\n )\n}\n\nexport {\n Table,\n TableBody,\n TableCaption,\n TableCell,\n TableFooter,\n TableHead,\n TableHeader,\n TableRow,\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/forms/Slider/Slider.variants.ts","../src/components/forms/Slider/Slider.tsx"],"names":[],"mappings":"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","file":"chunk-CP2PEDG2.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\nexport const sliderRootVariants = cva(\n [\n \"relative flex w-full touch-none items-center select-none\",\n \"data-[disabled]:opacity-50\",\n \"data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col\",\n ],\n {\n variants: {\n size: {\n sm: \"\",\n md: \"\",\n lg: \"\",\n },\n labelType: {\n none: \"\",\n text: \"pb-8\", // Space for bottom label\n tooltip: \"pt-12\", // Space for top tooltip\n },\n hasMarks: {\n true: \"pb-6\", // Space for marks below track\n false: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n labelType: \"none\",\n hasMarks: false,\n },\n }\n)\n\nexport const sliderTrackVariants = cva(\n [\n \"bg-[color:var(--slider-track-bg)] relative grow overflow-hidden rounded-full\",\n \"data-[orientation=horizontal]:w-full\",\n \"data-[orientation=vertical]:h-full\",\n ],\n {\n variants: {\n size: {\n sm: \"data-[orientation=horizontal]:h-[var(--slider-track-height-sm)] data-[orientation=vertical]:w-[var(--slider-track-height-sm)]\",\n md: \"data-[orientation=horizontal]:h-[var(--slider-track-height-md)] data-[orientation=vertical]:w-[var(--slider-track-height-md)]\",\n lg: \"data-[orientation=horizontal]:h-[var(--slider-track-height-lg)] data-[orientation=vertical]:w-[var(--slider-track-height-lg)]\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport const sliderRangeVariants = cva(\n [\n \"absolute\",\n \"data-[orientation=horizontal]:h-full\",\n \"data-[orientation=vertical]:w-full\",\n ],\n {\n variants: {\n size: {\n sm: \"\",\n md: \"\",\n lg: \"\",\n },\n color: {\n default: \"bg-[color:var(--slider-range-bg-default)]\",\n primary: \"bg-[color:var(--slider-range-bg-default)]\",\n success: \"bg-success\",\n warning: \"bg-warning\",\n error: \"bg-destructive\",\n },\n },\n defaultVariants: {\n size: \"md\",\n color: \"default\",\n },\n }\n)\n\nexport const sliderThumbVariants = cva(\n [\n \"block shrink-0 rounded-full\",\n \"bg-[color:var(--slider-thumb-bg)] border-2\",\n \"shadow-md transition-shadow\",\n \"hover:shadow-lg\",\n \"focus-visible:outline-hidden\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n ],\n {\n variants: {\n size: {\n sm: \"size-[var(--slider-thumb-size-sm)]\",\n md: \"size-[var(--slider-thumb-size-md)]\",\n lg: \"size-[var(--slider-thumb-size-lg)]\",\n },\n color: {\n default: \"border-[color:var(--slider-thumb-border)] focus-visible:shadow-[0_0_0_var(--slider-focus-ring-width)_var(--slider-focus-ring-primary),var(--slider-thumb-drop-shadow)]\",\n primary: \"border-primary focus-visible:shadow-[0_0_0_var(--slider-focus-ring-width)_var(--ring),var(--slider-thumb-drop-shadow)]\",\n success: \"border-success focus-visible:shadow-[0_0_0_var(--slider-focus-ring-width)_var(--success),var(--slider-thumb-drop-shadow)]\",\n warning: \"border-warning focus-visible:shadow-[0_0_0_var(--slider-focus-ring-width)_var(--warning),var(--slider-thumb-drop-shadow)]\",\n error: \"border-destructive focus-visible:shadow-[0_0_0_var(--slider-focus-ring-width)_var(--destructive),var(--slider-thumb-drop-shadow)]\",\n },\n },\n defaultVariants: {\n size: \"md\",\n color: \"default\",\n },\n }\n)\n\nexport const sliderLabelVariants = cva(\n [\n \"absolute left-1/2 -translate-x-1/2 text-center whitespace-nowrap\",\n \"font-medium text-slider-label-text\",\n ],\n {\n variants: {\n size: {\n sm: \"text-sm\",\n md: \"text-base\",\n lg: \"text-base\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport const sliderTooltipVariants = cva(\n [\n \"absolute left-1/2 -translate-x-1/2 bottom-full mb-2\",\n \"bg-slider-tooltip-bg border border-slider-tooltip-border rounded-lg\",\n \"px-3 py-2 shadow-lg\",\n \"text-xs font-semibold text-slider-tooltip-text text-center whitespace-nowrap\",\n ],\n {\n variants: {\n size: {\n sm: \"px-2 py-1.5 text-xs\",\n md: \"px-3 py-2 text-xs\",\n lg: \"px-3 py-2 text-sm\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport const sliderMarkContainerVariants = cva(\n [\n \"absolute w-full\",\n \"data-[orientation=horizontal]:top-full data-[orientation=horizontal]:mt-2\",\n \"data-[orientation=vertical]:left-full data-[orientation=vertical]:ml-2 data-[orientation=vertical]:h-full data-[orientation=vertical]:w-auto\",\n ],\n {\n variants: {\n size: {\n sm: \"\",\n md: \"\",\n lg: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport const sliderMarkVariants = cva(\n [\n \"absolute flex flex-col items-center\",\n \"data-[orientation=vertical]:flex-row\",\n ],\n {\n variants: {\n size: {\n sm: \"\",\n md: \"\",\n lg: \"\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport const sliderMarkTickVariants = cva(\n [\n \"rounded-full bg-border-semantic-strong\",\n ],\n {\n variants: {\n size: {\n sm: \"size-1\",\n md: \"size-1.5\",\n lg: \"size-2\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport const sliderMarkLabelVariants = cva(\n [\n \"text-text-secondary whitespace-nowrap\",\n \"data-[orientation=horizontal]:mt-1\",\n \"data-[orientation=vertical]:ml-2\",\n ],\n {\n variants: {\n size: {\n sm: \"text-xs\",\n md: \"text-xs\",\n lg: \"text-sm\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport type SliderRootVariantProps = VariantProps<typeof sliderRootVariants>\nexport type SliderTrackVariantProps = VariantProps<typeof sliderTrackVariants>\nexport type SliderRangeVariantProps = VariantProps<typeof sliderRangeVariants>\nexport type SliderThumbVariantProps = VariantProps<typeof sliderThumbVariants>\nexport type SliderLabelVariantProps = VariantProps<typeof sliderLabelVariants>\nexport type SliderTooltipVariantProps = VariantProps<typeof sliderTooltipVariants>\nexport type SliderMarkContainerVariantProps = VariantProps<typeof sliderMarkContainerVariants>\nexport type SliderMarkVariantProps = VariantProps<typeof sliderMarkVariants>\nexport type SliderMarkTickVariantProps = VariantProps<typeof sliderMarkTickVariants>\nexport type SliderMarkLabelVariantProps = VariantProps<typeof sliderMarkLabelVariants>\n","\"use client\"\n\nimport type { SliderMark, SliderProps } from \"./Slider.types\"\n\nimport * as SliderPrimitive from \"@radix-ui/react-slider\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n sliderLabelVariants,\n sliderMarkContainerVariants,\n sliderMarkLabelVariants,\n sliderMarkTickVariants,\n sliderMarkVariants,\n sliderRangeVariants,\n sliderRootVariants,\n sliderThumbVariants,\n sliderTooltipVariants,\n sliderTrackVariants,\n} from \"./Slider.variants\"\n\n/**\n * Default format function for slider values\n */\nconst defaultFormatValue = (value: number): string => `${String(value)}%`\n\n/**\n * Generate marks array from step value\n */\nfunction generateMarksFromStep(\n min: number,\n max: number,\n step: number\n): SliderMark[] {\n const marks: SliderMark[] = []\n for (let value = min; value <= max; value += step) {\n marks.push({ value })\n }\n return marks\n}\n\n/**\n * Slider - A range input component with optional value labels\n *\n * Based on Figma Slider/Range design. Supports:\n * - Single or multiple thumbs (range slider)\n * - Label types: none, text (bottom), tooltip (floating)\n * - Three sizes: sm, md, lg\n * - Color variants: default, primary, success, warning, error\n * - Marks/tick indicators along the track\n * - Accessible aria-valuetext via getAriaValueText\n *\n * @example\n * ```tsx\n * // Simple slider\n * <Slider defaultValue={[50]} />\n *\n * // Range slider with bottom labels\n * <Slider\n * defaultValue={[20, 80]}\n * labelType=\"text\"\n * />\n *\n * // Slider with marks\n * <Slider\n * defaultValue={[50]}\n * marks={[\n * { value: 0, label: \"0%\" },\n * { value: 50, label: \"50%\" },\n * { value: 100, label: \"100%\" }\n * ]}\n * />\n *\n * // Slider with color variant\n * <Slider defaultValue={[75]} color=\"success\" />\n *\n * // Slider with accessible value text\n * <Slider\n * defaultValue={[50]}\n * getAriaValueText={(value) => `${value} percent`}\n * />\n * ```\n */\nfunction Slider({\n className,\n defaultValue,\n value,\n min = 0,\n max = 100,\n step = 1,\n size = \"md\",\n labelType = \"none\",\n color = \"default\",\n formatValue = defaultFormatValue,\n marks,\n getAriaValueText,\n // eslint-disable-next-line @typescript-eslint/unbound-method\n onValueChange,\n orientation = \"horizontal\",\n ...props\n}: SliderProps) {\n // Track internal values for uncontrolled mode\n const [internalValues, setInternalValues] = React.useState<number[]>(() => {\n if (value) return value\n if (defaultValue) return defaultValue\n return [min]\n })\n\n // Use controlled value if provided, otherwise internal state\n const currentValues = value ?? internalValues\n\n // Handle value changes\n const handleValueChange = React.useCallback(\n (newValues: number[]) => {\n if (!value) {\n setInternalValues(newValues)\n }\n onValueChange?.(newValues)\n },\n [value, onValueChange]\n )\n\n // Compute marks array\n const computedMarks = React.useMemo(() => {\n if (!marks) return null\n if (marks === true) {\n return generateMarksFromStep(min, max, step)\n }\n return marks\n }, [marks, min, max, step])\n\n const hasMarks = Boolean(computedMarks && computedMarks.length > 0)\n\n return (\n <SliderPrimitive.Root\n data-label-type={labelType}\n data-orientation={orientation}\n data-slot=\"slider\"\n {...(defaultValue ? { defaultValue } : {})}\n {...(value ? { value } : {})}\n className={cn(\n sliderRootVariants({ size, labelType, hasMarks }),\n className\n )}\n max={max}\n min={min}\n orientation={orientation}\n step={step}\n onValueChange={handleValueChange}\n {...props}\n >\n <SliderPrimitive.Track\n className={cn(sliderTrackVariants({ size }))}\n data-slot=\"slider-track\"\n >\n <SliderPrimitive.Range\n className={cn(sliderRangeVariants({ size, color }))}\n data-slot=\"slider-range\"\n />\n </SliderPrimitive.Track>\n\n {currentValues.map((thumbValue, index) => (\n <SliderPrimitive.Thumb\n // eslint-disable-next-line @eslint-react/no-array-index-key -- Slider thumbs have no unique identifier, index is stable\n key={index}\n aria-valuetext={getAriaValueText?.(thumbValue, index)}\n className={cn(sliderThumbVariants({ size, color }), \"relative\")}\n data-slot=\"slider-thumb\"\n >\n {/* Bottom text label */}\n {labelType === \"text\" && (\n <span\n className={cn(sliderLabelVariants({ size }), \"top-full mt-2\")}\n data-slot=\"slider-label\"\n >\n {formatValue(thumbValue)}\n </span>\n )}\n\n {/* Floating tooltip */}\n {labelType === \"tooltip\" && (\n <span\n className={cn(sliderTooltipVariants({ size }))}\n data-slot=\"slider-tooltip\"\n >\n {formatValue(thumbValue)}\n </span>\n )}\n </SliderPrimitive.Thumb>\n ))}\n\n {/* Marks/tick indicators */}\n {hasMarks && computedMarks && (\n <div\n className={cn(sliderMarkContainerVariants({ size }))}\n data-orientation={orientation}\n data-slot=\"slider-marks\"\n >\n {computedMarks.map((mark) => {\n const percent = ((mark.value - min) / (max - min)) * 100\n const positionStyle =\n orientation === \"vertical\"\n ? { bottom: `${String(percent)}%`, transform: \"translateY(50%)\" }\n : { left: `${String(percent)}%`, transform: \"translateX(-50%)\" }\n\n return (\n <div\n key={mark.value}\n className={cn(sliderMarkVariants({ size }))}\n data-orientation={orientation}\n data-slot=\"slider-mark\"\n style={positionStyle}\n >\n <span\n className={cn(sliderMarkTickVariants({ size }))}\n data-slot=\"slider-mark-tick\"\n />\n {mark.label && (\n <span\n className={cn(sliderMarkLabelVariants({ size }))}\n data-orientation={orientation}\n data-slot=\"slider-mark-label\"\n >\n {mark.label}\n </span>\n )}\n </div>\n )\n })}\n </div>\n )}\n </SliderPrimitive.Root>\n )\n}\n\nexport { Slider }\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/navigation/DropdownMenu/DropdownMenu.variants.ts","../src/components/navigation/DropdownMenu/DropdownMenu.tsx"],"names":[],"mappings":"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","file":"chunk-FSMHI7DW.js","sourcesContent":["// DropdownMenu/DropdownMenu.variants.ts\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * Shared animation and transition styles for menu content\n */\nconst menuContentBase = [\n \"bg-popover text-popover-foreground\",\n \"z-[var(--dropdown-menu-content-z-index)] min-w-[var(--dropdown-menu-content-min-width)] overflow-hidden rounded-[var(--dropdown-menu-content-radius)] border-[var(--dropdown-menu-content-border-width)] p-[var(--dropdown-menu-content-padding)]\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n \"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95\",\n \"data-[side=bottom]:slide-in-from-top-2\",\n \"data-[side=left]:slide-in-from-right-2\",\n \"data-[side=right]:slide-in-from-left-2\",\n \"data-[side=top]:slide-in-from-bottom-2\",\n]\n\n/**\n * Shared base styles for interactive menu items\n */\nconst menuItemBase = [\n \"relative flex cursor-default items-center rounded-[var(--dropdown-menu-item-radius)] text-[length:var(--dropdown-menu-item-text-size)] outline-hidden select-none\",\n \"data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-[var(--dropdown-menu-item-icon-size)]\",\n]\n\n/**\n * DropdownMenuContent variant styles\n */\nexport const dropdownMenuContentVariants = cva([\n ...menuContentBase,\n \"shadow-md\",\n \"max-h-(--radix-dropdown-menu-content-available-height)\",\n \"origin-(--radix-dropdown-menu-content-transform-origin)\",\n \"overflow-x-hidden overflow-y-auto\",\n])\n\n/**\n * DropdownMenuSubContent variant styles\n */\nexport const dropdownMenuSubContentVariants = cva([\n ...menuContentBase,\n \"shadow-lg\",\n \"origin-(--radix-dropdown-menu-content-transform-origin)\",\n])\n\n/**\n * DropdownMenuItem variant styles\n */\nexport const dropdownMenuItemVariants = cva(\n [\n ...menuItemBase,\n \"[&_svg:not([class*='text-'])]:text-muted-foreground\",\n \"px-[var(--dropdown-menu-item-padding-x)] py-[var(--dropdown-menu-item-padding-y)] gap-[var(--dropdown-menu-item-gap)]\",\n ],\n {\n variants: {\n inset: {\n true: \"pl-[var(--dropdown-menu-item-inset-padding-left)]\",\n false: \"\",\n },\n variant: {\n default: \"focus:bg-accent focus:text-accent-foreground\",\n destructive: [\n \"text-destructive\",\n \"focus:bg-destructive/10 dark:focus:bg-destructive/20\",\n \"focus:text-destructive\",\n \"*:[svg]:!text-destructive\",\n ],\n },\n },\n defaultVariants: {\n inset: false,\n variant: \"default\",\n },\n }\n)\n\n/**\n * DropdownMenuSubTrigger variant styles\n */\nexport const dropdownMenuSubTriggerVariants = cva(\n [\n ...menuItemBase,\n \"focus:bg-accent focus:text-accent-foreground\",\n \"data-[state=open]:bg-accent data-[state=open]:text-accent-foreground\",\n \"[&_svg:not([class*='text-'])]:text-muted-foreground\",\n \"px-[var(--dropdown-menu-item-padding-x)] py-[var(--dropdown-menu-item-padding-y)] gap-[var(--dropdown-menu-item-gap)]\",\n ],\n {\n variants: {\n inset: {\n true: \"pl-[var(--dropdown-menu-item-inset-padding-left)]\",\n false: \"\",\n },\n },\n defaultVariants: {\n inset: false,\n },\n }\n)\n\n/**\n * DropdownMenuCheckboxItem variant styles\n */\nexport const dropdownMenuCheckboxItemVariants = cva([\n ...menuItemBase,\n \"focus:bg-accent focus:text-accent-foreground\",\n \"py-[var(--dropdown-menu-item-padding-y)] pr-[var(--dropdown-menu-item-padding-x)] pl-[var(--dropdown-menu-item-inset-padding-left)] gap-[var(--dropdown-menu-item-gap)]\",\n])\n\n/**\n * DropdownMenuRadioItem variant styles\n */\nexport const dropdownMenuRadioItemVariants = cva([\n ...menuItemBase,\n \"focus:bg-accent focus:text-accent-foreground\",\n \"py-[var(--dropdown-menu-item-padding-y)] pr-[var(--dropdown-menu-item-padding-x)] pl-[var(--dropdown-menu-item-inset-padding-left)] gap-[var(--dropdown-menu-item-gap)]\",\n])\n\n/**\n * DropdownMenuLabel variant styles\n */\nexport const dropdownMenuLabelVariants = cva(\n [\"px-[var(--dropdown-menu-item-padding-x)] py-[var(--dropdown-menu-item-padding-y)] text-[length:var(--dropdown-menu-item-text-size)] font-medium\"],\n {\n variants: {\n inset: {\n true: \"pl-[var(--dropdown-menu-item-inset-padding-left)]\",\n false: \"\",\n },\n },\n defaultVariants: {\n inset: false,\n },\n }\n)\n\n/**\n * DropdownMenuSeparator variant styles\n */\nexport const dropdownMenuSeparatorVariants = cva([\"bg-border -mx-[var(--dropdown-menu-separator-margin-x)] my-[var(--dropdown-menu-separator-margin-y)] h-[var(--dropdown-menu-separator-height)]\"])\n\n/**\n * DropdownMenuShortcut variant styles\n */\nexport const dropdownMenuShortcutVariants = cva([\n \"text-muted-foreground ml-auto text-[length:var(--dropdown-menu-shortcut-text-size)] tracking-widest\",\n])\n\n/**\n * Item indicator wrapper styles\n */\nexport const dropdownMenuIndicatorWrapperVariants = cva([\n \"pointer-events-none absolute left-[var(--dropdown-menu-indicator-left)] flex size-[var(--dropdown-menu-indicator-size)] items-center justify-center\",\n])\n\nexport type DropdownMenuItemVariantProps = VariantProps<\n typeof dropdownMenuItemVariants\n>\nexport type DropdownMenuSubTriggerVariantProps = VariantProps<\n typeof dropdownMenuSubTriggerVariants\n>\nexport type DropdownMenuLabelVariantProps = VariantProps<\n typeof dropdownMenuLabelVariants\n>\n\n","\"use client\"\n\nimport type {\n DropdownMenuCheckboxItemProps,\n DropdownMenuContentProps,\n DropdownMenuGroupProps,\n DropdownMenuItemProps,\n DropdownMenuLabelProps,\n DropdownMenuPortalProps,\n DropdownMenuProps,\n DropdownMenuRadioGroupProps,\n DropdownMenuRadioItemProps,\n DropdownMenuSeparatorProps,\n DropdownMenuShortcutProps,\n DropdownMenuSubContentProps,\n DropdownMenuSubProps,\n DropdownMenuSubTriggerProps,\n DropdownMenuTriggerProps,\n} from \"./DropdownMenu.types\"\n\nimport * as DropdownMenuPrimitive from \"@radix-ui/react-dropdown-menu\"\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from \"lucide-react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n dropdownMenuCheckboxItemVariants,\n dropdownMenuContentVariants,\n dropdownMenuIndicatorWrapperVariants,\n dropdownMenuItemVariants,\n dropdownMenuLabelVariants,\n dropdownMenuRadioItemVariants,\n dropdownMenuSeparatorVariants,\n dropdownMenuShortcutVariants,\n dropdownMenuSubContentVariants,\n dropdownMenuSubTriggerVariants,\n} from \"./DropdownMenu.variants\"\n\n/**\n * DropdownMenu - A menu that appears when triggered by a button or other element.\n *\n * Built on top of Radix UI DropdownMenu primitive with additional styling.\n *\n * @example\n * <DropdownMenu>\n * <DropdownMenuTrigger>Open Menu</DropdownMenuTrigger>\n * <DropdownMenuContent>\n * <DropdownMenuItem>Item 1</DropdownMenuItem>\n * <DropdownMenuItem>Item 2</DropdownMenuItem>\n * </DropdownMenuContent>\n * </DropdownMenu>\n */\nfunction DropdownMenu({ ...props }: DropdownMenuProps) {\n return <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />\n}\n\n/**\n * DropdownMenuPortal - Renders dropdown menu content in a portal.\n */\nfunction DropdownMenuPortal({ ...props }: DropdownMenuPortalProps) {\n return (\n <DropdownMenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />\n )\n}\n\n/**\n * DropdownMenuTrigger - Button that opens the dropdown menu.\n */\nfunction DropdownMenuTrigger({ ...props }: DropdownMenuTriggerProps) {\n return (\n <DropdownMenuPrimitive.Trigger\n data-slot=\"dropdown-menu-trigger\"\n {...props}\n />\n )\n}\n\n/**\n * DropdownMenuContent - Main content container for the dropdown menu.\n */\nfunction DropdownMenuContent({\n className,\n sideOffset = 4,\n ...props\n}: DropdownMenuContentProps) {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n className={cn(dropdownMenuContentVariants(), className)}\n data-slot=\"dropdown-menu-content\"\n sideOffset={sideOffset}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n )\n}\n\n/**\n * DropdownMenuGroup - Groups related menu items together.\n */\nfunction DropdownMenuGroup({ ...props }: DropdownMenuGroupProps) {\n return (\n <DropdownMenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />\n )\n}\n\n/**\n * DropdownMenuItem - An interactive menu item.\n *\n * Supports inset layout and destructive variant.\n */\nfunction DropdownMenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: DropdownMenuItemProps) {\n return (\n <DropdownMenuPrimitive.Item\n className={cn(dropdownMenuItemVariants({ inset, variant }), className)}\n data-inset={inset}\n data-slot=\"dropdown-menu-item\"\n data-variant={variant}\n {...props}\n />\n )\n}\n\n/**\n * DropdownMenuCheckboxItem - A menu item that can be checked/unchecked.\n */\nfunction DropdownMenuCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: DropdownMenuCheckboxItemProps) {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n checked={checked ?? false}\n className={cn(dropdownMenuCheckboxItemVariants(), className)}\n data-slot=\"dropdown-menu-checkbox-item\"\n {...props}\n >\n <span className={cn(dropdownMenuIndicatorWrapperVariants())}>\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n )\n}\n\n/**\n * DropdownMenuRadioGroup - Groups radio items together.\n */\nfunction DropdownMenuRadioGroup({ ...props }: DropdownMenuRadioGroupProps) {\n return (\n <DropdownMenuPrimitive.RadioGroup\n data-slot=\"dropdown-menu-radio-group\"\n {...props}\n />\n )\n}\n\n/**\n * DropdownMenuRadioItem - A radio menu item within a radio group.\n */\nfunction DropdownMenuRadioItem({\n className,\n children,\n ...props\n}: DropdownMenuRadioItemProps) {\n return (\n <DropdownMenuPrimitive.RadioItem\n className={cn(dropdownMenuRadioItemVariants(), className)}\n data-slot=\"dropdown-menu-radio-item\"\n {...props}\n >\n <span className={cn(dropdownMenuIndicatorWrapperVariants())}>\n <DropdownMenuPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n )\n}\n\n/**\n * DropdownMenuLabel - A non-interactive label for menu sections.\n */\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: DropdownMenuLabelProps) {\n return (\n <DropdownMenuPrimitive.Label\n className={cn(dropdownMenuLabelVariants({ inset }), className)}\n data-inset={inset}\n data-slot=\"dropdown-menu-label\"\n {...props}\n />\n )\n}\n\n/**\n * DropdownMenuSeparator - A visual separator between menu sections.\n */\nfunction DropdownMenuSeparator({\n className,\n ...props\n}: DropdownMenuSeparatorProps) {\n return (\n <DropdownMenuPrimitive.Separator\n className={cn(dropdownMenuSeparatorVariants(), className)}\n data-slot=\"dropdown-menu-separator\"\n {...props}\n />\n )\n}\n\n/**\n * DropdownMenuShortcut - Displays keyboard shortcut hints.\n */\nfunction DropdownMenuShortcut({\n className,\n ...props\n}: DropdownMenuShortcutProps) {\n return (\n <span\n className={cn(dropdownMenuShortcutVariants(), className)}\n data-slot=\"dropdown-menu-shortcut\"\n {...props}\n />\n )\n}\n\n/**\n * DropdownMenuSub - Container for nested submenus.\n */\nfunction DropdownMenuSub({ ...props }: DropdownMenuSubProps) {\n return (\n <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />\n )\n}\n\n/**\n * DropdownMenuSubTrigger - Trigger for opening a submenu.\n *\n * Includes a chevron icon indicator.\n */\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: DropdownMenuSubTriggerProps) {\n return (\n <DropdownMenuPrimitive.SubTrigger\n className={cn(dropdownMenuSubTriggerVariants({ inset }), className)}\n data-inset={inset}\n data-slot=\"dropdown-menu-sub-trigger\"\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n )\n}\n\n/**\n * DropdownMenuSubContent - Content container for submenus.\n */\nfunction DropdownMenuSubContent({\n className,\n ...props\n}: DropdownMenuSubContentProps) {\n return (\n <DropdownMenuPrimitive.SubContent\n className={cn(dropdownMenuSubContentVariants(), className)}\n data-slot=\"dropdown-menu-sub-content\"\n {...props}\n />\n )\n}\n\nexport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuPortal,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n}\n"]}
|
package/dist/chunk-GAP3OZR7.js
DELETED
|
@@ -1,223 +0,0 @@
|
|
|
1
|
-
import { ChartTooltipContent, ChartContainer, ChartTooltip, ChartLegend, ChartLegendContent } from './chunk-7I6KK6QE.js';
|
|
2
|
-
import { cn } from './chunk-HRNDJU7D.js';
|
|
3
|
-
import * as React from 'react';
|
|
4
|
-
import { BarChart as BarChart$1, CartesianGrid, XAxis, Label, YAxis, Bar } from 'recharts';
|
|
5
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
6
|
-
|
|
7
|
-
function normalizeSeriesConfig(series) {
|
|
8
|
-
return series.map(
|
|
9
|
-
(s) => typeof s === "string" ? { dataKey: s } : s
|
|
10
|
-
);
|
|
11
|
-
}
|
|
12
|
-
function BarChart({
|
|
13
|
-
allowDecimals = true,
|
|
14
|
-
autoMinValue = false,
|
|
15
|
-
barCategoryGap,
|
|
16
|
-
barGap = 4,
|
|
17
|
-
className,
|
|
18
|
-
config,
|
|
19
|
-
customTooltip,
|
|
20
|
-
data,
|
|
21
|
-
enableLegendSlider = false,
|
|
22
|
-
gridDashArray = "3 3",
|
|
23
|
-
intervalType,
|
|
24
|
-
layout = "vertical",
|
|
25
|
-
legendPosition = "bottom",
|
|
26
|
-
maxValue,
|
|
27
|
-
minValue,
|
|
28
|
-
onValueChange,
|
|
29
|
-
radius = 4,
|
|
30
|
-
series,
|
|
31
|
-
showGrid = true,
|
|
32
|
-
showLegend = false,
|
|
33
|
-
showTooltip = true,
|
|
34
|
-
showXAxis = true,
|
|
35
|
-
showYAxis = true,
|
|
36
|
-
startEndOnly = false,
|
|
37
|
-
tickGap,
|
|
38
|
-
tooltipCallback,
|
|
39
|
-
tooltipIndicator = "dot",
|
|
40
|
-
variant = "default",
|
|
41
|
-
xAxisKey,
|
|
42
|
-
xAxisLabel,
|
|
43
|
-
xAxisTickFormatter,
|
|
44
|
-
yAxisLabel,
|
|
45
|
-
yAxisTickFormatter,
|
|
46
|
-
yAxisWidth,
|
|
47
|
-
...props
|
|
48
|
-
}) {
|
|
49
|
-
const normalizedSeries = normalizeSeriesConfig(series);
|
|
50
|
-
const isStacked = variant === "stacked" || variant === "stacked100";
|
|
51
|
-
const isHorizontal = layout === "horizontal";
|
|
52
|
-
const prevTooltipStateRef = React.useRef(false);
|
|
53
|
-
const handleBarClick = React.useCallback(
|
|
54
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
55
|
-
(dataKey) => (data2) => {
|
|
56
|
-
if (!onValueChange || !data2?.payload) return;
|
|
57
|
-
const payload = data2.payload;
|
|
58
|
-
const value = payload[dataKey];
|
|
59
|
-
onValueChange({
|
|
60
|
-
category: payload[xAxisKey],
|
|
61
|
-
dataKey,
|
|
62
|
-
payload,
|
|
63
|
-
value: typeof value === "number" ? value : 0
|
|
64
|
-
});
|
|
65
|
-
},
|
|
66
|
-
[onValueChange, xAxisKey]
|
|
67
|
-
);
|
|
68
|
-
const TooltipContentWithCallback = React.useCallback(
|
|
69
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
70
|
-
(props2) => {
|
|
71
|
-
const { active = false, label, payload } = props2;
|
|
72
|
-
if (tooltipCallback && active !== prevTooltipStateRef.current) {
|
|
73
|
-
prevTooltipStateRef.current = active;
|
|
74
|
-
tooltipCallback({
|
|
75
|
-
active,
|
|
76
|
-
label,
|
|
77
|
-
payload: payload?.map((p) => ({
|
|
78
|
-
dataKey: String(p.dataKey),
|
|
79
|
-
value: p.value,
|
|
80
|
-
payload: p.payload
|
|
81
|
-
}))
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
return /* @__PURE__ */ jsx(ChartTooltipContent, { indicator: tooltipIndicator, ...props2 });
|
|
85
|
-
},
|
|
86
|
-
[tooltipCallback, tooltipIndicator]
|
|
87
|
-
);
|
|
88
|
-
const valueDomain = React.useMemo(() => {
|
|
89
|
-
const min = minValue ?? (autoMinValue ? "auto" : 0);
|
|
90
|
-
const max = maxValue ?? "auto";
|
|
91
|
-
return [min, max];
|
|
92
|
-
}, [autoMinValue, maxValue, minValue]);
|
|
93
|
-
const categoryTicks = React.useMemo(() => {
|
|
94
|
-
if (!startEndOnly || data.length < 2) return;
|
|
95
|
-
const first = data[0];
|
|
96
|
-
const last = data[data.length - 1];
|
|
97
|
-
if (!first || !last) return;
|
|
98
|
-
return [first[xAxisKey], last[xAxisKey]];
|
|
99
|
-
}, [data, startEndOnly, xAxisKey]);
|
|
100
|
-
return /* @__PURE__ */ jsx("div", { "data-slot": "bar-chart", ...props, children: /* @__PURE__ */ jsx(
|
|
101
|
-
ChartContainer,
|
|
102
|
-
{
|
|
103
|
-
className: cn(className),
|
|
104
|
-
config,
|
|
105
|
-
children: /* @__PURE__ */ jsxs(
|
|
106
|
-
BarChart$1,
|
|
107
|
-
{
|
|
108
|
-
accessibilityLayer: true,
|
|
109
|
-
margin: {
|
|
110
|
-
left: yAxisLabel ? 20 : 12,
|
|
111
|
-
right: 12,
|
|
112
|
-
bottom: xAxisLabel ? 20 : 0
|
|
113
|
-
},
|
|
114
|
-
barCategoryGap,
|
|
115
|
-
barGap,
|
|
116
|
-
data,
|
|
117
|
-
layout: isHorizontal ? "vertical" : "horizontal",
|
|
118
|
-
children: [
|
|
119
|
-
showGrid && /* @__PURE__ */ jsx(
|
|
120
|
-
CartesianGrid,
|
|
121
|
-
{
|
|
122
|
-
horizontal: !isHorizontal,
|
|
123
|
-
strokeDasharray: gridDashArray,
|
|
124
|
-
vertical: isHorizontal
|
|
125
|
-
}
|
|
126
|
-
),
|
|
127
|
-
showXAxis && (isHorizontal ? /* @__PURE__ */ jsx(
|
|
128
|
-
XAxis,
|
|
129
|
-
{
|
|
130
|
-
axisLine: false,
|
|
131
|
-
domain: valueDomain,
|
|
132
|
-
interval: intervalType,
|
|
133
|
-
minTickGap: tickGap,
|
|
134
|
-
tickFormatter: xAxisTickFormatter,
|
|
135
|
-
tickLine: false,
|
|
136
|
-
tickMargin: 8,
|
|
137
|
-
type: "number",
|
|
138
|
-
children: xAxisLabel && /* @__PURE__ */ jsx(Label, { offset: -5, position: "insideBottom", value: xAxisLabel })
|
|
139
|
-
}
|
|
140
|
-
) : /* @__PURE__ */ jsx(
|
|
141
|
-
XAxis,
|
|
142
|
-
{
|
|
143
|
-
axisLine: false,
|
|
144
|
-
dataKey: xAxisKey,
|
|
145
|
-
interval: intervalType,
|
|
146
|
-
minTickGap: tickGap,
|
|
147
|
-
tickFormatter: xAxisTickFormatter,
|
|
148
|
-
tickLine: false,
|
|
149
|
-
tickMargin: 8,
|
|
150
|
-
ticks: categoryTicks,
|
|
151
|
-
children: xAxisLabel && /* @__PURE__ */ jsx(Label, { offset: -5, position: "insideBottom", value: xAxisLabel })
|
|
152
|
-
}
|
|
153
|
-
)),
|
|
154
|
-
showYAxis && (isHorizontal ? /* @__PURE__ */ jsx(
|
|
155
|
-
YAxis,
|
|
156
|
-
{
|
|
157
|
-
axisLine: false,
|
|
158
|
-
dataKey: xAxisKey,
|
|
159
|
-
tickFormatter: yAxisTickFormatter,
|
|
160
|
-
tickLine: false,
|
|
161
|
-
tickMargin: 8,
|
|
162
|
-
ticks: categoryTicks,
|
|
163
|
-
type: "category",
|
|
164
|
-
width: yAxisWidth,
|
|
165
|
-
children: yAxisLabel && /* @__PURE__ */ jsx(Label, { angle: -90, offset: -5, position: "insideLeft", value: yAxisLabel })
|
|
166
|
-
}
|
|
167
|
-
) : /* @__PURE__ */ jsx(
|
|
168
|
-
YAxis,
|
|
169
|
-
{
|
|
170
|
-
allowDecimals,
|
|
171
|
-
axisLine: false,
|
|
172
|
-
domain: valueDomain,
|
|
173
|
-
tickFormatter: yAxisTickFormatter,
|
|
174
|
-
tickLine: false,
|
|
175
|
-
tickMargin: 8,
|
|
176
|
-
width: yAxisWidth,
|
|
177
|
-
children: yAxisLabel && /* @__PURE__ */ jsx(Label, { angle: -90, offset: -5, position: "insideLeft", value: yAxisLabel })
|
|
178
|
-
}
|
|
179
|
-
)),
|
|
180
|
-
showTooltip && /* @__PURE__ */ jsx(
|
|
181
|
-
ChartTooltip,
|
|
182
|
-
{
|
|
183
|
-
content: customTooltip ?? (tooltipCallback ? /* @__PURE__ */ jsx(TooltipContentWithCallback, {}) : /* @__PURE__ */ jsx(ChartTooltipContent, { indicator: tooltipIndicator })),
|
|
184
|
-
cursor: false
|
|
185
|
-
}
|
|
186
|
-
),
|
|
187
|
-
showLegend && /* @__PURE__ */ jsx(
|
|
188
|
-
ChartLegend,
|
|
189
|
-
{
|
|
190
|
-
align: legendPosition === "left" ? "left" : legendPosition === "right" ? "right" : "center",
|
|
191
|
-
content: /* @__PURE__ */ jsx(ChartLegendContent, { enableSlider: enableLegendSlider }),
|
|
192
|
-
layout: legendPosition === "left" || legendPosition === "right" ? "vertical" : "horizontal",
|
|
193
|
-
verticalAlign: legendPosition === "top" ? "top" : legendPosition === "bottom" ? "bottom" : "middle"
|
|
194
|
-
}
|
|
195
|
-
),
|
|
196
|
-
normalizedSeries.map((seriesConfig) => {
|
|
197
|
-
const { dataKey, radius: seriesRadius, stackId } = seriesConfig;
|
|
198
|
-
const fill = `var(--color-${dataKey})`;
|
|
199
|
-
const barRadius = seriesRadius ?? radius;
|
|
200
|
-
return /* @__PURE__ */ jsx(
|
|
201
|
-
Bar,
|
|
202
|
-
{
|
|
203
|
-
dataKey,
|
|
204
|
-
fill,
|
|
205
|
-
radius: barRadius,
|
|
206
|
-
stackId: isStacked ? "bar-stack" : stackId,
|
|
207
|
-
style: onValueChange ? { cursor: "pointer" } : void 0,
|
|
208
|
-
onClick: onValueChange ? handleBarClick(dataKey) : void 0
|
|
209
|
-
},
|
|
210
|
-
dataKey
|
|
211
|
-
);
|
|
212
|
-
})
|
|
213
|
-
]
|
|
214
|
-
}
|
|
215
|
-
)
|
|
216
|
-
}
|
|
217
|
-
) });
|
|
218
|
-
}
|
|
219
|
-
BarChart.displayName = "BarChart";
|
|
220
|
-
|
|
221
|
-
export { BarChart };
|
|
222
|
-
//# sourceMappingURL=chunk-GAP3OZR7.js.map
|
|
223
|
-
//# sourceMappingURL=chunk-GAP3OZR7.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/data-display/BarChart/BarChart.tsx"],"names":["data","props","RechartsBarChart"],"mappings":"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","file":"chunk-GAP3OZR7.js","sourcesContent":["\"use client\"\n\nimport type {\n BarChartProps,\n BarChartSeriesConfig,\n} from \"./BarChart.types\"\n\nimport * as React from \"react\"\nimport {\n Bar,\n CartesianGrid,\n Label,\n BarChart as RechartsBarChart,\n XAxis,\n YAxis,\n} from \"recharts\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n ChartContainer,\n ChartLegend,\n ChartLegendContent,\n ChartTooltip,\n ChartTooltipContent,\n} from \"../Chart\"\n\n/**\n * Normalize series to BarChartSeriesConfig format\n */\nfunction normalizeSeriesConfig(\n series: (BarChartSeriesConfig | string)[]\n): BarChartSeriesConfig[] {\n return series.map((s) =>\n typeof s === \"string\" ? { dataKey: s } : s\n )\n}\n\n/**\n * BarChart - Data visualization component for categorical comparisons\n *\n * Displays quantitative values as rectangular bars. The height or width\n * of bars is proportional to the values they represent. Ideal for\n * comparing values between categories.\n *\n * @example\n * ```tsx\n * const data = [\n * { month: \"Jan\", desktop: 186, mobile: 80 },\n * { month: \"Feb\", desktop: 305, mobile: 200 },\n * ]\n *\n * const config = {\n * desktop: { label: \"Desktop\", color: \"hsl(var(--chart-1))\" },\n * mobile: { label: \"Mobile\", color: \"hsl(var(--chart-2))\" },\n * }\n *\n * <BarChart\n * data={data}\n * config={config}\n * xAxisKey=\"month\"\n * series={[\"desktop\", \"mobile\"]}\n * />\n * ```\n */\nexport function BarChart({\n allowDecimals = true,\n autoMinValue = false,\n barCategoryGap,\n barGap = 4,\n className,\n config,\n customTooltip,\n data,\n enableLegendSlider = false,\n gridDashArray = \"3 3\",\n intervalType,\n layout = \"vertical\",\n legendPosition = \"bottom\",\n maxValue,\n minValue,\n onValueChange,\n radius = 4,\n series,\n showGrid = true,\n showLegend = false,\n showTooltip = true,\n showXAxis = true,\n showYAxis = true,\n startEndOnly = false,\n tickGap,\n tooltipCallback,\n tooltipIndicator = \"dot\",\n variant = \"default\",\n xAxisKey,\n xAxisLabel,\n xAxisTickFormatter,\n yAxisLabel,\n yAxisTickFormatter,\n yAxisWidth,\n ...props\n}: BarChartProps) {\n const normalizedSeries = normalizeSeriesConfig(series)\n const isStacked = variant === \"stacked\" || variant === \"stacked100\"\n const isHorizontal = layout === \"horizontal\"\n const prevTooltipStateRef = React.useRef<boolean>(false)\n\n // Handle bar click for onValueChange\n const handleBarClick = React.useCallback(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (dataKey: string) => (data: any) => {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n if (!onValueChange || !data?.payload) return\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n const payload = data.payload as Record<string, unknown>\n const value = payload[dataKey]\n onValueChange({\n category: payload[xAxisKey],\n dataKey,\n payload,\n value: typeof value === \"number\" ? value : 0,\n })\n },\n [onValueChange, xAxisKey]\n )\n\n /* eslint-disable react-hooks/static-components, @eslint-react/no-nested-component-definitions, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access -- Intentional: memoized render function with Recharts any-typed props */\n // Custom tooltip content wrapper for tooltipCallback\n const TooltipContentWithCallback = React.useCallback(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (props: any) => {\n const { active = false, label, payload } = props\n\n // Call tooltipCallback when state changes\n if (tooltipCallback && active !== prevTooltipStateRef.current) {\n prevTooltipStateRef.current = active\n tooltipCallback({\n active,\n label,\n payload: payload?.map((p: { dataKey: number | string; payload: Record<string, unknown>; value: number; }) => ({\n dataKey: String(p.dataKey),\n value: p.value,\n payload: p.payload,\n })),\n })\n }\n\n return <ChartTooltipContent indicator={tooltipIndicator} {...props} />\n },\n [tooltipCallback, tooltipIndicator]\n )\n\n // Calculate value axis domain\n const valueDomain = React.useMemo(() => {\n const min = minValue ?? (autoMinValue ? \"auto\" : 0)\n const max = maxValue ?? \"auto\"\n return [min, max] as const\n }, [autoMinValue, maxValue, minValue])\n\n // Calculate category axis ticks for startEndOnly\n const categoryTicks = React.useMemo(() => {\n if (!startEndOnly || data.length < 2) return\n const first = data[0]\n const last = data[data.length - 1]\n if (!first || !last) return\n return [first[xAxisKey], last[xAxisKey]] as string[]\n }, [data, startEndOnly, xAxisKey])\n\n return (\n <div data-slot=\"bar-chart\" {...props}>\n <ChartContainer\n className={cn(className)}\n config={config}\n >\n <RechartsBarChart\n accessibilityLayer\n margin={{\n left: yAxisLabel ? 20 : 12,\n right: 12,\n bottom: xAxisLabel ? 20 : 0,\n }}\n barCategoryGap={barCategoryGap}\n barGap={barGap}\n data={data}\n layout={isHorizontal ? \"vertical\" : \"horizontal\"}\n >\n {showGrid && (\n <CartesianGrid\n horizontal={!isHorizontal}\n strokeDasharray={gridDashArray}\n vertical={isHorizontal}\n />\n )}\n\n {showXAxis && (\n isHorizontal ? (\n <XAxis\n axisLine={false}\n domain={valueDomain}\n interval={intervalType}\n minTickGap={tickGap}\n tickFormatter={xAxisTickFormatter}\n tickLine={false}\n tickMargin={8}\n type=\"number\"\n >\n {xAxisLabel && (\n <Label offset={-5} position=\"insideBottom\" value={xAxisLabel} />\n )}\n </XAxis>\n ) : (\n <XAxis\n axisLine={false}\n dataKey={xAxisKey}\n interval={intervalType}\n minTickGap={tickGap}\n tickFormatter={xAxisTickFormatter}\n tickLine={false}\n tickMargin={8}\n ticks={categoryTicks}\n >\n {xAxisLabel && (\n <Label offset={-5} position=\"insideBottom\" value={xAxisLabel} />\n )}\n </XAxis>\n )\n )}\n\n {showYAxis && (\n isHorizontal ? (\n <YAxis\n axisLine={false}\n dataKey={xAxisKey}\n tickFormatter={yAxisTickFormatter}\n tickLine={false}\n tickMargin={8}\n ticks={categoryTicks}\n type=\"category\"\n width={yAxisWidth}\n >\n {yAxisLabel && (\n <Label angle={-90} offset={-5} position=\"insideLeft\" value={yAxisLabel} />\n )}\n </YAxis>\n ) : (\n <YAxis\n allowDecimals={allowDecimals}\n axisLine={false}\n domain={valueDomain}\n tickFormatter={yAxisTickFormatter}\n tickLine={false}\n tickMargin={8}\n width={yAxisWidth}\n >\n {yAxisLabel && (\n <Label angle={-90} offset={-5} position=\"insideLeft\" value={yAxisLabel} />\n )}\n </YAxis>\n )\n )}\n\n {showTooltip && (\n <ChartTooltip\n content={\n customTooltip\n ?? (tooltipCallback\n ? <TooltipContentWithCallback />\n : <ChartTooltipContent indicator={tooltipIndicator} />)\n }\n cursor={false}\n />\n )}\n\n {showLegend && (\n <ChartLegend\n align={legendPosition === \"left\" ? \"left\" : legendPosition === \"right\" ? \"right\" : \"center\"}\n content={<ChartLegendContent enableSlider={enableLegendSlider} />}\n layout={legendPosition === \"left\" || legendPosition === \"right\" ? \"vertical\" : \"horizontal\"}\n verticalAlign={legendPosition === \"top\" ? \"top\" : legendPosition === \"bottom\" ? \"bottom\" : \"middle\"}\n />\n )}\n\n {normalizedSeries.map((seriesConfig) => {\n const { dataKey, radius: seriesRadius, stackId } = seriesConfig\n\n const fill = `var(--color-${dataKey})`\n const barRadius = seriesRadius ?? radius\n\n return (\n <Bar\n key={dataKey}\n dataKey={dataKey}\n fill={fill}\n radius={barRadius}\n stackId={isStacked ? \"bar-stack\" : stackId}\n style={onValueChange ? { cursor: \"pointer\" } : undefined}\n onClick={onValueChange ? handleBarClick(dataKey) : undefined}\n />\n )\n })}\n </RechartsBarChart>\n </ChartContainer>\n </div>\n )\n}\n\nBarChart.displayName = \"BarChart\"\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/forms/MultiSelect/MultiSelect.variants.ts","../src/components/forms/MultiSelect/MultiSelect.tsx"],"names":["CommandPrimitive"],"mappings":"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","file":"chunk-HKXQLWGR.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * MultiSelectTrigger variant styles using CVA\n */\nexport const multiSelectTriggerVariants = cva(\n // Base styles\n [\n \"flex w-[var(--multiselect-trigger-width)] items-center justify-between gap-2 rounded-[var(--multiselect-trigger-radius)] border bg-transparent\",\n \"text-sm whitespace-normal shadow-xs transition-[color,box-shadow] outline-none\",\n \"data-[placeholder]:text-muted-foreground\",\n \"[&_svg:not([class*='text-'])]:text-muted-foreground\",\n \"focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\",\n \"aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n \"dark:bg-input/30 dark:hover:bg-input/50\",\n \"disabled:cursor-not-allowed disabled:opacity-50\",\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n ],\n {\n variants: {\n size: {\n sm: \"min-h-[var(--multiselect-trigger-min-height-sm)] px-[var(--multiselect-trigger-padding-x-sm)] py-[var(--multiselect-trigger-padding-y-sm)] text-[length:var(--multiselect-trigger-text-sm)]\",\n md: \"min-h-[var(--multiselect-trigger-min-height-md)] px-[var(--multiselect-trigger-padding-x-md)] py-[var(--multiselect-trigger-padding-y-md)] text-[length:var(--multiselect-trigger-text-md)]\",\n lg: \"min-h-[var(--multiselect-trigger-min-height-lg)] px-[var(--multiselect-trigger-padding-x-lg)] py-[var(--multiselect-trigger-padding-y-lg)] text-[length:var(--multiselect-trigger-text-lg)]\",\n },\n variant: {\n default: \"border-input shadow-xs\",\n filled: \"border-transparent bg-muted\",\n flushed: \"rounded-none border-x-0 border-t-0 border-b-input px-0 shadow-none\",\n },\n },\n defaultVariants: {\n size: \"md\",\n variant: \"default\",\n },\n }\n)\n\n/**\n * MultiSelectContent variant styles using CVA\n */\nexport const multiSelectContentVariants = cva(\n // Base styles\n [\n \"bg-[color:var(--multiselect-content-bg)] text-[color:var(--multiselect-content-fg)]\",\n \"z-50 w-[var(--multiselect-content-width)] overflow-hidden rounded-[var(--multiselect-content-radius)] border shadow-[var(--multiselect-content-shadow)] p-0\",\n // Animation classes\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n \"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95\",\n \"data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2\",\n \"data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n ],\n {\n variants: {},\n defaultVariants: {},\n }\n)\n\n/**\n * MultiSelectInput variant styles using CVA\n */\nexport const multiSelectInputVariants = cva(\n [\n \"flex h-[var(--multiselect-input-height)] w-full rounded-md bg-transparent py-[var(--multiselect-input-padding-y)] text-[length:var(--multiselect-input-text)] outline-none\",\n \"placeholder:text-muted-foreground\",\n \"disabled:cursor-not-allowed disabled:opacity-50\",\n ],\n {\n variants: {},\n defaultVariants: {},\n }\n)\n\n/**\n * MultiSelectItem variant styles using CVA\n */\nexport const multiSelectItemVariants = cva(\n [\n \"relative flex cursor-default items-center gap-2 rounded-[var(--multiselect-item-radius)] px-[var(--multiselect-item-padding-x)] py-[var(--multiselect-item-padding-y)] text-[length:var(--multiselect-item-text)]\",\n \"outline-none select-none\",\n \"data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50\",\n \"data-[highlighted=true]:bg-accent data-[highlighted=true]:text-accent-foreground\",\n \"[&_svg:not([class*='text-'])]:text-muted-foreground\",\n \"[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n ],\n {\n variants: {},\n defaultVariants: {},\n }\n)\n\n/**\n * MultiSelectEmpty variant styles using CVA\n */\nexport const multiSelectEmptyVariants = cva(\n [\"py-[var(--multiselect-empty-padding-y)] text-center text-[length:var(--multiselect-empty-text)] text-[color:var(--multiselect-empty-fg)]\"],\n {\n variants: {},\n defaultVariants: {},\n }\n)\n\n/**\n * MultiSelectTag variant styles using CVA\n */\nexport const multiSelectTagVariants = cva(\n [\n \"inline-flex items-center gap-1 rounded-[var(--multiselect-tag-radius)] bg-[color:var(--multiselect-tag-bg)] text-[color:var(--multiselect-tag-fg)]\",\n \"font-medium shrink-0\",\n \"[&_svg]:size-3 [&_svg]:shrink-0\",\n ],\n {\n variants: {\n size: {\n sm: \"text-[length:var(--multiselect-tag-text-sm)] px-[var(--multiselect-tag-padding-x-sm)] py-[var(--multiselect-tag-padding-y-sm)]\",\n md: \"text-[length:var(--multiselect-tag-text-md)] px-[var(--multiselect-tag-padding-x-md)] py-[var(--multiselect-tag-padding-y-md)]\",\n lg: \"text-[length:var(--multiselect-tag-text-lg)] px-[var(--multiselect-tag-padding-x-lg)] py-[var(--multiselect-tag-padding-y-lg)]\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport type MultiSelectTriggerVariantProps = VariantProps<typeof multiSelectTriggerVariants>\nexport type MultiSelectContentVariantProps = VariantProps<typeof multiSelectContentVariants>\nexport type MultiSelectInputVariantProps = VariantProps<typeof multiSelectInputVariants>\nexport type MultiSelectItemVariantProps = VariantProps<typeof multiSelectItemVariants>\nexport type MultiSelectEmptyVariantProps = VariantProps<typeof multiSelectEmptyVariants>\nexport type MultiSelectTagVariantProps = VariantProps<typeof multiSelectTagVariants>\n","import type { MultiSelectProps } from \"./MultiSelect.types\"\n\nimport * as PopoverPrimitive from \"@radix-ui/react-popover\"\nimport { Command as CommandPrimitive } from \"cmdk\"\nimport { CheckIcon, ChevronDownIcon, SearchIcon, XIcon } from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport {\n multiSelectContentVariants,\n multiSelectEmptyVariants,\n multiSelectInputVariants,\n multiSelectItemVariants,\n multiSelectTagVariants,\n multiSelectTriggerVariants,\n} from \"./MultiSelect.variants\"\n\n/**\n * MultiSelect - A multi-selection component with tags display\n *\n * Uses Radix Popover for the dropdown container and cmdk (Command) for\n * search/filter functionality with full keyboard accessibility.\n * Selected items are displayed as removable tags.\n *\n * @example\n * ```tsx\n * <MultiSelect\n * options={[\n * { value: \"apple\", label: \"Apple\" },\n * { value: \"banana\", label: \"Banana\" },\n * ]}\n * placeholder=\"Select fruits...\"\n * onChange={(values) => console.log(values)}\n * />\n * ```\n */\nfunction MultiSelect({\n options,\n value: controlledValue,\n defaultValue = [],\n placeholder = \"Select options...\",\n searchPlaceholder = \"Search...\",\n emptyMessage = \"No results found.\",\n disabled = false,\n error = false,\n errorMessage: _errorMessage,\n icon,\n maxSelected,\n name,\n open: controlledOpen,\n defaultOpen = false,\n onOpenChange,\n onChange,\n onSearch,\n required = false,\n size = \"md\",\n variant = \"default\",\n className,\n ...props\n}: MultiSelectProps) {\n // Handle controlled vs uncontrolled value\n const [internalValue, setInternalValue] = React.useState<string[]>(defaultValue)\n const values = controlledValue ?? internalValue\n\n // Handle controlled vs uncontrolled open state\n const [internalOpen, setInternalOpen] = React.useState(defaultOpen)\n const open = controlledOpen ?? internalOpen\n\n // Search query state\n const [searchQuery, setSearchQuery] = React.useState(\"\")\n\n // Get labels for selected values\n const selectedLabels = React.useMemo(() => {\n return values\n .map((val) => {\n const option = options.find((opt) => opt.value === val)\n return option ? { value: val, label: option.label } : null\n })\n .filter((item): item is { label: string; value: string; } => item !== null)\n }, [values, options])\n\n // Check if max selected limit is reached\n const isMaxReached = maxSelected !== undefined && values.length >= maxSelected\n\n // Handle open state changes\n const handleOpenChange = React.useCallback(\n (newOpen: boolean) => {\n // Prevent opening when disabled\n if (disabled && newOpen) {\n return\n }\n\n if (controlledOpen === undefined) {\n setInternalOpen(newOpen)\n }\n onOpenChange?.(newOpen)\n\n // Clear search when closing\n if (!newOpen) {\n setSearchQuery(\"\")\n }\n },\n [controlledOpen, onOpenChange, disabled]\n )\n\n // Handle value toggle\n const handleToggle = React.useCallback(\n (selectedValue: string) => {\n const newValues = values.includes(selectedValue)\n ? values.filter((v) => v !== selectedValue)\n : isMaxReached\n ? values\n : [...values, selectedValue]\n\n if (controlledValue === undefined) {\n setInternalValue(newValues)\n }\n onChange?.(newValues)\n },\n [values, controlledValue, onChange, isMaxReached]\n )\n\n // Handle tag removal\n const handleRemove = React.useCallback(\n (valueToRemove: string, event?: React.MouseEvent) => {\n event?.stopPropagation()\n const newValues = values.filter((v) => v !== valueToRemove)\n if (controlledValue === undefined) {\n setInternalValue(newValues)\n }\n onChange?.(newValues)\n },\n [values, controlledValue, onChange]\n )\n\n // Handle search input changes\n const handleSearchChange = React.useCallback(\n (query: string) => {\n setSearchQuery(query)\n onSearch?.(query)\n },\n [onSearch]\n )\n\n return (\n <>\n {/* Hidden inputs for form submission */}\n {name &&\n values.map((val) => (\n <input key={val} name={name} type=\"hidden\" value={val} />\n ))}\n <PopoverPrimitive.Root open={open} onOpenChange={handleOpenChange}>\n <PopoverPrimitive.Trigger asChild disabled={disabled}>\n <div\n className={cn(\n multiSelectTriggerVariants({ size, variant }),\n \"cursor-pointer flex-wrap\",\n disabled && \"pointer-events-none\",\n className\n )}\n aria-disabled={disabled || undefined}\n aria-expanded={open}\n aria-haspopup=\"listbox\"\n aria-invalid={error || undefined}\n aria-required={required || undefined}\n data-disabled={disabled || undefined}\n data-error={error || undefined}\n data-size={size}\n data-slot=\"multi-select\"\n data-variant={variant}\n role=\"combobox\"\n tabIndex={disabled ? -1 : 0}\n onKeyDown={(e) => {\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault()\n if (!disabled) {\n handleOpenChange(!open)\n }\n }\n }}\n {...props}\n >\n <div\n className=\"flex flex-1 flex-wrap items-center gap-1\"\n data-slot=\"multi-select-trigger\"\n >\n {icon && (\n <span className=\"shrink-0\" data-slot=\"multi-select-icon\">\n {icon}\n </span>\n )}\n {selectedLabels.length === 0 ? (\n <span data-placeholder className=\"text-muted-foreground\">\n {placeholder}\n </span>\n ) : (\n selectedLabels.map((item) => (\n <span\n key={item.value}\n className={cn(multiSelectTagVariants({ size }))}\n data-slot=\"multi-select-tag\"\n data-value={item.value}\n >\n {item.label}\n <button\n aria-label={`Remove ${item.label}`}\n className=\"ml-0.5 rounded-sm hover:bg-foreground/10 focus:outline-none\"\n tabIndex={-1}\n type=\"button\"\n onClick={(e) => { handleRemove(item.value, e); }}\n >\n <XIcon className=\"size-3\" />\n </button>\n </span>\n ))\n )}\n </div>\n <ChevronDownIcon className=\"size-4 shrink-0 opacity-50\" />\n </div>\n </PopoverPrimitive.Trigger>\n\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n align=\"start\"\n className={cn(multiSelectContentVariants())}\n data-slot=\"multi-select-content\"\n sideOffset={4}\n >\n <CommandPrimitive\n className=\"flex h-full w-full flex-col overflow-hidden\"\n shouldFilter={!onSearch}\n >\n <div className=\"flex items-center border-b px-3\">\n <SearchIcon className=\"mr-2 size-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n className={cn(multiSelectInputVariants())}\n data-slot=\"multi-select-input\"\n placeholder={searchPlaceholder}\n value={searchQuery}\n onValueChange={handleSearchChange}\n />\n </div>\n\n <CommandPrimitive.List className=\"max-h-72 overflow-y-auto overflow-x-hidden p-1\">\n <CommandPrimitive.Empty className={cn(multiSelectEmptyVariants())}>\n {emptyMessage}\n </CommandPrimitive.Empty>\n\n {options.map((option) => {\n const isSelected = values.includes(option.value)\n const isDisabled = option.disabled ?? (!isSelected && isMaxReached)\n\n return (\n <CommandPrimitive.Item\n key={option.value}\n className={cn(multiSelectItemVariants())}\n data-disabled={isDisabled || undefined}\n data-selected={isSelected || undefined}\n data-slot=\"multi-select-item\"\n disabled={isDisabled}\n value={option.label}\n onSelect={() => {\n if (!isDisabled) {\n handleToggle(option.value)\n }\n }}\n >\n <div\n className={cn(\n \"flex size-4 shrink-0 items-center justify-center rounded-sm border border-primary\",\n isSelected\n ? \"bg-primary text-primary-foreground\"\n : \"opacity-50 [&_svg]:invisible\"\n )}\n >\n <CheckIcon className=\"size-3\" />\n </div>\n {option.label}\n </CommandPrimitive.Item>\n )\n })}\n </CommandPrimitive.List>\n </CommandPrimitive>\n </PopoverPrimitive.Content>\n </PopoverPrimitive.Portal>\n </PopoverPrimitive.Root>\n </>\n )\n}\n\nexport { MultiSelect }\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/feedback/AlertDialog/AlertDialog.tsx"],"names":[],"mappings":"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","file":"chunk-IBVCSZCH.js","sourcesContent":["\"use client\"\n\nimport * as AlertDialogPrimitive from \"@radix-ui/react-alert-dialog\"\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { buttonVariants } from \"../../primitives/Button\"\n\nfunction AlertDialog({\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Root>) {\n return <AlertDialogPrimitive.Root data-slot=\"alert-dialog\" {...props} />\n}\n\nfunction AlertDialogTrigger({\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Trigger>) {\n return (\n <AlertDialogPrimitive.Trigger data-slot=\"alert-dialog-trigger\" {...props} />\n )\n}\n\nfunction AlertDialogPortal({\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Portal>) {\n return (\n <AlertDialogPrimitive.Portal data-slot=\"alert-dialog-portal\" {...props} />\n )\n}\n\nfunction AlertDialogOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Overlay>) {\n return (\n <AlertDialogPrimitive.Overlay\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-[color:var(--modal-overlay-bg)]\",\n className\n )}\n data-slot=\"alert-dialog-overlay\"\n {...props}\n />\n )\n}\n\nfunction AlertDialogContent({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Content>) {\n return (\n <AlertDialogPortal>\n <AlertDialogOverlay />\n <AlertDialogPrimitive.Content\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full translate-x-[-50%] translate-y-[-50%] duration-200\",\n \"bg-[color:var(--modal-content-bg)] rounded-[var(--modal-content-radius)] border-[color:var(--modal-content-border)] shadow-[var(--modal-content-shadow)] gap-[var(--modal-content-gap)] p-[var(--modal-content-padding)] max-w-[var(--modal-content-max-width)]\",\n className\n )}\n data-slot=\"alert-dialog-content\"\n {...props}\n />\n </AlertDialogPortal>\n )\n}\n\nfunction AlertDialogHeader({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n className={cn(\"flex flex-col gap-[var(--modal-header-gap)] text-center sm:text-left\", className)}\n data-slot=\"alert-dialog-header\"\n {...props}\n />\n )\n}\n\nfunction AlertDialogFooter({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n className={cn(\n \"flex flex-col-reverse gap-[var(--modal-footer-gap)] sm:flex-row sm:justify-end\",\n className\n )}\n data-slot=\"alert-dialog-footer\"\n {...props}\n />\n )\n}\n\nfunction AlertDialogTitle({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Title>) {\n return (\n <AlertDialogPrimitive.Title\n className={cn(\"text-lg font-semibold\", className)}\n data-slot=\"alert-dialog-title\"\n {...props}\n />\n )\n}\n\nfunction AlertDialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Description>) {\n return (\n <AlertDialogPrimitive.Description\n className={cn(\"text-muted-foreground text-sm\", className)}\n data-slot=\"alert-dialog-description\"\n {...props}\n />\n )\n}\n\nfunction AlertDialogAction({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Action>) {\n return (\n <AlertDialogPrimitive.Action\n className={cn(buttonVariants(), className)}\n data-slot=\"alert-dialog-action\"\n {...props}\n />\n )\n}\n\nfunction AlertDialogCancel({\n className,\n ...props\n}: React.ComponentProps<typeof AlertDialogPrimitive.Cancel>) {\n return (\n <AlertDialogPrimitive.Cancel\n className={cn(buttonVariants({ variant: \"outline\" }), className)}\n data-slot=\"alert-dialog-cancel\"\n {...props}\n />\n )\n}\n\nexport {\n AlertDialog,\n AlertDialogAction,\n AlertDialogCancel,\n AlertDialogContent,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogOverlay,\n AlertDialogPortal,\n AlertDialogTitle,\n AlertDialogTrigger,\n}\n"]}
|