@gbmtech/aurora-ui 0.4.73 → 0.4.75
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/alert-dialog.cjs +1 -1
- package/dist/cjs/components/app-layout/index.cjs +1 -1
- package/dist/cjs/components/app-layout/index.cjs.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/index.cjs +1 -1
- package/dist/cjs/components/app-layout/sidebar/index.cjs.map +1 -1
- package/dist/cjs/components/app-layout/sidebar/sidebar.cjs +1 -1
- package/dist/cjs/components/avatar.cjs +1 -1
- package/dist/cjs/components/badge.cjs +1 -1
- package/dist/cjs/components/breadcrumb.cjs +1 -1
- package/dist/cjs/components/command.cjs +1 -1
- package/dist/cjs/components/context-menu.cjs +1 -1
- package/dist/cjs/components/data-table/data-table-action-bar.cjs +1 -1
- package/dist/cjs/components/date-picker-with-range.cjs +2 -2
- package/dist/cjs/components/date-picker-with-range.cjs.map +1 -1
- package/dist/cjs/components/dialog.cjs +1 -1
- package/dist/cjs/components/dropdown-menu.cjs +1 -1
- package/dist/cjs/components/faceted.cjs +1 -1
- package/dist/cjs/components/form.cjs +1 -1
- package/dist/cjs/components/input-otp.cjs +1 -1
- package/dist/cjs/components/multi-select.cjs +1 -1
- package/dist/cjs/components/multi-select.cjs.map +1 -1
- package/dist/cjs/components/pagination.cjs +1 -1
- package/dist/cjs/components/select.cjs +1 -1
- package/dist/cjs/components/separator.cjs +1 -1
- package/dist/cjs/components/sheet/sheet.cjs +1 -1
- package/dist/cjs/components/sortable.cjs +1 -1
- package/dist/cjs/components/table-expandable.cjs +1 -1
- package/dist/cjs/components/table.cjs +1 -1
- package/dist/cjs/components/tabs/tabs-root.cjs +1 -1
- package/dist/cjs/components/time-picker-input.cjs +1 -1
- package/dist/cjs/components/time-picker-input.cjs.map +1 -1
- package/dist/cjs/components/tooltip.cjs +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/lib/composition.cjs +1 -1
- package/dist/cjs/lib/data-table.cjs +1 -1
- package/dist/cjs/lib/index.cjs +1 -1
- package/dist/cjs/lib/index.cjs.map +1 -1
- package/dist/cjs/lib/parsers.cjs +1 -1
- package/dist/cjs/primitive/input.cjs +1 -1
- package/dist/esm/components/alert-dialog.js +1 -1
- package/dist/esm/components/alert-dialog.js.map +1 -1
- package/dist/esm/components/app-layout/app-layout-breadcrumb.js +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 +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 +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 +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 +1 -1
- package/dist/esm/components/app-layout/app-layout-provider.js.map +1 -1
- package/dist/esm/components/app-layout/app-layout.js +1 -1
- package/dist/esm/components/app-layout/app-layout.js.map +1 -1
- package/dist/esm/components/app-layout/sidebar/app-sidebar.js +1 -1
- package/dist/esm/components/app-layout/sidebar/app-sidebar.js.map +1 -1
- package/dist/esm/components/app-layout/sidebar/index.js +2 -1
- package/dist/esm/components/app-layout/sidebar/index.js.map +1 -0
- package/dist/esm/components/app-layout/sidebar/logo.js +1 -1
- package/dist/esm/components/app-layout/sidebar/logo.js.map +1 -1
- package/dist/esm/components/app-layout/sidebar/nav-modules.js +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 +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 +1 -1
- package/dist/esm/components/app-layout/sidebar/nav-user.js.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 +1 -1
- package/dist/esm/components/app-layout/sidebar/sidebar.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-content.js +1 -1
- package/dist/esm/components/autocomplete/autocomplete-content.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-context.js +1 -1
- package/dist/esm/components/autocomplete/autocomplete-context.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-empty.js +1 -1
- package/dist/esm/components/autocomplete/autocomplete-empty.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-input.js +1 -1
- package/dist/esm/components/autocomplete/autocomplete-input.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-item.js +1 -1
- package/dist/esm/components/autocomplete/autocomplete-item.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete-list.js +1 -1
- package/dist/esm/components/autocomplete/autocomplete-list.js.map +1 -1
- package/dist/esm/components/autocomplete/autocomplete.js +1 -1
- package/dist/esm/components/autocomplete/autocomplete.js.map +1 -1
- package/dist/esm/components/avatar.js +1 -1
- package/dist/esm/components/avatar.js.map +1 -1
- package/dist/esm/components/badge.js +1 -1
- package/dist/esm/components/badge.js.map +1 -1
- package/dist/esm/components/breadcrumb.js +1 -1
- package/dist/esm/components/breadcrumb.js.map +1 -1
- package/dist/esm/components/button.js +1 -1
- package/dist/esm/components/button.js.map +1 -1
- package/dist/esm/components/calendar.js +1 -1
- package/dist/esm/components/calendar.js.map +1 -1
- package/dist/esm/components/checkbox.js +1 -1
- package/dist/esm/components/checkbox.js.map +1 -1
- package/dist/esm/components/combobox.js +1 -1
- package/dist/esm/components/combobox.js.map +1 -1
- package/dist/esm/components/command.js +1 -1
- package/dist/esm/components/command.js.map +1 -1
- package/dist/esm/components/context-menu.js +1 -1
- package/dist/esm/components/context-menu.js.map +1 -1
- package/dist/esm/components/data-table/data-table-action-bar.js +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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/date-picker-with-range.js +2 -2
- package/dist/esm/components/date-picker-with-range.js.map +1 -1
- package/dist/esm/components/date-picker.js +1 -1
- package/dist/esm/components/date-picker.js.map +1 -1
- package/dist/esm/components/date-time-picker-with-range.js +1 -1
- package/dist/esm/components/date-time-picker-with-range.js.map +1 -1
- package/dist/esm/components/datetime-picker/datetime-picker.js +1 -1
- package/dist/esm/components/datetime-picker/datetime-picker.js.map +1 -1
- package/dist/esm/components/datetime-picker/month-year-picker.js +1 -1
- package/dist/esm/components/datetime-picker/month-year-picker.js.map +1 -1
- package/dist/esm/components/datetime-picker/time-item.js +1 -1
- package/dist/esm/components/datetime-picker/time-item.js.map +1 -1
- package/dist/esm/components/dialog.js +1 -1
- package/dist/esm/components/dialog.js.map +1 -1
- package/dist/esm/components/dropdown-menu.js +1 -1
- package/dist/esm/components/dropdown-menu.js.map +1 -1
- package/dist/esm/components/faceted.js +1 -1
- package/dist/esm/components/faceted.js.map +1 -1
- package/dist/esm/components/form.js +1 -1
- package/dist/esm/components/form.js.map +1 -1
- package/dist/esm/components/icons/rumo.js +1 -1
- package/dist/esm/components/icons/rumo.js.map +1 -1
- package/dist/esm/components/icons/vli.js +1 -1
- package/dist/esm/components/icons/vli.js.map +1 -1
- package/dist/esm/components/input-otp.js +1 -1
- package/dist/esm/components/input-otp.js.map +1 -1
- package/dist/esm/components/input-password.js +1 -1
- package/dist/esm/components/input-password.js.map +1 -1
- package/dist/esm/components/input.js +1 -1
- package/dist/esm/components/input.js.map +1 -1
- package/dist/esm/components/label.js +1 -1
- package/dist/esm/components/label.js.map +1 -1
- package/dist/esm/components/mask-input.js +1 -1
- package/dist/esm/components/mask-input.js.map +1 -1
- package/dist/esm/components/multi-select.js +1 -1
- package/dist/esm/components/multi-select.js.map +1 -1
- package/dist/esm/components/pagination.js +1 -1
- package/dist/esm/components/pagination.js.map +1 -1
- package/dist/esm/components/popover.js +1 -1
- package/dist/esm/components/popover.js.map +1 -1
- package/dist/esm/components/radio-group.js +1 -1
- package/dist/esm/components/radio-group.js.map +1 -1
- package/dist/esm/components/scroll-area.js +1 -1
- package/dist/esm/components/scroll-area.js.map +1 -1
- package/dist/esm/components/select.js +1 -1
- package/dist/esm/components/select.js.map +1 -1
- package/dist/esm/components/separator.js +1 -1
- package/dist/esm/components/separator.js.map +1 -1
- package/dist/esm/components/sheet/sheet-content-variants.js +1 -1
- package/dist/esm/components/sheet/sheet-content-variants.js.map +1 -1
- package/dist/esm/components/sheet/sheet.js +1 -1
- package/dist/esm/components/sheet/sheet.js.map +1 -1
- package/dist/esm/components/skeleton.js +1 -1
- package/dist/esm/components/skeleton.js.map +1 -1
- package/dist/esm/components/slider.js +1 -1
- package/dist/esm/components/slider.js.map +1 -1
- package/dist/esm/components/sortable.js +3 -3
- package/dist/esm/components/sortable.js.map +1 -1
- package/dist/esm/components/spinner.js +1 -1
- package/dist/esm/components/spinner.js.map +1 -1
- package/dist/esm/components/switch.js +1 -1
- package/dist/esm/components/switch.js.map +1 -1
- package/dist/esm/components/table-expandable.js +1 -1
- package/dist/esm/components/table-expandable.js.map +1 -1
- package/dist/esm/components/table.js +1 -1
- package/dist/esm/components/table.js.map +1 -1
- package/dist/esm/components/tabs/index.js +1 -1
- package/dist/esm/components/tabs/index.js.map +1 -1
- package/dist/esm/components/tabs/tabs-content.js +1 -1
- package/dist/esm/components/tabs/tabs-content.js.map +1 -1
- package/dist/esm/components/tabs/tabs-list.js +1 -1
- package/dist/esm/components/tabs/tabs-list.js.map +1 -1
- package/dist/esm/components/tabs/tabs-root.js +1 -1
- package/dist/esm/components/tabs/tabs-root.js.map +1 -1
- package/dist/esm/components/tabs/tabs-trigger.js +1 -1
- package/dist/esm/components/tabs/tabs-trigger.js.map +1 -1
- package/dist/esm/components/textarea.js +1 -1
- package/dist/esm/components/textarea.js.map +1 -1
- package/dist/esm/components/theme-provider.js +1 -1
- package/dist/esm/components/theme-provider.js.map +1 -1
- package/dist/esm/components/theme-toggle.js +1 -1
- package/dist/esm/components/theme-toggle.js.map +1 -1
- package/dist/esm/components/time-picker-input.js +1 -1
- package/dist/esm/components/time-picker-input.js.map +1 -1
- package/dist/esm/components/time-picker.js +1 -1
- package/dist/esm/components/time-picker.js.map +1 -1
- package/dist/esm/components/title.js +1 -1
- package/dist/esm/components/title.js.map +1 -1
- package/dist/esm/components/tokens-grid.js +1 -1
- package/dist/esm/components/tokens-grid.js.map +1 -1
- package/dist/esm/components/tooltip.js +1 -1
- package/dist/esm/components/tooltip.js.map +1 -1
- package/dist/esm/hooks/use-callback-ref.js +1 -1
- package/dist/esm/hooks/use-callback-ref.js.map +1 -1
- package/dist/esm/hooks/use-data-table.js +1 -1
- package/dist/esm/hooks/use-data-table.js.map +1 -1
- package/dist/esm/hooks/use-debounce.js +1 -1
- package/dist/esm/hooks/use-debounce.js.map +1 -1
- package/dist/esm/hooks/use-debounced-callback.js +1 -1
- package/dist/esm/hooks/use-debounced-callback.js.map +1 -1
- package/dist/esm/hooks/use-mobile.js +1 -1
- package/dist/esm/hooks/use-mobile.js.map +1 -1
- package/dist/esm/lib/composition.js +1 -1
- package/dist/esm/lib/composition.js.map +1 -1
- package/dist/esm/lib/data-table.js +1 -1
- package/dist/esm/lib/data-table.js.map +1 -1
- package/dist/esm/lib/id.js +1 -1
- package/dist/esm/lib/id.js.map +1 -1
- package/dist/esm/lib/parsers.js +1 -1
- package/dist/esm/lib/parsers.js.map +1 -1
- package/dist/esm/lib/utils.js +1 -1
- package/dist/esm/lib/utils.js.map +1 -1
- package/dist/esm/primitive/input.js +1 -1
- package/dist/esm/primitive/input.js.map +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\scroll-area.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/scroll-area.tsx"],"sourcesContent":["\r\n\r\nimport type { Scope } from '@radix-ui/react-context'\r\nimport type { ComponentProps, JSX } from 'react'\r\n\r\nimport { createContextScope } from '@radix-ui/react-context'\r\nimport * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area'\r\n\r\nimport type { VariantProps } from '@/lib/utils'\r\n\r\nimport { cn, tv } from '@/lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Variant: ScrollAreaScrollbar\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst scrollAreaScrollbarVariants = tv({\r\n base: 'flex touch-none select-none p-px transition-colors',\r\n compoundVariants: [\r\n {\r\n className: 'w-1.5',\r\n orientation: 'vertical',\r\n size: 'sm',\r\n },\r\n {\r\n className: 'w-2',\r\n orientation: 'vertical',\r\n size: 'md',\r\n },\r\n {\r\n className: 'w-2.5',\r\n orientation: 'vertical',\r\n size: 'lg',\r\n },\r\n {\r\n className: 'h-1.5',\r\n orientation: 'horizontal',\r\n size: 'sm',\r\n },\r\n {\r\n className: 'h-2',\r\n orientation: 'horizontal',\r\n size: 'md',\r\n },\r\n {\r\n className: 'h-2.5',\r\n orientation: 'horizontal',\r\n size: 'lg',\r\n },\r\n ],\r\n variants: {\r\n orientation: {\r\n horizontal: 'w-full flex-col border-t border-t-transparent',\r\n vertical: 'h-full flex-row border-l border-l-transparent',\r\n },\r\n size: {\r\n none: '',\r\n sm: '',\r\n md: '',\r\n lg: '',\r\n },\r\n },\r\n defaultVariants: {\r\n size: 'md',\r\n vertical: 'vertical',\r\n },\r\n})\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Context: ScrollArea\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst SCROLL_AREA_NAME = 'ScrollArea'\r\n\r\ntype ScopedProps<P> = P & { __scopeScrollArea?: Scope }\r\n\r\nconst [createScrollAreaContext] = createContextScope(SCROLL_AREA_NAME)\r\n\r\ntype ScrollAreaContextValue = Pick<\r\n VariantProps<typeof scrollAreaScrollbarVariants>,\r\n 'size'\r\n>\r\n\r\nconst [ScrollAreaContextProvider, useScrollAreaContext] =\r\n createScrollAreaContext<ScrollAreaContextValue>(SCROLL_AREA_NAME)\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: ScrollArea\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction ScrollArea({\r\n __scopeScrollArea,\r\n children,\r\n className,\r\n size,\r\n ...props\r\n}: ScopedProps<\r\n ComponentProps<typeof ScrollAreaPrimitive.Root> & ScrollAreaContextValue\r\n>): JSX.Element {\r\n return (\r\n <ScrollAreaContextProvider scope={__scopeScrollArea} size={size}>\r\n <ScrollAreaPrimitive.Root\r\n className={cn('relative', className)}\r\n data-slot=\"scroll-area\"\r\n {...props}\r\n >\r\n <ScrollAreaPrimitive.Viewport\r\n className=\"size-full rounded-[inherit] outline-ring ring-ring/50 transition focus-visible:outline-1 focus-visible:ring-4\"\r\n data-slot=\"scroll-area-viewport\"\r\n >\r\n {children}\r\n </ScrollAreaPrimitive.Viewport>\r\n <ScrollAreaScrollbar orientation=\"vertical\" />\r\n <ScrollAreaScrollbar orientation=\"horizontal\" />\r\n <ScrollAreaPrimitive.Corner />\r\n </ScrollAreaPrimitive.Root>\r\n </ScrollAreaContextProvider>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: ScrollAreaScrollbar\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction ScrollAreaScrollbar({\r\n __scopeScrollArea,\r\n className,\r\n orientation,\r\n ...props\r\n}: ScopedProps<\r\n ComponentProps<typeof ScrollAreaPrimitive.Scrollbar>\r\n>): JSX.Element {\r\n const { size } = useScrollAreaContext(SCROLL_AREA_NAME, __scopeScrollArea)\r\n\r\n return (\r\n <ScrollAreaPrimitive.Scrollbar\r\n className={scrollAreaScrollbarVariants({ className, orientation, size })}\r\n data-slot=\"scroll-area-scrollbar\"\r\n orientation={orientation}\r\n {...props}\r\n >\r\n <ScrollAreaPrimitive.ScrollAreaThumb className=\"relative flex-1 rounded-full bg-stroke\" />\r\n </ScrollAreaPrimitive.Scrollbar>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport { ScrollArea, ScrollAreaScrollbar }\r\n"],"names":["scrollAreaScrollbarVariants","tv","SCROLL_AREA_NAME","createScrollAreaContext","createContextScope","ScrollAreaContextProvider","useScrollAreaContext","ScrollArea","__scopeScrollArea","children","className","size","props","ScrollAreaPrimitive","cn","ScrollAreaScrollbar","orientation"],"mappings":";
|
|
1
|
+
{"version":3,"file":"components\\scroll-area.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/scroll-area.tsx"],"sourcesContent":["\r\n\r\nimport type { Scope } from '@radix-ui/react-context'\r\nimport type { ComponentProps, JSX } from 'react'\r\n\r\nimport { createContextScope } from '@radix-ui/react-context'\r\nimport * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area'\r\n\r\nimport type { VariantProps } from '@/lib/utils'\r\n\r\nimport { cn, tv } from '@/lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Variant: ScrollAreaScrollbar\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst scrollAreaScrollbarVariants = tv({\r\n base: 'flex touch-none select-none p-px transition-colors',\r\n compoundVariants: [\r\n {\r\n className: 'w-1.5',\r\n orientation: 'vertical',\r\n size: 'sm',\r\n },\r\n {\r\n className: 'w-2',\r\n orientation: 'vertical',\r\n size: 'md',\r\n },\r\n {\r\n className: 'w-2.5',\r\n orientation: 'vertical',\r\n size: 'lg',\r\n },\r\n {\r\n className: 'h-1.5',\r\n orientation: 'horizontal',\r\n size: 'sm',\r\n },\r\n {\r\n className: 'h-2',\r\n orientation: 'horizontal',\r\n size: 'md',\r\n },\r\n {\r\n className: 'h-2.5',\r\n orientation: 'horizontal',\r\n size: 'lg',\r\n },\r\n ],\r\n variants: {\r\n orientation: {\r\n horizontal: 'w-full flex-col border-t border-t-transparent',\r\n vertical: 'h-full flex-row border-l border-l-transparent',\r\n },\r\n size: {\r\n none: '',\r\n sm: '',\r\n md: '',\r\n lg: '',\r\n },\r\n },\r\n defaultVariants: {\r\n size: 'md',\r\n vertical: 'vertical',\r\n },\r\n})\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Context: ScrollArea\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst SCROLL_AREA_NAME = 'ScrollArea'\r\n\r\ntype ScopedProps<P> = P & { __scopeScrollArea?: Scope }\r\n\r\nconst [createScrollAreaContext] = createContextScope(SCROLL_AREA_NAME)\r\n\r\ntype ScrollAreaContextValue = Pick<\r\n VariantProps<typeof scrollAreaScrollbarVariants>,\r\n 'size'\r\n>\r\n\r\nconst [ScrollAreaContextProvider, useScrollAreaContext] =\r\n createScrollAreaContext<ScrollAreaContextValue>(SCROLL_AREA_NAME)\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: ScrollArea\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction ScrollArea({\r\n __scopeScrollArea,\r\n children,\r\n className,\r\n size,\r\n ...props\r\n}: ScopedProps<\r\n ComponentProps<typeof ScrollAreaPrimitive.Root> & ScrollAreaContextValue\r\n>): JSX.Element {\r\n return (\r\n <ScrollAreaContextProvider scope={__scopeScrollArea} size={size}>\r\n <ScrollAreaPrimitive.Root\r\n className={cn('relative', className)}\r\n data-slot=\"scroll-area\"\r\n {...props}\r\n >\r\n <ScrollAreaPrimitive.Viewport\r\n className=\"size-full rounded-[inherit] outline-ring ring-ring/50 transition focus-visible:outline-1 focus-visible:ring-4\"\r\n data-slot=\"scroll-area-viewport\"\r\n >\r\n {children}\r\n </ScrollAreaPrimitive.Viewport>\r\n <ScrollAreaScrollbar orientation=\"vertical\" />\r\n <ScrollAreaScrollbar orientation=\"horizontal\" />\r\n <ScrollAreaPrimitive.Corner />\r\n </ScrollAreaPrimitive.Root>\r\n </ScrollAreaContextProvider>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: ScrollAreaScrollbar\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction ScrollAreaScrollbar({\r\n __scopeScrollArea,\r\n className,\r\n orientation,\r\n ...props\r\n}: ScopedProps<\r\n ComponentProps<typeof ScrollAreaPrimitive.Scrollbar>\r\n>): JSX.Element {\r\n const { size } = useScrollAreaContext(SCROLL_AREA_NAME, __scopeScrollArea)\r\n\r\n return (\r\n <ScrollAreaPrimitive.Scrollbar\r\n className={scrollAreaScrollbarVariants({ className, orientation, size })}\r\n data-slot=\"scroll-area-scrollbar\"\r\n orientation={orientation}\r\n {...props}\r\n >\r\n <ScrollAreaPrimitive.ScrollAreaThumb className=\"relative flex-1 rounded-full bg-stroke\" />\r\n </ScrollAreaPrimitive.Scrollbar>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport { ScrollArea, ScrollAreaScrollbar }\r\n"],"names":["scrollAreaScrollbarVariants","tv","SCROLL_AREA_NAME","createScrollAreaContext","createContextScope","ScrollAreaContextProvider","useScrollAreaContext","ScrollArea","__scopeScrollArea","children","className","size","props","ScrollAreaPrimitive","cn","ScrollAreaScrollbar","orientation"],"mappings":";6QAgBA,IAAMA,EAA8BC,EAAG,CACrC,KAAM,qDACN,iBAAkB,CAChB,CACE,UAAW,QACX,YAAa,WACb,KAAM,IACR,EACA,CACE,UAAW,MACX,YAAa,WACb,KAAM,IACR,EACA,CACE,UAAW,QACX,YAAa,WACb,KAAM,IACR,EACA,CACE,UAAW,QACX,YAAa,aACb,KAAM,IACR,EACA,CACE,UAAW,MACX,YAAa,aACb,KAAM,IACR,EACA,CACE,UAAW,QACX,YAAa,aACb,KAAM,IACR,EACD,CACD,SAAU,CACR,YAAa,CACX,WAAY,gDACZ,SAAU,+CACZ,EACA,KAAM,CACJ,KAAM,GACN,GAAI,GACJ,GAAI,GACJ,GAAI,EACN,CACF,EACA,gBAAiB,CACf,KAAM,KACN,SAAU,UACZ,CACF,GAMMC,EAAmB,aAInB,CAACC,EAAwB,CAAGC,EAAmBF,GAO/C,CAACG,EAA2BC,EAAqB,CACrDH,EAAgDD,GAMlD,SAASK,EAAW,CAClBC,kBAAAA,CAAiB,CACjBC,SAAAA,CAAQ,CACRC,UAAAA,CAAS,CACTC,KAAAA,CAAI,CACJ,GAAGC,EAGJ,EACC,OACE,EAACP,EAAAA,CAA0B,MAAOG,EAAmB,KAAMG,E,SACzD,EAACE,EAAwB,CACvB,UAAWC,EAAG,WAAYJ,GAC1B,YAAU,cACT,GAAGE,CAAK,C,UAET,EAACC,EAA4B,CAC3B,UAAU,gHACV,YAAU,uB,SAETJ,C,GAEH,EAACM,EAAAA,CAAoB,YAAY,U,GACjC,EAACA,EAAAA,CAAoB,YAAY,Y,GACjC,EAACF,EAA0B,I,IAInC,CAMA,SAASE,EAAoB,CAC3BP,kBAAAA,CAAiB,CACjBE,UAAAA,CAAS,CACTM,YAAAA,CAAW,CACX,GAAGJ,EAGJ,EACC,GAAM,CAAED,KAAAA,CAAI,CAAE,CAAGL,EAAqBJ,EAAkBM,GAExD,OACE,EAACK,EAA6B,CAC5B,UAAWb,EAA4B,CAAEU,UAAAA,EAAWM,YAAAA,EAAaL,KAAAA,CAAK,GACtE,YAAU,wBACV,YAAaK,EACZ,GAAGJ,CAAK,C,SAET,EAACC,EAAmC,CAAC,UAAU,wC,IAGrD,Q"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
'use client'
|
|
2
|
-
import
|
|
2
|
+
import{jsx as e,jsxs as t}from"react/jsx-runtime";import{CaretDownIcon as a,CaretUpIcon as s,CheckIcon as r}from"@phosphor-icons/react";import{Content as o,Group as l,Icon as n,Item as i,ItemIndicator as d,ItemText as c,Label as u,Portal as p,Root as m,ScrollDownButton as f,ScrollUpButton as g,Separator as h,Trigger as x,Value as b,Viewport as v}from"@radix-ui/react-select";import{cn as w}from"../lib/utils.js";function y({...t}){return e(m,{"data-slot":"select",...t})}function z({...t}){return e(l,{"data-slot":"select-group",...t})}function N({...t}){return e(b,{"data-slot":"select-value",...t})}function S({className:s,size:r="default",children:o,...l}){return t(x,{"data-slot":"select-trigger","data-size":r,className:w("flex w-fit items-center justify-between gap-2 whitespace-nowrap rounded-md border border-input bg-card px-3 py-2 text-sm shadow-xs outline-none transition-[color,box-shadow] focus-visible:border-ring disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive data-[size=default]:h-10 data-[size=lg]:h-11 data-[size=sm]:h-9 data-[size=xs]:h-8 data-[placeholder]:text-muted-foreground *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:hover:bg-input/50 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0",s),...l,children:[o,e(n,{asChild:!0,children:e(a,{weight:"bold",className:"size-4 opacity-50"})})]})}function _({className:t,...a}){return e(g,{"data-slot":"select-scroll-up-button",className:w("flex cursor-default items-center justify-center py-1",t),...a,children:e(s,{className:"size-4"})})}function j({className:t,...s}){return e(f,{"data-slot":"select-scroll-down-button",className:w("flex cursor-default items-center justify-center py-1",t),...s,children:e(a,{className:"size-4"})})}function k({className:a,children:s,position:r="popper",...l}){return e(p,{children:t(o,{"data-slot":"select-content",className:w("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 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-y-auto overflow-x-hidden rounded-md border bg-popover text-popover-foreground shadow-xs data-[state=closed]:animate-out data-[state=open]:animate-in","popper"===r&&"data-[side=left]:-translate-x-1 data-[side=top]:-translate-y-1 data-[side=right]:translate-x-1 data-[side=bottom]:translate-y-1",a),position:r,...l,children:[e(_,{}),e(v,{className:w("p-1","popper"===r&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:s}),e(j,{})]})})}function C({className:t,...a}){return e(u,{"data-slot":"select-label",className:w("px-2 py-1.5 text-muted-foreground text-xs",t),...a})}function G({className:a,children:s,...o}){return t(i,{"data-slot":"select-item",className:w("relative flex w-full cursor-default select-none items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",a),...o,children:[e("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:e(d,{children:e(r,{className:"size-4"})})}),e(c,{children:s})]})}function I({className:t,...a}){return e(h,{"data-slot":"select-separator",className:w("-mx-1 pointer-events-none my-1 h-px bg-border",t),...a})}export{y as Select,k as SelectContent,z as SelectGroup,G as SelectItem,C as SelectLabel,I as SelectSeparator,S as SelectTrigger,N as SelectValue};
|
|
3
3
|
//# sourceMappingURL=select.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\select.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/select.tsx"],"sourcesContent":["\r\n\r\nimport { CaretDownIcon, CaretUpIcon, CheckIcon } from '@phosphor-icons/react'\r\nimport * as SelectPrimitive from '@radix-ui/react-select'\r\nimport { ComponentProps } from 'react'\r\n\r\nimport { cn } from '@/lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: Select\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction Select({ ...props }: ComponentProps<typeof SelectPrimitive.Root>) {\r\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectGroup\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectGroup({\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Group>) {\r\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectValue\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectValue({\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Value>) {\r\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectTrigger\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectTrigger({\r\n className,\r\n size = 'default',\r\n children,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Trigger> & {\r\n size?: 'xs' | 'sm' | 'default' | 'lg'\r\n}) {\r\n return (\r\n <SelectPrimitive.Trigger\r\n data-slot=\"select-trigger\"\r\n data-size={size}\r\n className={cn(\r\n \"flex w-fit items-center justify-between gap-2 whitespace-nowrap rounded-md border border-input bg-card px-3 py-2 text-sm shadow-xs outline-none transition-[color,box-shadow] focus-visible:border-ring disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive data-[size=default]:h-10 data-[size=lg]:h-11 data-[size=sm]:h-9 data-[size=xs]:h-8 data-[placeholder]:text-muted-foreground *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:hover:bg-input/50 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <SelectPrimitive.Icon asChild>\r\n <CaretDownIcon weight=\"bold\" className=\"size-4 opacity-50\" />\r\n </SelectPrimitive.Icon>\r\n </SelectPrimitive.Trigger>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectScrollUpButton\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectScrollUpButton({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.ScrollUpButton>) {\r\n return (\r\n <SelectPrimitive.ScrollUpButton\r\n data-slot=\"select-scroll-up-button\"\r\n className={cn(\r\n 'flex cursor-default items-center justify-center py-1',\r\n className\r\n )}\r\n {...props}\r\n >\r\n <CaretUpIcon className=\"size-4\" />\r\n </SelectPrimitive.ScrollUpButton>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectScrollDownButton\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectScrollDownButton({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.ScrollDownButton>) {\r\n return (\r\n <SelectPrimitive.ScrollDownButton\r\n data-slot=\"select-scroll-down-button\"\r\n className={cn(\r\n 'flex cursor-default items-center justify-center py-1',\r\n className\r\n )}\r\n {...props}\r\n >\r\n <CaretDownIcon className=\"size-4\" />\r\n </SelectPrimitive.ScrollDownButton>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectContent\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectContent({\r\n className,\r\n children,\r\n position = 'popper',\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Content>) {\r\n return (\r\n <SelectPrimitive.Portal>\r\n <SelectPrimitive.Content\r\n data-slot=\"select-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 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-y-auto overflow-x-hidden rounded-md border bg-popover text-popover-foreground shadow-xs data-[state=closed]:animate-out data-[state=open]:animate-in',\r\n position === 'popper' &&\r\n 'data-[side=left]:-translate-x-1 data-[side=top]:-translate-y-1 data-[side=right]:translate-x-1 data-[side=bottom]:translate-y-1',\r\n className\r\n )}\r\n position={position}\r\n {...props}\r\n >\r\n <SelectScrollUpButton />\r\n <SelectPrimitive.Viewport\r\n className={cn(\r\n 'p-1',\r\n position === 'popper' &&\r\n 'h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1'\r\n )}\r\n >\r\n {children}\r\n </SelectPrimitive.Viewport>\r\n <SelectScrollDownButton />\r\n </SelectPrimitive.Content>\r\n </SelectPrimitive.Portal>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectLabel\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectLabel({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Label>) {\r\n return (\r\n <SelectPrimitive.Label\r\n data-slot=\"select-label\"\r\n className={cn('px-2 py-1.5 text-muted-foreground text-xs', className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectItem\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectItem({\r\n className,\r\n children,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Item>) {\r\n return (\r\n <SelectPrimitive.Item\r\n data-slot=\"select-item\"\r\n className={cn(\r\n \"relative flex w-full cursor-default select-none items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <span className=\"absolute right-2 flex size-3.5 items-center justify-center\">\r\n <SelectPrimitive.ItemIndicator>\r\n <CheckIcon className=\"size-4\" />\r\n </SelectPrimitive.ItemIndicator>\r\n </span>\r\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\r\n </SelectPrimitive.Item>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectSeparator\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectSeparator({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Separator>) {\r\n return (\r\n <SelectPrimitive.Separator\r\n data-slot=\"select-separator\"\r\n className={cn('-mx-1 pointer-events-none my-1 h-px bg-border', className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport {\r\n Select,\r\n SelectGroup,\r\n SelectValue,\r\n SelectTrigger,\r\n SelectContent,\r\n SelectLabel,\r\n SelectItem,\r\n SelectSeparator,\r\n}\r\n"],"names":["Select","props","SelectPrimitive","SelectGroup","SelectValue","SelectTrigger","className","size","children","cn","CaretDownIcon","SelectScrollUpButton","CaretUpIcon","SelectScrollDownButton","SelectContent","position","SelectLabel","SelectItem","CheckIcon","SelectSeparator"],"mappings":";uJAYA,SAASA,EAAO,CAAE,GAAGC,EAAoD,EACvE,MAAO,UAACC,EAAAA,IAAoB,EAAC,YAAU,SAAU,GAAGD,CAAK,EAC3D,CAMA,SAASE,EAAY,CACnB,GAAGF,EAC0C,EAC7C,MAAO,UAACC,EAAAA,KAAqB,EAAC,YAAU,eAAgB,GAAGD,CAAK,EAClE,CAMA,SAASG,EAAY,CACnB,GAAGH,EAC0C,EAC7C,MAAO,UAACC,EAAAA,KAAqB,EAAC,YAAU,eAAgB,GAAGD,CAAK,EAClE,CAMA,SAASI,EAAc,CACrBC,UAAAA,CAAS,CACTC,KAAAA,EAAO,SAAS,CAChBC,SAAAA,CAAQ,CACR,GAAGP,EAGJ,EACC,MACE,WAACC,EAAAA,OAAuB,EACtB,YAAU,iBACV,YAAWK,EACX,UAAWE,GAAAA,EAAAA,EAAAA,EACT,qtBACAH,GAED,GAAGL,CAAK,C,UAERO,EACD,UAACN,EAAAA,IAAoB,EAAC,QAAO,G,SAC3B,UAACQ,EAAAA,aAAaA,CAAAA,CAAC,OAAO,OAAO,UAAU,mB,OAI/C,CAMA,SAASC,EAAqB,CAC5BL,UAAAA,CAAS,CACT,GAAGL,EACmD,EACtD,MACE,UAACC,EAAAA,cAA8B,EAC7B,YAAU,0BACV,UAAWO,GAAAA,EAAAA,EAAAA,EACT,uDACAH,GAED,GAAGL,CAAK,C,SAET,UAACW,EAAAA,WAAWA,CAAAA,CAAC,UAAU,Q,IAG7B,CAMA,SAASC,EAAuB,CAC9BP,UAAAA,CAAS,CACT,GAAGL,EACqD,EACxD,MACE,UAACC,EAAAA,gBAAgC,EAC/B,YAAU,4BACV,UAAWO,GAAAA,EAAAA,EAAAA,EACT,uDACAH,GAED,GAAGL,CAAK,C,SAET,UAACS,EAAAA,aAAaA,CAAAA,CAAC,UAAU,Q,IAG/B,CAMA,SAASI,EAAc,CACrBR,UAAAA,CAAS,CACTE,SAAAA,CAAQ,CACRO,SAAAA,EAAW,QAAQ,CACnB,GAAGd,EAC4C,EAC/C,MACE,UAACC,EAAAA,MAAsB,E,SACrB,WAACA,EAAAA,OAAuB,EACtB,YAAU,iBACV,UAAWO,GAAAA,EAAAA,EAAAA,EACT,gjBACAM,WAAAA,GACE,kIACFT,GAEF,SAAUS,EACT,GAAGd,CAAK,C,UAET,UAACU,EAAAA,CAAAA,GACD,UAACT,EAAAA,QAAwB,EACvB,UAAWO,GAAAA,EAAAA,EAAAA,EACT,MACAM,WAAAA,GACE,uG,SAGHP,C,GAEH,UAACK,EAAAA,CAAAA,G,IAIT,CAMA,SAASG,EAAY,CACnBV,UAAAA,CAAS,CACT,GAAGL,EAC0C,EAC7C,MACE,UAACC,EAAAA,KAAqB,EACpB,YAAU,eACV,UAAWO,GAAAA,EAAAA,EAAAA,EAAG,4CAA6CH,GAC1D,GAAGL,CAAK,EAGf,CAMA,SAASgB,EAAW,CAClBX,UAAAA,CAAS,CACTE,SAAAA,CAAQ,CACR,GAAGP,EACyC,EAC5C,MACE,WAACC,EAAAA,IAAoB,EACnB,YAAU,cACV,UAAWO,GAAAA,EAAAA,EAAAA,EACT,4aACAH,GAED,GAAGL,CAAK,C,UAET,UAAC,QAAK,UAAU,6D,SACd,UAACC,EAAAA,aAA6B,E,SAC5B,UAACgB,EAAAA,SAASA,CAAAA,CAAC,UAAU,Q,OAGzB,UAAChB,EAAAA,QAAwB,E,SAAEM,C,KAGjC,CAMA,SAASW,EAAgB,CACvBb,UAAAA,CAAS,CACT,GAAGL,EAC8C,EACjD,MACE,UAACC,EAAAA,SAAyB,EACxB,YAAU,mBACV,UAAWO,GAAAA,EAAAA,EAAAA,EAAG,gDAAiDH,GAC9D,GAAGL,CAAK,EAGf,Q"}
|
|
1
|
+
{"version":3,"file":"components\\select.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/select.tsx"],"sourcesContent":["\r\n\r\nimport { CaretDownIcon, CaretUpIcon, CheckIcon } from '@phosphor-icons/react'\r\nimport * as SelectPrimitive from '@radix-ui/react-select'\r\nimport { ComponentProps } from 'react'\r\n\r\nimport { cn } from '@/lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: Select\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction Select({ ...props }: ComponentProps<typeof SelectPrimitive.Root>) {\r\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectGroup\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectGroup({\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Group>) {\r\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectValue\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectValue({\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Value>) {\r\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectTrigger\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectTrigger({\r\n className,\r\n size = 'default',\r\n children,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Trigger> & {\r\n size?: 'xs' | 'sm' | 'default' | 'lg'\r\n}) {\r\n return (\r\n <SelectPrimitive.Trigger\r\n data-slot=\"select-trigger\"\r\n data-size={size}\r\n className={cn(\r\n \"flex w-fit items-center justify-between gap-2 whitespace-nowrap rounded-md border border-input bg-card px-3 py-2 text-sm shadow-xs outline-none transition-[color,box-shadow] focus-visible:border-ring disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive data-[size=default]:h-10 data-[size=lg]:h-11 data-[size=sm]:h-9 data-[size=xs]:h-8 data-[placeholder]:text-muted-foreground *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:hover:bg-input/50 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <SelectPrimitive.Icon asChild>\r\n <CaretDownIcon weight=\"bold\" className=\"size-4 opacity-50\" />\r\n </SelectPrimitive.Icon>\r\n </SelectPrimitive.Trigger>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectScrollUpButton\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectScrollUpButton({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.ScrollUpButton>) {\r\n return (\r\n <SelectPrimitive.ScrollUpButton\r\n data-slot=\"select-scroll-up-button\"\r\n className={cn(\r\n 'flex cursor-default items-center justify-center py-1',\r\n className\r\n )}\r\n {...props}\r\n >\r\n <CaretUpIcon className=\"size-4\" />\r\n </SelectPrimitive.ScrollUpButton>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectScrollDownButton\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectScrollDownButton({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.ScrollDownButton>) {\r\n return (\r\n <SelectPrimitive.ScrollDownButton\r\n data-slot=\"select-scroll-down-button\"\r\n className={cn(\r\n 'flex cursor-default items-center justify-center py-1',\r\n className\r\n )}\r\n {...props}\r\n >\r\n <CaretDownIcon className=\"size-4\" />\r\n </SelectPrimitive.ScrollDownButton>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectContent\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectContent({\r\n className,\r\n children,\r\n position = 'popper',\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Content>) {\r\n return (\r\n <SelectPrimitive.Portal>\r\n <SelectPrimitive.Content\r\n data-slot=\"select-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 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-y-auto overflow-x-hidden rounded-md border bg-popover text-popover-foreground shadow-xs data-[state=closed]:animate-out data-[state=open]:animate-in',\r\n position === 'popper' &&\r\n 'data-[side=left]:-translate-x-1 data-[side=top]:-translate-y-1 data-[side=right]:translate-x-1 data-[side=bottom]:translate-y-1',\r\n className\r\n )}\r\n position={position}\r\n {...props}\r\n >\r\n <SelectScrollUpButton />\r\n <SelectPrimitive.Viewport\r\n className={cn(\r\n 'p-1',\r\n position === 'popper' &&\r\n 'h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1'\r\n )}\r\n >\r\n {children}\r\n </SelectPrimitive.Viewport>\r\n <SelectScrollDownButton />\r\n </SelectPrimitive.Content>\r\n </SelectPrimitive.Portal>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectLabel\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectLabel({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Label>) {\r\n return (\r\n <SelectPrimitive.Label\r\n data-slot=\"select-label\"\r\n className={cn('px-2 py-1.5 text-muted-foreground text-xs', className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectItem\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectItem({\r\n className,\r\n children,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Item>) {\r\n return (\r\n <SelectPrimitive.Item\r\n data-slot=\"select-item\"\r\n className={cn(\r\n \"relative flex w-full cursor-default select-none items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <span className=\"absolute right-2 flex size-3.5 items-center justify-center\">\r\n <SelectPrimitive.ItemIndicator>\r\n <CheckIcon className=\"size-4\" />\r\n </SelectPrimitive.ItemIndicator>\r\n </span>\r\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\r\n </SelectPrimitive.Item>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SelectSeparator\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SelectSeparator({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof SelectPrimitive.Separator>) {\r\n return (\r\n <SelectPrimitive.Separator\r\n data-slot=\"select-separator\"\r\n className={cn('-mx-1 pointer-events-none my-1 h-px bg-border', className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport {\r\n Select,\r\n SelectGroup,\r\n SelectValue,\r\n SelectTrigger,\r\n SelectContent,\r\n SelectLabel,\r\n SelectItem,\r\n SelectSeparator,\r\n}\r\n"],"names":["Select","props","SelectPrimitive","SelectGroup","SelectValue","SelectTrigger","className","size","children","cn","CaretDownIcon","SelectScrollUpButton","CaretUpIcon","SelectScrollDownButton","SelectContent","position","SelectLabel","SelectItem","CheckIcon","SelectSeparator"],"mappings":";8ZAYA,SAASA,EAAO,CAAE,GAAGC,EAAoD,EACvE,OAAO,EAACC,EAAoB,CAAC,YAAU,SAAU,GAAGD,CAAK,EAC3D,CAMA,SAASE,EAAY,CACnB,GAAGF,EAC0C,EAC7C,OAAO,EAACC,EAAqB,CAAC,YAAU,eAAgB,GAAGD,CAAK,EAClE,CAMA,SAASG,EAAY,CACnB,GAAGH,EAC0C,EAC7C,OAAO,EAACC,EAAqB,CAAC,YAAU,eAAgB,GAAGD,CAAK,EAClE,CAMA,SAASI,EAAc,CACrBC,UAAAA,CAAS,CACTC,KAAAA,EAAO,SAAS,CAChBC,SAAAA,CAAQ,CACR,GAAGP,EAGJ,EACC,OACE,EAACC,EAAuB,CACtB,YAAU,iBACV,YAAWK,EACX,UAAWE,EACT,qtBACAH,GAED,GAAGL,CAAK,C,UAERO,EACD,EAACN,EAAoB,CAAC,QAAO,G,SAC3B,EAACQ,EAAaA,CAAC,OAAO,OAAO,UAAU,mB,OAI/C,CAMA,SAASC,EAAqB,CAC5BL,UAAAA,CAAS,CACT,GAAGL,EACmD,EACtD,OACE,EAACC,EAA8B,CAC7B,YAAU,0BACV,UAAWO,EACT,uDACAH,GAED,GAAGL,CAAK,C,SAET,EAACW,EAAWA,CAAC,UAAU,Q,IAG7B,CAMA,SAASC,EAAuB,CAC9BP,UAAAA,CAAS,CACT,GAAGL,EACqD,EACxD,OACE,EAACC,EAAgC,CAC/B,YAAU,4BACV,UAAWO,EACT,uDACAH,GAED,GAAGL,CAAK,C,SAET,EAACS,EAAaA,CAAC,UAAU,Q,IAG/B,CAMA,SAASI,EAAc,CACrBR,UAAAA,CAAS,CACTE,SAAAA,CAAQ,CACRO,SAAAA,EAAW,QAAQ,CACnB,GAAGd,EAC4C,EAC/C,OACE,EAACC,EAAsB,C,SACrB,EAACA,EAAuB,CACtB,YAAU,iBACV,UAAWO,EACT,gjBACAM,WAAAA,GACE,kIACFT,GAEF,SAAUS,EACT,GAAGd,CAAK,C,UAET,EAACU,EAAAA,CAAAA,GACD,EAACT,EAAwB,CACvB,UAAWO,EACT,MACAM,WAAAA,GACE,uG,SAGHP,C,GAEH,EAACK,EAAAA,CAAAA,G,IAIT,CAMA,SAASG,EAAY,CACnBV,UAAAA,CAAS,CACT,GAAGL,EAC0C,EAC7C,OACE,EAACC,EAAqB,CACpB,YAAU,eACV,UAAWO,EAAG,4CAA6CH,GAC1D,GAAGL,CAAK,EAGf,CAMA,SAASgB,EAAW,CAClBX,UAAAA,CAAS,CACTE,SAAAA,CAAQ,CACR,GAAGP,EACyC,EAC5C,OACE,EAACC,EAAoB,CACnB,YAAU,cACV,UAAWO,EACT,4aACAH,GAED,GAAGL,CAAK,C,UAET,EAAC,QAAK,UAAU,6D,SACd,EAACC,EAA6B,C,SAC5B,EAACgB,EAASA,CAAC,UAAU,Q,OAGzB,EAAChB,EAAwB,C,SAAEM,C,KAGjC,CAMA,SAASW,EAAgB,CACvBb,UAAAA,CAAS,CACT,GAAGL,EAC8C,EACjD,OACE,EAACC,EAAyB,CACxB,YAAU,mBACV,UAAWO,EAAG,gDAAiDH,GAC9D,GAAGL,CAAK,EAGf,Q"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{Root as r}from"@radix-ui/react-separator";import{cn as e,tv as a}from"../lib/utils.js";let o=a({base:"bg-border relative flex shrink-0 items-center",variants:{align:{center:"justify-center",end:"justify-end",start:"justify-start"},orientation:{horizontal:"h-px w-full",vertical:"h-full w-px flex-col"}},defaultVariants:{align:"center",orientation:"horizontal"}});function i({align:e,className:a,decorative:i=!0,orientation:n,...s}){return t(r,{className:o({align:e,className:a,orientation:n}),"data-slot":"separator",decorative:i,orientation:n,...s})}function n({className:r,...a}){return t("div",{className:e("absolute mx-2 bg-background px-2 text-muted-foreground text-sm",r),"data-slot":"separator-item",...a})}export{i as Separator,n as SeparatorItem};
|
|
2
2
|
//# sourceMappingURL=separator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\separator.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/separator.tsx"],"sourcesContent":["import type { ComponentProps, JSX } from 'react'\r\n\r\nimport * as SeparatorPrimitive from '@radix-ui/react-separator'\r\n\r\nimport type { VariantProps } from '@/lib/utils'\r\n\r\nimport { cn, tv } from '@/lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Variant: Separator\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst separatorVariants = tv({\r\n base: 'bg-border relative flex shrink-0 items-center',\r\n variants: {\r\n align: {\r\n center: 'justify-center',\r\n end: 'justify-end',\r\n start: 'justify-start',\r\n },\r\n orientation: {\r\n horizontal: 'h-px w-full',\r\n vertical: 'h-full w-px flex-col',\r\n },\r\n },\r\n defaultVariants: {\r\n align: 'center',\r\n orientation: 'horizontal',\r\n },\r\n})\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: Separator\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction Separator({\r\n align,\r\n className,\r\n decorative = true,\r\n orientation,\r\n ...props\r\n}: ComponentProps<typeof SeparatorPrimitive.Root> &\r\n Omit<VariantProps<typeof separatorVariants>, 'orientation'>): JSX.Element {\r\n return (\r\n <SeparatorPrimitive.Root\r\n className={separatorVariants({ align, className, orientation })}\r\n data-slot=\"separator\"\r\n decorative={decorative}\r\n orientation={orientation}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SeparatorItem\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SeparatorItem({\r\n className,\r\n ...props\r\n}: ComponentProps<'div'>): JSX.Element {\r\n return (\r\n <div\r\n className={cn(\r\n 'absolute mx-2 bg-background px-2 text-muted-foreground text-sm',\r\n className\r\n )}\r\n data-slot=\"separator-item\"\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport { Separator, SeparatorItem }\r\n"],"names":["separatorVariants","tv","Separator","align","className","decorative","orientation","props","SeparatorPrimitive","SeparatorItem","cn"],"mappings":"
|
|
1
|
+
{"version":3,"file":"components\\separator.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/separator.tsx"],"sourcesContent":["import type { ComponentProps, JSX } from 'react'\r\n\r\nimport * as SeparatorPrimitive from '@radix-ui/react-separator'\r\n\r\nimport type { VariantProps } from '@/lib/utils'\r\n\r\nimport { cn, tv } from '@/lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Variant: Separator\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst separatorVariants = tv({\r\n base: 'bg-border relative flex shrink-0 items-center',\r\n variants: {\r\n align: {\r\n center: 'justify-center',\r\n end: 'justify-end',\r\n start: 'justify-start',\r\n },\r\n orientation: {\r\n horizontal: 'h-px w-full',\r\n vertical: 'h-full w-px flex-col',\r\n },\r\n },\r\n defaultVariants: {\r\n align: 'center',\r\n orientation: 'horizontal',\r\n },\r\n})\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: Separator\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction Separator({\r\n align,\r\n className,\r\n decorative = true,\r\n orientation,\r\n ...props\r\n}: ComponentProps<typeof SeparatorPrimitive.Root> &\r\n Omit<VariantProps<typeof separatorVariants>, 'orientation'>): JSX.Element {\r\n return (\r\n <SeparatorPrimitive.Root\r\n className={separatorVariants({ align, className, orientation })}\r\n data-slot=\"separator\"\r\n decorative={decorative}\r\n orientation={orientation}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: SeparatorItem\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction SeparatorItem({\r\n className,\r\n ...props\r\n}: ComponentProps<'div'>): JSX.Element {\r\n return (\r\n <div\r\n className={cn(\r\n 'absolute mx-2 bg-background px-2 text-muted-foreground text-sm',\r\n className\r\n )}\r\n data-slot=\"separator-item\"\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport { Separator, SeparatorItem }\r\n"],"names":["separatorVariants","tv","Separator","align","className","decorative","orientation","props","SeparatorPrimitive","SeparatorItem","cn"],"mappings":"sIAYA,IAAMA,EAAoBC,EAAG,CAC3B,KAAM,gDACN,SAAU,CACR,MAAO,CACL,OAAQ,iBACR,IAAK,cACL,MAAO,eACT,EACA,YAAa,CACX,WAAY,cACZ,SAAU,sBACZ,CACF,EACA,gBAAiB,CACf,MAAO,SACP,YAAa,YACf,CACF,GAMA,SAASC,EAAU,CACjBC,MAAAA,CAAK,CACLC,UAAAA,CAAS,CACTC,WAAAA,EAAa,EAAI,CACjBC,YAAAA,CAAW,CACX,GAAGC,EAEwD,EAC3D,OACE,EAACC,EAAuB,CACtB,UAAWR,EAAkB,CAAEG,MAAAA,EAAOC,UAAAA,EAAWE,YAAAA,CAAY,GAC7D,YAAU,YACV,WAAYD,EACZ,YAAaC,EACZ,GAAGC,CAAK,A,EAGf,CAMA,SAASE,EAAc,CACrBL,UAAAA,CAAS,CACT,GAAGG,EACmB,EACtB,OACE,EAAC,OACC,UAAWG,EACT,iEACAN,GAEF,YAAU,iBACT,GAAGG,CAAK,A,EAGf,Q"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import{tv as t}from"../../lib/utils.js";let a=t({base:"bg-background animation-ease-in-out data-[state=open]:animate-in data-[state=open]:animation-duration-500 data-[state=closed]:animate-out data-[state=closed]:animation-duration-500 fixed z-50 flex flex-col overflow-auto shadow-lg",variants:{side:{bottom:"data-[state=open]:slide-in-from-bottom data-[state=closed]:slide-out-to-bottom inset-x-0 bottom-0 max-h-[80vh] border-t",left:"data-[state=open]:slide-in-from-left data-[state=closed]:slide-out-to-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm",right:"data-[state=open]:slide-in-from-right data-[state=closed]:slide-out-to-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm",top:"data-[state=open]:slide-in-from-top data-[state=closed]:slide-out-to-top inset-x-0 top-0 max-h-[80vh] border-b"}},defaultVariants:{side:"right"}});export{a as sheetContentVariants};
|
|
2
2
|
//# sourceMappingURL=sheet-content-variants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\sheet\\sheet-content-variants.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/sheet/sheet-content-variants.tsx"],"sourcesContent":["import { tv } from '@/lib/utils'\n\n/* -----------------------------------------------------------------------------\n * Variant: SheetContent\n * -------------------------------------------------------------------------- */\n\nconst sheetContentVariants = tv({\n base: 'bg-background animation-ease-in-out data-[state=open]:animate-in data-[state=open]:animation-duration-500 data-[state=closed]:animate-out data-[state=closed]:animation-duration-500 fixed z-50 flex flex-col overflow-auto shadow-lg',\n variants: {\n side: {\n bottom:\n 'data-[state=open]:slide-in-from-bottom data-[state=closed]:slide-out-to-bottom inset-x-0 bottom-0 max-h-[80vh] border-t',\n left: 'data-[state=open]:slide-in-from-left data-[state=closed]:slide-out-to-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm',\n right:\n 'data-[state=open]:slide-in-from-right data-[state=closed]:slide-out-to-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm',\n top: 'data-[state=open]:slide-in-from-top data-[state=closed]:slide-out-to-top inset-x-0 top-0 max-h-[80vh] border-b',\n },\n },\n defaultVariants: {\n side: 'right',\n },\n})\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { sheetContentVariants }\n"],"names":["sheetContentVariants","tv"],"mappings":"
|
|
1
|
+
{"version":3,"file":"components\\sheet\\sheet-content-variants.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/sheet/sheet-content-variants.tsx"],"sourcesContent":["import { tv } from '@/lib/utils'\n\n/* -----------------------------------------------------------------------------\n * Variant: SheetContent\n * -------------------------------------------------------------------------- */\n\nconst sheetContentVariants = tv({\n base: 'bg-background animation-ease-in-out data-[state=open]:animate-in data-[state=open]:animation-duration-500 data-[state=closed]:animate-out data-[state=closed]:animation-duration-500 fixed z-50 flex flex-col overflow-auto shadow-lg',\n variants: {\n side: {\n bottom:\n 'data-[state=open]:slide-in-from-bottom data-[state=closed]:slide-out-to-bottom inset-x-0 bottom-0 max-h-[80vh] border-t',\n left: 'data-[state=open]:slide-in-from-left data-[state=closed]:slide-out-to-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm',\n right:\n 'data-[state=open]:slide-in-from-right data-[state=closed]:slide-out-to-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm',\n top: 'data-[state=open]:slide-in-from-top data-[state=closed]:slide-out-to-top inset-x-0 top-0 max-h-[80vh] border-b',\n },\n },\n defaultVariants: {\n side: 'right',\n },\n})\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { sheetContentVariants }\n"],"names":["sheetContentVariants","tv"],"mappings":"wCAMA,IAAMA,EAAuBC,EAAG,CAC9B,KAAM,wOACN,SAAU,CACR,KAAM,CACJ,OACE,0HACF,KAAM,gIACN,MACE,mIACF,IAAK,gHACP,CACF,EACA,gBAAiB,CACf,KAAM,OACR,CACF,U"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
'use client'
|
|
2
|
-
import
|
|
2
|
+
import{jsx as t,jsxs as e}from"react/jsx-runtime";import{Close as a,Content as s,Description as o,Overlay as r,Portal as n,Root as i,Title as l,Trigger as c}from"@radix-ui/react-dialog";import{buttonVariants as h}from"../button.js";import{sheetContentVariants as d}from"./sheet-content-variants.js";import{cn as m}from"../../lib/utils.js";import{XIcon as u}from"@phosphor-icons/react";function f({children:e,...a}){return t(i,{"data-slot":"sheet",...a,children:e})}function p({...e}){return t(c,{"data-slot":"sheet-trigger",...e})}function x({...e}){return t(n,{"data-slot":"sheet-portal",...e})}function g({className:e,...a}){return t(r,{"data-slot":"sheet-overlay",className:m("data-[state=open]:animation-duration-500 data-[state=closed]:animation-duration-500 fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-fade-out data-[state=open]:animate-fade-in",e),...a})}function N({children:a,className:o,classNames:r,side:n="right",...i}){return e(x,{children:[t(g,{className:r?.overlay}),e(s,{className:d({className:[r?.content,o],side:n}),"data-slot":"sheet-content",...i,children:[a,e(z,{className:h({className:["absolute top-4 right-4 size-7",r?.close],size:"icon",variant:"ghost"}),children:[t(u,{className:"size-4"}),t("span",{className:"sr-only",children:"Close"})]})]})]})}function S({className:e,...a}){return t("header",{className:m("flex shrink-0 flex-col gap-1.5 px-6 pt-6 pb-4 text-center sm:text-left",e),"data-slot":"sheet-header",...a})}function b({className:e,...a}){return t("main",{className:m("px-6 py-2",e),"data-slot":"sheet-body",...a})}function y({className:e,...a}){return t("footer",{className:m("flex shrink-0 flex-col-reverse gap-2 px-6 pt-4 pb-6 sm:flex-row sm:justify-end",e),"data-slot":"sheet-footer",...a})}function v({className:e,...a}){return t(l,{className:m("font-semibold text-lg",e),"data-slot":"sheet-title",...a})}function j({className:e,...a}){return t(o,{className:m("text-gray-400 text-sm",e),"data-slot":"sheet-description",...a})}function z({className:e,size:s,variant:o="ghost",...r}){return t(a,{className:h({className:e,size:s,variant:o}),"data-slot":"sheet-close",...r})}export{f as Sheet,b as SheetBody,z as SheetClose,N as SheetContent,j as SheetDescription,y as SheetFooter,S as SheetHeader,g as SheetOverlay,x as SheetPortal,v as SheetTitle,p as SheetTrigger};
|
|
3
3
|
//# sourceMappingURL=sheet.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\sheet\\sheet.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/sheet/sheet.tsx"],"sourcesContent":["\n\nimport type { ComponentProps, JSX } from 'react'\n\nimport * as SheetPrimitive from '@radix-ui/react-dialog'\n\nimport type { VariantProps } from '@/lib/utils'\n\nimport { buttonVariants } from '@/components/button'\nimport { sheetContentVariants } from '@/components/sheet/sheet-content-variants'\nimport { cn } from '@/lib/utils'\nimport { XIcon } from '@phosphor-icons/react'\n\n/* -----------------------------------------------------------------------------\n * Component: Sheet\n * -------------------------------------------------------------------------- */\n\nfunction Sheet({\n children,\n ...props\n}: ComponentProps<typeof SheetPrimitive.Root>): JSX.Element {\n return (\n <SheetPrimitive.Root data-slot=\"sheet\" {...props}>\n {children}\n </SheetPrimitive.Root>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetTrigger\n * -------------------------------------------------------------------------- */\n\nfunction SheetTrigger({\n ...props\n}: ComponentProps<typeof SheetPrimitive.Trigger>): JSX.Element {\n return <SheetPrimitive.Trigger data-slot=\"sheet-trigger\" {...props} />\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetPortal\n * -------------------------------------------------------------------------- */\n\nfunction SheetPortal({\n ...props\n}: ComponentProps<typeof SheetPrimitive.Portal>) {\n return <SheetPrimitive.Portal data-slot=\"sheet-portal\" {...props} />\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetOverlay\n * -------------------------------------------------------------------------- */\n\nfunction SheetOverlay({\n className,\n ...props\n}: ComponentProps<typeof SheetPrimitive.Overlay>) {\n return (\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn(\n 'data-[state=open]:animation-duration-500 data-[state=closed]:animation-duration-500 fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-fade-out data-[state=open]:animate-fade-in',\n className\n )}\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetContent\n * -------------------------------------------------------------------------- */\n\nfunction SheetContent({\n children,\n className,\n classNames,\n side = 'right',\n ...props\n}: ComponentProps<typeof SheetPrimitive.Content> &\n VariantProps<typeof sheetContentVariants> & {\n classNames?: {\n close?: string\n content?: string\n overlay?: string\n }\n }): JSX.Element {\n return (\n <SheetPortal>\n <SheetOverlay className={classNames?.overlay} />\n <SheetPrimitive.Content\n className={sheetContentVariants({\n className: [classNames?.content, className],\n side,\n })}\n data-slot=\"sheet-content\"\n {...props}\n >\n {children}\n <SheetClose\n className={buttonVariants({\n className: ['absolute top-4 right-4 size-7', classNames?.close],\n size: 'icon',\n variant: 'ghost',\n })}\n >\n <XIcon className=\"size-4\" />\n <span className=\"sr-only\">Close</span>\n </SheetClose>\n </SheetPrimitive.Content>\n </SheetPortal>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetHeader\n * -------------------------------------------------------------------------- */\n\nfunction SheetHeader({\n className,\n ...props\n}: ComponentProps<'div'>): JSX.Element {\n return (\n <header\n className={cn(\n 'flex shrink-0 flex-col gap-1.5 px-6 pt-6 pb-4 text-center sm:text-left',\n className\n )}\n data-slot=\"sheet-header\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetBody\n * -------------------------------------------------------------------------- */\n\nfunction SheetBody({\n className,\n ...props\n}: ComponentProps<'div'>): JSX.Element {\n return (\n <main\n className={cn('px-6 py-2', className)}\n data-slot=\"sheet-body\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetFooter\n * -------------------------------------------------------------------------- */\n\nfunction SheetFooter({\n className,\n ...props\n}: ComponentProps<'div'>): JSX.Element {\n return (\n <footer\n className={cn(\n 'flex shrink-0 flex-col-reverse gap-2 px-6 pt-4 pb-6 sm:flex-row sm:justify-end',\n className\n )}\n data-slot=\"sheet-footer\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetTitle\n * -------------------------------------------------------------------------- */\n\nfunction SheetTitle({\n className,\n ...props\n}: ComponentProps<typeof SheetPrimitive.Title>): JSX.Element {\n return (\n <SheetPrimitive.Title\n className={cn('font-semibold text-lg', className)}\n data-slot=\"sheet-title\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetDescription\n * -------------------------------------------------------------------------- */\n\nfunction SheetDescription({\n className,\n ...props\n}: ComponentProps<typeof SheetPrimitive.Description>): JSX.Element {\n return (\n <SheetPrimitive.Description\n className={cn('text-gray-400 text-sm', className)}\n data-slot=\"sheet-description\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetClose\n * -------------------------------------------------------------------------- */\n\nfunction SheetClose({\n className,\n size,\n variant = 'ghost',\n ...props\n}: ComponentProps<typeof SheetPrimitive.Close> & {\n size?: VariantProps<typeof buttonVariants>['size']\n variant?: VariantProps<typeof buttonVariants>['variant']\n}): JSX.Element {\n return (\n <SheetPrimitive.Close\n className={buttonVariants({ className, size, variant })}\n data-slot=\"sheet-close\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n Sheet,\n SheetBody,\n SheetClose,\n SheetOverlay,\n SheetPortal,\n SheetContent,\n SheetDescription,\n SheetFooter,\n SheetHeader,\n SheetTitle,\n SheetTrigger,\n}\n"],"names":["Sheet","children","props","SheetPrimitive","SheetTrigger","SheetPortal","SheetOverlay","className","cn","SheetContent","classNames","side","sheetContentVariants","SheetClose","buttonVariants","XIcon","SheetHeader","SheetBody","SheetFooter","SheetTitle","SheetDescription","size","variant"],"mappings":";
|
|
1
|
+
{"version":3,"file":"components\\sheet\\sheet.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/sheet/sheet.tsx"],"sourcesContent":["\n\nimport type { ComponentProps, JSX } from 'react'\n\nimport * as SheetPrimitive from '@radix-ui/react-dialog'\n\nimport type { VariantProps } from '@/lib/utils'\n\nimport { buttonVariants } from '@/components/button'\nimport { sheetContentVariants } from '@/components/sheet/sheet-content-variants'\nimport { cn } from '@/lib/utils'\nimport { XIcon } from '@phosphor-icons/react'\n\n/* -----------------------------------------------------------------------------\n * Component: Sheet\n * -------------------------------------------------------------------------- */\n\nfunction Sheet({\n children,\n ...props\n}: ComponentProps<typeof SheetPrimitive.Root>): JSX.Element {\n return (\n <SheetPrimitive.Root data-slot=\"sheet\" {...props}>\n {children}\n </SheetPrimitive.Root>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetTrigger\n * -------------------------------------------------------------------------- */\n\nfunction SheetTrigger({\n ...props\n}: ComponentProps<typeof SheetPrimitive.Trigger>): JSX.Element {\n return <SheetPrimitive.Trigger data-slot=\"sheet-trigger\" {...props} />\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetPortal\n * -------------------------------------------------------------------------- */\n\nfunction SheetPortal({\n ...props\n}: ComponentProps<typeof SheetPrimitive.Portal>) {\n return <SheetPrimitive.Portal data-slot=\"sheet-portal\" {...props} />\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetOverlay\n * -------------------------------------------------------------------------- */\n\nfunction SheetOverlay({\n className,\n ...props\n}: ComponentProps<typeof SheetPrimitive.Overlay>) {\n return (\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn(\n 'data-[state=open]:animation-duration-500 data-[state=closed]:animation-duration-500 fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-fade-out data-[state=open]:animate-fade-in',\n className\n )}\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetContent\n * -------------------------------------------------------------------------- */\n\nfunction SheetContent({\n children,\n className,\n classNames,\n side = 'right',\n ...props\n}: ComponentProps<typeof SheetPrimitive.Content> &\n VariantProps<typeof sheetContentVariants> & {\n classNames?: {\n close?: string\n content?: string\n overlay?: string\n }\n }): JSX.Element {\n return (\n <SheetPortal>\n <SheetOverlay className={classNames?.overlay} />\n <SheetPrimitive.Content\n className={sheetContentVariants({\n className: [classNames?.content, className],\n side,\n })}\n data-slot=\"sheet-content\"\n {...props}\n >\n {children}\n <SheetClose\n className={buttonVariants({\n className: ['absolute top-4 right-4 size-7', classNames?.close],\n size: 'icon',\n variant: 'ghost',\n })}\n >\n <XIcon className=\"size-4\" />\n <span className=\"sr-only\">Close</span>\n </SheetClose>\n </SheetPrimitive.Content>\n </SheetPortal>\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetHeader\n * -------------------------------------------------------------------------- */\n\nfunction SheetHeader({\n className,\n ...props\n}: ComponentProps<'div'>): JSX.Element {\n return (\n <header\n className={cn(\n 'flex shrink-0 flex-col gap-1.5 px-6 pt-6 pb-4 text-center sm:text-left',\n className\n )}\n data-slot=\"sheet-header\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetBody\n * -------------------------------------------------------------------------- */\n\nfunction SheetBody({\n className,\n ...props\n}: ComponentProps<'div'>): JSX.Element {\n return (\n <main\n className={cn('px-6 py-2', className)}\n data-slot=\"sheet-body\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetFooter\n * -------------------------------------------------------------------------- */\n\nfunction SheetFooter({\n className,\n ...props\n}: ComponentProps<'div'>): JSX.Element {\n return (\n <footer\n className={cn(\n 'flex shrink-0 flex-col-reverse gap-2 px-6 pt-4 pb-6 sm:flex-row sm:justify-end',\n className\n )}\n data-slot=\"sheet-footer\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetTitle\n * -------------------------------------------------------------------------- */\n\nfunction SheetTitle({\n className,\n ...props\n}: ComponentProps<typeof SheetPrimitive.Title>): JSX.Element {\n return (\n <SheetPrimitive.Title\n className={cn('font-semibold text-lg', className)}\n data-slot=\"sheet-title\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetDescription\n * -------------------------------------------------------------------------- */\n\nfunction SheetDescription({\n className,\n ...props\n}: ComponentProps<typeof SheetPrimitive.Description>): JSX.Element {\n return (\n <SheetPrimitive.Description\n className={cn('text-gray-400 text-sm', className)}\n data-slot=\"sheet-description\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Component: SheetClose\n * -------------------------------------------------------------------------- */\n\nfunction SheetClose({\n className,\n size,\n variant = 'ghost',\n ...props\n}: ComponentProps<typeof SheetPrimitive.Close> & {\n size?: VariantProps<typeof buttonVariants>['size']\n variant?: VariantProps<typeof buttonVariants>['variant']\n}): JSX.Element {\n return (\n <SheetPrimitive.Close\n className={buttonVariants({ className, size, variant })}\n data-slot=\"sheet-close\"\n {...props}\n />\n )\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n Sheet,\n SheetBody,\n SheetClose,\n SheetOverlay,\n SheetPortal,\n SheetContent,\n SheetDescription,\n SheetFooter,\n SheetHeader,\n SheetTitle,\n SheetTrigger,\n}\n"],"names":["Sheet","children","props","SheetPrimitive","SheetTrigger","SheetPortal","SheetOverlay","className","cn","SheetContent","classNames","side","sheetContentVariants","SheetClose","buttonVariants","XIcon","SheetHeader","SheetBody","SheetFooter","SheetTitle","SheetDescription","size","variant"],"mappings":";iYAiBA,SAASA,EAAM,CACbC,SAAAA,CAAQ,CACR,GAAGC,EACwC,EAC3C,OACE,EAACC,EAAmB,CAAC,YAAU,QAAS,GAAGD,CAAK,C,SAC7CD,C,EAGP,CAMA,SAASG,EAAa,CACpB,GAAGF,EAC2C,EAC9C,OAAO,EAACC,EAAsB,CAAC,YAAU,gBAAiB,GAAGD,CAAK,EACpE,CAMA,SAASG,EAAY,CACnB,GAAGH,EAC0C,EAC7C,OAAO,EAACC,EAAqB,CAAC,YAAU,eAAgB,GAAGD,CAAK,EAClE,CAMA,SAASI,EAAa,CACpBC,UAAAA,CAAS,CACT,GAAGL,EAC2C,EAC9C,OACE,EAACC,EAAsB,CACrB,YAAU,gBACV,UAAWK,EACT,4LACAD,GAED,GAAGL,CAAK,EAGf,CAMA,SAASO,EAAa,CACpBR,SAAAA,CAAQ,CACRM,UAAAA,CAAS,CACTG,WAAAA,CAAU,CACVC,KAAAA,EAAO,OAAO,CACd,GAAGT,EAQF,EACD,OACE,EAACG,EAAAA,C,UACC,EAACC,EAAAA,CAAa,UAAWI,GAAY,O,GACrC,EAACP,EAAsB,CACrB,UAAWS,EAAqB,CAC9B,UAAW,CAACF,GAAY,QAASH,EAAU,CAC3CI,KAAAA,CACF,GACA,YAAU,gBACT,GAAGT,CAAK,C,UAERD,EACD,EAACY,EAAAA,CACC,UAAWC,EAAe,CACxB,UAAW,CAAC,gCAAiCJ,GAAY,MAAM,CAC/D,KAAM,OACN,QAAS,OACX,G,UAEA,EAACK,EAAKA,CAAC,UAAU,Q,GACjB,EAAC,QAAK,UAAU,U,SAAU,O,WAKpC,CAMA,SAASC,EAAY,CACnBT,UAAAA,CAAS,CACT,GAAGL,EACmB,EACtB,OACE,EAAC,UACC,UAAWM,EACT,yEACAD,GAEF,YAAU,eACT,GAAGL,CAAK,EAGf,CAMA,SAASe,EAAU,CACjBV,UAAAA,CAAS,CACT,GAAGL,EACmB,EACtB,OACE,EAAC,QACC,UAAWM,EAAG,YAAaD,GAC3B,YAAU,aACT,GAAGL,CAAK,EAGf,CAMA,SAASgB,EAAY,CACnBX,UAAAA,CAAS,CACT,GAAGL,EACmB,EACtB,OACE,EAAC,UACC,UAAWM,EACT,iFACAD,GAEF,YAAU,eACT,GAAGL,CAAK,EAGf,CAMA,SAASiB,EAAW,CAClBZ,UAAAA,CAAS,CACT,GAAGL,EACyC,EAC5C,OACE,EAACC,EAAoB,CACnB,UAAWK,EAAG,wBAAyBD,GACvC,YAAU,cACT,GAAGL,CAAK,EAGf,CAMA,SAASkB,EAAiB,CACxBb,UAAAA,CAAS,CACT,GAAGL,EAC+C,EAClD,OACE,EAACC,EAA0B,CACzB,UAAWK,EAAG,wBAAyBD,GACvC,YAAU,oBACT,GAAGL,CAAK,EAGf,CAMA,SAASW,EAAW,CAClBN,UAAAA,CAAS,CACTc,KAAAA,CAAI,CACJC,QAAAA,EAAU,OAAO,CACjB,GAAGpB,EAIJ,EACC,OACE,EAACC,EAAoB,CACnB,UAAWW,EAAe,CAAEP,UAAAA,EAAWc,KAAAA,EAAMC,QAAAA,CAAQ,GACrD,YAAU,cACT,GAAGpB,CAAK,EAGf,Q"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{cn as e}from"../lib/utils.js";function r({className:r,...o}){return t("div",{className:e("animate-pulse rounded-lg bg-gray-100",r),"data-slot":"skeleton",...o})}export{r as Skeleton};
|
|
2
2
|
//# sourceMappingURL=skeleton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\skeleton.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/skeleton.tsx"],"sourcesContent":["import type { ComponentProps, JSX } from 'react'\r\n\r\nimport { cn } from '@/lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: Skeleton\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction Skeleton({ className, ...props }: ComponentProps<'div'>): JSX.Element {\r\n return (\r\n <div\r\n className={cn('animate-pulse rounded-lg bg-gray-100', className)}\r\n data-slot=\"skeleton\"\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport { Skeleton }\r\n"],"names":["Skeleton","className","props","cn"],"mappings":"
|
|
1
|
+
{"version":3,"file":"components\\skeleton.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/skeleton.tsx"],"sourcesContent":["import type { ComponentProps, JSX } from 'react'\r\n\r\nimport { cn } from '@/lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: Skeleton\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction Skeleton({ className, ...props }: ComponentProps<'div'>): JSX.Element {\r\n return (\r\n <div\r\n className={cn('animate-pulse rounded-lg bg-gray-100', className)}\r\n data-slot=\"skeleton\"\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport { Skeleton }\r\n"],"names":["Skeleton","className","props","cn"],"mappings":"6EAQA,SAASA,EAAS,CAAEC,UAAAA,CAAS,CAAE,GAAGC,EAA8B,EAC9D,OACE,EAAC,OACC,UAAWC,EAAG,uCAAwCF,GACtD,YAAU,WACT,GAAGC,CAAK,A,EAGf,Q"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
'use client'
|
|
2
|
-
import
|
|
2
|
+
import{jsx as a,jsxs as t}from"react/jsx-runtime";import{Range as r,Root as i,Thumb as e,Track as o}from"@radix-ui/react-slider";import{useMemo as l}from"react";import{cn as n}from"../lib/utils.js";function d({className:d,defaultValue:s,value:c,min:u=0,max:m=100,...f}){let h=l(()=>Array.isArray(c)?c:Array.isArray(s)?s:[u,m],[c,s,u,m]);return t(i,{"data-slot":"slider",defaultValue:s,value:c,min:u,max:m,className:n("relative flex w-full touch-none select-none items-center data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col data-[disabled]:opacity-50",d),...f,children:[a(o,{"data-slot":"slider-track",className:n("relative grow overflow-hidden rounded-full bg-muted data-[orientation=horizontal]:h-1.5 data-[orientation=vertical]:h-full data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-1.5"),children:a(r,{"data-slot":"slider-range",className:n("absolute bg-primary data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full")})}),Array.from({length:h.length},(t,r)=>a(e,{"data-slot":"slider-thumb",className:"block size-4 shrink-0 rounded-full border border-primary bg-background shadow-sm ring-ring/50 transition-[color,box-shadow] hover:ring-4 focus-visible:outline-hidden focus-visible:ring-4 disabled:pointer-events-none disabled:opacity-50"},r))]})}export{d as Slider};
|
|
3
3
|
//# sourceMappingURL=slider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\slider.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/slider.tsx"],"sourcesContent":["\r\n\r\nimport * as SliderPrimitive from '@radix-ui/react-slider'\r\nimport * as React from 'react'\r\n\r\nimport { cn } from '@/lib/utils'\r\n\r\nfunction Slider({\r\n className,\r\n defaultValue,\r\n value,\r\n min = 0,\r\n max = 100,\r\n ...props\r\n}: React.ComponentProps<typeof SliderPrimitive.Root>) {\r\n const _values = React.useMemo(\r\n () =>\r\n Array.isArray(value)\r\n ? value\r\n : Array.isArray(defaultValue)\r\n ? defaultValue\r\n : [min, max],\r\n [value, defaultValue, min, max]\r\n )\r\n\r\n return (\r\n <SliderPrimitive.Root\r\n data-slot=\"slider\"\r\n defaultValue={defaultValue}\r\n value={value}\r\n min={min}\r\n max={max}\r\n className={cn(\r\n 'relative flex w-full touch-none select-none items-center data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col data-[disabled]:opacity-50',\r\n className\r\n )}\r\n {...props}\r\n >\r\n <SliderPrimitive.Track\r\n data-slot=\"slider-track\"\r\n className={cn(\r\n 'relative grow overflow-hidden rounded-full bg-muted data-[orientation=horizontal]:h-1.5 data-[orientation=vertical]:h-full data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-1.5'\r\n )}\r\n >\r\n <SliderPrimitive.Range\r\n data-slot=\"slider-range\"\r\n className={cn(\r\n 'absolute bg-primary data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full'\r\n )}\r\n />\r\n </SliderPrimitive.Track>\r\n {Array.from({ length: _values.length }, (_, index) => (\r\n <SliderPrimitive.Thumb\r\n data-slot=\"slider-thumb\"\r\n key={index}\r\n className=\"block size-4 shrink-0 rounded-full border border-primary bg-background shadow-sm ring-ring/50 transition-[color,box-shadow] hover:ring-4 focus-visible:outline-hidden focus-visible:ring-4 disabled:pointer-events-none disabled:opacity-50\"\r\n />\r\n ))}\r\n </SliderPrimitive.Root>\r\n )\r\n}\r\n\r\nexport { Slider }\r\n"],"names":["Slider","className","defaultValue","value","min","max","props","_values","React","Array","SliderPrimitive","cn","_","index"],"mappings":";
|
|
1
|
+
{"version":3,"file":"components\\slider.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/slider.tsx"],"sourcesContent":["\r\n\r\nimport * as SliderPrimitive from '@radix-ui/react-slider'\r\nimport * as React from 'react'\r\n\r\nimport { cn } from '@/lib/utils'\r\n\r\nfunction Slider({\r\n className,\r\n defaultValue,\r\n value,\r\n min = 0,\r\n max = 100,\r\n ...props\r\n}: React.ComponentProps<typeof SliderPrimitive.Root>) {\r\n const _values = React.useMemo(\r\n () =>\r\n Array.isArray(value)\r\n ? value\r\n : Array.isArray(defaultValue)\r\n ? defaultValue\r\n : [min, max],\r\n [value, defaultValue, min, max]\r\n )\r\n\r\n return (\r\n <SliderPrimitive.Root\r\n data-slot=\"slider\"\r\n defaultValue={defaultValue}\r\n value={value}\r\n min={min}\r\n max={max}\r\n className={cn(\r\n 'relative flex w-full touch-none select-none items-center data-[orientation=vertical]:h-full data-[orientation=vertical]:min-h-44 data-[orientation=vertical]:w-auto data-[orientation=vertical]:flex-col data-[disabled]:opacity-50',\r\n className\r\n )}\r\n {...props}\r\n >\r\n <SliderPrimitive.Track\r\n data-slot=\"slider-track\"\r\n className={cn(\r\n 'relative grow overflow-hidden rounded-full bg-muted data-[orientation=horizontal]:h-1.5 data-[orientation=vertical]:h-full data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-1.5'\r\n )}\r\n >\r\n <SliderPrimitive.Range\r\n data-slot=\"slider-range\"\r\n className={cn(\r\n 'absolute bg-primary data-[orientation=horizontal]:h-full data-[orientation=vertical]:w-full'\r\n )}\r\n />\r\n </SliderPrimitive.Track>\r\n {Array.from({ length: _values.length }, (_, index) => (\r\n <SliderPrimitive.Thumb\r\n data-slot=\"slider-thumb\"\r\n key={index}\r\n className=\"block size-4 shrink-0 rounded-full border border-primary bg-background shadow-sm ring-ring/50 transition-[color,box-shadow] hover:ring-4 focus-visible:outline-hidden focus-visible:ring-4 disabled:pointer-events-none disabled:opacity-50\"\r\n />\r\n ))}\r\n </SliderPrimitive.Root>\r\n )\r\n}\r\n\r\nexport { Slider }\r\n"],"names":["Slider","className","defaultValue","value","min","max","props","_values","React","Array","SliderPrimitive","cn","_","index"],"mappings":";sMAOA,SAASA,EAAO,CACdC,UAAAA,CAAS,CACTC,aAAAA,CAAY,CACZC,MAAAA,CAAK,CACLC,IAAAA,EAAM,CAAC,CACPC,IAAAA,EAAM,GAAG,CACT,GAAGC,EAC+C,EAClD,IAAMC,EAAUC,EACd,IACEC,MAAM,OAAO,CAACN,GACVA,EACAM,MAAM,OAAO,CAACP,GACZA,EACA,CAACE,EAAKC,EAAI,CAClB,CAACF,EAAOD,EAAcE,EAAKC,EAAI,EAGjC,OACE,EAACK,EAAoB,CACnB,YAAU,SACV,aAAcR,EACd,MAAOC,EACP,IAAKC,EACL,IAAKC,EACL,UAAWM,EACT,sOACAV,GAED,GAAGK,CAAK,C,UAET,EAACI,EAAqB,CACpB,YAAU,eACV,UAAWC,EACT,qM,SAGF,EAACD,EAAqB,CACpB,YAAU,eACV,UAAWC,EACT,8F,KAILF,MAAM,IAAI,CAAC,CAAE,OAAQF,EAAQ,MAAM,EAAI,CAACK,EAAGC,IAC1C,EAACH,EAAqB,CACpB,YAAU,eAEV,UAAU,6O,EADLG,I,EAMf,Q"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client'
|
|
2
|
-
import
|
|
2
|
+
import{jsx as e}from"react/jsx-runtime";import{DndContext as t,DragOverlay as r,KeyboardSensor as o,MouseSensor as i,TouchSensor as a,closestCenter as n,closestCorners as l,defaultDropAnimationSideEffects as s,useSensor as d,useSensors as c}from"@dnd-kit/core";import{restrictToHorizontalAxis as u,restrictToParentElement as m,restrictToVerticalAxis as g}from"@dnd-kit/modifiers";import{SortableContext as b,arrayMove as f,horizontalListSortingStrategy as p,sortableKeyboardCoordinates as v,useSortable as h,verticalListSortingStrategy as y}from"@dnd-kit/sortable";import{CSS as $}from"@dnd-kit/utilities";import{Slot as S}from"@radix-ui/react-slot";import{createContext as w,forwardRef as D,useCallback as x,useContext as I,useId as C,useLayoutEffect as N,useMemo as E,useState as k}from"react";import{composeEventHandlers as P,useComposedRefs as j}from"../lib/composition.js";import{cn as O}from"../lib/utils.js";import{createPortal as H}from"react-dom";let T={vertical:{modifiers:[g,m],strategy:y,collisionDetection:n},horizontal:{modifiers:[u,m],strategy:p,collisionDetection:n},mixed:{modifiers:[m],strategy:void 0,collisionDetection:l}},z="Sortable",A="SortableContent",G="SortableItem",R="SortableItemHandle",V="SortableOverlay",q={[z]:`\`${z}\` components must be within \`${z}\``,[A]:`\`${A}\` must be within \`${z}\``,[G]:`\`${G}\` must be within \`${A}\``,[R]:`\`${R}\` must be within \`${G}\``,[V]:`\`${V}\` must be within \`${z}\``},M=w(null);function U(e){let t=I(M);if(!t)throw Error(q[e]);return t}function W(r){let{value:n,onValueChange:l,collisionDetection:s,modifiers:u,strategy:m,onMove:g,orientation:b="vertical",flatCursor:p=!1,getItemValue:h,accessibility:y,...$}=r,S=C(),[w,D]=k(null),I=c(d(i),d(a),d(o,{coordinateGetter:v})),N=E(()=>T[b],[b]),j=x(e=>{if("object"==typeof e&&!h)throw Error("getItemValue is required when using array of objects.");return h?h(e):e},[h]),O=E(()=>n.map(e=>j(e)),[n,j]),H=x(e=>{let{active:t,over:r}=e;if(r&&t.id!==r?.id){let o=n.findIndex(e=>j(e)===t.id),i=n.findIndex(e=>j(e)===r.id);g?g({...e,activeIndex:o,overIndex:i}):l?.(f(n,o,i))}D(null)},[n,l,g,j]),z=E(()=>({onDragStart({active:e}){let t=e.id.toString();return`Grabbed sortable item "${t}". Current position is ${e.data.current?.sortable.index+1} of ${n.length}. Use arrow keys to move, space to drop.`},onDragOver({active:e,over:t}){if(t){let r=t.data.current?.sortable.index??0,o=e.data.current?.sortable.index??0,i=e.id.toString();return`Sortable item "${i}" moved ${r>o?"down":"up"} to position ${r+1} of ${n.length}.`}return"Sortable item is no longer over a droppable area. Press escape to cancel."},onDragEnd({active:e,over:t}){let r=e.id.toString();if(t){let e=t.data.current?.sortable.index??0;return`Sortable item "${r}" dropped at position ${e+1} of ${n.length}.`}return`Sortable item "${r}" dropped. No changes were made.`},onDragCancel({active:e}){let t=e.data.current?.sortable.index??0,r=e.id.toString();return`Sorting cancelled. Sortable item "${r}" returned to position ${t+1} of ${n.length}.`},onDragMove({active:e,over:t}){if(t){let r=t.data.current?.sortable.index??0,o=e.data.current?.sortable.index??0,i=e.id.toString();return`Sortable item "${i}" is moving ${r>o?"down":"up"} to position ${r+1} of ${n.length}.`}return"Sortable item is no longer over a droppable area. Press escape to cancel."}}),[n]),A=E(()=>({draggable:`
|
|
3
3
|
To pick up a sortable item, press space or enter.
|
|
4
|
-
While dragging, use the ${"vertical"===
|
|
4
|
+
While dragging, use the ${"vertical"===b?"up and down":"horizontal"===b?"left and right":"arrow"} keys to move the item.
|
|
5
5
|
Press space or enter again to drop the item in its new position, or press escape to cancel.
|
|
6
|
-
`}),[
|
|
6
|
+
`}),[b]),G=E(()=>({id:S,items:O,modifiers:u??N.modifiers,strategy:m??N.strategy,activeId:w,setActiveId:D,getItemValue:j,flatCursor:p}),[S,O,u,m,N.modifiers,N.strategy,w,j,p]);return e(M.Provider,{value:G,children:e(t,{collisionDetection:s??N.collisionDetection,modifiers:u??N.modifiers,sensors:I,...$,id:S,onDragStart:P($.onDragStart,({active:e})=>D(e.id)),onDragEnd:P($.onDragEnd,H),onDragCancel:P($.onDragCancel,()=>D(null)),accessibility:{announcements:z,screenReaderInstructions:A,...y}})})}M.displayName=z;let B=w(!1);B.displayName=A;let F=D((t,r)=>{let{strategy:o,asChild:i,withoutSlot:a,children:n,...l}=t,s=U(A);return e(B.Provider,{value:!0,children:e(b,{items:s.items,strategy:o??s.strategy,children:a?n:e(i?S:"div",{...l,ref:r,children:n})})})});F.displayName=A;let J=w(null);J.displayName=G;let K=D((t,r)=>{let{value:o,style:i,asHandle:a,asChild:n,disabled:l,className:s,...d}=t,c=I(B),u=I(Q);if(!c&&!u)throw Error(q[G]);if(""===o)throw Error(`\`${G}\` value cannot be an empty string`);let m=U(G),g=C(),{attributes:b,listeners:f,setNodeRef:p,setActivatorNodeRef:v,transform:y,transition:w,isDragging:D}=h({id:o,disabled:l}),x=j(r,e=>{!l&&(p(e),a&&v(e))}),N=E(()=>({transform:$.Translate.toString(y),transition:w,...i}),[y,w,i]),k=E(()=>({id:g,attributes:b,listeners:f,setActivatorNodeRef:v,isDragging:D,disabled:l}),[g,b,f,v,D,l]);return e(J.Provider,{value:k,children:e(n?S:"div",{id:g,"data-dragging":D?"":void 0,...d,...a?b:{},...a?f:{},tabIndex:l?void 0:0,ref:x,style:N,className:O("focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1",{"touch-none select-none":a,"cursor-default":m.flatCursor,"data-dragging:cursor-grabbing":!m.flatCursor,"cursor-grab":!D&&a&&!m.flatCursor,"opacity-50":D,"pointer-events-none opacity-50":l},s)})})});K.displayName=G;let L=D((t,r)=>{let{asChild:o,disabled:i,className:a,...n}=t,l=I(J);if(!l)throw Error(q[R]);let s=U(R),d=i??l.disabled,c=j(r,e=>{d&&l.setActivatorNodeRef(e)});return e(o?S:"button",{type:"button","aria-controls":l.id,"data-dragging":l.isDragging?"":void 0,...n,...l.attributes,...l.listeners,ref:c,className:O("select-none disabled:pointer-events-none disabled:opacity-50",s.flatCursor?"cursor-default":"cursor-grab data-dragging:cursor-grabbing",a),disabled:d})});L.displayName=R;let Q=w(!1);Q.displayName=V;let X={sideEffects:s({styles:{active:{opacity:"0.4"}}})};function Y(t){let{container:o,children:i,...a}=t,n=U(V),[l,s]=k(!1);N(()=>s(!0),[]);let d=o??(l?globalThis.document?.body:null);return d?H(e(r,{dropAnimation:X,modifiers:n.modifiers,className:O(!n.flatCursor&&"cursor-grabbing"),...a,children:e(Q.Provider,{value:!0,children:n.activeId?"function"==typeof i?i({value:n.activeId}):i:null})}),d):null}let Z=W,_=F,ee=K,et=L,er=Y;export{_ as Content,ee as Item,et as ItemHandle,er as Overlay,Z as Root,W as Sortable,F as SortableContent,K as SortableItem,L as SortableItemHandle,Y as SortableOverlay};
|
|
7
7
|
//# sourceMappingURL=sortable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\sortable.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/sortable.tsx"],"sourcesContent":["\r\n\r\nimport {\r\n type Announcements,\r\n DndContext,\r\n type DndContextProps,\r\n type DragEndEvent,\r\n DragOverlay,\r\n type DraggableSyntheticListeners,\r\n type DropAnimation,\r\n KeyboardSensor,\r\n MouseSensor,\r\n type ScreenReaderInstructions,\r\n TouchSensor,\r\n type UniqueIdentifier,\r\n closestCenter,\r\n closestCorners,\r\n defaultDropAnimationSideEffects,\r\n useSensor,\r\n useSensors,\r\n} from '@dnd-kit/core'\r\nimport {\r\n restrictToHorizontalAxis,\r\n restrictToParentElement,\r\n restrictToVerticalAxis,\r\n} from '@dnd-kit/modifiers'\r\nimport {\r\n SortableContext,\r\n type SortableContextProps,\r\n arrayMove,\r\n horizontalListSortingStrategy,\r\n sortableKeyboardCoordinates,\r\n useSortable,\r\n verticalListSortingStrategy,\r\n} from '@dnd-kit/sortable'\r\nimport { CSS } from '@dnd-kit/utilities'\r\nimport { Slot } from '@radix-ui/react-slot'\r\nimport * as React from 'react'\r\n\r\nimport { composeEventHandlers, useComposedRefs } from '@/lib/composition'\r\nimport { cn } from '@/lib/utils'\r\nimport * as ReactDOM from 'react-dom'\r\n\r\nconst orientationConfig = {\r\n vertical: {\r\n modifiers: [restrictToVerticalAxis, restrictToParentElement],\r\n strategy: verticalListSortingStrategy,\r\n collisionDetection: closestCenter,\r\n },\r\n horizontal: {\r\n modifiers: [restrictToHorizontalAxis, restrictToParentElement],\r\n strategy: horizontalListSortingStrategy,\r\n collisionDetection: closestCenter,\r\n },\r\n mixed: {\r\n modifiers: [restrictToParentElement],\r\n strategy: undefined,\r\n collisionDetection: closestCorners,\r\n },\r\n}\r\n\r\nconst ROOT_NAME = 'Sortable'\r\nconst CONTENT_NAME = 'SortableContent'\r\nconst ITEM_NAME = 'SortableItem'\r\nconst ITEM_HANDLE_NAME = 'SortableItemHandle'\r\nconst OVERLAY_NAME = 'SortableOverlay'\r\n\r\nconst SORTABLE_ERRORS = {\r\n [ROOT_NAME]: `\\`${ROOT_NAME}\\` components must be within \\`${ROOT_NAME}\\``,\r\n [CONTENT_NAME]: `\\`${CONTENT_NAME}\\` must be within \\`${ROOT_NAME}\\``,\r\n [ITEM_NAME]: `\\`${ITEM_NAME}\\` must be within \\`${CONTENT_NAME}\\``,\r\n [ITEM_HANDLE_NAME]: `\\`${ITEM_HANDLE_NAME}\\` must be within \\`${ITEM_NAME}\\``,\r\n [OVERLAY_NAME]: `\\`${OVERLAY_NAME}\\` must be within \\`${ROOT_NAME}\\``,\r\n} as const\r\n\r\ninterface SortableRootContextValue<T> {\r\n id: string\r\n items: UniqueIdentifier[]\r\n modifiers: DndContextProps['modifiers']\r\n strategy: SortableContextProps['strategy']\r\n activeId: UniqueIdentifier | null\r\n setActiveId: (id: UniqueIdentifier | null) => void\r\n getItemValue: (item: T) => UniqueIdentifier\r\n flatCursor: boolean\r\n}\r\n\r\nconst SortableRootContext =\r\n React.createContext<SortableRootContextValue<unknown> | null>(null)\r\nSortableRootContext.displayName = ROOT_NAME\r\n\r\nfunction useSortableContext(name: keyof typeof SORTABLE_ERRORS) {\r\n const context = React.useContext(SortableRootContext)\r\n if (!context) {\r\n throw new Error(SORTABLE_ERRORS[name])\r\n }\r\n return context\r\n}\r\n\r\ninterface GetItemValue<T> {\r\n /**\r\n * Callback that returns a unique identifier for each sortable item. Required for array of objects.\r\n * @example getItemValue={(item) => item.id}\r\n */\r\n getItemValue: (item: T) => UniqueIdentifier\r\n}\r\n\r\ntype SortableProps<T> = DndContextProps & {\r\n value: T[]\r\n onValueChange?: (items: T[]) => void\r\n onMove?: (\r\n event: DragEndEvent & { activeIndex: number; overIndex: number }\r\n ) => void\r\n strategy?: SortableContextProps['strategy']\r\n orientation?: 'vertical' | 'horizontal' | 'mixed'\r\n flatCursor?: boolean\r\n} & (T extends object ? GetItemValue<T> : Partial<GetItemValue<T>>)\r\n\r\nfunction Sortable<T>(props: SortableProps<T>) {\r\n const {\r\n value,\r\n onValueChange,\r\n collisionDetection,\r\n modifiers,\r\n strategy,\r\n onMove,\r\n orientation = 'vertical',\r\n flatCursor = false,\r\n getItemValue: getItemValueProp,\r\n accessibility,\r\n ...sortableProps\r\n } = props\r\n const id = React.useId()\r\n const [activeId, setActiveId] = React.useState<UniqueIdentifier | null>(null)\r\n\r\n const sensors = useSensors(\r\n useSensor(MouseSensor),\r\n useSensor(TouchSensor),\r\n useSensor(KeyboardSensor, {\r\n coordinateGetter: sortableKeyboardCoordinates,\r\n })\r\n )\r\n const config = React.useMemo(\r\n () => orientationConfig[orientation],\r\n [orientation]\r\n )\r\n\r\n const getItemValue = React.useCallback(\r\n (item: T): UniqueIdentifier => {\r\n if (typeof item === 'object' && !getItemValueProp) {\r\n throw new Error('getItemValue is required when using array of objects.')\r\n }\r\n return getItemValueProp\r\n ? getItemValueProp(item)\r\n : (item as UniqueIdentifier)\r\n },\r\n [getItemValueProp]\r\n )\r\n\r\n const items = React.useMemo(() => {\r\n return value.map(item => getItemValue(item))\r\n }, [value, getItemValue])\r\n\r\n const onDragEnd = React.useCallback(\r\n (event: DragEndEvent) => {\r\n const { active, over } = event\r\n if (over && active.id !== over?.id) {\r\n const activeIndex = value.findIndex(\r\n item => getItemValue(item) === active.id\r\n )\r\n const overIndex = value.findIndex(\r\n item => getItemValue(item) === over.id\r\n )\r\n\r\n if (onMove) {\r\n onMove({ ...event, activeIndex, overIndex })\r\n } else {\r\n onValueChange?.(arrayMove(value, activeIndex, overIndex))\r\n }\r\n }\r\n setActiveId(null)\r\n },\r\n [value, onValueChange, onMove, getItemValue]\r\n )\r\n\r\n const announcements: Announcements = React.useMemo(\r\n () => ({\r\n onDragStart({ active }) {\r\n const activeValue = active.id.toString()\r\n return `Grabbed sortable item \"${activeValue}\". Current position is ${active.data.current?.sortable.index + 1} of ${value.length}. Use arrow keys to move, space to drop.`\r\n },\r\n onDragOver({ active, over }) {\r\n if (over) {\r\n const overIndex = over.data.current?.sortable.index ?? 0\r\n const activeIndex = active.data.current?.sortable.index ?? 0\r\n const moveDirection = overIndex > activeIndex ? 'down' : 'up'\r\n const activeValue = active.id.toString()\r\n return `Sortable item \"${activeValue}\" moved ${moveDirection} to position ${overIndex + 1} of ${value.length}.`\r\n }\r\n return 'Sortable item is no longer over a droppable area. Press escape to cancel.'\r\n },\r\n onDragEnd({ active, over }) {\r\n const activeValue = active.id.toString()\r\n if (over) {\r\n const overIndex = over.data.current?.sortable.index ?? 0\r\n return `Sortable item \"${activeValue}\" dropped at position ${overIndex + 1} of ${value.length}.`\r\n }\r\n return `Sortable item \"${activeValue}\" dropped. No changes were made.`\r\n },\r\n onDragCancel({ active }) {\r\n const activeIndex = active.data.current?.sortable.index ?? 0\r\n const activeValue = active.id.toString()\r\n return `Sorting cancelled. Sortable item \"${activeValue}\" returned to position ${activeIndex + 1} of ${value.length}.`\r\n },\r\n onDragMove({ active, over }) {\r\n if (over) {\r\n const overIndex = over.data.current?.sortable.index ?? 0\r\n const activeIndex = active.data.current?.sortable.index ?? 0\r\n const moveDirection = overIndex > activeIndex ? 'down' : 'up'\r\n const activeValue = active.id.toString()\r\n return `Sortable item \"${activeValue}\" is moving ${moveDirection} to position ${overIndex + 1} of ${value.length}.`\r\n }\r\n return 'Sortable item is no longer over a droppable area. Press escape to cancel.'\r\n },\r\n }),\r\n [value]\r\n )\r\n\r\n const screenReaderInstructions: ScreenReaderInstructions = React.useMemo(\r\n () => ({\r\n draggable: `\r\n To pick up a sortable item, press space or enter.\r\n While dragging, use the ${orientation === 'vertical' ? 'up and down' : orientation === 'horizontal' ? 'left and right' : 'arrow'} keys to move the item.\r\n Press space or enter again to drop the item in its new position, or press escape to cancel.\r\n `,\r\n }),\r\n [orientation]\r\n )\r\n\r\n const contextValue = React.useMemo(\r\n () => ({\r\n id,\r\n items,\r\n modifiers: modifiers ?? config.modifiers,\r\n strategy: strategy ?? config.strategy,\r\n activeId,\r\n setActiveId,\r\n getItemValue,\r\n flatCursor,\r\n }),\r\n [\r\n id,\r\n items,\r\n modifiers,\r\n strategy,\r\n config.modifiers,\r\n config.strategy,\r\n activeId,\r\n getItemValue,\r\n flatCursor,\r\n ]\r\n )\r\n\r\n return (\r\n <SortableRootContext.Provider\r\n value={contextValue as SortableRootContextValue<unknown>}\r\n >\r\n <DndContext\r\n collisionDetection={collisionDetection ?? config.collisionDetection}\r\n modifiers={modifiers ?? config.modifiers}\r\n sensors={sensors}\r\n {...sortableProps}\r\n id={id}\r\n onDragStart={composeEventHandlers(\r\n sortableProps.onDragStart,\r\n ({ active }) => setActiveId(active.id)\r\n )}\r\n onDragEnd={composeEventHandlers(sortableProps.onDragEnd, onDragEnd)}\r\n onDragCancel={composeEventHandlers(sortableProps.onDragCancel, () =>\r\n setActiveId(null)\r\n )}\r\n accessibility={{\r\n announcements,\r\n screenReaderInstructions,\r\n ...accessibility,\r\n }}\r\n />\r\n </SortableRootContext.Provider>\r\n )\r\n}\r\n\r\nconst SortableContentContext = React.createContext<boolean>(false)\r\nSortableContentContext.displayName = CONTENT_NAME\r\n\r\ninterface SortableContentProps extends React.ComponentPropsWithoutRef<'div'> {\r\n strategy?: SortableContextProps['strategy']\r\n children: React.ReactNode\r\n asChild?: boolean\r\n withoutSlot?: boolean\r\n}\r\n\r\nconst SortableContent = React.forwardRef<HTMLDivElement, SortableContentProps>(\r\n (props, forwardedRef) => {\r\n const {\r\n strategy: strategyProp,\r\n asChild,\r\n withoutSlot,\r\n children,\r\n ...contentProps\r\n } = props\r\n const context = useSortableContext(CONTENT_NAME)\r\n\r\n const ContentPrimitive = asChild ? Slot : 'div'\r\n\r\n return (\r\n <SortableContentContext.Provider value={true}>\r\n <SortableContext\r\n items={context.items}\r\n strategy={strategyProp ?? context.strategy}\r\n >\r\n {withoutSlot ? (\r\n children\r\n ) : (\r\n <ContentPrimitive {...contentProps} ref={forwardedRef}>\r\n {children}\r\n </ContentPrimitive>\r\n )}\r\n </SortableContext>\r\n </SortableContentContext.Provider>\r\n )\r\n }\r\n)\r\nSortableContent.displayName = CONTENT_NAME\r\n\r\ninterface SortableItemContextValue {\r\n id: string\r\n attributes: React.HTMLAttributes<HTMLElement>\r\n listeners: DraggableSyntheticListeners | undefined\r\n setActivatorNodeRef: (node: HTMLElement | null) => void\r\n isDragging?: boolean\r\n disabled?: boolean\r\n}\r\n\r\nconst SortableItemContext =\r\n React.createContext<SortableItemContextValue | null>(null)\r\nSortableItemContext.displayName = ITEM_NAME\r\n\r\ninterface SortableItemProps extends React.ComponentPropsWithoutRef<'div'> {\r\n value: UniqueIdentifier\r\n asHandle?: boolean\r\n asChild?: boolean\r\n disabled?: boolean\r\n}\r\n\r\nconst SortableItem = React.forwardRef<HTMLDivElement, SortableItemProps>(\r\n (props, forwardedRef) => {\r\n const {\r\n value,\r\n style,\r\n asHandle,\r\n asChild,\r\n disabled,\r\n className,\r\n ...itemProps\r\n } = props\r\n const inSortableContent = React.useContext(SortableContentContext)\r\n const inSortableOverlay = React.useContext(SortableOverlayContext)\r\n\r\n if (!inSortableContent && !inSortableOverlay) {\r\n throw new Error(SORTABLE_ERRORS[ITEM_NAME])\r\n }\r\n\r\n if (value === '') {\r\n throw new Error(`\\`${ITEM_NAME}\\` value cannot be an empty string`)\r\n }\r\n\r\n const context = useSortableContext(ITEM_NAME)\r\n const id = React.useId()\r\n const {\r\n attributes,\r\n listeners,\r\n setNodeRef,\r\n setActivatorNodeRef,\r\n transform,\r\n transition,\r\n isDragging,\r\n } = useSortable({ id: value, disabled })\r\n\r\n const composedRef = useComposedRefs(forwardedRef, node => {\r\n if (disabled) return\r\n setNodeRef(node)\r\n if (asHandle) setActivatorNodeRef(node)\r\n })\r\n\r\n const composedStyle = React.useMemo<React.CSSProperties>(() => {\r\n return {\r\n transform: CSS.Translate.toString(transform),\r\n transition,\r\n ...style,\r\n }\r\n }, [transform, transition, style])\r\n\r\n const itemContext = React.useMemo<SortableItemContextValue>(\r\n () => ({\r\n id,\r\n attributes,\r\n listeners,\r\n setActivatorNodeRef,\r\n isDragging,\r\n disabled,\r\n }),\r\n [id, attributes, listeners, setActivatorNodeRef, isDragging, disabled]\r\n )\r\n\r\n const ItemPrimitive = asChild ? Slot : 'div'\r\n\r\n return (\r\n <SortableItemContext.Provider value={itemContext}>\r\n <ItemPrimitive\r\n id={id}\r\n data-dragging={isDragging ? '' : undefined}\r\n {...itemProps}\r\n {...(asHandle ? attributes : {})}\r\n {...(asHandle ? listeners : {})}\r\n tabIndex={disabled ? undefined : 0}\r\n ref={composedRef}\r\n style={composedStyle}\r\n className={cn(\r\n 'focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1',\r\n {\r\n 'touch-none select-none': asHandle,\r\n 'cursor-default': context.flatCursor,\r\n 'data-dragging:cursor-grabbing': !context.flatCursor,\r\n 'cursor-grab': !isDragging && asHandle && !context.flatCursor,\r\n 'opacity-50': isDragging,\r\n 'pointer-events-none opacity-50': disabled,\r\n },\r\n className\r\n )}\r\n />\r\n </SortableItemContext.Provider>\r\n )\r\n }\r\n)\r\nSortableItem.displayName = ITEM_NAME\r\n\r\ninterface SortableItemHandleProps\r\n extends React.ComponentPropsWithoutRef<'button'> {\r\n asChild?: boolean\r\n}\r\n\r\nconst SortableItemHandle = React.forwardRef<\r\n HTMLButtonElement,\r\n SortableItemHandleProps\r\n>((props, forwardedRef) => {\r\n const { asChild, disabled, className, ...itemHandleProps } = props\r\n const itemContext = React.useContext(SortableItemContext)\r\n if (!itemContext) {\r\n throw new Error(SORTABLE_ERRORS[ITEM_HANDLE_NAME])\r\n }\r\n const context = useSortableContext(ITEM_HANDLE_NAME)\r\n\r\n const isDisabled = disabled ?? itemContext.disabled\r\n\r\n const composedRef = useComposedRefs(forwardedRef, node => {\r\n if (!isDisabled) return\r\n itemContext.setActivatorNodeRef(node)\r\n })\r\n\r\n const HandlePrimitive = asChild ? Slot : 'button'\r\n\r\n return (\r\n <HandlePrimitive\r\n type=\"button\"\r\n aria-controls={itemContext.id}\r\n data-dragging={itemContext.isDragging ? '' : undefined}\r\n {...itemHandleProps}\r\n {...itemContext.attributes}\r\n {...itemContext.listeners}\r\n ref={composedRef}\r\n className={cn(\r\n 'select-none disabled:pointer-events-none disabled:opacity-50',\r\n context.flatCursor\r\n ? 'cursor-default'\r\n : 'cursor-grab data-dragging:cursor-grabbing',\r\n className\r\n )}\r\n disabled={isDisabled}\r\n />\r\n )\r\n})\r\nSortableItemHandle.displayName = ITEM_HANDLE_NAME\r\n\r\nconst SortableOverlayContext = React.createContext(false)\r\nSortableOverlayContext.displayName = OVERLAY_NAME\r\n\r\nconst dropAnimation: DropAnimation = {\r\n sideEffects: defaultDropAnimationSideEffects({\r\n styles: {\r\n active: {\r\n opacity: '0.4',\r\n },\r\n },\r\n }),\r\n}\r\n\r\ninterface SortableOverlayProps\r\n extends Omit<React.ComponentPropsWithoutRef<typeof DragOverlay>, 'children'> {\r\n container?: Element | DocumentFragment | null\r\n children?:\r\n | ((params: { value: UniqueIdentifier }) => React.ReactNode)\r\n | React.ReactNode\r\n}\r\n\r\nfunction SortableOverlay(props: SortableOverlayProps) {\r\n const { container: containerProp, children, ...overlayProps } = props\r\n const context = useSortableContext(OVERLAY_NAME)\r\n\r\n const [mounted, setMounted] = React.useState(false)\r\n React.useLayoutEffect(() => setMounted(true), [])\r\n\r\n const container =\r\n containerProp ?? (mounted ? globalThis.document?.body : null)\r\n\r\n if (!container) return null\r\n\r\n return ReactDOM.createPortal(\r\n <DragOverlay\r\n dropAnimation={dropAnimation}\r\n modifiers={context.modifiers}\r\n className={cn(!context.flatCursor && 'cursor-grabbing')}\r\n {...overlayProps}\r\n >\r\n <SortableOverlayContext.Provider value={true}>\r\n {context.activeId\r\n ? typeof children === 'function'\r\n ? children({ value: context.activeId })\r\n : children\r\n : null}\r\n </SortableOverlayContext.Provider>\r\n </DragOverlay>,\r\n container\r\n )\r\n}\r\n\r\nconst Root = Sortable\r\nconst Content = SortableContent\r\nconst Item = SortableItem\r\nconst ItemHandle = SortableItemHandle\r\nconst Overlay = SortableOverlay\r\n\r\nexport {\r\n Root,\r\n Content,\r\n Item,\r\n ItemHandle,\r\n Overlay,\r\n //\r\n Sortable,\r\n SortableContent,\r\n SortableItem,\r\n SortableItemHandle,\r\n SortableOverlay,\r\n}\r\n"],"names":["orientationConfig","restrictToVerticalAxis","restrictToParentElement","verticalListSortingStrategy","closestCenter","restrictToHorizontalAxis","horizontalListSortingStrategy","undefined","closestCorners","ROOT_NAME","CONTENT_NAME","ITEM_NAME","ITEM_HANDLE_NAME","OVERLAY_NAME","SORTABLE_ERRORS","SortableRootContext","React","useSortableContext","name","context","Error","Sortable","props","value","onValueChange","collisionDetection","modifiers","strategy","onMove","orientation","flatCursor","getItemValueProp","accessibility","sortableProps","id","activeId","setActiveId","sensors","useSensors","useSensor","MouseSensor","TouchSensor","KeyboardSensor","sortableKeyboardCoordinates","config","getItemValue","item","items","onDragEnd","event","active","over","activeIndex","overIndex","arrayMove","announcements","activeValue","screenReaderInstructions","contextValue","DndContext","composeEventHandlers","SortableContentContext","SortableContent","forwardedRef","strategyProp","asChild","withoutSlot","children","contentProps","ContentPrimitive","Slot","SortableContext","SortableItemContext","SortableItem","style","asHandle","disabled","className","itemProps","inSortableContent","inSortableOverlay","SortableOverlayContext","attributes","listeners","setNodeRef","setActivatorNodeRef","transform","transition","isDragging","useSortable","composedRef","useComposedRefs","node","composedStyle","CSS","itemContext","ItemPrimitive","cn","SortableItemHandle","itemHandleProps","isDisabled","HandlePrimitive","dropAnimation","defaultDropAnimationSideEffects","SortableOverlay","containerProp","overlayProps","mounted","setMounted","container","globalThis","ReactDOM","DragOverlay","Root","Content","Item","ItemHandle","Overlay"],"mappings":";uVA2CA,IAAMA,EAAoB,CACxB,SAAU,CACR,UAAW,CAACC,EAAAA,sBAAsBA,CAAEC,EAAAA,uBAAuBA,CAAC,CAC5D,SAAUC,EAAAA,2BAA2BA,CACrC,mBAAoBC,EAAAA,aAAaA,EAEnC,WAAY,CACV,UAAW,CAACC,EAAAA,wBAAwBA,CAAEH,EAAAA,uBAAuBA,CAAC,CAC9D,SAAUI,EAAAA,6BAA6BA,CACvC,mBAAoBF,EAAAA,aAAaA,EAEnC,MAAO,CACL,UAAW,CAACF,EAAAA,uBAAuBA,CAAC,CACpC,SAAUK,OACV,mBAAoBC,EAAAA,cAAcA,CAEtC,EAEMC,EAAY,WACZC,EAAe,kBACfC,EAAY,eACZC,EAAmB,qBACnBC,EAAe,kBAEfC,EAAkB,CACtB,CAACL,EAAU,CAAE,CAAC,EAAE,EAAEA,EAAU,+BAA+B,EAAEA,EAAU,EAAE,CAAC,CAC1E,CAACC,EAAa,CAAE,CAAC,EAAE,EAAEA,EAAa,oBAAoB,EAAED,EAAU,EAAE,CAAC,CACrE,CAACE,EAAU,CAAE,CAAC,EAAE,EAAEA,EAAU,oBAAoB,EAAED,EAAa,EAAE,CAAC,CAClE,CAACE,EAAiB,CAAE,CAAC,EAAE,EAAEA,EAAiB,oBAAoB,EAAED,EAAU,EAAE,CAAC,CAC7E,CAACE,EAAa,CAAE,CAAC,EAAE,EAAEA,EAAa,oBAAoB,EAAEJ,EAAU,EAAE,CAAC,EAcjEM,EACJC,EAAAA,aAAmB,CAA2C,MAGhE,SAASC,EAAmBC,CAAkC,EAC5D,IAAMC,EAAUH,EAAAA,UAAgB,CAACD,GACjC,GAAI,CAACI,EACH,MAAM,MAAUL,CAAe,CAACI,EAAK,EAEvC,OAAOC,CACT,CAqBA,SAASE,EAAYC,CAAuB,EAC1C,GAAM,CACJC,MAAAA,CAAK,CACLC,cAAAA,CAAa,CACbC,mBAAAA,CAAkB,CAClBC,UAAAA,CAAS,CACTC,SAAAA,CAAQ,CACRC,OAAAA,CAAM,CACNC,YAAAA,EAAc,UAAU,CACxBC,WAAAA,EAAa,EAAK,CAClB,aAAcC,CAAgB,CAC9BC,cAAAA,CAAa,CACb,GAAGC,EACJ,CAAGX,EACEY,EAAKlB,EAAAA,KAAW,GAChB,CAACmB,EAAUC,EAAY,CAAGpB,EAAAA,QAAc,CAA0B,MAElEqB,EAAUC,GAAAA,EAAAA,UAAAA,EACdC,GAAAA,EAAAA,SAAAA,EAAUC,EAAAA,WAAWA,EACrBD,GAAAA,EAAAA,SAAAA,EAAUE,EAAAA,WAAWA,EACrBF,GAAAA,EAAAA,SAAAA,EAAUG,EAAAA,cAAcA,CAAE,CACxB,iBAAkBC,EAAAA,2BAA2BA,IAG3CC,EAAS5B,EAAAA,OAAa,CAC1B,IAAMhB,CAAiB,CAAC6B,EAAY,CACpC,CAACA,EAAY,EAGTgB,EAAe7B,EAAAA,WAAiB,CACpC,IACE,GAAI,iBAAO8B,GAAqB,CAACf,EAC/B,MAAM,MAAU,yDAElB,OAAOA,EACHA,EAAiBe,GAChBA,CACP,EACA,CAACf,EAAiB,EAGdgB,EAAQ/B,EAAAA,OAAa,CAAC,IACnBO,EAAM,GAAG,CAACuB,GAAQD,EAAaC,IACrC,CAACvB,EAAOsB,EAAa,EAElBG,EAAYhC,EAAAA,WAAiB,CACjC,IACE,GAAM,CAAEkC,OAAAA,CAAM,CAAEC,KAAAA,CAAI,CAAE,CAAGF,EACzB,GAAIE,GAAQD,EAAO,EAAE,GAAKC,GAAM,GAAI,CAClC,IAAMC,EAAc7B,EAAM,SAAS,CACjCuB,GAAQD,EAAaC,KAAUI,EAAO,EAAE,EAEpCG,EAAY9B,EAAM,SAAS,CAC/BuB,GAAQD,EAAaC,KAAUK,EAAK,EAAE,EAGpCvB,EACFA,EAAO,CAAE,GAAGqB,CAAK,CAAEG,YAAAA,EAAaC,UAAAA,CAAU,GAE1C7B,IAAgB8B,GAAAA,EAAAA,SAAAA,EAAU/B,EAAO6B,EAAaC,GAElD,CACAjB,EAAY,KACd,EACA,CAACb,EAAOC,EAAeI,EAAQiB,EAAa,EAGxCU,EAA+BvC,EAAAA,OAAa,CAChD,IAAO,EACL,YAAY,CAAEkC,OAAAA,CAAM,CAAE,EACpB,IAAMM,EAAcN,EAAO,EAAE,CAAC,QAAQ,GACtC,MAAO,CAAC,uBAAuB,EAAEM,EAAY,uBAAuB,EAAEN,EAAO,IAAI,CAAC,OAAO,EAAE,SAAS,MAAQ,EAAE,IAAI,EAAE3B,EAAM,MAAM,CAAC,wCAAwC,CAAC,EAE5K,WAAW,CAAE2B,OAAAA,CAAM,CAAEC,KAAAA,CAAI,CAAE,EACzB,GAAIA,EAAM,CACR,IAAME,EAAYF,EAAK,IAAI,CAAC,OAAO,EAAE,SAAS,OAAS,EACjDC,EAAcF,EAAO,IAAI,CAAC,OAAO,EAAE,SAAS,OAAS,EAErDM,EAAcN,EAAO,EAAE,CAAC,QAAQ,GACtC,MAAO,CAAC,eAAe,EAAEM,EAAY,QAAQ,EAFvBH,EAAYD,EAAc,OAAS,KAEI,aAAa,EAAEC,EAAY,EAAE,IAAI,EAAE9B,EAAM,MAAM,CAAC,CAAC,CAAC,CAEjH,MAAO,2EACT,EACA,UAAU,CAAE2B,OAAAA,CAAM,CAAEC,KAAAA,CAAI,CAAE,EACxB,IAAMK,EAAcN,EAAO,EAAE,CAAC,QAAQ,GACtC,GAAIC,EAAM,CACR,IAAME,EAAYF,EAAK,IAAI,CAAC,OAAO,EAAE,SAAS,OAAS,EACvD,MAAO,CAAC,eAAe,EAAEK,EAAY,sBAAsB,EAAEH,EAAY,EAAE,IAAI,EAAE9B,EAAM,MAAM,CAAC,CAAC,CAAC,CAElG,MAAO,CAAC,eAAe,EAAEiC,EAAY,gCAAgC,CAAC,EAExE,aAAa,CAAEN,OAAAA,CAAM,CAAE,EACrB,IAAME,EAAcF,EAAO,IAAI,CAAC,OAAO,EAAE,SAAS,OAAS,EACrDM,EAAcN,EAAO,EAAE,CAAC,QAAQ,GACtC,MAAO,CAAC,kCAAkC,EAAEM,EAAY,uBAAuB,EAAEJ,EAAc,EAAE,IAAI,EAAE7B,EAAM,MAAM,CAAC,CAAC,CAAC,EAExH,WAAW,CAAE2B,OAAAA,CAAM,CAAEC,KAAAA,CAAI,CAAE,EACzB,GAAIA,EAAM,CACR,IAAME,EAAYF,EAAK,IAAI,CAAC,OAAO,EAAE,SAAS,OAAS,EACjDC,EAAcF,EAAO,IAAI,CAAC,OAAO,EAAE,SAAS,OAAS,EAErDM,EAAcN,EAAO,EAAE,CAAC,QAAQ,GACtC,MAAO,CAAC,eAAe,EAAEM,EAAY,YAAY,EAF3BH,EAAYD,EAAc,OAAS,KAEQ,aAAa,EAAEC,EAAY,EAAE,IAAI,EAAE9B,EAAM,MAAM,CAAC,CAAC,CAAC,CAErH,MAAO,2EACT,CACF,GACA,CAACA,EAAM,EAGHkC,EAAqDzC,EAAAA,OAAa,CACtE,IAAO,EACL,UAAW;;gCAEe,EAAEa,aAAAA,EAA6B,cAAgBA,eAAAA,EAA+B,iBAAmB,QAAQ;;MAEnI,CAAC,GAEH,CAACA,EAAY,EAGT6B,EAAe1C,EAAAA,OAAa,CAChC,IAAO,EACLkB,GAAAA,EACAa,MAAAA,EACA,UAAWrB,GAAakB,EAAO,SAAS,CACxC,SAAUjB,GAAYiB,EAAO,QAAQ,CACrCT,SAAAA,EACAC,YAAAA,EACAS,aAAAA,EACAf,WAAAA,CACF,GACA,CACEI,EACAa,EACArB,EACAC,EACAiB,EAAO,SAAS,CAChBA,EAAO,QAAQ,CACfT,EACAU,EACAf,EACD,EAGH,MACE,UAACf,EAAoB,QAAQ,EAC3B,MAAO2C,E,SAEP,UAACC,EAAAA,UAAUA,CAAAA,CACT,mBAAoBlC,GAAsBmB,EAAO,kBAAkB,CACnE,UAAWlB,GAAakB,EAAO,SAAS,CACxC,QAASP,EACR,GAAGJ,CAAa,CACjB,GAAIC,EACJ,YAAa0B,GAAAA,EAAAA,oBAAAA,EACX3B,EAAc,WAAW,CACzB,CAAC,CAAEiB,OAAAA,CAAM,CAAE,GAAKd,EAAYc,EAAO,EAAE,GAEvC,UAAWU,GAAAA,EAAAA,oBAAAA,EAAqB3B,EAAc,SAAS,CAAEe,GACzD,aAAcY,GAAAA,EAAAA,oBAAAA,EAAqB3B,EAAc,YAAY,CAAE,IAC7DG,EAAY,OAEd,cAAe,CACbmB,cAAAA,EACAE,yBAAAA,EACA,GAAGzB,CAAa,C,IAK1B,CAxMAjB,EAAoB,WAAW,CAAGN,EA0MlC,IAAMoD,EAAyB7C,EAAAA,aAAmB,CAAU,GAC5D6C,CAAAA,EAAuB,WAAW,CAAGnD,EASrC,IAAMoD,EAAkB9C,EAAAA,UAAgB,CACtC,CAACM,EAAOyC,KACN,GAAM,CACJ,SAAUC,CAAY,CACtBC,QAAAA,CAAO,CACPC,YAAAA,CAAW,CACXC,SAAAA,CAAQ,CACR,GAAGC,EACJ,CAAG9C,EACEH,EAAUF,EAAmBP,GAE7B2D,EAAmBJ,EAAUK,EAAAA,IAAIA,CAAG,MAE1C,MACE,UAACT,EAAuB,QAAQ,EAAC,MAAO,G,SACtC,UAACU,EAAAA,eAAeA,CAAAA,CACd,MAAOpD,EAAQ,KAAK,CACpB,SAAU6C,GAAgB7C,EAAQ,QAAQ,C,SAEzC+C,EACCC,EAEA,UAACE,EAAAA,CAAkB,GAAGD,CAAY,CAAE,IAAKL,E,SACtCI,C,MAMb,EAEFL,CAAAA,EAAgB,WAAW,CAAGpD,EAW9B,IAAM8D,EACJxD,EAAAA,aAAmB,CAAkC,KACvDwD,CAAAA,EAAoB,WAAW,CAAG7D,EASlC,IAAM8D,EAAezD,EAAAA,UAAgB,CACnC,CAACM,EAAOyC,KACN,GAAM,CACJxC,MAAAA,CAAK,CACLmD,MAAAA,CAAK,CACLC,SAAAA,CAAQ,CACRV,QAAAA,CAAO,CACPW,SAAAA,CAAQ,CACRC,UAAAA,CAAS,CACT,GAAGC,EACJ,CAAGxD,EACEyD,EAAoB/D,EAAAA,UAAgB,CAAC6C,GACrCmB,EAAoBhE,EAAAA,UAAgB,CAACiE,GAE3C,GAAI,CAACF,GAAqB,CAACC,EACzB,MAAM,MAAUlE,CAAe,CAACH,EAAU,EAG5C,GAAIY,KAAAA,EACF,MAAM,MAAU,CAAC,EAAE,EAAEZ,EAAU,kCAAkC,CAAC,EAGpE,IAAMQ,EAAUF,EAAmBN,GAC7BuB,EAAKlB,EAAAA,KAAW,GAChB,CACJkE,WAAAA,CAAU,CACVC,UAAAA,CAAS,CACTC,WAAAA,CAAU,CACVC,oBAAAA,CAAmB,CACnBC,UAAAA,CAAS,CACTC,WAAAA,CAAU,CACVC,WAAAA,CAAU,CACX,CAAGC,GAAAA,EAAAA,WAAAA,EAAY,CAAE,GAAIlE,EAAOqD,SAAAA,CAAS,GAEhCc,EAAcC,GAAAA,EAAAA,eAAAA,EAAgB5B,EAAc6B,KAC5ChB,IACJQ,EAAWQ,GACPjB,GAAUU,EAAoBO,GACpC,GAEMC,EAAgB7E,EAAAA,OAAa,CAAsB,IAChD,EACL,UAAW8E,EAAAA,GAAAA,CAAAA,SAAAA,CAAAA,QAAsB,CAACR,GAClCC,WAAAA,EACA,GAAGb,CAAK,GAET,CAACY,EAAWC,EAAYb,EAAM,EAE3BqB,EAAc/E,EAAAA,OAAa,CAC/B,IAAO,EACLkB,GAAAA,EACAgD,WAAAA,EACAC,UAAAA,EACAE,oBAAAA,EACAG,WAAAA,EACAZ,SAAAA,CACF,GACA,CAAC1C,EAAIgD,EAAYC,EAAWE,EAAqBG,EAAYZ,EAAS,EAGlEoB,EAAgB/B,EAAUK,EAAAA,IAAIA,CAAG,MAEvC,MACE,UAACE,EAAoB,QAAQ,EAAC,MAAOuB,E,SACnC,UAACC,EAAAA,CACC,GAAI9D,EACJ,gBAAesD,EAAa,GAAKjF,OAChC,GAAGuE,CAAS,CACZ,GAAIH,EAAWO,EAAa,CAAC,CAAC,CAC9B,GAAIP,EAAWQ,EAAY,CAAC,CAAC,CAC9B,SAAUP,EAAWrE,OAAY,EACjC,IAAKmF,EACL,MAAOG,EACP,UAAWI,GAAAA,EAAAA,EAAAA,EACT,wGACA,CACE,yBAA0BtB,EAC1B,iBAAkBxD,EAAQ,UAAU,CACpC,gCAAiC,CAACA,EAAQ,UAAU,CACpD,cAAe,CAACqE,GAAcb,GAAY,CAACxD,EAAQ,UAAU,CAC7D,aAAcqE,EACd,iCAAkCZ,CACpC,EACAC,E,IAKV,EAEFJ,CAAAA,EAAa,WAAW,CAAG9D,EAO3B,IAAMuF,EAAqBlF,EAAAA,UAAgB,CAGzC,CAACM,EAAOyC,KACR,GAAM,CAAEE,QAAAA,CAAO,CAAEW,SAAAA,CAAQ,CAAEC,UAAAA,CAAS,CAAE,GAAGsB,EAAiB,CAAG7E,EACvDyE,EAAc/E,EAAAA,UAAgB,CAACwD,GACrC,GAAI,CAACuB,EACH,MAAM,MAAUjF,CAAe,CAACF,EAAiB,EAEnD,IAAMO,EAAUF,EAAmBL,GAE7BwF,EAAaxB,GAAYmB,EAAY,QAAQ,CAE7CL,EAAcC,GAAAA,EAAAA,eAAAA,EAAgB5B,EAAc6B,IAC3CQ,GACLL,EAAY,mBAAmB,CAACH,EAClC,GAEMS,EAAkBpC,EAAUK,EAAAA,IAAIA,CAAG,SAEzC,MACE,UAAC+B,EAAAA,CACC,KAAK,SACL,gBAAeN,EAAY,EAAE,CAC7B,gBAAeA,EAAY,UAAU,CAAG,GAAKxF,OAC5C,GAAG4F,CAAe,CAClB,GAAGJ,EAAY,UAAU,CACzB,GAAGA,EAAY,SAAS,CACzB,IAAKL,EACL,UAAWO,GAAAA,EAAAA,EAAAA,EACT,+DACA9E,EAAQ,UAAU,CACd,iBACA,4CACJ0D,GAEF,SAAUuB,C,EAGhB,EACAF,CAAAA,EAAmB,WAAW,CAAGtF,EAEjC,IAAMqE,EAAyBjE,EAAAA,aAAmB,CAAC,GACnDiE,CAAAA,EAAuB,WAAW,CAAGpE,EAErC,IAAMyF,EAA+B,CACnC,YAAaC,GAAAA,EAAAA,+BAAAA,EAAgC,CAC3C,OAAQ,CACN,OAAQ,CACN,QAAS,KACX,CACF,CACF,EACF,EAUA,SAASC,EAAgBlF,CAA2B,EAClD,GAAM,CAAE,UAAWmF,CAAa,CAAEtC,SAAAA,CAAQ,CAAE,GAAGuC,EAAc,CAAGpF,EAC1DH,EAAUF,EAAmBJ,GAE7B,CAAC8F,EAASC,EAAW,CAAG5F,EAAAA,QAAc,CAAC,IAC7CA,EAAAA,eAAqB,CAAC,IAAM4F,EAAW,IAAO,EAAE,EAEhD,IAAMC,EACJJ,GAAkBE,CAAAA,EAAUG,WAAW,QAAQ,EAAE,KAAO,IAAG,SAE7D,EAEOC,EAAAA,YAAqB,CAC1B,UAACC,EAAAA,WAAWA,CAAAA,CACV,cAAeV,EACf,UAAWnF,EAAQ,SAAS,CAC5B,UAAW8E,GAAAA,EAAAA,EAAAA,EAAG,CAAC9E,EAAQ,UAAU,EAAI,mBACpC,GAAGuF,CAAY,C,SAEhB,UAACzB,EAAuB,QAAQ,EAAC,MAAO,G,SACrC9D,EAAQ,QAAQ,CACb,mBAAOgD,EACLA,EAAS,CAAE,MAAOhD,EAAQ,QAAQ,GAClCgD,EACF,I,KAGR0C,GAjBqB,IAmBzB,CAEA,IAAMI,EAAO5F,EACP6F,EAAUpD,EACVqD,EAAO1C,EACP2C,EAAalB,EACbmB,EAAUb,S"}
|
|
1
|
+
{"version":3,"file":"components\\sortable.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/sortable.tsx"],"sourcesContent":["\r\n\r\nimport {\r\n type Announcements,\r\n DndContext,\r\n type DndContextProps,\r\n type DragEndEvent,\r\n DragOverlay,\r\n type DraggableSyntheticListeners,\r\n type DropAnimation,\r\n KeyboardSensor,\r\n MouseSensor,\r\n type ScreenReaderInstructions,\r\n TouchSensor,\r\n type UniqueIdentifier,\r\n closestCenter,\r\n closestCorners,\r\n defaultDropAnimationSideEffects,\r\n useSensor,\r\n useSensors,\r\n} from '@dnd-kit/core'\r\nimport {\r\n restrictToHorizontalAxis,\r\n restrictToParentElement,\r\n restrictToVerticalAxis,\r\n} from '@dnd-kit/modifiers'\r\nimport {\r\n SortableContext,\r\n type SortableContextProps,\r\n arrayMove,\r\n horizontalListSortingStrategy,\r\n sortableKeyboardCoordinates,\r\n useSortable,\r\n verticalListSortingStrategy,\r\n} from '@dnd-kit/sortable'\r\nimport { CSS } from '@dnd-kit/utilities'\r\nimport { Slot } from '@radix-ui/react-slot'\r\nimport * as React from 'react'\r\n\r\nimport { composeEventHandlers, useComposedRefs } from '@/lib/composition'\r\nimport { cn } from '@/lib/utils'\r\nimport * as ReactDOM from 'react-dom'\r\n\r\nconst orientationConfig = {\r\n vertical: {\r\n modifiers: [restrictToVerticalAxis, restrictToParentElement],\r\n strategy: verticalListSortingStrategy,\r\n collisionDetection: closestCenter,\r\n },\r\n horizontal: {\r\n modifiers: [restrictToHorizontalAxis, restrictToParentElement],\r\n strategy: horizontalListSortingStrategy,\r\n collisionDetection: closestCenter,\r\n },\r\n mixed: {\r\n modifiers: [restrictToParentElement],\r\n strategy: undefined,\r\n collisionDetection: closestCorners,\r\n },\r\n}\r\n\r\nconst ROOT_NAME = 'Sortable'\r\nconst CONTENT_NAME = 'SortableContent'\r\nconst ITEM_NAME = 'SortableItem'\r\nconst ITEM_HANDLE_NAME = 'SortableItemHandle'\r\nconst OVERLAY_NAME = 'SortableOverlay'\r\n\r\nconst SORTABLE_ERRORS = {\r\n [ROOT_NAME]: `\\`${ROOT_NAME}\\` components must be within \\`${ROOT_NAME}\\``,\r\n [CONTENT_NAME]: `\\`${CONTENT_NAME}\\` must be within \\`${ROOT_NAME}\\``,\r\n [ITEM_NAME]: `\\`${ITEM_NAME}\\` must be within \\`${CONTENT_NAME}\\``,\r\n [ITEM_HANDLE_NAME]: `\\`${ITEM_HANDLE_NAME}\\` must be within \\`${ITEM_NAME}\\``,\r\n [OVERLAY_NAME]: `\\`${OVERLAY_NAME}\\` must be within \\`${ROOT_NAME}\\``,\r\n} as const\r\n\r\ninterface SortableRootContextValue<T> {\r\n id: string\r\n items: UniqueIdentifier[]\r\n modifiers: DndContextProps['modifiers']\r\n strategy: SortableContextProps['strategy']\r\n activeId: UniqueIdentifier | null\r\n setActiveId: (id: UniqueIdentifier | null) => void\r\n getItemValue: (item: T) => UniqueIdentifier\r\n flatCursor: boolean\r\n}\r\n\r\nconst SortableRootContext =\r\n React.createContext<SortableRootContextValue<unknown> | null>(null)\r\nSortableRootContext.displayName = ROOT_NAME\r\n\r\nfunction useSortableContext(name: keyof typeof SORTABLE_ERRORS) {\r\n const context = React.useContext(SortableRootContext)\r\n if (!context) {\r\n throw new Error(SORTABLE_ERRORS[name])\r\n }\r\n return context\r\n}\r\n\r\ninterface GetItemValue<T> {\r\n /**\r\n * Callback that returns a unique identifier for each sortable item. Required for array of objects.\r\n * @example getItemValue={(item) => item.id}\r\n */\r\n getItemValue: (item: T) => UniqueIdentifier\r\n}\r\n\r\ntype SortableProps<T> = DndContextProps & {\r\n value: T[]\r\n onValueChange?: (items: T[]) => void\r\n onMove?: (\r\n event: DragEndEvent & { activeIndex: number; overIndex: number }\r\n ) => void\r\n strategy?: SortableContextProps['strategy']\r\n orientation?: 'vertical' | 'horizontal' | 'mixed'\r\n flatCursor?: boolean\r\n} & (T extends object ? GetItemValue<T> : Partial<GetItemValue<T>>)\r\n\r\nfunction Sortable<T>(props: SortableProps<T>) {\r\n const {\r\n value,\r\n onValueChange,\r\n collisionDetection,\r\n modifiers,\r\n strategy,\r\n onMove,\r\n orientation = 'vertical',\r\n flatCursor = false,\r\n getItemValue: getItemValueProp,\r\n accessibility,\r\n ...sortableProps\r\n } = props\r\n const id = React.useId()\r\n const [activeId, setActiveId] = React.useState<UniqueIdentifier | null>(null)\r\n\r\n const sensors = useSensors(\r\n useSensor(MouseSensor),\r\n useSensor(TouchSensor),\r\n useSensor(KeyboardSensor, {\r\n coordinateGetter: sortableKeyboardCoordinates,\r\n })\r\n )\r\n const config = React.useMemo(\r\n () => orientationConfig[orientation],\r\n [orientation]\r\n )\r\n\r\n const getItemValue = React.useCallback(\r\n (item: T): UniqueIdentifier => {\r\n if (typeof item === 'object' && !getItemValueProp) {\r\n throw new Error('getItemValue is required when using array of objects.')\r\n }\r\n return getItemValueProp\r\n ? getItemValueProp(item)\r\n : (item as UniqueIdentifier)\r\n },\r\n [getItemValueProp]\r\n )\r\n\r\n const items = React.useMemo(() => {\r\n return value.map(item => getItemValue(item))\r\n }, [value, getItemValue])\r\n\r\n const onDragEnd = React.useCallback(\r\n (event: DragEndEvent) => {\r\n const { active, over } = event\r\n if (over && active.id !== over?.id) {\r\n const activeIndex = value.findIndex(\r\n item => getItemValue(item) === active.id\r\n )\r\n const overIndex = value.findIndex(\r\n item => getItemValue(item) === over.id\r\n )\r\n\r\n if (onMove) {\r\n onMove({ ...event, activeIndex, overIndex })\r\n } else {\r\n onValueChange?.(arrayMove(value, activeIndex, overIndex))\r\n }\r\n }\r\n setActiveId(null)\r\n },\r\n [value, onValueChange, onMove, getItemValue]\r\n )\r\n\r\n const announcements: Announcements = React.useMemo(\r\n () => ({\r\n onDragStart({ active }) {\r\n const activeValue = active.id.toString()\r\n return `Grabbed sortable item \"${activeValue}\". Current position is ${active.data.current?.sortable.index + 1} of ${value.length}. Use arrow keys to move, space to drop.`\r\n },\r\n onDragOver({ active, over }) {\r\n if (over) {\r\n const overIndex = over.data.current?.sortable.index ?? 0\r\n const activeIndex = active.data.current?.sortable.index ?? 0\r\n const moveDirection = overIndex > activeIndex ? 'down' : 'up'\r\n const activeValue = active.id.toString()\r\n return `Sortable item \"${activeValue}\" moved ${moveDirection} to position ${overIndex + 1} of ${value.length}.`\r\n }\r\n return 'Sortable item is no longer over a droppable area. Press escape to cancel.'\r\n },\r\n onDragEnd({ active, over }) {\r\n const activeValue = active.id.toString()\r\n if (over) {\r\n const overIndex = over.data.current?.sortable.index ?? 0\r\n return `Sortable item \"${activeValue}\" dropped at position ${overIndex + 1} of ${value.length}.`\r\n }\r\n return `Sortable item \"${activeValue}\" dropped. No changes were made.`\r\n },\r\n onDragCancel({ active }) {\r\n const activeIndex = active.data.current?.sortable.index ?? 0\r\n const activeValue = active.id.toString()\r\n return `Sorting cancelled. Sortable item \"${activeValue}\" returned to position ${activeIndex + 1} of ${value.length}.`\r\n },\r\n onDragMove({ active, over }) {\r\n if (over) {\r\n const overIndex = over.data.current?.sortable.index ?? 0\r\n const activeIndex = active.data.current?.sortable.index ?? 0\r\n const moveDirection = overIndex > activeIndex ? 'down' : 'up'\r\n const activeValue = active.id.toString()\r\n return `Sortable item \"${activeValue}\" is moving ${moveDirection} to position ${overIndex + 1} of ${value.length}.`\r\n }\r\n return 'Sortable item is no longer over a droppable area. Press escape to cancel.'\r\n },\r\n }),\r\n [value]\r\n )\r\n\r\n const screenReaderInstructions: ScreenReaderInstructions = React.useMemo(\r\n () => ({\r\n draggable: `\r\n To pick up a sortable item, press space or enter.\r\n While dragging, use the ${orientation === 'vertical' ? 'up and down' : orientation === 'horizontal' ? 'left and right' : 'arrow'} keys to move the item.\r\n Press space or enter again to drop the item in its new position, or press escape to cancel.\r\n `,\r\n }),\r\n [orientation]\r\n )\r\n\r\n const contextValue = React.useMemo(\r\n () => ({\r\n id,\r\n items,\r\n modifiers: modifiers ?? config.modifiers,\r\n strategy: strategy ?? config.strategy,\r\n activeId,\r\n setActiveId,\r\n getItemValue,\r\n flatCursor,\r\n }),\r\n [\r\n id,\r\n items,\r\n modifiers,\r\n strategy,\r\n config.modifiers,\r\n config.strategy,\r\n activeId,\r\n getItemValue,\r\n flatCursor,\r\n ]\r\n )\r\n\r\n return (\r\n <SortableRootContext.Provider\r\n value={contextValue as SortableRootContextValue<unknown>}\r\n >\r\n <DndContext\r\n collisionDetection={collisionDetection ?? config.collisionDetection}\r\n modifiers={modifiers ?? config.modifiers}\r\n sensors={sensors}\r\n {...sortableProps}\r\n id={id}\r\n onDragStart={composeEventHandlers(\r\n sortableProps.onDragStart,\r\n ({ active }) => setActiveId(active.id)\r\n )}\r\n onDragEnd={composeEventHandlers(sortableProps.onDragEnd, onDragEnd)}\r\n onDragCancel={composeEventHandlers(sortableProps.onDragCancel, () =>\r\n setActiveId(null)\r\n )}\r\n accessibility={{\r\n announcements,\r\n screenReaderInstructions,\r\n ...accessibility,\r\n }}\r\n />\r\n </SortableRootContext.Provider>\r\n )\r\n}\r\n\r\nconst SortableContentContext = React.createContext<boolean>(false)\r\nSortableContentContext.displayName = CONTENT_NAME\r\n\r\ninterface SortableContentProps extends React.ComponentPropsWithoutRef<'div'> {\r\n strategy?: SortableContextProps['strategy']\r\n children: React.ReactNode\r\n asChild?: boolean\r\n withoutSlot?: boolean\r\n}\r\n\r\nconst SortableContent = React.forwardRef<HTMLDivElement, SortableContentProps>(\r\n (props, forwardedRef) => {\r\n const {\r\n strategy: strategyProp,\r\n asChild,\r\n withoutSlot,\r\n children,\r\n ...contentProps\r\n } = props\r\n const context = useSortableContext(CONTENT_NAME)\r\n\r\n const ContentPrimitive = asChild ? Slot : 'div'\r\n\r\n return (\r\n <SortableContentContext.Provider value={true}>\r\n <SortableContext\r\n items={context.items}\r\n strategy={strategyProp ?? context.strategy}\r\n >\r\n {withoutSlot ? (\r\n children\r\n ) : (\r\n <ContentPrimitive {...contentProps} ref={forwardedRef}>\r\n {children}\r\n </ContentPrimitive>\r\n )}\r\n </SortableContext>\r\n </SortableContentContext.Provider>\r\n )\r\n }\r\n)\r\nSortableContent.displayName = CONTENT_NAME\r\n\r\ninterface SortableItemContextValue {\r\n id: string\r\n attributes: React.HTMLAttributes<HTMLElement>\r\n listeners: DraggableSyntheticListeners | undefined\r\n setActivatorNodeRef: (node: HTMLElement | null) => void\r\n isDragging?: boolean\r\n disabled?: boolean\r\n}\r\n\r\nconst SortableItemContext =\r\n React.createContext<SortableItemContextValue | null>(null)\r\nSortableItemContext.displayName = ITEM_NAME\r\n\r\ninterface SortableItemProps extends React.ComponentPropsWithoutRef<'div'> {\r\n value: UniqueIdentifier\r\n asHandle?: boolean\r\n asChild?: boolean\r\n disabled?: boolean\r\n}\r\n\r\nconst SortableItem = React.forwardRef<HTMLDivElement, SortableItemProps>(\r\n (props, forwardedRef) => {\r\n const {\r\n value,\r\n style,\r\n asHandle,\r\n asChild,\r\n disabled,\r\n className,\r\n ...itemProps\r\n } = props\r\n const inSortableContent = React.useContext(SortableContentContext)\r\n const inSortableOverlay = React.useContext(SortableOverlayContext)\r\n\r\n if (!inSortableContent && !inSortableOverlay) {\r\n throw new Error(SORTABLE_ERRORS[ITEM_NAME])\r\n }\r\n\r\n if (value === '') {\r\n throw new Error(`\\`${ITEM_NAME}\\` value cannot be an empty string`)\r\n }\r\n\r\n const context = useSortableContext(ITEM_NAME)\r\n const id = React.useId()\r\n const {\r\n attributes,\r\n listeners,\r\n setNodeRef,\r\n setActivatorNodeRef,\r\n transform,\r\n transition,\r\n isDragging,\r\n } = useSortable({ id: value, disabled })\r\n\r\n const composedRef = useComposedRefs(forwardedRef, node => {\r\n if (disabled) return\r\n setNodeRef(node)\r\n if (asHandle) setActivatorNodeRef(node)\r\n })\r\n\r\n const composedStyle = React.useMemo<React.CSSProperties>(() => {\r\n return {\r\n transform: CSS.Translate.toString(transform),\r\n transition,\r\n ...style,\r\n }\r\n }, [transform, transition, style])\r\n\r\n const itemContext = React.useMemo<SortableItemContextValue>(\r\n () => ({\r\n id,\r\n attributes,\r\n listeners,\r\n setActivatorNodeRef,\r\n isDragging,\r\n disabled,\r\n }),\r\n [id, attributes, listeners, setActivatorNodeRef, isDragging, disabled]\r\n )\r\n\r\n const ItemPrimitive = asChild ? Slot : 'div'\r\n\r\n return (\r\n <SortableItemContext.Provider value={itemContext}>\r\n <ItemPrimitive\r\n id={id}\r\n data-dragging={isDragging ? '' : undefined}\r\n {...itemProps}\r\n {...(asHandle ? attributes : {})}\r\n {...(asHandle ? listeners : {})}\r\n tabIndex={disabled ? undefined : 0}\r\n ref={composedRef}\r\n style={composedStyle}\r\n className={cn(\r\n 'focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1',\r\n {\r\n 'touch-none select-none': asHandle,\r\n 'cursor-default': context.flatCursor,\r\n 'data-dragging:cursor-grabbing': !context.flatCursor,\r\n 'cursor-grab': !isDragging && asHandle && !context.flatCursor,\r\n 'opacity-50': isDragging,\r\n 'pointer-events-none opacity-50': disabled,\r\n },\r\n className\r\n )}\r\n />\r\n </SortableItemContext.Provider>\r\n )\r\n }\r\n)\r\nSortableItem.displayName = ITEM_NAME\r\n\r\ninterface SortableItemHandleProps\r\n extends React.ComponentPropsWithoutRef<'button'> {\r\n asChild?: boolean\r\n}\r\n\r\nconst SortableItemHandle = React.forwardRef<\r\n HTMLButtonElement,\r\n SortableItemHandleProps\r\n>((props, forwardedRef) => {\r\n const { asChild, disabled, className, ...itemHandleProps } = props\r\n const itemContext = React.useContext(SortableItemContext)\r\n if (!itemContext) {\r\n throw new Error(SORTABLE_ERRORS[ITEM_HANDLE_NAME])\r\n }\r\n const context = useSortableContext(ITEM_HANDLE_NAME)\r\n\r\n const isDisabled = disabled ?? itemContext.disabled\r\n\r\n const composedRef = useComposedRefs(forwardedRef, node => {\r\n if (!isDisabled) return\r\n itemContext.setActivatorNodeRef(node)\r\n })\r\n\r\n const HandlePrimitive = asChild ? Slot : 'button'\r\n\r\n return (\r\n <HandlePrimitive\r\n type=\"button\"\r\n aria-controls={itemContext.id}\r\n data-dragging={itemContext.isDragging ? '' : undefined}\r\n {...itemHandleProps}\r\n {...itemContext.attributes}\r\n {...itemContext.listeners}\r\n ref={composedRef}\r\n className={cn(\r\n 'select-none disabled:pointer-events-none disabled:opacity-50',\r\n context.flatCursor\r\n ? 'cursor-default'\r\n : 'cursor-grab data-dragging:cursor-grabbing',\r\n className\r\n )}\r\n disabled={isDisabled}\r\n />\r\n )\r\n})\r\nSortableItemHandle.displayName = ITEM_HANDLE_NAME\r\n\r\nconst SortableOverlayContext = React.createContext(false)\r\nSortableOverlayContext.displayName = OVERLAY_NAME\r\n\r\nconst dropAnimation: DropAnimation = {\r\n sideEffects: defaultDropAnimationSideEffects({\r\n styles: {\r\n active: {\r\n opacity: '0.4',\r\n },\r\n },\r\n }),\r\n}\r\n\r\ninterface SortableOverlayProps\r\n extends Omit<React.ComponentPropsWithoutRef<typeof DragOverlay>, 'children'> {\r\n container?: Element | DocumentFragment | null\r\n children?:\r\n | ((params: { value: UniqueIdentifier }) => React.ReactNode)\r\n | React.ReactNode\r\n}\r\n\r\nfunction SortableOverlay(props: SortableOverlayProps) {\r\n const { container: containerProp, children, ...overlayProps } = props\r\n const context = useSortableContext(OVERLAY_NAME)\r\n\r\n const [mounted, setMounted] = React.useState(false)\r\n React.useLayoutEffect(() => setMounted(true), [])\r\n\r\n const container =\r\n containerProp ?? (mounted ? globalThis.document?.body : null)\r\n\r\n if (!container) return null\r\n\r\n return ReactDOM.createPortal(\r\n <DragOverlay\r\n dropAnimation={dropAnimation}\r\n modifiers={context.modifiers}\r\n className={cn(!context.flatCursor && 'cursor-grabbing')}\r\n {...overlayProps}\r\n >\r\n <SortableOverlayContext.Provider value={true}>\r\n {context.activeId\r\n ? typeof children === 'function'\r\n ? children({ value: context.activeId })\r\n : children\r\n : null}\r\n </SortableOverlayContext.Provider>\r\n </DragOverlay>,\r\n container\r\n )\r\n}\r\n\r\nconst Root = Sortable\r\nconst Content = SortableContent\r\nconst Item = SortableItem\r\nconst ItemHandle = SortableItemHandle\r\nconst Overlay = SortableOverlay\r\n\r\nexport {\r\n Root,\r\n Content,\r\n Item,\r\n ItemHandle,\r\n Overlay,\r\n //\r\n Sortable,\r\n SortableContent,\r\n SortableItem,\r\n SortableItemHandle,\r\n SortableOverlay,\r\n}\r\n"],"names":["orientationConfig","restrictToVerticalAxis","restrictToParentElement","verticalListSortingStrategy","closestCenter","restrictToHorizontalAxis","horizontalListSortingStrategy","undefined","closestCorners","ROOT_NAME","CONTENT_NAME","ITEM_NAME","ITEM_HANDLE_NAME","OVERLAY_NAME","SORTABLE_ERRORS","SortableRootContext","React","useSortableContext","name","context","Error","Sortable","props","value","onValueChange","collisionDetection","modifiers","strategy","onMove","orientation","flatCursor","getItemValueProp","accessibility","sortableProps","id","activeId","setActiveId","sensors","useSensors","useSensor","MouseSensor","TouchSensor","KeyboardSensor","sortableKeyboardCoordinates","config","getItemValue","item","items","onDragEnd","event","active","over","activeIndex","overIndex","arrayMove","announcements","activeValue","screenReaderInstructions","contextValue","DndContext","composeEventHandlers","SortableContentContext","SortableContent","forwardedRef","strategyProp","asChild","withoutSlot","children","contentProps","SortableContext","Slot","ContentPrimitive","SortableItemContext","SortableItem","style","asHandle","disabled","className","itemProps","inSortableContent","inSortableOverlay","SortableOverlayContext","attributes","listeners","setNodeRef","setActivatorNodeRef","transform","transition","isDragging","useSortable","composedRef","useComposedRefs","node","composedStyle","CSS","itemContext","ItemPrimitive","cn","SortableItemHandle","itemHandleProps","isDisabled","HandlePrimitive","dropAnimation","defaultDropAnimationSideEffects","SortableOverlay","containerProp","overlayProps","mounted","setMounted","container","globalThis","ReactDOM","DragOverlay","Root","Content","Item","ItemHandle","Overlay"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import{jsx as e,jsxs as r}from"react/jsx-runtime";import{VisuallyHidden as n}from"@radix-ui/react-visually-hidden";import{cn as i}from"../lib/utils.js";function t({children:t,className:a,loading:o=!0,...s}){if(!o)return t;let l=e("span",{className:i("relative flex size-4 items-center justify-center opacity-60",a),...s,children:Array.from({length:8},(r,n)=>e("span",{className:i("before:fade-out-25 before:animation-repeat-infinite before:animation-delay-(--spinner-delay) before:animation-duration-(--spinner-duration) absolute h-full rotate-(--spinner-rotate) before:block before:h-1/3 before:w-full before:animate-out before:rounded-full before:bg-current"),style:{"--spinner-delay":`-${((8-n)*100).toString()}ms`,"--spinner-duration":"800ms","--spinner-rotate":`${(45*n).toString()}deg`,width:"12.5%"}},n))});return void 0===t?l:r("span",{className:"relative",children:[e("span",{"aria-hidden":!0,className:"invisible contents",children:t}),e(n,{children:t}),e("span",{className:"absolute inset-0 flex items-center justify-center",children:l})]})}export{t as Spinner};
|
|
2
2
|
//# sourceMappingURL=spinner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\spinner.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/spinner.tsx"],"sourcesContent":["import { VisuallyHidden } from '@radix-ui/react-visually-hidden'\r\nimport type { CSSProperties, ComponentProps, ReactNode } from 'react'\r\n\r\nimport { cn } from '../lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: Spinner\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst SPINNER_COUNT = 8\r\n\r\nfunction Spinner({\r\n children,\r\n className,\r\n loading = true,\r\n ...props\r\n}: ComponentProps<'span'> & {\r\n loading?: boolean\r\n}): ReactNode {\r\n if (!loading) {\r\n return children\r\n }\r\n\r\n const spinner = (\r\n <span\r\n className={cn(\r\n 'relative flex size-4 items-center justify-center opacity-60',\r\n className\r\n )}\r\n {...props}\r\n >\r\n {Array.from({ length: SPINNER_COUNT }, (_, i) => (\r\n <span\r\n key={i}\r\n className={cn(\r\n 'before:fade-out-25 before:animation-repeat-infinite before:animation-delay-(--spinner-delay) before:animation-duration-(--spinner-duration) absolute h-full rotate-(--spinner-rotate) before:block before:h-1/3 before:w-full before:animate-out before:rounded-full before:bg-current'\r\n )}\r\n style={\r\n {\r\n '--spinner-delay': `-${((SPINNER_COUNT - i) * 100).toString()}ms`,\r\n '--spinner-duration': `${(SPINNER_COUNT * 100).toString()}ms`,\r\n '--spinner-rotate': `${((360 / SPINNER_COUNT) * i).toString()}deg`,\r\n width: `${(100 / SPINNER_COUNT).toString()}%`,\r\n } as CSSProperties\r\n }\r\n />\r\n ))}\r\n </span>\r\n )\r\n\r\n if (children === undefined) {\r\n return spinner\r\n }\r\n\r\n return (\r\n <span className=\"relative\">\r\n <span aria-hidden className=\"invisible contents\">\r\n {children}\r\n </span>\r\n <VisuallyHidden>{children}</VisuallyHidden>\r\n <span className=\"absolute inset-0 flex items-center justify-center\">\r\n {spinner}\r\n </span>\r\n </span>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport { Spinner }\r\n"],"names":["Spinner","children","className","loading","props","spinner","cn","Array","_","i","SPINNER_COUNT","undefined","VisuallyHidden"],"mappings":"
|
|
1
|
+
{"version":3,"file":"components\\spinner.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/spinner.tsx"],"sourcesContent":["import { VisuallyHidden } from '@radix-ui/react-visually-hidden'\r\nimport type { CSSProperties, ComponentProps, ReactNode } from 'react'\r\n\r\nimport { cn } from '../lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: Spinner\r\n * -------------------------------------------------------------------------- */\r\n\r\nconst SPINNER_COUNT = 8\r\n\r\nfunction Spinner({\r\n children,\r\n className,\r\n loading = true,\r\n ...props\r\n}: ComponentProps<'span'> & {\r\n loading?: boolean\r\n}): ReactNode {\r\n if (!loading) {\r\n return children\r\n }\r\n\r\n const spinner = (\r\n <span\r\n className={cn(\r\n 'relative flex size-4 items-center justify-center opacity-60',\r\n className\r\n )}\r\n {...props}\r\n >\r\n {Array.from({ length: SPINNER_COUNT }, (_, i) => (\r\n <span\r\n key={i}\r\n className={cn(\r\n 'before:fade-out-25 before:animation-repeat-infinite before:animation-delay-(--spinner-delay) before:animation-duration-(--spinner-duration) absolute h-full rotate-(--spinner-rotate) before:block before:h-1/3 before:w-full before:animate-out before:rounded-full before:bg-current'\r\n )}\r\n style={\r\n {\r\n '--spinner-delay': `-${((SPINNER_COUNT - i) * 100).toString()}ms`,\r\n '--spinner-duration': `${(SPINNER_COUNT * 100).toString()}ms`,\r\n '--spinner-rotate': `${((360 / SPINNER_COUNT) * i).toString()}deg`,\r\n width: `${(100 / SPINNER_COUNT).toString()}%`,\r\n } as CSSProperties\r\n }\r\n />\r\n ))}\r\n </span>\r\n )\r\n\r\n if (children === undefined) {\r\n return spinner\r\n }\r\n\r\n return (\r\n <span className=\"relative\">\r\n <span aria-hidden className=\"invisible contents\">\r\n {children}\r\n </span>\r\n <VisuallyHidden>{children}</VisuallyHidden>\r\n <span className=\"absolute inset-0 flex items-center justify-center\">\r\n {spinner}\r\n </span>\r\n </span>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport { Spinner }\r\n"],"names":["Spinner","children","className","loading","props","spinner","cn","Array","_","i","SPINNER_COUNT","undefined","VisuallyHidden"],"mappings":"wJAWA,SAASA,EAAQ,CACfC,SAAAA,CAAQ,CACRC,UAAAA,CAAS,CACTC,QAAAA,EAAU,EAAI,CACd,GAAGC,EAGJ,EACC,GAAI,CAACD,EACH,OAAOF,EAGT,IAAMI,EACJ,EAAC,QACC,UAAWC,EACT,8DACAJ,GAED,GAAGE,CAAK,C,SAERG,MAAM,IAAI,CAAC,CAAE,OAtBE,CAsBoB,EAAG,CAACC,EAAGC,IACzC,EAAC,QAEC,UAAWH,EACT,0RAEF,MACE,CACE,kBAAmB,CAAC,CAAC,EAAG,AAACI,CAAAA,CA9BjB,EA8BiCD,CAAAA,EAAK,GAAE,EAAG,QAAQ,GAAG,EAAE,CAAC,CACjE,qBAAsB,QACtB,mBAAoB,CAAC,EAAG,AAAC,IAAuBA,CAAAA,EAAG,QAAQ,GAAG,GAAG,CAAC,CAClE,MAAO,OACT,C,EAVGA,G,UAiBb,AAAIR,AAAaU,SAAbV,EACKI,EAIP,EAAC,QAAK,UAAU,W,UACd,EAAC,QAAK,cAAW,GAAC,UAAU,qB,SACzBJ,C,GAEH,EAACW,EAAcA,C,SAAEX,C,GACjB,EAAC,QAAK,UAAU,oD,SACbI,C,KAIT,Q"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
'use client'
|
|
2
|
-
import
|
|
2
|
+
import{jsx as t}from"react/jsx-runtime";import{Root as a,Thumb as r}from"@radix-ui/react-switch";import{cn as e}from"../lib/utils.js";function o({className:o,...i}){return t(a,{className:e("relative h-8 w-14 rounded-full bg-gray-200 outline-none enabled:cursor-pointer disabled:cursor-not-allowed disabled:opacity-25 data-[state=checked]:bg-primary",o),"data-slot":"switch",...i,children:t(r,{className:"block size-6 translate-x-1 rounded-full border bg-white transition-transform duration-100 will-change-transform data-[state=checked]:translate-x-7 data-[state=checked]:border-royal-100 data-[state=unchecked]:border-gray-300","data-slot":"switch-thumb"})})}export{o as Switch};
|
|
3
3
|
//# sourceMappingURL=switch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components\\switch.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/switch.tsx"],"sourcesContent":["\r\n\r\nimport type { ComponentProps, JSX } from 'react'\r\n\r\nimport * as SwitchPrimitives from '@radix-ui/react-switch'\r\n\r\nimport { cn } from '@/lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: Switch\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction Switch({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof SwitchPrimitives.Root>): JSX.Element {\r\n return (\r\n <SwitchPrimitives.Root\r\n className={cn(\r\n 'relative h-8 w-14 rounded-full bg-gray-200 outline-none enabled:cursor-pointer disabled:cursor-not-allowed disabled:opacity-25 data-[state=checked]:bg-primary',\r\n className\r\n )}\r\n data-slot=\"switch\"\r\n {...props}\r\n >\r\n <SwitchPrimitives.Thumb\r\n className=\"block size-6 translate-x-1 rounded-full border bg-white transition-transform duration-100 will-change-transform data-[state=checked]:translate-x-7 data-[state=checked]:border-royal-100 data-[state=unchecked]:border-gray-300\"\r\n data-slot=\"switch-thumb\"\r\n />\r\n </SwitchPrimitives.Root>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport { Switch }\r\n"],"names":["Switch","className","props","SwitchPrimitives","cn"],"mappings":"
|
|
1
|
+
{"version":3,"file":"components\\switch.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/switch.tsx"],"sourcesContent":["\r\n\r\nimport type { ComponentProps, JSX } from 'react'\r\n\r\nimport * as SwitchPrimitives from '@radix-ui/react-switch'\r\n\r\nimport { cn } from '@/lib/utils'\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Component: Switch\r\n * -------------------------------------------------------------------------- */\r\n\r\nfunction Switch({\r\n className,\r\n ...props\r\n}: ComponentProps<typeof SwitchPrimitives.Root>): JSX.Element {\r\n return (\r\n <SwitchPrimitives.Root\r\n className={cn(\r\n 'relative h-8 w-14 rounded-full bg-gray-200 outline-none enabled:cursor-pointer disabled:cursor-not-allowed disabled:opacity-25 data-[state=checked]:bg-primary',\r\n className\r\n )}\r\n data-slot=\"switch\"\r\n {...props}\r\n >\r\n <SwitchPrimitives.Thumb\r\n className=\"block size-6 translate-x-1 rounded-full border bg-white transition-transform duration-100 will-change-transform data-[state=checked]:translate-x-7 data-[state=checked]:border-royal-100 data-[state=unchecked]:border-gray-300\"\r\n data-slot=\"switch-thumb\"\r\n />\r\n </SwitchPrimitives.Root>\r\n )\r\n}\r\n\r\n/* -----------------------------------------------------------------------------\r\n * Exports\r\n * -------------------------------------------------------------------------- */\r\n\r\nexport { Switch }\r\n"],"names":["Switch","className","props","SwitchPrimitives","cn"],"mappings":";sIAYA,SAASA,EAAO,CACdC,UAAAA,CAAS,CACT,GAAGC,EAC0C,EAC7C,OACE,EAACC,EAAqB,CACpB,UAAWC,EACT,iKACAH,GAEF,YAAU,SACT,GAAGC,CAAK,C,SAET,EAACC,EAAsB,CACrB,UAAU,kOACV,YAAU,c,IAIlB,Q"}
|