@oneplatformdev/ui 0.1.99-beta.26 → 0.1.99-beta.260

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 (240) hide show
  1. package/Accordion/Accordion.d.ts +1 -1
  2. package/Accordion/Accordion.d.ts.map +1 -1
  3. package/Accordion/Accordion.js +48 -26
  4. package/Accordion/Accordion.js.map +1 -1
  5. package/AlertDialog/AlertDialog.stories.js +67 -23
  6. package/AlertDialog/AlertDialog.stories.js.map +1 -1
  7. package/AlertDialog/AlertDialogRoot.d.ts.map +1 -1
  8. package/AlertDialog/AlertDialogRoot.js +20 -18
  9. package/AlertDialog/AlertDialogRoot.js.map +1 -1
  10. package/Button/Button.d.ts.map +1 -1
  11. package/Button/Button.js +43 -43
  12. package/Button/Button.js.map +1 -1
  13. package/Button/Button.stories.js +15 -12
  14. package/Button/Button.stories.js.map +1 -1
  15. package/Button/Button.utils.d.ts +3 -0
  16. package/Button/Button.utils.d.ts.map +1 -0
  17. package/Button/Button.utils.js +14 -0
  18. package/Button/Button.utils.js.map +1 -0
  19. package/Button/buttonVariants.d.ts +2 -2
  20. package/Button/buttonVariants.d.ts.map +1 -1
  21. package/Button/buttonVariants.js +38 -6
  22. package/Button/buttonVariants.js.map +1 -1
  23. package/Button/index.d.ts +1 -0
  24. package/Button/index.d.ts.map +1 -1
  25. package/Button/index.js +8 -6
  26. package/Button/index.js.map +1 -1
  27. package/ButtonIcon/ButtonIcon.d.ts.map +1 -1
  28. package/ButtonIcon/ButtonIcon.js +41 -39
  29. package/ButtonIcon/ButtonIcon.js.map +1 -1
  30. package/ButtonIcon/ButtonIcon.stories.js +35 -33
  31. package/ButtonIcon/ButtonIcon.stories.js.map +1 -1
  32. package/ButtonIcon/buttonIconVariants.d.ts +1 -1
  33. package/ButtonIcon/buttonIconVariants.d.ts.map +1 -1
  34. package/ButtonIcon/buttonIconVariants.js +3 -2
  35. package/ButtonIcon/buttonIconVariants.js.map +1 -1
  36. package/CHANGELOG.md +1503 -0
  37. package/Calendar/Calendar.js +5 -4
  38. package/Calendar/Calendar.js.map +1 -1
  39. package/Card/Card.d.ts.map +1 -1
  40. package/Card/Card.js +22 -21
  41. package/Card/Card.js.map +1 -1
  42. package/Checkbox/Checkbox.d.ts.map +1 -1
  43. package/Checkbox/Checkbox.js +36 -34
  44. package/Checkbox/Checkbox.js.map +1 -1
  45. package/Checkbox/Checkbox.stories.js +108 -0
  46. package/Checkbox/Checkbox.stories.js.map +1 -0
  47. package/Checkbox/Checkbox.types.d.ts +2 -1
  48. package/Checkbox/Checkbox.types.d.ts.map +1 -1
  49. package/Combobox/Combobox.d.ts +4 -2
  50. package/Combobox/Combobox.d.ts.map +1 -1
  51. package/Combobox/Combobox.js +222 -194
  52. package/Combobox/Combobox.js.map +1 -1
  53. package/Combobox/Combobox.stories.js +231 -85
  54. package/Combobox/Combobox.stories.js.map +1 -1
  55. package/Combobox/Combobox.types.d.ts +88 -24
  56. package/Combobox/Combobox.types.d.ts.map +1 -1
  57. package/Combobox/Combobox.types.js +4 -1
  58. package/Combobox/Combobox.types.js.map +1 -1
  59. package/Combobox/ComboboxOptionItem.d.ts +5 -3
  60. package/Combobox/ComboboxOptionItem.d.ts.map +1 -1
  61. package/Combobox/ComboboxOptionItem.js +81 -23
  62. package/Combobox/ComboboxOptionItem.js.map +1 -1
  63. package/Combobox/ComboboxRenderContent.d.ts +28 -0
  64. package/Combobox/ComboboxRenderContent.d.ts.map +1 -0
  65. package/Combobox/ComboboxRenderContent.js +143 -0
  66. package/Combobox/ComboboxRenderContent.js.map +1 -0
  67. package/Combobox/ComboboxRenderOptions.d.ts +4 -0
  68. package/Combobox/ComboboxRenderOptions.d.ts.map +1 -0
  69. package/Combobox/ComboboxRenderOptions.js +53 -0
  70. package/Combobox/ComboboxRenderOptions.js.map +1 -0
  71. package/Combobox/ComboboxRenderTrigger.d.ts +18 -0
  72. package/Combobox/ComboboxRenderTrigger.d.ts.map +1 -0
  73. package/Combobox/ComboboxRenderTrigger.js +120 -0
  74. package/Combobox/ComboboxRenderTrigger.js.map +1 -0
  75. package/Command/Command.d.ts +6 -1
  76. package/Command/Command.d.ts.map +1 -1
  77. package/Command/Command.js +61 -43
  78. package/Command/Command.js.map +1 -1
  79. package/ContextPopover/ContextDropdownMenu.d.ts +12 -0
  80. package/ContextPopover/ContextDropdownMenu.d.ts.map +1 -0
  81. package/ContextPopover/ContextDropdownMenu.js +41 -0
  82. package/ContextPopover/ContextDropdownMenu.js.map +1 -0
  83. package/ContextPopover/ContextPopover.d.ts +12 -0
  84. package/ContextPopover/ContextPopover.d.ts.map +1 -0
  85. package/ContextPopover/ContextPopover.js +34 -0
  86. package/ContextPopover/ContextPopover.js.map +1 -0
  87. package/ContextPopover/index.d.ts +4 -0
  88. package/ContextPopover/index.d.ts.map +1 -0
  89. package/ContextPopover/index.js +9 -0
  90. package/ContextPopover/index.js.map +1 -0
  91. package/ContextPopover/useContextPopoverHandler.d.ts +14 -0
  92. package/ContextPopover/useContextPopoverHandler.d.ts.map +1 -0
  93. package/ContextPopover/useContextPopoverHandler.js +21 -0
  94. package/ContextPopover/useContextPopoverHandler.js.map +1 -0
  95. package/DataTable/DataTable.js +16 -15
  96. package/DataTable/DataTable.js.map +1 -1
  97. package/Dialog/Dialog.d.ts +4 -1
  98. package/Dialog/Dialog.d.ts.map +1 -1
  99. package/Dialog/Dialog.js +83 -40
  100. package/Dialog/Dialog.js.map +1 -1
  101. package/Dialog/Dialog.stories.js +109 -0
  102. package/Dialog/Dialog.stories.js.map +1 -0
  103. package/Dialog/Dialog.types.d.ts +4 -0
  104. package/Dialog/Dialog.types.d.ts.map +1 -0
  105. package/Dialog/Dialog.types.js +2 -0
  106. package/Dialog/Dialog.types.js.map +1 -0
  107. package/Dialog/index.d.ts +1 -0
  108. package/Dialog/index.d.ts.map +1 -1
  109. package/Dialog/useDialogClosePosition.d.ts +11 -0
  110. package/Dialog/useDialogClosePosition.d.ts.map +1 -0
  111. package/Dialog/useDialogClosePosition.js +50 -0
  112. package/Dialog/useDialogClosePosition.js.map +1 -0
  113. package/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  114. package/DropdownMenu/DropdownMenu.js +33 -20
  115. package/DropdownMenu/DropdownMenu.js.map +1 -1
  116. package/Dropzone/Dropzone.d.ts.map +1 -1
  117. package/Dropzone/Dropzone.js +46 -28
  118. package/Dropzone/Dropzone.js.map +1 -1
  119. package/Dropzone/Dropzone.stories.js +100 -0
  120. package/Dropzone/Dropzone.stories.js.map +1 -0
  121. package/Dropzone/Dropzone.types.js +6 -6
  122. package/Dropzone/Dropzone.types.js.map +1 -1
  123. package/Form/FormRenderControl.d.ts +1 -1
  124. package/Form/FormRenderControl.d.ts.map +1 -1
  125. package/Form/FormRenderControl.js +55 -14
  126. package/Form/FormRenderControl.js.map +1 -1
  127. package/Form/FormRenderControl.types.d.ts +6 -2
  128. package/Form/FormRenderControl.types.d.ts.map +1 -1
  129. package/FormCombobox/FormCombobox.d.ts +4 -2
  130. package/FormCombobox/FormCombobox.d.ts.map +1 -1
  131. package/FormCombobox/FormCombobox.js +30 -17
  132. package/FormCombobox/FormCombobox.js.map +1 -1
  133. package/FormCombobox/FormCombobox.types.d.ts +6 -2
  134. package/FormCombobox/FormCombobox.types.d.ts.map +1 -1
  135. package/FormDatePicker/FormDatePicker.d.ts.map +1 -1
  136. package/FormDatePicker/FormDatePicker.js +18 -16
  137. package/FormDatePicker/FormDatePicker.js.map +1 -1
  138. package/FormDropzone/FormDropzone.d.ts.map +1 -1
  139. package/FormDropzone/FormDropzone.js +11 -9
  140. package/FormDropzone/FormDropzone.js.map +1 -1
  141. package/FormInput/FormInput.d.ts.map +1 -1
  142. package/FormInput/FormInput.js +47 -27
  143. package/FormInput/FormInput.js.map +1 -1
  144. package/FormInput/FormInput.stories.js +61 -0
  145. package/FormInput/FormInput.stories.js.map +1 -0
  146. package/FormInput/FormInput.types.d.ts +1 -0
  147. package/FormInput/FormInput.types.d.ts.map +1 -1
  148. package/FormSelect/FormSelect.d.ts.map +1 -1
  149. package/FormSelect/FormSelect.js +21 -17
  150. package/FormSelect/FormSelect.js.map +1 -1
  151. package/FormTextarea/FormTextarea.d.ts.map +1 -1
  152. package/FormTextarea/FormTextarea.js +15 -12
  153. package/FormTextarea/FormTextarea.js.map +1 -1
  154. package/InfoBlock/InfoBlock.d.ts +7 -0
  155. package/InfoBlock/InfoBlock.d.ts.map +1 -0
  156. package/InfoBlock/InfoBlock.js +28 -0
  157. package/InfoBlock/InfoBlock.js.map +1 -0
  158. package/InfoBlock/InfoBlock.stories.js +50 -0
  159. package/InfoBlock/InfoBlock.stories.js.map +1 -0
  160. package/InfoBlock/InfoBlock.types.d.ts +9 -0
  161. package/InfoBlock/InfoBlock.types.d.ts.map +1 -0
  162. package/InfoBlock/InfoBlock.types.js +2 -0
  163. package/InfoBlock/InfoBlock.types.js.map +1 -0
  164. package/InfoBlock/index.d.ts +3 -0
  165. package/InfoBlock/index.d.ts.map +1 -0
  166. package/InfoBlock/index.js +5 -0
  167. package/InfoBlock/index.js.map +1 -0
  168. package/InfoBlock/infoBlockVariants.d.ts +6 -0
  169. package/InfoBlock/infoBlockVariants.d.ts.map +1 -0
  170. package/InfoBlock/infoBlockVariants.js +27 -0
  171. package/InfoBlock/infoBlockVariants.js.map +1 -0
  172. package/Input/Input.d.ts.map +1 -1
  173. package/Input/Input.js +65 -51
  174. package/Input/Input.js.map +1 -1
  175. package/Input/Input.stories.js +154 -0
  176. package/Input/Input.stories.js.map +1 -0
  177. package/Input/Input.types.d.ts +1 -0
  178. package/Input/Input.types.d.ts.map +1 -1
  179. package/LoadingMask/LoadingMask.d.ts +1 -2
  180. package/LoadingMask/LoadingMask.d.ts.map +1 -1
  181. package/LoadingMask/LoadingMask.js +8 -8
  182. package/LoadingMask/LoadingMask.js.map +1 -1
  183. package/LoadingMask/LoadingMask.types.d.ts +1 -0
  184. package/LoadingMask/LoadingMask.types.d.ts.map +1 -1
  185. package/Popover/Popover.d.ts +3 -1
  186. package/Popover/Popover.d.ts.map +1 -1
  187. package/Popover/Popover.js +15 -10
  188. package/Popover/Popover.js.map +1 -1
  189. package/ScrollArea/ScrollArea.d.ts +5 -1
  190. package/ScrollArea/ScrollArea.d.ts.map +1 -1
  191. package/ScrollArea/ScrollArea.js +23 -17
  192. package/ScrollArea/ScrollArea.js.map +1 -1
  193. package/Search/Search.d.ts.map +1 -1
  194. package/Search/Search.js +40 -31
  195. package/Search/Search.js.map +1 -1
  196. package/Select/Select.d.ts.map +1 -1
  197. package/Select/Select.js +53 -48
  198. package/Select/Select.js.map +1 -1
  199. package/Select/Select.types.d.ts +4 -0
  200. package/Select/Select.types.d.ts.map +1 -1
  201. package/Select/SelectRoot.js +6 -6
  202. package/Select/SelectRoot.js.map +1 -1
  203. package/Switch/Switch.d.ts +1 -1
  204. package/Switch/Switch.d.ts.map +1 -1
  205. package/Switch/Switch.js +19 -9
  206. package/Switch/Switch.js.map +1 -1
  207. package/Switch/Switch.stories.js +62 -0
  208. package/Switch/Switch.stories.js.map +1 -0
  209. package/TablePagination/TablePagination.js +9 -8
  210. package/TablePagination/TablePagination.js.map +1 -1
  211. package/Textarea/Textarea.d.ts.map +1 -1
  212. package/Textarea/Textarea.js +50 -45
  213. package/Textarea/Textarea.js.map +1 -1
  214. package/Textarea/Textarea.types.d.ts +3 -1
  215. package/Textarea/Textarea.types.d.ts.map +1 -1
  216. package/Toast/Toast.d.ts +1 -1
  217. package/Toast/toastVariants.d.ts +1 -1
  218. package/Tooltip/QuestionMarkIcon.svg.js +6 -0
  219. package/Tooltip/QuestionMarkIcon.svg.js.map +1 -0
  220. package/Tooltip/Tooltip.d.ts.map +1 -1
  221. package/Tooltip/Tooltip.js +52 -32
  222. package/Tooltip/Tooltip.js.map +1 -1
  223. package/Tooltip/Tooltip.types.d.ts +10 -0
  224. package/Tooltip/Tooltip.types.d.ts.map +1 -1
  225. package/Tooltip/tooltipVariants.d.ts +4 -0
  226. package/Tooltip/tooltipVariants.d.ts.map +1 -0
  227. package/Tooltip/tooltipVariants.js +23 -0
  228. package/Tooltip/tooltipVariants.js.map +1 -0
  229. package/index.d.ts +2 -0
  230. package/index.d.ts.map +1 -1
  231. package/index.js +342 -332
  232. package/index.js.map +1 -1
  233. package/package.json +7 -5
  234. package/vite-env.d.js +2 -0
  235. package/vite-env.d.js.map +1 -0
  236. package/vite-env.d.ts +7 -0
  237. package/Combobox/ComboboxOptions.d.ts +0 -4
  238. package/Combobox/ComboboxOptions.d.ts.map +0 -1
  239. package/Combobox/ComboboxOptions.js +0 -65
  240. package/Combobox/ComboboxOptions.js.map +0 -1
