@optimum-intelligence/opti-ui 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/README.md +19 -0
  2. package/dist/components/accordion/Accordion.d.ts +12 -0
  3. package/dist/components/accordion/Accordion.js +12 -0
  4. package/dist/components/accordion/Accordion.js.map +1 -1
  5. package/dist/components/alert/Alert.d.ts +4 -0
  6. package/dist/components/alert/Alert.js.map +1 -1
  7. package/dist/components/app-shell/AppShell.d.ts +22 -0
  8. package/dist/components/app-shell/AppShell.js +6 -0
  9. package/dist/components/app-shell/AppShell.js.map +1 -1
  10. package/dist/components/avatar/Avatar.d.ts +8 -0
  11. package/dist/components/avatar/Avatar.js +2 -0
  12. package/dist/components/avatar/Avatar.js.map +1 -1
  13. package/dist/components/badge/Badge.d.ts +9 -0
  14. package/dist/components/badge/Badge.js +6 -0
  15. package/dist/components/badge/Badge.js.map +1 -1
  16. package/dist/components/breadcrumbs/Breadcrumbs.d.ts +1 -0
  17. package/dist/components/breadcrumbs/Breadcrumbs.js.map +1 -1
  18. package/dist/components/button/Button.d.ts +8 -0
  19. package/dist/components/button/Button.js +6 -0
  20. package/dist/components/button/Button.js.map +1 -1
  21. package/dist/components/calendar/Calendar.d.ts +3 -0
  22. package/dist/components/calendar/Calendar.js.map +1 -1
  23. package/dist/components/card/Card.d.ts +13 -0
  24. package/dist/components/card/Card.js +13 -0
  25. package/dist/components/card/Card.js.map +1 -1
  26. package/dist/components/choice/Choice.d.ts +13 -0
  27. package/dist/components/choice/Choice.js +10 -0
  28. package/dist/components/choice/Choice.js.map +1 -1
  29. package/dist/components/combobox/Combobox.d.ts +12 -0
  30. package/dist/components/combobox/Combobox.js.map +1 -1
  31. package/dist/components/command-palette/CommandPalette.d.ts +10 -0
  32. package/dist/components/command-palette/CommandPalette.js.map +1 -1
  33. package/dist/components/data-table/DataTable.d.ts +4 -0
  34. package/dist/components/data-table/DataTable.js.map +1 -1
  35. package/dist/components/data-table/DataTableContent.d.ts +1 -0
  36. package/dist/components/data-table/DataTableContent.js.map +1 -1
  37. package/dist/components/data-table/DataTableFilters.d.ts +3 -0
  38. package/dist/components/data-table/DataTableFilters.js.map +1 -1
  39. package/dist/components/data-table/types.d.ts +16 -0
  40. package/dist/components/date-picker/DateRangePicker.d.ts +1 -0
  41. package/dist/components/date-picker/DateRangePicker.js.map +1 -1
  42. package/dist/components/date-picker/PickerField.d.ts +13 -0
  43. package/dist/components/date-picker/PickerField.js.map +1 -1
  44. package/dist/components/dialog/Dialog.d.ts +5 -0
  45. package/dist/components/dialog/Dialog.js.map +1 -1
  46. package/dist/components/drawer/Drawer.d.ts +10 -0
  47. package/dist/components/drawer/Drawer.js.map +1 -1
  48. package/dist/components/empty-state/EmptyState.d.ts +5 -0
  49. package/dist/components/empty-state/EmptyState.js.map +1 -1
  50. package/dist/components/file-upload/FileUpload.d.ts +21 -0
  51. package/dist/components/file-upload/FileUpload.js.map +1 -1
  52. package/dist/components/input/Input.d.ts +7 -0
  53. package/dist/components/input/Input.js +3 -0
  54. package/dist/components/input/Input.js.map +1 -1
  55. package/dist/components/link/Link.d.ts +1 -0
  56. package/dist/components/link/Link.js.map +1 -1
  57. package/dist/components/menu/Menu.d.ts +6 -0
  58. package/dist/components/menu/Menu.js.map +1 -1
  59. package/dist/components/number-field/NumberField.d.ts +7 -0
  60. package/dist/components/number-field/NumberField.js.map +1 -1
  61. package/dist/components/pagination/Pagination.d.ts +4 -0
  62. package/dist/components/pagination/Pagination.js.map +1 -1
  63. package/dist/components/popover/Popover.d.ts +4 -0
  64. package/dist/components/popover/Popover.js.map +1 -1
  65. package/dist/components/preview-card/PreviewCard.d.ts +4 -0
  66. package/dist/components/preview-card/PreviewCard.js.map +1 -1
  67. package/dist/components/progress/Progress.d.ts +8 -0
  68. package/dist/components/progress/Progress.js.map +1 -1
  69. package/dist/components/scroll-area/ScrollArea.d.ts +1 -0
  70. package/dist/components/scroll-area/ScrollArea.js.map +1 -1
  71. package/dist/components/search-input/SearchInput.d.ts +2 -0
  72. package/dist/components/search-input/SearchInput.js.map +1 -1
  73. package/dist/components/select/Select.d.ts +11 -0
  74. package/dist/components/select/Select.js.map +1 -1
  75. package/dist/components/separator/Separator.d.ts +1 -0
  76. package/dist/components/separator/Separator.js +1 -0
  77. package/dist/components/separator/Separator.js.map +1 -1
  78. package/dist/components/skeleton/Skeleton.d.ts +7 -0
  79. package/dist/components/skeleton/Skeleton.js +1 -0
  80. package/dist/components/skeleton/Skeleton.js.map +1 -1
  81. package/dist/components/slider/Slider.d.ts +1 -0
  82. package/dist/components/slider/Slider.js.map +1 -1
  83. package/dist/components/spinner/Spinner.d.ts +2 -0
  84. package/dist/components/spinner/Spinner.js +1 -0
  85. package/dist/components/spinner/Spinner.js.map +1 -1
  86. package/dist/components/stat-card/StatCard.d.ts +4 -0
  87. package/dist/components/stat-card/StatCard.js.map +1 -1
  88. package/dist/components/stepper/Stepper.d.ts +4 -0
  89. package/dist/components/stepper/Stepper.js.map +1 -1
  90. package/dist/components/table/Table.d.ts +23 -0
  91. package/dist/components/table/Table.js +17 -0
  92. package/dist/components/table/Table.js.map +1 -1
  93. package/dist/components/tabs/Tabs.d.ts +1 -0
  94. package/dist/components/tabs/Tabs.js.map +1 -1
  95. package/dist/components/tag/Tag.d.ts +3 -0
  96. package/dist/components/tag/Tag.js.map +1 -1
  97. package/dist/components/toast/Toast.d.ts +2 -0
  98. package/dist/components/toast/Toast.js.map +1 -1
  99. package/dist/components/toggle/Toggle.d.ts +7 -0
  100. package/dist/components/toggle/Toggle.js +1 -0
  101. package/dist/components/toggle/Toggle.js.map +1 -1
  102. package/dist/components/tooltip/Tooltip.d.ts +8 -0
  103. package/dist/components/tooltip/Tooltip.js.map +1 -1
  104. package/dist/components/typography/Typography.d.ts +5 -0
  105. package/dist/components/typography/Typography.js +2 -0
  106. package/dist/components/typography/Typography.js.map +1 -1
  107. package/dist/components.json +5375 -0
  108. package/dist/llms-full.txt +2590 -0
  109. package/dist/llms.txt +175 -0
  110. package/dist/theme/ThemeProvider.d.ts +1 -0
  111. package/dist/theme/ThemeProvider.js.map +1 -1
  112. package/dist/utils/portal.d.ts +4 -0
  113. package/dist/utils/portal.js +4 -0
  114. package/dist/utils/portal.js.map +1 -1
  115. package/package.json +7 -3
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.js","names":["React","cx","IconButton","Select","ChevronLeftIcon","ChevronRightIcon","PaginationLabels","navigation","previous","next","rowsPerPage","page","range","from","to","total","ReactNode","defaultLabels","getPageItems","pageCount","siblingCount","Array","slots","length","_","i","start","Math","max","min","end","items","push","PaginationProps","Omit","HTMLAttributes","HTMLElement","ref","Ref","pageSize","onPageChange","onPageSizeChange","pageSizeOptions","variant","hideRange","labels","Partial","Pagination","t0","$","_c","current","t1","t10","t11","t2","t3","t4","t5","t6","t7","t8","t9","text","t12","t13","t14","t15","className","props","undefined","ceil","sizes","includes","sort","_temp","map","_temp2","String","value","Number","t16","t17","Symbol","for","item","index","t18","size","label","a","b","_c"],"sources":["../../../src/components/pagination/Pagination.tsx"],"sourcesContent":["import * as React from 'react';\nimport { cx } from '../../utils/cx';\nimport { IconButton } from '../button/Button';\nimport { Select } from '../select/Select';\nimport { ChevronLeftIcon, ChevronRightIcon } from '../../icons';\n\nexport interface PaginationLabels {\n navigation: string;\n previous: string;\n next: string;\n rowsPerPage: string;\n page: (page: number) => string;\n /** Summary text, e.g. \"11–20 of 87\". `total` is 0 when there is nothing to show. */\n range: (from: number, to: number, total: number) => React.ReactNode;\n}\n\nconst defaultLabels: PaginationLabels = {\n navigation: 'Pagination',\n previous: 'Previous page',\n next: 'Next page',\n rowsPerPage: 'Rows per page',\n page: (page) => `Page ${page}`,\n range: (from, to, total) => (total ? `${from}–${to} of ${total}` : '0 results'),\n};\n\n/** Page numbers to render, with `'gap'` where pages are skipped. */\nexport function getPageItems(page: number, pageCount: number, siblingCount = 1): Array<number | 'gap'> {\n // first + last + current + siblings + two gaps\n const slots = siblingCount * 2 + 5;\n if (pageCount <= slots) return Array.from({ length: pageCount }, (_, i) => i + 1);\n const start = Math.max(2, Math.min(page - siblingCount, pageCount - siblingCount * 2 - 2));\n const end = Math.min(pageCount - 1, Math.max(page + siblingCount, siblingCount * 2 + 3));\n const items: Array<number | 'gap'> = [1];\n if (start > 2) items.push('gap');\n for (let i = start; i <= end; i++) items.push(i);\n if (end < pageCount - 1) items.push('gap');\n items.push(pageCount);\n return items;\n}\n\nexport interface PaginationProps extends Omit<React.HTMLAttributes<HTMLElement>, 'onChange'> {\n ref?: React.Ref<HTMLElement>;\n /** Current page, starting at 1. */\n page: number;\n pageSize: number;\n /** Total number of items across all pages. */\n total: number;\n onPageChange: (page: number) => void;\n /** Passing this adds the rows-per-page select. */\n onPageSizeChange?: (pageSize: number) => void;\n pageSizeOptions?: number[];\n /** `pages` shows numbered buttons; `simple` only previous / next. */\n variant?: 'pages' | 'simple';\n /** Numbered pages shown on each side of the current one. */\n siblingCount?: number;\n /** Hide the \"11–20 of 87\" summary. */\n hideRange?: boolean;\n /** Override texts for localisation. */\n labels?: Partial<PaginationLabels>;\n}\n\n/** Controlled page navigation with an optional rows-per-page select. */\nexport function Pagination({\n page,\n pageSize,\n total,\n onPageChange,\n onPageSizeChange,\n pageSizeOptions = [10, 25, 50],\n variant = 'pages',\n siblingCount = 1,\n hideRange,\n labels,\n className,\n ref,\n ...props\n}: PaginationProps) {\n const text = { ...defaultLabels, ...labels };\n const pageCount = Math.max(1, Math.ceil(total / pageSize));\n const current = Math.min(Math.max(1, page), pageCount);\n const from = total ? (current - 1) * pageSize + 1 : 0;\n const to = Math.min(current * pageSize, total);\n const sizes = pageSizeOptions.includes(pageSize) ? pageSizeOptions : [...pageSizeOptions, pageSize].sort((a, b) => a - b);\n\n return (\n <nav ref={ref} aria-label={text.navigation} className={cx('oui-pagination', className)} data-variant={variant} {...props}>\n {!hideRange && (\n <span className=\"oui-pagination__range\" aria-live=\"polite\">\n {text.range(from, to, total)}\n </span>\n )}\n <div className=\"oui-pagination__controls\">\n {onPageSizeChange && (\n <label className=\"oui-pagination__size\">\n <span>{text.rowsPerPage}</span>\n <Select\n size=\"sm\"\n items={sizes.map((size) => ({ value: String(size), label: String(size) }))}\n value={String(pageSize)}\n onValueChange={(value) => value && onPageSizeChange(Number(value))}\n triggerProps={{ 'aria-label': text.rowsPerPage }}\n />\n </label>\n )}\n <div className=\"oui-pagination__pages\">\n <IconButton size=\"sm\" aria-label={text.previous} disabled={current <= 1} onClick={() => onPageChange(current - 1)}>\n <ChevronLeftIcon />\n </IconButton>\n {variant === 'pages' &&\n getPageItems(current, pageCount, siblingCount).map((item, index) =>\n item === 'gap' ? (\n <span key={`gap-${index}`} className=\"oui-pagination__gap\" aria-hidden>\n …\n </span>\n ) : (\n <button\n key={item}\n type=\"button\"\n className=\"oui-pagination__page\"\n aria-label={text.page(item)}\n aria-current={item === current ? 'page' : undefined}\n onClick={() => onPageChange(item)}\n >\n {item}\n </button>\n ),\n )}\n <IconButton size=\"sm\" aria-label={text.next} disabled={current >= pageCount} onClick={() => onPageChange(current + 1)}>\n <ChevronRightIcon />\n </IconButton>\n </div>\n </div>\n </nav>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Pagination.js","names":["React","cx","IconButton","Select","ChevronLeftIcon","ChevronRightIcon","PaginationLabels","navigation","previous","next","rowsPerPage","page","range","from","to","total","ReactNode","defaultLabels","getPageItems","pageCount","siblingCount","Array","slots","length","_","i","start","Math","max","min","end","items","push","PaginationProps","Omit","HTMLAttributes","HTMLElement","ref","Ref","pageSize","onPageChange","onPageSizeChange","pageSizeOptions","variant","hideRange","labels","Partial","Pagination","t0","$","_c","current","t1","t10","t11","t2","t3","t4","t5","t6","t7","t8","t9","text","t12","t13","t14","t15","className","props","undefined","ceil","sizes","includes","sort","_temp","map","_temp2","String","value","Number","t16","t17","Symbol","for","item","index","t18","size","label","a","b","_c"],"sources":["../../../src/components/pagination/Pagination.tsx"],"sourcesContent":["import * as React from 'react';\nimport { cx } from '../../utils/cx';\nimport { IconButton } from '../button/Button';\nimport { Select } from '../select/Select';\nimport { ChevronLeftIcon, ChevronRightIcon } from '../../icons';\n\nexport interface PaginationLabels {\n navigation: string;\n previous: string;\n next: string;\n rowsPerPage: string;\n page: (page: number) => string;\n /** Summary text, e.g. \"11–20 of 87\". `total` is 0 when there is nothing to show. */\n range: (from: number, to: number, total: number) => React.ReactNode;\n}\n\nconst defaultLabels: PaginationLabels = {\n navigation: 'Pagination',\n previous: 'Previous page',\n next: 'Next page',\n rowsPerPage: 'Rows per page',\n page: (page) => `Page ${page}`,\n range: (from, to, total) => (total ? `${from}–${to} of ${total}` : '0 results'),\n};\n\n/** Page numbers to render, with `'gap'` where pages are skipped. */\nexport function getPageItems(page: number, pageCount: number, siblingCount = 1): Array<number | 'gap'> {\n // first + last + current + siblings + two gaps\n const slots = siblingCount * 2 + 5;\n if (pageCount <= slots) return Array.from({ length: pageCount }, (_, i) => i + 1);\n const start = Math.max(2, Math.min(page - siblingCount, pageCount - siblingCount * 2 - 2));\n const end = Math.min(pageCount - 1, Math.max(page + siblingCount, siblingCount * 2 + 3));\n const items: Array<number | 'gap'> = [1];\n if (start > 2) items.push('gap');\n for (let i = start; i <= end; i++) items.push(i);\n if (end < pageCount - 1) items.push('gap');\n items.push(pageCount);\n return items;\n}\n\nexport interface PaginationProps extends Omit<React.HTMLAttributes<HTMLElement>, 'onChange'> {\n /** Ref to the `<nav>` element. */\n ref?: React.Ref<HTMLElement>;\n /** Current page, starting at 1. */\n page: number;\n /** Items per page. */\n pageSize: number;\n /** Total number of items across all pages. */\n total: number;\n /** Called with the new page number. */\n onPageChange: (page: number) => void;\n /** Passing this adds the rows-per-page select. */\n onPageSizeChange?: (pageSize: number) => void;\n /** Choices in the rows-per-page select. */\n pageSizeOptions?: number[];\n /** `pages` shows numbered buttons; `simple` only previous / next. */\n variant?: 'pages' | 'simple';\n /** Numbered pages shown on each side of the current one. */\n siblingCount?: number;\n /** Hide the \"11–20 of 87\" summary. */\n hideRange?: boolean;\n /** Override texts for localisation. */\n labels?: Partial<PaginationLabels>;\n}\n\n/** Controlled page navigation with an optional rows-per-page select. */\nexport function Pagination({\n page,\n pageSize,\n total,\n onPageChange,\n onPageSizeChange,\n pageSizeOptions = [10, 25, 50],\n variant = 'pages',\n siblingCount = 1,\n hideRange,\n labels,\n className,\n ref,\n ...props\n}: PaginationProps) {\n const text = { ...defaultLabels, ...labels };\n const pageCount = Math.max(1, Math.ceil(total / pageSize));\n const current = Math.min(Math.max(1, page), pageCount);\n const from = total ? (current - 1) * pageSize + 1 : 0;\n const to = Math.min(current * pageSize, total);\n const sizes = pageSizeOptions.includes(pageSize) ? pageSizeOptions : [...pageSizeOptions, pageSize].sort((a, b) => a - b);\n\n return (\n <nav ref={ref} aria-label={text.navigation} className={cx('oui-pagination', className)} data-variant={variant} {...props}>\n {!hideRange && (\n <span className=\"oui-pagination__range\" aria-live=\"polite\">\n {text.range(from, to, total)}\n </span>\n )}\n <div className=\"oui-pagination__controls\">\n {onPageSizeChange && (\n <label className=\"oui-pagination__size\">\n <span>{text.rowsPerPage}</span>\n <Select\n size=\"sm\"\n items={sizes.map((size) => ({ value: String(size), label: String(size) }))}\n value={String(pageSize)}\n onValueChange={(value) => value && onPageSizeChange(Number(value))}\n triggerProps={{ 'aria-label': text.rowsPerPage }}\n />\n </label>\n )}\n <div className=\"oui-pagination__pages\">\n <IconButton size=\"sm\" aria-label={text.previous} disabled={current <= 1} onClick={() => onPageChange(current - 1)}>\n <ChevronLeftIcon />\n </IconButton>\n {variant === 'pages' &&\n getPageItems(current, pageCount, siblingCount).map((item, index) =>\n item === 'gap' ? (\n <span key={`gap-${index}`} className=\"oui-pagination__gap\" aria-hidden>\n …\n </span>\n ) : (\n <button\n key={item}\n type=\"button\"\n className=\"oui-pagination__page\"\n aria-label={text.page(item)}\n aria-current={item === current ? 'page' : undefined}\n onClick={() => onPageChange(item)}\n >\n {item}\n </button>\n ),\n )}\n <IconButton size=\"sm\" aria-label={text.next} disabled={current >= pageCount} onClick={() => onPageChange(current + 1)}>\n <ChevronRightIcon />\n </IconButton>\n </div>\n </div>\n </nav>\n );\n}\n"],"mappings":"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"}
@@ -1,10 +1,14 @@
1
1
  import { Popover as BasePopover } from '@base-ui/react/popover';
2
2
  export interface PopoverContentProps extends BasePopover.Popup.Props {
3
+ /** Which side of the trigger the popover opens on. */
3
4
  side?: BasePopover.Positioner.Props['side'];
5
+ /** Alignment along that side. */
4
6
  align?: BasePopover.Positioner.Props['align'];
7
+ /** Distance from the trigger in px. */
5
8
  sideOffset?: BasePopover.Positioner.Props['sideOffset'];
6
9
  /** Show a small arrow pointing at the trigger. */
7
10
  arrow?: boolean;
11
+ /** Props for the positioner element that places the popup. */
8
12
  positionerProps?: BasePopover.Positioner.Props;
9
13
  }
10
14
  declare function PopoverContent({ side, align, sideOffset, arrow, positionerProps, className, children, ref, ...props }: PopoverContentProps): import("react").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.js","names":["Popover","BasePopover","withClass","usePortalContainer","PopoverContentProps","Popup","Props","side","Positioner","align","sideOffset","arrow","positionerProps","PopoverContent","t0","$","_c","children","className","props","ref","t1","t2","t3","undefined","container","t4","t5","t6","t7","t8","PopoverTitle","PopoverDescription","Root","Trigger","Content","Title","Description","Close","_c","BasePopover","Popover"],"sources":["../../../src/components/popover/Popover.tsx"],"sourcesContent":["import { Popover as BasePopover } from '@base-ui/react/popover';\nimport { withClass } from '../../utils/cx';\nimport { usePortalContainer } from '../../utils/portal';\n\nexport interface PopoverContentProps extends BasePopover.Popup.Props {\n side?: BasePopover.Positioner.Props['side'];\n align?: BasePopover.Positioner.Props['align'];\n sideOffset?: BasePopover.Positioner.Props['sideOffset'];\n /** Show a small arrow pointing at the trigger. */\n arrow?: boolean;\n positionerProps?: BasePopover.Positioner.Props;\n}\n\nfunction PopoverContent({\n side = 'bottom',\n align = 'center',\n sideOffset = 8,\n arrow,\n positionerProps,\n className,\n children,\n ref,\n ...props\n}: PopoverContentProps) {\n const container = usePortalContainer();\n return (\n <BasePopover.Portal container={container}>\n <BasePopover.Positioner\n className=\"oui-popover__positioner\"\n side={side}\n align={align}\n sideOffset={sideOffset}\n {...positionerProps}\n >\n <BasePopover.Popup ref={ref} className={withClass('oui-popover', className)} {...props}>\n {arrow && <BasePopover.Arrow className=\"oui-popover__arrow\" />}\n {children}\n </BasePopover.Popup>\n </BasePopover.Positioner>\n </BasePopover.Portal>\n );\n}\n\nfunction PopoverTitle({ className, ref, ...props }: BasePopover.Title.Props) {\n return <BasePopover.Title ref={ref} className={withClass('oui-popover__title', className)} {...props} />;\n}\n\nfunction PopoverDescription({ className, ref, ...props }: BasePopover.Description.Props) {\n return <BasePopover.Description ref={ref} className={withClass('oui-popover__description', className)} {...props} />;\n}\n\n/** Floating panel anchored to a trigger, for small forms, filters and details. */\nexport const Popover = {\n Root: BasePopover.Root,\n Trigger: BasePopover.Trigger,\n Content: PopoverContent,\n Title: PopoverTitle,\n Description: PopoverDescription,\n Close: BasePopover.Close,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"Popover.js","names":["Popover","BasePopover","withClass","usePortalContainer","PopoverContentProps","Popup","Props","side","Positioner","align","sideOffset","arrow","positionerProps","PopoverContent","t0","$","_c","children","className","props","ref","t1","t2","t3","undefined","container","t4","t5","t6","t7","t8","PopoverTitle","PopoverDescription","Root","Trigger","Content","Title","Description","Close","_c","BasePopover","Popover"],"sources":["../../../src/components/popover/Popover.tsx"],"sourcesContent":["import { Popover as BasePopover } from '@base-ui/react/popover';\nimport { withClass } from '../../utils/cx';\nimport { usePortalContainer } from '../../utils/portal';\n\nexport interface PopoverContentProps extends BasePopover.Popup.Props {\n /** Which side of the trigger the popover opens on. */\n side?: BasePopover.Positioner.Props['side'];\n /** Alignment along that side. */\n align?: BasePopover.Positioner.Props['align'];\n /** Distance from the trigger in px. */\n sideOffset?: BasePopover.Positioner.Props['sideOffset'];\n /** Show a small arrow pointing at the trigger. */\n arrow?: boolean;\n /** Props for the positioner element that places the popup. */\n positionerProps?: BasePopover.Positioner.Props;\n}\n\nfunction PopoverContent({\n side = 'bottom',\n align = 'center',\n sideOffset = 8,\n arrow,\n positionerProps,\n className,\n children,\n ref,\n ...props\n}: PopoverContentProps) {\n const container = usePortalContainer();\n return (\n <BasePopover.Portal container={container}>\n <BasePopover.Positioner\n className=\"oui-popover__positioner\"\n side={side}\n align={align}\n sideOffset={sideOffset}\n {...positionerProps}\n >\n <BasePopover.Popup ref={ref} className={withClass('oui-popover', className)} {...props}>\n {arrow && <BasePopover.Arrow className=\"oui-popover__arrow\" />}\n {children}\n </BasePopover.Popup>\n </BasePopover.Positioner>\n </BasePopover.Portal>\n );\n}\n\nfunction PopoverTitle({ className, ref, ...props }: BasePopover.Title.Props) {\n return <BasePopover.Title ref={ref} className={withClass('oui-popover__title', className)} {...props} />;\n}\n\nfunction PopoverDescription({ className, ref, ...props }: BasePopover.Description.Props) {\n return <BasePopover.Description ref={ref} className={withClass('oui-popover__description', className)} {...props} />;\n}\n\n/** Floating panel anchored to a trigger, for small forms, filters and details. */\nexport const Popover = {\n Root: BasePopover.Root,\n Trigger: BasePopover.Trigger,\n Content: PopoverContent,\n Title: PopoverTitle,\n Description: PopoverDescription,\n Close: BasePopover.Close,\n};\n"],"mappings":"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"}
@@ -1,10 +1,14 @@
1
1
  import { PreviewCard as BasePreviewCard } from '@base-ui/react/preview-card';
2
2
  export interface PreviewCardContentProps extends BasePreviewCard.Popup.Props {
3
+ /** Which side of the trigger the card opens on. */
3
4
  side?: BasePreviewCard.Positioner.Props['side'];
5
+ /** Alignment along that side. */
4
6
  align?: BasePreviewCard.Positioner.Props['align'];
7
+ /** Distance from the trigger in px. */
5
8
  sideOffset?: BasePreviewCard.Positioner.Props['sideOffset'];
6
9
  /** Show a small arrow pointing at the trigger. */
7
10
  arrow?: boolean;
11
+ /** Props for the positioner element that places the popup. */
8
12
  positionerProps?: BasePreviewCard.Positioner.Props;
9
13
  }
10
14
  declare function PreviewCardContent({ side, align, sideOffset, arrow, positionerProps, className, children, ref, ...props }: PreviewCardContentProps): import("react").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewCard.js","names":["PreviewCard","BasePreviewCard","withClass","usePortalContainer","PreviewCardContentProps","Popup","Props","side","Positioner","align","sideOffset","arrow","positionerProps","PreviewCardContent","t0","$","_c","children","className","props","ref","t1","t2","t3","undefined","container","t4","t5","t6","t7","t8","Root","Trigger","Content","_c","BasePreviewCard","PreviewCard"],"sources":["../../../src/components/preview-card/PreviewCard.tsx"],"sourcesContent":["import { PreviewCard as BasePreviewCard } from '@base-ui/react/preview-card';\nimport { withClass } from '../../utils/cx';\nimport { usePortalContainer } from '../../utils/portal';\n\nexport interface PreviewCardContentProps extends BasePreviewCard.Popup.Props {\n side?: BasePreviewCard.Positioner.Props['side'];\n align?: BasePreviewCard.Positioner.Props['align'];\n sideOffset?: BasePreviewCard.Positioner.Props['sideOffset'];\n /** Show a small arrow pointing at the trigger. */\n arrow?: boolean;\n positionerProps?: BasePreviewCard.Positioner.Props;\n}\n\nfunction PreviewCardContent({\n side = 'bottom',\n align = 'center',\n sideOffset = 8,\n arrow,\n positionerProps,\n className,\n children,\n ref,\n ...props\n}: PreviewCardContentProps) {\n const container = usePortalContainer();\n return (\n <BasePreviewCard.Portal container={container}>\n <BasePreviewCard.Positioner\n className=\"oui-preview-card__positioner\"\n side={side}\n align={align}\n sideOffset={sideOffset}\n {...positionerProps}\n >\n <BasePreviewCard.Popup ref={ref} className={withClass('oui-preview-card', className)} {...props}>\n {arrow && <BasePreviewCard.Arrow className=\"oui-preview-card__arrow\" />}\n {children}\n </BasePreviewCard.Popup>\n </BasePreviewCard.Positioner>\n </BasePreviewCard.Portal>\n );\n}\n\n/**\n * Card that appears when a link is hovered or focused, previewing what is behind it.\n * `PreviewCard.Trigger` is the link itself. Keep the content supplementary: touch users never see it.\n */\nexport const PreviewCard = {\n Root: BasePreviewCard.Root,\n Trigger: BasePreviewCard.Trigger,\n Content: PreviewCardContent,\n};\n"],"mappings":";;;;;;;AAaA,SAAAa,mBAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAL;CAAA,IAAAM;CAAA,IAAAC;CAAA,IAAAN;CAAA,IAAAO;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAR,EAAA,OAAAD,IAAA;EAA4B,CAAA,CAAAP,MAAAc,IAAAZ,OAAAa,IAAAZ,YAAAa,IAAAZ,OAAAC,iBAAAM,WAAAD,UAAAG,KAAA,GAAAD,SAAAL;EAUFC,EAAA,KAAAD;EAAAC,EAAA,KAAAJ;EAAAI,EAAA,KAAAE;EAAAF,EAAA,KAAAG;EAAAH,EAAA,KAAAH;EAAAG,EAAA,KAAAI;EAAAJ,EAAA,KAAAK;EAAAL,EAAA,KAAAM;EAAAN,EAAA,KAAAO;EAAAP,EAAA,KAAAQ;CAAA,OAAA;EAAAZ,QAAAI,EAAA;EAAAE,WAAAF,EAAA;EAAAG,YAAAH,EAAA;EAAAH,kBAAAG,EAAA;EAAAI,QAAAJ,EAAA;EAAAK,MAAAL,EAAA;EAAAM,KAAAN,EAAA;EAAAO,KAAAP,EAAA;EAAAQ,KAAAR,EAAA;CAAA;CATxB,MAAAR,OAAAc,OAAAG,KAAAA,IAAA,WAAAH;CACA,MAAAZ,QAAAa,OAAAE,KAAAA,IAAA,WAAAF;CACA,MAAAZ,aAAAa,OAAAC,KAAAA,IAAA,IAAAD;CAQA,MAAAE,YAAkBtB,mBAAmB;CAAE,IAAAuB;CAAA,IAAAX,EAAA,QAAAG,WAAA;EAUWQ,KAAAxB,UAAU,oBAAoBgB,SAAS;EAACH,EAAA,MAAAG;EAAAH,EAAA,MAAAW;CAAA,OAAAA,KAAAX,EAAA;CAAA,IAAAY;CAAA,IAAAZ,EAAA,QAAAJ,OAAA;EACjFgB,KAAAhB,SAAS,oBAAAwB,YAAA,OAAA,EAAiC,WAAA,0BAAyB,CAAA;EAAGpB,EAAA,MAAAJ;EAAAI,EAAA,MAAAY;CAAA,OAAAA,KAAAZ,EAAA;CAAA,IAAAa;CAAA,IAAAb,EAAA,QAAAE,YAAAF,EAAA,QAAAI,SAAAJ,EAAA,QAAAK,OAAAL,EAAA,QAAAW,MAAAX,EAAA,QAAAY,IAAA;EADzEC,KAAA,qBAAAO,YAAA,OAAA;GAA4Bf;GAAgB,WAAAM;GAAwC,GAAMP;GAA1F,UAAA,CACGQ,IACAV,QACH;;EAAwBF,EAAA,MAAAE;EAAAF,EAAA,MAAAI;EAAAJ,EAAA,MAAAK;EAAAL,EAAA,MAAAW;EAAAX,EAAA,MAAAY;EAAAZ,EAAA,MAAAa;CAAA,OAAAA,KAAAb,EAAA;CAAA,IAAAc;CAAA,IAAAd,EAAA,QAAAN,SAAAM,EAAA,QAAAH,mBAAAG,EAAA,QAAAR,QAAAQ,EAAA,QAAAL,cAAAK,EAAA,QAAAa,IAAA;EAV1BC,KAAA,oBAAAM,YAAA,YAAA;GACY,WAAA;GACJ5B;GACCE;GACKC;GAAU,GAClBE;GAEJgB,UAAAA;EAIF,CAAA;EAA6Bb,EAAA,MAAAN;EAAAM,EAAA,MAAAH;EAAAG,EAAA,MAAAR;EAAAQ,EAAA,MAAAL;EAAAK,EAAA,MAAAa;EAAAb,EAAA,MAAAc;CAAA,OAAAA,KAAAd,EAAA;CAAA,IAAAe;CAAA,IAAAf,EAAA,QAAAU,aAAAV,EAAA,QAAAc,IAAA;EAZ/BC,KAAA,oBAAAK,YAAA,QAAA;GAAmCV;GACjCI,UAAAA;EAYF,CAAA;EAAyBd,EAAA,MAAAU;EAAAV,EAAA,MAAAc;EAAAd,EAAA,MAAAe;CAAA,OAAAA,KAAAf,EAAA;CAAA,OAbzBe;AAayB;;;;;AAQ7B,IAAa9B,gBAAc;CACzB+B,MAAM9B,YAAgB8B;CACtBC,SAAS/B,YAAgB+B;CACzBC,SAASpB;AACX"}
1
+ {"version":3,"file":"PreviewCard.js","names":["PreviewCard","BasePreviewCard","withClass","usePortalContainer","PreviewCardContentProps","Popup","Props","side","Positioner","align","sideOffset","arrow","positionerProps","PreviewCardContent","t0","$","_c","children","className","props","ref","t1","t2","t3","undefined","container","t4","t5","t6","t7","t8","Root","Trigger","Content","_c","BasePreviewCard","PreviewCard"],"sources":["../../../src/components/preview-card/PreviewCard.tsx"],"sourcesContent":["import { PreviewCard as BasePreviewCard } from '@base-ui/react/preview-card';\nimport { withClass } from '../../utils/cx';\nimport { usePortalContainer } from '../../utils/portal';\n\nexport interface PreviewCardContentProps extends BasePreviewCard.Popup.Props {\n /** Which side of the trigger the card opens on. */\n side?: BasePreviewCard.Positioner.Props['side'];\n /** Alignment along that side. */\n align?: BasePreviewCard.Positioner.Props['align'];\n /** Distance from the trigger in px. */\n sideOffset?: BasePreviewCard.Positioner.Props['sideOffset'];\n /** Show a small arrow pointing at the trigger. */\n arrow?: boolean;\n /** Props for the positioner element that places the popup. */\n positionerProps?: BasePreviewCard.Positioner.Props;\n}\n\nfunction PreviewCardContent({\n side = 'bottom',\n align = 'center',\n sideOffset = 8,\n arrow,\n positionerProps,\n className,\n children,\n ref,\n ...props\n}: PreviewCardContentProps) {\n const container = usePortalContainer();\n return (\n <BasePreviewCard.Portal container={container}>\n <BasePreviewCard.Positioner\n className=\"oui-preview-card__positioner\"\n side={side}\n align={align}\n sideOffset={sideOffset}\n {...positionerProps}\n >\n <BasePreviewCard.Popup ref={ref} className={withClass('oui-preview-card', className)} {...props}>\n {arrow && <BasePreviewCard.Arrow className=\"oui-preview-card__arrow\" />}\n {children}\n </BasePreviewCard.Popup>\n </BasePreviewCard.Positioner>\n </BasePreviewCard.Portal>\n );\n}\n\n/**\n * Card that appears when a link is hovered or focused, previewing what is behind it.\n * `PreviewCard.Trigger` is the link itself. Keep the content supplementary: touch users never see it.\n */\nexport const PreviewCard = {\n Root: BasePreviewCard.Root,\n Trigger: BasePreviewCard.Trigger,\n Content: PreviewCardContent,\n};\n"],"mappings":";;;;;;;AAiBA,SAAAa,mBAAAC,IAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAL;CAAA,IAAAM;CAAA,IAAAC;CAAA,IAAAN;CAAA,IAAAO;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAR,EAAA,OAAAD,IAAA;EAA4B,CAAA,CAAAP,MAAAc,IAAAZ,OAAAa,IAAAZ,YAAAa,IAAAZ,OAAAC,iBAAAM,WAAAD,UAAAG,KAAA,GAAAD,SAAAL;EAUFC,EAAA,KAAAD;EAAAC,EAAA,KAAAJ;EAAAI,EAAA,KAAAE;EAAAF,EAAA,KAAAG;EAAAH,EAAA,KAAAH;EAAAG,EAAA,KAAAI;EAAAJ,EAAA,KAAAK;EAAAL,EAAA,KAAAM;EAAAN,EAAA,KAAAO;EAAAP,EAAA,KAAAQ;CAAA,OAAA;EAAAZ,QAAAI,EAAA;EAAAE,WAAAF,EAAA;EAAAG,YAAAH,EAAA;EAAAH,kBAAAG,EAAA;EAAAI,QAAAJ,EAAA;EAAAK,MAAAL,EAAA;EAAAM,KAAAN,EAAA;EAAAO,KAAAP,EAAA;EAAAQ,KAAAR,EAAA;CAAA;CATxB,MAAAR,OAAAc,OAAAG,KAAAA,IAAA,WAAAH;CACA,MAAAZ,QAAAa,OAAAE,KAAAA,IAAA,WAAAF;CACA,MAAAZ,aAAAa,OAAAC,KAAAA,IAAA,IAAAD;CAQA,MAAAE,YAAkBtB,mBAAmB;CAAE,IAAAuB;CAAA,IAAAX,EAAA,QAAAG,WAAA;EAUWQ,KAAAxB,UAAU,oBAAoBgB,SAAS;EAACH,EAAA,MAAAG;EAAAH,EAAA,MAAAW;CAAA,OAAAA,KAAAX,EAAA;CAAA,IAAAY;CAAA,IAAAZ,EAAA,QAAAJ,OAAA;EACjFgB,KAAAhB,SAAS,oBAAAwB,YAAA,OAAA,EAAiC,WAAA,0BAAyB,CAAA;EAAGpB,EAAA,MAAAJ;EAAAI,EAAA,MAAAY;CAAA,OAAAA,KAAAZ,EAAA;CAAA,IAAAa;CAAA,IAAAb,EAAA,QAAAE,YAAAF,EAAA,QAAAI,SAAAJ,EAAA,QAAAK,OAAAL,EAAA,QAAAW,MAAAX,EAAA,QAAAY,IAAA;EADzEC,KAAA,qBAAAO,YAAA,OAAA;GAA4Bf;GAAgB,WAAAM;GAAwC,GAAMP;GAA1F,UAAA,CACGQ,IACAV,QACH;;EAAwBF,EAAA,MAAAE;EAAAF,EAAA,MAAAI;EAAAJ,EAAA,MAAAK;EAAAL,EAAA,MAAAW;EAAAX,EAAA,MAAAY;EAAAZ,EAAA,MAAAa;CAAA,OAAAA,KAAAb,EAAA;CAAA,IAAAc;CAAA,IAAAd,EAAA,QAAAN,SAAAM,EAAA,QAAAH,mBAAAG,EAAA,QAAAR,QAAAQ,EAAA,QAAAL,cAAAK,EAAA,QAAAa,IAAA;EAV1BC,KAAA,oBAAAM,YAAA,YAAA;GACY,WAAA;GACJ5B;GACCE;GACKC;GAAU,GAClBE;GAEJgB,UAAAA;EAIF,CAAA;EAA6Bb,EAAA,MAAAN;EAAAM,EAAA,MAAAH;EAAAG,EAAA,MAAAR;EAAAQ,EAAA,MAAAL;EAAAK,EAAA,MAAAa;EAAAb,EAAA,MAAAc;CAAA,OAAAA,KAAAd,EAAA;CAAA,IAAAe;CAAA,IAAAf,EAAA,QAAAU,aAAAV,EAAA,QAAAc,IAAA;EAZ/BC,KAAA,oBAAAK,YAAA,QAAA;GAAmCV;GACjCI,UAAAA;EAYF,CAAA;EAAyBd,EAAA,MAAAU;EAAAV,EAAA,MAAAc;EAAAd,EAAA,MAAAe;CAAA,OAAAA,KAAAf,EAAA;CAAA,OAbzBe;AAayB;;;;;AAQ7B,IAAa9B,gBAAc;CACzB+B,MAAM9B,YAAgB8B;CACtBC,SAAS/B,YAAgB+B;CACzBC,SAASpB;AACX"}
@@ -3,17 +3,25 @@ import { Progress as BaseProgress } from '@base-ui/react/progress';
3
3
  import { Meter as BaseMeter } from '@base-ui/react/meter';
4
4
  export type ProgressTone = 'accent' | 'primary' | 'success' | 'warning' | 'danger';
5
5
  export interface ProgressProps extends BaseProgress.Root.Props {
6
+ /** Label above the bar. */
6
7
  label?: React.ReactNode;
8
+ /** Show the formatted value next to the label. */
7
9
  showValue?: boolean;
10
+ /** Bar color. */
8
11
  tone?: ProgressTone;
12
+ /** Bar thickness. */
9
13
  size?: 'sm' | 'md' | 'lg';
10
14
  }
11
15
  /** Task completion. Pass `value={null}` for an indeterminate bar. */
12
16
  export declare function Progress({ label, showValue, tone, size, className, ref, ...props }: ProgressProps): React.JSX.Element;
13
17
  export interface MeterProps extends BaseMeter.Root.Props {
18
+ /** Label above the bar. */
14
19
  label?: React.ReactNode;
20
+ /** Show the formatted value next to the label. Defaults to `true`. */
15
21
  showValue?: boolean;
22
+ /** Bar color. */
16
23
  tone?: ProgressTone;
24
+ /** Bar thickness. */
17
25
  size?: 'sm' | 'md' | 'lg';
18
26
  }
19
27
  /** A measurement within a known range (quota, capacity, score). */
@@ -1 +1 @@
1
- {"version":3,"file":"Progress.js","names":["React","Progress","BaseProgress","Meter","BaseMeter","withClass","ProgressTone","ProgressProps","Root","Props","label","ReactNode","showValue","tone","size","t0","$","_c","className","props","ref","t1","t2","undefined","t3","t4","t5","Symbol","for","t6","MeterProps","t7","Progress","_c","BaseProgress","Meter","BaseMeter"],"sources":["../../../src/components/progress/Progress.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Progress as BaseProgress } from '@base-ui/react/progress';\nimport { Meter as BaseMeter } from '@base-ui/react/meter';\nimport { withClass } from '../../utils/cx';\n\nexport type ProgressTone = 'accent' | 'primary' | 'success' | 'warning' | 'danger';\n\nexport interface ProgressProps extends BaseProgress.Root.Props {\n label?: React.ReactNode;\n showValue?: boolean;\n tone?: ProgressTone;\n size?: 'sm' | 'md' | 'lg';\n}\n\n/** Task completion. Pass `value={null}` for an indeterminate bar. */\nexport function Progress({ label, showValue, tone = 'accent', size = 'md', className, ref, ...props }: ProgressProps) {\n return (\n <BaseProgress.Root\n ref={ref}\n className={withClass('oui-progress', className)}\n data-tone={tone}\n data-size={size}\n {...props}\n >\n {(label || showValue) && (\n <div className=\"oui-progress__header\">\n {label && <BaseProgress.Label className=\"oui-progress__label\">{label}</BaseProgress.Label>}\n {showValue && <BaseProgress.Value className=\"oui-progress__value\" />}\n </div>\n )}\n <BaseProgress.Track className=\"oui-progress__track\">\n <BaseProgress.Indicator className=\"oui-progress__indicator\" />\n </BaseProgress.Track>\n </BaseProgress.Root>\n );\n}\n\nexport interface MeterProps extends BaseMeter.Root.Props {\n label?: React.ReactNode;\n showValue?: boolean;\n tone?: ProgressTone;\n size?: 'sm' | 'md' | 'lg';\n}\n\n/** A measurement within a known range (quota, capacity, score). */\nexport function Meter({ label, showValue = true, tone = 'accent', size = 'md', className, ref, ...props }: MeterProps) {\n return (\n <BaseMeter.Root\n ref={ref}\n className={withClass('oui-progress', className)}\n data-tone={tone}\n data-size={size}\n {...props}\n >\n {(label || showValue) && (\n <div className=\"oui-progress__header\">\n {label && <BaseMeter.Label className=\"oui-progress__label\">{label}</BaseMeter.Label>}\n {showValue && <BaseMeter.Value className=\"oui-progress__value\" />}\n </div>\n )}\n <BaseMeter.Track className=\"oui-progress__track\">\n <BaseMeter.Indicator className=\"oui-progress__indicator\" />\n </BaseMeter.Track>\n </BaseMeter.Root>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Progress.js","names":["React","Progress","BaseProgress","Meter","BaseMeter","withClass","ProgressTone","ProgressProps","Root","Props","label","ReactNode","showValue","tone","size","t0","$","_c","className","props","ref","t1","t2","undefined","t3","t4","t5","Symbol","for","t6","MeterProps","t7","Progress","_c","BaseProgress","Meter","BaseMeter"],"sources":["../../../src/components/progress/Progress.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Progress as BaseProgress } from '@base-ui/react/progress';\nimport { Meter as BaseMeter } from '@base-ui/react/meter';\nimport { withClass } from '../../utils/cx';\n\nexport type ProgressTone = 'accent' | 'primary' | 'success' | 'warning' | 'danger';\n\nexport interface ProgressProps extends BaseProgress.Root.Props {\n /** Label above the bar. */\n label?: React.ReactNode;\n /** Show the formatted value next to the label. */\n showValue?: boolean;\n /** Bar color. */\n tone?: ProgressTone;\n /** Bar thickness. */\n size?: 'sm' | 'md' | 'lg';\n}\n\n/** Task completion. Pass `value={null}` for an indeterminate bar. */\nexport function Progress({ label, showValue, tone = 'accent', size = 'md', className, ref, ...props }: ProgressProps) {\n return (\n <BaseProgress.Root\n ref={ref}\n className={withClass('oui-progress', className)}\n data-tone={tone}\n data-size={size}\n {...props}\n >\n {(label || showValue) && (\n <div className=\"oui-progress__header\">\n {label && <BaseProgress.Label className=\"oui-progress__label\">{label}</BaseProgress.Label>}\n {showValue && <BaseProgress.Value className=\"oui-progress__value\" />}\n </div>\n )}\n <BaseProgress.Track className=\"oui-progress__track\">\n <BaseProgress.Indicator className=\"oui-progress__indicator\" />\n </BaseProgress.Track>\n </BaseProgress.Root>\n );\n}\n\nexport interface MeterProps extends BaseMeter.Root.Props {\n /** Label above the bar. */\n label?: React.ReactNode;\n /** Show the formatted value next to the label. Defaults to `true`. */\n showValue?: boolean;\n /** Bar color. */\n tone?: ProgressTone;\n /** Bar thickness. */\n size?: 'sm' | 'md' | 'lg';\n}\n\n/** A measurement within a known range (quota, capacity, score). */\nexport function Meter({ label, showValue = true, tone = 'accent', size = 'md', className, ref, ...props }: MeterProps) {\n return (\n <BaseMeter.Root\n ref={ref}\n className={withClass('oui-progress', className)}\n data-tone={tone}\n data-size={size}\n {...props}\n >\n {(label || showValue) && (\n <div className=\"oui-progress__header\">\n {label && <BaseMeter.Label className=\"oui-progress__label\">{label}</BaseMeter.Label>}\n {showValue && <BaseMeter.Value className=\"oui-progress__value\" />}\n </div>\n )}\n <BaseMeter.Track className=\"oui-progress__track\">\n <BaseMeter.Indicator className=\"oui-progress__indicator\" />\n </BaseMeter.Track>\n </BaseMeter.Root>\n );\n}\n"],"mappings":"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"}
@@ -2,6 +2,7 @@ import { ScrollArea as BaseScrollArea } from '@base-ui/react/scroll-area';
2
2
  export interface ScrollAreaProps extends BaseScrollArea.Root.Props {
3
3
  /** Which scrollbars to render. */
4
4
  scrollbars?: 'vertical' | 'horizontal' | 'both';
5
+ /** Props for the inner scrolling viewport, e.g. a `ref` to read the scroll position. */
5
6
  viewportProps?: BaseScrollArea.Viewport.Props;
6
7
  }
7
8
  /** Scroll container with slim, themed overlay scrollbars. Set a height or max-height. */
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollArea.js","names":["ScrollArea","BaseScrollArea","withClass","ScrollAreaProps","Root","Props","scrollbars","viewportProps","Viewport","t0","$","_c","children","className","props","ref","t1","undefined","t2","t3","t4","t5","t6","t7","t8","t9","ScrollArea","_c","BaseScrollArea"],"sources":["../../../src/components/scroll-area/ScrollArea.tsx"],"sourcesContent":["import { ScrollArea as BaseScrollArea } from '@base-ui/react/scroll-area';\nimport { withClass } from '../../utils/cx';\n\nexport interface ScrollAreaProps extends BaseScrollArea.Root.Props {\n /** Which scrollbars to render. */\n scrollbars?: 'vertical' | 'horizontal' | 'both';\n viewportProps?: BaseScrollArea.Viewport.Props;\n}\n\n/** Scroll container with slim, themed overlay scrollbars. Set a height or max-height. */\nexport function ScrollArea({\n scrollbars = 'vertical',\n viewportProps,\n className,\n children,\n ref,\n ...props\n}: ScrollAreaProps) {\n return (\n <BaseScrollArea.Root ref={ref} className={withClass('oui-scroll-area', className)} {...props}>\n <BaseScrollArea.Viewport\n {...viewportProps}\n className={withClass('oui-scroll-area__viewport', viewportProps?.className)}\n >\n {children}\n </BaseScrollArea.Viewport>\n {scrollbars !== 'horizontal' && (\n <BaseScrollArea.Scrollbar orientation=\"vertical\" className=\"oui-scroll-area__scrollbar\">\n <BaseScrollArea.Thumb className=\"oui-scroll-area__thumb\" />\n </BaseScrollArea.Scrollbar>\n )}\n {scrollbars !== 'vertical' && (\n <BaseScrollArea.Scrollbar orientation=\"horizontal\" className=\"oui-scroll-area__scrollbar\">\n <BaseScrollArea.Thumb className=\"oui-scroll-area__thumb\" />\n </BaseScrollArea.Scrollbar>\n )}\n {scrollbars === 'both' && <BaseScrollArea.Corner />}\n </BaseScrollArea.Root>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ScrollArea.js","names":["ScrollArea","BaseScrollArea","withClass","ScrollAreaProps","Root","Props","scrollbars","viewportProps","Viewport","t0","$","_c","children","className","props","ref","t1","undefined","t2","t3","t4","t5","t6","t7","t8","t9","ScrollArea","_c","BaseScrollArea"],"sources":["../../../src/components/scroll-area/ScrollArea.tsx"],"sourcesContent":["import { ScrollArea as BaseScrollArea } from '@base-ui/react/scroll-area';\nimport { withClass } from '../../utils/cx';\n\nexport interface ScrollAreaProps extends BaseScrollArea.Root.Props {\n /** Which scrollbars to render. */\n scrollbars?: 'vertical' | 'horizontal' | 'both';\n /** Props for the inner scrolling viewport, e.g. a `ref` to read the scroll position. */\n viewportProps?: BaseScrollArea.Viewport.Props;\n}\n\n/** Scroll container with slim, themed overlay scrollbars. Set a height or max-height. */\nexport function ScrollArea({\n scrollbars = 'vertical',\n viewportProps,\n className,\n children,\n ref,\n ...props\n}: ScrollAreaProps) {\n return (\n <BaseScrollArea.Root ref={ref} className={withClass('oui-scroll-area', className)} {...props}>\n <BaseScrollArea.Viewport\n {...viewportProps}\n className={withClass('oui-scroll-area__viewport', viewportProps?.className)}\n >\n {children}\n </BaseScrollArea.Viewport>\n {scrollbars !== 'horizontal' && (\n <BaseScrollArea.Scrollbar orientation=\"vertical\" className=\"oui-scroll-area__scrollbar\">\n <BaseScrollArea.Thumb className=\"oui-scroll-area__thumb\" />\n </BaseScrollArea.Scrollbar>\n )}\n {scrollbars !== 'vertical' && (\n <BaseScrollArea.Scrollbar orientation=\"horizontal\" className=\"oui-scroll-area__scrollbar\">\n <BaseScrollArea.Thumb className=\"oui-scroll-area__thumb\" />\n </BaseScrollArea.Scrollbar>\n )}\n {scrollbars === 'both' && <BaseScrollArea.Corner />}\n </BaseScrollArea.Root>\n );\n}\n"],"mappings":";;;;;;;AAWA,SAAOA,aAAAS,IAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAT;CAAA,IAAAG,EAAA,OAAAD,IAAA;EAAoB,CAAA,CAAAH,YAAAU,IAAAT,eAAAM,WAAAD,UAAAG,KAAA,GAAAD,SAAAL;EAOTC,EAAA,KAAAD;EAAAC,EAAA,KAAAE;EAAAF,EAAA,KAAAG;EAAAH,EAAA,KAAAI;EAAAJ,EAAA,KAAAK;EAAAL,EAAA,KAAAM;EAAAN,EAAA,KAAAH;CAAA,OAAA;EAAAK,WAAAF,EAAA;EAAAG,YAAAH,EAAA;EAAAI,QAAAJ,EAAA;EAAAK,MAAAL,EAAA;EAAAM,KAAAN,EAAA;EAAAH,gBAAAG,EAAA;CAAA;CANhB,MAAAJ,aAAAU,OAAAC,KAAAA,IAAA,aAAAD;CAAuB,IAAAE;CAAA,IAAAR,EAAA,OAAAG,WAAA;EAQqBK,KAAAhB,UAAU,mBAAmBW,SAAS;EAACH,EAAA,KAAAG;EAAAH,EAAA,KAAAQ;CAAA,OAAAA,KAAAR,EAAA;CAG3B,MAAAS,KAAAZ,eAAaM;CAAW,IAAAO;CAAA,IAAAV,EAAA,OAAAS,IAAA;EAA/DC,KAAAlB,UAAU,6BAA6BiB,EAAwB;EAACT,EAAA,KAAAS;EAAAT,EAAA,MAAAU;CAAA,OAAAA,KAAAV,EAAA;CAAA,IAAAW;CAAA,IAAAX,EAAA,QAAAE,YAAAF,EAAA,QAAAU,MAAAV,EAAA,QAAAH,eAAA;EAF7Ec,KAAA,oBAAAO,WAAA,UAAA;GAAA,GACMrB;GACO,WAAAa;GAEVR;EACH,CAAA;EAA0BF,EAAA,MAAAE;EAAAF,EAAA,MAAAU;EAAAV,EAAA,MAAAH;EAAAG,EAAA,MAAAW;CAAA,OAAAA,KAAAX,EAAA;CAAA,IAAAY;CAAA,IAAAZ,EAAA,QAAAJ,YAAA;EACzBgB,KAAAhB,eAAe,gBACd,oBAAAsB,WAAA,WAAA;GAAsC,aAAA;GAAqB,WAAA;GACzD,UAAA,oBAAAA,WAAA,OAAA,EAAgC,WAAA,yBAAwB,CAAA;EAC1D,CAAA;EACDlB,EAAA,MAAAJ;EAAAI,EAAA,MAAAY;CAAA,OAAAA,KAAAZ,EAAA;CAAA,IAAAa;CAAA,IAAAb,EAAA,QAAAJ,YAAA;EACAiB,KAAAjB,eAAe,cACd,oBAAAsB,WAAA,WAAA;GAAsC,aAAA;GAAuB,WAAA;GAC3D,UAAA,oBAAAA,WAAA,OAAA,EAAgC,WAAA,yBAAwB,CAAA;EAC1D,CAAA;EACDlB,EAAA,MAAAJ;EAAAI,EAAA,MAAAa;CAAA,OAAAA,KAAAb,EAAA;CAAA,IAAAc;CAAA,IAAAd,EAAA,QAAAJ,YAAA;EACAkB,KAAAlB,eAAe,UAAU,oBAAAsB,WAAA,QAAA,CAAA,CAAA;EAAyBlB,EAAA,MAAAJ;EAAAI,EAAA,MAAAc;CAAA,OAAAA,KAAAd,EAAA;CAAA,IAAAe;CAAA,IAAAf,EAAA,QAAAI,SAAAJ,EAAA,QAAAK,OAAAL,EAAA,QAAAQ,MAAAR,EAAA,QAAAW,MAAAX,EAAA,QAAAY,MAAAZ,EAAA,QAAAa,MAAAb,EAAA,QAAAc,IAAA;EAjBrDC,KAAA,qBAAAG,WAAA,MAAA;GAA0Bb;GAAgB,WAAAG;GAAuC,GAAMJ;GAAvF,UAAA;IACEO;IAMCC;IAKAC;IAKAC;GACH;;EAAsBd,EAAA,MAAAI;EAAAJ,EAAA,MAAAK;EAAAL,EAAA,MAAAQ;EAAAR,EAAA,MAAAW;EAAAX,EAAA,MAAAY;EAAAZ,EAAA,MAAAa;EAAAb,EAAA,MAAAc;EAAAd,EAAA,MAAAe;CAAA,OAAAA,KAAAf,EAAA;CAAA,OAlBtBe;AAkBsB"}
@@ -1,7 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import { type InputProps } from '../input/Input';
3
3
  export interface SearchInputProps extends Omit<InputProps, 'type' | 'value' | 'defaultValue' | 'onValueChange' | 'startAdornment' | 'endAdornment'> {
4
+ /** Current text (controlled). */
4
5
  value?: string;
6
+ /** Initial text when uncontrolled. */
5
7
  defaultValue?: string;
6
8
  /** Called with the new text on typing and with `''` on clear. */
7
9
  onValueChange?: (value: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"SearchInput.js","names":["React","Input","InputProps","IconButton","SearchIcon","XIcon","SearchInputProps","Omit","value","defaultValue","onValueChange","clearLabel","icon","ReactNode","SearchInput","t0","$","_c","disabled","props","ref","t1","t2","undefined","inner","setInner","useState","current","inputRef","useRef","t3","Symbol","for","HTMLInputElement","useImperativeHandle","t4","next","change","t5","t6","focus","t7","_c"],"sources":["../../../src/components/search-input/SearchInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Input, type InputProps } from '../input/Input';\nimport { IconButton } from '../button/Button';\nimport { SearchIcon, XIcon } from '../../icons';\n\nexport interface SearchInputProps\n extends Omit<InputProps, 'type' | 'value' | 'defaultValue' | 'onValueChange' | 'startAdornment' | 'endAdornment'> {\n value?: string;\n defaultValue?: string;\n /** Called with the new text on typing and with `''` on clear. */\n onValueChange?: (value: string) => void;\n /** Accessible name of the clear button. */\n clearLabel?: string;\n /** Replaces the leading search icon. */\n icon?: React.ReactNode;\n}\n\n/** Text input with a search icon and a clear button that appears once there is a value. */\nexport function SearchInput({\n value,\n defaultValue = '',\n onValueChange,\n clearLabel = 'Clear search',\n icon,\n disabled,\n ref,\n ...props\n}: SearchInputProps) {\n const [inner, setInner] = React.useState(defaultValue);\n const current = value ?? inner;\n const inputRef = React.useRef<HTMLInputElement | null>(null);\n React.useImperativeHandle(ref, () => inputRef.current as HTMLInputElement);\n\n const change = (next: string) => {\n setInner(next);\n onValueChange?.(next);\n };\n\n return (\n <Input\n ref={inputRef}\n type=\"text\"\n role=\"searchbox\"\n enterKeyHint=\"search\"\n autoComplete=\"off\"\n disabled={disabled}\n {...props}\n value={current}\n onValueChange={change}\n startAdornment={icon ?? <SearchIcon />}\n endAdornment={\n current && !disabled ? (\n <IconButton\n size=\"sm\"\n shape=\"circle\"\n aria-label={clearLabel}\n onClick={() => {\n change('');\n inputRef.current?.focus();\n }}\n >\n <XIcon />\n </IconButton>\n ) : undefined\n }\n />\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"SearchInput.js","names":["React","Input","InputProps","IconButton","SearchIcon","XIcon","SearchInputProps","Omit","value","defaultValue","onValueChange","clearLabel","icon","ReactNode","SearchInput","t0","$","_c","disabled","props","ref","t1","t2","undefined","inner","setInner","useState","current","inputRef","useRef","t3","Symbol","for","HTMLInputElement","useImperativeHandle","t4","next","change","t5","t6","focus","t7","_c"],"sources":["../../../src/components/search-input/SearchInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Input, type InputProps } from '../input/Input';\nimport { IconButton } from '../button/Button';\nimport { SearchIcon, XIcon } from '../../icons';\n\nexport interface SearchInputProps\n extends Omit<InputProps, 'type' | 'value' | 'defaultValue' | 'onValueChange' | 'startAdornment' | 'endAdornment'> {\n /** Current text (controlled). */\n value?: string;\n /** Initial text when uncontrolled. */\n defaultValue?: string;\n /** Called with the new text on typing and with `''` on clear. */\n onValueChange?: (value: string) => void;\n /** Accessible name of the clear button. */\n clearLabel?: string;\n /** Replaces the leading search icon. */\n icon?: React.ReactNode;\n}\n\n/** Text input with a search icon and a clear button that appears once there is a value. */\nexport function SearchInput({\n value,\n defaultValue = '',\n onValueChange,\n clearLabel = 'Clear search',\n icon,\n disabled,\n ref,\n ...props\n}: SearchInputProps) {\n const [inner, setInner] = React.useState(defaultValue);\n const current = value ?? inner;\n const inputRef = React.useRef<HTMLInputElement | null>(null);\n React.useImperativeHandle(ref, () => inputRef.current as HTMLInputElement);\n\n const change = (next: string) => {\n setInner(next);\n onValueChange?.(next);\n };\n\n return (\n <Input\n ref={inputRef}\n type=\"text\"\n role=\"searchbox\"\n enterKeyHint=\"search\"\n autoComplete=\"off\"\n disabled={disabled}\n {...props}\n value={current}\n onValueChange={change}\n startAdornment={icon ?? <SearchIcon />}\n endAdornment={\n current && !disabled ? (\n <IconButton\n size=\"sm\"\n shape=\"circle\"\n aria-label={clearLabel}\n onClick={() => {\n change('');\n inputRef.current?.focus();\n }}\n >\n <XIcon />\n </IconButton>\n ) : undefined\n }\n />\n );\n}\n"],"mappings":"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"}
@@ -2,6 +2,7 @@ import * as React from 'react';
2
2
  import { Select as BaseSelect } from '@base-ui/react/select';
3
3
  import type { ControlSize } from '../input/Input';
4
4
  export interface SelectTriggerProps extends BaseSelect.Trigger.Props {
5
+ /** Control height. */
5
6
  size?: ControlSize;
6
7
  /** Placeholder shown by the default value slot. */
7
8
  placeholder?: React.ReactNode;
@@ -10,11 +11,15 @@ export interface SelectTriggerProps extends BaseSelect.Trigger.Props {
10
11
  declare function SelectTrigger({ size, placeholder, className, children, ref, ...props }: SelectTriggerProps): React.JSX.Element;
11
12
  declare function SelectValue({ className, ref, ...props }: BaseSelect.Value.Props): React.JSX.Element;
12
13
  export interface SelectContentProps extends BaseSelect.Popup.Props {
14
+ /** Which side of the trigger the list opens on. */
13
15
  side?: BaseSelect.Positioner.Props['side'];
16
+ /** Alignment along that side. */
14
17
  align?: BaseSelect.Positioner.Props['align'];
18
+ /** Distance from the trigger in px. */
15
19
  sideOffset?: BaseSelect.Positioner.Props['sideOffset'];
16
20
  /** Overlap the trigger so the selected item lines up with it (macOS style). */
17
21
  alignItemWithTrigger?: boolean;
22
+ /** Props for the positioner element that places the popup. */
18
23
  positionerProps?: BaseSelect.Positioner.Props;
19
24
  }
20
25
  /** Portal + positioner + popup + list in one. */
@@ -37,13 +42,19 @@ type RootProps = Omit<BaseSelect.Root.Props<string, false>, 'items' | 'children'
37
42
  export interface SelectProps extends RootProps {
38
43
  /** Options, or groups of options. */
39
44
  items: Array<SelectOption | SelectOptionGroup>;
45
+ /** Visible field label. */
40
46
  label?: React.ReactNode;
47
+ /** Help text under the trigger. */
41
48
  description?: React.ReactNode;
49
+ /** Error message. When set, the field is marked invalid. */
42
50
  error?: React.ReactNode;
51
+ /** Text shown while nothing is selected. */
43
52
  placeholder?: React.ReactNode;
53
+ /** Control height. */
44
54
  size?: ControlSize;
45
55
  /** Props passed to the trigger button (className, style, aria-*). */
46
56
  triggerProps?: Omit<SelectTriggerProps, 'size' | 'placeholder'>;
57
+ /** Props for the popup (side, align, className…). */
47
58
  contentProps?: Omit<SelectContentProps, 'children'>;
48
59
  }
49
60
  declare function SelectComponent({ items, label, description, error, placeholder, size, triggerProps, contentProps, name, disabled, required, ...rootProps }: SelectProps): React.JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","names":["React","Select","BaseSelect","withClass","usePortalContainer","CheckIcon","ChevronDownIcon","Field","ControlSize","SelectTriggerProps","Trigger","Props","size","placeholder","ReactNode","SelectTrigger","t0","$","_c","children","className","props","ref","t1","undefined","t2","t3","t4","SelectValue","SelectContentProps","Popup","side","Positioner","align","sideOffset","alignItemWithTrigger","positionerProps","SelectContent","container","t5","t6","t7","SelectItem","Symbol","for","SelectGroup","SelectGroupLabel","SelectSeparator","SelectLabel","SelectOption","value","label","disabled","SelectOptionGroup","items","RootProps","Omit","Root","SelectProps","Array","description","error","triggerProps","contentProps","isGroup","item","SelectComponent","name","required","rootProps","flatMap","_temp","flat","map","_temp3","t8","t9","t10","t11","t12","item_0","index","_temp2","option","Object","assign","Label","Value","Content","Item","Group","GroupLabel","Separator","_c","_Fragment","BaseSelect","Select"],"sources":["../../../src/components/select/Select.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Select as BaseSelect } from '@base-ui/react/select';\nimport { withClass } from '../../utils/cx';\nimport { usePortalContainer } from '../../utils/portal';\nimport { CheckIcon, ChevronDownIcon } from '../../icons';\nimport { Field } from '../field/Field';\nimport type { ControlSize } from '../input/Input';\n\n// ─── Parts ───────────────────────────────────────────────────────────────────\n\nexport interface SelectTriggerProps extends BaseSelect.Trigger.Props {\n size?: ControlSize;\n /** Placeholder shown by the default value slot. */\n placeholder?: React.ReactNode;\n}\n\n/** The select button. Renders the value and chevron unless children are given. */\nfunction SelectTrigger({ size = 'md', placeholder, className, children, ref, ...props }: SelectTriggerProps) {\n return (\n <BaseSelect.Trigger ref={ref} className={withClass('oui-select__trigger', className)} data-size={size} {...props}>\n {children ?? (\n <>\n <BaseSelect.Value className=\"oui-select__value\" placeholder={placeholder} />\n <BaseSelect.Icon className=\"oui-select__icon\">\n <ChevronDownIcon />\n </BaseSelect.Icon>\n </>\n )}\n </BaseSelect.Trigger>\n );\n}\n\nfunction SelectValue({ className, ref, ...props }: BaseSelect.Value.Props) {\n return <BaseSelect.Value ref={ref} className={withClass('oui-select__value', className)} {...props} />;\n}\n\nexport interface SelectContentProps extends BaseSelect.Popup.Props {\n side?: BaseSelect.Positioner.Props['side'];\n align?: BaseSelect.Positioner.Props['align'];\n sideOffset?: BaseSelect.Positioner.Props['sideOffset'];\n /** Overlap the trigger so the selected item lines up with it (macOS style). */\n alignItemWithTrigger?: boolean;\n positionerProps?: BaseSelect.Positioner.Props;\n}\n\n/** Portal + positioner + popup + list in one. */\nfunction SelectContent({\n side,\n align,\n sideOffset = 6,\n alignItemWithTrigger = false,\n positionerProps,\n className,\n children,\n ref,\n ...props\n}: SelectContentProps) {\n const container = usePortalContainer();\n return (\n <BaseSelect.Portal container={container}>\n <BaseSelect.Positioner\n className=\"oui-select__positioner\"\n side={side}\n align={align}\n sideOffset={sideOffset}\n alignItemWithTrigger={alignItemWithTrigger}\n {...positionerProps}\n >\n <BaseSelect.Popup ref={ref} className={withClass('oui-select__popup', className)} {...props}>\n <BaseSelect.List className=\"oui-select__list\">{children}</BaseSelect.List>\n </BaseSelect.Popup>\n </BaseSelect.Positioner>\n </BaseSelect.Portal>\n );\n}\n\nfunction SelectItem({ className, children, ref, ...props }: BaseSelect.Item.Props) {\n return (\n <BaseSelect.Item ref={ref} className={withClass('oui-select__item', className)} {...props}>\n <BaseSelect.ItemText className=\"oui-select__item-text\">{children}</BaseSelect.ItemText>\n <BaseSelect.ItemIndicator className=\"oui-select__item-indicator\">\n <CheckIcon />\n </BaseSelect.ItemIndicator>\n </BaseSelect.Item>\n );\n}\n\nfunction SelectGroup({ className, ref, ...props }: BaseSelect.Group.Props) {\n return <BaseSelect.Group ref={ref} className={withClass('oui-select__group', className)} {...props} />;\n}\n\nfunction SelectGroupLabel({ className, ref, ...props }: BaseSelect.GroupLabel.Props) {\n return <BaseSelect.GroupLabel ref={ref} className={withClass('oui-select__group-label', className)} {...props} />;\n}\n\nfunction SelectSeparator({ className, ref, ...props }: BaseSelect.Separator.Props) {\n return <BaseSelect.Separator ref={ref} className={withClass('oui-select__separator', className)} {...props} />;\n}\n\nfunction SelectLabel({ className, ref, ...props }: BaseSelect.Label.Props) {\n return <BaseSelect.Label ref={ref} className={withClass('oui-field__label', className)} {...props} />;\n}\n\n// ─── Convenience component ───────────────────────────────────────────────────\n\nexport interface SelectOption {\n value: string;\n label: React.ReactNode;\n disabled?: boolean;\n}\n\nexport interface SelectOptionGroup {\n label: React.ReactNode;\n items: SelectOption[];\n}\n\ntype RootProps = Omit<BaseSelect.Root.Props<string, false>, 'items' | 'children' | 'multiple'>;\n\nexport interface SelectProps extends RootProps {\n /** Options, or groups of options. */\n items: Array<SelectOption | SelectOptionGroup>;\n label?: React.ReactNode;\n description?: React.ReactNode;\n error?: React.ReactNode;\n placeholder?: React.ReactNode;\n size?: ControlSize;\n /** Props passed to the trigger button (className, style, aria-*). */\n triggerProps?: Omit<SelectTriggerProps, 'size' | 'placeholder'>;\n contentProps?: Omit<SelectContentProps, 'children'>;\n}\n\nfunction isGroup(item: SelectOption | SelectOptionGroup): item is SelectOptionGroup {\n return 'items' in item;\n}\n\nfunction SelectComponent({\n items,\n label,\n description,\n error,\n placeholder = 'Select…',\n size = 'md',\n triggerProps,\n contentProps,\n name,\n disabled,\n required,\n ...rootProps\n}: SelectProps) {\n const flat = items.flatMap((item) => (isGroup(item) ? item.items : [item]));\n return (\n <Field.Root name={name} disabled={disabled} invalid={error ? true : undefined}>\n <BaseSelect.Root items={flat} disabled={disabled} required={required} {...rootProps}>\n {label && (\n <SelectLabel>\n {label}\n {required && (\n <span className=\"oui-field__required\" aria-hidden>\n *\n </span>\n )}\n </SelectLabel>\n )}\n <SelectTrigger size={size} placeholder={placeholder} {...triggerProps} />\n <SelectContent {...contentProps}>\n {items.map((item, index) =>\n isGroup(item) ? (\n <SelectGroup key={index}>\n <SelectGroupLabel>{item.label}</SelectGroupLabel>\n {item.items.map((option) => (\n <SelectItem key={option.value} value={option.value} disabled={option.disabled}>\n {option.label}\n </SelectItem>\n ))}\n </SelectGroup>\n ) : (\n <SelectItem key={item.value} value={item.value} disabled={item.disabled}>\n {item.label}\n </SelectItem>\n ),\n )}\n </SelectContent>\n </BaseSelect.Root>\n {description && <Field.Description>{description}</Field.Description>}\n {error ? <Field.Error match>{error}</Field.Error> : <Field.Error />}\n </Field.Root>\n );\n}\n\n/**\n * `<Select items={…} />` renders a complete labelled select. For full control\n * compose the parts: `Select.Root`, `Select.Trigger`, `Select.Content`,\n * `Select.Item`, `Select.Group`, `Select.GroupLabel`, `Select.Separator`.\n */\nexport const Select = Object.assign(SelectComponent, {\n Root: BaseSelect.Root,\n Label: SelectLabel,\n Trigger: SelectTrigger,\n Value: SelectValue,\n Content: SelectContent,\n Item: SelectItem,\n Group: SelectGroup,\n GroupLabel: SelectGroupLabel,\n Separator: SelectSeparator,\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","names":["React","Select","BaseSelect","withClass","usePortalContainer","CheckIcon","ChevronDownIcon","Field","ControlSize","SelectTriggerProps","Trigger","Props","size","placeholder","ReactNode","SelectTrigger","t0","$","_c","children","className","props","ref","t1","undefined","t2","t3","t4","SelectValue","SelectContentProps","Popup","side","Positioner","align","sideOffset","alignItemWithTrigger","positionerProps","SelectContent","container","t5","t6","t7","SelectItem","Symbol","for","SelectGroup","SelectGroupLabel","SelectSeparator","SelectLabel","SelectOption","value","label","disabled","SelectOptionGroup","items","RootProps","Omit","Root","SelectProps","Array","description","error","triggerProps","contentProps","isGroup","item","SelectComponent","name","required","rootProps","flatMap","_temp","flat","map","_temp3","t8","t9","t10","t11","t12","item_0","index","_temp2","option","Object","assign","Label","Value","Content","Item","Group","GroupLabel","Separator","_c","_Fragment","BaseSelect","Select"],"sources":["../../../src/components/select/Select.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Select as BaseSelect } from '@base-ui/react/select';\nimport { withClass } from '../../utils/cx';\nimport { usePortalContainer } from '../../utils/portal';\nimport { CheckIcon, ChevronDownIcon } from '../../icons';\nimport { Field } from '../field/Field';\nimport type { ControlSize } from '../input/Input';\n\n// ─── Parts ───────────────────────────────────────────────────────────────────\n\nexport interface SelectTriggerProps extends BaseSelect.Trigger.Props {\n /** Control height. */\n size?: ControlSize;\n /** Placeholder shown by the default value slot. */\n placeholder?: React.ReactNode;\n}\n\n/** The select button. Renders the value and chevron unless children are given. */\nfunction SelectTrigger({ size = 'md', placeholder, className, children, ref, ...props }: SelectTriggerProps) {\n return (\n <BaseSelect.Trigger ref={ref} className={withClass('oui-select__trigger', className)} data-size={size} {...props}>\n {children ?? (\n <>\n <BaseSelect.Value className=\"oui-select__value\" placeholder={placeholder} />\n <BaseSelect.Icon className=\"oui-select__icon\">\n <ChevronDownIcon />\n </BaseSelect.Icon>\n </>\n )}\n </BaseSelect.Trigger>\n );\n}\n\nfunction SelectValue({ className, ref, ...props }: BaseSelect.Value.Props) {\n return <BaseSelect.Value ref={ref} className={withClass('oui-select__value', className)} {...props} />;\n}\n\nexport interface SelectContentProps extends BaseSelect.Popup.Props {\n /** Which side of the trigger the list opens on. */\n side?: BaseSelect.Positioner.Props['side'];\n /** Alignment along that side. */\n align?: BaseSelect.Positioner.Props['align'];\n /** Distance from the trigger in px. */\n sideOffset?: BaseSelect.Positioner.Props['sideOffset'];\n /** Overlap the trigger so the selected item lines up with it (macOS style). */\n alignItemWithTrigger?: boolean;\n /** Props for the positioner element that places the popup. */\n positionerProps?: BaseSelect.Positioner.Props;\n}\n\n/** Portal + positioner + popup + list in one. */\nfunction SelectContent({\n side,\n align,\n sideOffset = 6,\n alignItemWithTrigger = false,\n positionerProps,\n className,\n children,\n ref,\n ...props\n}: SelectContentProps) {\n const container = usePortalContainer();\n return (\n <BaseSelect.Portal container={container}>\n <BaseSelect.Positioner\n className=\"oui-select__positioner\"\n side={side}\n align={align}\n sideOffset={sideOffset}\n alignItemWithTrigger={alignItemWithTrigger}\n {...positionerProps}\n >\n <BaseSelect.Popup ref={ref} className={withClass('oui-select__popup', className)} {...props}>\n <BaseSelect.List className=\"oui-select__list\">{children}</BaseSelect.List>\n </BaseSelect.Popup>\n </BaseSelect.Positioner>\n </BaseSelect.Portal>\n );\n}\n\nfunction SelectItem({ className, children, ref, ...props }: BaseSelect.Item.Props) {\n return (\n <BaseSelect.Item ref={ref} className={withClass('oui-select__item', className)} {...props}>\n <BaseSelect.ItemText className=\"oui-select__item-text\">{children}</BaseSelect.ItemText>\n <BaseSelect.ItemIndicator className=\"oui-select__item-indicator\">\n <CheckIcon />\n </BaseSelect.ItemIndicator>\n </BaseSelect.Item>\n );\n}\n\nfunction SelectGroup({ className, ref, ...props }: BaseSelect.Group.Props) {\n return <BaseSelect.Group ref={ref} className={withClass('oui-select__group', className)} {...props} />;\n}\n\nfunction SelectGroupLabel({ className, ref, ...props }: BaseSelect.GroupLabel.Props) {\n return <BaseSelect.GroupLabel ref={ref} className={withClass('oui-select__group-label', className)} {...props} />;\n}\n\nfunction SelectSeparator({ className, ref, ...props }: BaseSelect.Separator.Props) {\n return <BaseSelect.Separator ref={ref} className={withClass('oui-select__separator', className)} {...props} />;\n}\n\nfunction SelectLabel({ className, ref, ...props }: BaseSelect.Label.Props) {\n return <BaseSelect.Label ref={ref} className={withClass('oui-field__label', className)} {...props} />;\n}\n\n// ─── Convenience component ───────────────────────────────────────────────────\n\nexport interface SelectOption {\n value: string;\n label: React.ReactNode;\n disabled?: boolean;\n}\n\nexport interface SelectOptionGroup {\n label: React.ReactNode;\n items: SelectOption[];\n}\n\ntype RootProps = Omit<BaseSelect.Root.Props<string, false>, 'items' | 'children' | 'multiple'>;\n\nexport interface SelectProps extends RootProps {\n /** Options, or groups of options. */\n items: Array<SelectOption | SelectOptionGroup>;\n /** Visible field label. */\n label?: React.ReactNode;\n /** Help text under the trigger. */\n description?: React.ReactNode;\n /** Error message. When set, the field is marked invalid. */\n error?: React.ReactNode;\n /** Text shown while nothing is selected. */\n placeholder?: React.ReactNode;\n /** Control height. */\n size?: ControlSize;\n /** Props passed to the trigger button (className, style, aria-*). */\n triggerProps?: Omit<SelectTriggerProps, 'size' | 'placeholder'>;\n /** Props for the popup (side, align, className…). */\n contentProps?: Omit<SelectContentProps, 'children'>;\n}\n\nfunction isGroup(item: SelectOption | SelectOptionGroup): item is SelectOptionGroup {\n return 'items' in item;\n}\n\nfunction SelectComponent({\n items,\n label,\n description,\n error,\n placeholder = 'Select…',\n size = 'md',\n triggerProps,\n contentProps,\n name,\n disabled,\n required,\n ...rootProps\n}: SelectProps) {\n const flat = items.flatMap((item) => (isGroup(item) ? item.items : [item]));\n return (\n <Field.Root name={name} disabled={disabled} invalid={error ? true : undefined}>\n <BaseSelect.Root items={flat} disabled={disabled} required={required} {...rootProps}>\n {label && (\n <SelectLabel>\n {label}\n {required && (\n <span className=\"oui-field__required\" aria-hidden>\n *\n </span>\n )}\n </SelectLabel>\n )}\n <SelectTrigger size={size} placeholder={placeholder} {...triggerProps} />\n <SelectContent {...contentProps}>\n {items.map((item, index) =>\n isGroup(item) ? (\n <SelectGroup key={index}>\n <SelectGroupLabel>{item.label}</SelectGroupLabel>\n {item.items.map((option) => (\n <SelectItem key={option.value} value={option.value} disabled={option.disabled}>\n {option.label}\n </SelectItem>\n ))}\n </SelectGroup>\n ) : (\n <SelectItem key={item.value} value={item.value} disabled={item.disabled}>\n {item.label}\n </SelectItem>\n ),\n )}\n </SelectContent>\n </BaseSelect.Root>\n {description && <Field.Description>{description}</Field.Description>}\n {error ? <Field.Error match>{error}</Field.Error> : <Field.Error />}\n </Field.Root>\n );\n}\n\n/**\n * `<Select items={…} />` renders a complete labelled select. For full control\n * compose the parts: `Select.Root`, `Select.Trigger`, `Select.Content`,\n * `Select.Item`, `Select.Group`, `Select.GroupLabel`, `Select.Separator`.\n */\nexport const Select = Object.assign(SelectComponent, {\n Root: BaseSelect.Root,\n Label: SelectLabel,\n Trigger: SelectTrigger,\n Value: SelectValue,\n Content: SelectContent,\n Item: SelectItem,\n Group: SelectGroup,\n GroupLabel: SelectGroupLabel,\n Separator: SelectSeparator,\n});\n"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { Separator as BaseSeparator } from '@base-ui/react/separator';
2
2
  export interface SeparatorProps extends BaseSeparator.Props {
3
3
  }
4
+ /** Thin divider line. Set `orientation="vertical"` for a vertical rule. */
4
5
  export declare function Separator({ className, ref, ...props }: SeparatorProps): import("react").JSX.Element;
@@ -4,6 +4,7 @@ import { c } from "react/compiler-runtime";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  import { Separator } from "@base-ui/react/separator";
6
6
  //#region src/components/separator/Separator.tsx
7
+ /** Thin divider line. Set `orientation="vertical"` for a vertical rule. */
7
8
  function Separator$1(t0) {
8
9
  const $ = c(10);
9
10
  let className;
@@ -1 +1 @@
1
- {"version":3,"file":"Separator.js","names":["Separator","BaseSeparator","withClass","SeparatorProps","Props","t0","$","_c","className","props","ref","t1","t2","Separator","_c","BaseSeparator"],"sources":["../../../src/components/separator/Separator.tsx"],"sourcesContent":["import { Separator as BaseSeparator } from '@base-ui/react/separator';\nimport { withClass } from '../../utils/cx';\n\nexport interface SeparatorProps extends BaseSeparator.Props {}\n\nexport function Separator({ className, ref, ...props }: SeparatorProps) {\n return <BaseSeparator ref={ref} className={withClass('oui-separator', className)} {...props} />;\n}\n"],"mappings":";;;;;;AAKA,SAAOA,YAAAK,IAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAJ,EAAA,OAAAD,IAAA;EAAmB,CAAA,CAAAG,WAAAE,KAAA,GAAAD,SAAAJ;EAA4CC,EAAA,KAAAD;EAAAC,EAAA,KAAAE;EAAAF,EAAA,KAAAG;EAAAH,EAAA,KAAAI;CAAA,OAAA;EAAAF,YAAAF,EAAA;EAAAG,QAAAH,EAAA;EAAAI,MAAAJ,EAAA;CAAA;CAAA,IAAAK;CAAA,IAAAL,EAAA,OAAAE,WAAA;EACzBG,KAAAT,UAAU,iBAAiBM,SAAS;EAACF,EAAA,KAAAE;EAAAF,EAAA,KAAAK;CAAA,OAAAA,KAAAL,EAAA;CAAA,IAAAM;CAAA,IAAAN,EAAA,OAAAG,SAAAH,EAAA,OAAAI,OAAAJ,EAAA,OAAAK,IAAA;EAAzEC,KAAA,oBAACG,WAAD;GAAoBL;GAAgB,WAAAC;GAAqC,GAAMF;EAAK,CAAA;EAAIH,EAAA,KAAAG;EAAAH,EAAA,KAAAI;EAAAJ,EAAA,KAAAK;EAAAL,EAAA,KAAAM;CAAA,OAAAA,KAAAN,EAAA;CAAA,OAAxFM;AAAwF"}
1
+ {"version":3,"file":"Separator.js","names":["Separator","BaseSeparator","withClass","SeparatorProps","Props","t0","$","_c","className","props","ref","t1","t2","Separator","_c","BaseSeparator"],"sources":["../../../src/components/separator/Separator.tsx"],"sourcesContent":["import { Separator as BaseSeparator } from '@base-ui/react/separator';\nimport { withClass } from '../../utils/cx';\n\nexport interface SeparatorProps extends BaseSeparator.Props {}\n\n/** Thin divider line. Set `orientation=\"vertical\"` for a vertical rule. */\nexport function Separator({ className, ref, ...props }: SeparatorProps) {\n return <BaseSeparator ref={ref} className={withClass('oui-separator', className)} {...props} />;\n}\n"],"mappings":";;;;;;;AAMA,SAAOA,YAAAK,IAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAJ,EAAA,OAAAD,IAAA;EAAmB,CAAA,CAAAG,WAAAE,KAAA,GAAAD,SAAAJ;EAA4CC,EAAA,KAAAD;EAAAC,EAAA,KAAAE;EAAAF,EAAA,KAAAG;EAAAH,EAAA,KAAAI;CAAA,OAAA;EAAAF,YAAAF,EAAA;EAAAG,QAAAH,EAAA;EAAAI,MAAAJ,EAAA;CAAA;CAAA,IAAAK;CAAA,IAAAL,EAAA,OAAAE,WAAA;EACzBG,KAAAT,UAAU,iBAAiBM,SAAS;EAACF,EAAA,KAAAE;EAAAF,EAAA,KAAAK;CAAA,OAAAA,KAAAL,EAAA;CAAA,IAAAM;CAAA,IAAAN,EAAA,OAAAG,SAAAH,EAAA,OAAAI,OAAAJ,EAAA,OAAAK,IAAA;EAAzEC,KAAA,oBAACG,WAAD;GAAoBL;GAAgB,WAAAC;GAAqC,GAAMF;EAAK,CAAA;EAAIH,EAAA,KAAAG;EAAAH,EAAA,KAAAI;EAAAJ,EAAA,KAAAK;EAAAL,EAAA,KAAAM;CAAA,OAAAA,KAAAN,EAAA;CAAA,OAAxFM;AAAwF"}
@@ -1,16 +1,23 @@
1
1
  import * as React from 'react';
2
2
  export interface SkeletonProps extends React.HTMLAttributes<HTMLSpanElement> {
3
+ /** Ref to the placeholder element. */
3
4
  ref?: React.Ref<HTMLSpanElement>;
5
+ /** Width in px (number) or any CSS length. */
4
6
  width?: number | string;
7
+ /** Height in px (number) or any CSS length. */
5
8
  height?: number | string;
6
9
  /** Render as a circle (uses `width` for both dimensions). */
7
10
  circle?: boolean;
11
+ /** Corner radius in px (number) or any CSS length. */
8
12
  radius?: number | string;
9
13
  }
10
14
  /** Pulsing placeholder for content that is still loading. */
11
15
  export declare function Skeleton({ width, height, circle, radius, className, style, ref, ...props }: SkeletonProps): React.JSX.Element;
12
16
  export interface SkeletonTextProps extends React.HTMLAttributes<HTMLDivElement> {
17
+ /** Ref to the wrapper element. */
13
18
  ref?: React.Ref<HTMLDivElement>;
19
+ /** Number of placeholder lines. */
14
20
  lines?: number;
15
21
  }
22
+ /** Skeleton placeholder shaped like a paragraph; the last line is shorter. */
16
23
  export declare function SkeletonText({ lines, className, ref, ...props }: SkeletonTextProps): React.JSX.Element;
@@ -77,6 +77,7 @@ function Skeleton(t0) {
77
77
  } else t5 = $[21];
78
78
  return t5;
79
79
  }
80
+ /** Skeleton placeholder shaped like a paragraph; the last line is shorter. */
80
81
  function SkeletonText(t0) {
81
82
  const $ = c(14);
82
83
  let className;
@@ -1 +1 @@
1
- {"version":3,"file":"Skeleton.js","names":["React","cx","SkeletonProps","HTMLAttributes","HTMLSpanElement","ref","Ref","width","height","circle","radius","Skeleton","t0","$","_c","className","props","style","t1","t2","undefined","t3","t4","borderRadius","t5","SkeletonTextProps","HTMLDivElement","lines","SkeletonText","Array","from","length","_","i","_c"],"sources":["../../../src/components/skeleton/Skeleton.tsx"],"sourcesContent":["import * as React from 'react';\nimport { cx } from '../../utils/cx';\n\nexport interface SkeletonProps extends React.HTMLAttributes<HTMLSpanElement> {\n ref?: React.Ref<HTMLSpanElement>;\n width?: number | string;\n height?: number | string;\n /** Render as a circle (uses `width` for both dimensions). */\n circle?: boolean;\n radius?: number | string;\n}\n\n/** Pulsing placeholder for content that is still loading. */\nexport function Skeleton({ width, height, circle, radius, className, style, ref, ...props }: SkeletonProps) {\n return (\n <span\n ref={ref}\n aria-hidden\n className={cx('oui-skeleton', className)}\n data-circle={circle || undefined}\n style={{\n width,\n height: circle ? width : height,\n borderRadius: radius,\n ...style,\n }}\n {...props}\n />\n );\n}\n\nexport interface SkeletonTextProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement>;\n lines?: number;\n}\n\nexport function SkeletonText({ lines = 3, className, ref, ...props }: SkeletonTextProps) {\n return (\n <div ref={ref} aria-hidden className={cx('oui-skeleton-text', className)} {...props}>\n {Array.from({ length: lines }, (_, i) => (\n <Skeleton key={i} height=\"0.8rem\" width={i === lines - 1 && lines > 1 ? '60%' : '100%'} />\n ))}\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Skeleton.js","names":["React","cx","SkeletonProps","HTMLAttributes","HTMLSpanElement","ref","Ref","width","height","circle","radius","Skeleton","t0","$","_c","className","props","style","t1","t2","undefined","t3","t4","borderRadius","t5","SkeletonTextProps","HTMLDivElement","lines","SkeletonText","Array","from","length","_","i","_c"],"sources":["../../../src/components/skeleton/Skeleton.tsx"],"sourcesContent":["import * as React from 'react';\nimport { cx } from '../../utils/cx';\n\nexport interface SkeletonProps extends React.HTMLAttributes<HTMLSpanElement> {\n /** Ref to the placeholder element. */\n ref?: React.Ref<HTMLSpanElement>;\n /** Width in px (number) or any CSS length. */\n width?: number | string;\n /** Height in px (number) or any CSS length. */\n height?: number | string;\n /** Render as a circle (uses `width` for both dimensions). */\n circle?: boolean;\n /** Corner radius in px (number) or any CSS length. */\n radius?: number | string;\n}\n\n/** Pulsing placeholder for content that is still loading. */\nexport function Skeleton({ width, height, circle, radius, className, style, ref, ...props }: SkeletonProps) {\n return (\n <span\n ref={ref}\n aria-hidden\n className={cx('oui-skeleton', className)}\n data-circle={circle || undefined}\n style={{\n width,\n height: circle ? width : height,\n borderRadius: radius,\n ...style,\n }}\n {...props}\n />\n );\n}\n\nexport interface SkeletonTextProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Ref to the wrapper element. */\n ref?: React.Ref<HTMLDivElement>;\n /** Number of placeholder lines. */\n lines?: number;\n}\n\n/** Skeleton placeholder shaped like a paragraph; the last line is shorter. */\nexport function SkeletonText({ lines = 3, className, ref, ...props }: SkeletonTextProps) {\n return (\n <div ref={ref} aria-hidden className={cx('oui-skeleton-text', className)} {...props}>\n {Array.from({ length: lines }, (_, i) => (\n <Skeleton key={i} height=\"0.8rem\" width={i === lines - 1 && lines > 1 ? '60%' : '100%'} />\n ))}\n </div>\n );\n}\n"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { Slider as BaseSlider } from '@base-ui/react/slider';
3
3
  export interface SliderProps extends BaseSlider.Root.Props {
4
+ /** Visible label above the track. */
4
5
  label?: React.ReactNode;
5
6
  /** Show the formatted value next to the label. */
6
7
  showValue?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"Slider.js","names":["React","Slider","BaseSlider","withClass","SliderProps","Root","Props","label","ReactNode","showValue","thumbLabels","t0","$","_c","className","defaultValue","props","ref","value","initial","count","Array","isArray","length","t1","t2","t3","Symbol","for","t4","from","_","index","undefined","t5","Slider","_c","BaseSlider"],"sources":["../../../src/components/slider/Slider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Slider as BaseSlider } from '@base-ui/react/slider';\nimport { withClass } from '../../utils/cx';\n\nexport interface SliderProps extends BaseSlider.Root.Props {\n label?: React.ReactNode;\n /** Show the formatted value next to the label. */\n showValue?: boolean;\n /** Accessible labels for each thumb (needed for range sliders). */\n thumbLabels?: string[];\n}\n\n/** Single value or range (pass an array) slider. */\nexport function Slider({ label, showValue, thumbLabels, className, value, defaultValue, ref, ...props }: SliderProps) {\n const initial = value ?? defaultValue;\n const count = Array.isArray(initial) ? initial.length : 1;\n return (\n <BaseSlider.Root\n ref={ref}\n className={withClass('oui-slider', className)}\n value={value}\n defaultValue={defaultValue}\n {...props}\n >\n {(label || showValue) && (\n <div className=\"oui-slider__header\">\n {label && <BaseSlider.Label className=\"oui-field__label\">{label}</BaseSlider.Label>}\n {showValue && <BaseSlider.Value className=\"oui-slider__value\" />}\n </div>\n )}\n <BaseSlider.Control className=\"oui-slider__control\">\n <BaseSlider.Track className=\"oui-slider__track\">\n <BaseSlider.Indicator className=\"oui-slider__indicator\" />\n {Array.from({ length: count }, (_, index) => (\n <BaseSlider.Thumb\n key={index}\n index={count > 1 ? index : undefined}\n className=\"oui-slider__thumb\"\n aria-label={thumbLabels?.[index]}\n />\n ))}\n </BaseSlider.Track>\n </BaseSlider.Control>\n </BaseSlider.Root>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Slider.js","names":["React","Slider","BaseSlider","withClass","SliderProps","Root","Props","label","ReactNode","showValue","thumbLabels","t0","$","_c","className","defaultValue","props","ref","value","initial","count","Array","isArray","length","t1","t2","t3","Symbol","for","t4","from","_","index","undefined","t5","Slider","_c","BaseSlider"],"sources":["../../../src/components/slider/Slider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Slider as BaseSlider } from '@base-ui/react/slider';\nimport { withClass } from '../../utils/cx';\n\nexport interface SliderProps extends BaseSlider.Root.Props {\n /** Visible label above the track. */\n label?: React.ReactNode;\n /** Show the formatted value next to the label. */\n showValue?: boolean;\n /** Accessible labels for each thumb (needed for range sliders). */\n thumbLabels?: string[];\n}\n\n/** Single value or range (pass an array) slider. */\nexport function Slider({ label, showValue, thumbLabels, className, value, defaultValue, ref, ...props }: SliderProps) {\n const initial = value ?? defaultValue;\n const count = Array.isArray(initial) ? initial.length : 1;\n return (\n <BaseSlider.Root\n ref={ref}\n className={withClass('oui-slider', className)}\n value={value}\n defaultValue={defaultValue}\n {...props}\n >\n {(label || showValue) && (\n <div className=\"oui-slider__header\">\n {label && <BaseSlider.Label className=\"oui-field__label\">{label}</BaseSlider.Label>}\n {showValue && <BaseSlider.Value className=\"oui-slider__value\" />}\n </div>\n )}\n <BaseSlider.Control className=\"oui-slider__control\">\n <BaseSlider.Track className=\"oui-slider__track\">\n <BaseSlider.Indicator className=\"oui-slider__indicator\" />\n {Array.from({ length: count }, (_, index) => (\n <BaseSlider.Thumb\n key={index}\n index={count > 1 ? index : undefined}\n className=\"oui-slider__thumb\"\n aria-label={thumbLabels?.[index]}\n />\n ))}\n </BaseSlider.Track>\n </BaseSlider.Control>\n </BaseSlider.Root>\n );\n}\n"],"mappings":"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"}
@@ -1,9 +1,11 @@
1
1
  import * as React from 'react';
2
2
  export interface SpinnerProps extends React.HTMLAttributes<HTMLSpanElement> {
3
+ /** Ref to the spinner element. */
3
4
  ref?: React.Ref<HTMLSpanElement>;
4
5
  /** Diameter, e.g. `1rem` or `24`. Defaults to `1.25em`. */
5
6
  size?: number | string;
6
7
  /** Accessible label. Set to `null` when a parent already announces loading. */
7
8
  label?: string | null;
8
9
  }
10
+ /** Indeterminate loading indicator that follows `currentColor`. */
9
11
  export declare function Spinner({ size, label, className, style, ref, ...props }: SpinnerProps): React.JSX.Element;
@@ -4,6 +4,7 @@ import { c } from "react/compiler-runtime";
4
4
  import "react";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  //#region src/components/spinner/Spinner.tsx
7
+ /** Indeterminate loading indicator that follows `currentColor`. */
7
8
  function Spinner(t0) {
8
9
  const $ = c(20);
9
10
  let className;