@trsys-tech/matrix-library 0.6.0 → 1.0.0-canary.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. package/dist/accordion.es.js +27 -27
  2. package/dist/accordion.es.js.map +1 -1
  3. package/dist/avatar.es.js +28 -14
  4. package/dist/avatar.es.js.map +1 -1
  5. package/dist/badge.es.js +24 -24
  6. package/dist/badge.es.js.map +1 -1
  7. package/dist/breadcrumb.es.js +34 -24
  8. package/dist/breadcrumb.es.js.map +1 -1
  9. package/dist/button.es.js +28 -28
  10. package/dist/button.es.js.map +1 -1
  11. package/dist/calendar.es.js +64 -61
  12. package/dist/calendar.es.js.map +1 -1
  13. package/dist/card.es.js +21 -21
  14. package/dist/card.es.js.map +1 -1
  15. package/dist/checkbox.es.js +15 -15
  16. package/dist/checkbox.es.js.map +1 -1
  17. package/dist/chip.es.js +24 -24
  18. package/dist/chip.es.js.map +1 -1
  19. package/dist/collapsible.es.js +17 -17
  20. package/dist/collapsible.es.js.map +1 -1
  21. package/dist/combobox.es.js +79 -70
  22. package/dist/combobox.es.js.map +1 -1
  23. package/dist/command.es.js +62 -59
  24. package/dist/command.es.js.map +1 -1
  25. package/dist/components/accordion/Accordion.d.ts.map +1 -1
  26. package/dist/components/avatar/Avatar.d.ts.map +1 -1
  27. package/dist/components/badge/Badge.d.ts +2 -2
  28. package/dist/components/breadcrumb/Breadcrumb.d.ts.map +1 -1
  29. package/dist/components/button/Button.d.ts +2 -2
  30. package/dist/components/chip/Chip.d.ts +2 -2
  31. package/dist/components/combobox/Combobox.d.ts.map +1 -1
  32. package/dist/components/command/Command.d.ts.map +1 -1
  33. package/dist/components/confirm/Confirm.d.ts.map +1 -1
  34. package/dist/components/context-menu/ContextMenu.d.ts.map +1 -1
  35. package/dist/components/data-grid/DataGrid.d.ts.map +1 -1
  36. package/dist/components/date-picker/TimePickerContent.d.ts.map +1 -1
  37. package/dist/components/date-picker/calendar.d.ts.map +1 -1
  38. package/dist/components/dialog/Dialog.d.ts.map +1 -1
  39. package/dist/components/drawer/Drawer.d.ts.map +1 -1
  40. package/dist/components/drawer/SwipableDrawer.d.ts.map +1 -1
  41. package/dist/components/form/Form.d.ts.map +1 -1
  42. package/dist/components/icon-botton/IconButton.d.ts +2 -2
  43. package/dist/components/icon-botton/IconButton.d.ts.map +1 -1
  44. package/dist/components/label/Label.d.ts +1 -1
  45. package/dist/components/label/Label.d.ts.map +1 -1
  46. package/dist/components/modal/Modal.d.ts.map +1 -1
  47. package/dist/components/multi-select/MultiSelect.d.ts +2 -2
  48. package/dist/components/progress/Progress.d.ts.map +1 -1
  49. package/dist/components/rating/Rating.d.ts +2 -2
  50. package/dist/components/select/Select.d.ts.map +1 -1
  51. package/dist/components/sheet/Sheet.d.ts +2 -2
  52. package/dist/components/sheet/Sheet.d.ts.map +1 -1
  53. package/dist/components/sidebar/Sidebar.d.ts.map +1 -1
  54. package/dist/components/switch/Switch.d.ts +2 -2
  55. package/dist/components/text-field/TextField.d.ts.map +1 -1
  56. package/dist/components/toast/toast-components.d.ts +4 -4
  57. package/dist/components/toast/toast-components.d.ts.map +1 -1
  58. package/dist/confirm.es.js +18 -8
  59. package/dist/confirm.es.js.map +1 -1
  60. package/dist/contextmenu.es.js +77 -70
  61. package/dist/contextmenu.es.js.map +1 -1
  62. package/dist/datagrid.es.js +101 -97
  63. package/dist/datagrid.es.js.map +1 -1
  64. package/dist/desktopdatepicker.es.js +30 -30
  65. package/dist/desktopdatepicker.es.js.map +1 -1
  66. package/dist/desktopdaterangepicker.es.js +44 -44
  67. package/dist/desktopdaterangepicker.es.js.map +1 -1
  68. package/dist/desktoptimepicker.es.js +24 -24
  69. package/dist/desktoptimepicker.es.js.map +1 -1
  70. package/dist/dialog.es.js +43 -43
  71. package/dist/dialog.es.js.map +1 -1
  72. package/dist/drawer.es.js +27 -27
  73. package/dist/drawer.es.js.map +1 -1
  74. package/dist/duration.es.js +34 -34
  75. package/dist/duration.es.js.map +1 -1
  76. package/dist/form.es.js +20 -20
  77. package/dist/form.es.js.map +1 -1
  78. package/dist/formcheckbox.es.js +13 -13
  79. package/dist/formcheckbox.es.js.map +1 -1
  80. package/dist/formcombobox.es.js +17 -17
  81. package/dist/formcombobox.es.js.map +1 -1
  82. package/dist/formdatepicker.es.js +12 -12
  83. package/dist/formdatepicker.es.js.map +1 -1
  84. package/dist/formdaterangepicker.es.js +16 -16
  85. package/dist/formdaterangepicker.es.js.map +1 -1
  86. package/dist/formduration.es.js +13 -13
  87. package/dist/formduration.es.js.map +1 -1
  88. package/dist/forminput.es.js +10 -10
  89. package/dist/forminput.es.js.map +1 -1
  90. package/dist/formmultiselect.es.js +7 -7
  91. package/dist/formmultiselect.es.js.map +1 -1
  92. package/dist/formrating.es.js +21 -21
  93. package/dist/formrating.es.js.map +1 -1
  94. package/dist/formselect.es.js +28 -28
  95. package/dist/formselect.es.js.map +1 -1
  96. package/dist/formswitch.es.js +14 -14
  97. package/dist/formswitch.es.js.map +1 -1
  98. package/dist/formtextarea.es.js +12 -12
  99. package/dist/formtextarea.es.js.map +1 -1
  100. package/dist/formtimepicker.es.js +12 -12
  101. package/dist/formtimepicker.es.js.map +1 -1
  102. package/dist/iconbutton.es.js +22 -22
  103. package/dist/iconbutton.es.js.map +1 -1
  104. package/dist/label.es.js +6 -6
  105. package/dist/label.es.js.map +1 -1
  106. package/dist/lib/utils.d.ts.map +1 -1
  107. package/dist/mobiledatepicker.es.js +42 -42
  108. package/dist/mobiledatepicker.es.js.map +1 -1
  109. package/dist/mobiledaterangepicker.es.js +50 -50
  110. package/dist/mobiledaterangepicker.es.js.map +1 -1
  111. package/dist/mobiletimepicker.es.js +30 -30
  112. package/dist/mobiletimepicker.es.js.map +1 -1
  113. package/dist/modal.es.js +48 -44
  114. package/dist/modal.es.js.map +1 -1
  115. package/dist/multiselect.es.js +120 -120
  116. package/dist/multiselect.es.js.map +1 -1
  117. package/dist/popover.es.js +16 -16
  118. package/dist/popover.es.js.map +1 -1
  119. package/dist/progress.es.js +29 -21
  120. package/dist/progress.es.js.map +1 -1
  121. package/dist/radiogroup.es.js +16 -16
  122. package/dist/radiogroup.es.js.map +1 -1
  123. package/dist/rating.es.js +76 -76
  124. package/dist/rating.es.js.map +1 -1
  125. package/dist/select.es.js +82 -63
  126. package/dist/select.es.js.map +1 -1
  127. package/dist/separator.es.js +13 -13
  128. package/dist/separator.es.js.map +1 -1
  129. package/dist/sheet.es.js +44 -44
  130. package/dist/sheet.es.js.map +1 -1
  131. package/dist/sidebar.es.js +245 -233
  132. package/dist/sidebar.es.js.map +1 -1
  133. package/dist/skeleton.es.js +6 -6
  134. package/dist/skeleton.es.js.map +1 -1
  135. package/dist/styles.css +1 -1
  136. package/dist/swipabledrawer.es.js +41 -38
  137. package/dist/swipabledrawer.es.js.map +1 -1
  138. package/dist/switch.es.js +16 -16
  139. package/dist/switch.es.js.map +1 -1
  140. package/dist/tabs.es.js +22 -22
  141. package/dist/tabs.es.js.map +1 -1
  142. package/dist/textarea.es.js +12 -12
  143. package/dist/textarea.es.js.map +1 -1
  144. package/dist/textfield.es.js +37 -37
  145. package/dist/textfield.es.js.map +1 -1
  146. package/dist/timepickercontent.es.js +63 -56
  147. package/dist/timepickercontent.es.js.map +1 -1
  148. package/dist/toast-components.es.js +47 -44
  149. package/dist/toast-components.es.js.map +1 -1
  150. package/dist/toast.es.js +24 -24
  151. package/dist/toast.es.js.map +1 -1
  152. package/dist/tooltip.es.js +16 -16
  153. package/dist/tooltip.es.js.map +1 -1
  154. package/dist/utils.es.js +6 -5
  155. package/dist/utils.es.js.map +1 -1
  156. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"mobiledatepicker.es.js","sources":["../src/components/date-picker/MobileDatePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { format } from \"date-fns\";\r\nimport { PropsBase, PropsSingle } from \"react-day-picker\";\r\nimport { VisuallyHidden } from \"@radix-ui/react-visually-hidden\";\r\nimport { Calendar as CalendarIcon } from \"@trsys-tech/matrix-icons\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Calendar } from \"./calendar\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from \"../dialog/Dialog\";\r\n\r\ntype MobileDatePickerProps = PropsBase &\r\n Omit<PropsSingle, \"mode\"> & {\r\n formatStr?: string;\r\n placeholder?: string;\r\n calendarClassName?: string;\r\n selected?: Date;\r\n required?: boolean;\r\n cancelText?: string;\r\n applyText?: string;\r\n onSelect?: (date: Date | undefined) => void;\r\n disabled?: boolean;\r\n };\r\n\r\nconst MobileDatePicker: React.FC<MobileDatePickerProps> = ({\r\n formatStr,\r\n selected,\r\n placeholder,\r\n className,\r\n calendarClassName,\r\n cancelText,\r\n applyText,\r\n onSelect,\r\n disabled,\r\n ...props\r\n}) => {\r\n const [isOpen, setIsOpen] = React.useState(false);\r\n const [selectedDate, setSelectedDate] = React.useState<Date | undefined>(selected);\r\n\r\n const handleCancel = () => {\r\n setIsOpen(false);\r\n setSelectedDate(selected);\r\n };\r\n\r\n const handleApply = () => {\r\n onSelect?.(selectedDate);\r\n setIsOpen(false);\r\n };\r\n\r\n return (\r\n <>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"flex h-8 w-full items-center justify-between whitespace-nowrap rounded-sm border border-input bg-transparent ps-3 pe-1 py-1.5 text-xs ring-offset-background data-[placeholder]:text-muted-foreground hover:border hover:border-primary hover:bg-transparent focus:border focus:border-primary focus:outline-none focus:ring focus:ring-primary-100 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-text-300 disabled:border-gray-100 [&>span]:line-clamp-1 [&_svg]:disabled:text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!selected ? \"\" : undefined}\r\n onClick={() => setIsOpen(true)}\r\n aria-label={selected ? `Selected date: ${format(selected, formatStr ?? \"yyyy/MM/dd\")}` : \"Pick a date\"}\r\n disabled={disabled}\r\n >\r\n {selected ? format(selected, formatStr ?? \"eee, MMM dd\") : <span>{placeholder ?? \"Pick a date\"}</span>}\r\n <CalendarIcon className=\"mr-2 h-5 w-5 ms-auto\" />\r\n </Button>\r\n <Dialog open={isOpen} onOpenChange={handleCancel}>\r\n <DialogContent className=\"h-dscreen w-screen p-0 flex flex-col gap-0 data-[state=open]:animate-slide-from-bottom data-[state=closed]:animate-slide-to-bottom overflow-auto max-w-screen-2xl sm:rounded-none\">\r\n <DialogHeader className=\"p-4 border-b border-b-gray-200\">\r\n <DialogTitle asChild>\r\n <div className=\"text-sm font-bold space-y-1 mt-3\">\r\n <h5 className=\"text-text-300\">{selectedDate?.getFullYear() ?? <pre> </pre>}</h5>\r\n <h6 className=\"\">{selectedDate ? format(selectedDate, formatStr ?? \"eee, MMM dd\") : <pre> </pre>}</h6>\r\n </div>\r\n </DialogTitle>\r\n <VisuallyHidden>\r\n <DialogDescription>{\"Date Picker\"}</DialogDescription>\r\n </VisuallyHidden>\r\n </DialogHeader>\r\n <div className=\"flex-1 flex flex-col items-center p-4\">\r\n <Calendar\r\n defaultMonth={selected}\r\n startMonth={new Date(2000, 0, 1)}\r\n endMonth={new Date(new Date().getFullYear() + 2, 11, 31)}\r\n {...props}\r\n mode=\"single\"\r\n selected={selectedDate}\r\n onSelect={setSelectedDate}\r\n className={cn(\"p-0\", calendarClassName)}\r\n />\r\n <div className=\"flex justify-center items-center gap-4 mt-auto w-full\">\r\n <Button variant=\"text\" className=\"flex-1 h-10\" onClick={handleCancel}>\r\n {cancelText ?? \"Cancel\"}\r\n </Button>\r\n <Button variant=\"primary\" className=\"flex-1 h-10\" onClick={handleApply}>\r\n {applyText ?? \"Apply\"}\r\n </Button>\r\n </div>\r\n </div>\r\n </DialogContent>\r\n </Dialog>\r\n </>\r\n );\r\n};\r\n\r\nexport { MobileDatePicker, type MobileDatePickerProps };\r\n"],"names":["MobileDatePicker","formatStr","selected","placeholder","className","calendarClassName","cancelText","applyText","onSelect","disabled","props","isOpen","setIsOpen","React","selectedDate","setSelectedDate","handleCancel","handleApply","jsxs","Fragment","Button","cn","format","jsx","CalendarIcon","Dialog","DialogContent","DialogHeader","DialogTitle","VisuallyHidden","DialogDescription","Calendar"],"mappings":"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"}