package/Select/Select.js CHANGED
@@ -1,90 +1,95 @@
1
- import { jsxs as u, jsx as r, Fragment as g } from "react/jsx-runtime";
2
- import { createElement as m } from "react";
3
- import { Button as h } from "../Button/Button.js";
1
+ import { jsxs as u, jsx as o, Fragment as y } from "react/jsx-runtime";
2
+ import { useMemo as S, createElement as p } from "react";
3
+ import { Button as v } from "../Button/Button.js";
4
4
  import "../Button/buttonVariants.js";
5
- import { SelectRoot as x, SelectContent as v, SelectTrigger as y, SelectValue as S, SelectItem as b } from "./SelectRoot.js";
6
- import { cn as C } from "@oneplatformdev/utils";
7
- const N = (e) => {
8
- const { placeholder: n, renderTrigger: t, slotProps: l } = e, o = /* @__PURE__ */ r(y, { ...l?.triggerProps || {}, children: /* @__PURE__ */ r(S, { placeholder: n }) });
9
- return t && typeof t == "function" ? t(e, o) : o;
10
- }, a = (e) => {
11
- const { children: n, child: t, option: l, deep: o = 0, className: c, style: i = {} } = e;
5
+ import { SelectRoot as b, SelectContent as C, SelectTrigger as O, SelectValue as N, SelectItem as P } from "./SelectRoot.js";
6
+ import { cn as R } from "@oneplatformdev/utils";
7
+ const k = (e) => {
8
+ const { placeholder: n, renderTrigger: t, slotProps: l } = e, r = /* @__PURE__ */ o(O, { ...l?.triggerProps || {}, children: /* @__PURE__ */ o(N, { placeholder: n }) });
9
+ return t && typeof t == "function" ? t(e, r) : r;
10
+ }, s = (e) => {
11
+ const { children: n, child: t, option: l, deep: r = 0, className: c, style: a = {} } = e;
12
12
  return /* @__PURE__ */ u(
13
- b,
13
+ P,
14
14
  {
15
15
  value: l.value ?? "",
16
16
  disabled: l.disabled,
17
- className: C("cursor-pointer", c),
18
- style: { paddingLeft: `calc(8px + ${(o || 0) * 8}px)`, ...i || {} },
17
+ className: R("cursor-pointer", c),
18
+ style: { paddingLeft: `calc(8px + ${(r || 0) * 8}px)`, ...a || {} },
19
19
  children: [
20
20
  n,
21
21
  !t && l.label,
22
- t && /* @__PURE__ */ r(g, { children: typeof t == "function" ? t({ ...e }) : t })
22
+ t && /* @__PURE__ */ o(y, { children: typeof t == "function" ? t({ ...e }) : t })
23
23
  ]
24
24
  },
25
25
  l.value
26
26
  );
27
- }, p = (e) => {
28
- const { renderOption: n, option: t, index: l, options: o, deep: c = 0, ...i } = e;
29
- return n ? n && typeof n != "function" ? /* @__PURE__ */ r(a, { ...e }) : n && typeof n == "function" ? n(
27
+ }, g = (e) => {
28
+ const { renderOption: n, option: t, index: l, options: r, deep: c = 0, ...a } = e;
29
+ return n ? n && typeof n != "function" ? /* @__PURE__ */ o(s, { ...e }) : n && typeof n == "function" ? n(
30
30
  t,
31
31
  l,
32
- o,
33
- { ...i, options: o },
34
- /* @__PURE__ */ r(a, { ...e })
32
+ r,
33
+ { ...a, options: r },
34
+ /* @__PURE__ */ o(s, { ...e })
35
35
  ) : t.children?.length ? /* @__PURE__ */ u(
36
36
  "div",
37
37
  {
38
38
  className: "flex flex-col gap-1 truncate line-clamp-2",
39
39
  children: [
40
- /* @__PURE__ */ r(a, { ...e }),
41
- t.children?.map((d, s, f) => /* @__PURE__ */ m(
42
- p,
40
+ /* @__PURE__ */ o(s, { ...e }),
41
+ t.children?.map((d, f, m) => /* @__PURE__ */ p(
42
+ g,
43
43
  {
44
44
  ...e,
45
45
  key: d.value,
46
46
  option: d,
47
- options: f,
48
- index: s,
47
+ options: m,
48
+ index: f,
49
49
  deep: (c || 0) + 1
50
50
  }
51
51
  ))
52
52
  ]
53
53
  },
54
54
  t.value
55
- ) : /* @__PURE__ */ r(a, { ...e }) : /* @__PURE__ */ r(a, { ...e });
56
- }, B = (e) => {
55
+ ) : /* @__PURE__ */ o(s, { ...e }) : /* @__PURE__ */ o(s, { ...e });
56
+ }, z = (e) => {
57
57
  const {
58
58
  value: n,
59
- options: t,
60
- onChange: l,
61
- nullable: o = !1,
62
- clearLabel: c = "Clear",
63
- disabled: i,
64
- slotProps: d
65
- } = e;
66
- return /* @__PURE__ */ u(x, { value: n, onValueChange: l, disabled: i, children: [
67
- /* @__PURE__ */ r(N, { ...e }),
68
- /* @__PURE__ */ u(v, { ...d?.selectProps || {}, children: [
69
- o && /* @__PURE__ */ r(
70
- h,
59
+ options: t = [],
60
+ filterOption: l,
61
+ filterOptions: r,
62
+ onChange: c,
63
+ nullable: a = !1,
64
+ clearLabel: d = "Clear",
65
+ disabled: f,
66
+ slotProps: m
67
+ } = e, h = S(() => {
68
+ let i = t;
69
+ return l && (i = i.filter(l)), r && (i = r(i)), i;
70
+ }, [t, r]);
71
+ return /* @__PURE__ */ u(b, { value: n, onValueChange: c, disabled: f, children: [
72
+ /* @__PURE__ */ o(k, { ...e }),
73
+ /* @__PURE__ */ u(C, { ...m?.selectProps || {}, children: [
74
+ a && /* @__PURE__ */ o(
75
+ v,
71
76
  {
72
77
  className: "w-full px-2",
73
- variant: "secondary",
78
+ color: "secondary",
74
79
  size: "sm",
75
80
  onClick: () => {
76
- l?.("");
81
+ c?.("");
77
82
  },
78
- children: c
83
+ children: d
79
84
  }
80
85
  ),
81
- t.map((s, f) => /* @__PURE__ */ m(
82
- p,
86
+ h.map((i, x) => /* @__PURE__ */ p(
87
+ g,
83
88
  {
84
89
  ...e,
85
- key: s.value,
86
- option: s,
87
- index: f,
90
+ key: i.value,
91
+ option: i,
92
+ index: x,
88
93
  deep: 0
89
94
  }
90
95
  ))
@@ -92,6 +97,6 @@ const N = (e) => {
92
97
  ] });
93
98
  };
94
99
  export {
95
- B as Select
100
+ z as Select
96
101
  };
97
102
  //# sourceMappingURL=Select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../src/Select/Select.tsx"],"sourcesContent":["import { HTMLAttributes, ReactNode } from 'react';\n\nimport { Button } from '../Button';\nimport {\n SelectContent,\n SelectItem,\n SelectOption,\n SelectProps,\n SelectRoot,\n SelectTrigger,\n SelectValue,\n} from '../Select';\nimport { cn } from '@oneplatformdev/utils';\n\nconst RenderSelectTrigger = <ExtendOptionData,>(\n props: SelectProps<ExtendOptionData>\n) => {\n const { placeholder, renderTrigger, slotProps } = props;\n const defaultComponent = (\n <SelectTrigger {...(slotProps?.triggerProps || {})}>\n <SelectValue placeholder={placeholder} />\n </SelectTrigger>\n );\n\n if (Boolean(renderTrigger) && typeof renderTrigger === 'function') {\n return renderTrigger(props, defaultComponent);\n }\n\n return defaultComponent;\n};\n\nconst DefaultRenderSelectOption = <ExtendOptionData,>(\n props: SelectProps<ExtendOptionData> & {\n option: SelectOption<ExtendOptionData>;\n index: number;\n deep?: number;\n child?: ((params: SelectProps<ExtendOptionData> & {\n option: SelectOption<ExtendOptionData>;\n index: number;\n }) => ReactNode) | ReactNode;\n } & Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>\n) => {\n const { children, child, option, deep = 0, className, style = {} } = props;\n\n return (\n <SelectItem\n key={option.value}\n value={option.value ?? ''}\n disabled={option.disabled}\n className={cn('cursor-pointer', className)}\n style={{ paddingLeft: `calc(8px + ${(deep || 0) * 8}px)`, ...(style || {}) }}\n >\n {children}\n {!child && option.label}\n {child && (\n <>\n {typeof child === 'function'\n ? child({ ...props })\n : child\n }\n </>\n )}\n </SelectItem>\n )\n};\n\nconst RenderSelectOption = <ExtendOptionData,>(\n props: SelectProps<ExtendOptionData> & {\n option: SelectOption<ExtendOptionData>;\n index: number;\n deep?: number;\n }\n) => {\n const { renderOption, option, index, options, deep = 0, ...rest } = props;\n if(!renderOption) return <DefaultRenderSelectOption {...props} />;\n if(renderOption && typeof renderOption !== 'function') return <DefaultRenderSelectOption {...props} />;\n if(renderOption && typeof renderOption === 'function') return renderOption(\n option,\n index,\n options,\n { ...rest, options },\n <DefaultRenderSelectOption {...props} />\n )\n\n if(!option.children?.length) {\n return <DefaultRenderSelectOption {...props} />;\n }\n\n return (\n <div\n key={option.value}\n className=\"flex flex-col gap-1 truncate line-clamp-2\"\n >\n <DefaultRenderSelectOption {...props} />\n {option.children?.map((child, idx, arr) => (\n <RenderSelectOption\n {...props}\n key={child.value}\n option={child}\n options={arr}\n index={idx}\n deep={(deep || 0) + 1}\n />\n ))}\n </div>\n )\n};\n\n// TODO: add description\nexport const Select = <ExtendOptionData,>(\n props: SelectProps<ExtendOptionData>\n) => {\n const {\n value,\n options,\n onChange,\n nullable = false,\n clearLabel = 'Clear',\n disabled,\n slotProps,\n } = props;\n\n return (\n <SelectRoot value={value} onValueChange={onChange} disabled={disabled}>\n <RenderSelectTrigger {...props} />\n <SelectContent {...(slotProps?.selectProps || {})}>\n {nullable && (\n <Button\n className=\"w-full px-2\"\n variant=\"secondary\"\n size=\"sm\"\n onClick={() => {\n onChange?.('');\n }}\n >\n {clearLabel}\n </Button>\n )}\n {options.map((option, index) => (\n <RenderSelectOption\n {...props}\n key={option.value}\n option={option}\n index={index}\n deep={0}\n />\n ))}\n </SelectContent>\n </SelectRoot>\n );\n};\n"],"names":["RenderSelectTrigger","props","placeholder","renderTrigger","slotProps","defaultComponent","jsx","SelectTrigger","SelectValue","DefaultRenderSelectOption","children","child","option","deep","className","style","jsxs","SelectItem","cn","Fragment","RenderSelectOption","renderOption","index","options","rest","idx","arr","createElement","Select","value","onChange","nullable","clearLabel","disabled","SelectRoot","SelectContent","Button"],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sources":["../../src/Select/Select.tsx"],"sourcesContent":["import { HTMLAttributes, ReactNode, useMemo } from 'react';\n\nimport { Button } from '../Button';\nimport {\n SelectContent,\n SelectItem,\n SelectOption,\n SelectProps,\n SelectRoot,\n SelectTrigger,\n SelectValue,\n} from '../Select';\nimport { cn } from '@oneplatformdev/utils';\n\nconst RenderSelectTrigger = <ExtendOptionData, >(\n props: SelectProps<ExtendOptionData>\n) => {\n const { placeholder, renderTrigger, slotProps } = props;\n const defaultComponent = (\n <SelectTrigger {...(slotProps?.triggerProps || {})}>\n <SelectValue placeholder={placeholder}/>\n </SelectTrigger>\n );\n\n if (Boolean(renderTrigger) && typeof renderTrigger === 'function') {\n return renderTrigger(props, defaultComponent);\n }\n\n return defaultComponent;\n};\n\nconst DefaultRenderSelectOption = <ExtendOptionData, >(\n props: SelectProps<ExtendOptionData> & {\n option: SelectOption<ExtendOptionData>;\n index: number;\n deep?: number;\n child?: ((params: SelectProps<ExtendOptionData> & {\n option: SelectOption<ExtendOptionData>;\n index: number;\n }) => ReactNode) | ReactNode;\n } & Omit<HTMLAttributes<HTMLDivElement>, 'onChange'>\n) => {\n const { children, child, option, deep = 0, className, style = {} } = props;\n\n return (\n <SelectItem\n key={option.value}\n value={option.value ?? ''}\n disabled={option.disabled}\n className={cn('cursor-pointer', className)}\n style={{ paddingLeft: `calc(8px + ${(deep || 0) * 8}px)`, ...(style || {}) }}\n >\n {children}\n {!child && option.label}\n {child && (\n <>\n {typeof child === 'function'\n ? child({ ...props })\n : child\n }\n </>\n )}\n </SelectItem>\n )\n};\n\nconst RenderSelectOption = <ExtendOptionData, >(\n props: SelectProps<ExtendOptionData> & {\n option: SelectOption<ExtendOptionData>;\n index: number;\n deep?: number;\n }\n) => {\n const { renderOption, option, index, options, deep = 0, ...rest } = props;\n if (!renderOption) return <DefaultRenderSelectOption {...props} />;\n if (renderOption && typeof renderOption !== 'function') return <DefaultRenderSelectOption {...props} />;\n if (renderOption && typeof renderOption === 'function') return renderOption(\n option,\n index,\n options,\n { ...rest, options },\n <DefaultRenderSelectOption {...props} />\n )\n\n if (!option.children?.length) {\n return <DefaultRenderSelectOption {...props} />;\n }\n\n return (\n <div\n key={option.value}\n className=\"flex flex-col gap-1 truncate line-clamp-2\"\n >\n <DefaultRenderSelectOption {...props} />\n {option.children?.map((child, idx, arr) => (\n <RenderSelectOption\n {...props}\n key={child.value}\n option={child}\n options={arr}\n index={idx}\n deep={(deep || 0) + 1}\n />\n ))}\n </div>\n )\n};\n\n// TODO: add description\nexport const Select = <ExtendOptionData, >(\n props: SelectProps<ExtendOptionData>\n) => {\n const {\n value,\n options: initialOptions = [],\n filterOption,\n filterOptions,\n onChange,\n nullable = false,\n clearLabel = 'Clear',\n disabled,\n slotProps,\n } = props;\n\n const options = useMemo(() => {\n let opt = initialOptions;\n if(filterOption) opt = opt.filter(filterOption);\n if(filterOptions) opt = filterOptions(opt);\n return opt;\n }, [ initialOptions, filterOptions ]);\n\n return (\n <SelectRoot value={value} onValueChange={onChange} disabled={disabled}>\n <RenderSelectTrigger {...props} />\n <SelectContent {...(slotProps?.selectProps || {})}>\n {nullable && (\n <Button\n className=\"w-full px-2\"\n color=\"secondary\"\n size=\"sm\"\n onClick={() => {\n onChange?.('');\n }}\n >\n {clearLabel}\n </Button>\n )}\n {options.map((option, index) => (\n <RenderSelectOption\n {...props}\n key={option.value}\n option={option}\n index={index}\n deep={0}\n />\n ))}\n </SelectContent>\n </SelectRoot>\n );\n};\n"],"names":["RenderSelectTrigger","props","placeholder","renderTrigger","slotProps","defaultComponent","jsx","SelectTrigger","SelectValue","DefaultRenderSelectOption","children","child","option","deep","className","style","jsxs","SelectItem","cn","Fragment","RenderSelectOption","renderOption","index","options","rest","idx","arr","createElement","Select","value","initialOptions","filterOption","filterOptions","onChange","nullable","clearLabel","disabled","useMemo","opt","SelectRoot","SelectContent","Button"],"mappings":"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"}
@@ -13,6 +13,10 @@ export type SelectRenderOption<ExtendOptionData> = (option: SelectOption<ExtendO
13
13
  export interface SelectProps<ExtendOptionData> {
14
14
  /** Render options. */
15
15
  options: SelectOption<ExtendOptionData>[];
16
+ /** Filter options handler */
17
+ filterOptions?: (options: SelectOption<ExtendOptionData>[]) => SelectOption<ExtendOptionData>[];
18
+ /** Filter option handler */
19
+ filterOption?: (option: SelectOption<ExtendOptionData>, index: number, options: SelectOption<ExtendOptionData>[]) => boolean;
16
20
  /** Current value. */
17
21
  value?: SelectOption<ExtendOptionData>['value'];
18
22
  /** Select placeholder string. */
@@ -1 +1 @@
1
- {"version":3,"file":"Select.types.d.ts","sourceRoot":"","sources":["../../src/Select/Select.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC1E,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,WAAW,YAAY,CAAC,gBAAgB,GAAG,OAAO;IACtD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,QAAQ,CAAC,EAAE,YAAY,CAAC,gBAAgB,CAAC,EAAE,CAAC;CAC7C;AAED,MAAM,MAAM,mBAAmB,CAAC,gBAAgB,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAC,EAAE,gBAAgB,EAAE,SAAS,KAAK,SAAS,CAAC;AAE5J,MAAM,MAAM,kBAAkB,CAAC,gBAAgB,IAAI,CACjD,MAAM,EAAE,YAAY,CAAC,gBAAgB,CAAC,EACtC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,YAAY,CAAC,gBAAgB,CAAC,EAAE,EACzC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,cAAc,CAAC,EAC1D,gBAAgB,EAAE,SAAS,KACxB,YAAY,CAAC;AAElB,MAAM,WAAW,WAAW,CAAC,gBAAgB;IAC3C,sBAAsB;IACtB,OAAO,EAAE,YAAY,CAAC,gBAAgB,CAAC,EAAE,CAAC;IAC1C,qBAAqB;IACrB,KAAK,CAAC,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC;IAChD,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACpE,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iCAAiC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6BAA6B;IAC7B,aAAa,CAAC,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IACtD,4BAA4B;IAC5B,YAAY,CAAC,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IACpD,wBAAwB;IACxB,SAAS,CAAC,EAAE;QACV,mCAAmC;QACnC,YAAY,CAAC,EAAE,wBAAwB,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;QACxE,2BAA2B;QAC3B,WAAW,CAAC,EAAE,wBAAwB,CAAC,OAAO,aAAa,CAAC,CAAC;KAC9D,CAAC;CACH"}
1
+ {"version":3,"file":"Select.types.d.ts","sourceRoot":"","sources":["../../src/Select/Select.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC1E,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,WAAW,YAAY,CAAC,gBAAgB,GAAG,OAAO;IACtD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,QAAQ,CAAC,EAAE,YAAY,CAAC,gBAAgB,CAAC,EAAE,CAAC;CAC7C;AAED,MAAM,MAAM,mBAAmB,CAAC,gBAAgB,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,eAAe,CAAC,EAAE,gBAAgB,EAAE,SAAS,KAAK,SAAS,CAAC;AAE5J,MAAM,MAAM,kBAAkB,CAAC,gBAAgB,IAAI,CACjD,MAAM,EAAE,YAAY,CAAC,gBAAgB,CAAC,EACtC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,YAAY,CAAC,gBAAgB,CAAC,EAAE,EACzC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,cAAc,CAAC,EAC1D,gBAAgB,EAAE,SAAS,KACxB,YAAY,CAAC;AAElB,MAAM,WAAW,WAAW,CAAC,gBAAgB;IAC3C,sBAAsB;IACtB,OAAO,EAAE,YAAY,CAAC,gBAAgB,CAAC,EAAE,CAAC;IAC1C,6BAA6B;IAC7B,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,gBAAgB,CAAC,EAAE,KAAK,YAAY,CAAC,gBAAgB,CAAC,EAAE,CAAC;IAChG,4BAA4B;IAC5B,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,gBAAgB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,gBAAgB,CAAC,EAAE,KAAK,OAAO,CAAC;IAC7H,qBAAqB;IACrB,KAAK,CAAC,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC;IAChD,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACpE,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iCAAiC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6BAA6B;IAC7B,aAAa,CAAC,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IACtD,4BAA4B;IAC5B,YAAY,CAAC,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IACpD,wBAAwB;IACxB,SAAS,CAAC,EAAE;QACV,mCAAmC;QACnC,YAAY,CAAC,EAAE,wBAAwB,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;QACxE,2BAA2B;QAC3B,WAAW,CAAC,EAAE,wBAAwB,CAAC,OAAO,aAAa,CAAC,CAAC;KAC9D,CAAC;CACH"}
@@ -17,7 +17,7 @@ function w({
17
17
  }) {
18
18
  return /* @__PURE__ */ t(a.Value, { "data-slot": "select-value", ...e });
19
19
  }
20
- function y(e) {
20
+ function S(e) {
21
21
  const {
22
22
  className: r,
23
23
  size: o = "default",
@@ -31,7 +31,7 @@ function y(e) {
31
31
  "data-slot": "select-trigger",
32
32
  "data-size": o,
33
33
  className: s(
34
- "flex w-inherit items-center justify-between gap-2 rounded-md bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs",
34
+ "flex w-inherit items-center justify-between gap-2 rounded-lg bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs",
35
35
  "border border-input outline-none",
36
36
  "data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 transition-[color,box-shadow] focus-visible:ring-[3px] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
37
37
  "cursor-pointer",
@@ -41,12 +41,12 @@ function y(e) {
41
41
  ...c,
42
42
  children: [
43
43
  n,
44
- l && /* @__PURE__ */ t(a.Icon, { asChild: !0, children: /* @__PURE__ */ t(d, { className: "size-4 opacity-50" }) })
44
+ l && /* @__PURE__ */ t(a.Icon, { asChild: !0, children: /* @__PURE__ */ t(d, { className: "size-6 text-[#06080D]" }) })
45
45
  ]
46
46
  }
47
47
  );
48
48
  }
49
- function S({
49
+ function y({
50
50
  className: e,
51
51
  children: r,
52
52
  position: o = "popper",
@@ -165,7 +165,7 @@ function f({
165
165
  );
166
166
  }
167
167
  export {
168
- S as SelectContent,
168
+ y as SelectContent,
169
169
  b as SelectGroup,
170
170
  N as SelectItem,
171
171
  z as SelectLabel,
@@ -174,7 +174,7 @@ export {
174
174
  f as SelectScrollDownButton,
175
175
  m as SelectScrollUpButton,
176
176
  I as SelectSeparator,
177
- y as SelectTrigger,
177
+ S as SelectTrigger,
178
178
  w as SelectValue
179
179
  };
180
180
  //# sourceMappingURL=SelectRoot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SelectRoot.js","sources":["../../src/Select/SelectRoot.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport * as SelectPrimitive from \"@radix-ui/react-select\"\nimport { CheckIcon, ChevronDownIcon, ChevronUpIcon } from \"lucide-react\"\n\nimport { cn } from \"@oneplatformdev/utils\"\n\nfunction SelectRoot({\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />\n}\n\nfunction SelectGroup({\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />\n}\n\nfunction SelectValue({\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />\n}\n\nfunction SelectTrigger(props: React.ComponentProps<typeof SelectPrimitive.Trigger> & {\n size?: \"sm\" | \"default\";\n showIcon?: boolean;\n}) {\n const {\n className,\n size = \"default\",\n children,\n showIcon = true,\n ...rest\n } = props\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n data-size={size}\n className={cn(\n 'flex w-inherit items-center justify-between gap-2 rounded-md bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs',\n 'border border-input outline-none',\n \"data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 transition-[color,box-shadow] focus-visible:ring-[3px] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n 'cursor-pointer',\n 'disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-10 data-[size=sm]:h-8',\n className\n )}\n {...rest}\n >\n {children}\n {showIcon && (\n <SelectPrimitive.Icon asChild>\n <ChevronDownIcon className=\"size-4 opacity-50\" />\n </SelectPrimitive.Icon>\n )}\n </SelectPrimitive.Trigger>\n )\n}\n\nfunction SelectContent({\n className,\n children,\n position = \"popper\",\n align = \"center\",\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md\",\n position === \"popper\" &&\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\n 'p-1 rounded-xl shadow-md',\n className\n )}\n position={position}\n align={align}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n \"p-1\",\n position === \"popper\" &&\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1\"\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n )\n}\n\nfunction SelectLabel({\n className,\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Label>) {\n return (\n <SelectPrimitive.Label\n data-slot=\"select-label\"\n className={cn(\"text-muted-foreground px-2 py-1.5 text-xs\", className)}\n {...props}\n />\n )\n}\n\nfunction SelectItem({\n className,\n children,\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Item>) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-lg py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2\",\n className\n )}\n {...props}\n >\n <span className=\"absolute right-2 flex size-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n )\n}\n\nfunction SelectSeparator({\n className,\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Separator>) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn(\"bg-border pointer-events-none -mx-1 my-1 h-px\", className)}\n {...props}\n />\n )\n}\n\nfunction SelectScrollUpButton({\n className,\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>) {\n return (\n <SelectPrimitive.ScrollUpButton\n data-slot=\"select-scroll-up-button\"\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className\n )}\n {...props}\n >\n <ChevronUpIcon className=\"size-4\" />\n </SelectPrimitive.ScrollUpButton>\n )\n}\n\nfunction SelectScrollDownButton({\n className,\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>) {\n return (\n <SelectPrimitive.ScrollDownButton\n data-slot=\"select-scroll-down-button\"\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className\n )}\n {...props}\n >\n <ChevronDownIcon className=\"size-4\" />\n </SelectPrimitive.ScrollDownButton>\n )\n}\n\nexport {\n SelectRoot,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectLabel,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n SelectPrimitive,\n}\n"],"names":["SelectRoot","props","SelectPrimitive","SelectGroup","SelectValue","SelectTrigger","className","size","children","showIcon","rest","jsxs","cn","jsx","ChevronDownIcon","SelectContent","position","align","SelectScrollUpButton","SelectScrollDownButton","SelectLabel","SelectItem","CheckIcon","SelectSeparator","ChevronUpIcon"],"mappings":"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"}
1
+ {"version":3,"file":"SelectRoot.js","sources":["../../src/Select/SelectRoot.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport * as SelectPrimitive from \"@radix-ui/react-select\"\nimport { CheckIcon, ChevronDownIcon, ChevronUpIcon } from \"lucide-react\"\n\nimport { cn } from \"@oneplatformdev/utils\"\n\nfunction SelectRoot({\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />\n}\n\nfunction SelectGroup({\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />\n}\n\nfunction SelectValue({\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />\n}\n\nfunction SelectTrigger(props: React.ComponentProps<typeof SelectPrimitive.Trigger> & {\n size?: \"sm\" | \"default\";\n showIcon?: boolean;\n}) {\n const {\n className,\n size = \"default\",\n children,\n showIcon = true,\n ...rest\n } = props\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n data-size={size}\n className={cn(\n 'flex w-inherit items-center justify-between gap-2 rounded-lg bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs',\n 'border border-input outline-none',\n \"data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 transition-[color,box-shadow] focus-visible:ring-[3px] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n 'cursor-pointer',\n 'disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-10 data-[size=sm]:h-8',\n className\n )}\n {...rest}\n >\n {children}\n {showIcon && (\n <SelectPrimitive.Icon asChild>\n <ChevronDownIcon className=\"size-6 text-[#06080D]\" />\n </SelectPrimitive.Icon>\n )}\n </SelectPrimitive.Trigger>\n )\n}\n\nfunction SelectContent({\n className,\n children,\n position = \"popper\",\n align = \"center\",\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md\",\n position === \"popper\" &&\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\n 'p-1 rounded-xl shadow-md',\n className\n )}\n position={position}\n align={align}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n \"p-1\",\n position === \"popper\" &&\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1\"\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n )\n}\n\nfunction SelectLabel({\n className,\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Label>) {\n return (\n <SelectPrimitive.Label\n data-slot=\"select-label\"\n className={cn(\"text-muted-foreground px-2 py-1.5 text-xs\", className)}\n {...props}\n />\n )\n}\n\nfunction SelectItem({\n className,\n children,\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Item>) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-lg py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2\",\n className\n )}\n {...props}\n >\n <span className=\"absolute right-2 flex size-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n )\n}\n\nfunction SelectSeparator({\n className,\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.Separator>) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn(\"bg-border pointer-events-none -mx-1 my-1 h-px\", className)}\n {...props}\n />\n )\n}\n\nfunction SelectScrollUpButton({\n className,\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>) {\n return (\n <SelectPrimitive.ScrollUpButton\n data-slot=\"select-scroll-up-button\"\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className\n )}\n {...props}\n >\n <ChevronUpIcon className=\"size-4\" />\n </SelectPrimitive.ScrollUpButton>\n )\n}\n\nfunction SelectScrollDownButton({\n className,\n ...props\n }: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>) {\n return (\n <SelectPrimitive.ScrollDownButton\n data-slot=\"select-scroll-down-button\"\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className\n )}\n {...props}\n >\n <ChevronDownIcon className=\"size-4\" />\n </SelectPrimitive.ScrollDownButton>\n )\n}\n\nexport {\n SelectRoot,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectLabel,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n SelectPrimitive,\n}\n"],"names":["SelectRoot","props","SelectPrimitive","SelectGroup","SelectValue","SelectTrigger","className","size","children","showIcon","rest","jsxs","cn","jsx","ChevronDownIcon","SelectContent","position","align","SelectScrollUpButton","SelectScrollDownButton","SelectLabel","SelectItem","CheckIcon","SelectSeparator","ChevronUpIcon"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
2
  import * as SwitchPrimitive from "@radix-ui/react-switch";
3
- declare function Switch({ className, ...props }: React.ComponentProps<typeof SwitchPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
3
+ declare function Switch(props: React.ComponentProps<typeof SwitchPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
4
  export { Switch };
5
5
  //# sourceMappingURL=Switch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../src/Switch/Switch.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AAIzD,iBAAS,MAAM,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,2CAkBnE;AAED,OAAO,EAAE,MAAM,EAAE,CAAA"}
1
+ {"version":3,"file":"Switch.d.ts","sourceRoot":"","sources":["../../src/Switch/Switch.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AAIzD,iBAAS,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,2CA+BvE;AAED,OAAO,EAAE,MAAM,EAAE,CAAA"}
package/Switch/Switch.js CHANGED
@@ -1,25 +1,35 @@
1
1
  import { jsx as e } from "react/jsx-runtime";
2
2
  import * as t from "@radix-ui/react-switch";
3
3
  import { cn as a } from "@oneplatformdev/utils";
4
- function s({
5
- className: r,
6
- ...n
7
- }) {
4
+ function o(r) {
5
+ const { className: s, ...c } = r;
8
6
  return /* @__PURE__ */ e(
9
7
  t.Root,
10
8
  {
11
9
  "data-slot": "switch",
12
10
  className: a(
13
- "peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
14
- r
11
+ "peer inline-flex h-5 w-9.5 shrink-0 items-center box-border rounded-full",
12
+ "data-[state=checked]:bg-[#9368FF] data-[state=unchecked]:bg-transparent",
13
+ "border data-[state=checked]:border-[#9368FF] data-[state=unchecked]:border-[#8C8F9A]",
14
+ "dark:data-[state=unchecked]:bg-input/80",
15
+ "cursor-pointer",
16
+ "disabled:cursor-not-allowed disabled:opacity-50",
17
+ "shadow-none outline-none focus-visible:ring-[3px]",
18
+ "focus-visible:border-ring focus-visible:ring-ring/50",
19
+ "transition-all",
20
+ s
15
21
  ),
16
- ...n,
22
+ ...c,
17
23
  children: /* @__PURE__ */ e(
18
24
  t.Thumb,
19
25
  {
20
26
  "data-slot": "switch-thumb",
21
27
  className: a(
22
- "bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0"
28
+ "block rounded-full h-[calc(100%-2px)] aspect-square box-border",
29
+ "data-[state=checked]:bg-[#FCFCFC] data-[state=unchecked]:bg-[#8C8F9A]",
30
+ "dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground",
31
+ "data-[state=unchecked]:translate-x-px data-[state=checked]:translate-x-[calc(100%+2px)]",
32
+ "pointer-events-none ring-0 transition-transform"
23
33
  )
24
34
  }
25
35
  )
@@ -27,6 +37,6 @@ function s({
27
37
  );
28
38
  }
29
39
  export {
30
- s as Switch
40
+ o as Switch
31
41
  };
32
42
  //# sourceMappingURL=Switch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.js","sources":["../../src/Switch/Switch.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport * as SwitchPrimitive from \"@radix-ui/react-switch\"\n\nimport { cn } from \"@oneplatformdev/utils\"\n\nfunction Switch({\n className,\n ...props\n }: React.ComponentProps<typeof SwitchPrimitive.Root>) {\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n className={cn(\n \"peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50\",\n className\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n \"bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0\"\n )}\n />\n </SwitchPrimitive.Root>\n )\n}\n\nexport { Switch }\n"],"names":["Switch","className","props","jsx","SwitchPrimitive","cn"],"mappings":";;;AAOA,SAASA,EAAO;AAAA,EACE,WAAAC;AAAA,EACA,GAAGC;AACL,GAAsD;AACpE,SACE,gBAAAC;AAAA,IAACC,EAAgB;AAAA,IAAhB;AAAA,MACC,aAAU;AAAA,MACV,WAAWC;AAAA,QACT;AAAA,QACAJ;AAAA,MAAA;AAAA,MAED,GAAGC;AAAA,MAEJ,UAAA,gBAAAC;AAAA,QAACC,EAAgB;AAAA,QAAhB;AAAA,UACC,aAAU;AAAA,UACV,WAAWC;AAAA,YACT;AAAA,UAAA;AAAA,QACF;AAAA,MAAA;AAAA,IACF;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"Switch.js","sources":["../../src/Switch/Switch.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport * as SwitchPrimitive from \"@radix-ui/react-switch\"\n\nimport { cn } from \"@oneplatformdev/utils\"\n\nfunction Switch(props: React.ComponentProps<typeof SwitchPrimitive.Root>) {\n const { className, ...rest } = props;\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n className={cn(\n 'peer inline-flex h-5 w-9.5 shrink-0 items-center box-border rounded-full',\n 'data-[state=checked]:bg-[#9368FF] data-[state=unchecked]:bg-transparent',\n 'border data-[state=checked]:border-[#9368FF] data-[state=unchecked]:border-[#8C8F9A]',\n 'dark:data-[state=unchecked]:bg-input/80',\n 'cursor-pointer',\n 'disabled:cursor-not-allowed disabled:opacity-50',\n 'shadow-none outline-none focus-visible:ring-[3px]',\n 'focus-visible:border-ring focus-visible:ring-ring/50',\n \"transition-all\",\n className\n )}\n {...rest}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n 'block rounded-full h-[calc(100%-2px)] aspect-square box-border',\n 'data-[state=checked]:bg-[#FCFCFC] data-[state=unchecked]:bg-[#8C8F9A]',\n 'dark:data-[state=checked]:bg-primary-foreground dark:data-[state=unchecked]:bg-foreground',\n 'data-[state=unchecked]:translate-x-px data-[state=checked]:translate-x-[calc(100%+2px)]',\n \"pointer-events-none ring-0 transition-transform\"\n )}\n />\n </SwitchPrimitive.Root>\n )\n}\n\nexport { Switch }\n"],"names":["Switch","props","className","rest","jsx","SwitchPrimitive","cn"],"mappings":";;;AAOA,SAASA,EAAOC,GAA0D;AACxE,QAAM,EAAE,WAAAC,GAAW,GAAGC,EAAA,IAASF;AAC/B,SACE,gBAAAG;AAAA,IAACC,EAAgB;AAAA,IAAhB;AAAA,MACC,aAAU;AAAA,MACV,WAAWC;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACAJ;AAAA,MAAA;AAAA,MAED,GAAGC;AAAA,MAEJ,UAAA,gBAAAC;AAAA,QAACC,EAAgB;AAAA,QAAhB;AAAA,UACC,aAAU;AAAA,UACV,WAAWC;AAAA,YACT;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,UAAA;AAAA,QACF;AAAA,MAAA;AAAA,IACF;AAAA,EAAA;AAGN;"}
@@ -0,0 +1,62 @@
1
+ import { jsxs as n, jsx as s } from "react/jsx-runtime";
2
+ import * as a from "react";
3
+ import { Switch as o } from "./Switch.js";
4
+ const r = {
5
+ title: "Input/Switch",
6
+ component: o,
7
+ tags: ["autodocs"],
8
+ args: {
9
+ checked: !1,
10
+ disabled: !1
11
+ },
12
+ argTypes: {
13
+ checked: {
14
+ control: "boolean"
15
+ },
16
+ disabled: {
17
+ control: "boolean"
18
+ },
19
+ onCheckedChange: {
20
+ action: "checked changed"
21
+ }
22
+ },
23
+ render: (e) => {
24
+ const [c, t] = a.useState(e.checked);
25
+ return a.useEffect(() => {
26
+ t(e.checked);
27
+ }, [e.checked]), /* @__PURE__ */ n("div", { className: "flex items-center gap-3", children: [
28
+ /* @__PURE__ */ s(
29
+ o,
30
+ {
31
+ ...e,
32
+ checked: c,
33
+ onCheckedChange: (d) => {
34
+ t(d), e.onCheckedChange?.(d);
35
+ }
36
+ }
37
+ ),
38
+ /* @__PURE__ */ s("span", { className: "text-sm", children: c ? "Enabled" : "Disabled" })
39
+ ] });
40
+ }
41
+ }, i = {}, k = {
42
+ args: {
43
+ checked: !0
44
+ }
45
+ }, m = {
46
+ args: {
47
+ disabled: !0
48
+ }
49
+ }, b = {
50
+ args: {
51
+ checked: !0,
52
+ disabled: !0
53
+ }
54
+ };
55
+ export {
56
+ k as Checked,
57
+ i as Default,
58
+ m as Disabled,
59
+ b as DisabledChecked,
60
+ r as default
61
+ };
62
+ //# sourceMappingURL=Switch.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Switch.stories.js","sources":["../../src/Switch/Switch.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from '@storybook/react';\nimport * as React from 'react';\n\nimport { Switch } from './switch';\n\nconst meta = {\n title: 'Input/Switch',\n component: Switch,\n tags: ['autodocs'],\n args: {\n checked: false,\n disabled: false,\n },\n argTypes: {\n checked: {\n control: 'boolean',\n },\n disabled: {\n control: 'boolean',\n },\n onCheckedChange: {\n action: 'checked changed',\n },\n },\n render: (args) => {\n const [checked, setChecked] = React.useState(args.checked);\n\n React.useEffect(() => {\n setChecked(args.checked);\n }, [args.checked]);\n\n return (\n <div className=\"flex items-center gap-3\">\n <Switch\n {...args}\n checked={checked}\n onCheckedChange={(value) => {\n setChecked(value);\n args.onCheckedChange?.(value);\n }}\n />\n <span className=\"text-sm\">{checked ? 'Enabled' : 'Disabled'}</span>\n </div>\n );\n },\n} satisfies Meta<typeof Switch>;\n\nexport default meta;\n\ntype Story = StoryObj<typeof meta>;\n\nexport const Default: Story = {};\n\nexport const Checked: Story = {\n args: {\n checked: true,\n },\n};\n\nexport const Disabled: Story = {\n args: {\n disabled: true,\n },\n};\n\nexport const DisabledChecked: Story = {\n args: {\n checked: true,\n disabled: true,\n },\n};\n"],"names":["meta","Switch","args","checked","setChecked","React","jsxs","jsx","value","Default","Checked","Disabled","DisabledChecked"],"mappings":";;;AAKA,MAAMA,IAAO;AAAA,EACX,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,MAAM,CAAC,UAAU;AAAA,EACjB,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,UAAU;AAAA,EAAA;AAAA,EAEZ,UAAU;AAAA,IACR,SAAS;AAAA,MACP,SAAS;AAAA,IAAA;AAAA,IAEX,UAAU;AAAA,MACR,SAAS;AAAA,IAAA;AAAA,IAEX,iBAAiB;AAAA,MACf,QAAQ;AAAA,IAAA;AAAA,EACV;AAAA,EAEF,QAAQ,CAACC,MAAS;AAChB,UAAM,CAACC,GAASC,CAAU,IAAIC,EAAM,SAASH,EAAK,OAAO;AAEzD,WAAAG,EAAM,UAAU,MAAM;AACpB,MAAAD,EAAWF,EAAK,OAAO;AAAA,IACzB,GAAG,CAACA,EAAK,OAAO,CAAC,GAGf,gBAAAI,EAAC,OAAA,EAAI,WAAU,2BACb,UAAA;AAAA,MAAA,gBAAAC;AAAA,QAACN;AAAA,QAAA;AAAA,UACE,GAAGC;AAAA,UACJ,SAAAC;AAAA,UACA,iBAAiB,CAACK,MAAU;AAC1B,YAAAJ,EAAWI,CAAK,GAChBN,EAAK,kBAAkBM,CAAK;AAAA,UAC9B;AAAA,QAAA;AAAA,MAAA;AAAA,wBAED,QAAA,EAAK,WAAU,WAAW,UAAAL,IAAU,YAAY,WAAA,CAAW;AAAA,IAAA,GAC9D;AAAA,EAEJ;AACF,GAMaM,IAAiB,CAAA,GAEjBC,IAAiB;AAAA,EAC5B,MAAM;AAAA,IACJ,SAAS;AAAA,EAAA;AAEb,GAEaC,IAAkB;AAAA,EAC7B,MAAM;AAAA,IACJ,UAAU;AAAA,EAAA;AAEd,GAEaC,IAAyB;AAAA,EACpC,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,UAAU;AAAA,EAAA;AAEd;"}
@@ -1,30 +1,31 @@
1
1
  import { jsxs as i, jsx as n } from "react/jsx-runtime";
2
2
  import { Button as o } from "../Button/Button.js";
3
3
  import "../Button/buttonVariants.js";
4
+ import "react";
4
5
  import "@radix-ui/react-select";
5
6
  import "lucide-react";
6
7
  import "@oneplatformdev/utils";
7
8
  import { Select as P } from "../Select/Select.js";
8
- const L = ({
9
+ const M = ({
9
10
  offset: l,
10
11
  limit: a,
11
- totalRows: s,
12
+ totalRows: t,
12
13
  setLimit: p,
13
- setOffset: t,
14
+ setOffset: s,
14
15
  tRowsPerPage: m = "Rows per page",
15
16
  tPrevious: d = "Previous",
16
17
  tPage: u = "Page",
17
18
  tNext: x = "Next",
18
19
  tOf: v = "Of"
19
20
  }) => {
20
- const r = Math.ceil(l / a) + 1, c = Math.ceil(s / a), h = r === c, b = (e) => {
21
- t(0), p(parseInt(e));
21
+ const r = Math.ceil(l / a) + 1, c = Math.ceil(t / a), h = r === c, b = (e) => {
22
+ s(0), p(parseInt(e));
22
23
  }, g = () => {
23
24
  let e = l - a;
24
- e < 0 && (e = 0), t(e);
25
+ e < 0 && (e = 0), s(e);
25
26
  }, N = () => {
26
27
  let e = l + a;
27
- e > s && (e = s - a), t(e);
28
+ e > t && (e = t - a), s(e);
28
29
  };
29
30
  return /* @__PURE__ */ i("div", { className: "flex items-center justify-end space-x-2 py-4", children: [
30
31
  /* @__PURE__ */ i("div", { className: "flex items-center space-x-2", children: [
@@ -72,6 +73,6 @@ const L = ({
72
73
  ] });
73
74
  };
74
75
  export {
75
- L as TablePagination
76
+ M as TablePagination
76
77
  };
77
78
  //# sourceMappingURL=TablePagination.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TablePagination.js","sources":["../../src/TablePagination/TablePagination.tsx"],"sourcesContent":["'use client';\n\nimport { Button } from '../Button';\nimport { Select } from '../Select';\nimport { FC } from 'react';\n\ninterface IProps {\n limit: number;\n offset: number;\n totalRows: number;\n setLimit: (limit: number) => void;\n setOffset: (offset: number) => void;\n tRowsPerPage?: string;\n tPrevious?: string;\n tPage?:string;\n tNext?:string;\n tOf?:string\n}\n\nexport const TablePagination: FC<IProps> = ({\n offset,\n limit,\n totalRows,\n setLimit,\n setOffset,\n tRowsPerPage= \"Rows per page\",\n tPrevious= \"Previous\",\n tPage= \"Page\",\n tNext= \"Next\",\n tOf= \"Of\",\n}) => {\n const currentPage = Math.ceil(offset / limit) + 1;\n const totalPages = Math.ceil(totalRows / limit);\n const isLastPage = currentPage === totalPages;\n\n const onChangeLimit = (value: string) => {\n setOffset(0);\n setLimit(parseInt(value));\n };\n\n const onPrevious = () => {\n let nextOffset = offset - limit;\n if (nextOffset < 0) {\n nextOffset = 0;\n }\n setOffset(nextOffset);\n };\n\n const onNext = () => {\n let nextOffset = offset + limit;\n if (nextOffset > totalRows) {\n nextOffset = totalRows - limit;\n }\n setOffset(nextOffset);\n };\n\n return (\n <div className=\"flex items-center justify-end space-x-2 py-4\">\n <div className=\"flex items-center space-x-2\">\n <span className=\"text-sm text-nowrap\">{tRowsPerPage}</span>\n <Select\n value={limit?.toString()}\n options={[\n { value: '5', label: '5' },\n { value: '10', label: '10' },\n { value: '20', label: '20' },\n { value: '30', label: '30' },\n { value: '50', label: '50' },\n ]}\n onChange={onChangeLimit}\n placeholder=\"6\"\n nullable={false}\n />\n </div>\n <div className=\"space-x-2\">\n <Button\n variant=\"outline\"\n size=\"sm\"\n disabled={!offset}\n onClick={onPrevious}\n >\n {tPrevious}\n </Button>\n <span className=\"text-sm\">{`${tPage} ${currentPage} ${tOf} ${totalPages}`}</span>\n <Button\n variant=\"outline\"\n size=\"sm\"\n disabled={isLastPage}\n onClick={onNext}\n >\n {tNext}\n </Button>\n </div>\n </div>\n );\n};\n"],"names":["TablePagination","offset","limit","totalRows","setLimit","setOffset","tRowsPerPage","tPrevious","tPage","tNext","tOf","currentPage","totalPages","isLastPage","onChangeLimit","value","onPrevious","nextOffset","onNext","jsxs","jsx","Select","Button"],"mappings":";;;;;;;AAmBO,MAAMA,IAA8B,CAAC;AAAA,EAC1C,QAAAC;AAAA,EACA,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,cAAAC,IAAc;AAAA,EACd,WAAAC,IAAW;AAAA,EACX,OAAAC,IAAO;AAAA,EACP,OAAAC,IAAO;AAAA,EACP,KAAAC,IAAK;AACP,MAAM;AACJ,QAAMC,IAAc,KAAK,KAAKV,IAASC,CAAK,IAAI,GAC1CU,IAAa,KAAK,KAAKT,IAAYD,CAAK,GACxCW,IAAaF,MAAgBC,GAE7BE,IAAgB,CAACC,MAAkB;AACvC,IAAAV,EAAU,CAAC,GACXD,EAAS,SAASW,CAAK,CAAC;AAAA,EAC1B,GAEMC,IAAa,MAAM;AACvB,QAAIC,IAAahB,IAASC;AAC1B,IAAIe,IAAa,MACfA,IAAa,IAEfZ,EAAUY,CAAU;AAAA,EACtB,GAEMC,IAAS,MAAM;AACnB,QAAID,IAAahB,IAASC;AAC1B,IAAIe,IAAad,MACfc,IAAad,IAAYD,IAE3BG,EAAUY,CAAU;AAAA,EACtB;AAEA,SACE,gBAAAE,EAAC,OAAA,EAAI,WAAU,gDACb,UAAA;AAAA,IAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,+BACb,UAAA;AAAA,MAAA,gBAAAC,EAAC,QAAA,EAAK,WAAU,uBAAuB,UAAAd,GAAa;AAAA,MACpD,gBAAAc;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,OAAOnB,GAAO,SAAA;AAAA,UACd,SAAS;AAAA,YACP,EAAE,OAAO,KAAK,OAAO,IAAA;AAAA,YACrB,EAAE,OAAO,MAAM,OAAO,KAAA;AAAA,YACtB,EAAE,OAAO,MAAM,OAAO,KAAA;AAAA,YACtB,EAAE,OAAO,MAAM,OAAO,KAAA;AAAA,YACtB,EAAE,OAAO,MAAM,OAAO,KAAA;AAAA,UAAK;AAAA,UAE7B,UAAUY;AAAA,UACV,aAAY;AAAA,UACZ,UAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IACZ,GACF;AAAA,IACA,gBAAAK,EAAC,OAAA,EAAI,WAAU,aACb,UAAA;AAAA,MAAA,gBAAAC;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,UAAU,CAACrB;AAAA,UACX,SAASe;AAAA,UAER,UAAAT;AAAA,QAAA;AAAA,MAAA;AAAA,MAEH,gBAAAa,EAAC,QAAA,EAAK,WAAU,WAAW,UAAA,GAAGZ,CAAK,IAAIG,CAAW,IAAID,CAAG,IAAIE,CAAU,IAAG;AAAA,MAC1E,gBAAAQ;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,UAAUT;AAAA,UACV,SAASK;AAAA,UAER,UAAAT;AAAA,QAAA;AAAA,MAAA;AAAA,IACH,EAAA,CACF;AAAA,EAAA,GACF;AAEJ;"}
1
+ {"version":3,"file":"TablePagination.js","sources":["../../src/TablePagination/TablePagination.tsx"],"sourcesContent":["'use client';\n\nimport { Button } from '../Button';\nimport { Select } from '../Select';\nimport { FC } from 'react';\n\ninterface IProps {\n limit: number;\n offset: number;\n totalRows: number;\n setLimit: (limit: number) => void;\n setOffset: (offset: number) => void;\n tRowsPerPage?: string;\n tPrevious?: string;\n tPage?:string;\n tNext?:string;\n tOf?:string\n}\n\nexport const TablePagination: FC<IProps> = ({\n offset,\n limit,\n totalRows,\n setLimit,\n setOffset,\n tRowsPerPage= \"Rows per page\",\n tPrevious= \"Previous\",\n tPage= \"Page\",\n tNext= \"Next\",\n tOf= \"Of\",\n}) => {\n const currentPage = Math.ceil(offset / limit) + 1;\n const totalPages = Math.ceil(totalRows / limit);\n const isLastPage = currentPage === totalPages;\n\n const onChangeLimit = (value: string) => {\n setOffset(0);\n setLimit(parseInt(value));\n };\n\n const onPrevious = () => {\n let nextOffset = offset - limit;\n if (nextOffset < 0) {\n nextOffset = 0;\n }\n setOffset(nextOffset);\n };\n\n const onNext = () => {\n let nextOffset = offset + limit;\n if (nextOffset > totalRows) {\n nextOffset = totalRows - limit;\n }\n setOffset(nextOffset);\n };\n\n return (\n <div className=\"flex items-center justify-end space-x-2 py-4\">\n <div className=\"flex items-center space-x-2\">\n <span className=\"text-sm text-nowrap\">{tRowsPerPage}</span>\n <Select\n value={limit?.toString()}\n options={[\n { value: '5', label: '5' },\n { value: '10', label: '10' },\n { value: '20', label: '20' },\n { value: '30', label: '30' },\n { value: '50', label: '50' },\n ]}\n onChange={onChangeLimit}\n placeholder=\"6\"\n nullable={false}\n />\n </div>\n <div className=\"space-x-2\">\n <Button\n variant=\"outline\"\n size=\"sm\"\n disabled={!offset}\n onClick={onPrevious}\n >\n {tPrevious}\n </Button>\n <span className=\"text-sm\">{`${tPage} ${currentPage} ${tOf} ${totalPages}`}</span>\n <Button\n variant=\"outline\"\n size=\"sm\"\n disabled={isLastPage}\n onClick={onNext}\n >\n {tNext}\n </Button>\n </div>\n </div>\n );\n};\n"],"names":["TablePagination","offset","limit","totalRows","setLimit","setOffset","tRowsPerPage","tPrevious","tPage","tNext","tOf","currentPage","totalPages","isLastPage","onChangeLimit","value","onPrevious","nextOffset","onNext","jsxs","jsx","Select","Button"],"mappings":";;;;;;;;AAmBO,MAAMA,IAA8B,CAAC;AAAA,EAC1C,QAAAC;AAAA,EACA,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,cAAAC,IAAc;AAAA,EACd,WAAAC,IAAW;AAAA,EACX,OAAAC,IAAO;AAAA,EACP,OAAAC,IAAO;AAAA,EACP,KAAAC,IAAK;AACP,MAAM;AACJ,QAAMC,IAAc,KAAK,KAAKV,IAASC,CAAK,IAAI,GAC1CU,IAAa,KAAK,KAAKT,IAAYD,CAAK,GACxCW,IAAaF,MAAgBC,GAE7BE,IAAgB,CAACC,MAAkB;AACvC,IAAAV,EAAU,CAAC,GACXD,EAAS,SAASW,CAAK,CAAC;AAAA,EAC1B,GAEMC,IAAa,MAAM;AACvB,QAAIC,IAAahB,IAASC;AAC1B,IAAIe,IAAa,MACfA,IAAa,IAEfZ,EAAUY,CAAU;AAAA,EACtB,GAEMC,IAAS,MAAM;AACnB,QAAID,IAAahB,IAASC;AAC1B,IAAIe,IAAad,MACfc,IAAad,IAAYD,IAE3BG,EAAUY,CAAU;AAAA,EACtB;AAEA,SACE,gBAAAE,EAAC,OAAA,EAAI,WAAU,gDACb,UAAA;AAAA,IAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,+BACb,UAAA;AAAA,MAAA,gBAAAC,EAAC,QAAA,EAAK,WAAU,uBAAuB,UAAAd,GAAa;AAAA,MACpD,gBAAAc;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,OAAOnB,GAAO,SAAA;AAAA,UACd,SAAS;AAAA,YACP,EAAE,OAAO,KAAK,OAAO,IAAA;AAAA,YACrB,EAAE,OAAO,MAAM,OAAO,KAAA;AAAA,YACtB,EAAE,OAAO,MAAM,OAAO,KAAA;AAAA,YACtB,EAAE,OAAO,MAAM,OAAO,KAAA;AAAA,YACtB,EAAE,OAAO,MAAM,OAAO,KAAA;AAAA,UAAK;AAAA,UAE7B,UAAUY;AAAA,UACV,aAAY;AAAA,UACZ,UAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IACZ,GACF;AAAA,IACA,gBAAAK,EAAC,OAAA,EAAI,WAAU,aACb,UAAA;AAAA,MAAA,gBAAAC;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,UAAU,CAACrB;AAAA,UACX,SAASe;AAAA,UAER,UAAAT;AAAA,QAAA;AAAA,MAAA;AAAA,MAEH,gBAAAa,EAAC,QAAA,EAAK,WAAU,WAAW,UAAA,GAAGZ,CAAK,IAAIG,CAAW,IAAID,CAAG,IAAIE,CAAU,IAAG;AAAA,MAC1E,gBAAAQ;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,SAAQ;AAAA,UACR,MAAK;AAAA,UACL,UAAUT;AAAA,UACV,SAASK;AAAA,UAER,UAAAT;AAAA,QAAA;AAAA,MAAA;AAAA,IACH,EAAA,CACF;AAAA,EAAA,GACF;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.d.ts","sourceRoot":"","sources":["../../src/Textarea/Textarea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,QAAA,MAAM,QAAQ,wGAmEb,CAAC;AAGF,OAAO,EAAE,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"Textarea.d.ts","sourceRoot":"","sources":["../../src/Textarea/Textarea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,QAAA,MAAM,QAAQ,wGA2Eb,CAAC;AAGF,OAAO,EAAE,QAAQ,EAAE,CAAC"}