@baseplate-dev/ui-components 0.6.2 → 0.6.3

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 (207) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/LICENSE +114 -123
  3. package/dist/base-styles.css +5 -4
  4. package/dist/components/ui/async-combobox-field/async-combobox-field.d.ts +7 -5
  5. package/dist/components/ui/async-combobox-field/async-combobox-field.d.ts.map +1 -1
  6. package/dist/components/ui/async-combobox-field/async-combobox-field.js +142 -135
  7. package/dist/components/ui/async-combobox-field/async-combobox-field.js.map +1 -1
  8. package/dist/components/ui/async-combobox-field/async-combobox-field.unit.test.d.ts +2 -0
  9. package/dist/components/ui/async-combobox-field/async-combobox-field.unit.test.d.ts.map +1 -0
  10. package/dist/components/ui/async-combobox-field/async-combobox-field.unit.test.js +147 -0
  11. package/dist/components/ui/async-combobox-field/async-combobox-field.unit.test.js.map +1 -0
  12. package/dist/components/ui/autocomplete/autocomplete.d.ts +32 -0
  13. package/dist/components/ui/autocomplete/autocomplete.d.ts.map +1 -0
  14. package/dist/components/ui/autocomplete/autocomplete.js +59 -0
  15. package/dist/components/ui/autocomplete/autocomplete.js.map +1 -0
  16. package/dist/components/ui/badge/badge.d.ts +4 -11
  17. package/dist/components/ui/badge/badge.d.ts.map +1 -1
  18. package/dist/components/ui/badge/badge.js +22 -16
  19. package/dist/components/ui/badge/badge.js.map +1 -1
  20. package/dist/components/ui/breadcrumb/breadcrumb.d.ts +8 -4
  21. package/dist/components/ui/breadcrumb/breadcrumb.d.ts.map +1 -1
  22. package/dist/components/ui/breadcrumb/breadcrumb.js +24 -9
  23. package/dist/components/ui/breadcrumb/breadcrumb.js.map +1 -1
  24. package/dist/components/ui/button/button.d.ts +5 -5
  25. package/dist/components/ui/button/button.d.ts.map +1 -1
  26. package/dist/components/ui/button/button.js +4 -5
  27. package/dist/components/ui/button/button.js.map +1 -1
  28. package/dist/components/ui/checkbox/checkbox.d.ts +2 -3
  29. package/dist/components/ui/checkbox/checkbox.d.ts.map +1 -1
  30. package/dist/components/ui/checkbox/checkbox.js +2 -2
  31. package/dist/components/ui/checkbox/checkbox.js.map +1 -1
  32. package/dist/components/ui/checkbox-field/checkbox-field.d.ts +2 -2
  33. package/dist/components/ui/checkbox-field/checkbox-field.d.ts.map +1 -1
  34. package/dist/components/ui/checkbox-field/checkbox-field.js +8 -5
  35. package/dist/components/ui/checkbox-field/checkbox-field.js.map +1 -1
  36. package/dist/components/ui/code-editor-field/code-editor-field.d.ts.map +1 -1
  37. package/dist/components/ui/code-editor-field/code-editor-field.js +7 -7
  38. package/dist/components/ui/code-editor-field/code-editor-field.js.map +1 -1
  39. package/dist/components/ui/collapsible/collapsible.d.ts +4 -5
  40. package/dist/components/ui/collapsible/collapsible.d.ts.map +1 -1
  41. package/dist/components/ui/collapsible/collapsible.js +3 -4
  42. package/dist/components/ui/collapsible/collapsible.js.map +1 -1
  43. package/dist/components/ui/color-picker-field/color-picker-field.d.ts.map +1 -1
  44. package/dist/components/ui/color-picker-field/color-picker-field.js +9 -9
  45. package/dist/components/ui/color-picker-field/color-picker-field.js.map +1 -1
  46. package/dist/components/ui/combobox/combobox.d.ts +31 -69
  47. package/dist/components/ui/combobox/combobox.d.ts.map +1 -1
  48. package/dist/components/ui/combobox/combobox.js +62 -167
  49. package/dist/components/ui/combobox/combobox.js.map +1 -1
  50. package/dist/components/ui/combobox-field/combobox-field.d.ts +7 -3
  51. package/dist/components/ui/combobox-field/combobox-field.d.ts.map +1 -1
  52. package/dist/components/ui/combobox-field/combobox-field.js +15 -23
  53. package/dist/components/ui/combobox-field/combobox-field.js.map +1 -1
  54. package/dist/components/ui/date-picker-field/date-picker-field.d.ts.map +1 -1
  55. package/dist/components/ui/date-picker-field/date-picker-field.js +3 -3
  56. package/dist/components/ui/date-picker-field/date-picker-field.js.map +1 -1
  57. package/dist/components/ui/date-time-picker-field/date-time-picker-field.d.ts.map +1 -1
  58. package/dist/components/ui/date-time-picker-field/date-time-picker-field.js +3 -3
  59. package/dist/components/ui/date-time-picker-field/date-time-picker-field.js.map +1 -1
  60. package/dist/components/ui/dialog/dialog.d.ts +15 -13
  61. package/dist/components/ui/dialog/dialog.d.ts.map +1 -1
  62. package/dist/components/ui/dialog/dialog.js +12 -13
  63. package/dist/components/ui/dialog/dialog.js.map +1 -1
  64. package/dist/components/ui/dropdown/dropdown.d.ts +24 -16
  65. package/dist/components/ui/dropdown/dropdown.d.ts.map +1 -1
  66. package/dist/components/ui/dropdown/dropdown.js +31 -27
  67. package/dist/components/ui/dropdown/dropdown.js.map +1 -1
  68. package/dist/components/ui/field/field.d.ts +34 -0
  69. package/dist/components/ui/field/field.d.ts.map +1 -0
  70. package/dist/components/ui/field/field.js +77 -0
  71. package/dist/components/ui/field/field.js.map +1 -0
  72. package/dist/components/ui/form-action-bar/form-action-bar.d.ts.map +1 -1
  73. package/dist/components/ui/form-action-bar/form-action-bar.js +1 -1
  74. package/dist/components/ui/form-action-bar/form-action-bar.js.map +1 -1
  75. package/dist/components/ui/form-item/form-item.d.ts +6 -4
  76. package/dist/components/ui/form-item/form-item.d.ts.map +1 -1
  77. package/dist/components/ui/form-item/form-item.js +17 -3
  78. package/dist/components/ui/form-item/form-item.js.map +1 -1
  79. package/dist/components/ui/index.d.ts +5 -3
  80. package/dist/components/ui/index.d.ts.map +1 -1
  81. package/dist/components/ui/index.js +5 -3
  82. package/dist/components/ui/index.js.map +1 -1
  83. package/dist/components/ui/input-field/input-field.d.ts.map +1 -1
  84. package/dist/components/ui/input-field/input-field.js +7 -5
  85. package/dist/components/ui/input-field/input-field.js.map +1 -1
  86. package/dist/components/ui/input-group/input-group.d.ts +26 -0
  87. package/dist/components/ui/input-group/input-group.d.ts.map +1 -0
  88. package/dist/components/ui/input-group/input-group.js +65 -0
  89. package/dist/components/ui/input-group/input-group.js.map +1 -0
  90. package/dist/components/ui/label/label.d.ts +1 -2
  91. package/dist/components/ui/label/label.d.ts.map +1 -1
  92. package/dist/components/ui/label/label.js +3 -2
  93. package/dist/components/ui/label/label.js.map +1 -1
  94. package/dist/components/ui/multi-combobox-field/multi-combobox-field.d.ts +2 -2
  95. package/dist/components/ui/multi-combobox-field/multi-combobox-field.d.ts.map +1 -1
  96. package/dist/components/ui/multi-combobox-field/multi-combobox-field.js +23 -24
  97. package/dist/components/ui/multi-combobox-field/multi-combobox-field.js.map +1 -1
  98. package/dist/components/ui/multi-switch-field/multi-switch-field.js +3 -3
  99. package/dist/components/ui/multi-switch-field/multi-switch-field.js.map +1 -1
  100. package/dist/components/ui/navigation-menu/navigation-menu.d.ts +16 -15
  101. package/dist/components/ui/navigation-menu/navigation-menu.d.ts.map +1 -1
  102. package/dist/components/ui/navigation-menu/navigation-menu.js +17 -16
  103. package/dist/components/ui/navigation-menu/navigation-menu.js.map +1 -1
  104. package/dist/components/ui/navigation-tabs/navigation-tabs.d.ts +6 -3
  105. package/dist/components/ui/navigation-tabs/navigation-tabs.d.ts.map +1 -1
  106. package/dist/components/ui/navigation-tabs/navigation-tabs.js +16 -4
  107. package/dist/components/ui/navigation-tabs/navigation-tabs.js.map +1 -1
  108. package/dist/components/ui/popover/popover.d.ts +8 -10
  109. package/dist/components/ui/popover/popover.d.ts.map +1 -1
  110. package/dist/components/ui/popover/popover.js +12 -6
  111. package/dist/components/ui/popover/popover.js.map +1 -1
  112. package/dist/components/ui/scroll-area/scroll-area.d.ts +3 -4
  113. package/dist/components/ui/scroll-area/scroll-area.d.ts.map +1 -1
  114. package/dist/components/ui/scroll-area/scroll-area.js +2 -4
  115. package/dist/components/ui/scroll-area/scroll-area.js.map +1 -1
  116. package/dist/components/ui/select/select.d.ts +12 -17
  117. package/dist/components/ui/select/select.d.ts.map +1 -1
  118. package/dist/components/ui/select/select.js +20 -30
  119. package/dist/components/ui/select/select.js.map +1 -1
  120. package/dist/components/ui/select-field/select-field.d.ts +1 -0
  121. package/dist/components/ui/select-field/select-field.d.ts.map +1 -1
  122. package/dist/components/ui/select-field/select-field.js +6 -12
  123. package/dist/components/ui/select-field/select-field.js.map +1 -1
  124. package/dist/components/ui/separator/separator.d.ts +2 -3
  125. package/dist/components/ui/separator/separator.d.ts.map +1 -1
  126. package/dist/components/ui/separator/separator.js +3 -3
  127. package/dist/components/ui/separator/separator.js.map +1 -1
  128. package/dist/components/ui/sheet/sheet.d.ts +11 -11
  129. package/dist/components/ui/sheet/sheet.d.ts.map +1 -1
  130. package/dist/components/ui/sheet/sheet.js +7 -10
  131. package/dist/components/ui/sheet/sheet.js.map +1 -1
  132. package/dist/components/ui/sidebar/sidebar.d.ts +6 -12
  133. package/dist/components/ui/sidebar/sidebar.d.ts.map +1 -1
  134. package/dist/components/ui/sidebar/sidebar.js +79 -28
  135. package/dist/components/ui/sidebar/sidebar.js.map +1 -1
  136. package/dist/components/ui/skeleton/skeleton.js +1 -1
  137. package/dist/components/ui/skeleton/skeleton.js.map +1 -1
  138. package/dist/components/ui/slider/slider.d.ts +13 -0
  139. package/dist/components/ui/slider/slider.d.ts.map +1 -0
  140. package/dist/components/ui/slider/slider.js +22 -0
  141. package/dist/components/ui/slider/slider.js.map +1 -0
  142. package/dist/components/ui/spinner/spinner.d.ts +10 -0
  143. package/dist/components/ui/spinner/spinner.d.ts.map +1 -0
  144. package/dist/components/ui/spinner/spinner.js +13 -0
  145. package/dist/components/ui/spinner/spinner.js.map +1 -0
  146. package/dist/components/ui/switch/switch.d.ts +7 -3
  147. package/dist/components/ui/switch/switch.d.ts.map +1 -1
  148. package/dist/components/ui/switch/switch.js +6 -3
  149. package/dist/components/ui/switch/switch.js.map +1 -1
  150. package/dist/components/ui/switch-field/switch-field.d.ts +5 -3
  151. package/dist/components/ui/switch-field/switch-field.d.ts.map +1 -1
  152. package/dist/components/ui/switch-field/switch-field.js +7 -4
  153. package/dist/components/ui/switch-field/switch-field.js.map +1 -1
  154. package/dist/components/ui/tabs/tabs.d.ts +13 -7
  155. package/dist/components/ui/tabs/tabs.d.ts.map +1 -1
  156. package/dist/components/ui/tabs/tabs.js +23 -8
  157. package/dist/components/ui/tabs/tabs.js.map +1 -1
  158. package/dist/components/ui/textarea/textarea.js +1 -1
  159. package/dist/components/ui/textarea/textarea.js.map +1 -1
  160. package/dist/components/ui/textarea-field/textarea-field.d.ts.map +1 -1
  161. package/dist/components/ui/textarea-field/textarea-field.js +7 -5
  162. package/dist/components/ui/textarea-field/textarea-field.js.map +1 -1
  163. package/dist/components/ui/tooltip/tooltip.d.ts +10 -6
  164. package/dist/components/ui/tooltip/tooltip.d.ts.map +1 -1
  165. package/dist/components/ui/tooltip/tooltip.js +11 -6
  166. package/dist/components/ui/tooltip/tooltip.js.map +1 -1
  167. package/dist/constants/strings.d.ts +1 -0
  168. package/dist/constants/strings.d.ts.map +1 -1
  169. package/dist/constants/strings.js +1 -0
  170. package/dist/constants/strings.js.map +1 -1
  171. package/dist/contexts/component-strings.d.ts +1 -0
  172. package/dist/contexts/component-strings.d.ts.map +1 -1
  173. package/dist/hooks/use-event-callback.d.ts +2 -2
  174. package/dist/hooks/use-event-callback.d.ts.map +1 -1
  175. package/dist/hooks/use-event-callback.js +2 -1
  176. package/dist/hooks/use-event-callback.js.map +1 -1
  177. package/dist/styles/button.d.ts +1 -1
  178. package/dist/styles/button.d.ts.map +1 -1
  179. package/dist/styles/button.js +15 -11
  180. package/dist/styles/button.js.map +1 -1
  181. package/dist/styles/index.d.ts +0 -1
  182. package/dist/styles/index.d.ts.map +1 -1
  183. package/dist/styles/index.js +0 -1
  184. package/dist/styles/index.js.map +1 -1
  185. package/dist/theme.css +8 -0
  186. package/dist/utilities.css +100 -0
  187. package/package.json +10 -10
  188. package/dist/components/ui/color-picker/color-picker.d.ts +0 -16
  189. package/dist/components/ui/color-picker/color-picker.d.ts.map +0 -1
  190. package/dist/components/ui/color-picker/color-picker.js +0 -19
  191. package/dist/components/ui/color-picker/color-picker.js.map +0 -1
  192. package/dist/components/ui/combobox/combobox.test.d.ts +0 -2
  193. package/dist/components/ui/combobox/combobox.test.d.ts.map +0 -1
  194. package/dist/components/ui/combobox/combobox.test.js +0 -148
  195. package/dist/components/ui/combobox/combobox.test.js.map +0 -1
  196. package/dist/components/ui/command/command.d.ts +0 -22
  197. package/dist/components/ui/command/command.d.ts.map +0 -1
  198. package/dist/components/ui/command/command.js +0 -40
  199. package/dist/components/ui/command/command.js.map +0 -1
  200. package/dist/components/ui/multi-combobox/multi-combobox.d.ts +0 -47
  201. package/dist/components/ui/multi-combobox/multi-combobox.d.ts.map +0 -1
  202. package/dist/components/ui/multi-combobox/multi-combobox.js +0 -114
  203. package/dist/components/ui/multi-combobox/multi-combobox.js.map +0 -1
  204. package/dist/styles/select.d.ts +0 -9
  205. package/dist/styles/select.d.ts.map +0 -1
  206. package/dist/styles/select.js +0 -22
  207. package/dist/styles/select.js.map +0 -1
