@memori.ai/memori-react 8.11.0 → 8.13.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 (243) hide show
  1. package/CHANGELOG.md +74 -0
  2. package/dist/components/AgeVerificationModal/AgeVerificationModal.css +41 -14
  3. package/dist/components/AgeVerificationModal/AgeVerificationModal.js +2 -2
  4. package/dist/components/AgeVerificationModal/AgeVerificationModal.js.map +1 -1
  5. package/dist/components/Auth/Auth.js +36 -8
  6. package/dist/components/Auth/Auth.js.map +1 -1
  7. package/dist/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.css +2 -2
  8. package/dist/components/Chat/Chat.css +37 -3
  9. package/dist/components/Chat/Chat.js +61 -23
  10. package/dist/components/Chat/Chat.js.map +1 -1
  11. package/dist/components/ChatBubble/ChatBubble.css +87 -15
  12. package/dist/components/ChatBubble/ChatBubble.js +129 -19
  13. package/dist/components/ChatBubble/ChatBubble.js.map +1 -1
  14. package/dist/components/ChatHistoryDrawer/ChatHistory.css +5 -1
  15. package/dist/components/ChatInputs/ChatInputs.css +293 -17
  16. package/dist/components/ChatInputs/ChatInputs.d.ts +1 -0
  17. package/dist/components/ChatInputs/ChatInputs.js +48 -27
  18. package/dist/components/ChatInputs/ChatInputs.js.map +1 -1
  19. package/dist/components/ChatTextArea/ChatTextArea.css +75 -31
  20. package/dist/components/ChatTextArea/ChatTextArea.js +47 -18
  21. package/dist/components/ChatTextArea/ChatTextArea.js.map +1 -1
  22. package/dist/components/DateSelector/DateSelector.css +125 -104
  23. package/dist/components/DateSelector/DateSelector.d.ts +1 -1
  24. package/dist/components/DateSelector/DateSelector.js +110 -52
  25. package/dist/components/DateSelector/DateSelector.js.map +1 -1
  26. package/dist/components/FilePreview/FilePreview.css +225 -146
  27. package/dist/components/FilePreview/FilePreview.d.ts +1 -2
  28. package/dist/components/FilePreview/FilePreview.js +20 -6
  29. package/dist/components/FilePreview/FilePreview.js.map +1 -1
  30. package/dist/components/Header/Header.css +2 -2
  31. package/dist/components/Header/Header.js +1 -1
  32. package/dist/components/Header/Header.js.map +1 -1
  33. package/dist/components/LoginDrawer/LoginDrawer.css +37 -5
  34. package/dist/components/LoginDrawer/LoginDrawer.d.ts +1 -2
  35. package/dist/components/LoginDrawer/LoginDrawer.js +2 -9
  36. package/dist/components/LoginDrawer/LoginDrawer.js.map +1 -1
  37. package/dist/components/MediaWidget/MediaItemWidget.js +2 -1
  38. package/dist/components/MediaWidget/MediaItemWidget.js.map +1 -1
  39. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js +1 -1
  40. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js.map +1 -1
  41. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js +1 -1
  42. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js.map +1 -1
  43. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js +3 -0
  44. package/dist/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js.map +1 -1
  45. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +2 -2
  46. package/dist/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  47. package/dist/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.css +16 -7
  48. package/dist/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js +6 -4
  49. package/dist/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js.map +1 -1
  50. package/dist/components/MemoriWidget/MemoriWidget.css +11 -2
  51. package/dist/components/MemoriWidget/MemoriWidget.js +105 -25
  52. package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
  53. package/dist/components/MicrophoneButton/MicrophoneButton.css +2 -2
  54. package/dist/components/StartPanel/StartPanel.css +8 -0
  55. package/dist/components/UploadButton/UploadButton.css +20 -17
  56. package/dist/components/UploadButton/UploadButton.js +218 -87
  57. package/dist/components/UploadButton/UploadButton.js.map +1 -1
  58. package/dist/components/UploadButton/UploadDocuments/UploadDocuments.js +14 -4
  59. package/dist/components/UploadButton/UploadDocuments/UploadDocuments.js.map +1 -1
  60. package/dist/components/UploadButton/UploadImages/UploadImages.js +143 -16
  61. package/dist/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  62. package/dist/components/layouts/chat.css +1 -1
  63. package/dist/components/ui/Drawer.css +8 -0
  64. package/dist/components/ui/Drawer.d.ts +2 -0
  65. package/dist/components/ui/Drawer.js +2 -2
  66. package/dist/components/ui/Drawer.js.map +1 -1
  67. package/dist/components/ui/Tooltip.css +49 -1
  68. package/dist/components/ui/Tooltip.d.ts +1 -1
  69. package/dist/helpers/constants.d.ts +1 -0
  70. package/dist/helpers/constants.js +2 -1
  71. package/dist/helpers/constants.js.map +1 -1
  72. package/dist/helpers/imageCompression.d.ts +7 -0
  73. package/dist/helpers/imageCompression.js +123 -0
  74. package/dist/helpers/imageCompression.js.map +1 -0
  75. package/dist/locales/de.json +13 -5
  76. package/dist/locales/en.json +17 -6
  77. package/dist/locales/es.json +13 -5
  78. package/dist/locales/fr.json +12 -5
  79. package/dist/locales/it.json +16 -6
  80. package/dist/styles.css +4 -4
  81. package/esm/components/AgeVerificationModal/AgeVerificationModal.css +41 -14
  82. package/esm/components/AgeVerificationModal/AgeVerificationModal.js +2 -2
  83. package/esm/components/AgeVerificationModal/AgeVerificationModal.js.map +1 -1
  84. package/esm/components/Auth/Auth.js +36 -8
  85. package/esm/components/Auth/Auth.js.map +1 -1
  86. package/esm/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.css +2 -2
  87. package/esm/components/Chat/Chat.css +37 -3
  88. package/esm/components/Chat/Chat.js +61 -23
  89. package/esm/components/Chat/Chat.js.map +1 -1
  90. package/esm/components/ChatBubble/ChatBubble.css +87 -15
  91. package/esm/components/ChatBubble/ChatBubble.js +130 -20
  92. package/esm/components/ChatBubble/ChatBubble.js.map +1 -1
  93. package/esm/components/ChatHistoryDrawer/ChatHistory.css +5 -1
  94. package/esm/components/ChatInputs/ChatInputs.css +293 -17
  95. package/esm/components/ChatInputs/ChatInputs.d.ts +1 -0
  96. package/esm/components/ChatInputs/ChatInputs.js +49 -28
  97. package/esm/components/ChatInputs/ChatInputs.js.map +1 -1
  98. package/esm/components/ChatTextArea/ChatTextArea.css +75 -31
  99. package/esm/components/ChatTextArea/ChatTextArea.js +49 -20
  100. package/esm/components/ChatTextArea/ChatTextArea.js.map +1 -1
  101. package/esm/components/DateSelector/DateSelector.css +125 -104
  102. package/esm/components/DateSelector/DateSelector.d.ts +1 -1
  103. package/esm/components/DateSelector/DateSelector.js +111 -52
  104. package/esm/components/DateSelector/DateSelector.js.map +1 -1
  105. package/esm/components/FilePreview/FilePreview.css +225 -146
  106. package/esm/components/FilePreview/FilePreview.d.ts +1 -2
  107. package/esm/components/FilePreview/FilePreview.js +21 -7
  108. package/esm/components/FilePreview/FilePreview.js.map +1 -1
  109. package/esm/components/Header/Header.css +2 -2
  110. package/esm/components/Header/Header.js +1 -1
  111. package/esm/components/Header/Header.js.map +1 -1
  112. package/esm/components/LoginDrawer/LoginDrawer.css +37 -5
  113. package/esm/components/LoginDrawer/LoginDrawer.d.ts +1 -2
  114. package/esm/components/LoginDrawer/LoginDrawer.js +2 -9
  115. package/esm/components/LoginDrawer/LoginDrawer.js.map +1 -1
  116. package/esm/components/MediaWidget/MediaItemWidget.js +2 -1
  117. package/esm/components/MediaWidget/MediaItemWidget.js.map +1 -1
  118. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js +1 -1
  119. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.js.map +1 -1
  120. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js +1 -1
  121. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.js.map +1 -1
  122. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js +3 -0
  123. package/esm/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.js.map +1 -1
  124. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js +2 -2
  125. package/esm/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.js.map +1 -1
  126. package/esm/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.css +16 -7
  127. package/esm/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js +6 -4
  128. package/esm/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.js.map +1 -1
  129. package/esm/components/MemoriWidget/MemoriWidget.css +11 -2
  130. package/esm/components/MemoriWidget/MemoriWidget.js +105 -25
  131. package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
  132. package/esm/components/MicrophoneButton/MicrophoneButton.css +2 -2
  133. package/esm/components/StartPanel/StartPanel.css +8 -0
  134. package/esm/components/UploadButton/UploadButton.css +20 -17
  135. package/esm/components/UploadButton/UploadButton.js +219 -88
  136. package/esm/components/UploadButton/UploadButton.js.map +1 -1
  137. package/esm/components/UploadButton/UploadDocuments/UploadDocuments.js +14 -4
  138. package/esm/components/UploadButton/UploadDocuments/UploadDocuments.js.map +1 -1
  139. package/esm/components/UploadButton/UploadImages/UploadImages.js +143 -16
  140. package/esm/components/UploadButton/UploadImages/UploadImages.js.map +1 -1
  141. package/esm/components/layouts/chat.css +1 -1
  142. package/esm/components/ui/Drawer.css +8 -0
  143. package/esm/components/ui/Drawer.d.ts +2 -0
  144. package/esm/components/ui/Drawer.js +2 -2
  145. package/esm/components/ui/Drawer.js.map +1 -1
  146. package/esm/components/ui/Tooltip.css +49 -1
  147. package/esm/components/ui/Tooltip.d.ts +1 -1
  148. package/esm/helpers/constants.d.ts +1 -0
  149. package/esm/helpers/constants.js +1 -0
  150. package/esm/helpers/constants.js.map +1 -1
  151. package/esm/helpers/imageCompression.d.ts +7 -0
  152. package/esm/helpers/imageCompression.js +119 -0
  153. package/esm/helpers/imageCompression.js.map +1 -0
  154. package/esm/locales/de.json +13 -5
  155. package/esm/locales/en.json +17 -6
  156. package/esm/locales/es.json +13 -5
  157. package/esm/locales/fr.json +12 -5
  158. package/esm/locales/it.json +16 -6
  159. package/esm/styles.css +4 -4
  160. package/package.json +2 -2
  161. package/src/components/AgeVerificationModal/AgeVerificationModal.css +41 -14
  162. package/src/components/AgeVerificationModal/AgeVerificationModal.tsx +3 -1
  163. package/src/components/Auth/Auth.tsx +55 -11
  164. package/src/components/Avatar/Avatar.stories.tsx +3 -0
  165. package/src/components/Avatar/AvatarView/AvatarComponent/positionControls/positionControls.css +2 -2
  166. package/src/components/Chat/Chat.css +37 -3
  167. package/src/components/Chat/Chat.stories.tsx +16 -2
  168. package/src/components/Chat/Chat.tsx +90 -21
  169. package/src/components/Chat/__snapshots__/Chat.test.tsx.snap +1752 -812
  170. package/src/components/ChatBubble/ChatBubble.css +87 -15
  171. package/src/components/ChatBubble/ChatBubble.stories.tsx +16 -2
  172. package/src/components/ChatBubble/ChatBubble.test.tsx +17 -0
  173. package/src/components/ChatBubble/ChatBubble.tsx +237 -33
  174. package/src/components/ChatBubble/__snapshots__/ChatBubble.test.tsx.snap +304 -8
  175. package/src/components/ChatHistoryDrawer/ChatHistory.css +5 -1
  176. package/src/components/ChatInputs/ChatInputs.css +293 -17
  177. package/src/components/ChatInputs/ChatInputs.tsx +156 -86
  178. package/src/components/ChatInputs/__snapshots__/ChatInputs.test.tsx.snap +430 -424
  179. package/src/components/ChatTextArea/ChatTextArea.css +75 -31
  180. package/src/components/ChatTextArea/ChatTextArea.test.tsx +1 -16
  181. package/src/components/ChatTextArea/ChatTextArea.tsx +51 -22
  182. package/src/components/ChatTextArea/__snapshots__/ChatTextArea.test.tsx.snap +9 -72
  183. package/src/components/DateSelector/DateSelector.css +125 -104
  184. package/src/components/DateSelector/DateSelector.stories.tsx +1 -1
  185. package/src/components/DateSelector/DateSelector.test.tsx +137 -23
  186. package/src/components/DateSelector/DateSelector.tsx +203 -177
  187. package/src/components/FilePreview/FilePreview.css +225 -146
  188. package/src/components/FilePreview/FilePreview.tsx +49 -36
  189. package/src/components/FilePreview/__snapshots__/FilePreview.test.tsx.snap +2 -2
  190. package/src/components/Header/Header.css +2 -2
  191. package/src/components/Header/Header.stories.tsx +5 -1
  192. package/src/components/Header/Header.tsx +1 -1
  193. package/src/components/Header/__snapshots__/Header.test.tsx.snap +1 -1
  194. package/src/components/LoginDrawer/LoginDrawer.css +37 -5
  195. package/src/components/LoginDrawer/LoginDrawer.stories.tsx +0 -1
  196. package/src/components/LoginDrawer/LoginDrawer.test.tsx +0 -1
  197. package/src/components/LoginDrawer/LoginDrawer.tsx +0 -19
  198. package/src/components/MediaWidget/MediaItemWidget.tsx +2 -1
  199. package/src/components/MemoriArtifactSystem/ArtifactDrawer.stories.tsx +996 -204
  200. package/src/components/MemoriArtifactSystem/components/ArtifactActions/ArtifactActions.tsx +2 -2
  201. package/src/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyButtonWithDropdown.tsx +1 -1
  202. package/src/components/MemoriArtifactSystem/components/ArtifactActions/components/CopyMenuItem.tsx +3 -0
  203. package/src/components/MemoriArtifactSystem/components/ArtifactDrawer/ArtifactDrawer.tsx +56 -54
  204. package/src/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.css +16 -7
  205. package/src/components/MemoriArtifactSystem/components/ArtifactPreview/ArtifactPreview.tsx +12 -3
  206. package/src/components/MemoriWidget/MemoriWidget.css +11 -2
  207. package/src/components/MemoriWidget/MemoriWidget.stories.tsx +6 -3
  208. package/src/components/MemoriWidget/MemoriWidget.tsx +173 -49
  209. package/src/components/MicrophoneButton/MicrophoneButton.css +2 -2
  210. package/src/components/StartPanel/StartPanel.css +8 -0
  211. package/src/components/UploadButton/UploadButton.css +20 -17
  212. package/src/components/UploadButton/UploadButton.stories.tsx +247 -35
  213. package/src/components/UploadButton/UploadButton.tsx +280 -173
  214. package/src/components/UploadButton/UploadDocuments/UploadDocuments.tsx +19 -4
  215. package/src/components/UploadButton/UploadImages/UploadImages.tsx +196 -35
  216. package/src/components/UploadButton/__snapshots__/UploadButton.test.tsx.snap +10 -1
  217. package/src/components/layouts/FullBody/FullBody.stories.tsx +9 -10
  218. package/src/components/layouts/Totem/Totem.stories.tsx +8 -9
  219. package/src/components/layouts/ZoomedFullBody/ZoomedFullBody.stories.tsx +8 -9
  220. package/src/components/layouts/chat.css +1 -1
  221. package/src/components/layouts/layouts.stories.tsx +10 -9
  222. package/src/components/ui/Drawer.css +8 -0
  223. package/src/components/ui/Drawer.tsx +16 -12
  224. package/src/components/ui/Tooltip.css +49 -1
  225. package/src/components/ui/Tooltip.tsx +1 -1
  226. package/src/helpers/constants.ts +1 -1
  227. package/src/helpers/imageCompression.ts +230 -0
  228. package/src/index.stories.tsx +18 -0
  229. package/src/locales/de.json +13 -5
  230. package/src/locales/en.json +17 -6
  231. package/src/locales/es.json +13 -5
  232. package/src/locales/fr.json +12 -5
  233. package/src/locales/it.json +16 -6
  234. package/src/mocks/data.ts +4 -2
  235. package/src/styles.css +4 -4
  236. package/src/components/SignupForm/SignupForm.test.tsx +0 -40
  237. package/src/components/SignupForm/SignupForm.tsx +0 -457
  238. package/src/components/SignupForm/__snapshots__/SignupForm.test.tsx.snap +0 -247
  239. package/src/components/UploadMenu/UploadMenu.css +0 -47
  240. package/src/components/UploadMenu/UploadMenu.stories.tsx +0 -66
  241. package/src/components/UploadMenu/UploadMenu.test.tsx +0 -34
  242. package/src/components/UploadMenu/UploadMenu.tsx +0 -68
  243. package/src/components/UploadMenu/__snapshots__/UploadMenu.test.tsx.snap +0 -137