1
+ {"version":3,"file":"mobiledatepicker.es.js","sources":["../src/components/date-picker/MobileDatePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { format } from \"date-fns\";\r\nimport { PropsBase, PropsSingle } from \"react-day-picker\";\r\nimport { VisuallyHidden } from \"@radix-ui/react-visually-hidden\";\r\nimport { Calendar as CalendarIcon } from \"@trsys-tech/matrix-icons\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Calendar } from \"./calendar\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from \"../dialog/Dialog\";\r\n\r\ntype MobileDatePickerProps = PropsBase &\r\n Omit<PropsSingle, \"mode\"> & {\r\n formatStr?: string;\r\n placeholder?: string;\r\n calendarClassName?: string;\r\n selected?: Date;\r\n required?: boolean;\r\n cancelText?: string;\r\n applyText?: string;\r\n onSelect?: (date: Date | undefined) => void;\r\n disabled?: boolean;\r\n };\r\n\r\nconst MobileDatePicker: React.FC<MobileDatePickerProps> = ({\r\n formatStr,\r\n selected,\r\n placeholder,\r\n className,\r\n calendarClassName,\r\n cancelText,\r\n applyText,\r\n onSelect,\r\n disabled,\r\n ...props\r\n}) => {\r\n const [isOpen, setIsOpen] = React.useState(false);\r\n const [selectedDate, setSelectedDate] = React.useState<Date | undefined>(selected);\r\n\r\n const handleCancel = () => {\r\n setIsOpen(false);\r\n setSelectedDate(selected);\r\n };\r\n\r\n const handleApply = () => {\r\n onSelect?.(selectedDate);\r\n setIsOpen(false);\r\n };\r\n\r\n return (\r\n <>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"mtx-flex mtx-h-8 mtx-w-full mtx-items-center mtx-justify-between mtx-whitespace-nowrap mtx-rounded-sm mtx-border mtx-border-input mtx-bg-transparent mtx-ps-3 mtx-pe-1 mtx-py-1.5 mtx-text-xs mtx-ring-offset-background data-[placeholder]:mtx-text-muted-foreground hover:mtx-border hover:mtx-border-primary hover:mtx-bg-transparent focus:mtx-border focus:mtx-border-primary focus:mtx-outline-none focus:mtx-ring focus:mtx-ring-primary-100 disabled:mtx-cursor-not-allowed disabled:mtx-bg-gray-100 disabled:mtx-text-text-300 disabled:mtx-border-gray-100 [&>span]:mtx-line-clamp-1 [&_svg]:disabled:mtx-text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!selected ? \"\" : undefined}\r\n onClick={() => setIsOpen(true)}\r\n aria-label={selected ? `Selected date: ${format(selected, formatStr ?? \"yyyy/MM/dd\")}` : \"Pick a date\"}\r\n disabled={disabled}\r\n >\r\n {selected ? format(selected, formatStr ?? \"eee, MMM dd\") : <span>{placeholder ?? \"Pick a date\"}</span>}\r\n <CalendarIcon className=\"mtx-mr-2 mtx-h-5 mtx-w-5 mtx-ms-auto\" />\r\n </Button>\r\n <Dialog open={isOpen} onOpenChange={handleCancel}>\r\n <DialogContent className=\"mtx-h-dscreen mtx-w-screen mtx-p-0 mtx-flex mtx-flex-col mtx-gap-0 data-[state=open]:mtx-animate-slide-from-bottom data-[state=closed]:mtx-animate-slide-to-bottom mtx-overflow-auto mtx-max-w-screen-2xl sm:mtx-rounded-none\">\r\n <DialogHeader className=\"mtx-p-4 mtx-border-b mtx-border-b-gray-200\">\r\n <DialogTitle asChild>\r\n <div className=\"mtx-text-sm mtx-font-bold mtx-space-y-1 mtx-mt-3\">\r\n <h5 className=\"mtx-text-text-300\">{selectedDate?.getFullYear() ?? <pre> </pre>}</h5>\r\n <h6 className=\"\">{selectedDate ? format(selectedDate, formatStr ?? \"eee, MMM dd\") : <pre> </pre>}</h6>\r\n </div>\r\n </DialogTitle>\r\n <VisuallyHidden>\r\n <DialogDescription>{\"Date Picker\"}</DialogDescription>\r\n </VisuallyHidden>\r\n </DialogHeader>\r\n <div className=\"mtx-flex-1 mtx-flex mtx-flex-col mtx-items-center mtx-p-4\">\r\n <Calendar\r\n defaultMonth={selected}\r\n startMonth={new Date(2000, 0, 1)}\r\n endMonth={new Date(new Date().getFullYear() + 2, 11, 31)}\r\n {...props}\r\n mode=\"single\"\r\n selected={selectedDate}\r\n onSelect={setSelectedDate}\r\n className={cn(\"mtx-p-0\", calendarClassName)}\r\n />\r\n <div className=\"mtx-flex mtx-justify-center mtx-items-center mtx-gap-4 mtx-mt-auto mtx-w-full\">\r\n <Button variant=\"text\" className=\"mtx-flex-1 mtx-h-10\" onClick={handleCancel}>\r\n {cancelText ?? \"Cancel\"}\r\n </Button>\r\n <Button variant=\"primary\" className=\"mtx-flex-1 mtx-h-10\" onClick={handleApply}>\r\n {applyText ?? \"Apply\"}\r\n </Button>\r\n </div>\r\n </div>\r\n </DialogContent>\r\n </Dialog>\r\n </>\r\n );\r\n};\r\n\r\nexport { MobileDatePicker, type MobileDatePickerProps };\r\n"],"names":["MobileDatePicker","formatStr","selected","placeholder","className","calendarClassName","cancelText","applyText","onSelect","disabled","props","isOpen","setIsOpen","React","selectedDate","setSelectedDate","handleCancel","handleApply","jsxs","Fragment","Button","cn","format","jsx","CalendarIcon","Dialog","DialogContent","DialogHeader","DialogTitle","VisuallyHidden","DialogDescription","Calendar"],"mappings":"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"}
@@ -1,19 +1,19 @@
1
- import { jsxs as t, Fragment as F, jsx as o } from "react/jsx-runtime";
2
- import * as f from "react";
1
+ import { jsxs as r, Fragment as F, jsx as m } from "react/jsx-runtime";
2
+ import * as c from "react";
3
3
  import { VisuallyHidden as R } from "@radix-ui/react-visually-hidden";
4
4
  import { Calendar as O } from "@trsys-tech/matrix-icons";
5
- import { cn as p } from "./utils.es.js";
5
+ import { cn as f } from "./utils.es.js";
6
6
  import { Calendar as P } from "./calendar.es.js";
7
- import { Button as m } from "./button.es.js";
7
+ import { Button as l } from "./button.es.js";
8
8
  import { Dialog as $, DialogContent as A, DialogHeader as H, DialogTitle as B, DialogDescription as I } from "./dialog.es.js";
