@oneplatformdev/ui 0.1.99-beta.29 → 0.1.99-beta.290

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 (289) 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 +37 -5
  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 +2 -1
  35. package/ButtonIcon/buttonIconVariants.js.map +1 -1
  36. package/CHANGELOG.md +1581 -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 +240 -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/DatePicker/DatePicker.d.ts.map +1 -1
  98. package/DatePicker/DatePicker.js +31 -29
  99. package/DatePicker/DatePicker.js.map +1 -1
  100. package/Dialog/Dialog.d.ts +4 -1
  101. package/Dialog/Dialog.d.ts.map +1 -1
  102. package/Dialog/Dialog.js +83 -40
  103. package/Dialog/Dialog.js.map +1 -1
  104. package/Dialog/Dialog.stories.js +109 -0
  105. package/Dialog/Dialog.stories.js.map +1 -0
  106. package/Dialog/Dialog.types.d.ts +4 -0
  107. package/Dialog/Dialog.types.d.ts.map +1 -0
  108. package/Dialog/Dialog.types.js +2 -0
  109. package/Dialog/Dialog.types.js.map +1 -0
  110. package/Dialog/index.d.ts +1 -0
  111. package/Dialog/index.d.ts.map +1 -1
  112. package/Dialog/useDialogClosePosition.d.ts +11 -0
  113. package/Dialog/useDialogClosePosition.d.ts.map +1 -0
  114. package/Dialog/useDialogClosePosition.js +50 -0
  115. package/Dialog/useDialogClosePosition.js.map +1 -0
  116. package/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  117. package/DropdownMenu/DropdownMenu.js +33 -20
  118. package/DropdownMenu/DropdownMenu.js.map +1 -1
  119. package/Dropzone/Dropzone.d.ts.map +1 -1
  120. package/Dropzone/Dropzone.js +470 -132
  121. package/Dropzone/Dropzone.js.map +1 -1
  122. package/Dropzone/Dropzone.stories.js +366 -0
  123. package/Dropzone/Dropzone.stories.js.map +1 -0
  124. package/Dropzone/Dropzone.types.d.ts +28 -1
  125. package/Dropzone/Dropzone.types.d.ts.map +1 -1
  126. package/Dropzone/Dropzone.types.js +20 -8
  127. package/Dropzone/Dropzone.types.js.map +1 -1
  128. package/Dropzone/DropzoneFilePreview.d.ts.map +1 -1
  129. package/Dropzone/DropzoneFilePreview.js +46 -26
  130. package/Dropzone/DropzoneFilePreview.js.map +1 -1
  131. package/Dropzone/DropzoneSinglePickPreview.d.ts +10 -2
  132. package/Dropzone/DropzoneSinglePickPreview.d.ts.map +1 -1
  133. package/Dropzone/DropzoneSinglePickPreview.js +207 -22
  134. package/Dropzone/DropzoneSinglePickPreview.js.map +1 -1
  135. package/Dropzone/DropzoneUtils.d.ts +1 -0
  136. package/Dropzone/DropzoneUtils.d.ts.map +1 -1
  137. package/Dropzone/DropzoneUtils.js +17 -6
  138. package/Dropzone/DropzoneUtils.js.map +1 -1
  139. package/Dropzone/icons/file-csv.svg.js +5 -0
  140. package/Dropzone/icons/file-csv.svg.js.map +1 -0
  141. package/Dropzone/icons/file-doc.svg.js +5 -0
  142. package/Dropzone/icons/file-doc.svg.js.map +1 -0
  143. package/Dropzone/icons/file-docx.svg.js +5 -0
  144. package/Dropzone/icons/file-docx.svg.js.map +1 -0
  145. package/Dropzone/icons/file-jpg.svg.js +5 -0
  146. package/Dropzone/icons/file-jpg.svg.js.map +1 -0
  147. package/Dropzone/icons/file-pdf.svg.js +5 -0
  148. package/Dropzone/icons/file-pdf.svg.js.map +1 -0
  149. package/Dropzone/icons/file-png.svg.js +5 -0
  150. package/Dropzone/icons/file-png.svg.js.map +1 -0
  151. package/Dropzone/icons/file-ppt.svg.js +5 -0
  152. package/Dropzone/icons/file-ppt.svg.js.map +1 -0
  153. package/Dropzone/icons/file-pptx.svg.js +5 -0
  154. package/Dropzone/icons/file-pptx.svg.js.map +1 -0
  155. package/Dropzone/icons/file-rar.svg.js +5 -0
  156. package/Dropzone/icons/file-rar.svg.js.map +1 -0
  157. package/Dropzone/icons/file-svg.svg.js +5 -0
  158. package/Dropzone/icons/file-svg.svg.js.map +1 -0
  159. package/Dropzone/icons/file-webp.svg.js +5 -0
  160. package/Dropzone/icons/file-webp.svg.js.map +1 -0
  161. package/Dropzone/icons/file-xls.svg.js +5 -0
  162. package/Dropzone/icons/file-xls.svg.js.map +1 -0
  163. package/Dropzone/icons/file-xlsx.svg.js +5 -0
  164. package/Dropzone/icons/file-xlsx.svg.js.map +1 -0
  165. package/Dropzone/icons/file-zip.svg.js +5 -0
  166. package/Dropzone/icons/file-zip.svg.js.map +1 -0
  167. package/Dropzone/index.js +7 -5
  168. package/Form/Form.js +14 -14
  169. package/Form/Form.js.map +1 -1
  170. package/Form/FormRenderControl.d.ts +1 -1
  171. package/Form/FormRenderControl.d.ts.map +1 -1
  172. package/Form/FormRenderControl.js +55 -14
  173. package/Form/FormRenderControl.js.map +1 -1
  174. package/Form/FormRenderControl.types.d.ts +6 -2
  175. package/Form/FormRenderControl.types.d.ts.map +1 -1
  176. package/FormCombobox/FormCombobox.d.ts +4 -2
  177. package/FormCombobox/FormCombobox.d.ts.map +1 -1
  178. package/FormCombobox/FormCombobox.js +30 -17
  179. package/FormCombobox/FormCombobox.js.map +1 -1
  180. package/FormCombobox/FormCombobox.types.d.ts +6 -2
  181. package/FormCombobox/FormCombobox.types.d.ts.map +1 -1
  182. package/FormDatePicker/FormDatePicker.d.ts.map +1 -1
  183. package/FormDatePicker/FormDatePicker.js +18 -16
  184. package/FormDatePicker/FormDatePicker.js.map +1 -1
  185. package/FormDropzone/FormDropzone.d.ts.map +1 -1
  186. package/FormDropzone/FormDropzone.js +11 -9
  187. package/FormDropzone/FormDropzone.js.map +1 -1
  188. package/FormInput/FormInput.d.ts.map +1 -1
  189. package/FormInput/FormInput.js +47 -27
  190. package/FormInput/FormInput.js.map +1 -1
  191. package/FormInput/FormInput.stories.js +80 -0
  192. package/FormInput/FormInput.stories.js.map +1 -0
  193. package/FormInput/FormInput.types.d.ts +1 -0
  194. package/FormInput/FormInput.types.d.ts.map +1 -1
  195. package/FormSelect/FormSelect.d.ts.map +1 -1
  196. package/FormSelect/FormSelect.js +21 -17
  197. package/FormSelect/FormSelect.js.map +1 -1
  198. package/FormTextarea/FormTextarea.d.ts.map +1 -1
  199. package/FormTextarea/FormTextarea.js +15 -12
  200. package/FormTextarea/FormTextarea.js.map +1 -1
  201. package/InfoBlock/InfoBlock.d.ts +7 -0
  202. package/InfoBlock/InfoBlock.d.ts.map +1 -0
  203. package/InfoBlock/InfoBlock.js +28 -0
  204. package/InfoBlock/InfoBlock.js.map +1 -0
  205. package/InfoBlock/InfoBlock.stories.js +50 -0
  206. package/InfoBlock/InfoBlock.stories.js.map +1 -0
  207. package/InfoBlock/InfoBlock.types.d.ts +9 -0
  208. package/InfoBlock/InfoBlock.types.d.ts.map +1 -0
  209. package/InfoBlock/InfoBlock.types.js +2 -0
  210. package/InfoBlock/InfoBlock.types.js.map +1 -0
  211. package/InfoBlock/index.d.ts +3 -0
  212. package/InfoBlock/index.d.ts.map +1 -0
  213. package/InfoBlock/index.js +5 -0
  214. package/InfoBlock/index.js.map +1 -0
  215. package/InfoBlock/infoBlockVariants.d.ts +6 -0
  216. package/InfoBlock/infoBlockVariants.d.ts.map +1 -0
  217. package/InfoBlock/infoBlockVariants.js +27 -0
  218. package/InfoBlock/infoBlockVariants.js.map +1 -0
  219. package/Input/Input.d.ts.map +1 -1
  220. package/Input/Input.js +104 -53
  221. package/Input/Input.js.map +1 -1
  222. package/Input/Input.stories.js +225 -0
  223. package/Input/Input.stories.js.map +1 -0
  224. package/Input/Input.types.d.ts +5 -0
  225. package/Input/Input.types.d.ts.map +1 -1
  226. package/LoadingMask/LoadingMask.d.ts +1 -2
  227. package/LoadingMask/LoadingMask.d.ts.map +1 -1
  228. package/LoadingMask/LoadingMask.js +8 -8
  229. package/LoadingMask/LoadingMask.js.map +1 -1
  230. package/LoadingMask/LoadingMask.types.d.ts +1 -0
  231. package/LoadingMask/LoadingMask.types.d.ts.map +1 -1
  232. package/Popover/Popover.d.ts +3 -1
  233. package/Popover/Popover.d.ts.map +1 -1
  234. package/Popover/Popover.js +15 -10
  235. package/Popover/Popover.js.map +1 -1
  236. package/ScrollArea/ScrollArea.d.ts +5 -1
  237. package/ScrollArea/ScrollArea.d.ts.map +1 -1
  238. package/ScrollArea/ScrollArea.js +23 -17
  239. package/ScrollArea/ScrollArea.js.map +1 -1
  240. package/Search/Search.d.ts.map +1 -1
  241. package/Search/Search.js +40 -31
  242. package/Search/Search.js.map +1 -1
  243. package/Select/Select.d.ts.map +1 -1
  244. package/Select/Select.js +53 -48
  245. package/Select/Select.js.map +1 -1
  246. package/Select/Select.types.d.ts +4 -0
  247. package/Select/Select.types.d.ts.map +1 -1
  248. package/Select/SelectRoot.d.ts.map +1 -1
  249. package/Select/SelectRoot.js +79 -66
  250. package/Select/SelectRoot.js.map +1 -1
  251. package/Switch/Switch.d.ts +1 -1
  252. package/Switch/Switch.d.ts.map +1 -1
  253. package/Switch/Switch.js +19 -9
  254. package/Switch/Switch.js.map +1 -1
  255. package/Switch/Switch.stories.js +62 -0
  256. package/Switch/Switch.stories.js.map +1 -0
  257. package/TablePagination/TablePagination.js +9 -8
  258. package/TablePagination/TablePagination.js.map +1 -1
  259. package/Textarea/Textarea.d.ts.map +1 -1
  260. package/Textarea/Textarea.js +50 -45
  261. package/Textarea/Textarea.js.map +1 -1
  262. package/Textarea/Textarea.types.d.ts +3 -1
  263. package/Textarea/Textarea.types.d.ts.map +1 -1
  264. package/Toast/Toast.d.ts +1 -1
  265. package/Toast/toastVariants.d.ts +1 -1
  266. package/Tooltip/QuestionMarkIcon.svg.js +6 -0
  267. package/Tooltip/QuestionMarkIcon.svg.js.map +1 -0
  268. package/Tooltip/Tooltip.d.ts.map +1 -1
  269. package/Tooltip/Tooltip.js +52 -32
  270. package/Tooltip/Tooltip.js.map +1 -1
  271. package/Tooltip/Tooltip.types.d.ts +10 -0
  272. package/Tooltip/Tooltip.types.d.ts.map +1 -1
  273. package/Tooltip/tooltipVariants.d.ts +4 -0
  274. package/Tooltip/tooltipVariants.d.ts.map +1 -0
  275. package/Tooltip/tooltipVariants.js +23 -0
  276. package/Tooltip/tooltipVariants.js.map +1 -0
  277. package/index.d.ts +2 -0
  278. package/index.d.ts.map +1 -1
  279. package/index.js +352 -340
  280. package/index.js.map +1 -1
  281. package/package.json +10 -6
  282. package/styles.css +1 -0
  283. package/vite-env.d.js +2 -0
  284. package/vite-env.d.js.map +1 -0
  285. package/vite-env.d.ts +7 -0
  286. package/Combobox/ComboboxOptions.d.ts +0 -4
  287. package/Combobox/ComboboxOptions.d.ts.map +0 -1
  288. package/Combobox/ComboboxOptions.js +0 -65
  289. package/Combobox/ComboboxOptions.js.map +0 -1
