@gbmtech/aurora-ui 0.3.53 → 0.3.55
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 +54 -54
- package/dist/cjs/components/alert-dialog.cjs.map +1 -1
- package/dist/cjs/components/app-layout/app-layout-breadcrumb.cjs.map +1 -1
- package/dist/cjs/components/app-layout/app-layout-content.cjs.map +1 -1
- package/dist/cjs/components/app-layout/app-layout-filters.cjs.map +1 -1
- package/dist/cjs/components/app-layout/app-layout-header.cjs.map +1 -1
- package/dist/cjs/components/app-layout/app-layout-provider.cjs.map +1 -1
- package/dist/cjs/components/app-layout/app-layout.cjs.map +1 -1
- package/dist/cjs/components/app-layout/index.cjs.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/app-sidebar.cjs.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/index.cjs.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/intl/messages.cjs.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/logo.cjs.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/nav-modules.cjs.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/nav-sub-item.cjs.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/nav-user.cjs.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/sidebar-icons.cjs +1 -1
- package/dist/cjs/components/app-layout/sidebar/sidebar-icons.cjs.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/sidebar-icons.d.ts.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/sidebar.cjs.map +1 -1
- package/dist/cjs/components/autocomplete/autocomplete-content.cjs.map +1 -1
- package/dist/cjs/components/autocomplete/autocomplete-context.cjs.map +1 -1
- package/dist/cjs/components/autocomplete/autocomplete-empty.cjs.map +1 -1
- package/dist/cjs/components/autocomplete/autocomplete-input.cjs.map +1 -1
- package/dist/cjs/components/autocomplete/autocomplete-item.cjs.map +1 -1
- package/dist/cjs/components/autocomplete/autocomplete-list.cjs.map +1 -1
- package/dist/cjs/components/autocomplete/autocomplete.cjs.map +1 -1
- package/dist/cjs/components/autocomplete/index.cjs.map +1 -1
- package/dist/cjs/components/avatar.cjs.map +1 -1
- package/dist/cjs/components/badge.cjs.map +1 -1
- package/dist/cjs/components/breadcrumb.cjs.map +1 -1
- package/dist/cjs/components/button.cjs.map +1 -1
- package/dist/cjs/components/calendar.cjs.map +1 -1
- package/dist/cjs/components/checkbox.cjs.map +1 -1
- package/dist/cjs/components/combobox.cjs.map +1 -1
- package/dist/cjs/components/command.cjs.map +1 -1
- package/dist/cjs/components/context-menu.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-action-bar.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-advanced-toolbar.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-column-header.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-date-filter.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-faceted-filter.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-filter-list.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-filter-menu.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-pagination.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-range-filter.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-skeleton.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-slider-filter.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-sort-list.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-toolbar.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table-view-options.cjs.map +1 -1
- package/dist/cjs/components/data-table/data-table.cjs.map +1 -1
- package/dist/cjs/components/data-table/index.cjs +1 -1
- package/dist/cjs/components/data-table/index.cjs.map +1 -1
- package/dist/cjs/components/date-picker-with-range.cjs.map +1 -1
- package/dist/cjs/components/date-picker.cjs.map +1 -1
- package/dist/cjs/components/date-time-picker-with-range.cjs.map +1 -1
- package/dist/cjs/components/date-time-picker.cjs.map +1 -1
- package/dist/cjs/components/dialog.cjs.map +1 -1
- package/dist/cjs/components/dropdown-menu.cjs.map +1 -1
- package/dist/cjs/components/faceted.cjs.map +1 -1
- package/dist/cjs/components/form.cjs.map +1 -1
- package/dist/cjs/components/icons/rumo.cjs.map +1 -1
- package/dist/cjs/components/icons/vli.cjs.map +1 -1
- package/dist/cjs/components/input-otp.cjs.map +1 -1
- package/dist/cjs/components/input-password.cjs.map +1 -1
- package/dist/cjs/components/input.cjs.map +1 -1
- package/dist/cjs/components/label.cjs.map +1 -1
- package/dist/cjs/components/mask-input.cjs.map +1 -1
- package/dist/cjs/components/multi-select.cjs.map +1 -1
- package/dist/cjs/components/page-layout/index.cjs.map +1 -1
- package/dist/cjs/components/page-layout/page-layout-breadcrumb.cjs.map +1 -1
- package/dist/cjs/components/page-layout/page-layout-content.cjs.map +1 -1
- package/dist/cjs/components/page-layout/page-layout-header.cjs.map +1 -1
- package/dist/cjs/components/page-layout/page-layout-root.cjs.map +1 -1
- package/dist/cjs/components/page-layout/page-layout-title.cjs.map +1 -1
- package/dist/cjs/components/pagination.cjs.map +1 -1
- package/dist/cjs/components/popover.cjs.map +1 -1
- package/dist/cjs/components/radio-group.cjs.map +1 -1
- package/dist/cjs/components/scroll-area.cjs.map +1 -1
- package/dist/cjs/components/select.cjs.map +1 -1
- package/dist/cjs/components/separator.cjs.map +1 -1
- package/dist/cjs/components/sheet/index.cjs.map +1 -1
- package/dist/cjs/components/sheet/sheet-content-variants.cjs.map +1 -1
- package/dist/cjs/components/sheet/sheet.cjs.map +1 -1
- package/dist/cjs/components/skeleton.cjs.map +1 -1
- package/dist/cjs/components/slider.cjs.map +1 -1
- package/dist/cjs/components/sortable.cjs.map +1 -1
- package/dist/cjs/components/spinner.cjs.map +1 -1
- package/dist/cjs/components/switch.cjs.map +1 -1
- package/dist/cjs/components/table-expandable.cjs.map +1 -1
- package/dist/cjs/components/table.cjs.map +1 -1
- package/dist/cjs/components/tabs/index.cjs.map +1 -1
- package/dist/cjs/components/tabs/tabs-content.cjs.map +1 -1
- package/dist/cjs/components/tabs/tabs-list.cjs.map +1 -1
- package/dist/cjs/components/tabs/tabs-root.cjs.map +1 -1
- package/dist/cjs/components/tabs/tabs-trigger.cjs.map +1 -1
- package/dist/cjs/components/textarea.cjs.map +1 -1
- package/dist/cjs/components/time-picker-input.cjs.map +1 -1
- package/dist/cjs/components/time-picker.cjs.map +1 -1
- package/dist/cjs/components/title.cjs.map +1 -1
- package/dist/cjs/components/tokens-grid.cjs.map +1 -1
- package/dist/cjs/components/tooltip.cjs.map +1 -1
- package/dist/cjs/hooks/use-callback-ref.cjs.map +1 -1
- package/dist/cjs/hooks/use-data-table.cjs.map +1 -1
- package/dist/cjs/hooks/use-debounce.cjs.map +1 -1
- package/dist/cjs/hooks/use-debounced-callback.cjs.map +1 -1
- package/dist/cjs/hooks/use-mobile.cjs.map +1 -1
- package/dist/cjs/lib/composition.cjs.map +1 -1
- package/dist/cjs/lib/data-table-config.cjs.map +1 -1
- package/dist/cjs/lib/data-table.cjs.map +1 -1
- package/dist/cjs/lib/format.cjs.map +1 -1
- package/dist/cjs/lib/id.cjs.map +1 -1
- package/dist/cjs/lib/index.cjs.map +1 -1
- package/dist/cjs/lib/lucide-dynamic-icon.cjs +3 -0
- package/dist/cjs/lib/lucide-dynamic-icon.cjs.map +1 -0
- package/dist/cjs/lib/lucide-dynamic-icon.d.ts +9 -0
- package/dist/cjs/lib/lucide-dynamic-icon.d.ts.map +1 -0
- package/dist/cjs/lib/parsers.cjs.map +1 -1
- package/dist/cjs/lib/utils.cjs.map +1 -1
- package/dist/cjs/primitive/input.cjs.map +1 -1
- package/dist/cjs/tokens/colors.cjs.map +1 -1
- package/dist/cjs/tokens/index.cjs.map +1 -1
- package/dist/cjs/types/data-table.cjs.map +1 -1
- package/dist/cjs/types/index.cjs.map +1 -1
- package/dist/cjs/types/locale.cjs.map +1 -1
- package/dist/cjs/types/module.cjs.map +1 -1
- package/dist/cjs/types/user.cjs.map +1 -1
- package/dist/cjs/utils/time-picker.cjs.map +1 -1
- package/dist/esm/components/alert-dialog.js.map +1 -1
- package/dist/esm/components/app-layout/app-layout-breadcrumb.js.map +1 -1
- package/dist/esm/components/app-layout/app-layout-content.js.map +1 -1
- package/dist/esm/components/app-layout/app-layout-filters.js.map +1 -1
- package/dist/esm/components/app-layout/app-layout-header.js.map +1 -1
- package/dist/esm/components/app-layout/app-layout-provider.js.map +1 -1
- package/dist/esm/components/app-layout/app-layout.js.map +1 -1
- package/dist/esm/components/app-layout/sidebar/app-sidebar.js.map +1 -1
- package/dist/esm/components/app-layout/sidebar/index.js +1 -2
- package/dist/esm/components/app-layout/sidebar/intl/messages.js.map +1 -1
- package/dist/esm/components/app-layout/sidebar/logo.js.map +1 -1
- package/dist/esm/components/app-layout/sidebar/nav-modules.js.map +1 -1
- package/dist/esm/components/app-layout/sidebar/nav-sub-item.js.map +1 -1
- package/dist/esm/components/app-layout/sidebar/nav-user.js.map +1 -1
- package/dist/esm/components/app-layout/sidebar/sidebar-icons.d.ts.map +1 -1
- package/dist/esm/components/app-layout/sidebar/sidebar-icons.js +1 -1
- package/dist/esm/components/app-layout/sidebar/sidebar-icons.js.map +1 -1
- package/dist/esm/components/app-layout/sidebar/sidebar.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-content.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-context.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-empty.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-input.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-item.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-list.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete.js.map +1 -1
- package/dist/esm/components/avatar.js.map +1 -1
- package/dist/esm/components/badge.js.map +1 -1
- package/dist/esm/components/breadcrumb.js.map +1 -1
- package/dist/esm/components/button.js.map +1 -1
- package/dist/esm/components/calendar.js.map +1 -1
- package/dist/esm/components/checkbox.js.map +1 -1
- package/dist/esm/components/combobox.js.map +1 -1
- package/dist/esm/components/command.js.map +1 -1
- package/dist/esm/components/context-menu.js.map +1 -1
- package/dist/esm/components/data-table/data-table-action-bar.js.map +1 -1
- package/dist/esm/components/data-table/data-table-advanced-toolbar.js.map +1 -1
- package/dist/esm/components/data-table/data-table-column-header.js.map +1 -1
- package/dist/esm/components/data-table/data-table-date-filter.js.map +1 -1
- package/dist/esm/components/data-table/data-table-faceted-filter.js.map +1 -1
- package/dist/esm/components/data-table/data-table-filter-list.js.map +1 -1
- package/dist/esm/components/data-table/data-table-filter-menu.js.map +1 -1
- package/dist/esm/components/data-table/data-table-pagination.js.map +1 -1
- package/dist/esm/components/data-table/data-table-range-filter.js.map +1 -1
- package/dist/esm/components/data-table/data-table-skeleton.js.map +1 -1
- package/dist/esm/components/data-table/data-table-slider-filter.js.map +1 -1
- package/dist/esm/components/data-table/data-table-sort-list.js.map +1 -1
- package/dist/esm/components/data-table/data-table-toolbar.js.map +1 -1
- package/dist/esm/components/data-table/data-table-view-options.js.map +1 -1
- package/dist/esm/components/data-table/data-table.js.map +1 -1
- package/dist/esm/components/data-table/index.js +1 -1
- package/dist/esm/components/data-table/index.js.map +1 -1
- package/dist/esm/components/date-picker-with-range.js.map +1 -1
- package/dist/esm/components/date-picker.js.map +1 -1
- package/dist/esm/components/date-time-picker-with-range.js.map +1 -1
- package/dist/esm/components/date-time-picker.js.map +1 -1
- package/dist/esm/components/dialog.js.map +1 -1
- package/dist/esm/components/dropdown-menu.js.map +1 -1
- package/dist/esm/components/faceted.js.map +1 -1
- package/dist/esm/components/form.js.map +1 -1
- package/dist/esm/components/icons/rumo.js.map +1 -1
- package/dist/esm/components/icons/vli.js.map +1 -1
- package/dist/esm/components/input-otp.js.map +1 -1
- package/dist/esm/components/input-password.js.map +1 -1
- package/dist/esm/components/input.js.map +1 -1
- package/dist/esm/components/label.js.map +1 -1
- package/dist/esm/components/mask-input.js.map +1 -1
- package/dist/esm/components/multi-select.js.map +1 -1
- package/dist/esm/components/page-layout/index.js.map +1 -1
- package/dist/esm/components/page-layout/page-layout-breadcrumb.js.map +1 -1
- package/dist/esm/components/page-layout/page-layout-content.js.map +1 -1
- package/dist/esm/components/page-layout/page-layout-header.js.map +1 -1
- package/dist/esm/components/page-layout/page-layout-root.js.map +1 -1
- package/dist/esm/components/page-layout/page-layout-title.js.map +1 -1
- package/dist/esm/components/pagination.js.map +1 -1
- package/dist/esm/components/popover.js.map +1 -1
- package/dist/esm/components/radio-group.js.map +1 -1
- package/dist/esm/components/scroll-area.js.map +1 -1
- package/dist/esm/components/select.js.map +1 -1
- package/dist/esm/components/separator.js.map +1 -1
- package/dist/esm/components/sheet/sheet-content-variants.js.map +1 -1
- package/dist/esm/components/sheet/sheet.js.map +1 -1
- package/dist/esm/components/skeleton.js.map +1 -1
- package/dist/esm/components/slider.js.map +1 -1
- package/dist/esm/components/sortable.js.map +1 -1
- package/dist/esm/components/spinner.js.map +1 -1
- package/dist/esm/components/switch.js.map +1 -1
- package/dist/esm/components/table-expandable.js.map +1 -1
- package/dist/esm/components/table.js.map +1 -1
- package/dist/esm/components/tabs/index.js.map +1 -1
- package/dist/esm/components/tabs/tabs-content.js.map +1 -1
- package/dist/esm/components/tabs/tabs-list.js.map +1 -1
- package/dist/esm/components/tabs/tabs-root.js.map +1 -1
- package/dist/esm/components/tabs/tabs-trigger.js.map +1 -1
- package/dist/esm/components/textarea.js.map +1 -1
- package/dist/esm/components/time-picker-input.js.map +1 -1
- package/dist/esm/components/time-picker.js.map +1 -1
- package/dist/esm/components/title.js.map +1 -1
- package/dist/esm/components/tokens-grid.js.map +1 -1
- package/dist/esm/components/tooltip.js.map +1 -1
- package/dist/esm/hooks/use-callback-ref.js.map +1 -1
- package/dist/esm/hooks/use-data-table.js.map +1 -1
- package/dist/esm/hooks/use-debounce.js.map +1 -1
- package/dist/esm/hooks/use-debounced-callback.js.map +1 -1
- package/dist/esm/hooks/use-mobile.js.map +1 -1
- package/dist/esm/lib/composition.js.map +1 -1
- package/dist/esm/lib/data-table-config.js.map +1 -1
- package/dist/esm/lib/data-table.js.map +1 -1
- package/dist/esm/lib/format.js.map +1 -1
- package/dist/esm/lib/id.js.map +1 -1
- package/dist/esm/lib/lucide-dynamic-icon.d.ts +9 -0
- package/dist/esm/lib/lucide-dynamic-icon.d.ts.map +1 -0
- package/dist/esm/lib/lucide-dynamic-icon.js +3 -0
- package/dist/esm/lib/lucide-dynamic-icon.js.map +1 -0
- package/dist/esm/lib/parsers.js.map +1 -1
- package/dist/esm/lib/utils.js.map +1 -1
- package/dist/esm/primitive/input.js.map +1 -1
- package/dist/esm/tokens/colors.js.map +1 -1
- package/dist/esm/utils/time-picker.js.map +1 -1
- package/dist/styles/index.css +574 -574
- package/package.json +1 -1
- package/dist/esm/components/app-layout/sidebar/index.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\dropdown-menu.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/dropdown-menu.tsx"],"sourcesContent":["\r\n\r\nimport { CaretRight, Check } from '@phosphor-icons/react/dist/ssr'\r\nimport * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu'\r\nimport { ComponentProps, JSX } from 'react'\r\n\r\nimport { Dot } from '@phosphor-icons/react'\r\nimport { cn } from '../lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenu\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenu({\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.Root>): JSX.Element {\r\n return <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />\r\n}\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuTrigger\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuTrigger({\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.Trigger>): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.Trigger\r\n data-slot=\"dropdown-menu-trigger\"\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuGroup\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuGroup({\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.Group>): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuSub\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuSub({\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.Sub>): JSX.Element {\r\n return <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuRadioGroup\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuRadioGroup({\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.RadioGroup\r\n data-slot=\"dropdown-menu-radio-group\"\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuSubTrigger\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuSubTrigger({\r\n children,\r\n className,\r\n inset,\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\r\n inset?: boolean\r\n}): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.SubTrigger\r\n className={cn(\r\n 'flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-gray-100 data-[state=open]:bg-accent data-inset:pl-8',\r\n className\r\n )}\r\n data-inset={inset}\r\n data-slot=\"dropdown-menu-sub-trigger\"\r\n {...props}\r\n >\r\n {children}\r\n <CaretRight className=\"ml-auto size-4\" />\r\n </DropdownMenuPrimitive.SubTrigger>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuSubContent\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuSubContent({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.SubContent>): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.Portal>\r\n <DropdownMenuPrimitive.SubContent\r\n className={cn(\r\n 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border bg-white p-1 shadow-lg data-[state=closed]:animate-out data-[state=open]:animate-in',\r\n className\r\n )}\r\n data-slot=\"dropdown-menu-sub-content\"\r\n {...props}\r\n />\r\n </DropdownMenuPrimitive.Portal>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuContent\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuContent({\r\n className,\r\n sideOffset = 4,\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.Content>): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.Portal>\r\n <DropdownMenuPrimitive.Content\r\n className={cn(\r\n 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border bg-white p-1 text-gbm-dark shadow-md data-[state=closed]:animate-out data-[state=open]:animate-in',\r\n className\r\n )}\r\n data-slot=\"dropdown-menu-content\"\r\n sideOffset={sideOffset}\r\n {...props}\r\n />\r\n </DropdownMenuPrimitive.Portal>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuItem\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuItem({\r\n className,\r\n inset,\r\n variant,\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.Item> & {\r\n inset?: boolean\r\n variant?: 'default' | 'destructive'\r\n}): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.Item\r\n className={cn(\r\n 'relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-gray-100 data-[disabled]:pointer-events-none data-inset:pl-8 data-[disabled]:opacity-50',\r\n className\r\n )}\r\n data-inset={inset}\r\n data-slot=\"dropdown-menu-item\"\r\n data-variant={variant}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuCheckboxItem\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuCheckboxItem({\r\n checked,\r\n children,\r\n className,\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.CheckboxItem\r\n checked={checked}\r\n className={cn(\r\n 'relative flex cursor-default select-none items-center rounded-sm py-1.5 pr-2 pl-8 text-sm outline-none transition-colors focus:bg-gray-100 data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\r\n className\r\n )}\r\n data-slot=\"dropdown-menu-checkbox-item\"\r\n {...props}\r\n >\r\n <span className=\"absolute left-2 flex items-center justify-center\">\r\n <DropdownMenuPrimitive.ItemIndicator>\r\n <Check className=\"size-4\" />\r\n </DropdownMenuPrimitive.ItemIndicator>\r\n </span>\r\n {children}\r\n </DropdownMenuPrimitive.CheckboxItem>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuRadioItem\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuRadioItem({\r\n children,\r\n className,\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.RadioItem\r\n className={cn(\r\n 'relative flex cursor-default select-none items-center rounded-sm py-1.5 pr-2 pl-8 text-sm outline-none transition-colors focus:bg-gray-100 data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\r\n className\r\n )}\r\n data-slot=\"dropdown-menu-radio-item\"\r\n {...props}\r\n >\r\n <span className=\"absolute left-2 flex items-center justify-center\">\r\n <DropdownMenuPrimitive.ItemIndicator>\r\n <Dot className=\"size-4 fill-current\" />\r\n </DropdownMenuPrimitive.ItemIndicator>\r\n </span>\r\n {children}\r\n </DropdownMenuPrimitive.RadioItem>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuLabel\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuLabel({\r\n className,\r\n inset,\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.Label> & {\r\n inset?: boolean\r\n}): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.Label\r\n className={cn(\r\n 'px-2 py-1.5 font-semibold text-sm data-inset:pl-8',\r\n className\r\n )}\r\n data-inset={inset}\r\n data-slot=\"dropdown-menu-label\"\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuSeparator\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuSeparator({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.Separator>): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.Separator\r\n className={cn('-mx-1 my-1 h-px bg-stroke', className)}\r\n data-slot=\"dropdown-menu-separator\"\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuShortcut\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuShortcut({\r\n className,\r\n ...props\r\n}: ComponentProps<'span'>): JSX.Element {\r\n return (\r\n <span\r\n className={cn('ml-auto text-xs tracking-widest opacity-60', className)}\r\n data-slot=\"dropdown-menu-shortcut\"\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: DropdownMenuArrow\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction DropdownMenuArrow({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof DropdownMenuPrimitive.Arrow>): JSX.Element {\r\n return (\r\n <DropdownMenuPrimitive.Arrow\r\n className={cn('fill-stroke', className)}\r\n data-slot=\"dropdown-menu-arrow\"\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport {\r\n DropdownMenu,\r\n DropdownMenuTrigger,\r\n DropdownMenuContent,\r\n DropdownMenuItem,\r\n DropdownMenuCheckboxItem,\r\n DropdownMenuRadioItem,\r\n DropdownMenuLabel,\r\n DropdownMenuSeparator,\r\n DropdownMenuShortcut,\r\n DropdownMenuGroup,\r\n DropdownMenuArrow,\r\n DropdownMenuSub,\r\n DropdownMenuSubContent,\r\n DropdownMenuSubTrigger,\r\n DropdownMenuRadioGroup,\r\n}\r\n"],"names":["DropdownMenu","props","DropdownMenuPrimitive","DropdownMenuTrigger","DropdownMenuGroup","DropdownMenuSub","DropdownMenuRadioGroup","DropdownMenuSubTrigger","children","className","inset","cn","CaretRight","DropdownMenuSubContent","DropdownMenuContent","sideOffset","DropdownMenuItem","variant","DropdownMenuCheckboxItem","checked","Check","DropdownMenuRadioItem","Dot","DropdownMenuLabel","DropdownMenuSeparator","DropdownMenuShortcut","DropdownMenuArrow"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components/dropdown-menu.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/dropdown-menu.tsx"],"sourcesContent":["\n\nimport { CaretRight, Check } from '@phosphor-icons/react/dist/ssr'\nimport * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu'\nimport { ComponentProps, JSX } from 'react'\n\nimport { Dot } from '@phosphor-icons/react'\nimport { cn } from '../lib/utils'\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenu\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenu({\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Root>): JSX.Element {\n return <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />\n}\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuTrigger\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuTrigger({\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Trigger>): JSX.Element {\n return (\n <DropdownMenuPrimitive.Trigger\n data-slot=\"dropdown-menu-trigger\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuGroup\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuGroup({\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Group>): JSX.Element {\n return (\n <DropdownMenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSub\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuSub({\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Sub>): JSX.Element {\n return <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuRadioGroup\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuRadioGroup({\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): JSX.Element {\n return (\n <DropdownMenuPrimitive.RadioGroup\n data-slot=\"dropdown-menu-radio-group\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSubTrigger\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuSubTrigger({\n children,\n className,\n inset,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean\n}): JSX.Element {\n return (\n <DropdownMenuPrimitive.SubTrigger\n className={cn(\n 'flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-gray-100 data-[state=open]:bg-accent data-inset:pl-8',\n className\n )}\n data-inset={inset}\n data-slot=\"dropdown-menu-sub-trigger\"\n {...props}\n >\n {children}\n <CaretRight className=\"ml-auto size-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSubContent\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuSubContent({\n className,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.SubContent>): JSX.Element {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.SubContent\n className={cn(\n 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border bg-white p-1 shadow-lg data-[state=closed]:animate-out data-[state=open]:animate-in',\n className\n )}\n data-slot=\"dropdown-menu-sub-content\"\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuContent\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuContent({\n className,\n sideOffset = 4,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Content>): JSX.Element {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n className={cn(\n 'data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border bg-white p-1 text-gbm-dark shadow-md data-[state=closed]:animate-out data-[state=open]:animate-in',\n className\n )}\n data-slot=\"dropdown-menu-content\"\n sideOffset={sideOffset}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuItem\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean\n variant?: 'default' | 'destructive'\n}): JSX.Element {\n return (\n <DropdownMenuPrimitive.Item\n className={cn(\n 'relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-gray-100 data-[disabled]:pointer-events-none data-inset:pl-8 data-[disabled]:opacity-50',\n className\n )}\n data-inset={inset}\n data-slot=\"dropdown-menu-item\"\n data-variant={variant}\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuCheckboxItem\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuCheckboxItem({\n checked,\n children,\n className,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): JSX.Element {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n checked={checked}\n className={cn(\n 'relative flex cursor-default select-none items-center rounded-sm py-1.5 pr-2 pl-8 text-sm outline-none transition-colors focus:bg-gray-100 data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n className\n )}\n data-slot=\"dropdown-menu-checkbox-item\"\n {...props}\n >\n <span className=\"absolute left-2 flex items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <Check className=\"size-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuRadioItem\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuRadioItem({\n children,\n className,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): JSX.Element {\n return (\n <DropdownMenuPrimitive.RadioItem\n className={cn(\n 'relative flex cursor-default select-none items-center rounded-sm py-1.5 pr-2 pl-8 text-sm outline-none transition-colors focus:bg-gray-100 data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n className\n )}\n data-slot=\"dropdown-menu-radio-item\"\n {...props}\n >\n <span className=\"absolute left-2 flex items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <Dot className=\"size-4 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuLabel\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean\n}): JSX.Element {\n return (\n <DropdownMenuPrimitive.Label\n className={cn(\n 'px-2 py-1.5 font-semibold text-sm data-inset:pl-8',\n className\n )}\n data-inset={inset}\n data-slot=\"dropdown-menu-label\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSeparator\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuSeparator({\n className,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Separator>): JSX.Element {\n return (\n <DropdownMenuPrimitive.Separator\n className={cn('-mx-1 my-1 h-px bg-stroke', className)}\n data-slot=\"dropdown-menu-separator\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuShortcut\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuShortcut({\n className,\n ...props\n}: ComponentProps<'span'>): JSX.Element {\n return (\n <span\n className={cn('ml-auto text-xs tracking-widest opacity-60', className)}\n data-slot=\"dropdown-menu-shortcut\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuArrow\n * -------------------------------------------------------------------------- */\n\nfunction DropdownMenuArrow({\n className,\n ...props\n}: ComponentProps<typeof DropdownMenuPrimitive.Arrow>): JSX.Element {\n return (\n <DropdownMenuPrimitive.Arrow\n className={cn('fill-stroke', className)}\n data-slot=\"dropdown-menu-arrow\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n DropdownMenu,\n DropdownMenuTrigger,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuCheckboxItem,\n DropdownMenuRadioItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuGroup,\n DropdownMenuArrow,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuRadioGroup,\n}\n"],"names":["DropdownMenu","props","DropdownMenuPrimitive","DropdownMenuTrigger","DropdownMenuGroup","DropdownMenuSub","DropdownMenuRadioGroup","DropdownMenuSubTrigger","children","className","inset","cn","CaretRight","DropdownMenuSubContent","DropdownMenuContent","sideOffset","DropdownMenuItem","variant","DropdownMenuCheckboxItem","checked","Check","DropdownMenuRadioItem","Dot","DropdownMenuLabel","DropdownMenuSeparator","DropdownMenuShortcut","DropdownMenuArrow"],"mappings":";+MAaA,SAASA,EAAa,CACpB,GAAGC,EAC+C,EAClD,MAAO,UAACC,EAAAA,IAA0B,EAAC,YAAU,gBAAiB,GAAGD,CAAK,EACxE,CAKA,SAASE,EAAoB,CAC3B,GAAGF,EACkD,EACrD,MACE,UAACC,EAAAA,OAA6B,EAC5B,YAAU,wBACT,GAAGD,CAAK,EAGf,CAMA,SAASG,EAAkB,CACzB,GAAGH,EACgD,EACnD,MACE,UAACC,EAAAA,KAA2B,EAAC,YAAU,sBAAuB,GAAGD,CAAK,EAE1E,CAMA,SAASI,EAAgB,CACvB,GAAGJ,EAC8C,EACjD,MAAO,UAACC,EAAAA,GAAyB,EAAC,YAAU,oBAAqB,GAAGD,CAAK,EAC3E,CAMA,SAASK,EAAuB,CAC9B,GAAGL,EACqD,EACxD,MACE,UAACC,EAAAA,UAAgC,EAC/B,YAAU,4BACT,GAAGD,CAAK,EAGf,CAMA,SAASM,EAAuB,CAC9BC,SAAAA,CAAQ,CACRC,UAAAA,CAAS,CACTC,MAAAA,CAAK,CACL,GAAGT,EAGJ,EACC,MACE,WAACC,EAAAA,UAAgC,EAC/B,UAAWS,GAAAA,EAAAA,EAAAA,EACT,yJACAF,GAEF,aAAYC,EACZ,YAAU,4BACT,GAAGT,CAAK,C,UAERO,EACD,UAACI,EAAAA,UAAUA,CAAAA,CAAC,UAAU,gB,KAG5B,CAMA,SAASC,EAAuB,CAC9BJ,UAAAA,CAAS,CACT,GAAGR,EACqD,EACxD,MACE,UAACC,EAAAA,MAA4B,E,SAC3B,UAACA,EAAAA,UAAgC,EAC/B,UAAWS,GAAAA,EAAAA,EAAAA,EACT,8ZACAF,GAEF,YAAU,4BACT,GAAGR,CAAK,IAIjB,CAMA,SAASa,EAAoB,CAC3BL,UAAAA,CAAS,CACTM,WAAAA,EAAa,CAAC,CACd,GAAGd,EACkD,EACrD,MACE,UAACC,EAAAA,MAA4B,E,SAC3B,UAACA,EAAAA,OAA6B,EAC5B,UAAWS,GAAAA,EAAAA,EAAAA,EACT,4aACAF,GAEF,YAAU,wBACV,WAAYM,EACX,GAAGd,CAAK,IAIjB,CAMA,SAASe,EAAiB,CACxBP,UAAAA,CAAS,CACTC,MAAAA,CAAK,CACLO,QAAAA,CAAO,CACP,GAAGhB,EAIJ,EACC,MACE,UAACC,EAAAA,IAA0B,EACzB,UAAWS,GAAAA,EAAAA,EAAAA,EACT,uNACAF,GAEF,aAAYC,EACZ,YAAU,qBACV,eAAcO,EACb,GAAGhB,CAAK,EAGf,CAMA,SAASiB,EAAyB,CAChCC,QAAAA,CAAO,CACPX,SAAAA,CAAQ,CACRC,UAAAA,CAAS,CACT,GAAGR,EACuD,EAC1D,MACE,WAACC,EAAAA,YAAkC,EACjC,QAASiB,EACT,UAAWR,GAAAA,EAAAA,EAAAA,EACT,4MACAF,GAEF,YAAU,8BACT,GAAGR,CAAK,C,UAET,UAAC,QAAK,UAAU,mD,SACd,UAACC,EAAAA,aAAmC,E,SAClC,UAACkB,EAAAA,KAAKA,CAAAA,CAAC,UAAU,Q,OAGpBZ,E,EAGP,CAMA,SAASa,EAAsB,CAC7Bb,SAAAA,CAAQ,CACRC,UAAAA,CAAS,CACT,GAAGR,EACoD,EACvD,MACE,WAACC,EAAAA,SAA+B,EAC9B,UAAWS,GAAAA,EAAAA,EAAAA,EACT,4MACAF,GAEF,YAAU,2BACT,GAAGR,CAAK,C,UAET,UAAC,QAAK,UAAU,mD,SACd,UAACC,EAAAA,aAAmC,E,SAClC,UAACoB,EAAAA,GAAGA,CAAAA,CAAC,UAAU,qB,OAGlBd,E,EAGP,CAMA,SAASe,EAAkB,CACzBd,UAAAA,CAAS,CACTC,MAAAA,CAAK,CACL,GAAGT,EAGJ,EACC,MACE,UAACC,EAAAA,KAA2B,EAC1B,UAAWS,GAAAA,EAAAA,EAAAA,EACT,oDACAF,GAEF,aAAYC,EACZ,YAAU,sBACT,GAAGT,CAAK,EAGf,CAMA,SAASuB,EAAsB,CAC7Bf,UAAAA,CAAS,CACT,GAAGR,EACoD,EACvD,MACE,UAACC,EAAAA,SAA+B,EAC9B,UAAWS,GAAAA,EAAAA,EAAAA,EAAG,4BAA6BF,GAC3C,YAAU,0BACT,GAAGR,CAAK,EAGf,CAMA,SAASwB,EAAqB,CAC5BhB,UAAAA,CAAS,CACT,GAAGR,EACoB,EACvB,MACE,UAAC,QACC,UAAWU,GAAAA,EAAAA,EAAAA,EAAG,6CAA8CF,GAC5D,YAAU,yBACT,GAAGR,CAAK,EAGf,CAMA,SAASyB,EAAkB,CACzBjB,UAAAA,CAAS,CACT,GAAGR,EACgD,EACnD,MACE,UAACC,EAAAA,KAA2B,EAC1B,UAAWS,GAAAA,EAAAA,EAAAA,EAAG,cAAeF,GAC7B,YAAU,sBACT,GAAGR,CAAK,EAGf,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\faceted.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/faceted.tsx"],"sourcesContent":["\r\n\r\nimport { CaretUpDown, Check } from '@phosphor-icons/react'\r\nimport * as React from 'react'\r\n\r\nimport { Badge } from '@/components/badge'\r\nimport {\r\n Command,\r\n CommandEmpty,\r\n CommandGroup,\r\n CommandInput,\r\n CommandItem,\r\n CommandList,\r\n CommandSeparator,\r\n} from '@/components/command'\r\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/popover'\r\nimport { cn } from '@/lib/utils'\r\n\r\ntype FacetedValue<Multiple extends boolean> = Multiple extends true\r\n ? string[]\r\n : string\r\n\r\ninterface FacetedContextValue<Multiple extends boolean = boolean> {\r\n value?: FacetedValue<Multiple>\r\n onItemSelect?: (value: string) => void\r\n multiple?: Multiple\r\n}\r\n\r\nconst FacetedContext = React.createContext<FacetedContextValue<boolean> | null>(\r\n null\r\n)\r\n\r\nfunction useFacetedContext(name: string) {\r\n const context = React.useContext(FacetedContext)\r\n if (!context) {\r\n throw new Error(`\\`${name}\\` must be within Faceted`)\r\n }\r\n return context\r\n}\r\n\r\ninterface FacetedProps<Multiple extends boolean = false>\r\n extends React.ComponentProps<typeof Popover> {\r\n value?: FacetedValue<Multiple>\r\n onValueChange?: (value: FacetedValue<Multiple> | undefined) => void\r\n children?: React.ReactNode\r\n multiple?: Multiple\r\n}\r\n\r\nfunction Faceted<Multiple extends boolean = false>(\r\n props: FacetedProps<Multiple>\r\n) {\r\n const {\r\n open: openProp,\r\n onOpenChange: onOpenChangeProp,\r\n value,\r\n onValueChange,\r\n children,\r\n multiple = false,\r\n ...facetedProps\r\n } = props\r\n\r\n const [uncontrolledOpen, setUncontrolledOpen] = React.useState(false)\r\n const isControlled = openProp !== undefined\r\n const open = isControlled ? openProp : uncontrolledOpen\r\n\r\n const onOpenChange = React.useCallback(\r\n (newOpen: boolean) => {\r\n if (!isControlled) {\r\n setUncontrolledOpen(newOpen)\r\n }\r\n onOpenChangeProp?.(newOpen)\r\n },\r\n [isControlled, onOpenChangeProp]\r\n )\r\n\r\n const onItemSelect = React.useCallback(\r\n (selectedValue: string) => {\r\n if (!onValueChange) return\r\n\r\n if (multiple) {\r\n const currentValue = (Array.isArray(value) ? value : []) as string[]\r\n const newValue = currentValue.includes(selectedValue)\r\n ? currentValue.filter(v => v !== selectedValue)\r\n : [...currentValue, selectedValue]\r\n onValueChange(newValue as FacetedValue<Multiple>)\r\n } else {\r\n if (value === selectedValue) {\r\n onValueChange(undefined)\r\n } else {\r\n onValueChange(selectedValue as FacetedValue<Multiple>)\r\n }\r\n\r\n requestAnimationFrame(() => onOpenChange(false))\r\n }\r\n },\r\n [multiple, value, onValueChange, onOpenChange]\r\n )\r\n\r\n const contextValue = React.useMemo<FacetedContextValue<typeof multiple>>(\r\n () => ({ value, onItemSelect, multiple }),\r\n [value, onItemSelect, multiple]\r\n )\r\n\r\n return (\r\n <FacetedContext.Provider value={contextValue}>\r\n <Popover open={open} onOpenChange={onOpenChange} {...facetedProps}>\r\n {children}\r\n </Popover>\r\n </FacetedContext.Provider>\r\n )\r\n}\r\n\r\nfunction FacetedTrigger(props: React.ComponentProps<typeof PopoverTrigger>) {\r\n const { className, children, ...triggerProps } = props\r\n\r\n return (\r\n <PopoverTrigger\r\n {...triggerProps}\r\n className={cn('justify-between text-left', className)}\r\n >\r\n {children}\r\n </PopoverTrigger>\r\n )\r\n}\r\n\r\ninterface FacetedBadgeListProps extends React.ComponentProps<'div'> {\r\n options?: { label: string; value: string }[]\r\n max?: number\r\n badgeClassName?: string\r\n placeholder?: string\r\n}\r\n\r\nfunction FacetedBadgeList(props: FacetedBadgeListProps) {\r\n const {\r\n options = [],\r\n max = 2,\r\n placeholder = 'Select options...',\r\n className,\r\n badgeClassName,\r\n ...badgeListProps\r\n } = props\r\n\r\n const context = useFacetedContext('FacetedBadgeList')\r\n const values = Array.isArray(context.value)\r\n ? context.value\r\n : ([context.value].filter(Boolean) as string[])\r\n\r\n const getLabel = React.useCallback(\r\n (value: string) => {\r\n const option = options.find(opt => opt.value === value)\r\n return option?.label ?? value\r\n },\r\n [options]\r\n )\r\n\r\n if (!values || values.length === 0) {\r\n return (\r\n <div\r\n {...badgeListProps}\r\n className=\"flex w-full items-center gap-1 text-muted-foreground\"\r\n >\r\n {placeholder}\r\n <CaretUpDown className=\"ml-auto size-4 shrink-0 opacity-50\" />\r\n </div>\r\n )\r\n }\r\n\r\n return (\r\n <div\r\n {...badgeListProps}\r\n className={cn('flex flex-wrap items-center gap-1', className)}\r\n >\r\n {values.length > max ? (\r\n <Badge\r\n variant=\"secondary\"\r\n className={cn('rounded-sm px-1 font-normal', badgeClassName)}\r\n >\r\n {values.length} selected\r\n </Badge>\r\n ) : (\r\n values.map(value => (\r\n <Badge\r\n key={value}\r\n variant=\"secondary\"\r\n className={cn('rounded-sm px-1 font-normal', badgeClassName)}\r\n >\r\n <span className=\"truncate\">{getLabel(value)}</span>\r\n </Badge>\r\n ))\r\n )}\r\n </div>\r\n )\r\n}\r\n\r\nfunction FacetedContent(props: React.ComponentProps<typeof PopoverContent>) {\r\n const { className, children, ...contentProps } = props\r\n\r\n return (\r\n <PopoverContent\r\n {...contentProps}\r\n align=\"start\"\r\n className={cn(\r\n 'w-[200px] origin-(--radix-popover-content-transform-origin) p-0',\r\n className\r\n )}\r\n >\r\n <Command>{children}</Command>\r\n </PopoverContent>\r\n )\r\n}\r\n\r\nconst FacetedInput = CommandInput\r\n\r\nconst FacetedList = CommandList\r\n\r\nconst FacetedEmpty = CommandEmpty\r\n\r\nconst FacetedGroup = CommandGroup\r\n\r\ninterface FacetedItemProps extends React.ComponentProps<typeof CommandItem> {\r\n value: string\r\n}\r\n\r\nfunction FacetedItem(props: FacetedItemProps) {\r\n const { value, onSelect, className, children, ...itemProps } = props\r\n const context = useFacetedContext('FacetedItem')\r\n\r\n const isSelected = context.multiple\r\n ? Array.isArray(context.value) && context.value.includes(value)\r\n : context.value === value\r\n\r\n const onItemSelect = React.useCallback(\r\n (currentValue: string) => {\r\n if (onSelect) {\r\n onSelect(currentValue)\r\n } else if (context.onItemSelect) {\r\n context.onItemSelect(currentValue)\r\n }\r\n },\r\n [onSelect, context.onItemSelect]\r\n )\r\n\r\n return (\r\n <CommandItem\r\n aria-selected={isSelected}\r\n data-selected={isSelected}\r\n className={cn('gap-2', className)}\r\n onSelect={() => onItemSelect(value)}\r\n {...itemProps}\r\n >\r\n <span\r\n className={cn(\r\n 'flex size-4 items-center justify-center rounded-sm border border-primary',\r\n isSelected\r\n ? 'bg-primary text-primary-foreground'\r\n : 'opacity-50 [&_svg]:invisible'\r\n )}\r\n >\r\n <Check className=\"size-4\" />\r\n </span>\r\n {children}\r\n </CommandItem>\r\n )\r\n}\r\n\r\nconst FacetedSeparator = CommandSeparator\r\n\r\nexport {\r\n Faceted,\r\n FacetedBadgeList,\r\n FacetedContent,\r\n FacetedEmpty,\r\n FacetedGroup,\r\n FacetedInput,\r\n FacetedItem,\r\n FacetedList,\r\n FacetedSeparator,\r\n FacetedTrigger,\r\n}\r\n"],"names":["FacetedContext","React","useFacetedContext","name","context","Error","Faceted","props","openProp","onOpenChangeProp","value","onValueChange","children","multiple","facetedProps","uncontrolledOpen","setUncontrolledOpen","isControlled","undefined","open","onOpenChange","newOpen","onItemSelect","selectedValue","currentValue","Array","v","requestAnimationFrame","contextValue","Popover","FacetedTrigger","className","triggerProps","PopoverTrigger","cn","FacetedBadgeList","options","max","placeholder","badgeClassName","badgeListProps","values","Boolean","getLabel","option","opt","Badge","CaretUpDown","FacetedContent","contentProps","PopoverContent","Command","FacetedInput","CommandInput","FacetedList","CommandList","FacetedEmpty","CommandEmpty","FacetedGroup","CommandGroup","FacetedItem","onSelect","itemProps","isSelected","CommandItem","Check","FacetedSeparator","CommandSeparator"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components/faceted.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/faceted.tsx"],"sourcesContent":["\n\nimport { CaretUpDown, Check } from '@phosphor-icons/react'\nimport * as React from 'react'\n\nimport { Badge } from '@/components/badge'\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n} from '@/components/command'\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/popover'\nimport { cn } from '@/lib/utils'\n\ntype FacetedValue<Multiple extends boolean> = Multiple extends true\n ? string[]\n : string\n\ninterface FacetedContextValue<Multiple extends boolean = boolean> {\n value?: FacetedValue<Multiple>\n onItemSelect?: (value: string) => void\n multiple?: Multiple\n}\n\nconst FacetedContext = React.createContext<FacetedContextValue<boolean> | null>(\n null\n)\n\nfunction useFacetedContext(name: string) {\n const context = React.useContext(FacetedContext)\n if (!context) {\n throw new Error(`\\`${name}\\` must be within Faceted`)\n }\n return context\n}\n\ninterface FacetedProps<Multiple extends boolean = false>\n extends React.ComponentProps<typeof Popover> {\n value?: FacetedValue<Multiple>\n onValueChange?: (value: FacetedValue<Multiple> | undefined) => void\n children?: React.ReactNode\n multiple?: Multiple\n}\n\nfunction Faceted<Multiple extends boolean = false>(\n props: FacetedProps<Multiple>\n) {\n const {\n open: openProp,\n onOpenChange: onOpenChangeProp,\n value,\n onValueChange,\n children,\n multiple = false,\n ...facetedProps\n } = props\n\n const [uncontrolledOpen, setUncontrolledOpen] = React.useState(false)\n const isControlled = openProp !== undefined\n const open = isControlled ? openProp : uncontrolledOpen\n\n const onOpenChange = React.useCallback(\n (newOpen: boolean) => {\n if (!isControlled) {\n setUncontrolledOpen(newOpen)\n }\n onOpenChangeProp?.(newOpen)\n },\n [isControlled, onOpenChangeProp]\n )\n\n const onItemSelect = React.useCallback(\n (selectedValue: string) => {\n if (!onValueChange) return\n\n if (multiple) {\n const currentValue = (Array.isArray(value) ? value : []) as string[]\n const newValue = currentValue.includes(selectedValue)\n ? currentValue.filter(v => v !== selectedValue)\n : [...currentValue, selectedValue]\n onValueChange(newValue as FacetedValue<Multiple>)\n } else {\n if (value === selectedValue) {\n onValueChange(undefined)\n } else {\n onValueChange(selectedValue as FacetedValue<Multiple>)\n }\n\n requestAnimationFrame(() => onOpenChange(false))\n }\n },\n [multiple, value, onValueChange, onOpenChange]\n )\n\n const contextValue = React.useMemo<FacetedContextValue<typeof multiple>>(\n () => ({ value, onItemSelect, multiple }),\n [value, onItemSelect, multiple]\n )\n\n return (\n <FacetedContext.Provider value={contextValue}>\n <Popover open={open} onOpenChange={onOpenChange} {...facetedProps}>\n {children}\n </Popover>\n </FacetedContext.Provider>\n )\n}\n\nfunction FacetedTrigger(props: React.ComponentProps<typeof PopoverTrigger>) {\n const { className, children, ...triggerProps } = props\n\n return (\n <PopoverTrigger\n {...triggerProps}\n className={cn('justify-between text-left', className)}\n >\n {children}\n </PopoverTrigger>\n )\n}\n\ninterface FacetedBadgeListProps extends React.ComponentProps<'div'> {\n options?: { label: string; value: string }[]\n max?: number\n badgeClassName?: string\n placeholder?: string\n}\n\nfunction FacetedBadgeList(props: FacetedBadgeListProps) {\n const {\n options = [],\n max = 2,\n placeholder = 'Select options...',\n className,\n badgeClassName,\n ...badgeListProps\n } = props\n\n const context = useFacetedContext('FacetedBadgeList')\n const values = Array.isArray(context.value)\n ? context.value\n : ([context.value].filter(Boolean) as string[])\n\n const getLabel = React.useCallback(\n (value: string) => {\n const option = options.find(opt => opt.value === value)\n return option?.label ?? value\n },\n [options]\n )\n\n if (!values || values.length === 0) {\n return (\n <div\n {...badgeListProps}\n className=\"flex w-full items-center gap-1 text-muted-foreground\"\n >\n {placeholder}\n <CaretUpDown className=\"ml-auto size-4 shrink-0 opacity-50\" />\n </div>\n )\n }\n\n return (\n <div\n {...badgeListProps}\n className={cn('flex flex-wrap items-center gap-1', className)}\n >\n {values.length > max ? (\n <Badge\n variant=\"secondary\"\n className={cn('rounded-sm px-1 font-normal', badgeClassName)}\n >\n {values.length} selected\n </Badge>\n ) : (\n values.map(value => (\n <Badge\n key={value}\n variant=\"secondary\"\n className={cn('rounded-sm px-1 font-normal', badgeClassName)}\n >\n <span className=\"truncate\">{getLabel(value)}</span>\n </Badge>\n ))\n )}\n </div>\n )\n}\n\nfunction FacetedContent(props: React.ComponentProps<typeof PopoverContent>) {\n const { className, children, ...contentProps } = props\n\n return (\n <PopoverContent\n {...contentProps}\n align=\"start\"\n className={cn(\n 'w-[200px] origin-(--radix-popover-content-transform-origin) p-0',\n className\n )}\n >\n <Command>{children}</Command>\n </PopoverContent>\n )\n}\n\nconst FacetedInput = CommandInput\n\nconst FacetedList = CommandList\n\nconst FacetedEmpty = CommandEmpty\n\nconst FacetedGroup = CommandGroup\n\ninterface FacetedItemProps extends React.ComponentProps<typeof CommandItem> {\n value: string\n}\n\nfunction FacetedItem(props: FacetedItemProps) {\n const { value, onSelect, className, children, ...itemProps } = props\n const context = useFacetedContext('FacetedItem')\n\n const isSelected = context.multiple\n ? Array.isArray(context.value) && context.value.includes(value)\n : context.value === value\n\n const onItemSelect = React.useCallback(\n (currentValue: string) => {\n if (onSelect) {\n onSelect(currentValue)\n } else if (context.onItemSelect) {\n context.onItemSelect(currentValue)\n }\n },\n [onSelect, context.onItemSelect]\n )\n\n return (\n <CommandItem\n aria-selected={isSelected}\n data-selected={isSelected}\n className={cn('gap-2', className)}\n onSelect={() => onItemSelect(value)}\n {...itemProps}\n >\n <span\n className={cn(\n 'flex size-4 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 <Check className=\"size-4\" />\n </span>\n {children}\n </CommandItem>\n )\n}\n\nconst FacetedSeparator = CommandSeparator\n\nexport {\n Faceted,\n FacetedBadgeList,\n FacetedContent,\n FacetedEmpty,\n FacetedGroup,\n FacetedInput,\n FacetedItem,\n FacetedList,\n FacetedSeparator,\n FacetedTrigger,\n}\n"],"names":["FacetedContext","React","useFacetedContext","name","context","Error","Faceted","props","openProp","onOpenChangeProp","value","onValueChange","children","multiple","facetedProps","uncontrolledOpen","setUncontrolledOpen","isControlled","undefined","open","onOpenChange","newOpen","onItemSelect","selectedValue","currentValue","Array","v","requestAnimationFrame","contextValue","Popover","FacetedTrigger","className","triggerProps","PopoverTrigger","cn","FacetedBadgeList","options","max","placeholder","badgeClassName","badgeListProps","values","Boolean","getLabel","option","opt","Badge","CaretUpDown","FacetedContent","contentProps","PopoverContent","Command","FacetedInput","CommandInput","FacetedList","CommandList","FacetedEmpty","CommandEmpty","FacetedGroup","CommandGroup","FacetedItem","onSelect","itemProps","isSelected","CommandItem","Check","FacetedSeparator","CommandSeparator"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\form.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/form.tsx"],"sourcesContent":["\r\n\r\nimport type { Scope } from '@radix-ui/react-context'\r\nimport type { ComponentProps, JSX, ReactNode } from 'react'\r\nimport type {\r\n ControllerProps,\r\n FieldError,\r\n FieldPath,\r\n FieldValues,\r\n} from 'react-hook-form'\r\n\r\nimport { createContextScope } from '@radix-ui/react-context'\r\nimport { Slot } from '@radix-ui/react-slot'\r\nimport { useId } from 'react'\r\nimport {\r\n Controller,\r\n FormProvider,\r\n useFormContext,\r\n useFormState,\r\n} from 'react-hook-form'\r\n\r\nimport { Label } from '@/components/label'\r\nimport { cn } from '@/lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: Form\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst Form = FormProvider\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Context: FormField\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst FORM_FIELD_NAME = 'FormField'\r\n\r\ntype ScopedProps<P> = P & { __scopeFormField?: Scope }\r\n\r\nconst [createFormFieldContext, createFormFieldScope] =\r\n createContextScope(FORM_FIELD_NAME)\r\n\r\ninterface FormFieldContextValue<\r\n TFieldValues extends FieldValues = FieldValues,\r\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\r\n> {\r\n name: TName\r\n}\r\n\r\nconst [FormFieldContextProvider, useFormFieldContext] =\r\n createFormFieldContext<FormFieldContextValue>(FORM_FIELD_NAME)\r\n\r\nfunction useFormItem(\r\n consumerName: string,\r\n scope: Scope\r\n): {\r\n formDescriptionId: string\r\n formItemId: string\r\n formMessageId: string\r\n id: string\r\n invalid: boolean\r\n isDirty: boolean\r\n isTouched: boolean\r\n isValidating: boolean\r\n name: string\r\n error?: FieldError\r\n} {\r\n const { id } = useFormItemContext(consumerName, scope)\r\n const { name } = useFormFieldContext(consumerName, scope)\r\n const { getFieldState } = useFormContext()\r\n const formState = useFormState({ name })\r\n const fieldState = getFieldState(name, formState)\r\n\r\n return {\r\n id,\r\n name,\r\n formDescriptionId: `form-item-description-${id}`,\r\n formItemId: `form-item-${id}`,\r\n formMessageId: `form-item-message-${id}`,\r\n ...fieldState,\r\n }\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: FormField\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction FormField<\r\n TFieldValues extends FieldValues = FieldValues,\r\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\r\n>(\r\n formFieldProps: ScopedProps<ControllerProps<TFieldValues, TName>>\r\n): JSX.Element {\r\n const { __scopeFormField, ...props } = formFieldProps\r\n\r\n return (\r\n <FormFieldContextProvider name={props.name} scope={__scopeFormField}>\r\n <Controller {...props} />\r\n </FormFieldContextProvider>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Context: FormItem\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst FORM_ITEM_NAME = 'FormItem'\r\n\r\ninterface FormItemContextValue {\r\n id: string\r\n}\r\n\r\nconst [FormItemContextProvider, useFormItemContext] =\r\n createFormFieldContext<FormItemContextValue>(FORM_ITEM_NAME)\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: FormItem\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction FormItem({\r\n __scopeFormField,\r\n className,\r\n ...props\r\n}: ScopedProps<ComponentProps<'div'>>): JSX.Element {\r\n const id = useId()\r\n\r\n return (\r\n <FormItemContextProvider id={id} scope={__scopeFormField}>\r\n <div\r\n className={cn('space-y-2', className)}\r\n data-slot=\"form-item\"\r\n {...props}\r\n />\r\n </FormItemContextProvider>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: FormLabel\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst FORM_LABEL_NAME = 'FormLabel'\r\n\r\nfunction FormLabel({\r\n __scopeFormField,\r\n ...props\r\n}: ScopedProps<ComponentProps<typeof Label>>): JSX.Element {\r\n const { formItemId, error } = useFormItem(FORM_LABEL_NAME, __scopeFormField)\r\n\r\n return (\r\n <Label\r\n data-invalid={error ? true : undefined}\r\n data-slot=\"form-label\"\r\n htmlFor={formItemId}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: FormControl\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst FORM_CONTROL_NAME = 'FormControl'\r\n\r\nfunction FormControl({\r\n __scopeFormField,\r\n ...props\r\n}: ScopedProps<ComponentProps<typeof Slot>>): JSX.Element {\r\n const { formDescriptionId, formItemId, formMessageId, error } = useFormItem(\r\n FORM_CONTROL_NAME,\r\n __scopeFormField\r\n )\r\n\r\n return (\r\n <Slot\r\n aria-describedby={\r\n error ? `${formDescriptionId} ${formMessageId}` : formDescriptionId\r\n }\r\n aria-invalid={Boolean(error)}\r\n data-slot=\"form-control\"\r\n id={formItemId}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: FormDescription\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction FormDescription({\r\n __scopeFormField,\r\n className,\r\n ...props\r\n}: ScopedProps<ComponentProps<'p'>>): JSX.Element {\r\n const { formDescriptionId } = useFormItem(FORM_MESSAGE_NAME, __scopeFormField)\r\n\r\n return (\r\n <p\r\n className={cn('text-muted-foreground text-xs', className)}\r\n data-slot=\"form-description\"\r\n id={formDescriptionId}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: FormMessage\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst FORM_MESSAGE_NAME = 'FormMessage'\r\n\r\nfunction FormMessage({\r\n __scopeFormField,\r\n children,\r\n className,\r\n ...props\r\n}: ScopedProps<ComponentProps<'p'>>): ReactNode {\r\n const { formMessageId, error } = useFormItem(\r\n FORM_MESSAGE_NAME,\r\n __scopeFormField\r\n )\r\n const body = error?.message ? String(error.message) : children\r\n\r\n if (!body) {\r\n return null\r\n }\r\n\r\n return (\r\n <p\r\n className={cn(\r\n 'text-xs',\r\n error?.message ? 'font-medium text-error' : 'text-gray-600',\r\n className\r\n )}\r\n data-slot=\"form-message\"\r\n id={formMessageId}\r\n {...props}\r\n >\r\n {body}\r\n </p>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport {\r\n createFormFieldScope,\r\n Form,\r\n FormControl,\r\n FormDescription,\r\n FormField,\r\n FormItem,\r\n FormLabel,\r\n FormMessage,\r\n}\r\n"],"names":["Form","FormProvider","FORM_FIELD_NAME","createFormFieldContext","createFormFieldScope","createContextScope","FormFieldContextProvider","useFormFieldContext","useFormItem","consumerName","scope","id","useFormItemContext","name","getFieldState","useFormContext","formState","useFormState","fieldState","FormField","formFieldProps","__scopeFormField","props","Controller","FormItemContextProvider","FormItem","className","useId","cn","FormLabel","formItemId","error","Label","undefined","FormControl","formDescriptionId","formMessageId","Slot","Boolean","FormDescription","FORM_MESSAGE_NAME","FormMessage","children","body","String"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components/form.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/form.tsx"],"sourcesContent":["\n\nimport type { Scope } from '@radix-ui/react-context'\nimport type { ComponentProps, JSX, ReactNode } from 'react'\nimport type {\n ControllerProps,\n FieldError,\n FieldPath,\n FieldValues,\n} from 'react-hook-form'\n\nimport { createContextScope } from '@radix-ui/react-context'\nimport { Slot } from '@radix-ui/react-slot'\nimport { useId } from 'react'\nimport {\n Controller,\n FormProvider,\n useFormContext,\n useFormState,\n} from 'react-hook-form'\n\nimport { Label } from '@/components/label'\nimport { cn } from '@/lib/utils'\n\n/* -----------------------------------------------------------------------------\n * Component: Form\n * -------------------------------------------------------------------------- */\n\nconst Form = FormProvider\n\n/* -----------------------------------------------------------------------------\n * Context: FormField\n * -------------------------------------------------------------------------- */\n\nconst FORM_FIELD_NAME = 'FormField'\n\ntype ScopedProps<P> = P & { __scopeFormField?: Scope }\n\nconst [createFormFieldContext, createFormFieldScope] =\n createContextScope(FORM_FIELD_NAME)\n\ninterface FormFieldContextValue<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n> {\n name: TName\n}\n\nconst [FormFieldContextProvider, useFormFieldContext] =\n createFormFieldContext<FormFieldContextValue>(FORM_FIELD_NAME)\n\nfunction useFormItem(\n consumerName: string,\n scope: Scope\n): {\n formDescriptionId: string\n formItemId: string\n formMessageId: string\n id: string\n invalid: boolean\n isDirty: boolean\n isTouched: boolean\n isValidating: boolean\n name: string\n error?: FieldError\n} {\n const { id } = useFormItemContext(consumerName, scope)\n const { name } = useFormFieldContext(consumerName, scope)\n const { getFieldState } = useFormContext()\n const formState = useFormState({ name })\n const fieldState = getFieldState(name, formState)\n\n return {\n id,\n name,\n formDescriptionId: `form-item-description-${id}`,\n formItemId: `form-item-${id}`,\n formMessageId: `form-item-message-${id}`,\n ...fieldState,\n }\n}\n\n/* -----------------------------------------------------------------------------\n * Component: FormField\n * -------------------------------------------------------------------------- */\n\nfunction FormField<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>(\n formFieldProps: ScopedProps<ControllerProps<TFieldValues, TName>>\n): JSX.Element {\n const { __scopeFormField, ...props } = formFieldProps\n\n return (\n <FormFieldContextProvider name={props.name} scope={__scopeFormField}>\n <Controller {...props} />\n </FormFieldContextProvider>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Context: FormItem\n * -------------------------------------------------------------------------- */\n\nconst FORM_ITEM_NAME = 'FormItem'\n\ninterface FormItemContextValue {\n id: string\n}\n\nconst [FormItemContextProvider, useFormItemContext] =\n createFormFieldContext<FormItemContextValue>(FORM_ITEM_NAME)\n\n/* -----------------------------------------------------------------------------\n * Component: FormItem\n * -------------------------------------------------------------------------- */\n\nfunction FormItem({\n __scopeFormField,\n className,\n ...props\n}: ScopedProps<ComponentProps<'div'>>): JSX.Element {\n const id = useId()\n\n return (\n <FormItemContextProvider id={id} scope={__scopeFormField}>\n <div\n className={cn('space-y-2', className)}\n data-slot=\"form-item\"\n {...props}\n />\n </FormItemContextProvider>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: FormLabel\n * -------------------------------------------------------------------------- */\n\nconst FORM_LABEL_NAME = 'FormLabel'\n\nfunction FormLabel({\n __scopeFormField,\n ...props\n}: ScopedProps<ComponentProps<typeof Label>>): JSX.Element {\n const { formItemId, error } = useFormItem(FORM_LABEL_NAME, __scopeFormField)\n\n return (\n <Label\n data-invalid={error ? true : undefined}\n data-slot=\"form-label\"\n htmlFor={formItemId}\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: FormControl\n * -------------------------------------------------------------------------- */\n\nconst FORM_CONTROL_NAME = 'FormControl'\n\nfunction FormControl({\n __scopeFormField,\n ...props\n}: ScopedProps<ComponentProps<typeof Slot>>): JSX.Element {\n const { formDescriptionId, formItemId, formMessageId, error } = useFormItem(\n FORM_CONTROL_NAME,\n __scopeFormField\n )\n\n return (\n <Slot\n aria-describedby={\n error ? `${formDescriptionId} ${formMessageId}` : formDescriptionId\n }\n aria-invalid={Boolean(error)}\n data-slot=\"form-control\"\n id={formItemId}\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: FormDescription\n * -------------------------------------------------------------------------- */\n\nfunction FormDescription({\n __scopeFormField,\n className,\n ...props\n}: ScopedProps<ComponentProps<'p'>>): JSX.Element {\n const { formDescriptionId } = useFormItem(FORM_MESSAGE_NAME, __scopeFormField)\n\n return (\n <p\n className={cn('text-muted-foreground text-xs', className)}\n data-slot=\"form-description\"\n id={formDescriptionId}\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: FormMessage\n * -------------------------------------------------------------------------- */\n\nconst FORM_MESSAGE_NAME = 'FormMessage'\n\nfunction FormMessage({\n __scopeFormField,\n children,\n className,\n ...props\n}: ScopedProps<ComponentProps<'p'>>): ReactNode {\n const { formMessageId, error } = useFormItem(\n FORM_MESSAGE_NAME,\n __scopeFormField\n )\n const body = error?.message ? String(error.message) : children\n\n if (!body) {\n return null\n }\n\n return (\n <p\n className={cn(\n 'text-xs',\n error?.message ? 'font-medium text-error' : 'text-gray-600',\n className\n )}\n data-slot=\"form-message\"\n id={formMessageId}\n {...props}\n >\n {body}\n </p>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n createFormFieldScope,\n Form,\n FormControl,\n FormDescription,\n FormField,\n FormItem,\n FormLabel,\n FormMessage,\n}\n"],"names":["Form","FormProvider","FORM_FIELD_NAME","createFormFieldContext","createFormFieldScope","createContextScope","FormFieldContextProvider","useFormFieldContext","useFormItem","consumerName","scope","id","useFormItemContext","name","getFieldState","useFormContext","formState","useFormState","fieldState","FormField","formFieldProps","__scopeFormField","props","Controller","FormItemContextProvider","FormItem","className","useId","cn","FormLabel","formItemId","error","Label","undefined","FormControl","formDescriptionId","formMessageId","Slot","Boolean","FormDescription","FORM_MESSAGE_NAME","FormMessage","children","body","String"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/icons/rumo.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/icons/rumo.tsx"],"sourcesContent":["export function Rumo() {\n return (\n <svg\n width={16}\n height={16}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <title>Rumo</title>\n <path\n d=\"M8.007 1.208c1.4 0 2.75.426 3.9 1.232l.305.227a6.727 6.727 0 012.553 4.746l-.002.101-.084.688c-.191 1.551-1.23 2.583-2.578 3.199l-.273.117a.499.499 0 01-.533-.103l-.055-.063-1.183-1.602a.502.502 0 01-.022-.561l.11-.19a4.47 4.47 0 00-1.17-5.672l-.178-.132a4.635 4.635 0 00-1.91-.781l-.29-.039a.517.517 0 01-.46-.442.486.486 0 01.377-.56L6.88 1.3c.369-.062.746-.093 1.126-.093z\"\n stroke=\"#2E3238\"\n strokeWidth={0.76}\n />\n <path\n d=\"M6.17 2.188c.883 0 1.817.433 2.548.9l.3.2.209.166c.465.408.786.981 1.038 1.44l.043.104a.5.5 0 01-.21.557l-.102.05-.678.245a.5.5 0 01-.284.016l-.091-.03a4.398 4.398 0 00-1.813-.387c-1.583 0-3.021.82-3.826 2.16l-.152.275a4.618 4.618 0 00-.509 2.28l-.005.101a.526.526 0 01-.705.4.482.482 0 01-.23-.19l-.045-.095A6.851 6.851 0 011.97 4.91l.194-.356c.204-.347.435-.673.694-.975l.072-.07.485-.38h.001l.148-.11a4.492 4.492 0 012.604-.83z\"\n stroke=\"#2E3238\"\n strokeWidth={0.76}\n />\n <path\n d=\"M3.344 8.032l1.932.186.08.014c.154.04.277.152.336.296l.023.074.05.186a4.45 4.45 0 005.064 3.17l.298-.062a4.585 4.585 0 001.818-.894l.085-.056a.524.524 0 01.742.324.481.481 0 01-.016.297l-.046.093a6.844 6.844 0 01-4.192 2.959l-.355.072a6.825 6.825 0 01-4.452-.74l-.258-.15-.086-.067-.533-.515c-.675-.652-1.042-1.348-1.178-2.151-.134-.787-.04-1.652.15-2.634l.027-.09a.5.5 0 01.417-.312h.094z\"\n stroke=\"#2E3238\"\n strokeWidth={0.76}\n />\n </svg>\n )\n}\n"],"names":["Rumo"],"mappings":"oCAAO,SAASA,IACd,MACE,WAAC,OACC,MAAO,GACP,OAAQ,GACR,QAAQ,YACR,KAAK,OACL,MAAM,6B,UAEN,UAAC,S,SAAM,M,GACP,UAAC,QACC,EAAE,0XACF,OAAO,UACP,YAAa,G,GAEf,UAAC,QACC,EAAE,ibACF,OAAO,UACP,YAAa,G,GAEf,UAAC,QACC,EAAE,wYACF,OAAO,UACP,YAAa,G,KAIrB,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/icons/vli.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/icons/vli.tsx"],"sourcesContent":["export function VLI() {\n return (\n <svg\n width={30}\n height={28}\n viewBox=\"0 0 30 28\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <title>VLI</title>\n <path\n d=\"M14.097 8.127c-.03.109-.066.218-.103.327-.083.24-.168.478-.252.717l-.38 1.079c-.076.217-.15.434-.227.65l-.409 1.171-.428 1.218-.3.869-.424 1.205-.429 1.218-.294.844-.418 1.194c-.11.312-.219.623-.327.935-.09.259-.224.492-.402.7a2.192 2.192 0 01-.687.542c-.19.095-.388.168-.6.201-.1.016-.199.03-.311.038l-.222.001a1.282 1.282 0 01-.283-.028c-.143-.034-.287-.063-.425-.12a2.296 2.296 0 01-.768-.505 2.13 2.13 0 01-.506-.82c-.13-.375-.263-.751-.394-1.127l-.324-.923-.409-1.163c-.091-.26-.181-.523-.273-.784l-.373-1.06-.276-.79-.371-1.055-.274-.784-.375-1.067c-.086-.247-.172-.495-.26-.742a2001.512 2001.512 0 00-.658-1.874.07.07 0 00-.022-.03c-.005-.012-.005-.024-.005-.037 1.115 0 2.23 0 3.35.004.008.024.011.043.017.061l.376 1.187.434 1.377c.097.309.195.617.291.926l.49 1.567.293.946a164.555 164.555 0 01.697 2.33c.036.123.068.246.105.373.044.007.086.02.126-.01.041-.16.078-.319.124-.474a172.025 172.025 0 01.91-3.013c.143-.463.29-.926.434-1.39l.457-1.455.362-1.145.39-1.216c.006-.022.009-.046.014-.068h3.339zM23.456 18.1l.001.031c0 .963 0 1.926-.006 2.895a.56.56 0 01-.103.008h-6.087l-.135.001c-.146.001-.284-.038-.42-.087-.4-.144-.69-.41-.87-.793a1.218 1.218 0 01-.12-.475c0-.013-.002-.016-.006-.018 0-.028-.003-.056-.003-.083V8.215l-.001-.082c1.127-.006 2.255-.006 3.39-.006.006.03.008.06.008.09v9.866c.025 0 .048.003.07.003H20.2c1.079 0 2.157 0 3.242.003l.015.01zM27.965 8.127c.006.03.004.06.004.09v8.582h-3.162v-.074-1.865-6.632-.095c1.05-.006 2.1-.006 3.158-.006zM26.131 21.277c-.013-.02-.014-.02-.031-.024-.075-.016-.15-.03-.224-.05a1.71 1.71 0 01-.683-.381 1.696 1.696 0 01-.556-1.075l-.01-.122c-.001-.008-.004-.012-.004-.012 0-.035.001-.07.004-.113.005-.01.005-.014.002-.018 0-.026 0-.052.003-.085.007-.01.007-.015.005-.019.005-.14.041-.273.09-.402.154-.417.431-.728.822-.938.2-.108.415-.172.652-.196h.374c.438.048.812.23 1.115.55.142.149.256.319.33.512.037.095.062.193.093.29.005.014.011.027.02.036a.12.12 0 010 .054.03.03 0 00.005.02c0 .188 0 .376-.004.566-.01.011-.016.02-.019.029-.017.061-.03.124-.05.185a1.74 1.74 0 01-1.408 1.17c-.013 0-.03.001-.019.023h-.507z\"\n stroke=\"#2E3238\"\n strokeWidth={1.25}\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M17.13 21.038a1.43 1.43 0 01.13-.004h6.088l.102-.002a.055.055 0 01-.027.014c-.023.002-.047 0-.07 0h-6.13a.648.648 0 01-.093-.008z\"\n stroke=\"#2E3238\"\n strokeWidth={0.1}\n strokeLinejoin=\"round\"\n />\n </svg>\n )\n}\n"],"names":["VLI"],"mappings":"oCAAO,SAASA,IACd,MACE,WAAC,OACC,MAAO,GACP,OAAQ,GACR,QAAQ,YACR,KAAK,OACL,MAAM,6B,UAEN,UAAC,S,SAAM,K,GACP,UAAC,QACC,EAAE,4hEACF,OAAO,UACP,YAAa,KACb,eAAe,O,GAEjB,UAAC,QACC,EAAE,oIACF,OAAO,UACP,YAAa,GACb,eAAe,O,KAIvB,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/input-otp.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/input-otp.tsx"],"sourcesContent":["\n\nimport { Minus } from '@phosphor-icons/react/dist/ssr'\nimport {\n OTPInput,\n OTPInputContext,\n REGEXP_ONLY_DIGITS_AND_CHARS,\n} from 'input-otp'\n\nimport { cn } from '@/lib/utils'\nimport { ComponentProps, JSX, useContext } from 'react'\n\n/* -----------------------------------------------------------------------------\n * Component: InputOtp\n * -------------------------------------------------------------------------- */\n\nfunction InputOTP({\n className,\n containerClassName,\n pattern,\n ...props\n}: ComponentProps<typeof OTPInput>): JSX.Element {\n return (\n <OTPInput\n aria-label=\"One-time password\"\n className={cn('disabled:cursor-not-allowed', className)}\n containerClassName={cn(\n 'flex items-center gap-2 has-[:disabled]:opacity-50',\n containerClassName\n )}\n data-slot=\"input-otp\"\n pattern={pattern || REGEXP_ONLY_DIGITS_AND_CHARS}\n {...props}\n />\n )\n}\nInputOTP.displayName = 'InputOTP'\n\n/* -----------------------------------------------------------------------------\n * Component: InputOTPGroup\n * -------------------------------------------------------------------------- */\n\nfunction InputOTPGroup({\n className,\n ...props\n}: ComponentProps<'div'>): JSX.Element {\n return (\n <div\n className={cn('flex items-center gap-1', className)}\n data-slot=\"input-otp-group\"\n role=\"group\"\n {...props}\n />\n )\n}\nInputOTPGroup.displayName = 'InputOTPGroup'\n\n/* -----------------------------------------------------------------------------\n * Component: InputOTPSlot\n * -------------------------------------------------------------------------- */\n\nfunction InputOTPSlot({\n className,\n index,\n ...props\n}: ComponentProps<'div'> & {\n index: number\n}): JSX.Element {\n const inputOTPContext = useContext(OTPInputContext)\n const { isActive, char, hasFakeCaret } = inputOTPContext.slots[index]\n\n return (\n <div\n className={cn(\n 'relative flex h-12 w-11 items-center justify-center rounded border border-stroke border-y text-base shadow-sm transition-all data-[active=true]:z-10 data-[active=true]:ring-1 data-[active=true]:ring-gbm-sky',\n className\n )}\n data-active={isActive}\n data-slot=\"input-otp-slot\"\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"h-4 w-px animate-caret-blink bg-foreground duration-1000\" />\n </div>\n )}\n </div>\n )\n}\nInputOTPSlot.displayName = 'InputOTPSlot'\n\n/* -----------------------------------------------------------------------------\n * Component: InputOTPSeparator\n * -------------------------------------------------------------------------- */\n\nfunction InputOTPSeparator({ ...props }: ComponentProps<'div'>): JSX.Element {\n return (\n <div data-slot=\"input-otp-separator\" role=\"separator\" {...props}>\n <Minus />\n </div>\n )\n}\nInputOTPSeparator.displayName = 'InputOTPSeparator'\n\nexport {\n REGEXP_ONLY_CHARS,\n REGEXP_ONLY_DIGITS,\n REGEXP_ONLY_DIGITS_AND_CHARS,\n} from 'input-otp'\nexport { InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot }\n"],"names":["InputOTP","className","containerClassName","pattern","props","OTPInput","cn","REGEXP_ONLY_DIGITS_AND_CHARS","InputOTPGroup","InputOTPSlot","index","isActive","char","hasFakeCaret","inputOTPContext","useContext","OTPInputContext","InputOTPSeparator","Minus"],"mappings":";2KAgBA,SAASA,EAAS,CAChBC,UAAAA,CAAS,CACTC,mBAAAA,CAAkB,CAClBC,QAAAA,CAAO,CACP,GAAGC,EAC6B,EAChC,MACE,UAACC,EAAAA,QAAQA,CAAAA,CACP,aAAW,oBACX,UAAWC,GAAAA,EAAAA,EAAAA,EAAG,8BAA+BL,GAC7C,mBAAoBK,GAAAA,EAAAA,EAAAA,EAClB,qDACAJ,GAEF,YAAU,YACV,QAASC,GAAWI,EAAAA,4BAA4BA,CAC/C,GAAGH,CAAK,EAGf,CAOA,SAASI,EAAc,CACrBP,UAAAA,CAAS,CACT,GAAGG,EACmB,EACtB,MACE,UAAC,OACC,UAAWE,GAAAA,EAAAA,EAAAA,EAAG,0BAA2BL,GACzC,YAAU,kBACV,KAAK,QACJ,GAAGG,CAAK,EAGf,CAOA,SAASK,EAAa,CACpBR,UAAAA,CAAS,CACTS,MAAAA,CAAK,CACL,GAAGN,EAGJ,EAEC,GAAM,CAAEO,SAAAA,CAAQ,CAAEC,KAAAA,CAAI,CAAEC,aAAAA,CAAY,CAAE,CAAGC,GADjBC,EAAAA,UAAAA,EAAWC,EAAAA,eAAeA,EACO,KAAK,CAACN,EAAM,CAErE,MACE,WAAC,OACC,UAAWJ,GAAAA,EAAAA,EAAAA,EACT,iNACAL,GAEF,cAAaU,EACb,YAAU,iBACT,GAAGP,CAAK,C,UAERQ,EACAC,GACC,UAAC,OAAI,UAAU,wE,SACb,UAAC,OAAI,UAAU,0D,OAKzB,CAOA,SAASI,EAAkB,CAAE,GAAGb,EAA8B,EAC5D,MACE,UAAC,OAAI,YAAU,sBAAsB,KAAK,YAAa,GAAGA,CAAK,C,SAC7D,UAACc,EAAAA,KAAKA,CAAAA,CAAAA,E,EAGZ,CAlEAlB,EAAS,WAAW,CAAG,WAmBvBQ,EAAc,WAAW,CAAG,gBAmC5BC,EAAa,WAAW,CAAG,eAa3BQ,EAAkB,WAAW,CAAG,oB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/input-password.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/input-password.tsx"],"sourcesContent":["\n\nimport { Eye, EyeSlash } from '@phosphor-icons/react/dist/ssr'\nimport {\n ComponentProps,\n JSX,\n MouseEventHandler,\n useCallback,\n useState,\n} from 'react'\n\nimport * as InputPrimitive from '@/primitive/input'\n\nimport { Spinner } from '@/components/spinner'\nimport { VariantProps } from '../lib/utils'\nimport { Button } from './button'\nimport { inputVariants } from './input'\n\n/* -----------------------------------------------------------------------------\n * Variant: InputPassword\n * -------------------------------------------------------------------------- */\n\nconst { input, root } = inputVariants()\n\n/* -----------------------------------------------------------------------------\n * Component: InputPassword\n * -------------------------------------------------------------------------- */\n\nfunction InputPassword({\n className,\n disabled,\n loaderPosition,\n loading,\n prefix,\n readOnly,\n spinner,\n suffix,\n ...props\n}: ComponentProps<typeof InputPrimitive.Root> &\n Omit<ComponentProps<typeof InputPrimitive.Field>, 'prefix' | 'type'> &\n VariantProps<typeof inputVariants>): JSX.Element {\n const [type, setType] = useState<'password' | 'text'>('password')\n\n const togglePasswordVisibility = useCallback<\n MouseEventHandler<HTMLButtonElement>\n >(() => {\n setType(prev => (prev === 'password' ? 'text' : 'password'))\n }, [])\n\n return (\n <InputPrimitive.Root\n className={root({ className: [!suffix && 'pr-1.5', className] })}\n data-slot=\"input-password\"\n disabled={disabled}\n loaderPosition={loaderPosition}\n loading={loading}\n prefix={prefix}\n readOnly={readOnly}\n spinner={spinner || <Spinner />}\n suffix={suffix}\n >\n <InputPrimitive.Field\n autoCapitalize=\"none\"\n className={input()}\n data-slot=\"input-password-item\"\n type={type}\n {...props}\n />\n <Button\n aria-label={type === 'password' ? 'Show password' : 'Hide password'}\n className=\"full size-8 rounded-full focus-visible:ring-0\"\n data-slot=\"input-password-toggle\"\n disabled={disabled}\n prefix={\n type === 'password' ? (\n <EyeSlash className=\"size-6\" />\n ) : (\n <Eye className=\"size-6\" />\n )\n }\n size=\"icon\"\n variant=\"ghost\"\n onClick={togglePasswordVisibility}\n />\n </InputPrimitive.Root>\n )\n}\nInputPassword.displayName = 'InputPassword'\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { InputPassword }\n"],"names":["input","root","inputVariants","InputPassword","className","disabled","loaderPosition","loading","prefix","readOnly","spinner","suffix","props","type","setType","useState","togglePasswordVisibility","useCallback","prev","InputPrimitive","Spinner","Button","EyeSlash","Eye"],"mappings":";+OAsBA,GAAM,CAAEA,MAAAA,CAAK,CAAEC,KAAAA,CAAI,CAAE,CAAGC,GAAAA,EAAAA,aAAAA,IAMxB,SAASC,EAAc,CACrBC,UAAAA,CAAS,CACTC,SAAAA,CAAQ,CACRC,eAAAA,CAAc,CACdC,QAAAA,CAAO,CACPC,OAAAA,CAAM,CACNC,SAAAA,CAAQ,CACRC,QAAAA,CAAO,CACPC,OAAAA,CAAM,CACN,GAAGC,EAG+B,EAClC,GAAM,CAACC,EAAMC,EAAQ,CAAGC,GAAAA,EAAAA,QAAAA,EAA8B,YAEhDC,EAA2BC,GAAAA,EAAAA,WAAAA,EAE/B,KACAH,EAAQI,GAASA,aAAAA,EAAsB,OAAS,WAClD,EAAG,EAAE,EAEL,MACE,WAACC,EAAAA,IAAmB,EAClB,UAAWlB,EAAK,CAAE,UAAW,CAAC,CAACU,GAAU,SAAUP,EAAU,GAC7D,YAAU,iBACV,SAAUC,EACV,eAAgBC,EAChB,QAASC,EACT,OAAQC,EACR,SAAUC,EACV,QAASC,GAAW,UAACU,EAAAA,OAAOA,CAAAA,CAAAA,GAC5B,OAAQT,E,UAER,UAACQ,EAAAA,KAAoB,EACnB,eAAe,OACf,UAAWnB,IACX,YAAU,sBACV,KAAMa,EACL,GAAGD,CAAK,GAEX,UAACS,EAAAA,MAAMA,CAAAA,CACL,aAAYR,aAAAA,EAAsB,gBAAkB,gBACpD,UAAU,gDACV,YAAU,wBACV,SAAUR,EACV,OACEQ,aAAAA,EACE,UAACS,EAAAA,QAAQA,CAAAA,CAAC,UAAU,Q,GAEpB,UAACC,EAAAA,GAAGA,CAAAA,CAAC,UAAU,Q,GAGnB,KAAK,OACL,QAAQ,QACR,QAASP,C,KAIjB,CACAb,EAAc,WAAW,CAAG,uB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/input.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/input.tsx"],"sourcesContent":["\n\nimport { ComponentProps, JSX } from 'react'\n\nimport { VariantProps, tv } from '@/lib/utils'\nimport * as InputPrimitive from '@/primitive/input'\nimport { Spinner } from './spinner'\n\n/* -----------------------------------------------------------------------------\n * Variant: Input\n * -------------------------------------------------------------------------- */\n\nconst inputVariants = tv({\n slots: {\n root: 'flex h-12 w-full items-center gap-4 rounded-md border border-stroke bg-background px-4 placeholder:text-gray-400 focus-within:outline-none focus-within:ring-1 focus-within:ring-gbm-sky data-[disabled=true]:cursor-not-allowed data-[disabled=true]:opacity-50',\n input:\n 'peer h-full w-full flex-1 overflow-hidden bg-transparent text-base outline-none placeholder:text-gray-400',\n },\n})\n\nconst { input, root } = inputVariants()\n\n/* -----------------------------------------------------------------------------\n * Component: Input\n * -------------------------------------------------------------------------- */\n\nfunction Input({\n className,\n disabled,\n loaderPosition,\n loading,\n prefix,\n readOnly,\n spinner,\n suffix,\n classNames,\n ...props\n}: ComponentProps<typeof InputPrimitive.Root> &\n Omit<ComponentProps<typeof InputPrimitive.Field>, 'prefix' | 'type'> &\n VariantProps<typeof inputVariants> & {\n type?: string\n classNames?: {\n wrapper?: string\n input?: string\n }\n }): JSX.Element {\n return (\n <InputPrimitive.Root\n className={root({ className: [className, classNames?.wrapper] })}\n data-slot=\"input\"\n disabled={disabled}\n loaderPosition={loaderPosition}\n loading={loading}\n prefix={prefix}\n readOnly={readOnly}\n spinner={spinner || <Spinner />}\n suffix={suffix}\n >\n <InputPrimitive.Field\n className={input({ className: classNames?.input })}\n data-slot=\"input-item\"\n {...props}\n />\n </InputPrimitive.Root>\n )\n}\nInput.displayName = 'Input'\n\nexport { Input, inputVariants }\n"],"names":["inputVariants","tv","input","root","Input","className","disabled","loaderPosition","loading","prefix","readOnly","spinner","suffix","classNames","props","InputPrimitive","Spinner"],"mappings":";6IAYA,IAAMA,EAAgBC,GAAAA,EAAAA,EAAAA,EAAG,CACvB,MAAO,CACL,KAAM,oQACN,MACE,2GACJ,CACF,GAEM,CAAEC,MAAAA,CAAK,CAAEC,KAAAA,CAAI,CAAE,CAAGH,IAMxB,SAASI,EAAM,CACbC,UAAAA,CAAS,CACTC,SAAAA,CAAQ,CACRC,eAAAA,CAAc,CACdC,QAAAA,CAAO,CACPC,OAAAA,CAAM,CACNC,SAAAA,CAAQ,CACRC,QAAAA,CAAO,CACPC,OAAAA,CAAM,CACNC,WAAAA,CAAU,CACV,GAAGC,EASF,EACD,MACE,UAACC,EAAAA,IAAmB,EAClB,UAAWZ,EAAK,CAAE,UAAW,CAACE,EAAWQ,GAAY,QAAQ,GAC7D,YAAU,QACV,SAAUP,EACV,eAAgBC,EAChB,QAASC,EACT,OAAQC,EACR,SAAUC,EACV,QAASC,GAAW,UAACK,EAAAA,OAAOA,CAAAA,CAAAA,GAC5B,OAAQJ,E,SAER,UAACG,EAAAA,KAAoB,EACnB,UAAWb,EAAM,CAAE,UAAWW,GAAY,KAAM,GAChD,YAAU,aACT,GAAGC,CAAK,IAIjB,CACAV,EAAM,WAAW,CAAG,e"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/label.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/label.tsx"],"sourcesContent":["\n\nimport * as LabelPrimitive from '@radix-ui/react-label'\nimport { ComponentProps, JSX } from 'react'\n\nimport { cn } from '@/lib/utils'\n\n/* -----------------------------------------------------------------------------\n * Component: Label\n * -------------------------------------------------------------------------- */\n\nfunction Label({\n className,\n children,\n required = false,\n ...props\n}: ComponentProps<typeof LabelPrimitive.Root> & {\n required?: boolean\n}): JSX.Element {\n return (\n <LabelPrimitive.Root\n className={cn(\n 'inline-block font-medium text-gbm-dark text-sm leading-none peer-disabled:opacity-50 peer-aria-invalid:text-error data-invalid:text-error group-data-disabled:opacity-50 peer-data-disabled:opacity-50',\n className\n )}\n data-slot=\"label\"\n {...props}\n >\n {children}\n {required && (\n <span className=\"ml-1 text-error\" aria-required=\"true\">\n *\n </span>\n )}\n </LabelPrimitive.Root>\n )\n}\nLabel.displayName = 'Label'\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Label }\n"],"names":["Label","className","children","required","props","LabelPrimitive","cn"],"mappings":";8GAWA,SAASA,EAAM,CACbC,UAAAA,CAAS,CACTC,SAAAA,CAAQ,CACRC,SAAAA,EAAW,EAAK,CAChB,GAAGC,EAGJ,EACC,MACE,WAACC,EAAAA,IAAmB,EAClB,UAAWC,GAAAA,EAAAA,EAAAA,EACT,yMACAL,GAEF,YAAU,QACT,GAAGG,CAAK,C,UAERF,EACAC,GACC,UAAC,QAAK,UAAU,kBAAkB,gBAAc,O,SAAO,G,KAM/D,CACAH,EAAM,WAAW,CAAG,e"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/mask-input.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/mask-input.tsx"],"sourcesContent":["\n\nimport { ComponentProps, useEffect, useState } from 'react'\n\nimport { cn } from '@/lib/utils'\nimport { Input } from './input'\n\n/* -----------------------------------------------------------------------------\n * Component: MaskInput\n * -------------------------------------------------------------------------- */\n\nfunction MaskInput({\n value,\n onChange,\n decimals = 3,\n className,\n ...rest\n}: Omit<ComponentProps<typeof Input>, 'value' | 'onChange'> & {\n value: number | undefined\n onChange: (value: number) => void\n decimals?: number\n}) {\n const scale = 10 ** decimals\n const [rawDigits, setRawDigits] = useState('')\n\n useEffect(() => {\n if (typeof value === 'number' && !Number.isNaN(value)) {\n const digits = Math.round(value * scale).toString()\n setRawDigits(digits)\n }\n }, [value, scale])\n\n function formatToMaskedValue(digits: string) {\n const number = Number(digits) / scale\n\n return new Intl.NumberFormat('pt-BR', {\n style: 'decimal',\n minimumFractionDigits: decimals,\n maximumFractionDigits: decimals,\n }).format(number)\n }\n\n function handleChange(e: React.ChangeEvent<HTMLInputElement>) {\n const input = e.target.value\n const digitsOnly = input.replace(/\\D/g, '')\n\n const parsed = Number(digitsOnly) / scale\n\n setRawDigits(digitsOnly)\n onChange(parsed)\n }\n\n return (\n <Input\n value={formatToMaskedValue(rawDigits)}\n onChange={handleChange}\n className={cn('h-12', className)}\n {...rest}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { MaskInput }\n"],"names":["MaskInput","value","onChange","decimals","className","rest","scale","rawDigits","setRawDigits","useState","useEffect","Number","Math","Input","formatToMaskedValue","digits","number","Intl","e","digitsOnly","input","parsed","cn"],"mappings":";2HAWA,SAASA,EAAU,CACjBC,MAAAA,CAAK,CACLC,SAAAA,CAAQ,CACRC,SAAAA,EAAW,CAAC,CACZC,UAAAA,CAAS,CACT,GAAGC,EAKJ,EACC,IAAMC,EAAQ,IAAMH,EACd,CAACI,EAAWC,EAAa,CAAGC,GAAAA,EAAAA,QAAAA,EAAS,UAE3CC,GAAAA,EAAAA,SAAAA,EAAU,KACa,UAAjB,OAAOT,GAAuBU,OAAO,KAAK,CAACV,IAE7CO,EADeI,KAAK,KAAK,CAACX,EAAQK,GAAO,QAAQ,GAGrD,EAAG,CAACL,EAAOK,EAAM,EAuBf,UAACO,EAAAA,KAAKA,CAAAA,CACJ,MAAOC,SAtBkBC,CAAc,EACzC,IAAMC,EAASL,OAAOI,GAAUT,EAEhC,OAAO,IAAIW,KAAK,YAAY,CAAC,QAAS,CACpC,MAAO,UACP,sBAAuBd,EACvB,sBAAuBA,CACzB,GAAG,MAAM,CAACa,EACZ,EAc+BT,GAC3B,SAbJ,SAAsBW,CAAsC,EAE1D,IAAMC,EAAaC,EADH,MAAM,CAAC,KAAK,CACH,OAAO,CAAC,MAAO,IAElCC,EAASV,OAAOQ,GAAcb,EAEpCE,EAAaW,GACbjB,EAASmB,EACX,EAMI,UAAWC,GAAAA,EAAAA,EAAAA,EAAG,OAAQlB,GACrB,GAAGC,CAAI,EAGd,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\multi-select.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/multi-select.tsx"],"sourcesContent":["\r\n\r\nimport { CaretDown, CaretUp, X } from '@phosphor-icons/react/dist/ssr'\r\nimport { ComponentProps, ComponentType, KeyboardEvent, useState } from 'react'\r\n\r\nimport { VariantProps, cn, tv } from '../lib/utils'\r\nimport { Badge } from './badge'\r\nimport { Button } from './button'\r\nimport { Checkbox } from './checkbox'\r\nimport {\r\n Command,\r\n CommandEmpty,\r\n CommandGroup,\r\n CommandInput,\r\n CommandItem,\r\n CommandList,\r\n} from './command'\r\nimport { Popover, PopoverContent, PopoverTrigger } from './popover'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Variant: MultiSelect\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst multiSelectVariants = tv({\r\n base: 'h-6 gap-0 px-1.5 font-normal text-xs',\r\n variants: {\r\n variant: {\r\n default: 'rounded-sm bg-azure-50 text-azure-500 hover:bg-card/80',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: MultiSelect\r\n * -------------------------------------------------------------------------- */\r\n\r\ntype MultiSelectProps = ComponentProps<'button'> &\r\n VariantProps<typeof multiSelectVariants> & {\r\n options: {\r\n label: string\r\n value: string\r\n icon?: ComponentType<{ className?: string }>\r\n }[]\r\n defaultValue?: string[]\r\n placeholder?: string\r\n maxCount?: number\r\n modalPopover?: boolean\r\n asChild?: boolean\r\n className?: string\r\n onValueChange?: (value: string[]) => void\r\n }\r\n\r\nfunction MultiSelect({\r\n options,\r\n onValueChange,\r\n variant,\r\n defaultValue = [],\r\n placeholder = 'Select options',\r\n maxCount = 2,\r\n modalPopover = false,\r\n className,\r\n ...props\r\n}: MultiSelectProps) {\r\n const [selectedValues, setSelectedValues] = useState<string[]>(defaultValue)\r\n const [isPopoverOpen, setIsPopoverOpen] = useState(false)\r\n\r\n const handleInputKeyDown = (event: KeyboardEvent<HTMLInputElement>) => {\r\n if (event.key === 'Enter') {\r\n setIsPopoverOpen(true)\r\n }\r\n }\r\n\r\n const toggleOption = (option: string) => {\r\n const newSelectedValues = selectedValues.includes(option)\r\n ? selectedValues.filter(value => value !== option)\r\n : [...selectedValues, option]\r\n setSelectedValues(newSelectedValues)\r\n onValueChange?.(newSelectedValues)\r\n }\r\n\r\n const handleClear = () => {\r\n setSelectedValues([])\r\n onValueChange?.([])\r\n }\r\n\r\n const handleTogglePopover = () => {\r\n setIsPopoverOpen(prev => !prev)\r\n }\r\n\r\n const clearExtraOptions = () => {\r\n const newSelectedValues = selectedValues.slice(0, maxCount)\r\n setSelectedValues(newSelectedValues)\r\n onValueChange?.(newSelectedValues)\r\n }\r\n\r\n const toggleAll = () => {\r\n if (selectedValues.length === options.length) {\r\n handleClear()\r\n } else {\r\n const allValues = options.map(option => option.value)\r\n setSelectedValues(allValues)\r\n onValueChange?.(allValues)\r\n }\r\n }\r\n\r\n return (\r\n <Popover\r\n open={isPopoverOpen}\r\n onOpenChange={setIsPopoverOpen}\r\n modal={modalPopover}\r\n >\r\n <PopoverTrigger asChild>\r\n <Button\r\n {...props}\r\n onClick={handleTogglePopover}\r\n className={cn(\r\n 'flex h-12 w-auto min-w-60 items-center justify-between rounded-md border border-stroke bg-white px-3 hover:bg-gray-50',\r\n className\r\n )}\r\n >\r\n {selectedValues.length > 0 ? (\r\n <div className=\"flex w-full items-center justify-between\">\r\n <div className=\"flex items-center gap-x-1\">\r\n {selectedValues.slice(0, maxCount).map(value => {\r\n const option = options.find(o => o.value === value)\r\n const IconComponent = option?.icon\r\n return (\r\n <Badge\r\n key={value}\r\n className={cn(multiSelectVariants({ variant }))}\r\n >\r\n {IconComponent && (\r\n <IconComponent className=\"mr-2 h-4 w-4\" />\r\n )}\r\n <span className=\"max-w-32 truncate\">{option?.label}</span>\r\n <X\r\n className=\"ml-1 size-3 cursor-pointer\"\r\n onClick={event => {\r\n event.stopPropagation()\r\n toggleOption(value)\r\n }}\r\n />\r\n </Badge>\r\n )\r\n })}\r\n\r\n {selectedValues.length > maxCount && (\r\n <Badge className={cn(multiSelectVariants({ variant }))}>\r\n {`+ ${selectedValues.length - maxCount} ...`}\r\n <X\r\n className=\"ml-1 size-3 cursor-pointer\"\r\n onClick={event => {\r\n event.stopPropagation()\r\n clearExtraOptions()\r\n }}\r\n />\r\n </Badge>\r\n )}\r\n </div>\r\n <div className=\"ml-4 flex items-center\">\r\n {isPopoverOpen ? (\r\n <CaretUp\r\n weight=\"bold\"\r\n className=\"size-4 cursor-pointer text-gbm-dark\"\r\n />\r\n ) : (\r\n <CaretDown\r\n weight=\"bold\"\r\n className=\"size-4 cursor-pointer text-gbm-dark\"\r\n />\r\n )}\r\n </div>\r\n </div>\r\n ) : (\r\n <div className=\"mx-auto flex w-full items-center justify-between\">\r\n <span className=\"font-normal text-gbm-dark/50 text-sm\">\r\n {placeholder === 'Select options'\r\n ? 'Selecione as opções'\r\n : placeholder}\r\n </span>\r\n {isPopoverOpen ? (\r\n <CaretUp\r\n weight=\"bold\"\r\n className=\"ml-2 size-4 cursor-pointer text-gbm-dark\"\r\n />\r\n ) : (\r\n <CaretDown\r\n weight=\"bold\"\r\n className=\"ml-2 size-4 cursor-pointer text-gbm-dark\"\r\n />\r\n )}\r\n </div>\r\n )}\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent\r\n className=\"w-auto p-0\"\r\n align=\"start\"\r\n onEscapeKeyDown={() => setIsPopoverOpen(false)}\r\n >\r\n <Command>\r\n <CommandInput\r\n placeholder=\"Pesquisar...\"\r\n onKeyDown={handleInputKeyDown}\r\n />\r\n <CommandList>\r\n <CommandEmpty>Nenhum resultado encontrado.</CommandEmpty>\r\n <CommandGroup>\r\n <CommandItem\r\n key=\"all\"\r\n onSelect={toggleAll}\r\n className=\"cursor-pointer\"\r\n >\r\n <Checkbox\r\n checked={selectedValues.length === options.length}\r\n className=\"mr-2\"\r\n />\r\n <span>(Selecionar todos)</span>\r\n </CommandItem>\r\n {options.map(option => {\r\n const isSelected = selectedValues.includes(option.value)\r\n return (\r\n <CommandItem\r\n key={option.value}\r\n onSelect={() => toggleOption(option.value)}\r\n className=\"cursor-pointer\"\r\n >\r\n <Checkbox checked={isSelected} className=\"mr-2\" />\r\n {option.icon && (\r\n <option.icon className=\"mr-2 size-4 text-gbm-dark\" />\r\n )}\r\n <span>{option.label}</span>\r\n </CommandItem>\r\n )\r\n })}\r\n </CommandGroup>\r\n </CommandList>\r\n </Command>\r\n </PopoverContent>\r\n </Popover>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport { MultiSelect, multiSelectVariants }\r\n"],"names":["multiSelectVariants","tv","MultiSelect","options","onValueChange","variant","defaultValue","placeholder","maxCount","modalPopover","className","props","selectedValues","setSelectedValues","useState","isPopoverOpen","setIsPopoverOpen","toggleOption","option","newSelectedValues","value","handleClear","clearExtraOptions","Popover","PopoverTrigger","Button","prev","cn","o","IconComponent","Badge","X","event","CaretUp","CaretDown","PopoverContent","Command","CommandInput","CommandList","CommandEmpty","CommandGroup","CommandItem","allValues","Checkbox","isSelected"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components/multi-select.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/multi-select.tsx"],"sourcesContent":["\n\nimport { CaretDown, CaretUp, X } from '@phosphor-icons/react/dist/ssr'\nimport { ComponentProps, ComponentType, KeyboardEvent, useState } from 'react'\n\nimport { VariantProps, cn, tv } from '../lib/utils'\nimport { Badge } from './badge'\nimport { Button } from './button'\nimport { Checkbox } from './checkbox'\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from './command'\nimport { Popover, PopoverContent, PopoverTrigger } from './popover'\n\n/* -----------------------------------------------------------------------------\n * Variant: MultiSelect\n * -------------------------------------------------------------------------- */\n\nconst multiSelectVariants = tv({\n base: 'h-6 gap-0 px-1.5 font-normal text-xs',\n variants: {\n variant: {\n default: 'rounded-sm bg-azure-50 text-azure-500 hover:bg-card/80',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n})\n\n/* -----------------------------------------------------------------------------\n * Component: MultiSelect\n * -------------------------------------------------------------------------- */\n\ntype MultiSelectProps = ComponentProps<'button'> &\n VariantProps<typeof multiSelectVariants> & {\n options: {\n label: string\n value: string\n icon?: ComponentType<{ className?: string }>\n }[]\n defaultValue?: string[]\n placeholder?: string\n maxCount?: number\n modalPopover?: boolean\n asChild?: boolean\n className?: string\n onValueChange?: (value: string[]) => void\n }\n\nfunction MultiSelect({\n options,\n onValueChange,\n variant,\n defaultValue = [],\n placeholder = 'Select options',\n maxCount = 2,\n modalPopover = false,\n className,\n ...props\n}: MultiSelectProps) {\n const [selectedValues, setSelectedValues] = useState<string[]>(defaultValue)\n const [isPopoverOpen, setIsPopoverOpen] = useState(false)\n\n const handleInputKeyDown = (event: KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n setIsPopoverOpen(true)\n }\n }\n\n const toggleOption = (option: string) => {\n const newSelectedValues = selectedValues.includes(option)\n ? selectedValues.filter(value => value !== option)\n : [...selectedValues, option]\n setSelectedValues(newSelectedValues)\n onValueChange?.(newSelectedValues)\n }\n\n const handleClear = () => {\n setSelectedValues([])\n onValueChange?.([])\n }\n\n const handleTogglePopover = () => {\n setIsPopoverOpen(prev => !prev)\n }\n\n const clearExtraOptions = () => {\n const newSelectedValues = selectedValues.slice(0, maxCount)\n setSelectedValues(newSelectedValues)\n onValueChange?.(newSelectedValues)\n }\n\n const toggleAll = () => {\n if (selectedValues.length === options.length) {\n handleClear()\n } else {\n const allValues = options.map(option => option.value)\n setSelectedValues(allValues)\n onValueChange?.(allValues)\n }\n }\n\n return (\n <Popover\n open={isPopoverOpen}\n onOpenChange={setIsPopoverOpen}\n modal={modalPopover}\n >\n <PopoverTrigger asChild>\n <Button\n {...props}\n onClick={handleTogglePopover}\n className={cn(\n 'flex h-12 w-auto min-w-60 items-center justify-between rounded-md border border-stroke bg-white px-3 hover:bg-gray-50',\n className\n )}\n >\n {selectedValues.length > 0 ? (\n <div className=\"flex w-full items-center justify-between\">\n <div className=\"flex items-center gap-x-1\">\n {selectedValues.slice(0, maxCount).map(value => {\n const option = options.find(o => o.value === value)\n const IconComponent = option?.icon\n return (\n <Badge\n key={value}\n className={cn(multiSelectVariants({ variant }))}\n >\n {IconComponent && (\n <IconComponent className=\"mr-2 h-4 w-4\" />\n )}\n <span className=\"max-w-32 truncate\">{option?.label}</span>\n <X\n className=\"ml-1 size-3 cursor-pointer\"\n onClick={event => {\n event.stopPropagation()\n toggleOption(value)\n }}\n />\n </Badge>\n )\n })}\n\n {selectedValues.length > maxCount && (\n <Badge className={cn(multiSelectVariants({ variant }))}>\n {`+ ${selectedValues.length - maxCount} ...`}\n <X\n className=\"ml-1 size-3 cursor-pointer\"\n onClick={event => {\n event.stopPropagation()\n clearExtraOptions()\n }}\n />\n </Badge>\n )}\n </div>\n <div className=\"ml-4 flex items-center\">\n {isPopoverOpen ? (\n <CaretUp\n weight=\"bold\"\n className=\"size-4 cursor-pointer text-gbm-dark\"\n />\n ) : (\n <CaretDown\n weight=\"bold\"\n className=\"size-4 cursor-pointer text-gbm-dark\"\n />\n )}\n </div>\n </div>\n ) : (\n <div className=\"mx-auto flex w-full items-center justify-between\">\n <span className=\"font-normal text-gbm-dark/50 text-sm\">\n {placeholder === 'Select options'\n ? 'Selecione as opções'\n : placeholder}\n </span>\n {isPopoverOpen ? (\n <CaretUp\n weight=\"bold\"\n className=\"ml-2 size-4 cursor-pointer text-gbm-dark\"\n />\n ) : (\n <CaretDown\n weight=\"bold\"\n className=\"ml-2 size-4 cursor-pointer text-gbm-dark\"\n />\n )}\n </div>\n )}\n </Button>\n </PopoverTrigger>\n <PopoverContent\n className=\"w-auto p-0\"\n align=\"start\"\n onEscapeKeyDown={() => setIsPopoverOpen(false)}\n >\n <Command>\n <CommandInput\n placeholder=\"Pesquisar...\"\n onKeyDown={handleInputKeyDown}\n />\n <CommandList>\n <CommandEmpty>Nenhum resultado encontrado.</CommandEmpty>\n <CommandGroup>\n <CommandItem\n key=\"all\"\n onSelect={toggleAll}\n className=\"cursor-pointer\"\n >\n <Checkbox\n checked={selectedValues.length === options.length}\n className=\"mr-2\"\n />\n <span>(Selecionar todos)</span>\n </CommandItem>\n {options.map(option => {\n const isSelected = selectedValues.includes(option.value)\n return (\n <CommandItem\n key={option.value}\n onSelect={() => toggleOption(option.value)}\n className=\"cursor-pointer\"\n >\n <Checkbox checked={isSelected} className=\"mr-2\" />\n {option.icon && (\n <option.icon className=\"mr-2 size-4 text-gbm-dark\" />\n )}\n <span>{option.label}</span>\n </CommandItem>\n )\n })}\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { MultiSelect, multiSelectVariants }\n"],"names":["multiSelectVariants","tv","MultiSelect","options","onValueChange","variant","defaultValue","placeholder","maxCount","modalPopover","className","props","selectedValues","setSelectedValues","useState","isPopoverOpen","setIsPopoverOpen","toggleOption","option","newSelectedValues","value","handleClear","clearExtraOptions","Popover","PopoverTrigger","Button","prev","cn","o","IconComponent","Badge","X","event","CaretUp","CaretDown","PopoverContent","Command","CommandInput","CommandList","CommandEmpty","CommandGroup","CommandItem","allValues","Checkbox","isSelected"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/page-layout/index.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/page-layout/index.ts"],"sourcesContent":["import { PageLayoutBreadcrumb } from './page-layout-breadcrumb'\nimport { PageLayoutContent } from './page-layout-content'\nimport { PageLayoutHeader } from './page-layout-header'\nimport { PageLayoutRoot } from './page-layout-root'\nimport { PageLayoutTitle } from './page-layout-title'\n\nexport const PageLayout = {\n Root: PageLayoutRoot,\n Breadcrumb: PageLayoutBreadcrumb,\n Title: PageLayoutTitle,\n Header: PageLayoutHeader,\n Content: PageLayoutContent,\n}\n"],"names":["PageLayout","PageLayoutRoot","PageLayoutBreadcrumb","PageLayoutTitle","PageLayoutHeader","PageLayoutContent"],"mappings":"oNAMO,IAAMA,EAAa,CACxB,KAAMC,EAAAA,cAAcA,CACpB,WAAYC,EAAAA,oBAAoBA,CAChC,MAAOC,EAAAA,eAAeA,CACtB,OAAQC,EAAAA,gBAAgBA,CACxB,QAASC,EAAAA,iBAAiBA,AAC5B,S"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/page-layout/page-layout-breadcrumb.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/page-layout/page-layout-breadcrumb.tsx"],"sourcesContent":["import { ElementType, Fragment, JSX } from 'react'\n\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from '../breadcrumb'\n\ninterface PageLayoutBreadcrumbProps {\n items: {\n title: string\n href?: string\n }[]\n module: {\n title: string\n icon: ElementType\n }\n}\n\nfunction PageLayoutBreadcrumb({\n module,\n items,\n}: PageLayoutBreadcrumbProps): JSX.Element {\n const Icon = module.icon\n\n return (\n <Breadcrumb>\n <BreadcrumbList>\n <BreadcrumbItem>\n <Icon />\n <BreadcrumbPage>{module.title}</BreadcrumbPage>\n </BreadcrumbItem>\n {items.map((item, index) => (\n <Fragment key={index}>\n <BreadcrumbSeparator />\n <BreadcrumbItem>\n {item.href ? (\n <BreadcrumbLink href={item.href}>{item.title}</BreadcrumbLink>\n ) : (\n <BreadcrumbPage>{item.title}</BreadcrumbPage>\n )}\n </BreadcrumbItem>\n </Fragment>\n ))}\n </BreadcrumbList>\n </Breadcrumb>\n )\n}\n\nexport { PageLayoutBreadcrumb }\n"],"names":["PageLayoutBreadcrumb","module","items","Icon","Breadcrumb","BreadcrumbList","BreadcrumbItem","BreadcrumbPage","item","index","Fragment","BreadcrumbSeparator","BreadcrumbLink"],"mappings":"+FAsBA,SAASA,EAAqB,CAC5BC,OAAAA,CAAM,CACNC,MAAAA,CAAK,CACqB,EAC1B,IAAMC,EAAOF,EAAO,IAAI,CAExB,MACE,UAACG,EAAAA,UAAUA,CAAAA,C,SACT,WAACC,EAAAA,cAAcA,CAAAA,C,UACb,WAACC,EAAAA,cAAcA,CAAAA,C,UACb,UAACH,EAAAA,CAAAA,GACD,UAACI,EAAAA,cAAcA,CAAAA,C,SAAEN,EAAO,KAAK,A,MAE9BC,EAAM,GAAG,CAAC,CAACM,EAAMC,IAChB,WAACC,EAAAA,QAAQA,CAAAA,C,UACP,UAACC,EAAAA,mBAAmBA,CAAAA,CAAAA,GACpB,UAACL,EAAAA,cAAcA,CAAAA,C,SACZE,EAAK,IAAI,CACR,UAACI,EAAAA,cAAcA,CAAAA,CAAC,KAAMJ,EAAK,IAAI,C,SAAGA,EAAK,KAAK,A,GAE5C,UAACD,EAAAA,cAAcA,CAAAA,C,SAAEC,EAAK,KAAK,A,OANlBC,I,IAczB,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/page-layout/page-layout-content.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/page-layout/page-layout-content.tsx"],"sourcesContent":["import { ComponentProps, JSX } from 'react'\n\nimport { cn } from '@/lib/utils'\n\nfunction PageLayoutContent({\n className,\n ...props\n}: ComponentProps<'div'>): JSX.Element {\n return <div className={cn('mt-6', className)} {...props} />\n}\n\nexport { PageLayoutContent }\n"],"names":["PageLayoutContent","className","props","cn"],"mappings":"yEAIA,SAASA,EAAkB,CACzBC,UAAAA,CAAS,CACT,GAAGC,EACmB,EACtB,MAAO,UAAC,OAAI,UAAWC,AAAAA,GAAAA,EAAAA,EAAAA,AAAAA,EAAG,OAAQF,GAAa,GAAGC,CAAK,A,EACzD,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/page-layout/page-layout-header.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/page-layout/page-layout-header.tsx"],"sourcesContent":["import { ComponentProps, JSX } from 'react'\n\nimport { cn } from '@/lib/utils'\n\nfunction PageLayoutHeader({\n className,\n ...props\n}: ComponentProps<'div'>): JSX.Element {\n return (\n <header\n className={cn(\n 'mt-6 flex flex-wrap items-center gap-4 rounded-lg border border-stroke bg-header p-4',\n className\n )}\n {...props}\n />\n )\n}\n\nexport { PageLayoutHeader }\n"],"names":["PageLayoutHeader","className","props","cn"],"mappings":"yEAIA,SAASA,EAAiB,CACxBC,UAAAA,CAAS,CACT,GAAGC,EACmB,EACtB,MACE,UAAC,UACC,UAAWC,AAAAA,GAAAA,EAAAA,EAAAA,AAAAA,EACT,uFACAF,GAED,GAAGC,CAAK,A,EAGf,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/page-layout/page-layout-root.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/page-layout/page-layout-root.tsx"],"sourcesContent":["import { ComponentProps, JSX } from 'react'\n\nimport { cn } from '@/lib/utils'\n\nfunction PageLayoutRoot({\n className,\n ...props\n}: ComponentProps<'div'>): JSX.Element {\n return <div className={cn(className)} {...props} />\n}\n\nexport { PageLayoutRoot }\n"],"names":["PageLayoutRoot","className","props","cn"],"mappings":"yEAIA,SAASA,EAAe,CACtBC,UAAAA,CAAS,CACT,GAAGC,EACmB,EACtB,MAAO,UAAC,OAAI,UAAWC,AAAAA,GAAAA,EAAAA,EAAAA,AAAAA,EAAGF,GAAa,GAAGC,CAAK,A,EACjD,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/page-layout/page-layout-title.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/page-layout/page-layout-title.tsx"],"sourcesContent":["import { ComponentProps, JSX } from 'react'\n\nimport { Title } from '../title'\n\nfunction PageLayoutTitle(props: ComponentProps<typeof Title>): JSX.Element {\n return <Title {...props} />\n}\n\nexport { PageLayoutTitle }\n"],"names":["PageLayoutTitle","props","Title"],"mappings":"kEAIA,SAASA,EAAgBC,CAAmC,EAC1D,MAAO,UAACC,EAAAA,KAAKA,CAAAA,CAAE,GAAGD,CAAK,A,EACzB,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/pagination.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/pagination.tsx"],"sourcesContent":["import { CaretLeft, CaretRight, DotsThree } from '@phosphor-icons/react'\nimport { ComponentProps, JSX } from 'react'\n\nimport { VariantProps, cn } from '../lib/utils'\nimport { buttonVariants } from './button'\n\n/* -----------------------------------------------------------------------------\n * Component: Pagination\n * -------------------------------------------------------------------------- */\n\nfunction Pagination({\n className,\n ...props\n}: ComponentProps<'nav'>): JSX.Element {\n return (\n <nav\n aria-label=\"pagination\"\n className={cn('mx-auto flex w-full justify-center', className)}\n data-slot=\"pagination\"\n role=\"navigation\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: PaginationContent\n * -------------------------------------------------------------------------- */\n\nfunction PaginationContent({\n className,\n ...props\n}: ComponentProps<'ul'>): JSX.Element {\n return (\n <ul\n className={cn('flex flex-row items-center gap-1', className)}\n data-slot=\"pagination-content\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: PaginationItem\n * -------------------------------------------------------------------------- */\n\nfunction PaginationItem(props: ComponentProps<'li'>): JSX.Element {\n return <li data-slot=\"pagination-item\" {...props} />\n}\n\n/* -----------------------------------------------------------------------------\n * Component: PaginationLink\n * -------------------------------------------------------------------------- */\n\nfunction PaginationLink({\n children,\n className,\n isActive,\n size = 'icon',\n ...props\n}: ComponentProps<'a'> &\n Pick<VariantProps<typeof buttonVariants>, 'size'> & {\n isActive?: boolean\n }): JSX.Element {\n return (\n <a\n aria-current={isActive ? 'page' : undefined}\n className={buttonVariants({\n className,\n size,\n variant: isActive ? 'outline' : 'ghost',\n })}\n data-slot=\"pagination-link\"\n {...props}\n >\n {children}\n </a>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: PaginationPrevious\n * -------------------------------------------------------------------------- */\n\nfunction PaginationPrevious({\n ...props\n}: ComponentProps<'a'> &\n Pick<VariantProps<typeof buttonVariants>, 'size'> & {\n isActive?: boolean\n }): JSX.Element {\n return (\n <PaginationLink\n aria-label=\"Go to previous page\"\n data-slot=\"pagination-previous\"\n size=\"md\"\n {...props}\n >\n <CaretLeft className=\"size-4\" />\n <span>Previous</span>\n </PaginationLink>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: PaginationNext\n * -------------------------------------------------------------------------- */\n\nfunction PaginationNext({\n ...props\n}: ComponentProps<'a'> &\n Pick<VariantProps<typeof buttonVariants>, 'size'> & {\n isActive?: boolean\n }): JSX.Element {\n return (\n <PaginationLink\n aria-label=\"Go to next page\"\n data-slot=\"pagination-next\"\n size=\"md\"\n {...props}\n >\n <span>Next</span>\n <CaretRight />\n </PaginationLink>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: PaginationEllipsis\n * -------------------------------------------------------------------------- */\n\nfunction PaginationEllipsis({\n className,\n ...props\n}: ComponentProps<'span'>): JSX.Element {\n return (\n <span\n aria-hidden\n className={cn('flex size-10 items-center justify-center', className)}\n data-slot=\"pagination-ellipsis\"\n {...props}\n >\n <DotsThree className=\"size-4\" />\n <span className=\"sr-only\">More pages</span>\n </span>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n Pagination,\n PaginationContent,\n PaginationLink,\n PaginationItem,\n PaginationPrevious,\n PaginationNext,\n PaginationEllipsis,\n}\n"],"names":["Pagination","className","props","cn","PaginationContent","PaginationItem","PaginationLink","children","isActive","size","undefined","buttonVariants","PaginationPrevious","CaretLeft","PaginationNext","CaretRight","PaginationEllipsis","DotsThree"],"mappings":"4IAUA,SAASA,EAAW,CAClBC,UAAAA,CAAS,CACT,GAAGC,EACmB,EACtB,MACE,UAAC,OACC,aAAW,aACX,UAAWC,AAAAA,GAAAA,EAAAA,EAAAA,AAAAA,EAAG,qCAAsCF,GACpD,YAAU,aACV,KAAK,aACJ,GAAGC,CAAK,A,EAGf,CAMA,SAASE,EAAkB,CACzBH,UAAAA,CAAS,CACT,GAAGC,EACkB,EACrB,MACE,UAAC,MACC,UAAWC,AAAAA,GAAAA,EAAAA,EAAAA,AAAAA,EAAG,mCAAoCF,GAClD,YAAU,qBACT,GAAGC,CAAK,A,EAGf,CAMA,SAASG,EAAeH,CAA2B,EACjD,MAAO,UAAC,MAAG,YAAU,kBAAmB,GAAGA,CAAK,A,EAClD,CAMA,SAASI,EAAe,CACtBC,SAAAA,CAAQ,CACRN,UAAAA,CAAS,CACTO,SAAAA,CAAQ,CACRC,KAAAA,EAAO,MAAM,CACb,GAAGP,EAIF,EACD,MACE,UAAC,KACC,eAAcM,EAAW,OAASE,OAClC,UAAWC,AAAAA,GAAAA,EAAAA,cAAAA,AAAAA,EAAe,CACxBV,UAAAA,EACAQ,KAAAA,EACA,QAASD,EAAW,UAAY,OAClC,GACA,YAAU,kBACT,GAAGN,CAAK,C,SAERK,C,EAGP,CAMA,SAASK,EAAmB,CAC1B,GAAGV,EAIF,EACD,MACE,WAACI,EAAAA,CACC,aAAW,sBACX,YAAU,sBACV,KAAK,KACJ,GAAGJ,CAAK,C,UAET,UAACW,EAAAA,SAASA,CAAAA,CAAC,UAAU,Q,GACrB,UAAC,Q,SAAK,U,KAGZ,CAMA,SAASC,EAAe,CACtB,GAAGZ,EAIF,EACD,MACE,WAACI,EAAAA,CACC,aAAW,kBACX,YAAU,kBACV,KAAK,KACJ,GAAGJ,CAAK,C,UAET,UAAC,Q,SAAK,M,GACN,UAACa,EAAAA,UAAUA,CAAAA,CAAAA,G,EAGjB,CAMA,SAASC,EAAmB,CAC1Bf,UAAAA,CAAS,CACT,GAAGC,EACoB,EACvB,MACE,WAAC,QACC,cAAW,GACX,UAAWC,AAAAA,GAAAA,EAAAA,EAAAA,AAAAA,EAAG,2CAA4CF,GAC1D,YAAU,sBACT,GAAGC,CAAK,C,UAET,UAACe,EAAAA,SAASA,CAAAA,CAAC,UAAU,Q,GACrB,UAAC,QAAK,UAAU,U,SAAU,Y,KAGhC,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/popover.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/popover.tsx"],"sourcesContent":["\n\nimport * as PopoverPrimitive from '@radix-ui/react-popover'\nimport { ComponentProps, JSX } from 'react'\n\nimport { cn } from '@/lib/utils'\n\n/* -----------------------------------------------------------------------------\n * Component: Popover\n * -------------------------------------------------------------------------- */\n\nfunction Popover({\n ...props\n}: ComponentProps<typeof PopoverPrimitive.Root>): JSX.Element {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />\n}\n\n/* -----------------------------------------------------------------------------\n * Component: PopoverTrigger\n * -------------------------------------------------------------------------- */\n\nfunction PopoverTrigger({\n ...props\n}: ComponentProps<typeof PopoverPrimitive.Trigger>): JSX.Element {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />\n}\n\n/* -----------------------------------------------------------------------------\n * Component: PopoverAnchor\n * -------------------------------------------------------------------------- */\n\nfunction PopoverAnchor({\n ...props\n}: ComponentProps<typeof PopoverPrimitive.Anchor>): JSX.Element {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />\n}\n\n/* -----------------------------------------------------------------------------\n * Component: PopoverContent\n * -------------------------------------------------------------------------- */\n\nfunction PopoverContent({\n align = 'center',\n className,\n sideOffset = 4,\n ...props\n}: ComponentProps<typeof PopoverPrimitive.Content>): JSX.Element {\n return (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n align={align}\n className={cn(\n 'data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:data-[side=top]:slide-in-from-bottom-2 data-[state=open]:data-[side=right]:slide-in-from-left-2 data-[state=open]:data-[side=bottom]:slide-in-from-top-2 data-[state=open]:data-[side=left]:slide-in-from-right-2 data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=closed]:data-[side=top]:slide-out-to-bottom-2 data-[state=closed]:data-[side=right]:slide-out-to-left-2 data-[state=closed]:data-[side=bottom]:slide-out-to-top-2 data-[state=closed]:data-[side=left]:slide-out-to-right-2 z-50 min-w-32 rounded-md border border-stroke bg-white p-4 text-gbm-dark shadow-lg outline-hidden data-[state=closed]:animate-out data-[state=open]:animate-in',\n className\n )}\n data-slot=\"popover-content\"\n sideOffset={sideOffset}\n {...props}\n />\n </PopoverPrimitive.Portal>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: PopoverArrow\n * -------------------------------------------------------------------------- */\n\nfunction PopoverArrow({\n className,\n ...props\n}: ComponentProps<typeof PopoverPrimitive.Arrow>): JSX.Element {\n return (\n <PopoverPrimitive.Arrow\n className={cn('fill-stroke', className)}\n data-slot=\"popover-arrow\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Popover, PopoverTrigger, PopoverAnchor, PopoverContent, PopoverArrow }\n"],"names":["Popover","props","PopoverPrimitive","PopoverTrigger","PopoverAnchor","PopoverContent","align","className","sideOffset","cn","PopoverArrow"],"mappings":";gHAWA,SAASA,EAAQ,CACf,GAAGC,EAC0C,EAC7C,MAAO,UAACC,EAAAA,IAAqB,EAAC,YAAU,UAAW,GAAGD,CAAK,EAC7D,CAMA,SAASE,EAAe,CACtB,GAAGF,EAC6C,EAChD,MAAO,UAACC,EAAAA,OAAwB,EAAC,YAAU,kBAAmB,GAAGD,CAAK,EACxE,CAMA,SAASG,EAAc,CACrB,GAAGH,EAC4C,EAC/C,MAAO,UAACC,EAAAA,MAAuB,EAAC,YAAU,iBAAkB,GAAGD,CAAK,EACtE,CAMA,SAASI,EAAe,CACtBC,MAAAA,EAAQ,QAAQ,CAChBC,UAAAA,CAAS,CACTC,WAAAA,EAAa,CAAC,CACd,GAAGP,EAC6C,EAChD,MACE,UAACC,EAAAA,MAAuB,E,SACtB,UAACA,EAAAA,OAAwB,EACvB,MAAOI,EACP,UAAWG,GAAAA,EAAAA,EAAAA,EACT,quBACAF,GAEF,YAAU,kBACV,WAAYC,EACX,GAAGP,CAAK,IAIjB,CAMA,SAASS,EAAa,CACpBH,UAAAA,CAAS,CACT,GAAGN,EAC2C,EAC9C,MACE,UAACC,EAAAA,KAAsB,EACrB,UAAWO,GAAAA,EAAAA,EAAAA,EAAG,cAAeF,GAC7B,YAAU,gBACT,GAAGN,CAAK,EAGf,Q"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components
|
|
1
|
+
{"version":3,"file":"components/radio-group.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/radio-group.tsx"],"sourcesContent":["import type { ComponentProps, JSX } from 'react'\n\nimport * as RadioGroupPrimitive from '@radix-ui/react-radio-group'\n\nimport { cn } from '@/lib/utils'\n\n/* -----------------------------------------------------------------------------\n * Component: RadioGroup\n * -------------------------------------------------------------------------- */\n\nfunction RadioGroup({\n className,\n ...props\n}: ComponentProps<typeof RadioGroupPrimitive.Root>): JSX.Element {\n return (\n <RadioGroupPrimitive.Root\n className={cn('grid gap-2', className)}\n data-slot=\"radio-group\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: RadioGroupItem\n * -------------------------------------------------------------------------- */\n\nfunction RadioGroupItem({\n className,\n ...props\n}: ComponentProps<typeof RadioGroupPrimitive.Item>): JSX.Element {\n return (\n <RadioGroupPrimitive.Item\n className={cn(\n 'peer inline-flex size-4 shrink-0 items-center justify-center rounded-full border border-stroke shadow-xs outline-hidden transition hover:not-disabled:not-aria-checked:border-gbm-sky/60 focus-visible:border-gbm-sky focus-visible:ring-3 focus-visible:ring-gbm-sky/50 disabled:opacity-50 aria-checked:border-gbm-sky aria-checked:bg-gbm-sky focus-visible:aria-checked:ring-gbm-sky/20 aria-invalid:border-error aria-invalid:ring-error/20 aria-checked:aria-invalid:bg-error hover:not-disabled:not-aria-checked:aria-invalid:border-error/60 dark:bg-input/30 dark:aria-invalid:ring-error/40 dark:focus-visible:aria-checked:ring-gbm-sky/40',\n className\n )}\n data-slot=\"radio-group-item\"\n {...props}\n >\n <RadioGroupPrimitive.Indicator\n className=\"size-1 rounded-full bg-background\"\n data-slot=\"radio-group-indicator\"\n />\n </RadioGroupPrimitive.Item>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { RadioGroup, RadioGroupItem }\n"],"names":["RadioGroup","className","props","RadioGroupPrimitive","cn","RadioGroupItem"],"mappings":"oHAUA,SAASA,EAAW,CAClBC,UAAAA,CAAS,CACT,GAAGC,EAC6C,EAChD,MACE,UAACC,EAAAA,IAAwB,EACvB,UAAWC,AAAAA,GAAAA,EAAAA,EAAAA,AAAAA,EAAG,aAAcH,GAC5B,YAAU,cACT,GAAGC,CAAK,A,EAGf,CAMA,SAASG,EAAe,CACtBJ,UAAAA,CAAS,CACT,GAAGC,EAC6C,EAChD,MACE,UAACC,EAAAA,IAAwB,EACvB,UAAWC,AAAAA,GAAAA,EAAAA,EAAAA,AAAAA,EACT,wnBACAH,GAEF,YAAU,mBACT,GAAGC,CAAK,C,SAET,UAACC,EAAAA,SAA6B,EAC5B,UAAU,oCACV,YAAU,uB,IAIlB,Q"}
|