@@ -1,63 +1,121 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
3
  const jsx_runtime_1 = require("react/jsx-runtime");
5
4
  const react_1 = require("react");
6
- const react_2 = require("@headlessui/react");
7
5
  const luxon_1 = require("luxon");
8
6
  const react_i18next_1 = require("react-i18next");
9
- const SelectIcon_1 = tslib_1.__importDefault(require("../icons/SelectIcon"));
10
- const months = {
11
- en: [
12
- 'January',
13
- 'February',
14
- 'March',
15
- 'April',
16
- 'May',
17
- 'June',
18
- 'July',
19
- 'August',
20
- 'September',
21
- 'October',
22
- 'November',
23
- 'December',
24
- ],
25
- it: [
26
- 'Gennaio',
27
- 'Febbraio',
28
- 'Marzo',
29
- 'Aprile',
30
- 'Maggio',
31
- 'Giugno',
32
- 'Luglio',
33
- 'Agosto',
34
- 'Settembre',
35
- 'Ottobre',
36
- 'Novembre',
37
- 'Dicembre',
38
- ],
39
- };
40
7
  const DateSelector = (0, react_1.memo)(({ defaultDate, onChange, disabled = false }) => {
41
- const { t, i18n } = (0, react_i18next_1.useTranslation)();
42
- const [date, setDate] = (0, react_1.useState)(!defaultDate
43
- ? luxon_1.DateTime.now()
44
- : typeof defaultDate === 'string'
45
- ? luxon_1.DateTime.fromISO(defaultDate)
46
- : luxon_1.DateTime.fromJSDate(defaultDate));
8
+ const { t } = (0, react_i18next_1.useTranslation)();
9
+ const maxDate = (0, react_1.useMemo)(() => luxon_1.DateTime.now().minus({ years: 18 }), []);
10
+ const minDate = (0, react_1.useMemo)(() => luxon_1.DateTime.fromObject({ year: 1900, month: 1, day: 1 }), []);
11
+ const [day, setDay] = (0, react_1.useState)('');
12
+ const [month, setMonth] = (0, react_1.useState)('');
13
+ const [year, setYear] = (0, react_1.useState)('');
47
14
  (0, react_1.useEffect)(() => {
48
- onChange(date);
49
- }, [date, onChange]);
50
- return ((0, jsx_runtime_1.jsxs)("div", { className: "memori--date-selector", children: [(0, jsx_runtime_1.jsx)("div", { className: "memori--date-selector__select", children: (0, jsx_runtime_1.jsxs)(react_2.Listbox, { value: date, onChange: value => {
51
- setDate(value);
52
- }, disabled: disabled, name: "day", children: [(0, jsx_runtime_1.jsxs)(react_2.Listbox.Label, { className: "memori--date-selector__select-label", children: [t('day'), ":"] }), (0, jsx_runtime_1.jsxs)(react_2.Listbox.Button, { "aria-label": t('day'), className: "memori--date-selector__select-button", children: [(0, jsx_runtime_1.jsx)("span", { className: "memori--date-selector__select--value", children: date.day }), (0, jsx_runtime_1.jsx)("span", { className: "memori--date-selector__select--icon", children: (0, jsx_runtime_1.jsx)(SelectIcon_1.default, {}) })] }), (0, jsx_runtime_1.jsx)(react_2.Transition, { as: react_1.Fragment, leave: "transition ease-in duration-100", leaveFrom: "opacity-100", leaveTo: "opacity-0", children: (0, jsx_runtime_1.jsx)(react_2.Listbox.Options, { className: "memori--date-selector__select-options", children: [...Array(31).keys()].map(day => ((0, jsx_runtime_1.jsx)(react_2.Listbox.Option, { value: date.set({ day: day + 1 }), className: "memori--date-selector__select-option", children: day + 1 }, day))) }) })] }) }), (0, jsx_runtime_1.jsx)("div", { className: "memori--date-selector__select", children: (0, jsx_runtime_1.jsxs)(react_2.Listbox, { value: date, onChange: value => {
53
- setDate(value);
54
- }, disabled: disabled, name: "month", children: [(0, jsx_runtime_1.jsxs)(react_2.Listbox.Label, { className: "memori--date-selector__select-label", children: [t('month'), ":"] }), (0, jsx_runtime_1.jsxs)(react_2.Listbox.Button, { "aria-label": t('month'), className: "memori--date-selector__select-button", children: [(0, jsx_runtime_1.jsx)("span", { className: "memori--date-selector__select--value", children: months[i18n.language === 'it' ? 'it' : 'en'][date.month - 1] }), (0, jsx_runtime_1.jsx)("span", { className: "memori--date-selector__select--icon", children: (0, jsx_runtime_1.jsx)(SelectIcon_1.default, {}) })] }), (0, jsx_runtime_1.jsx)(react_2.Transition, { as: react_1.Fragment, leave: "transition ease-in duration-100", leaveFrom: "opacity-100", leaveTo: "opacity-0", children: (0, jsx_runtime_1.jsx)(react_2.Listbox.Options, { className: "memori--date-selector__select-options", children: months[i18n.language === 'it' ? 'it' : 'en'].map(month => ((0, jsx_runtime_1.jsx)(react_2.Listbox.Option, { className: "memori--date-selector__select-option", value: date.set({
55
- month: months[i18n.language === 'it' ? 'it' : 'en'].findIndex(m => m === month) + 1,
56
- }), children: month }, month))) }) })] }) }), (0, jsx_runtime_1.jsx)("div", { className: "memori--date-selector__select", children: (0, jsx_runtime_1.jsxs)(react_2.Listbox, { value: date, onChange: value => {
57
- setDate(value);
58
- }, disabled: disabled, name: "year", children: [(0, jsx_runtime_1.jsxs)(react_2.Listbox.Label, { className: "memori--date-selector__select-label", children: [t('year'), ":"] }), (0, jsx_runtime_1.jsxs)(react_2.Listbox.Button, { "aria-label": t('year'), className: "memori--date-selector__select-button", children: [(0, jsx_runtime_1.jsx)("span", { className: "memori--date-selector__select--value", children: date.year }), (0, jsx_runtime_1.jsx)("span", { className: "memori--date-selector__select--icon", children: (0, jsx_runtime_1.jsx)(SelectIcon_1.default, {}) })] }), (0, jsx_runtime_1.jsx)(react_2.Transition, { as: react_1.Fragment, leave: "transition ease-in duration-100", leaveFrom: "opacity-100", leaveTo: "opacity-0", children: (0, jsx_runtime_1.jsx)(react_2.Listbox.Options, { className: "memori--date-selector__select-options", children: [...Array(luxon_1.DateTime.now().year - 1899).keys()]
59
- .sort((a, b) => b - a)
60
- .map(year => ((0, jsx_runtime_1.jsx)(react_2.Listbox.Option, { value: date.set({ year: year + 1900 }), className: "memori--date-selector__select-option", children: year + 1900 }, year))) }) })] }) })] }));
15
+ if (defaultDate) {
16
+ const dt = typeof defaultDate === 'string'
17
+ ? luxon_1.DateTime.fromISO(defaultDate)
18
+ : luxon_1.DateTime.fromJSDate(defaultDate);
19
+ if (dt.isValid) {
20
+ setDay(dt.day.toString());
21
+ setMonth(dt.month.toString());
22
+ setYear(dt.year.toString());
23
+ }
24
+ }
25
+ }, [defaultDate]);
26
+ const [isMobile, setIsMobile] = (0, react_1.useState)(false);
27
+ const dayRef = (0, react_1.useRef)(null);
28
+ const monthRef = (0, react_1.useRef)(null);
29
+ const yearRef = (0, react_1.useRef)(null);
30
+ (0, react_1.useEffect)(() => {
31
+ const checkMobile = () => {
32
+ setIsMobile(window.innerWidth < 768);
33
+ };
34
+ checkMobile();
35
+ window.addEventListener('resize', checkMobile);
36
+ return () => window.removeEventListener('resize', checkMobile);
37
+ }, []);
38
+ (0, react_1.useEffect)(() => {
39
+ if (!day || !month || !year) {
40
+ onChange(undefined);
41
+ return;
42
+ }
43
+ const d = parseInt(day);
44
+ const m = parseInt(month);
45
+ const y = parseInt(year);
46
+ if (isNaN(d) || isNaN(m) || isNaN(y)) {
47
+ onChange(undefined);
48
+ return;
49
+ }
50
+ const newDate = luxon_1.DateTime.fromObject({ year: y, month: m, day: d });
51
+ if (newDate.isValid && newDate >= minDate && newDate <= maxDate) {
52
+ onChange(newDate);
53
+ }
54
+ else {
55
+ onChange(undefined);
56
+ }
57
+ }, [day, month, year, onChange, minDate, maxDate]);
58
+ const handleMobileChange = (e) => {
59
+ const value = e.target.value;
60
+ if (value) {
61
+ const newDate = luxon_1.DateTime.fromISO(value);
62
+ if (newDate.isValid) {
63
+ setDay(newDate.day.toString());
64
+ setMonth(newDate.month.toString());
65
+ setYear(newDate.year.toString());
66
+ }
67
+ }
68
+ else {
69
+ setDay('');
70
+ setMonth('');
71
+ setYear('');
72
+ }
73
+ };
74
+ const handleDayChange = (e) => {
75
+ var _a;
76
+ const val = e.target.value;
77
+ if (val === '' || /^\d+$/.test(val)) {
78
+ if (val.length > 2)
79
+ return;
80
+ const numVal = parseInt(val);
81
+ if (numVal > 31)
82
+ return;
83
+ setDay(val);
84
+ if (val.length >= 2) {
85
+ (_a = monthRef.current) === null || _a === void 0 ? void 0 : _a.focus();
86
+ }
87
+ }
88
+ };
89
+ const handleMonthChange = (e) => {
90
+ var _a;
91
+ const val = e.target.value;
92
+ if (val === '' || /^\d+$/.test(val)) {
93
+ if (val.length > 2)
94
+ return;
95
+ const numVal = parseInt(val);
96
+ if (numVal > 12)
97
+ return;
98
+ setMonth(val);
99
+ if (val.length >= 2) {
100
+ (_a = yearRef.current) === null || _a === void 0 ? void 0 : _a.focus();
101
+ }
102
+ }
103
+ };
104
+ const handleYearChange = (e) => {
105
+ const val = e.target.value;
106
+ if (val === '' || /^\d+$/.test(val)) {
107
+ if (val.length > 4)
108
+ return;
109
+ setYear(val);
110
+ }
111
+ };
112
+ if (isMobile) {
113
+ const currentDate = (day && month && year)
114
+ ? luxon_1.DateTime.fromObject({ year: parseInt(year), month: parseInt(month), day: parseInt(day) })
115
+ : null;
116
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "memori--date-selector memori--date-selector--mobile", children: [(0, jsx_runtime_1.jsxs)("label", { className: "memori--date-selector__mobile-label", children: [t('birthDate') || 'Birth Date', ":"] }), (0, jsx_runtime_1.jsx)("input", { type: "date", className: "memori--date-selector__mobile-input", value: (currentDate === null || currentDate === void 0 ? void 0 : currentDate.isValid) ? currentDate.toISODate() || '' : '', onChange: handleMobileChange, disabled: disabled, min: minDate.toISODate() || '1900-01-01', max: maxDate.toISODate() || '', "aria-label": String(t('dateOfBirth') || t('date')) })] }));
117
+ }
118
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "memori--date-selector memori--date-selector--desktop", children: [(0, jsx_runtime_1.jsxs)("div", { className: "memori--date-selector__input-group", children: [(0, jsx_runtime_1.jsx)("label", { className: "memori--date-selector__label", children: t('day') || 'Day' }), (0, jsx_runtime_1.jsx)("input", { ref: dayRef, type: "number", className: "memori--date-selector__input", value: day, onChange: handleDayChange, placeholder: t('dayPlaceholder') || 'DD', min: 1, max: 31, disabled: disabled })] }), (0, jsx_runtime_1.jsxs)("div", { className: "memori--date-selector__input-group", children: [(0, jsx_runtime_1.jsx)("label", { className: "memori--date-selector__label", children: t('month') || 'Month' }), (0, jsx_runtime_1.jsx)("input", { ref: monthRef, type: "number", className: "memori--date-selector__input", value: month, onChange: handleMonthChange, placeholder: t('monthPlaceholder') || 'MM', min: 1, max: 12, disabled: disabled })] }), (0, jsx_runtime_1.jsxs)("div", { className: "memori--date-selector__input-group memori--date-selector__input-group--year", children: [(0, jsx_runtime_1.jsx)("label", { className: "memori--date-selector__label", children: t('year') || 'Year' }), (0, jsx_runtime_1.jsx)("input", { ref: yearRef, type: "number", className: "memori--date-selector__input", value: year, onChange: handleYearChange, placeholder: t('yearPlaceholder') || 'YYYY', min: minDate.year, max: maxDate.year, disabled: disabled })] })] }));
61
119
  });
62
120
  DateSelector.displayName = 'DateSelector';
63
121
  exports.default = DateSelector;
@@ -1 +1 @@
1
- {"version":3,"file":"DateSelector.js","sourceRoot":"","sources":["../../../src/components/DateSelector/DateSelector.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DateSelector.js","sourceRoot":"","sources":["../../../src/components/DateSelector/DateSelector.tsx"],"names":[],"mappings":"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"}