@@ -1,12 +1,13 @@
1
1
  import { jsxs as i, jsx as l } from "react/jsx-runtime";
2
2
  import { Button as m } from "../Button/Button.js";
3
3
  import "../Button/buttonVariants.js";
4
+ import "react";
4
5
  import { DropdownMenu as h, DropdownMenuTrigger as p, DropdownMenuContent as g, DropdownMenuCheckboxItem as u } from "../DropdownMenu/DropdownMenu.js";
5
6
  import { Table as C, TableHeader as f, TableRow as t, TableHead as w, TableBody as x, TableCell as o } from "../Table/Table.js";
6
7
  import { flexRender as d } from "@tanstack/react-table";
7
8
  import { ChevronDown as b } from "lucide-react";
8
- const k = ({
9
- table: r,
9
+ const y = ({
10
+ table: n,
10
11
  ToolBar: a,
11
12
  tColumns: s = "Columns",
12
13
  tNoResults: c = "No results"
@@ -19,12 +20,12 @@ const k = ({
19
20
  " ",
20
21
  /* @__PURE__ */ l(b, { className: "ml-2 h-4 w-4" })
21
22
  ] }) }),
22
- /* @__PURE__ */ l(g, { align: "end", children: r.getAllColumns().filter((e) => e.getCanHide()).map((e) => /* @__PURE__ */ l(
23
+ /* @__PURE__ */ l(g, { align: "end", children: n.getAllColumns().filter((e) => e.getCanHide()).map((e) => /* @__PURE__ */ l(
23
24
  u,
24
25
  {
25
26
  className: "capitalize",
26
27
  checked: e.getIsVisible(),
27
- onCheckedChange: (n) => e.toggleVisibility(!!n),
28
+ onCheckedChange: (r) => e.toggleVisibility(!!r),
28
29
  children: e.id
29
30
  },
30
31
  e.id
@@ -32,24 +33,24 @@ const k = ({
32
33
  ] })
33
34
  ] }),
34
35
  /* @__PURE__ */ l("div", { className: "rounded-md border", children: /* @__PURE__ */ i(C, { children: [
35
- /* @__PURE__ */ l(f, { children: r.getHeaderGroups().map((e) => /* @__PURE__ */ l(t, { children: e.headers.map((n) => /* @__PURE__ */ l(w, { children: n.isPlaceholder ? null : d(
36
- n.column.columnDef.header,
37
- n.getContext()
38
- ) }, n.id)) }, e.id)) }),
39
- /* @__PURE__ */ l(x, { children: r.getRowModel().rows?.length ? r.getRowModel().rows.map((e) => /* @__PURE__ */ l(
36
+ /* @__PURE__ */ l(f, { children: n.getHeaderGroups().map((e) => /* @__PURE__ */ l(t, { children: e.headers.map((r) => /* @__PURE__ */ l(w, { children: r.isPlaceholder ? null : d(
37
+ r.column.columnDef.header,
38
+ r.getContext()
39
+ ) }, r.id)) }, e.id)) }),
40
+ /* @__PURE__ */ l(x, { children: n.getRowModel().rows?.length ? n.getRowModel().rows.map((e) => /* @__PURE__ */ l(
40
41
  t,
41
42
  {
42
43
  "data-state": e.getIsSelected() && "selected",
43
- children: e.getVisibleCells().map((n) => /* @__PURE__ */ l(o, { children: d(
44
- n.column.columnDef.cell,
45
- n.getContext()
46
- ) }, n.id))
44
+ children: e.getVisibleCells().map((r) => /* @__PURE__ */ l(o, { children: d(
45
+ r.column.columnDef.cell,
46
+ r.getContext()
47
+ ) }, r.id))
47
48
  },
48
49
  e.id
49
50
  )) : /* @__PURE__ */ l(t, { children: /* @__PURE__ */ l(
50
51
  o,
51
52
  {
52
- colSpan: r.getAllColumns().length,
53
+ colSpan: n.getAllColumns().length,
53
54
  className: "h-24 text-center",
54
55
  children: c
55
56
  }
@@ -57,6 +58,6 @@ const k = ({
57
58
  ] }) })
58
59
  ] });
59
60
  export {
60
- k as DataTable
61
+ y as DataTable
61
62
  };
62
63
  //# sourceMappingURL=DataTable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataTable.js","sources":["../../src/DataTable/DataTable.tsx"],"sourcesContent":["'use client';\n\nimport { Button } from '../Button';\nimport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuTrigger,\n} from '../DropdownMenu';\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from '../Table';\nimport { flexRender, type Table as ReactTable } from '@tanstack/react-table';\nimport { ChevronDown } from 'lucide-react';\nimport React, { FC } from 'react';\n\ninterface IProps {\n table: ReactTable<any>;\n ToolBar?: React.ReactNode;\n tColumns?: string;\n tNoResults?: string;\n}\n\nexport const DataTable: FC<IProps> = ({\n table,\n ToolBar,\n tColumns = 'Columns',\n tNoResults = 'No results',\n}) => {\n return (\n <div className=\"w-full\">\n <div className=\"flex items-center py-4\">\n {ToolBar}\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"outline\" className=\"ml-auto\">\n {tColumns} <ChevronDown className=\"ml-2 h-4 w-4\" />\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n {table\n .getAllColumns()\n .filter((column) => column.getCanHide())\n .map((column) => {\n return (\n <DropdownMenuCheckboxItem\n key={column.id}\n className=\"capitalize\"\n checked={column.getIsVisible()}\n onCheckedChange={(value) =>\n column.toggleVisibility(!!value)\n }\n >\n {column.id}\n </DropdownMenuCheckboxItem>\n );\n })}\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n <div className=\"rounded-md border\">\n <Table>\n <TableHeader>\n {table.getHeaderGroups().map((headerGroup) => (\n <TableRow key={headerGroup.id}>\n {headerGroup.headers.map((header) => {\n return (\n <TableHead key={header.id}>\n {header.isPlaceholder\n ? null\n : flexRender(\n header.column.columnDef.header,\n header.getContext()\n )}\n </TableHead>\n );\n })}\n </TableRow>\n ))}\n </TableHeader>\n <TableBody>\n {table.getRowModel().rows?.length ? (\n table.getRowModel().rows.map((row) => (\n <TableRow\n key={row.id}\n data-state={row.getIsSelected() && 'selected'}\n >\n {row.getVisibleCells().map((cell) => (\n <TableCell key={cell.id}>\n {flexRender(\n cell.column.columnDef.cell,\n cell.getContext()\n )}\n </TableCell>\n ))}\n </TableRow>\n ))\n ) : (\n <TableRow>\n <TableCell\n colSpan={table.getAllColumns().length}\n className=\"h-24 text-center\"\n >\n {tNoResults}\n </TableCell>\n </TableRow>\n )}\n </TableBody>\n </Table>\n </div>\n </div>\n );\n};\n"],"names":["DataTable","table","ToolBar","tColumns","tNoResults","jsxs","DropdownMenu","jsx","DropdownMenuTrigger","Button","ChevronDown","DropdownMenuContent","column","DropdownMenuCheckboxItem","value","Table","TableHeader","headerGroup","TableRow","header","TableHead","flexRender","TableBody","row","cell","TableCell"],"mappings":";;;;;;;AA4BO,MAAMA,IAAwB,CAAC;AAAA,EACpC,OAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,YAAAC,IAAa;AACf,MAEI,gBAAAC,EAAC,OAAA,EAAI,WAAU,UACb,UAAA;AAAA,EAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,0BACZ,UAAA;AAAA,IAAAH;AAAA,sBACAI,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAC,EAACC,GAAA,EAAoB,SAAO,IAC1B,UAAA,gBAAAH,EAACI,KAAO,SAAQ,WAAU,WAAU,WACjC,UAAA;AAAA,QAAAN;AAAA,QAAS;AAAA,QAAC,gBAAAI,EAACG,GAAA,EAAY,WAAU,eAAA,CAAe;AAAA,MAAA,EAAA,CACnD,EAAA,CACF;AAAA,wBACCC,GAAA,EAAoB,OAAM,OACxB,UAAAV,EACE,gBACA,OAAO,CAACW,MAAWA,EAAO,WAAA,CAAY,EACtC,IAAI,CAACA,MAEF,gBAAAL;AAAA,QAACM;AAAA,QAAA;AAAA,UAEC,WAAU;AAAA,UACV,SAASD,EAAO,aAAA;AAAA,UAChB,iBAAiB,CAACE,MAChBF,EAAO,iBAAiB,CAAC,CAACE,CAAK;AAAA,UAGhC,UAAAF,EAAO;AAAA,QAAA;AAAA,QAPHA,EAAO;AAAA,MAAA,CAUjB,EAAA,CACL;AAAA,IAAA,EAAA,CACF;AAAA,EAAA,GACF;AAAA,EACA,gBAAAL,EAAC,OAAA,EAAI,WAAU,qBACb,4BAACQ,GAAA,EACC,UAAA;AAAA,IAAA,gBAAAR,EAACS,GAAA,EACE,UAAAf,EAAM,gBAAA,EAAkB,IAAI,CAACgB,MAC5B,gBAAAV,EAACW,GAAA,EACE,UAAAD,EAAY,QAAQ,IAAI,CAACE,MAEtB,gBAAAZ,EAACa,GAAA,EACE,UAAAD,EAAO,gBACJ,OACAE;AAAA,MACEF,EAAO,OAAO,UAAU;AAAA,MACxBA,EAAO,WAAA;AAAA,IAAW,EACpB,GANUA,EAAO,EAOvB,CAEH,EAAA,GAZYF,EAAY,EAa3B,CACD,EAAA,CACH;AAAA,IACA,gBAAAV,EAACe,GAAA,EACE,UAAArB,EAAM,YAAA,EAAc,MAAM,SACzBA,EAAM,YAAA,EAAc,KAAK,IAAI,CAACsB,MAC5B,gBAAAhB;AAAA,MAACW;AAAA,MAAA;AAAA,QAEC,cAAYK,EAAI,cAAA,KAAmB;AAAA,QAElC,YAAI,gBAAA,EAAkB,IAAI,CAACC,wBACzBC,GAAA,EACE,UAAAJ;AAAA,UACCG,EAAK,OAAO,UAAU;AAAA,UACtBA,EAAK,WAAA;AAAA,QAAW,EAClB,GAJcA,EAAK,EAKrB,CACD;AAAA,MAAA;AAAA,MAVID,EAAI;AAAA,IAAA,CAYZ,IAED,gBAAAhB,EAACW,GAAA,EACC,UAAA,gBAAAX;AAAA,MAACkB;AAAA,MAAA;AAAA,QACC,SAASxB,EAAM,cAAA,EAAgB;AAAA,QAC/B,WAAU;AAAA,QAET,UAAAG;AAAA,MAAA;AAAA,IAAA,GAEL,EAAA,CAEJ;AAAA,EAAA,EAAA,CACF,EAAA,CACF;AAAA,GACF;"}
1
+ {"version":3,"file":"DataTable.js","sources":["../../src/DataTable/DataTable.tsx"],"sourcesContent":["'use client';\n\nimport { Button } from '../Button';\nimport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuTrigger,\n} from '../DropdownMenu';\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from '../Table';\nimport { flexRender, type Table as ReactTable } from '@tanstack/react-table';\nimport { ChevronDown } from 'lucide-react';\nimport React, { FC } from 'react';\n\ninterface IProps {\n table: ReactTable<any>;\n ToolBar?: React.ReactNode;\n tColumns?: string;\n tNoResults?: string;\n}\n\nexport const DataTable: FC<IProps> = ({\n table,\n ToolBar,\n tColumns = 'Columns',\n tNoResults = 'No results',\n}) => {\n return (\n <div className=\"w-full\">\n <div className=\"flex items-center py-4\">\n {ToolBar}\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"outline\" className=\"ml-auto\">\n {tColumns} <ChevronDown className=\"ml-2 h-4 w-4\" />\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n {table\n .getAllColumns()\n .filter((column) => column.getCanHide())\n .map((column) => {\n return (\n <DropdownMenuCheckboxItem\n key={column.id}\n className=\"capitalize\"\n checked={column.getIsVisible()}\n onCheckedChange={(value) =>\n column.toggleVisibility(!!value)\n }\n >\n {column.id}\n </DropdownMenuCheckboxItem>\n );\n })}\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n <div className=\"rounded-md border\">\n <Table>\n <TableHeader>\n {table.getHeaderGroups().map((headerGroup) => (\n <TableRow key={headerGroup.id}>\n {headerGroup.headers.map((header) => {\n return (\n <TableHead key={header.id}>\n {header.isPlaceholder\n ? null\n : flexRender(\n header.column.columnDef.header,\n header.getContext()\n )}\n </TableHead>\n );\n })}\n </TableRow>\n ))}\n </TableHeader>\n <TableBody>\n {table.getRowModel().rows?.length ? (\n table.getRowModel().rows.map((row) => (\n <TableRow\n key={row.id}\n data-state={row.getIsSelected() && 'selected'}\n >\n {row.getVisibleCells().map((cell) => (\n <TableCell key={cell.id}>\n {flexRender(\n cell.column.columnDef.cell,\n cell.getContext()\n )}\n </TableCell>\n ))}\n </TableRow>\n ))\n ) : (\n <TableRow>\n <TableCell\n colSpan={table.getAllColumns().length}\n className=\"h-24 text-center\"\n >\n {tNoResults}\n </TableCell>\n </TableRow>\n )}\n </TableBody>\n </Table>\n </div>\n </div>\n );\n};\n"],"names":["DataTable","table","ToolBar","tColumns","tNoResults","jsxs","DropdownMenu","jsx","DropdownMenuTrigger","Button","ChevronDown","DropdownMenuContent","column","DropdownMenuCheckboxItem","value","Table","TableHeader","headerGroup","TableRow","header","TableHead","flexRender","TableBody","row","cell","TableCell"],"mappings":";;;;;;;;AA4BO,MAAMA,IAAwB,CAAC;AAAA,EACpC,OAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,YAAAC,IAAa;AACf,MAEI,gBAAAC,EAAC,OAAA,EAAI,WAAU,UACb,UAAA;AAAA,EAAA,gBAAAA,EAAC,OAAA,EAAI,WAAU,0BACZ,UAAA;AAAA,IAAAH;AAAA,sBACAI,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAC,EAACC,GAAA,EAAoB,SAAO,IAC1B,UAAA,gBAAAH,EAACI,KAAO,SAAQ,WAAU,WAAU,WACjC,UAAA;AAAA,QAAAN;AAAA,QAAS;AAAA,QAAC,gBAAAI,EAACG,GAAA,EAAY,WAAU,eAAA,CAAe;AAAA,MAAA,EAAA,CACnD,EAAA,CACF;AAAA,wBACCC,GAAA,EAAoB,OAAM,OACxB,UAAAV,EACE,gBACA,OAAO,CAACW,MAAWA,EAAO,WAAA,CAAY,EACtC,IAAI,CAACA,MAEF,gBAAAL;AAAA,QAACM;AAAA,QAAA;AAAA,UAEC,WAAU;AAAA,UACV,SAASD,EAAO,aAAA;AAAA,UAChB,iBAAiB,CAACE,MAChBF,EAAO,iBAAiB,CAAC,CAACE,CAAK;AAAA,UAGhC,UAAAF,EAAO;AAAA,QAAA;AAAA,QAPHA,EAAO;AAAA,MAAA,CAUjB,EAAA,CACL;AAAA,IAAA,EAAA,CACF;AAAA,EAAA,GACF;AAAA,EACA,gBAAAL,EAAC,OAAA,EAAI,WAAU,qBACb,4BAACQ,GAAA,EACC,UAAA;AAAA,IAAA,gBAAAR,EAACS,GAAA,EACE,UAAAf,EAAM,gBAAA,EAAkB,IAAI,CAACgB,MAC5B,gBAAAV,EAACW,GAAA,EACE,UAAAD,EAAY,QAAQ,IAAI,CAACE,MAEtB,gBAAAZ,EAACa,GAAA,EACE,UAAAD,EAAO,gBACJ,OACAE;AAAA,MACEF,EAAO,OAAO,UAAU;AAAA,MACxBA,EAAO,WAAA;AAAA,IAAW,EACpB,GANUA,EAAO,EAOvB,CAEH,EAAA,GAZYF,EAAY,EAa3B,CACD,EAAA,CACH;AAAA,IACA,gBAAAV,EAACe,GAAA,EACE,UAAArB,EAAM,YAAA,EAAc,MAAM,SACzBA,EAAM,YAAA,EAAc,KAAK,IAAI,CAACsB,MAC5B,gBAAAhB;AAAA,MAACW;AAAA,MAAA;AAAA,QAEC,cAAYK,EAAI,cAAA,KAAmB;AAAA,QAElC,YAAI,gBAAA,EAAkB,IAAI,CAACC,wBACzBC,GAAA,EACE,UAAAJ;AAAA,UACCG,EAAK,OAAO,UAAU;AAAA,UACtBA,EAAK,WAAA;AAAA,QAAW,EAClB,GAJcA,EAAK,EAKrB,CACD;AAAA,MAAA;AAAA,MAVID,EAAI;AAAA,IAAA,CAYZ,IAED,gBAAAhB,EAACW,GAAA,EACC,UAAA,gBAAAX;AAAA,MAACkB;AAAA,MAAA;AAAA,QACC,SAASxB,EAAM,cAAA,EAAgB;AAAA,QAC/B,WAAU;AAAA,QAET,UAAAG;AAAA,MAAA;AAAA,IAAA,GAEL,EAAA,CAEJ;AAAA,EAAA,EAAA,CACF,EAAA,CACF;AAAA,GACF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../src/DatePicker/DatePicker.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,eAAO,MAAM,UAAU,2FAyCtB,CAAC"}
1
+ {"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../src/DatePicker/DatePicker.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,eAAO,MAAM,UAAU,2FA4CtB,CAAC"}
@@ -1,54 +1,56 @@
1
- import { jsxs as e, jsx as r } from "react/jsx-runtime";
2
- import * as i from "react";
3
- import { format as d } from "date-fns";
4
- import { Calendar as s } from "lucide-react";
5
- import { cn as c } from "@oneplatformdev/utils";
6
- import { Button as f } from "../Button/Button.js";
1
+ import { jsxs as t, jsx as e } from "react/jsx-runtime";
2
+ import * as a from "react";
3
+ import { format as c } from "date-fns";
4
+ import { Calendar as f } from "lucide-react";
5
+ import { cn as p } from "@oneplatformdev/utils";
6
+ import { Button as u } from "../Button/Button.js";
7
7
  import "../Button/buttonVariants.js";
8
- import { Calendar as p } from "../Calendar/Calendar.js";
9
- import { Popover as u, PopoverTrigger as h, PopoverContent as y } from "../Popover/Popover.js";
10
- import { uk as t } from "date-fns/locale";
11
- const g = i.forwardRef(
12
- (a, m) => {
8
+ import { Calendar as h } from "../Calendar/Calendar.js";
9
+ import { Popover as g, PopoverTrigger as b, PopoverContent as y } from "../Popover/Popover.js";
10
+ import { uk as n } from "date-fns/locale";
11
+ const v = a.forwardRef(
12
+ (i, l) => {
13
13
  const {
14
14
  selectedDate: o,
15
- onDateChange: l,
16
- disabled: n = !1
17
- } = a;
18
- return /* @__PURE__ */ e(u, { children: [
19
- /* @__PURE__ */ r(h, { asChild: !0, children: /* @__PURE__ */ e(
20
- f,
15
+ onDateChange: s,
16
+ disabled: d = !1
17
+ } = i, [r, m] = a.useState(!1);
18
+ return /* @__PURE__ */ t(g, { open: r, onOpenChange: m, children: [
19
+ /* @__PURE__ */ e(b, { asChild: !0, children: /* @__PURE__ */ t(
20
+ u,
21
21
  {
22
- ref: m,
23
- disabled: n,
22
+ ref: l,
23
+ disabled: d,
24
24
  variant: "outline-solid",
25
- className: c(
25
+ className: p(
26
26
  "w-full justify-start text-left font-normal border h-10",
27
- !o && "text-muted-foreground"
27
+ !o && "text-muted-foreground",
28
+ "focus-visible:outline-hidden focus-visible:ring-0 focus-visible:border-[#9368FF]",
29
+ r && "outline-hidden ring-0 border-[#9368FF]"
28
30
  ),
29
31
  children: [
30
- o ? d(o, "LLL dd, y", { locale: t }) : /* @__PURE__ */ r("span", { children: "dd/mm/yyyy" }),
31
- /* @__PURE__ */ r(s, { className: "mr-2 h-4 w-4 ml-auto" })
32
+ o ? c(o, "LLL dd, y", { locale: n }) : /* @__PURE__ */ e("span", { children: "dd/mm/yyyy" }),
33
+ /* @__PURE__ */ e(f, { className: "mr-2 h-4 w-4 ml-auto" })
32
34
  ]
33
35
  }
34
36
  ) }),
35
- /* @__PURE__ */ r(y, { align: "start", className: "w-auto p-0", children: /* @__PURE__ */ r(
36
- p,
37
+ /* @__PURE__ */ e(y, { align: "start", className: "w-auto p-0", children: /* @__PURE__ */ e(
38
+ h,
37
39
  {
38
40
  mode: "single",
39
41
  captionLayout: "dropdown-buttons",
40
42
  selected: o,
41
- onSelect: l,
43
+ onSelect: s,
42
44
  fromYear: 1960,
43
45
  toYear: 2030,
44
- locale: t
46
+ locale: n
45
47
  }
46
48
  ) })
47
49
  ] });
48
50
  }
49
51
  );
50
- g.displayName = "DatePicker";
52
+ v.displayName = "DatePicker";
51
53
  export {
52
- g as DatePicker
54
+ v as DatePicker
53
55
  };
54
56
  //# sourceMappingURL=DatePicker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.js","sources":["../../src/DatePicker/DatePicker.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { format } from 'date-fns';\nimport { Calendar as CalendarIcon } from 'lucide-react';\nimport { cn } from '@oneplatformdev/utils';\nimport { Button } from '../Button';\nimport { Calendar } from '../Calendar';\nimport { Popover, PopoverContent, PopoverTrigger } from '../Popover';\nimport { uk } from 'date-fns/locale';\nimport { DatePickerProps } from './DatePicker.types';\n\nexport const DatePicker = React.forwardRef<HTMLButtonElement, DatePickerProps>(\n (props, ref) => {\n const {\n selectedDate,\n onDateChange,\n disabled = false\n } = props;\n return (\n <Popover>\n <PopoverTrigger asChild>\n <Button\n ref={ref}\n disabled={disabled}\n variant={'outline-solid'}\n className={cn(\n 'w-full justify-start text-left font-normal border h-10',\n !selectedDate && 'text-muted-foreground'\n )}\n >\n {selectedDate ? (\n format(selectedDate, 'LLL dd, y', { locale: uk })\n ) : (\n <span>dd/mm/yyyy</span>\n )}\n <CalendarIcon className=\"mr-2 h-4 w-4 ml-auto\" />\n </Button>\n </PopoverTrigger>\n <PopoverContent align=\"start\" className=\"w-auto p-0\">\n <Calendar\n mode=\"single\"\n captionLayout=\"dropdown-buttons\"\n selected={selectedDate}\n onSelect={onDateChange}\n fromYear={1960}\n toYear={2030}\n locale={uk}\n />\n </PopoverContent>\n </Popover>\n );\n }\n);\n\nDatePicker.displayName = 'DatePicker';\n"],"names":["DatePicker","React","props","ref","selectedDate","onDateChange","disabled","Popover","jsx","PopoverTrigger","jsxs","Button","cn","format","uk","CalendarIcon","PopoverContent","Calendar"],"mappings":";;;;;;;;;;AAYO,MAAMA,IAAaC,EAAM;AAAA,EAC9B,CAACC,GAAOC,MAAQ;AACd,UAAM;AAAA,MACJ,cAAAC;AAAA,MACA,cAAAC;AAAA,MACA,UAAAC,IAAW;AAAA,IAAA,IACTJ;AACJ,6BACGK,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAC,EAACC,GAAA,EAAe,SAAO,IACrB,UAAA,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,KAAAR;AAAA,UACA,UAAAG;AAAA,UACA,SAAS;AAAA,UACT,WAAWM;AAAA,YACT;AAAA,YACA,CAACR,KAAgB;AAAA,UAAA;AAAA,UAGlB,UAAA;AAAA,YAAAA,IACCS,EAAOT,GAAc,aAAa,EAAE,QAAQU,GAAI,IAEhD,gBAAAN,EAAC,QAAA,EAAK,UAAA,aAAA,CAAU;AAAA,YAElB,gBAAAA,EAACO,GAAA,EAAa,WAAU,uBAAA,CAAuB;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA,GAEnD;AAAA,MACA,gBAAAP,EAACQ,GAAA,EAAe,OAAM,SAAQ,WAAU,cACtC,UAAA,gBAAAR;AAAA,QAACS;AAAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,eAAc;AAAA,UACd,UAAUb;AAAA,UACV,UAAUC;AAAA,UACV,UAAU;AAAA,UACV,QAAQ;AAAA,UACR,QAAQS;AAAA,QAAA;AAAA,MAAA,EACV,CACF;AAAA,IAAA,GACF;AAAA,EAEJ;AACF;AAEAd,EAAW,cAAc;"}
1
+ {"version":3,"file":"DatePicker.js","sources":["../../src/DatePicker/DatePicker.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { format } from 'date-fns';\nimport { Calendar as CalendarIcon } from 'lucide-react';\nimport { cn } from '@oneplatformdev/utils';\nimport { Button } from '../Button';\nimport { Calendar } from '../Calendar';\nimport { Popover, PopoverContent, PopoverTrigger } from '../Popover';\nimport { uk } from 'date-fns/locale';\nimport { DatePickerProps } from './DatePicker.types';\n\nexport const DatePicker = React.forwardRef<HTMLButtonElement, DatePickerProps>(\n (props, ref) => {\n const {\n selectedDate,\n onDateChange,\n disabled = false\n } = props;\n const [open, setOpen] = React.useState(false);\n return (\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <Button\n ref={ref}\n disabled={disabled}\n variant={'outline-solid'}\n className={cn(\n 'w-full justify-start text-left font-normal border h-10',\n !selectedDate && 'text-muted-foreground',\n 'focus-visible:outline-hidden focus-visible:ring-0 focus-visible:border-[#9368FF]',\n open && 'outline-hidden ring-0 border-[#9368FF]'\n )}\n >\n {selectedDate ? (\n format(selectedDate, 'LLL dd, y', { locale: uk })\n ) : (\n <span>dd/mm/yyyy</span>\n )}\n <CalendarIcon className=\"mr-2 h-4 w-4 ml-auto\" />\n </Button>\n </PopoverTrigger>\n <PopoverContent align=\"start\" className=\"w-auto p-0\">\n <Calendar\n mode=\"single\"\n captionLayout=\"dropdown-buttons\"\n selected={selectedDate}\n onSelect={onDateChange}\n fromYear={1960}\n toYear={2030}\n locale={uk}\n />\n </PopoverContent>\n </Popover>\n );\n }\n);\n\nDatePicker.displayName = 'DatePicker';\n\n"],"names":["DatePicker","React","props","ref","selectedDate","onDateChange","disabled","open","setOpen","jsxs","Popover","jsx","PopoverTrigger","Button","cn","format","uk","CalendarIcon","PopoverContent","Calendar"],"mappings":";;;;;;;;;;AAYO,MAAMA,IAAaC,EAAM;AAAA,EAC9B,CAACC,GAAOC,MAAQ;AACd,UAAM;AAAA,MACJ,cAAAC;AAAA,MACA,cAAAC;AAAA,MACA,UAAAC,IAAW;AAAA,IAAA,IACTJ,GACE,CAACK,GAAMC,CAAO,IAAIP,EAAM,SAAS,EAAK;AAC5C,WACE,gBAAAQ,EAACC,GAAA,EAAQ,MAAAH,GAAY,cAAcC,GACjC,UAAA;AAAA,MAAA,gBAAAG,EAACC,GAAA,EAAe,SAAO,IACrB,UAAA,gBAAAH;AAAA,QAACI;AAAA,QAAA;AAAA,UACC,KAAAV;AAAA,UACA,UAAAG;AAAA,UACA,SAAS;AAAA,UACT,WAAWQ;AAAA,YACT;AAAA,YACA,CAACV,KAAgB;AAAA,YACjB;AAAA,YACAG,KAAQ;AAAA,UAAA;AAAA,UAGT,UAAA;AAAA,YAAAH,IACCW,EAAOX,GAAc,aAAa,EAAE,QAAQY,GAAI,IAEhD,gBAAAL,EAAC,QAAA,EAAK,UAAA,aAAA,CAAU;AAAA,YAElB,gBAAAA,EAACM,GAAA,EAAa,WAAU,uBAAA,CAAuB;AAAA,UAAA;AAAA,QAAA;AAAA,MAAA,GAEnD;AAAA,MACA,gBAAAN,EAACO,GAAA,EAAe,OAAM,SAAQ,WAAU,cACtC,UAAA,gBAAAP;AAAA,QAACQ;AAAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,eAAc;AAAA,UACd,UAAUf;AAAA,UACV,UAAUC;AAAA,UACV,UAAU;AAAA,UACV,QAAQ;AAAA,UACR,QAAQW;AAAA,QAAA;AAAA,MAAA,EACV,CACF;AAAA,IAAA,GACF;AAAA,EAEJ;AACF;AAEAhB,EAAW,cAAc;"}
@@ -7,10 +7,13 @@ declare function DialogClose({ ...props }: React.ComponentProps<typeof DialogPri
7
7
  declare function DialogOverlay({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Overlay>): import("react/jsx-runtime").JSX.Element;
8
8
  declare function DialogContent(props: React.ComponentProps<typeof DialogPrimitive.Content> & {
9
9
  showCloseButton?: boolean;
10
+ slotProps?: {
11
+ overlay?: React.ComponentProps<typeof DialogPrimitive.Overlay>;
12
+ };
10
13
  }): import("react/jsx-runtime").JSX.Element;
11
14
  declare function DialogHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
12
15
  declare function DialogFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
13
- declare function DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
16
+ declare function DialogTitle(props: React.ComponentProps<typeof DialogPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
14
17
  declare function DialogDescription({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
15
18
  export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DialogPrimitive };
16
19
  //# sourceMappingURL=Dialog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../src/Dialog/Dialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AAKzD,iBAAS,MAAM,CAAC,EACE,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,2CAEnE;AAED,iBAAS,aAAa,CAAC,EACE,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAE7E;AAED,iBAAS,YAAY,CAAC,EACE,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,2CAE3E;AAED,iBAAS,WAAW,CAAC,EACE,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAEzE;AAED,iBAAS,aAAa,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAW7E;AAED,iBAAS,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IACnF,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,2CAkDA;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQzE;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWzE;AAED,iBAAS,WAAW,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAQzE;AAED,iBAAS,iBAAiB,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,WAAW,CAAC,2CAQrF;AAED,OAAO,EACL,MAAM,EACN,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,aAAa,EACb,eAAe,EAChB,CAAA"}
1
+ {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../src/Dialog/Dialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AAOzD,iBAAS,MAAM,CAAC,EACE,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,2CAEnE;AAED,iBAAS,aAAa,CAAC,EACE,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAE7E;AAED,iBAAS,YAAY,CAAC,EACE,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,2CAE3E;AAED,iBAAS,WAAW,CAAC,EACE,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CAEzE;AAED,iBAAS,aAAa,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,2CAW7E;AAED,iBAAS,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IACnF,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE;QACV,OAAO,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;KAChE,CAAA;CACF,2CAsEA;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQzE;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWzE;AAED,iBAAS,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,2CA2B7E;AAED,iBAAS,iBAAiB,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,WAAW,CAAC,2CAYrF;AAED,OAAO,EACL,MAAM,EACN,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,EACX,aAAa,EACb,eAAe,EAChB,CAAA"}
package/Dialog/Dialog.js CHANGED
@@ -1,28 +1,32 @@
1
- import { jsx as e, jsxs as s } from "react/jsx-runtime";
1
+ import { jsx as e, jsxs as r } from "react/jsx-runtime";
2
+ import * as p from "react";
2
3
  import * as a from "@radix-ui/react-dialog";
3
- import { XIcon as c } from "lucide-react";
4
+ import { XIcon as m } from "lucide-react";
4
5
  import { cn as n } from "@oneplatformdev/utils";
5
- function x({
6
+ import { ButtonIcon as x } from "../ButtonIcon/ButtonIcon.js";
7
+ import "../ButtonIcon/buttonIconVariants.js";
8
+ import { useDialogClosePosition as h } from "./useDialogClosePosition.js";
9
+ function P({
6
10
  ...t
7
11
  }) {
8
12
  return /* @__PURE__ */ e(a.Root, { "data-slot": "dialog", ...t });
9
13
  }
10
- function v({
14
+ function k({
11
15
  ...t
12
16
  }) {
13
17
  return /* @__PURE__ */ e(a.Trigger, { "data-slot": "dialog-trigger", ...t });
14
18
  }
15
- function u({
19
+ function v({
16
20
  ...t
17
21
  }) {
18
22
  return /* @__PURE__ */ e(a.Portal, { "data-slot": "dialog-portal", ...t });
19
23
  }
20
- function D({
24
+ function j({
21
25
  ...t
22
26
  }) {
23
27
  return /* @__PURE__ */ e(a.Close, { "data-slot": "dialog-close", ...t });
24
28
  }
25
- function f({
29
+ function b({
26
30
  className: t,
27
31
  ...o
28
32
  }) {
@@ -38,40 +42,47 @@ function f({
38
42
  }
39
43
  );
40
44
  }
41
- function b(t) {
45
+ function T(t) {
42
46
  const {
43
47
  className: o,
44
48
  children: i,
45
- showCloseButton: l = !0,
46
- style: r,
47
- ...d
48
- } = t;
49
- return /* @__PURE__ */ e(u, { "data-slot": "dialog-portal", children: /* @__PURE__ */ e(f, { children: /* @__PURE__ */ s(
49
+ showCloseButton: s = !0,
50
+ style: c,
51
+ slotProps: d,
52
+ ...u
53
+ } = t, [f, g] = p.useState(null), l = h(f, {
54
+ enabled: s
55
+ });
56
+ return /* @__PURE__ */ e(v, { "data-slot": "dialog-portal", children: /* @__PURE__ */ e(b, { ...d?.overlay, children: /* @__PURE__ */ r(
50
57
  a.Content,
51
58
  {
59
+ ref: g,
52
60
  "data-slot": "dialog-content",
61
+ "data-closable": JSON.stringify(s),
53
62
  className: n(
63
+ "group group/content",
54
64
  "fixed top-[50%] left-[50%] z-50 translate-x-[-50%] translate-y-[-50%]",
55
65
  "flex flex-col w-full max-w-[calc(100%-2rem)] sm:max-w-2xl gap-3",
56
- "bg-background rounded-lg border p-4 shadow-lg duration-200",
66
+ "max-h-[90%] overflow-auto overscroll-none",
67
+ "bg-background rounded-lg border shadow-lg duration-200 p-6",
57
68
  "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",
58
69
  "focus:outline-none focus-visible:outline-none focus:ring-0 focus-visible:ring-0 focus:ring-transparent",
59
70
  "outline-none focus:outline-none focus-visible:outline-none",
60
71
  o
61
72
  ),
62
- ...d,
73
+ ...u,
63
74
  style: {
64
75
  pointerEvents: "auto",
65
- ...r || {}
76
+ ...c || {}
66
77
  },
67
78
  children: [
68
79
  i,
69
- l && /* @__PURE__ */ s(
80
+ s && /* @__PURE__ */ r(
70
81
  a.Close,
71
82
  {
72
83
  "data-slot": "dialog-close",
73
84
  className: n(
74
- "absolute top-4 right-4 rounded-2xl opacity-70 transition-opacity hover:opacity-100",
85
+ "absolute top-6 right-6 rounded-2xl opacity-70 transition-opacity hover:opacity-100",
75
86
  "data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",
76
87
  "ring-offset-background focus:ring-transparent focus:ring-0 focus:ring-offset-0 focus:outline-hidden",
77
88
  "focus:outline-none focus:ring-0",
@@ -79,8 +90,19 @@ function b(t) {
79
90
  '[&_svg]:shrink-0 [&_svg:not([class*="size-"])]:size-5',
80
91
  "cursor-pointer size-10 flex items-center justify-center"
81
92
  ),
93
+ style: {
94
+ top: l.top,
95
+ right: l.right
96
+ },
82
97
  children: [
83
- /* @__PURE__ */ e(c, { className: "size-6 text-[#06080D]" }),
98
+ /* @__PURE__ */ e(
99
+ x,
100
+ {
101
+ variant: "ghost",
102
+ color: "secondary",
103
+ icon: m
104
+ }
105
+ ),
84
106
  /* @__PURE__ */ e("span", { className: "sr-only", children: "Close" })
85
107
  ]
86
108
  }
@@ -89,17 +111,17 @@ function b(t) {
89
111
  }
90
112
  ) }) });
91
113
  }
92
- function h({ className: t, ...o }) {
114
+ function E({ className: t, ...o }) {
93
115
  return /* @__PURE__ */ e(
94
116
  "div",
95
117
  {
96
118
  "data-slot": "dialog-header",
97
- className: n("flex flex-col gap-4 justify-center text-center sm:text-left", t),
119
+ className: n("flex flex-col gap-4 justify-center text-center sm:text-left min-h-10", t),
98
120
  ...o
99
121
  }
100
122
  );
101
123
  }
102
- function y({ className: t, ...o }) {
124
+ function O({ className: t, ...o }) {
103
125
  return /* @__PURE__ */ e(
104
126
  "div",
105
127
  {
@@ -112,20 +134,37 @@ function y({ className: t, ...o }) {
112
134
  }
113
135
  );
114
136
  }
115
- function N({
116
- className: t,
117
- ...o
118
- }) {
137
+ function S(t) {
138
+ const {
139
+ className: o,
140
+ children: i,
141
+ ...s
142
+ } = t;
119
143
  return /* @__PURE__ */ e(
120
144
  a.Title,
121
145
  {
146
+ asChild: !0,
122
147
  "data-slot": "dialog-title",
123
- className: n("text-lg leading-none font-bold text-[#06080D]", t),
124
- ...o
148
+ className: n(
149
+ "flex items-center min-h-10",
150
+ "group-data-[closable='true']/content:pr-13",
151
+ o
152
+ ),
153
+ ...s,
154
+ children: /* @__PURE__ */ e(
155
+ "span",
156
+ {
157
+ className: n(
158
+ "text-lg leading-[1.2] font-bold text-[#06080D]",
159
+ "whitespace-pre-wrap wrap-break-word line-clamp-10"
160
+ ),
161
+ children: i
162
+ }
163
+ )
125
164
  }
126
165
  );
127
166
  }
128
- function z({
167
+ function _({
129
168
  className: t,
130
169
  ...o
131
170
  }) {
@@ -133,22 +172,26 @@ function z({
133
172
  a.Description,
134
173
  {
135
174
  "data-slot": "dialog-description",
136
- className: n("text-[#363B4E] font-medium text-base", t),
175
+ className: n(
176
+ "text-[#06080D] font-medium text-base",
177
+ "whitespace-pre-wrap wrap-break-word line-clamp-10",
178
+ t
179
+ ),
137
180
  ...o
138
181
  }
139
182
  );
140
183
  }
141
184
  export {
142
- x as Dialog,
143
- D as DialogClose,
144
- b as DialogContent,
145
- z as DialogDescription,
146
- y as DialogFooter,
147
- h as DialogHeader,
148
- f as DialogOverlay,
149
- u as DialogPortal,
185
+ P as Dialog,
186
+ j as DialogClose,
187
+ T as DialogContent,
188
+ _ as DialogDescription,
189
+ O as DialogFooter,
190
+ E as DialogHeader,
191
+ b as DialogOverlay,
192
+ v as DialogPortal,
150
193
  a as DialogPrimitive,
151
- N as DialogTitle,
152
- v as DialogTrigger
194
+ S as DialogTitle,
195
+ k as DialogTrigger
153
196
  };
154
197
  //# sourceMappingURL=Dialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.js","sources":["../../src/Dialog/Dialog.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\"\nimport { XIcon } from \"lucide-react\"\n\nimport { cn } from \"@oneplatformdev/utils\"\n\nfunction Dialog({\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />\n}\n\nfunction DialogTrigger({\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />\n}\n\nfunction DialogPortal({\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />\n}\n\nfunction DialogClose({\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />\n}\n\nfunction DialogOverlay({\n className,\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Overlay>) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"dialog-overlay\"\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DialogContent(props: React.ComponentProps<typeof DialogPrimitive.Content> & {\n showCloseButton?: boolean\n}) {\n const {\n className,\n children,\n showCloseButton = true,\n style,\n ...rest\n } = props;\n return (\n <DialogPortal data-slot=\"dialog-portal\">\n <DialogOverlay>\n <DialogPrimitive.Content\n data-slot=\"dialog-content\"\n className={cn(\n 'fixed top-[50%] left-[50%] z-50 translate-x-[-50%] translate-y-[-50%]',\n 'flex flex-col w-full max-w-[calc(100%-2rem)] sm:max-w-2xl gap-3',\n 'bg-background rounded-lg border p-4 shadow-lg duration-200',\n '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',\n \"focus:outline-none focus-visible:outline-none focus:ring-0 focus-visible:ring-0 focus:ring-transparent\",\n 'outline-none focus:outline-none focus-visible:outline-none',\n className\n )}\n {...rest}\n style={{\n pointerEvents: 'auto',\n ...(style || {}),\n }}\n >\n {children}\n {showCloseButton && (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n className={cn(\n 'absolute top-4 right-4 rounded-2xl opacity-70 transition-opacity hover:opacity-100',\n 'data-[state=open]:bg-accent data-[state=open]:text-muted-foreground',\n 'ring-offset-background focus:ring-transparent focus:ring-0 focus:ring-offset-0 focus:outline-hidden',\n 'focus:outline-none focus:ring-0',\n 'disabled:pointer-events-none [&_svg]:pointer-events-none',\n '[&_svg]:shrink-0 [&_svg:not([class*=\"size-\"])]:size-5',\n 'cursor-pointer size-10 flex items-center justify-center',\n )}\n >\n <XIcon className='size-6 text-[#06080D]'/>\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </DialogOverlay>\n </DialogPortal>\n )\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-header\"\n className={cn(\"flex flex-col gap-4 justify-center text-center sm:text-left\", className)}\n {...props}\n />\n )\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\n \"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end pt-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DialogTitle({\n className,\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Title>) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn(\"text-lg leading-none font-bold text-[#06080D]\", className)}\n {...props}\n />\n )\n}\n\nfunction DialogDescription({\n className,\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\"text-[#363B4E] font-medium text-base\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n DialogPrimitive\n}\n"],"names":["Dialog","props","DialogPrimitive","DialogTrigger","DialogPortal","DialogClose","DialogOverlay","className","jsx","cn","DialogContent","children","showCloseButton","style","rest","jsxs","XIcon","DialogHeader","DialogFooter","DialogTitle","DialogDescription"],"mappings":"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"}
1
+ {"version":3,"file":"Dialog.js","sources":["../../src/Dialog/Dialog.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\"\nimport { XIcon } from \"lucide-react\"\n\nimport { cn } from \"@oneplatformdev/utils\"\nimport { ButtonIcon } from \"../ButtonIcon\";\nimport { useDialogClosePosition } from \"./useDialogClosePosition\";\n\nfunction Dialog({\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />\n}\n\nfunction DialogTrigger({\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />\n}\n\nfunction DialogPortal({\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />\n}\n\nfunction DialogClose({\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />\n}\n\nfunction DialogOverlay({\n className,\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Overlay>) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"dialog-overlay\"\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DialogContent(props: React.ComponentProps<typeof DialogPrimitive.Content> & {\n showCloseButton?: boolean;\n slotProps?: {\n overlay?: React.ComponentProps<typeof DialogPrimitive.Overlay>;\n }\n}) {\n const {\n className,\n children,\n showCloseButton = true,\n style,\n slotProps,\n ...rest\n } = props;\n const [contentEl, setContentEl] = React.useState<HTMLDivElement | null>(null);\n\n const closePosition = useDialogClosePosition(contentEl, {\n enabled: showCloseButton,\n });\n\n\n return (\n <DialogPortal data-slot=\"dialog-portal\">\n <DialogOverlay {...slotProps?.overlay}>\n <DialogPrimitive.Content\n ref={setContentEl}\n data-slot=\"dialog-content\"\n data-closable={JSON.stringify(showCloseButton)}\n className={cn(\n 'group group/content',\n 'fixed top-[50%] left-[50%] z-50 translate-x-[-50%] translate-y-[-50%]',\n 'flex flex-col w-full max-w-[calc(100%-2rem)] sm:max-w-2xl gap-3',\n 'max-h-[90%] overflow-auto overscroll-none',\n 'bg-background rounded-lg border shadow-lg duration-200 p-6',\n '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',\n \"focus:outline-none focus-visible:outline-none focus:ring-0 focus-visible:ring-0 focus:ring-transparent\",\n 'outline-none focus:outline-none focus-visible:outline-none',\n className\n )}\n {...rest}\n style={{\n pointerEvents: 'auto',\n ...(style || {}),\n }}\n >\n {children}\n {showCloseButton && (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n className={cn(\n 'absolute top-6 right-6 rounded-2xl opacity-70 transition-opacity hover:opacity-100',\n 'data-[state=open]:bg-accent data-[state=open]:text-muted-foreground',\n 'ring-offset-background focus:ring-transparent focus:ring-0 focus:ring-offset-0 focus:outline-hidden',\n 'focus:outline-none focus:ring-0',\n 'disabled:pointer-events-none [&_svg]:pointer-events-none',\n '[&_svg]:shrink-0 [&_svg:not([class*=\"size-\"])]:size-5',\n 'cursor-pointer size-10 flex items-center justify-center',\n )}\n style={{\n top: closePosition.top,\n right: closePosition.right,\n }}\n >\n <ButtonIcon\n variant='ghost'\n color='secondary'\n icon={XIcon}\n />\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </DialogOverlay>\n </DialogPortal>\n )\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-header\"\n className={cn(\"flex flex-col gap-4 justify-center text-center sm:text-left min-h-10\", className)}\n {...props}\n />\n )\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\n \"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end pt-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction DialogTitle(props: React.ComponentProps<typeof DialogPrimitive.Title>) {\n const {\n className,\n children,\n ...rest\n } = props;\n return (\n <DialogPrimitive.Title\n asChild\n data-slot=\"dialog-title\"\n className={cn(\n \"flex items-center min-h-10\",\n \"group-data-[closable='true']/content:pr-13\",\n className\n )}\n {...rest}\n >\n <span\n className={cn(\n \"text-lg leading-[1.2] font-bold text-[#06080D]\",\n 'whitespace-pre-wrap wrap-break-word line-clamp-10',\n )}\n >\n {children}\n </span>\n </DialogPrimitive.Title>\n )\n}\n\nfunction DialogDescription({\n className,\n ...props\n }: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\n \"text-[#06080D] font-medium text-base\",\n 'whitespace-pre-wrap wrap-break-word line-clamp-10',\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n DialogPrimitive\n}\n"],"names":["Dialog","props","DialogPrimitive","DialogTrigger","DialogPortal","DialogClose","DialogOverlay","className","jsx","cn","DialogContent","children","showCloseButton","style","slotProps","rest","contentEl","setContentEl","React","closePosition","useDialogClosePosition","jsxs","ButtonIcon","XIcon","DialogHeader","DialogFooter","DialogTitle","DialogDescription"],"mappings":"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"}
@@ -0,0 +1,109 @@
1
+ import { jsx as o, jsxs as e } from "react/jsx-runtime";
2
+ import { Dialog as b, DialogTrigger as O, DialogContent as B, DialogHeader as v, DialogTitle as w, DialogDescription as N, DialogFooter as T, DialogClose as F } from "./Dialog.js";
3
+ import { Button as l } from "../Button/Button.js";
4
+ import "../Button/buttonVariants.js";
5
+ import { useState as L, useCallback as S } from "react";
6
+ function I(p) {
7
+ const {
8
+ open: i,
9
+ onOpenChange: r,
10
+ title: h,
11
+ description: a,
12
+ showCloseButton: u = !0,
13
+ withFooter: m = !0,
14
+ initialOpen: f = !1,
15
+ triggerLabel: C = "Open dialog",
16
+ bodyText: s = "Some content inside dialog…",
17
+ longBody: c = !1
18
+ } = p, [D, x] = L(f), t = i !== void 0, y = t ? i : D, d = S((n) => {
19
+ t || x(n), r?.(n);
20
+ }, [t, r]);
21
+ return /* @__PURE__ */ o("div", { className: "p-10", children: /* @__PURE__ */ e(b, { open: y, onOpenChange: d, children: [
22
+ /* @__PURE__ */ o(O, { asChild: !0, children: /* @__PURE__ */ o(l, { variant: "outlined", children: C }) }),
23
+ /* @__PURE__ */ e(
24
+ B,
25
+ {
26
+ showCloseButton: u,
27
+ className: "p-12",
28
+ children: [
29
+ /* @__PURE__ */ e(v, { children: [
30
+ /* @__PURE__ */ e(w, { children: [
31
+ h,
32
+ " 123"
33
+ ] }),
34
+ a ? /* @__PURE__ */ o(N, { children: a }) : null
35
+ ] }),
36
+ /* @__PURE__ */ o("div", { className: c ? "max-h-[50vh] overflow-auto pr-1" : void 0, children: c ? /* @__PURE__ */ o("div", { className: "space-y-3 text-sm leading-6", children: Array.from({ length: 30 }).map((n, g) => /* @__PURE__ */ e("p", { children: [
37
+ "#",
38
+ g + 1,
39
+ ". ",
40
+ s,
41
+ " Lorem ipsum dolor sit amet, consectetur adipiscing elit."
42
+ ] }, g)) }) : /* @__PURE__ */ o("p", { className: "text-sm leading-6", children: s }) }),
43
+ m ? /* @__PURE__ */ e(T, { children: [
44
+ /* @__PURE__ */ o(F, { asChild: !0, children: /* @__PURE__ */ o(l, { color: "secondary", children: "Cancel" }) }),
45
+ /* @__PURE__ */ o(l, { onClick: () => d(!1), children: "Save" })
46
+ ] }) : null
47
+ ]
48
+ }
49
+ )
50
+ ] }) });
51
+ }
52
+ const W = {
53
+ title: "UI/Dialog",
54
+ component: I,
55
+ parameters: {
56
+ layout: "fullscreen"
57
+ },
58
+ argTypes: {
59
+ title: { control: "text" },
60
+ description: { control: "text" },
61
+ showCloseButton: { control: "boolean" },
62
+ withFooter: { control: "boolean" },
63
+ initialOpen: { control: "boolean" },
64
+ triggerLabel: { control: "text" },
65
+ bodyText: { control: "text" },
66
+ longBody: { control: "boolean" }
67
+ },
68
+ args: {
69
+ title: "Dialog title",
70
+ description: "Dialog description",
71
+ showCloseButton: !0,
72
+ withFooter: !0,
73
+ initialOpen: !1,
74
+ triggerLabel: "Open dialog",
75
+ bodyText: "Some content inside dialog…",
76
+ longBody: !1
77
+ }
78
+ }, _ = {}, q = {
79
+ args: {
80
+ description: ""
81
+ }
82
+ }, z = {
83
+ args: {
84
+ showCloseButton: !1
85
+ }
86
+ }, E = {
87
+ args: {
88
+ withFooter: !1
89
+ }
90
+ }, G = {
91
+ args: {
92
+ longBody: !0,
93
+ bodyText: "Long text line"
94
+ }
95
+ }, J = {
96
+ args: {
97
+ initialOpen: !0
98
+ }
99
+ };
100
+ export {
101
+ _ as Default,
102
+ J as InitiallyOpen,
103
+ G as LongContentScrollable,
104
+ z as NoCloseButton,
105
+ E as NoFooter,
106
+ q as WithoutDescription,
107
+ W as default
108
+ };
109
+ //# sourceMappingURL=Dialog.stories.js.map