@@ -1,47 +0,0 @@
1
- import React from 'react';
2
- import { CommandGroup } from '../command/command.js';
3
- interface MultiComboboxContextValue {
4
- selectedValues: MultiComboboxOption[];
5
- onSelect: (value: string, label: string | undefined, selected: boolean) => void;
6
- disabled?: boolean;
7
- isOpen: boolean;
8
- setIsOpen: (open: boolean) => void;
9
- inputId: string;
10
- filterId: string;
11
- searchQuery: string;
12
- setSearchQuery: (query: string) => void;
13
- }
14
- interface MultiComboboxOption {
15
- label?: string;
16
- value: string;
17
- }
18
- interface MultiComboboxProps {
19
- children?: React.ReactNode;
20
- value?: MultiComboboxOption[];
21
- onChange?: (value: MultiComboboxOption[]) => void;
22
- disabled?: boolean;
23
- }
24
- declare function MultiCombobox({ children, value, onChange, disabled, }: MultiComboboxProps): React.ReactElement;
25
- export declare function useMultiComboboxContext(): MultiComboboxContextValue;
26
- interface MultiComboboxInputProps {
27
- className?: string;
28
- placeholder?: string;
29
- }
30
- declare function MultiComboboxInput({ className, placeholder, }: MultiComboboxInputProps): React.ReactElement;
31
- interface MultiComboboxContentProps extends React.ComponentPropsWithRef<'div'> {
32
- children?: React.ReactNode;
33
- className?: string;
34
- maxHeight?: string;
35
- style?: React.CSSProperties;
36
- }
37
- declare function MultiComboboxContent({ children, className, maxHeight, style, ...rest }: MultiComboboxContentProps): React.ReactElement;
38
- declare function MultiComboboxEmpty({ className, ...props }: React.ComponentPropsWithRef<'div'>): React.ReactElement;
39
- declare const MultiComboboxGroup: typeof CommandGroup;
40
- interface MultiComboboxItemProps extends Omit<React.ComponentPropsWithRef<'div'>, 'onSelect'> {
41
- disabled?: boolean;
42
- value: string;
43
- label?: string;
44
- }
45
- declare function MultiComboboxItem({ value, className, label, children, ...rest }: MultiComboboxItemProps): React.ReactElement;
46
- export { MultiCombobox, MultiComboboxContent, MultiComboboxEmpty, MultiComboboxGroup, MultiComboboxInput, MultiComboboxItem, };
47
- //# sourceMappingURL=multi-combobox.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"multi-combobox.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/multi-combobox/multi-combobox.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmC,MAAM,OAAO,CAAC;AAYxD,OAAO,EAGL,YAAY,EAIb,MAAM,uBAAuB,CAAC;AAQ/B,UAAU,yBAAyB;IACjC,cAAc,EAAE,mBAAmB,EAAE,CAAC;IACtC,QAAQ,EAAE,CACR,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,QAAQ,EAAE,OAAO,KACd,IAAI,CAAC;IACV,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAKD,UAAU,mBAAmB;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAC9B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,iBAAS,aAAa,CAAC,EACrB,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,QAAQ,GACT,EAAE,kBAAkB,GAAG,KAAK,CAAC,YAAY,CAmDzC;AAED,wBAAgB,uBAAuB,IAAI,yBAAyB,CAUnE;AAED,UAAU,uBAAuB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,WAAW,GACZ,EAAE,uBAAuB,GAAG,KAAK,CAAC,YAAY,CAmF9C;AAED,UAAU,yBAA0B,SAAQ,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC;IAC5E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED,iBAAS,oBAAoB,CAAC,EAC5B,QAAQ,EACR,SAAS,EACT,SAAmB,EACnB,KAAK,EACL,GAAG,IAAI,EACR,EAAE,yBAAyB,GAAG,KAAK,CAAC,YAAY,CAwChD;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,CAEzD;AAED,QAAA,MAAM,kBAAkB,qBAAe,CAAC;AAExC,UAAU,sBAAuB,SAAQ,IAAI,CAC3C,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAClC,UAAU,CACX;IACC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,iBAAS,iBAAiB,CAAC,EACzB,KAAK,EACL,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,sBAAsB,GAAG,KAAK,CAAC,YAAY,CA0B7C;AAED,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,GAClB,CAAC"}
@@ -1,114 +0,0 @@
1
- 'use client';
2
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
- import React, { useId, useMemo, useState } from 'react';
4
- import { MdCheck, MdClose, MdUnfoldMore } from 'react-icons/md';
5
- import { useControlledState } from '#src/hooks/index.js';
6
- import { inputVariants, selectContentVariants, selectItemVariants, } from '#src/styles/index.js';
7
- import { cn } from '#src/utils/index.js';
8
- import { Badge } from '../badge/badge.js';
9
- import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, } from '../command/command.js';
10
- import { Popover, PopoverAnchor, PopoverContent, PopoverTrigger, } from '../popover/popover.js';
11
- const MultiComboboxContext = React.createContext(null);
12
- function MultiCombobox({ children, value, onChange, disabled, }) {
13
- const [selectedValues, setSelectedValues] = useControlledState(value, onChange, []);
14
- const [searchQuery, setSearchQuery] = useState('');
15
- const [isOpen, setIsOpen] = useState(false);
16
- const inputId = useId();
17
- const filterId = useId();
18
- const contextValue = useMemo(() => ({
19
- selectedValues,
20
- onSelect: (value, label, selected) => {
21
- setSearchQuery('');
22
- if (selected) {
23
- setSelectedValues([...selectedValues, { label, value }]);
24
- }
25
- else {
26
- setSelectedValues(selectedValues.filter((v) => v.value !== value));
27
- }
28
- },
29
- disabled,
30
- isOpen,
31
- setIsOpen: (open) => {
32
- setSearchQuery('');
33
- setIsOpen(open);
34
- },
35
- inputId,
36
- filterId,
37
- searchQuery,
38
- setSearchQuery,
39
- }), [
40
- selectedValues,
41
- setSelectedValues,
42
- disabled,
43
- isOpen,
44
- inputId,
45
- filterId,
46
- searchQuery,
47
- setSearchQuery,
48
- ]);
49
- return (_jsx(MultiComboboxContext.Provider, { value: contextValue, children: _jsx(Popover, { open: isOpen, onOpenChange: setIsOpen, children: children }) }));
50
- }
51
- export function useMultiComboboxContext() {
52
- const value = React.useContext(MultiComboboxContext);
53
- if (!value) {
54
- throw new Error(`useMultiComboboxContext must be used inside a MultiComboboxContext provider`);
55
- }
56
- return value;
57
- }
58
- function MultiComboboxInput({ className, placeholder, }) {
59
- const { selectedValues, onSelect, disabled, setIsOpen, isOpen, inputId, filterId, } = useMultiComboboxContext();
60
- const handleClick = () => {
61
- if (disabled)
62
- return;
63
- setIsOpen(!isOpen);
64
- };
65
- return (_jsx(PopoverAnchor, { asChild: true, children: _jsxs("div", { className: cn(inputVariants({
66
- height: 'flexible',
67
- }), 'flex items-center gap-2', disabled && 'opacity-50', className), onClick: handleClick, onKeyDown: (e) => {
68
- if (e.key === 'Enter') {
69
- handleClick();
70
- }
71
- }, role: "button", tabIndex: 0, "data-cmdk-input-id": inputId, children: [_jsxs("div", { className: "flex flex-1 flex-wrap items-center gap-1", children: [selectedValues.length === 0 && (_jsx("div", { className: "text-muted-foreground", children: placeholder })), selectedValues.length > 0 && (_jsx(_Fragment, { children: selectedValues.map((option) => (_jsxs(Badge, { variant: "secondary", className: "flex items-center gap-1 rounded-xs px-1 font-normal", children: [_jsx("div", { children: option.label }), _jsx("button", { className: "-mr-1 rounded-full p-0.5 hover:bg-secondary-hover", onKeyDown: (e) => {
72
- if (e.key === 'Enter') {
73
- onSelect(option.value, option.label, false);
74
- e.stopPropagation();
75
- }
76
- }, onClick: (e) => {
77
- onSelect(option.value, option.label, false);
78
- if (isOpen) {
79
- document
80
- .querySelector(`[data-cmdk-filter-id="${filterId}"]`)
81
- ?.focus();
82
- }
83
- e.stopPropagation();
84
- }, children: _jsx(MdClose, {}) })] }, option.value))) }))] }), _jsx(PopoverTrigger, { children: _jsx(MdUnfoldMore, { className: "size-4" }) })] }) }));
85
- }
86
- function MultiComboboxContent({ children, className, maxHeight = '320px', style, ...rest }) {
87
- const { inputId, filterId, searchQuery, setSearchQuery } = useMultiComboboxContext();
88
- return (_jsx(PopoverContent, { align: "start", width: "none", padding: "none", sideOffset: 0, className: cn(selectContentVariants({ popper: 'active' }), className), style: {
89
- '--max-popover-height': maxHeight,
90
- width: 'var(--radix-popover-trigger-width)',
91
- ...style,
92
- }, onInteractOutside: (e) => {
93
- if (e.target &&
94
- e.target instanceof Element &&
95
- e.target.closest(`[data-cmdk-input-id="${inputId}"]`)) {
96
- e.preventDefault();
97
- }
98
- }, ...rest, "data-combobox-content": "", children: _jsxs(Command, { children: [_jsx(CommandInput, { "data-cmdk-filter-id": filterId, value: searchQuery, onValueChange: setSearchQuery }), _jsx(CommandList, { children: children })] }) }));
99
- }
100
- function MultiComboboxEmpty({ className, ...props }) {
101
- return _jsx(CommandEmpty, { className: cn('p-2 text-sm', className), ...props });
102
- }
103
- const MultiComboboxGroup = CommandGroup;
104
- function MultiComboboxItem({ value, className, label, children, ...rest }) {
105
- const { selectedValues, onSelect } = useMultiComboboxContext();
106
- const isSelected = selectedValues.some((v) => v.value === value);
107
- const itemRef = React.useRef(null);
108
- return (_jsxs(CommandItem, { onSelect: () => {
109
- const itemLabel = label ?? itemRef.current?.textContent ?? undefined;
110
- onSelect(value, itemLabel, !isSelected);
111
- }, className: cn(selectItemVariants(), className), ...rest, ref: itemRef, children: [_jsx("div", { className: cn('mr-2 flex h-4 w-4 items-center justify-center rounded-xs border', isSelected ? 'opacity-100' : '[&_svg]:invisible'), children: _jsx(MdCheck, { className: 'size-4' }) }), children] }));
112
- }
113
- export { MultiCombobox, MultiComboboxContent, MultiComboboxEmpty, MultiComboboxGroup, MultiComboboxInput, MultiComboboxItem, };
114
- //# sourceMappingURL=multi-combobox.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"multi-combobox.js","sourceRoot":"","sources":["../../../../src/components/ui/multi-combobox/multi-combobox.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AAEzC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EACL,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,OAAO,EACP,aAAa,EACb,cAAc,EACd,cAAc,GACf,MAAM,uBAAuB,CAAC;AAkB/B,MAAM,oBAAoB,GACxB,KAAK,CAAC,aAAa,CAAmC,IAAI,CAAC,CAAC;AAc9D,SAAS,aAAa,CAAC,EACrB,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,QAAQ,GACW;IACnB,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,kBAAkB,CAC5D,KAAK,EACL,QAAQ,EACR,EAAE,CACH,CAAC;IACF,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC;IACxB,MAAM,QAAQ,GAAG,KAAK,EAAE,CAAC;IACzB,MAAM,YAAY,GAA8B,OAAO,CACrD,GAAG,EAAE,CAAC,CAAC;QACL,cAAc;QACd,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YACnC,cAAc,CAAC,EAAE,CAAC,CAAC;YACnB,IAAI,QAAQ,EAAE,CAAC;gBACb,iBAAiB,CAAC,CAAC,GAAG,cAAc,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACN,iBAAiB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;QACD,QAAQ;QACR,MAAM;QACN,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;YAClB,cAAc,CAAC,EAAE,CAAC,CAAC;YACnB,SAAS,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;QACD,OAAO;QACP,QAAQ;QACR,WAAW;QACX,cAAc;KACf,CAAC,EACF;QACE,cAAc;QACd,iBAAiB;QACjB,QAAQ;QACR,MAAM;QACN,OAAO;QACP,QAAQ;QACR,WAAW;QACX,cAAc;KACf,CACF,CAAC;IAEF,OAAO,CACL,KAAC,oBAAoB,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YAChD,KAAC,OAAO,IAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,YAC3C,QAAQ,GACD,GACoB,CACjC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAErD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,6EAA6E,CAC9E,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAOD,SAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,WAAW,GACa;IACxB,MAAM,EACJ,cAAc,EACd,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,MAAM,EACN,OAAO,EACP,QAAQ,GACT,GAAG,uBAAuB,EAAE,CAAC;IAE9B,MAAM,WAAW,GAAG,GAAS,EAAE;QAC7B,IAAI,QAAQ;YAAE,OAAO;QACrB,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,OAAO,CACL,KAAC,aAAa,IAAC,OAAO,kBACpB,eACE,SAAS,EAAE,EAAE,CACX,aAAa,CAAC;gBACZ,MAAM,EAAE,UAAU;aACnB,CAAC,EACF,yBAAyB,EACzB,QAAQ,IAAI,YAAY,EACxB,SAAS,CACV,EACD,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;gBACf,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;oBACtB,WAAW,EAAE,CAAC;gBAChB,CAAC;YACH,CAAC,EACD,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,wBACS,OAAO,aAE3B,eAAK,SAAS,EAAC,0CAA0C,aACtD,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,CAC9B,cAAK,SAAS,EAAC,uBAAuB,YAAE,WAAW,GAAO,CAC3D,EACA,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,CAC5B,4BACG,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAC9B,MAAC,KAAK,IACJ,OAAO,EAAC,WAAW,EAEnB,SAAS,EAAC,qDAAqD,aAE/D,wBAAM,MAAM,CAAC,KAAK,GAAO,EACzB,iBACE,SAAS,EAAC,mDAAmD,EAC7D,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;4CACf,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;gDACtB,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gDAC5C,CAAC,CAAC,eAAe,EAAE,CAAC;4CACtB,CAAC;wCACH,CAAC,EACD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;4CACb,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;4CAC5C,IAAI,MAAM,EAAE,CAAC;gDACX,QAAQ;qDACL,aAAa,CACZ,yBAAyB,QAAQ,IAAI,CACtC;oDACD,EAAE,KAAK,EAAE,CAAC;4CACd,CAAC;4CACD,CAAC,CAAC,eAAe,EAAE,CAAC;wCACtB,CAAC,YAED,KAAC,OAAO,KAAG,GACJ,KAzBJ,MAAM,CAAC,KAAK,CA0BX,CACT,CAAC,GACD,CACJ,IACG,EACN,KAAC,cAAc,cACb,KAAC,YAAY,IAAC,SAAS,EAAC,QAAQ,GAAG,GACpB,IACb,GACQ,CACjB,CAAC;AACJ,CAAC;AASD,SAAS,oBAAoB,CAAC,EAC5B,QAAQ,EACR,SAAS,EACT,SAAS,GAAG,OAAO,EACnB,KAAK,EACL,GAAG,IAAI,EACmB;IAC1B,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE,GACtD,uBAAuB,EAAE,CAAC;IAE5B,OAAO,CACL,KAAC,cAAc,IACb,KAAK,EAAC,OAAO,EACb,KAAK,EAAC,MAAM,EACZ,OAAO,EAAC,MAAM,EACd,UAAU,EAAE,CAAC,EACb,SAAS,EAAE,EAAE,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,CAAC,EACrE,KAAK,EACH;YACE,sBAAsB,EAAE,SAAS;YACjC,KAAK,EAAE,oCAAoC;YAC3C,GAAG,KAAK;SACiB,EAE7B,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE;YACvB,IACE,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,MAAM,YAAY,OAAO;gBAC3B,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,wBAAwB,OAAO,IAAI,CAAC,EACrD,CAAC;gBACD,CAAC,CAAC,cAAc,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,KACG,IAAI,2BACc,EAAE,YAExB,MAAC,OAAO,eACN,KAAC,YAAY,2BACU,QAAQ,EAC7B,KAAK,EAAE,WAAW,EAClB,aAAa,EAAE,cAAc,GAC7B,EACF,KAAC,WAAW,cAAE,QAAQ,GAAe,IAC7B,GACK,CAClB,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EAC2B;IACnC,OAAO,KAAC,YAAY,IAAC,SAAS,EAAE,EAAE,CAAC,aAAa,EAAE,SAAS,CAAC,KAAM,KAAK,GAAI,CAAC;AAC9E,CAAC;AAED,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAWxC,SAAS,iBAAiB,CAAC,EACzB,KAAK,EACL,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACgB;IACvB,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,uBAAuB,EAAE,CAAC;IAC/D,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEnD,OAAO,CACL,MAAC,WAAW,IACV,QAAQ,EAAE,GAAG,EAAE;YACb,MAAM,SAAS,GAAG,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,WAAW,IAAI,SAAS,CAAC;YACrE,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC,EACD,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE,EAAE,SAAS,CAAC,KAC1C,IAAI,EACR,GAAG,EAAE,OAAO,aAEZ,cACE,SAAS,EAAE,EAAE,CACX,iEAAiE,EACjE,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,mBAAmB,CACjD,YAED,KAAC,OAAO,IAAC,SAAS,EAAE,QAAQ,GAAI,GAC5B,EACL,QAAQ,IACG,CACf,CAAC;AACJ,CAAC;AAED,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,GAClB,CAAC"}
@@ -1,9 +0,0 @@
1
- export declare const selectTriggerVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
2
- export declare const selectContentVariants: (props?: ({
3
- popper?: "none" | "active" | null | undefined;
4
- } & import("class-variance-authority/types").ClassProp) | undefined) => string;
5
- export declare const selectItemVariants: (props?: ({
6
- withFocus?: "none" | "highlight" | null | undefined;
7
- } & import("class-variance-authority/types").ClassProp) | undefined) => string;
8
- export declare const selectCheckVariants: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
9
- //# sourceMappingURL=select.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../src/styles/select.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,oFAEjC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;8EAWjC,CAAC;AAKF,eAAO,MAAM,kBAAkB;;8EAU9B,CAAC;AAEF,eAAO,MAAM,mBAAmB,oFAE/B,CAAC"}
@@ -1,22 +0,0 @@
1
- import { cva } from 'class-variance-authority';
2
- export const selectTriggerVariants = cva("flex w-full items-center justify-between gap-2 rounded-md border border-input bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[placeholder]:text-muted-foreground data-[size=default]:h-9 data-[size=sm]:h-8 *: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 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground");
3
- export const selectContentVariants = cva('relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover text-popover-foreground shadow-md 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 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95', {
4
- variants: {
5
- popper: {
6
- none: '',
7
- active: 'data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1',
8
- },
9
- },
10
- });
11
- // Replaces data-[disabled] with data-[disabled=true] since Radix sets disabled=false and adds aria-selected selector
12
- // https://github.com/shadcn-ui/ui/issues/3256
13
- export const selectItemVariants = cva("relative flex w-full cursor-pointer items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none aria-selected:bg-accent aria-selected:text-accent-foreground data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", {
14
- variants: {
15
- withFocus: {
16
- none: '',
17
- highlight: 'focus:bg-accent focus:text-accent-foreground',
18
- },
19
- },
20
- });
21
- export const selectCheckVariants = cva('absolute right-2 flex size-3.5 items-center justify-center');
22
- //# sourceMappingURL=select.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/styles/select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAE/C,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CACtC,+yBAA+yB,CAChzB,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CACtC,+iBAA+iB,EAC/iB;IACE,QAAQ,EAAE;QACR,MAAM,EAAE;YACN,IAAI,EAAE,EAAE;YACR,MAAM,EACJ,iIAAiI;SACpI;KACF;CACF,CACF,CAAC;AAEF,qHAAqH;AACrH,8CAA8C;AAE9C,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CACnC,qcAAqc,EACrc;IACE,QAAQ,EAAE;QACR,SAAS,EAAE;YACT,IAAI,EAAE,EAAE;YACR,SAAS,EAAE,8CAA8C;SAC1D;KACF;CACF,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CACpC,4DAA4D,CAC7D,CAAC"}