9
- import { format as l } from "./format.es.js";
9
+ import { format as i } from "./format.es.js";
10
10
  const K = ({
11
- formatStr: n,
12
- selected: r,
13
- placeholder: d,
14
- className: h,
15
- calendarClassName: g,
16
- onDayClick: x,
11
+ formatStr: a,
12
+ selected: e,
13
+ placeholder: s,
14
+ className: p,
15
+ calendarClassName: h,
16
+ onDayClick: g,
17
17
  cancelText: y,
18
18
  applyText: u,
19
19
  onSelect: b,
@@ -22,75 +22,75 @@ const K = ({
22
22
  disabled: N,
23
23
  ...w
24
24
  }) => {
25
- const [C, s] = f.useState(!1), [e, i] = f.useState(r), D = (a, k, j) => {
26
- x?.(a, k, j), !e || !e.from ? i({ from: a, to: void 0 }) : a < e.from ? e.to ? i({ from: a, to: e.to }) : i({ from: a, to: e.from }) : e?.from?.getTime() === a?.getTime() && (e?.from?.getTime() === e?.to?.getTime() || !e.to) ? i(void 0) : e?.from?.getTime() !== e?.to?.getTime() && (e.from?.getTime() === a?.getTime() || e?.to?.getTime() === a?.getTime()) ? i({ from: a, to: a }) : i({ ...e, to: a });
27
- }, c = () => {
28
- s(!1), i(r);
25
+ const [C, n] = c.useState(!1), [t, x] = c.useState(e), D = (o, k, j) => {
26
+ g?.(o, k, j), !t || !t.from ? x({ from: o, to: void 0 }) : o < t.from ? t.to ? x({ from: o, to: t.to }) : x({ from: o, to: t.from }) : t?.from?.getTime() === o?.getTime() && (t?.from?.getTime() === t?.to?.getTime() || !t.to) ? x(void 0) : t?.from?.getTime() !== t?.to?.getTime() && (t.from?.getTime() === o?.getTime() || t?.to?.getTime() === o?.getTime()) ? x({ from: o, to: o }) : x({ ...t, to: o });
27
+ }, d = () => {
28
+ n(!1), x(e);
29
29
  }, T = () => {
30
- b?.(e), s(!1);
30
+ b?.(t), n(!1);
31
31
  };
32
- return /* @__PURE__ */ t(F, { children: [
33
- /* @__PURE__ */ t(
34
- m,
32
+ return /* @__PURE__ */ r(F, { children: [
33
+ /* @__PURE__ */ r(
34
+ l,
35
35
  {
36
36
  variant: "text",
37
- className: p(
38
- "flex h-8 w-full items-center justify-between whitespace-nowrap rounded-sm border border-input bg-transparent ps-3 pe-1 py-1.5 text-xs ring-offset-background data-[placeholder]:text-muted-foreground hover:border hover:border-primary hover:bg-transparent focus:border focus:border-primary focus:outline-none focus:ring focus:ring-primary-100 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-text-300 disabled:border-gray-100 [&>span]:line-clamp-1 [&_svg]:disabled:text-text-300",
39
- h
37
+ className: f(
38
+ "mtx-flex mtx-h-8 mtx-w-full mtx-items-center mtx-justify-between mtx-whitespace-nowrap mtx-rounded-sm mtx-border mtx-border-input mtx-bg-transparent mtx-ps-3 mtx-pe-1 mtx-py-1.5 mtx-text-xs mtx-ring-offset-background data-[placeholder]:mtx-text-muted-foreground hover:mtx-border hover:mtx-border-primary hover:mtx-bg-transparent focus:mtx-border focus:mtx-border-primary focus:mtx-outline-none focus:mtx-ring focus:mtx-ring-primary-100 disabled:mtx-cursor-not-allowed disabled:mtx-bg-gray-100 disabled:mtx-text-text-300 disabled:mtx-border-gray-100 [&>span]:mtx-line-clamp-1 [&_svg]:disabled:mtx-text-text-300",
39
+ p
40
40
  ),
41
- "data-placeholder": r ? void 0 : "",
42
- onClick: () => s(!0),
43
- "aria-label": r ? `Selected date: ${r?.from ? l(r.from, n ?? "yyyy/MM/dd") : ""} - ${r?.to ? l(r.to, n ?? "yyyy/MM/dd") : ""}` : d,
41
+ "data-placeholder": e ? void 0 : "",
42
+ onClick: () => n(!0),
43
+ "aria-label": e ? `Selected date: ${e?.from ? i(e.from, a ?? "yyyy/MM/dd") : ""} - ${e?.to ? i(e.to, a ?? "yyyy/MM/dd") : ""}` : s,
44
44
  disabled: N,
45
45
  children: [
46
- r ? /* @__PURE__ */ t("div", { className: "grid grid-cols-2 flex-1 justify-items-start", children: [
47
- /* @__PURE__ */ t("span", { children: [
46
+ e ? /* @__PURE__ */ r("div", { className: "mtx-grid mtx-grid-cols-2 mtx-flex-1 mtx-justify-items-start", children: [
47
+ /* @__PURE__ */ r("span", { children: [
48
48
  M ?? "From",
49
49
  ": ",
50
- r?.from ? l(r.from, n ?? "yyyy/MM/dd") : "-"
50
+ e?.from ? i(e.from, a ?? "yyyy/MM/dd") : "-"
51
51
  ] }),
52
52
  " ",
53
- /* @__PURE__ */ t("span", { children: [
53
+ /* @__PURE__ */ r("span", { children: [
54
54
  v ?? "To",
55
55
  ": ",
56
- r?.to ? l(r.to, n ?? "yyyy/MM/dd") : "-"
56
+ e?.to ? i(e.to, a ?? "yyyy/MM/dd") : "-"
57
57
  ] })
58
- ] }) : /* @__PURE__ */ o("span", { children: d ?? "Pick a Range" }),
59
- /* @__PURE__ */ o(O, { className: "mr-2 h-5 w-4 ms-auto" })
58
+ ] }) : /* @__PURE__ */ m("span", { children: s ?? "Pick a Range" }),
59
+ /* @__PURE__ */ m(O, { className: "mtx-mr-2 mtx-h-5 mtx-w-4 mtx-ms-auto" })
60
60
  ]
61
61
  }
62
62
  ),
63
- /* @__PURE__ */ o($, { open: C, onOpenChange: c, children: /* @__PURE__ */ t(A, { className: "h-dscreen w-screen p-0 flex flex-col gap-0 data-[state=open]:animate-slide-from-bottom data-[state=closed]:animate-slide-to-bottom overflow-auto max-w-screen-2xl sm:rounded-none", children: [
64
- /* @__PURE__ */ t(H, { children: [
65
- /* @__PURE__ */ o(B, { asChild: !0, children: /* @__PURE__ */ t("div", { className: "grid grid-cols-2 border-b border-b-gray-200 mt-3", children: [
66
- /* @__PURE__ */ t("div", { className: "text-sm font-bold space-y-1 border-e border-e-gray-200 p-4", children: [
67
- /* @__PURE__ */ o("h5", { className: "text-text-300 font-medium text-xs", children: "From" }),
68
- /* @__PURE__ */ o("h6", { className: "", children: e?.from ? l(e.from, n ?? "eee, MMM dd") : /* @__PURE__ */ o("pre", { children: " " }) })
63
+ /* @__PURE__ */ m($, { open: C, onOpenChange: d, children: /* @__PURE__ */ r(A, { className: "mtx-h-dscreen mtx-w-screen mtx-p-0 mtx-flex mtx-flex-col mtx-gap-0 data-[state=open]:mtx-animate-slide-from-bottom data-[state=closed]:mtx-animate-slide-to-bottom mtx-overflow-auto mtx-max-w-screen-2xl sm:mtx-rounded-none", children: [
64
+ /* @__PURE__ */ r(H, { children: [
65
+ /* @__PURE__ */ m(B, { asChild: !0, children: /* @__PURE__ */ r("div", { className: "mtx-grid mtx-grid-cols-2 mtx-border-b mtx-border-b-gray-200 mtx-mt-3", children: [
66
+ /* @__PURE__ */ r("div", { className: "mtx-text-sm mtx-font-bold mtx-space-y-1 mtx-border-e mtx-border-e-gray-200 mtx-p-4", children: [
67
+ /* @__PURE__ */ m("h5", { className: "mtx-text-text-300 mtx-font-medium mtx-text-xs", children: "From" }),
68
+ /* @__PURE__ */ m("h6", { className: "", children: t?.from ? i(t.from, a ?? "eee, MMM dd") : /* @__PURE__ */ m("pre", { children: " " }) })
69
69
  ] }),
70
- /* @__PURE__ */ t("div", { className: "text-sm font-bold space-y-1 p-4 flex flex-col justify-center", children: [
71
- /* @__PURE__ */ o("h5", { className: "text-text-300 font-medium text-xs", children: "To" }),
72
- /* @__PURE__ */ o("h6", { className: "", children: e?.to ? l(e.to, n ?? "eee, MMM dd") : /* @__PURE__ */ o("pre", { children: " " }) })
70
+ /* @__PURE__ */ r("div", { className: "mtx-text-sm mtx-font-bold mtx-space-y-1 mtx-p-4 mtx-flex mtx-flex-col mtx-justify-center", children: [
71
+ /* @__PURE__ */ m("h5", { className: "mtx-text-text-300 mtx-font-medium mtx-text-xs", children: "To" }),
72
+ /* @__PURE__ */ m("h6", { className: "", children: t?.to ? i(t.to, a ?? "eee, MMM dd") : /* @__PURE__ */ m("pre", { children: " " }) })
73
73
  ] })
74
74
  ] }) }),
75
- /* @__PURE__ */ o(R, { children: /* @__PURE__ */ o(I, { children: "Date Picker" }) })
75
+ /* @__PURE__ */ m(R, { children: /* @__PURE__ */ m(I, { children: "Date Picker" }) })
76
76
  ] }),
77
- /* @__PURE__ */ t("div", { className: "flex-1 flex flex-col items-center p-4", children: [
78
- /* @__PURE__ */ o(
77
+ /* @__PURE__ */ r("div", { className: "mtx-flex-1 mtx-flex mtx-flex-col mtx-items-center mtx-p-4", children: [
78
+ /* @__PURE__ */ m(
79
79
  P,
80
80
  {
81
- defaultMonth: r?.from,
81
+ defaultMonth: e?.from,
82
82
  startMonth: new Date(2e3, 0, 1),
83
83
  endMonth: new Date((/* @__PURE__ */ new Date()).getFullYear() + 2, 11, 31),
84
84
  ...w,
85
85
  mode: "range",
86
- selected: r,
86
+ selected: e,
87
87
  onDayClick: D,
88
- className: p("p-0", g)
88
+ className: f("mtx-p-0", h)
89
89
  }
90
90
  ),
91
- /* @__PURE__ */ t("div", { className: "flex justify-center items-center gap-4 mt-auto w-full", children: [
92
- /* @__PURE__ */ o(m, { variant: "text", className: "flex-1 h-10", onClick: c, children: y ?? "Cancel" }),
93
- /* @__PURE__ */ o(m, { variant: "primary", className: "flex-1 h-10", onClick: T, children: u ?? "Apply" })
91
+ /* @__PURE__ */ r("div", { className: "mtx-flex mtx-justify-center mtx-items-center mtx-gap-4 mtx-mt-auto mtx-w-full", children: [
92
+ /* @__PURE__ */ m(l, { variant: "text", className: "mtx-flex-1 mtx-h-10", onClick: d, children: y ?? "Cancel" }),
93
+ /* @__PURE__ */ m(l, { variant: "primary", className: "mtx-flex-1 mtx-h-10", onClick: T, children: u ?? "Apply" })
94
94
  ] })
95
95
  ] })
96
96
  ] }) })
@@ -1 +1 @@
1
- {"version":3,"file":"mobiledaterangepicker.es.js","sources":["../src/components/date-picker/MobileDateRangePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { format } from \"date-fns\";\r\nimport { VisuallyHidden } from \"@radix-ui/react-visually-hidden\";\r\nimport { Calendar as CalendarIcon } from \"@trsys-tech/matrix-icons\";\r\nimport { PropsBase, PropsRange, DateRange, DayEventHandler } from \"react-day-picker\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Calendar } from \"./calendar\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from \"../dialog/Dialog\";\r\n\r\ntype MobileDateRangePickerProps = PropsBase &\r\n Omit<PropsRange, \"mode\"> & {\r\n formatStr?: string;\r\n placeholder?: string;\r\n calendarClassName?: string;\r\n selected?: DateRange;\r\n required?: boolean;\r\n cancelText?: string;\r\n applyText?: string;\r\n onSelect?: (date: DateRange | undefined) => void;\r\n fromText?: string;\r\n toText?: string;\r\n disabled?: boolean;\r\n };\r\n\r\nconst MobileDateRangePicker: React.FC<MobileDateRangePickerProps> = ({\r\n formatStr,\r\n selected,\r\n placeholder,\r\n className,\r\n calendarClassName,\r\n onDayClick,\r\n cancelText,\r\n applyText,\r\n onSelect,\r\n fromText,\r\n toText,\r\n disabled,\r\n ...props\r\n}) => {\r\n const [isOpen, setIsOpen] = React.useState(false);\r\n const [range, setRange] = React.useState<DateRange | undefined>(selected);\r\n\r\n const handleDayClick: DayEventHandler<React.MouseEvent<Element, MouseEvent>> = (date, modifiers, e) => {\r\n onDayClick?.(date, modifiers, e);\r\n if (!range || !range.from) {\r\n setRange({ from: date, to: undefined });\r\n } else if (date < range.from) {\r\n if (!range.to) {\r\n setRange({ from: date, to: range.from });\r\n } else {\r\n setRange({ from: date, to: range.to });\r\n }\r\n } else if (range?.from?.getTime() === date?.getTime() && (range?.from?.getTime() === range?.to?.getTime() || !range.to)) {\r\n setRange(undefined);\r\n } else if (\r\n range?.from?.getTime() !== range?.to?.getTime() &&\r\n (range.from?.getTime() === date?.getTime() || range?.to?.getTime() === date?.getTime())\r\n ) {\r\n setRange({ from: date, to: date });\r\n } else {\r\n setRange({ ...range, to: date });\r\n }\r\n };\r\n\r\n const handleCancel = () => {\r\n setIsOpen(false);\r\n setRange(selected);\r\n };\r\n\r\n const handleApply = () => {\r\n onSelect?.(range);\r\n setIsOpen(false);\r\n };\r\n\r\n return (\r\n <>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"flex h-8 w-full items-center justify-between whitespace-nowrap rounded-sm border border-input bg-transparent ps-3 pe-1 py-1.5 text-xs ring-offset-background data-[placeholder]:text-muted-foreground hover:border hover:border-primary hover:bg-transparent focus:border focus:border-primary focus:outline-none focus:ring focus:ring-primary-100 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-text-300 disabled:border-gray-100 [&>span]:line-clamp-1 [&_svg]:disabled:text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!selected ? \"\" : undefined}\r\n onClick={() => setIsOpen(true)}\r\n aria-label={\r\n selected\r\n ? `Selected date: ${selected?.from ? format(selected.from, formatStr ?? \"yyyy/MM/dd\") : \"\"} - ${selected?.to ? format(selected.to, formatStr ?? \"yyyy/MM/dd\") : \"\"}`\r\n : placeholder\r\n }\r\n disabled={disabled}\r\n >\r\n {selected ? (\r\n <div className=\"grid grid-cols-2 flex-1 justify-items-start\">\r\n <span>\r\n {fromText ?? \"From\"}: {selected?.from ? format(selected.from, formatStr ?? \"yyyy/MM/dd\") : \"-\"}\r\n </span>{\" \"}\r\n <span>\r\n {toText ?? \"To\"}: {selected?.to ? format(selected.to, formatStr ?? \"yyyy/MM/dd\") : \"-\"}\r\n </span>\r\n </div>\r\n ) : (\r\n <span>{placeholder ?? \"Pick a Range\"}</span>\r\n )}\r\n <CalendarIcon className=\"mr-2 h-5 w-4 ms-auto\" />\r\n </Button>\r\n <Dialog open={isOpen} onOpenChange={handleCancel}>\r\n <DialogContent className=\"h-dscreen w-screen p-0 flex flex-col gap-0 data-[state=open]:animate-slide-from-bottom data-[state=closed]:animate-slide-to-bottom overflow-auto max-w-screen-2xl sm:rounded-none\">\r\n <DialogHeader>\r\n <DialogTitle asChild>\r\n <div className=\"grid grid-cols-2 border-b border-b-gray-200 mt-3\">\r\n <div className=\"text-sm font-bold space-y-1 border-e border-e-gray-200 p-4\">\r\n <h5 className=\"text-text-300 font-medium text-xs\">From</h5>\r\n <h6 className=\"\">{range?.from ? format(range.from, formatStr ?? \"eee, MMM dd\") : <pre> </pre>}</h6>\r\n </div>\r\n <div className=\"text-sm font-bold space-y-1 p-4 flex flex-col justify-center\">\r\n <h5 className=\"text-text-300 font-medium text-xs\">To</h5>\r\n <h6 className=\"\">{range?.to ? format(range.to, formatStr ?? \"eee, MMM dd\") : <pre> </pre>}</h6>\r\n </div>\r\n </div>\r\n </DialogTitle>\r\n <VisuallyHidden>\r\n <DialogDescription>{\"Date Picker\"}</DialogDescription>\r\n </VisuallyHidden>\r\n </DialogHeader>\r\n <div className=\"flex-1 flex flex-col items-center p-4\">\r\n <Calendar\r\n defaultMonth={selected?.from}\r\n startMonth={new Date(2000, 0, 1)}\r\n endMonth={new Date(new Date().getFullYear() + 2, 11, 31)}\r\n {...props}\r\n mode=\"range\"\r\n selected={selected}\r\n onDayClick={handleDayClick}\r\n className={cn(\"p-0\", calendarClassName)}\r\n />\r\n\r\n <div className=\"flex justify-center items-center gap-4 mt-auto w-full\">\r\n <Button variant=\"text\" className=\"flex-1 h-10\" onClick={handleCancel}>\r\n {cancelText ?? \"Cancel\"}\r\n </Button>\r\n <Button variant=\"primary\" className=\"flex-1 h-10\" onClick={handleApply}>\r\n {applyText ?? \"Apply\"}\r\n </Button>\r\n </div>\r\n </div>\r\n </DialogContent>\r\n </Dialog>\r\n </>\r\n );\r\n};\r\n\r\nexport { MobileDateRangePicker, type MobileDateRangePickerProps };\r\n"],"names":["MobileDateRangePicker","formatStr","selected","placeholder","className","calendarClassName","onDayClick","cancelText","applyText","onSelect","fromText","toText","disabled","props","isOpen","setIsOpen","React","range","setRange","handleDayClick","date","modifiers","e","handleCancel","handleApply","jsxs","Fragment","Button","cn","format","jsx","CalendarIcon","Dialog","DialogContent","DialogHeader","DialogTitle","VisuallyHidden","DialogDescription","Calendar"],"mappings":"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"}
1
+ {"version":3,"file":"mobiledaterangepicker.es.js","sources":["../src/components/date-picker/MobileDateRangePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { format } from \"date-fns\";\r\nimport { VisuallyHidden } from \"@radix-ui/react-visually-hidden\";\r\nimport { Calendar as CalendarIcon } from \"@trsys-tech/matrix-icons\";\r\nimport { PropsBase, PropsRange, DateRange, DayEventHandler } from \"react-day-picker\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Calendar } from \"./calendar\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from \"../dialog/Dialog\";\r\n\r\ntype MobileDateRangePickerProps = PropsBase &\r\n Omit<PropsRange, \"mode\"> & {\r\n formatStr?: string;\r\n placeholder?: string;\r\n calendarClassName?: string;\r\n selected?: DateRange;\r\n required?: boolean;\r\n cancelText?: string;\r\n applyText?: string;\r\n onSelect?: (date: DateRange | undefined) => void;\r\n fromText?: string;\r\n toText?: string;\r\n disabled?: boolean;\r\n };\r\n\r\nconst MobileDateRangePicker: React.FC<MobileDateRangePickerProps> = ({\r\n formatStr,\r\n selected,\r\n placeholder,\r\n className,\r\n calendarClassName,\r\n onDayClick,\r\n cancelText,\r\n applyText,\r\n onSelect,\r\n fromText,\r\n toText,\r\n disabled,\r\n ...props\r\n}) => {\r\n const [isOpen, setIsOpen] = React.useState(false);\r\n const [range, setRange] = React.useState<DateRange | undefined>(selected);\r\n\r\n const handleDayClick: DayEventHandler<React.MouseEvent<Element, MouseEvent>> = (date, modifiers, e) => {\r\n onDayClick?.(date, modifiers, e);\r\n if (!range || !range.from) {\r\n setRange({ from: date, to: undefined });\r\n } else if (date < range.from) {\r\n if (!range.to) {\r\n setRange({ from: date, to: range.from });\r\n } else {\r\n setRange({ from: date, to: range.to });\r\n }\r\n } else if (range?.from?.getTime() === date?.getTime() && (range?.from?.getTime() === range?.to?.getTime() || !range.to)) {\r\n setRange(undefined);\r\n } else if (\r\n range?.from?.getTime() !== range?.to?.getTime() &&\r\n (range.from?.getTime() === date?.getTime() || range?.to?.getTime() === date?.getTime())\r\n ) {\r\n setRange({ from: date, to: date });\r\n } else {\r\n setRange({ ...range, to: date });\r\n }\r\n };\r\n\r\n const handleCancel = () => {\r\n setIsOpen(false);\r\n setRange(selected);\r\n };\r\n\r\n const handleApply = () => {\r\n onSelect?.(range);\r\n setIsOpen(false);\r\n };\r\n\r\n return (\r\n <>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"mtx-flex mtx-h-8 mtx-w-full mtx-items-center mtx-justify-between mtx-whitespace-nowrap mtx-rounded-sm mtx-border mtx-border-input mtx-bg-transparent mtx-ps-3 mtx-pe-1 mtx-py-1.5 mtx-text-xs mtx-ring-offset-background data-[placeholder]:mtx-text-muted-foreground hover:mtx-border hover:mtx-border-primary hover:mtx-bg-transparent focus:mtx-border focus:mtx-border-primary focus:mtx-outline-none focus:mtx-ring focus:mtx-ring-primary-100 disabled:mtx-cursor-not-allowed disabled:mtx-bg-gray-100 disabled:mtx-text-text-300 disabled:mtx-border-gray-100 [&>span]:mtx-line-clamp-1 [&_svg]:disabled:mtx-text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!selected ? \"\" : undefined}\r\n onClick={() => setIsOpen(true)}\r\n aria-label={\r\n selected\r\n ? `Selected date: ${selected?.from ? format(selected.from, formatStr ?? \"yyyy/MM/dd\") : \"\"} - ${selected?.to ? format(selected.to, formatStr ?? \"yyyy/MM/dd\") : \"\"}`\r\n : placeholder\r\n }\r\n disabled={disabled}\r\n >\r\n {selected ? (\r\n <div className=\"mtx-grid mtx-grid-cols-2 mtx-flex-1 mtx-justify-items-start\">\r\n <span>\r\n {fromText ?? \"From\"}: {selected?.from ? format(selected.from, formatStr ?? \"yyyy/MM/dd\") : \"-\"}\r\n </span>{\" \"}\r\n <span>\r\n {toText ?? \"To\"}: {selected?.to ? format(selected.to, formatStr ?? \"yyyy/MM/dd\") : \"-\"}\r\n </span>\r\n </div>\r\n ) : (\r\n <span>{placeholder ?? \"Pick a Range\"}</span>\r\n )}\r\n <CalendarIcon className=\"mtx-mr-2 mtx-h-5 mtx-w-4 mtx-ms-auto\" />\r\n </Button>\r\n <Dialog open={isOpen} onOpenChange={handleCancel}>\r\n <DialogContent className=\"mtx-h-dscreen mtx-w-screen mtx-p-0 mtx-flex mtx-flex-col mtx-gap-0 data-[state=open]:mtx-animate-slide-from-bottom data-[state=closed]:mtx-animate-slide-to-bottom mtx-overflow-auto mtx-max-w-screen-2xl sm:mtx-rounded-none\">\r\n <DialogHeader>\r\n <DialogTitle asChild>\r\n <div className=\"mtx-grid mtx-grid-cols-2 mtx-border-b mtx-border-b-gray-200 mtx-mt-3\">\r\n <div className=\"mtx-text-sm mtx-font-bold mtx-space-y-1 mtx-border-e mtx-border-e-gray-200 mtx-p-4\">\r\n <h5 className=\"mtx-text-text-300 mtx-font-medium mtx-text-xs\">From</h5>\r\n <h6 className=\"\">{range?.from ? format(range.from, formatStr ?? \"eee, MMM dd\") : <pre> </pre>}</h6>\r\n </div>\r\n <div className=\"mtx-text-sm mtx-font-bold mtx-space-y-1 mtx-p-4 mtx-flex mtx-flex-col mtx-justify-center\">\r\n <h5 className=\"mtx-text-text-300 mtx-font-medium mtx-text-xs\">To</h5>\r\n <h6 className=\"\">{range?.to ? format(range.to, formatStr ?? \"eee, MMM dd\") : <pre> </pre>}</h6>\r\n </div>\r\n </div>\r\n </DialogTitle>\r\n <VisuallyHidden>\r\n <DialogDescription>{\"Date Picker\"}</DialogDescription>\r\n </VisuallyHidden>\r\n </DialogHeader>\r\n <div className=\"mtx-flex-1 mtx-flex mtx-flex-col mtx-items-center mtx-p-4\">\r\n <Calendar\r\n defaultMonth={selected?.from}\r\n startMonth={new Date(2000, 0, 1)}\r\n endMonth={new Date(new Date().getFullYear() + 2, 11, 31)}\r\n {...props}\r\n mode=\"range\"\r\n selected={selected}\r\n onDayClick={handleDayClick}\r\n className={cn(\"mtx-p-0\", calendarClassName)}\r\n />\r\n\r\n <div className=\"mtx-flex mtx-justify-center mtx-items-center mtx-gap-4 mtx-mt-auto mtx-w-full\">\r\n <Button variant=\"text\" className=\"mtx-flex-1 mtx-h-10\" onClick={handleCancel}>\r\n {cancelText ?? \"Cancel\"}\r\n </Button>\r\n <Button variant=\"primary\" className=\"mtx-flex-1 mtx-h-10\" onClick={handleApply}>\r\n {applyText ?? \"Apply\"}\r\n </Button>\r\n </div>\r\n </div>\r\n </DialogContent>\r\n </Dialog>\r\n </>\r\n );\r\n};\r\n\r\nexport { MobileDateRangePicker, type MobileDateRangePickerProps };\r\n"],"names":["MobileDateRangePicker","formatStr","selected","placeholder","className","calendarClassName","onDayClick","cancelText","applyText","onSelect","fromText","toText","disabled","props","isOpen","setIsOpen","React","range","setRange","handleDayClick","date","modifiers","e","handleCancel","handleApply","jsxs","Fragment","Button","cn","format","jsx","CalendarIcon","Dialog","DialogContent","DialogHeader","DialogTitle","VisuallyHidden","DialogDescription","Calendar"],"mappings":"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"}
@@ -1,41 +1,41 @@
1
- import { jsxs as t, jsx as r } from "react/jsx-runtime";
2
- import { useState as p } from "react";
3
- import { VisuallyHidden as c } from "@radix-ui/react-visually-hidden";
4
- import { cn as m } from "./utils.es.js";
5
- import { Button as b } from "./button.es.js";
6
- import { TimePickerContent as u } from "./timepickercontent.es.js";
7
- import { SwipableDrawer as f, SwipableDrawerContent as h, SwipableDrawerHeader as g, SwipableDrawerTitle as w, SwipableDrawerDescription as x } from "./swipabledrawer.es.js";
1
+ import { jsxs as r, jsx as e } from "react/jsx-runtime";
2
+ import { useState as d } from "react";
3
+ import { VisuallyHidden as s } from "@radix-ui/react-visually-hidden";
4
+ import { cn as p } from "./utils.es.js";
5
+ import { Button as c } from "./button.es.js";
6
+ import { TimePickerContent as b } from "./timepickercontent.es.js";
7
+ import { SwipableDrawer as u, SwipableDrawerContent as f, SwipableDrawerHeader as h, SwipableDrawerTitle as g, SwipableDrawerDescription as w } from "./swipabledrawer.es.js";
8
8
  const j = ({
9
- time: e,
10
- onTimeChange: i,
11
- className: n,
12
- slotsProps: l,
13
- placeholder: d = "Pick a time",
14
- ...s
9
+ time: t,
10
+ onTimeChange: o,
11
+ className: i,
12
+ slotsProps: n,
13
+ placeholder: x = "Pick a time",
14
+ ...l
15
15
  }) => {
16
- const [a, o] = p(!1);
17
- return /* @__PURE__ */ t(f, { open: a, onOpenChange: o, children: [
18
- /* @__PURE__ */ r(
19
- b,
16
+ const [m, a] = d(!1);
17
+ return /* @__PURE__ */ r(u, { open: m, onOpenChange: a, children: [
18
+ /* @__PURE__ */ e(
19
+ c,
20
20
  {
21
21
  variant: "text",
22
- className: m(
23
- "flex h-8 w-full items-center justify-between whitespace-nowrap rounded-sm border border-input bg-transparent ps-3 pe-1 py-1.5 text-xs ring-offset-background data-[placeholder]:text-muted-foreground hover:border hover:border-primary hover:bg-transparent focus:border focus:border-primary focus:outline-none focus:ring focus:ring-primary-100 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-text-300 disabled:border-gray-100 [&>span]:line-clamp-1 [&_svg]:disabled:text-text-300",
24
- n
22
+ className: p(
23
+ "mtx-flex mtx-h-8 mtx-w-full mtx-items-center mtx-justify-between mtx-whitespace-nowrap mtx-rounded-sm mtx-border mtx-border-input mtx-bg-transparent mtx-ps-3 mtx-pe-1 mtx-py-1.5 mtx-text-xs mtx-ring-offset-background data-[placeholder]:mtx-text-muted-foreground hover:mtx-border hover:mtx-border-primary hover:mtx-bg-transparent focus:mtx-border focus:mtx-border-primary focus:mtx-outline-none focus:mtx-ring focus:mtx-ring-primary-100 disabled:mtx-cursor-not-allowed disabled:mtx-bg-gray-100 disabled:mtx-text-text-300 disabled:mtx-border-gray-100 [&>span]:mtx-line-clamp-1 [&_svg]:disabled:mtx-text-text-300",
24
+ i
25
25
  ),
26
- "data-placeholder": e ? void 0 : "",
27
- onClick: () => o(!0),
28
- "aria-label": e?.hour ? `Selected time: ${e.hour}:${e.minute} ${e.ampm}` : d,
29
- ...s,
30
- children: `${e?.hour?.toString()?.padStart(2, "0") ?? "--"} : ${e?.minute?.toString()?.padStart(2, "0") ?? "--"} ${e?.ampm ?? "--"}`
26
+ "data-placeholder": t ? void 0 : "",
27
+ onClick: () => a(!0),
28
+ "aria-label": t?.hour ? `Selected time: ${t.hour}:${t.minute} ${t.ampm}` : x,
29
+ ...l,
30
+ children: `${t?.hour?.toString()?.padStart(2, "0") ?? "--"} : ${t?.minute?.toString()?.padStart(2, "0") ?? "--"} ${t?.ampm ?? "--"}`
31
31
  }
32
32
  ),
33
- /* @__PURE__ */ t(h, { children: [
34
- /* @__PURE__ */ r(g, { className: "p-0", children: /* @__PURE__ */ t(c, { children: [
35
- /* @__PURE__ */ r(w, { className: "text-primary text-lg font-bold text-start", children: " " }),
36
- /* @__PURE__ */ r(x, { children: " " })
33
+ /* @__PURE__ */ r(f, { children: [
34
+ /* @__PURE__ */ e(h, { className: "mtx-p-0", children: /* @__PURE__ */ r(s, { children: [
35
+ /* @__PURE__ */ e(g, { className: "mtx-text-primary mtx-text-lg mtx-font-bold mtx-text-start", children: " " }),
36
+ /* @__PURE__ */ e(w, { children: " " })
37
37
  ] }) }),
38
- /* @__PURE__ */ r(u, { isOpen: a, onTimeChange: i, time: e, slotsProps: l })
38
+ /* @__PURE__ */ e(b, { isOpen: m, onTimeChange: o, time: t, slotsProps: n })
39
39
  ] })
40
40
  ] });
41
41
  };
@@ -1 +1 @@
1
- {"version":3,"file":"mobiletimepicker.es.js","sources":["../src/components/date-picker/MobileTimePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { HTMLAttributes, useState } from \"react\";\r\nimport { VisuallyHidden } from \"@radix-ui/react-visually-hidden\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Time, TimePickerContent } from \"./TimePickerContent\";\r\nimport {\r\n SwipableDrawer,\r\n SwipableDrawerContent,\r\n SwipableDrawerDescription,\r\n SwipableDrawerHeader,\r\n SwipableDrawerTitle,\r\n} from \"../drawer/SwipableDrawer\";\r\n\r\ntype MobileTimePickerProps = HTMLAttributes<HTMLButtonElement> & {\r\n time: Time | undefined;\r\n onTimeChange: (time: Time | undefined) => void;\r\n placeholder?: string;\r\n disabled?: boolean;\r\n slotsProps?: {\r\n content?: HTMLAttributes<HTMLDivElement>;\r\n };\r\n};\r\n\r\nconst MobileTimePicker: React.FC<MobileTimePickerProps> = ({\r\n time,\r\n onTimeChange,\r\n className,\r\n slotsProps,\r\n placeholder = \"Pick a time\",\r\n ...restProps\r\n}) => {\r\n const [isOpen, setIsOpen] = useState(false);\r\n\r\n return (\r\n <SwipableDrawer open={isOpen} onOpenChange={setIsOpen}>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"flex h-8 w-full items-center justify-between whitespace-nowrap rounded-sm border border-input bg-transparent ps-3 pe-1 py-1.5 text-xs ring-offset-background data-[placeholder]:text-muted-foreground hover:border hover:border-primary hover:bg-transparent focus:border focus:border-primary focus:outline-none focus:ring focus:ring-primary-100 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-text-300 disabled:border-gray-100 [&>span]:line-clamp-1 [&_svg]:disabled:text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!time ? \"\" : undefined}\r\n onClick={() => setIsOpen(true)}\r\n aria-label={time?.hour ? `Selected time: ${time.hour}:${time.minute} ${time.ampm}` : placeholder}\r\n {...restProps}\r\n >\r\n {`${time?.hour?.toString()?.padStart(2, \"0\") ?? \"--\"} : ${time?.minute?.toString()?.padStart(2, \"0\") ?? \"--\"} ${time?.ampm ?? \"--\"}`}\r\n </Button>\r\n <SwipableDrawerContent>\r\n <SwipableDrawerHeader className=\"p-0\">\r\n <VisuallyHidden>\r\n <SwipableDrawerTitle className=\"text-primary text-lg font-bold text-start\"> </SwipableDrawerTitle>\r\n <SwipableDrawerDescription> </SwipableDrawerDescription>\r\n </VisuallyHidden>\r\n </SwipableDrawerHeader>\r\n <TimePickerContent isOpen={isOpen} onTimeChange={onTimeChange} time={time} slotsProps={slotsProps} />\r\n </SwipableDrawerContent>\r\n </SwipableDrawer>\r\n );\r\n};\r\nexport { MobileTimePicker, type MobileTimePickerProps };\r\n"],"names":["MobileTimePicker","time","onTimeChange","className","slotsProps","placeholder","restProps","isOpen","setIsOpen","useState","jsxs","SwipableDrawer","jsx","Button","cn","SwipableDrawerContent","SwipableDrawerHeader","VisuallyHidden","SwipableDrawerTitle","SwipableDrawerDescription","TimePickerContent"],"mappings":";;;;;;;AA0BA,MAAMA,IAAoD,CAAC;AAAA,EACzD,MAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,GAAGC;AACL,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK;AAE1C,SACE,gBAAAC,EAACC,GAAA,EAAe,MAAMJ,GAAQ,cAAcC,GAC1C,UAAA;AAAA,IAAA,gBAAAI;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,SAAQ;AAAA,QACR,WAAWC;AAAA,UACT;AAAA,UACAX;AAAA,QAAA;AAAA,QAEF,oBAAmBF,IAAY,SAAL;AAAA,QAC1B,SAAS,MAAMO,EAAU,EAAI;AAAA,QAC7B,cAAYP,GAAM,OAAO,kBAAkBA,EAAK,IAAI,IAAIA,EAAK,MAAM,IAAIA,EAAK,IAAI,KAAKI;AAAA,QACpF,GAAGC;AAAA,QAEH,UAAA,GAAGL,GAAM,MAAM,SAAA,GAAY,SAAS,GAAG,GAAG,KAAK,IAAI,MAAMA,GAAM,QAAQ,SAAA,GAAY,SAAS,GAAG,GAAG,KAAK,IAAI,IAAIA,GAAM,QAAQ,IAAI;AAAA,MAAA;AAAA,IAAA;AAAA,sBAEnIc,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAH,EAACI,GAAA,EAAqB,WAAU,OAC9B,UAAA,gBAAAN,EAACO,GAAA,EACC,UAAA;AAAA,QAAA,gBAAAL,EAACM,GAAA,EAAoB,WAAU,6CAA4C,UAAA,KAAC;AAAA,QAC5E,gBAAAN,EAACO,KAA0B,UAAA,IAAA,CAAC;AAAA,MAAA,EAAA,CAC9B,EAAA,CACF;AAAA,MACA,gBAAAP,EAACQ,GAAA,EAAkB,QAAAb,GAAgB,cAAAL,GAA4B,MAAAD,GAAY,YAAAG,EAAA,CAAwB;AAAA,IAAA,EAAA,CACrG;AAAA,EAAA,GACF;AAEJ;"}
1
+ {"version":3,"file":"mobiletimepicker.es.js","sources":["../src/components/date-picker/MobileTimePicker.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport { HTMLAttributes, useState } from \"react\";\r\nimport { VisuallyHidden } from \"@radix-ui/react-visually-hidden\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\nimport { Button } from \"../button/Button\";\r\nimport { Time, TimePickerContent } from \"./TimePickerContent\";\r\nimport {\r\n SwipableDrawer,\r\n SwipableDrawerContent,\r\n SwipableDrawerDescription,\r\n SwipableDrawerHeader,\r\n SwipableDrawerTitle,\r\n} from \"../drawer/SwipableDrawer\";\r\n\r\ntype MobileTimePickerProps = HTMLAttributes<HTMLButtonElement> & {\r\n time: Time | undefined;\r\n onTimeChange: (time: Time | undefined) => void;\r\n placeholder?: string;\r\n disabled?: boolean;\r\n slotsProps?: {\r\n content?: HTMLAttributes<HTMLDivElement>;\r\n };\r\n};\r\n\r\nconst MobileTimePicker: React.FC<MobileTimePickerProps> = ({\r\n time,\r\n onTimeChange,\r\n className,\r\n slotsProps,\r\n placeholder = \"Pick a time\",\r\n ...restProps\r\n}) => {\r\n const [isOpen, setIsOpen] = useState(false);\r\n\r\n return (\r\n <SwipableDrawer open={isOpen} onOpenChange={setIsOpen}>\r\n <Button\r\n variant=\"text\"\r\n className={cn(\r\n \"mtx-flex mtx-h-8 mtx-w-full mtx-items-center mtx-justify-between mtx-whitespace-nowrap mtx-rounded-sm mtx-border mtx-border-input mtx-bg-transparent mtx-ps-3 mtx-pe-1 mtx-py-1.5 mtx-text-xs mtx-ring-offset-background data-[placeholder]:mtx-text-muted-foreground hover:mtx-border hover:mtx-border-primary hover:mtx-bg-transparent focus:mtx-border focus:mtx-border-primary focus:mtx-outline-none focus:mtx-ring focus:mtx-ring-primary-100 disabled:mtx-cursor-not-allowed disabled:mtx-bg-gray-100 disabled:mtx-text-text-300 disabled:mtx-border-gray-100 [&>span]:mtx-line-clamp-1 [&_svg]:disabled:mtx-text-text-300\",\r\n className,\r\n )}\r\n data-placeholder={!time ? \"\" : undefined}\r\n onClick={() => setIsOpen(true)}\r\n aria-label={time?.hour ? `Selected time: ${time.hour}:${time.minute} ${time.ampm}` : placeholder}\r\n {...restProps}\r\n >\r\n {`${time?.hour?.toString()?.padStart(2, \"0\") ?? \"--\"} : ${time?.minute?.toString()?.padStart(2, \"0\") ?? \"--\"} ${time?.ampm ?? \"--\"}`}\r\n </Button>\r\n <SwipableDrawerContent>\r\n <SwipableDrawerHeader className=\"mtx-p-0\">\r\n <VisuallyHidden>\r\n <SwipableDrawerTitle className=\"mtx-text-primary mtx-text-lg mtx-font-bold mtx-text-start\"> </SwipableDrawerTitle>\r\n <SwipableDrawerDescription> </SwipableDrawerDescription>\r\n </VisuallyHidden>\r\n </SwipableDrawerHeader>\r\n <TimePickerContent isOpen={isOpen} onTimeChange={onTimeChange} time={time} slotsProps={slotsProps} />\r\n </SwipableDrawerContent>\r\n </SwipableDrawer>\r\n );\r\n};\r\nexport { MobileTimePicker, type MobileTimePickerProps };\r\n"],"names":["MobileTimePicker","time","onTimeChange","className","slotsProps","placeholder","restProps","isOpen","setIsOpen","useState","jsxs","SwipableDrawer","jsx","Button","cn","SwipableDrawerContent","SwipableDrawerHeader","VisuallyHidden","SwipableDrawerTitle","SwipableDrawerDescription","TimePickerContent"],"mappings":";;;;;;;AA0BA,MAAMA,IAAoD,CAAC;AAAA,EACzD,MAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,GAAGC;AACL,MAAM;AACJ,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK;AAE1C,SACE,gBAAAC,EAACC,GAAA,EAAe,MAAMJ,GAAQ,cAAcC,GAC1C,UAAA;AAAA,IAAA,gBAAAI;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,SAAQ;AAAA,QACR,WAAWC;AAAA,UACT;AAAA,UACAX;AAAA,QAAA;AAAA,QAEF,oBAAmBF,IAAY,SAAL;AAAA,QAC1B,SAAS,MAAMO,EAAU,EAAI;AAAA,QAC7B,cAAYP,GAAM,OAAO,kBAAkBA,EAAK,IAAI,IAAIA,EAAK,MAAM,IAAIA,EAAK,IAAI,KAAKI;AAAA,QACpF,GAAGC;AAAA,QAEH,UAAA,GAAGL,GAAM,MAAM,SAAA,GAAY,SAAS,GAAG,GAAG,KAAK,IAAI,MAAMA,GAAM,QAAQ,SAAA,GAAY,SAAS,GAAG,GAAG,KAAK,IAAI,IAAIA,GAAM,QAAQ,IAAI;AAAA,MAAA;AAAA,IAAA;AAAA,sBAEnIc,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAH,EAACI,GAAA,EAAqB,WAAU,WAC9B,UAAA,gBAAAN,EAACO,GAAA,EACC,UAAA;AAAA,QAAA,gBAAAL,EAACM,GAAA,EAAoB,WAAU,6DAA4D,UAAA,KAAC;AAAA,QAC5F,gBAAAN,EAACO,KAA0B,UAAA,IAAA,CAAC;AAAA,MAAA,EAAA,CAC9B,EAAA,CACF;AAAA,MACA,gBAAAP,EAACQ,GAAA,EAAkB,QAAAb,GAAgB,cAAAL,GAA4B,MAAAD,GAAY,YAAAG,EAAA,CAAwB;AAAA,IAAA,EAAA,CACrG;AAAA,EAAA,GACF;AAEJ;"}
package/dist/modal.es.js CHANGED
@@ -1,71 +1,75 @@
1
- import { jsx as t, jsxs as r } from "react/jsx-runtime";
2
- import * as i from "react";
1
+ import { jsx as a, jsxs as d } from "react/jsx-runtime";
2
+ import * as x from "react";
3
3
  import { XMark as w } from "@trsys-tech/matrix-icons";
4
- import * as o from "@radix-ui/react-dialog";
5
- import { cn as s } from "./utils.es.js";
6
- const b = o.Portal, v = o.Close, c = i.forwardRef(({ className: e, ...a }, l) => /* @__PURE__ */ t(
7
- o.Overlay,
4
+ import * as m from "@radix-ui/react-dialog";
5
+ import { cn as o } from "./utils.es.js";
6
+ const b = m.Portal, v = m.Close, i = x.forwardRef(({ className: t, ...e }, s) => /* @__PURE__ */ a(
7
+ m.Overlay,
8
8
  {
9
- ref: l,
10
- className: s(
11
- "fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
12
- e
9
+ ref: s,
10
+ className: o(
11
+ "mtx-fixed mtx-inset-0 mtx-z-50 mtx-bg-black/80 data-[state=open]:mtx-animate-in data-[state=closed]:mtx-animate-out data-[state=closed]:mtx-fade-out-0 data-[state=open]:mtx-fade-in-0",
12
+ t
13
13
  ),
14
- ...a
14
+ ...e
15
15
  }
16
16
  ));
17
- c.displayName = o.Overlay.displayName;
18
- const m = ({ className: e, ...a }) => /* @__PURE__ */ t("div", { className: s("flex flex-row justify-between", e), ...a });
19
- m.displayName = "DialogHeader";
20
- const M = ({ className: e, ...a }) => /* @__PURE__ */ t("div", { className: s("flex flex-row justify-end gap-2", e), ...a });
17
+ i.displayName = m.Overlay.displayName;
18
+ const n = ({ className: t, ...e }) => /* @__PURE__ */ a("div", { className: o("mtx-flex mtx-flex-row mtx-justify-between", t), ...e });
19
+ n.displayName = "DialogHeader";
20
+ const M = ({ className: t, ...e }) => /* @__PURE__ */ a("div", { className: o("mtx-flex mtx-flex-row mtx-justify-end mtx-gap-2", t), ...e });
21
21
  M.displayName = "DialogFooter";
22
- const p = i.forwardRef(
23
- ({ className: e, ...a }, l) => /* @__PURE__ */ t(o.Title, { ref: l, className: s("text-lg font-semibold leading-none tracking-tight", e), ...a })
22
+ const c = x.forwardRef(
23
+ ({ className: t, ...e }, s) => /* @__PURE__ */ a(m.Title, { ref: s, className: o("mtx-text-lg mtx-font-semibold mtx-leading-none mtx-tracking-tight", t), ...e })
24
24
  );
25
- p.displayName = o.Title.displayName;
26
- const D = i.forwardRef(({ className: e, ...a }, l) => /* @__PURE__ */ t(o.Description, { ref: l, className: s("text-sm text-muted-foreground", e), ...a }));
27
- D.displayName = o.Description.displayName;
28
- const P = i.forwardRef((e, a) => {
29
- const { title: l, className: f, children: g, fullScreen: n, open: u, onOpenChange: N, defaultOpen: x, modal: h, slotProps: d, ...y } = e;
30
- return /* @__PURE__ */ t(o.Root, { defaultOpen: x, modal: h, open: u, onOpenChange: N, children: /* @__PURE__ */ r(b, { ...d?.portal ?? {}, children: [
31
- /* @__PURE__ */ t(c, {}),
32
- /* @__PURE__ */ r(
33
- o.Content,
25
+ c.displayName = m.Title.displayName;
26
+ const D = x.forwardRef(({ className: t, ...e }, s) => /* @__PURE__ */ a(m.Description, { ref: s, className: o("mtx-text-sm mtx-text-muted-foreground", t), ...e }));
27
+ D.displayName = m.Description.displayName;
28
+ const P = x.forwardRef((t, e) => {
29
+ const { title: s, className: p, children: f, fullScreen: r, open: g, onOpenChange: u, defaultOpen: N, modal: h, slotProps: l, ...y } = t;
30
+ return /* @__PURE__ */ a(m.Root, { defaultOpen: N, modal: h, open: g, onOpenChange: u, children: /* @__PURE__ */ d(b, { ...l?.portal ?? {}, children: [
31
+ /* @__PURE__ */ a(i, {}),
32
+ /* @__PURE__ */ d(
33
+ m.Content,
34
34
  {
35
- ref: a,
36
- className: s(
37
- "fixed left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-50 flex flex-col gap-2 w-full max-w-lg p-4 border bg-background shadow-lg duration-200 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-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",
38
- n ? "w-screen h-screen" : "max-w-lg",
39
- f
35
+ ref: e,
36
+ className: o(
37
+ "mtx-fixed mtx-left-1/2 mtx-top-1/2 -mtx-translate-x-1/2 -mtx-translate-y-1/2 mtx-z-50 mtx-flex mtx-flex-col mtx-gap-2 mtx-w-full mtx-max-w-lg mtx-p-4 mtx-border mtx-bg-background mtx-shadow-lg mtx-duration-200 data-[state=open]:mtx-animate-in data-[state=closed]:mtx-animate-out data-[state=closed]:mtx-fade-out-0 data-[state=open]:mtx-fade-in-0 data-[state=closed]:mtx-zoom-out-95 data-[state=open]:mtx-zoom-in-95 data-[state=closed]:mtx-slide-out-to-left-1/2 data-[state=closed]:mtx-slide-out-to-top-[48%] data-[state=open]:mtx-slide-in-from-left-1/2 data-[state=open]:mtx-slide-in-from-top-[48%] sm:mtx-rounded-lg",
38
+ r ? "mtx-w-screen mtx-h-screen" : "mtx-max-w-lg",
39
+ p
40
40
  ),
41
41
  ...y,
42
42
  "aria-describedby": void 0,
43
43
  children: [
44
- /* @__PURE__ */ r(m, { ...d?.header ?? {}, children: [
45
- /* @__PURE__ */ t(p, { ...d?.title ?? {}, children: l }),
46
- /* @__PURE__ */ r(
44
+ /* @__PURE__ */ d(n, { ...l?.header ?? {}, children: [
45
+ /* @__PURE__ */ a(c, { ...l?.title ?? {}, children: s }),
46
+ /* @__PURE__ */ d(
47
47
  v,
48
48
  {
49
- ...d?.close ?? {},
50
- className: s(
51
- "rounded-sm hover:bg-primary-50 hover:ring-2 hover:ring-primary-50 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground mt-0",
52
- d?.close?.className
49
+ ...l?.close ?? {},
50
+ className: o(
51
+ "mtx-rounded-sm hover:mtx-bg-primary-50 hover:mtx-ring-2 hover:mtx-ring-primary-50 disabled:mtx-pointer-events-none data-[state=open]:mtx-bg-accent data-[state=open]:mtx-text-muted-foreground mtx-mt-0",
52
+ l?.close?.className
53
53
  ),
54
54
  children: [
55
- /* @__PURE__ */ t(w, { className: "h-5 w-5" }),
56
- /* @__PURE__ */ t("span", { className: "sr-only", children: "Close" })
55
+ /* @__PURE__ */ a(w, { className: "mtx-h-5 mtx-w-5" }),
56
+ /* @__PURE__ */ a("span", { className: "mtx-sr-only", children: "Close" })
57
57
  ]
58
58
  }
59
59
  )
60
60
  ] }),
61
- /* @__PURE__ */ t(
61
+ /* @__PURE__ */ a(
62
62
  "hr",
63
63
  {
64
- ...d?.divider ?? {},
65
- className: s("w-full border-muted -mt-[1px] pb-2", n && "w-screen -mx-4", d?.divider?.className)
64
+ ...l?.divider ?? {},
65
+ className: o(
66
+ "mtx-w-full mtx-border-muted -mtx-mt-[1px] mtx-pb-2",
67
+ r && "mtx-w-screen -mtx-mx-4",
68
+ l?.divider?.className
69
+ )
66
70
  }
67
71
  ),
68
- g
72
+ f
69
73
  ]
70
74
  }
71
75
  )
@@ -1 +1 @@
1
- {"version":3,"file":"modal.es.js","sources":["../src/components/modal/Modal.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { XMark } from \"@trsys-tech/matrix-icons\";\r\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\n\r\nconst ModalPortal = DialogPrimitive.Portal;\r\n\r\nconst ModalClose = DialogPrimitive.Close;\r\n\r\nconst ModalOverlay = React.forwardRef<\r\n React.ElementRef<typeof DialogPrimitive.Overlay>,\r\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\r\n>(({ className, ...props }, ref) => (\r\n <DialogPrimitive.Overlay\r\n ref={ref}\r\n className={cn(\r\n \"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n));\r\nModalOverlay.displayName = DialogPrimitive.Overlay.displayName;\r\n\r\nconst ModalHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\r\n <div className={cn(\"flex flex-row justify-between\", className)} {...props} />\r\n);\r\nModalHeader.displayName = \"DialogHeader\";\r\n\r\nconst ModalFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\r\n <div className={cn(\"flex flex-row justify-end gap-2\", className)} {...props} />\r\n);\r\nModalFooter.displayName = \"DialogFooter\";\r\ntype ModalFooterProps = React.ComponentProps<typeof ModalFooter>;\r\n\r\nconst ModalTitle = React.forwardRef<React.ElementRef<typeof DialogPrimitive.Title>, React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>>(\r\n ({ className, ...props }, ref) => (\r\n <DialogPrimitive.Title ref={ref} className={cn(\"text-lg font-semibold leading-none tracking-tight\", className)} {...props} />\r\n ),\r\n);\r\nModalTitle.displayName = DialogPrimitive.Title.displayName;\r\n\r\nconst ModalDescription = React.forwardRef<\r\n React.ElementRef<typeof DialogPrimitive.Description>,\r\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>\r\n>(({ className, ...props }, ref) => <DialogPrimitive.Description ref={ref} className={cn(\"text-sm text-muted-foreground\", className)} {...props} />);\r\nModalDescription.displayName = DialogPrimitive.Description.displayName;\r\n\r\ninterface ModalProps extends DialogPrimitive.DialogProps, Omit<DialogPrimitive.DialogContentProps, \"title\"> {\r\n title: React.ReactNode;\r\n fullScreen?: boolean;\r\n slotProps?: {\r\n title?: DialogPrimitive.DialogTitleProps;\r\n close?: DialogPrimitive.DialogCloseProps;\r\n header?: React.ComponentProps<typeof ModalHeader>;\r\n portal?: DialogPrimitive.DialogPortalProps;\r\n divider?: React.ComponentProps<\"hr\">;\r\n };\r\n}\r\n\r\nconst Modal = React.forwardRef<React.ElementRef<typeof DialogPrimitive.Content>, ModalProps>((props, ref) => {\r\n const { title, className, children, fullScreen, open, onOpenChange, defaultOpen, modal, slotProps, ...restProps } = props;\r\n\r\n return (\r\n <DialogPrimitive.Root defaultOpen={defaultOpen} modal={modal} open={open} onOpenChange={onOpenChange}>\r\n <ModalPortal {...(slotProps?.portal ?? {})}>\r\n <ModalOverlay />\r\n <DialogPrimitive.Content\r\n ref={ref}\r\n className={cn(\r\n \"fixed left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-50 flex flex-col gap-2 w-full max-w-lg p-4 border bg-background shadow-lg duration-200 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-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg\",\r\n fullScreen ? \"w-screen h-screen\" : \"max-w-lg\",\r\n className,\r\n )}\r\n {...restProps}\r\n aria-describedby={undefined}\r\n >\r\n <ModalHeader {...(slotProps?.header ?? {})}>\r\n <ModalTitle {...(slotProps?.title ?? {})}>{title}</ModalTitle>\r\n <ModalClose\r\n {...(slotProps?.close ?? {})}\r\n className={cn(\r\n \"rounded-sm hover:bg-primary-50 hover:ring-2 hover:ring-primary-50 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground mt-0\",\r\n slotProps?.close?.className,\r\n )}\r\n >\r\n <XMark className=\"h-5 w-5\" />\r\n <span className=\"sr-only\">Close</span>\r\n </ModalClose>\r\n </ModalHeader>\r\n {/* Divider: the padding and margin is because of a bug in chrome causes the border to be shown with more height than expected */}\r\n <hr\r\n {...(slotProps?.divider ?? {})}\r\n className={cn(\"w-full border-muted -mt-[1px] pb-2\", fullScreen && \"w-screen -mx-4\", slotProps?.divider?.className)}\r\n />\r\n {children}\r\n </DialogPrimitive.Content>\r\n </ModalPortal>\r\n </DialogPrimitive.Root>\r\n );\r\n});\r\n\r\nexport { Modal, ModalFooter, type ModalProps, type ModalFooterProps };\r\n"],"names":["ModalPortal","DialogPrimitive","ModalClose","ModalOverlay","React","className","props","ref","jsx","cn","ModalHeader","ModalFooter","ModalTitle","ModalDescription","Modal","title","children","fullScreen","open","onOpenChange","defaultOpen","modal","slotProps","restProps","jsxs","XMark"],"mappings":"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"}
1
+ {"version":3,"file":"modal.es.js","sources":["../src/components/modal/Modal.tsx"],"sourcesContent":["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { XMark } from \"@trsys-tech/matrix-icons\";\r\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\";\r\n\r\nimport { cn } from \"../../lib/utils\";\r\n\r\nconst ModalPortal = DialogPrimitive.Portal;\r\n\r\nconst ModalClose = DialogPrimitive.Close;\r\n\r\nconst ModalOverlay = React.forwardRef<\r\n React.ElementRef<typeof DialogPrimitive.Overlay>,\r\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\r\n>(({ className, ...props }, ref) => (\r\n <DialogPrimitive.Overlay\r\n ref={ref}\r\n className={cn(\r\n \"mtx-fixed mtx-inset-0 mtx-z-50 mtx-bg-black/80 data-[state=open]:mtx-animate-in data-[state=closed]:mtx-animate-out data-[state=closed]:mtx-fade-out-0 data-[state=open]:mtx-fade-in-0\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n));\r\nModalOverlay.displayName = DialogPrimitive.Overlay.displayName;\r\n\r\nconst ModalHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\r\n <div className={cn(\"mtx-flex mtx-flex-row mtx-justify-between\", className)} {...props} />\r\n);\r\nModalHeader.displayName = \"DialogHeader\";\r\n\r\nconst ModalFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\r\n <div className={cn(\"mtx-flex mtx-flex-row mtx-justify-end mtx-gap-2\", className)} {...props} />\r\n);\r\nModalFooter.displayName = \"DialogFooter\";\r\ntype ModalFooterProps = React.ComponentProps<typeof ModalFooter>;\r\n\r\nconst ModalTitle = React.forwardRef<React.ElementRef<typeof DialogPrimitive.Title>, React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>>(\r\n ({ className, ...props }, ref) => (\r\n <DialogPrimitive.Title ref={ref} className={cn(\"mtx-text-lg mtx-font-semibold mtx-leading-none mtx-tracking-tight\", className)} {...props} />\r\n ),\r\n);\r\nModalTitle.displayName = DialogPrimitive.Title.displayName;\r\n\r\nconst ModalDescription = React.forwardRef<\r\n React.ElementRef<typeof DialogPrimitive.Description>,\r\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>\r\n>(({ className, ...props }, ref) => (\r\n <DialogPrimitive.Description ref={ref} className={cn(\"mtx-text-sm mtx-text-muted-foreground\", className)} {...props} />\r\n));\r\nModalDescription.displayName = DialogPrimitive.Description.displayName;\r\n\r\ninterface ModalProps extends DialogPrimitive.DialogProps, Omit<DialogPrimitive.DialogContentProps, \"title\"> {\r\n title: React.ReactNode;\r\n fullScreen?: boolean;\r\n slotProps?: {\r\n title?: DialogPrimitive.DialogTitleProps;\r\n close?: DialogPrimitive.DialogCloseProps;\r\n header?: React.ComponentProps<typeof ModalHeader>;\r\n portal?: DialogPrimitive.DialogPortalProps;\r\n divider?: React.ComponentProps<\"hr\">;\r\n };\r\n}\r\n\r\nconst Modal = React.forwardRef<React.ElementRef<typeof DialogPrimitive.Content>, ModalProps>((props, ref) => {\r\n const { title, className, children, fullScreen, open, onOpenChange, defaultOpen, modal, slotProps, ...restProps } = props;\r\n\r\n return (\r\n <DialogPrimitive.Root defaultOpen={defaultOpen} modal={modal} open={open} onOpenChange={onOpenChange}>\r\n <ModalPortal {...(slotProps?.portal ?? {})}>\r\n <ModalOverlay />\r\n <DialogPrimitive.Content\r\n ref={ref}\r\n className={cn(\r\n \"mtx-fixed mtx-left-1/2 mtx-top-1/2 -mtx-translate-x-1/2 -mtx-translate-y-1/2 mtx-z-50 mtx-flex mtx-flex-col mtx-gap-2 mtx-w-full mtx-max-w-lg mtx-p-4 mtx-border mtx-bg-background mtx-shadow-lg mtx-duration-200 data-[state=open]:mtx-animate-in data-[state=closed]:mtx-animate-out data-[state=closed]:mtx-fade-out-0 data-[state=open]:mtx-fade-in-0 data-[state=closed]:mtx-zoom-out-95 data-[state=open]:mtx-zoom-in-95 data-[state=closed]:mtx-slide-out-to-left-1/2 data-[state=closed]:mtx-slide-out-to-top-[48%] data-[state=open]:mtx-slide-in-from-left-1/2 data-[state=open]:mtx-slide-in-from-top-[48%] sm:mtx-rounded-lg\",\r\n fullScreen ? \"mtx-w-screen mtx-h-screen\" : \"mtx-max-w-lg\",\r\n className,\r\n )}\r\n {...restProps}\r\n aria-describedby={undefined}\r\n >\r\n <ModalHeader {...(slotProps?.header ?? {})}>\r\n <ModalTitle {...(slotProps?.title ?? {})}>{title}</ModalTitle>\r\n <ModalClose\r\n {...(slotProps?.close ?? {})}\r\n className={cn(\r\n \"mtx-rounded-sm hover:mtx-bg-primary-50 hover:mtx-ring-2 hover:mtx-ring-primary-50 disabled:mtx-pointer-events-none data-[state=open]:mtx-bg-accent data-[state=open]:mtx-text-muted-foreground mtx-mt-0\",\r\n slotProps?.close?.className,\r\n )}\r\n >\r\n <XMark className=\"mtx-h-5 mtx-w-5\" />\r\n <span className=\"mtx-sr-only\">Close</span>\r\n </ModalClose>\r\n </ModalHeader>\r\n {/* Divider: the padding and margin is because of a bug in chrome causes the border to be shown with more height than expected */}\r\n <hr\r\n {...(slotProps?.divider ?? {})}\r\n className={cn(\r\n \"mtx-w-full mtx-border-muted -mtx-mt-[1px] mtx-pb-2\",\r\n fullScreen && \"mtx-w-screen -mtx-mx-4\",\r\n slotProps?.divider?.className,\r\n )}\r\n />\r\n {children}\r\n </DialogPrimitive.Content>\r\n </ModalPortal>\r\n </DialogPrimitive.Root>\r\n );\r\n});\r\n\r\nexport { Modal, ModalFooter, type ModalProps, type ModalFooterProps };\r\n"],"names":["ModalPortal","DialogPrimitive","ModalClose","ModalOverlay","React","className","props","ref","jsx","cn","ModalHeader","ModalFooter","ModalTitle","ModalDescription","Modal","title","children","fullScreen","open","onOpenChange","defaultOpen","modal","slotProps","restProps","jsxs","XMark"],"mappings":"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"}