@dxc-technology/halstack-react 0.0.0-64f5836 → 0.0.0-6501724

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 (383) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +2 -5
  3. package/HalstackContext.d.ts +1336 -0
  4. package/HalstackContext.js +335 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +120 -175
  7. package/accordion/Accordion.stories.tsx +395 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +69 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +8 -0
  12. package/accordion-group/AccordionGroup.js +56 -112
  13. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  14. package/accordion-group/AccordionGroup.test.js +126 -0
  15. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  16. package/accordion-group/AccordionGroupAccordion.js +43 -0
  17. package/accordion-group/types.d.ts +79 -0
  18. package/accordion-group/types.js +5 -0
  19. package/alert/Alert.d.ts +4 -0
  20. package/alert/Alert.js +10 -30
  21. package/alert/Alert.stories.tsx +198 -0
  22. package/alert/Alert.test.js +92 -0
  23. package/alert/types.d.ts +49 -0
  24. package/alert/types.js +5 -0
  25. package/badge/Badge.d.ts +4 -0
  26. package/badge/Badge.js +6 -4
  27. package/badge/types.d.ts +5 -0
  28. package/badge/types.js +5 -0
  29. package/bleed/Bleed.d.ts +3 -0
  30. package/bleed/Bleed.js +51 -0
  31. package/bleed/Bleed.stories.tsx +342 -0
  32. package/bleed/types.d.ts +37 -0
  33. package/bleed/types.js +5 -0
  34. package/box/Box.d.ts +4 -0
  35. package/box/Box.js +31 -69
  36. package/box/Box.stories.tsx +147 -0
  37. package/box/Box.test.js +18 -0
  38. package/box/types.d.ts +44 -0
  39. package/box/types.js +5 -0
  40. package/bulleted-list/BulletedList.d.ts +7 -0
  41. package/bulleted-list/BulletedList.js +125 -0
  42. package/bulleted-list/BulletedList.stories.tsx +206 -0
  43. package/bulleted-list/types.d.ts +38 -0
  44. package/bulleted-list/types.js +5 -0
  45. package/button/Button.d.ts +1 -1
  46. package/button/Button.js +59 -88
  47. package/button/Button.stories.tsx +403 -284
  48. package/button/Button.test.js +35 -0
  49. package/button/types.d.ts +12 -16
  50. package/card/Card.d.ts +4 -0
  51. package/card/Card.js +47 -87
  52. package/card/Card.stories.tsx +200 -0
  53. package/card/Card.test.js +50 -0
  54. package/card/ice-cream.jpg +0 -0
  55. package/card/types.d.ts +68 -0
  56. package/card/types.js +5 -0
  57. package/checkbox/Checkbox.d.ts +2 -2
  58. package/checkbox/Checkbox.js +108 -111
  59. package/checkbox/Checkbox.stories.tsx +260 -0
  60. package/checkbox/Checkbox.test.js +155 -0
  61. package/checkbox/types.d.ts +13 -6
  62. package/chip/Chip.d.ts +4 -0
  63. package/chip/Chip.js +37 -118
  64. package/chip/Chip.stories.tsx +214 -0
  65. package/chip/Chip.test.js +54 -0
  66. package/chip/types.d.ts +45 -0
  67. package/chip/types.js +5 -0
  68. package/common/OpenSans.css +68 -80
  69. package/common/coreTokens.d.ts +146 -0
  70. package/common/coreTokens.js +167 -0
  71. package/common/utils.d.ts +1 -0
  72. package/common/utils.js +4 -4
  73. package/common/variables.d.ts +1482 -0
  74. package/common/variables.js +1100 -1308
  75. package/date-input/Calendar.d.ts +4 -0
  76. package/date-input/Calendar.js +258 -0
  77. package/date-input/DateInput.d.ts +4 -0
  78. package/date-input/DateInput.js +173 -300
  79. package/date-input/DateInput.stories.tsx +304 -0
  80. package/date-input/DateInput.test.js +835 -0
  81. package/date-input/DatePicker.d.ts +4 -0
  82. package/date-input/DatePicker.js +146 -0
  83. package/date-input/Icons.d.ts +6 -0
  84. package/date-input/Icons.js +75 -0
  85. package/date-input/YearPicker.d.ts +4 -0
  86. package/date-input/YearPicker.js +126 -0
  87. package/date-input/types.d.ts +158 -0
  88. package/date-input/types.js +5 -0
  89. package/dialog/Dialog.d.ts +4 -0
  90. package/dialog/Dialog.js +68 -121
  91. package/dialog/Dialog.stories.tsx +195 -0
  92. package/dialog/Dialog.test.js +369 -0
  93. package/dialog/types.d.ts +31 -0
  94. package/dialog/types.js +5 -0
  95. package/dropdown/Dropdown.d.ts +4 -0
  96. package/dropdown/Dropdown.js +244 -306
  97. package/dropdown/Dropdown.stories.tsx +438 -0
  98. package/dropdown/Dropdown.test.js +586 -0
  99. package/dropdown/DropdownMenu.d.ts +4 -0
  100. package/dropdown/DropdownMenu.js +74 -0
  101. package/dropdown/DropdownMenuItem.d.ts +4 -0
  102. package/dropdown/DropdownMenuItem.js +79 -0
  103. package/dropdown/types.d.ts +100 -0
  104. package/dropdown/types.js +5 -0
  105. package/file-input/FileInput.d.ts +4 -0
  106. package/file-input/FileInput.js +183 -168
  107. package/file-input/FileInput.stories.tsx +618 -0
  108. package/file-input/FileInput.test.js +457 -0
  109. package/file-input/FileItem.d.ts +4 -0
  110. package/file-input/FileItem.js +50 -81
  111. package/file-input/types.d.ts +129 -0
  112. package/file-input/types.js +5 -0
  113. package/flex/Flex.d.ts +4 -0
  114. package/flex/Flex.js +71 -0
  115. package/flex/Flex.stories.tsx +112 -0
  116. package/flex/types.d.ts +97 -0
  117. package/flex/types.js +5 -0
  118. package/footer/Footer.d.ts +4 -0
  119. package/footer/Footer.js +37 -151
  120. package/footer/Footer.stories.tsx +228 -0
  121. package/footer/Footer.test.js +97 -0
  122. package/footer/Icons.d.ts +2 -0
  123. package/footer/Icons.js +4 -4
  124. package/footer/types.d.ts +66 -0
  125. package/footer/types.js +5 -0
  126. package/grid/Grid.d.ts +7 -0
  127. package/grid/Grid.js +91 -0
  128. package/grid/Grid.stories.tsx +219 -0
  129. package/grid/types.d.ts +115 -0
  130. package/grid/types.js +5 -0
  131. package/header/Header.d.ts +8 -0
  132. package/header/Header.js +127 -150
  133. package/header/Header.stories.tsx +315 -0
  134. package/header/Header.test.js +79 -0
  135. package/header/Icons.d.ts +2 -0
  136. package/header/Icons.js +4 -29
  137. package/header/types.d.ts +48 -0
  138. package/header/types.js +5 -0
  139. package/heading/Heading.d.ts +4 -0
  140. package/heading/Heading.js +8 -25
  141. package/heading/Heading.stories.tsx +54 -0
  142. package/heading/Heading.test.js +186 -0
  143. package/heading/types.d.ts +33 -0
  144. package/heading/types.js +5 -0
  145. package/inset/Inset.d.ts +3 -0
  146. package/inset/Inset.js +51 -0
  147. package/inset/Inset.stories.tsx +230 -0
  148. package/inset/types.d.ts +37 -0
  149. package/inset/types.js +5 -0
  150. package/layout/ApplicationLayout.d.ts +20 -0
  151. package/layout/ApplicationLayout.js +72 -136
  152. package/layout/ApplicationLayout.stories.tsx +162 -0
  153. package/layout/Icons.d.ts +5 -0
  154. package/layout/Icons.js +13 -2
  155. package/layout/SidenavContext.d.ts +5 -0
  156. package/layout/SidenavContext.js +19 -0
  157. package/layout/types.d.ts +41 -0
  158. package/layout/types.js +5 -0
  159. package/link/Link.d.ts +4 -0
  160. package/link/Link.js +62 -109
  161. package/link/Link.stories.tsx +253 -0
  162. package/link/Link.test.js +81 -0
  163. package/link/types.d.ts +54 -0
  164. package/link/types.js +5 -0
  165. package/main.d.ts +13 -12
  166. package/main.js +68 -54
  167. package/nav-tabs/NavTabs.d.ts +8 -0
  168. package/nav-tabs/NavTabs.js +122 -0
  169. package/nav-tabs/NavTabs.stories.tsx +274 -0
  170. package/nav-tabs/NavTabs.test.js +82 -0
  171. package/nav-tabs/Tab.d.ts +4 -0
  172. package/nav-tabs/Tab.js +146 -0
  173. package/nav-tabs/types.d.ts +52 -0
  174. package/nav-tabs/types.js +5 -0
  175. package/number-input/NumberInput.d.ts +4 -0
  176. package/number-input/NumberInput.js +16 -68
  177. package/number-input/NumberInput.stories.tsx +115 -0
  178. package/number-input/NumberInput.test.js +542 -0
  179. package/number-input/NumberInputContext.d.ts +4 -0
  180. package/number-input/NumberInputContext.js +5 -2
  181. package/number-input/numberInputContextTypes.d.ts +19 -0
  182. package/number-input/numberInputContextTypes.js +5 -0
  183. package/number-input/types.d.ts +124 -0
  184. package/number-input/types.js +5 -0
  185. package/package.json +22 -23
  186. package/paginator/Icons.d.ts +5 -0
  187. package/paginator/Icons.js +16 -28
  188. package/paginator/Paginator.js +22 -57
  189. package/paginator/Paginator.stories.tsx +87 -0
  190. package/paginator/Paginator.test.js +318 -0
  191. package/paragraph/Paragraph.d.ts +5 -0
  192. package/paragraph/Paragraph.js +38 -0
  193. package/paragraph/Paragraph.stories.tsx +44 -0
  194. package/password-input/PasswordInput.d.ts +4 -0
  195. package/password-input/PasswordInput.js +24 -57
  196. package/password-input/PasswordInput.stories.tsx +131 -0
  197. package/password-input/PasswordInput.test.js +181 -0
  198. package/password-input/types.d.ts +110 -0
  199. package/password-input/types.js +5 -0
  200. package/progress-bar/ProgressBar.d.ts +4 -0
  201. package/progress-bar/ProgressBar.js +64 -76
  202. package/progress-bar/ProgressBar.stories.jsx +93 -0
  203. package/progress-bar/ProgressBar.test.js +110 -0
  204. package/progress-bar/types.d.ts +37 -0
  205. package/progress-bar/types.js +5 -0
  206. package/quick-nav/QuickNav.d.ts +4 -0
  207. package/quick-nav/QuickNav.js +117 -0
  208. package/quick-nav/QuickNav.stories.tsx +356 -0
  209. package/quick-nav/types.d.ts +21 -0
  210. package/quick-nav/types.js +5 -0
  211. package/radio-group/Radio.d.ts +4 -0
  212. package/radio-group/Radio.js +156 -0
  213. package/radio-group/RadioGroup.d.ts +4 -0
  214. package/radio-group/RadioGroup.js +281 -0
  215. package/radio-group/RadioGroup.stories.tsx +214 -0
  216. package/radio-group/RadioGroup.test.js +722 -0
  217. package/radio-group/types.d.ts +114 -0
  218. package/radio-group/types.js +5 -0
  219. package/resultsetTable/Icons.d.ts +7 -0
  220. package/resultsetTable/Icons.js +51 -0
  221. package/resultsetTable/ResultsetTable.d.ts +4 -0
  222. package/resultsetTable/ResultsetTable.js +54 -133
  223. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  224. package/resultsetTable/ResultsetTable.test.js +325 -0
  225. package/resultsetTable/types.d.ts +67 -0
  226. package/resultsetTable/types.js +5 -0
  227. package/select/Icons.d.ts +10 -0
  228. package/select/Icons.js +93 -0
  229. package/select/Listbox.d.ts +4 -0
  230. package/select/Listbox.js +169 -0
  231. package/select/Option.d.ts +4 -0
  232. package/select/Option.js +97 -0
  233. package/select/Select.d.ts +4 -0
  234. package/select/Select.js +202 -401
  235. package/select/Select.stories.tsx +971 -0
  236. package/select/Select.test.js +2228 -0
  237. package/select/types.d.ts +210 -0
  238. package/select/types.js +5 -0
  239. package/sidenav/Icons.d.ts +7 -0
  240. package/sidenav/Icons.js +51 -0
  241. package/sidenav/Sidenav.d.ts +10 -0
  242. package/sidenav/Sidenav.js +147 -54
  243. package/sidenav/Sidenav.stories.tsx +282 -0
  244. package/sidenav/Sidenav.test.js +44 -0
  245. package/sidenav/types.d.ts +76 -0
  246. package/sidenav/types.js +5 -0
  247. package/slider/Slider.d.ts +4 -0
  248. package/slider/Slider.js +160 -158
  249. package/slider/Slider.stories.tsx +240 -0
  250. package/slider/Slider.test.js +250 -0
  251. package/slider/types.d.ts +86 -0
  252. package/slider/types.js +5 -0
  253. package/spinner/Spinner.d.ts +4 -0
  254. package/spinner/Spinner.js +26 -49
  255. package/spinner/Spinner.stories.jsx +129 -0
  256. package/spinner/Spinner.test.js +64 -0
  257. package/spinner/types.d.ts +32 -0
  258. package/spinner/types.js +5 -0
  259. package/switch/Switch.d.ts +2 -2
  260. package/switch/Switch.js +153 -70
  261. package/switch/Switch.stories.tsx +171 -0
  262. package/switch/Switch.test.js +225 -0
  263. package/switch/types.d.ts +10 -2
  264. package/table/Table.d.ts +4 -0
  265. package/table/Table.js +6 -6
  266. package/table/Table.stories.jsx +356 -0
  267. package/table/Table.test.js +26 -0
  268. package/table/types.d.ts +21 -0
  269. package/table/types.js +5 -0
  270. package/tabs/Tab.d.ts +4 -0
  271. package/tabs/Tab.js +132 -0
  272. package/tabs/Tabs.d.ts +4 -0
  273. package/tabs/Tabs.js +361 -159
  274. package/tabs/Tabs.stories.tsx +226 -0
  275. package/tabs/Tabs.test.js +350 -0
  276. package/tabs/types.d.ts +92 -0
  277. package/tabs/types.js +5 -0
  278. package/tag/Tag.d.ts +4 -0
  279. package/tag/Tag.js +38 -65
  280. package/tag/Tag.stories.tsx +155 -0
  281. package/tag/Tag.test.js +60 -0
  282. package/tag/types.d.ts +69 -0
  283. package/tag/types.js +5 -0
  284. package/text-input/Icons.d.ts +8 -0
  285. package/text-input/Icons.js +60 -0
  286. package/text-input/Suggestion.d.ts +4 -0
  287. package/text-input/Suggestion.js +84 -0
  288. package/text-input/Suggestions.d.ts +4 -0
  289. package/text-input/Suggestions.js +134 -0
  290. package/text-input/TextInput.d.ts +4 -0
  291. package/text-input/TextInput.js +236 -388
  292. package/text-input/TextInput.stories.tsx +569 -0
  293. package/text-input/TextInput.test.js +1723 -0
  294. package/text-input/types.d.ts +197 -0
  295. package/text-input/types.js +5 -0
  296. package/textarea/Textarea.d.ts +4 -0
  297. package/textarea/Textarea.js +41 -82
  298. package/textarea/Textarea.stories.jsx +216 -0
  299. package/textarea/Textarea.test.js +435 -0
  300. package/textarea/types.d.ts +137 -0
  301. package/textarea/types.js +5 -0
  302. package/toggle-group/ToggleGroup.d.ts +4 -0
  303. package/toggle-group/ToggleGroup.js +24 -49
  304. package/toggle-group/ToggleGroup.stories.tsx +215 -0
  305. package/toggle-group/ToggleGroup.test.js +156 -0
  306. package/toggle-group/types.d.ts +105 -0
  307. package/toggle-group/types.js +5 -0
  308. package/typography/Typography.d.ts +4 -0
  309. package/typography/Typography.js +32 -0
  310. package/typography/Typography.stories.tsx +198 -0
  311. package/typography/types.d.ts +18 -0
  312. package/typography/types.js +5 -0
  313. package/useTheme.d.ts +1235 -0
  314. package/useTheme.js +3 -3
  315. package/useTranslatedLabels.d.ts +85 -0
  316. package/useTranslatedLabels.js +20 -0
  317. package/utils/BaseTypography.d.ts +21 -0
  318. package/utils/BaseTypography.js +108 -0
  319. package/utils/FocusLock.d.ts +13 -0
  320. package/utils/FocusLock.js +138 -0
  321. package/wizard/Wizard.d.ts +4 -0
  322. package/wizard/Wizard.js +119 -105
  323. package/wizard/Wizard.stories.tsx +253 -0
  324. package/wizard/Wizard.test.js +141 -0
  325. package/wizard/types.d.ts +64 -0
  326. package/wizard/types.js +5 -0
  327. package/ThemeContext.js +0 -246
  328. package/V3Select/V3Select.js +0 -455
  329. package/V3Select/index.d.ts +0 -27
  330. package/V3Textarea/V3Textarea.js +0 -260
  331. package/V3Textarea/index.d.ts +0 -27
  332. package/accordion/index.d.ts +0 -28
  333. package/accordion-group/index.d.ts +0 -16
  334. package/alert/index.d.ts +0 -51
  335. package/box/index.d.ts +0 -25
  336. package/card/index.d.ts +0 -22
  337. package/chip/index.d.ts +0 -22
  338. package/common/RequiredComponent.js +0 -32
  339. package/date/Date.js +0 -373
  340. package/date/index.d.ts +0 -27
  341. package/date-input/index.d.ts +0 -95
  342. package/dialog/index.d.ts +0 -18
  343. package/dropdown/index.d.ts +0 -26
  344. package/file-input/index.d.ts +0 -81
  345. package/footer/index.d.ts +0 -25
  346. package/header/index.d.ts +0 -25
  347. package/heading/index.d.ts +0 -17
  348. package/input-text/Icons.js +0 -22
  349. package/input-text/InputText.js +0 -611
  350. package/input-text/index.d.ts +0 -36
  351. package/link/index.d.ts +0 -23
  352. package/number-input/index.d.ts +0 -113
  353. package/password-input/index.d.ts +0 -94
  354. package/progress-bar/index.d.ts +0 -18
  355. package/radio/Radio.js +0 -195
  356. package/radio/index.d.ts +0 -23
  357. package/resultsetTable/index.d.ts +0 -19
  358. package/select/index.d.ts +0 -131
  359. package/sidenav/index.d.ts +0 -13
  360. package/slider/index.d.ts +0 -29
  361. package/spinner/index.d.ts +0 -17
  362. package/table/index.d.ts +0 -13
  363. package/tabs/index.d.ts +0 -19
  364. package/tag/index.d.ts +0 -24
  365. package/text-input/index.d.ts +0 -135
  366. package/textarea/index.d.ts +0 -117
  367. package/toggle/Toggle.js +0 -186
  368. package/toggle/index.d.ts +0 -21
  369. package/toggle-group/index.d.ts +0 -21
  370. package/upload/Upload.js +0 -201
  371. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  372. package/upload/buttons-upload/Icons.js +0 -40
  373. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  374. package/upload/dragAndDropArea/Icons.js +0 -39
  375. package/upload/file-upload/FileToUpload.js +0 -115
  376. package/upload/file-upload/Icons.js +0 -66
  377. package/upload/files-upload/FilesToUpload.js +0 -109
  378. package/upload/index.d.ts +0 -15
  379. package/upload/transaction/Icons.js +0 -160
  380. package/upload/transaction/Transaction.js +0 -104
  381. package/upload/transactions/Transactions.js +0 -94
  382. package/wizard/Icons.js +0 -65
  383. package/wizard/index.d.ts +0 -18
@@ -9,35 +9,33 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports["default"] = void 0;
11
11
 
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
12
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
13
 
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+
16
16
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
17
 
18
18
  var _react = _interopRequireWildcard(require("react"));
19
19
 
20
- var _pickers = require("@material-ui/pickers");
20
+ var _dayjs = _interopRequireDefault(require("dayjs"));
21
21
 
22
- var _core = require("@material-ui/core");
23
-
24
- var _ClickAwayListener = _interopRequireDefault(require("@material-ui/core/ClickAwayListener"));
22
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
25
23
 
26
- var _Popover = _interopRequireDefault(require("@material-ui/core/Popover"));
24
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
27
25
 
28
- var _moment = _interopRequireDefault(require("moment"));
26
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
29
27
 
30
- var _dateFns = _interopRequireDefault(require("@date-io/date-fns"));
28
+ var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
31
29
 
32
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
30
+ var _DatePicker = _interopRequireDefault(require("./DatePicker"));
33
31
 
34
- var _propTypes = _interopRequireDefault(require("prop-types"));
32
+ var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
35
33
 
36
- var _variables = require("../common/variables.js");
34
+ var _customParseFormat = _interopRequireDefault(require("dayjs/plugin/customParseFormat"));
37
35
 
38
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
36
+ var _uuid = require("uuid");
39
37
 
40
- var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
38
+ var _Icons = require("./Icons");
41
39
 
42
40
  var _templateObject;
43
41
 
@@ -45,37 +43,61 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
45
43
 
46
44
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
47
45
 
46
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
47
+
48
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
49
+
50
+ _dayjs["default"].extend(_customParseFormat["default"]);
51
+
52
+ var getValueForPicker = function getValueForPicker(value, format) {
53
+ return (0, _dayjs["default"])(value, format.toUpperCase(), true);
54
+ };
55
+
56
+ var getDate = function getDate(value, format, lastValidYear, setLastValidYear) {
57
+ if ((value || value === "") && format.toUpperCase().includes("YYYY")) return getValueForPicker(value, format);else {
58
+ var newDate = getValueForPicker(value, format);
59
+
60
+ if (!lastValidYear) {
61
+ if (+newDate.format("YY") < 68) {
62
+ setLastValidYear(2000 + +newDate.format("YY"));
63
+ newDate = newDate.set("year", 2000 + +newDate.format("YY"));
64
+ } else {
65
+ setLastValidYear(1900 + +newDate.format("YY"));
66
+ newDate = newDate.set("year", 1900 + +newDate.format("YY"));
67
+ }
68
+ } else {
69
+ newDate = newDate.set("year", (lastValidYear <= 1999 ? 1900 : 2000) + +newDate.format("YY"));
70
+ }
71
+
72
+ return newDate;
73
+ }
74
+ };
75
+
48
76
  var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
49
- var _ref$label = _ref.label,
50
- label = _ref$label === void 0 ? "" : _ref$label,
51
- _ref$name = _ref.name,
52
- name = _ref$name === void 0 ? "" : _ref$name,
77
+ var _ref2;
78
+
79
+ var label = _ref.label,
80
+ name = _ref.name,
81
+ _ref$defaultValue = _ref.defaultValue,
82
+ defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
53
83
  value = _ref.value,
54
84
  _ref$format = _ref.format,
55
85
  format = _ref$format === void 0 ? "dd-MM-yyyy" : _ref$format,
56
- _ref$helperText = _ref.helperText,
57
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
86
+ helperText = _ref.helperText,
58
87
  _ref$placeholder = _ref.placeholder,
59
88
  placeholder = _ref$placeholder === void 0 ? false : _ref$placeholder,
60
- _ref$clearable = _ref.clearable,
61
- clearable = _ref$clearable === void 0 ? false : _ref$clearable,
62
- _ref$disabled = _ref.disabled,
63
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
64
- _ref$optional = _ref.optional,
65
- optional = _ref$optional === void 0 ? false : _ref$optional,
89
+ clearable = _ref.clearable,
90
+ disabled = _ref.disabled,
91
+ optional = _ref.optional,
66
92
  onChange = _ref.onChange,
67
93
  onBlur = _ref.onBlur,
68
- _ref$error = _ref.error,
69
- error = _ref$error === void 0 ? "" : _ref$error,
70
- _ref$autocomplete = _ref.autocomplete,
71
- autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
94
+ error = _ref.error,
95
+ autocomplete = _ref.autocomplete,
72
96
  margin = _ref.margin,
73
- _ref$size = _ref.size,
74
- size = _ref$size === void 0 ? "medium" : _ref$size,
75
- _ref$tabIndex = _ref.tabIndex,
76
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
97
+ size = _ref.size,
98
+ tabIndex = _ref.tabIndex;
77
99
 
78
- var _useState = (0, _react.useState)(""),
100
+ var _useState = (0, _react.useState)(defaultValue),
79
101
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
80
102
  innerValue = _useState2[0],
81
103
  setInnerValue = _useState2[1];
@@ -85,238 +107,138 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
85
107
  isOpen = _useState4[0],
86
108
  setIsOpen = _useState4[1];
87
109
 
88
- var _useState5 = (0, _react.useState)(null),
89
- _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
90
- anchorEl = _useState6[0],
91
- setAnchorEl = _useState6[1];
110
+ var _useState5 = (0, _react.useState)("date-picker-".concat((0, _uuid.v4)())),
111
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 1),
112
+ calendarId = _useState6[0];
92
113
 
93
- var colorsTheme = (0, _useTheme["default"])();
114
+ var _useState7 = (0, _react.useState)(getValueForPicker((_ref2 = value !== null && value !== void 0 ? value : defaultValue) !== null && _ref2 !== void 0 ? _ref2 : "", format)),
115
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
116
+ dayjsDate = _useState8[0],
117
+ setDayjsDate = _useState8[1];
94
118
 
95
- var handleCalendarOnKeyDown = function handleCalendarOnKeyDown(event) {
96
- switch (event.keyCode) {
97
- case 27:
98
- // Esc
99
- event.preventDefault();
100
- setIsOpen(false);
101
- break;
119
+ var _useState9 = (0, _react.useState)(innerValue || value ? !format.toUpperCase().includes("YYYY") && +getValueForPicker(value !== null && value !== void 0 ? value : innerValue, format).format("YY") < 68 ? 2000 : 1900 : undefined),
120
+ _useState10 = (0, _slicedToArray2["default"])(_useState9, 2),
121
+ lastValidYear = _useState10[0],
122
+ setLastValidYear = _useState10[1];
123
+
124
+ var colorsTheme = (0, _useTheme["default"])();
125
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
126
+ var dateRef = (0, _react.useRef)(null);
127
+ (0, _react.useEffect)(function () {
128
+ if (value || value === "") setDayjsDate(getDate(value, format, lastValidYear, setLastValidYear));
129
+ }, [value, format, lastValidYear]);
130
+ (0, _react.useLayoutEffect)(function () {
131
+ if (!disabled) {
132
+ var actionButtonRef = dateRef === null || dateRef === void 0 ? void 0 : dateRef.current.querySelector("[title='Open calendar']");
133
+ actionButtonRef === null || actionButtonRef === void 0 ? void 0 : actionButtonRef.setAttribute("aria-haspopup", true);
134
+ actionButtonRef === null || actionButtonRef === void 0 ? void 0 : actionButtonRef.setAttribute("role", "combobox");
135
+ actionButtonRef === null || actionButtonRef === void 0 ? void 0 : actionButtonRef.setAttribute("aria-expanded", isOpen);
136
+ actionButtonRef === null || actionButtonRef === void 0 ? void 0 : actionButtonRef.setAttribute("aria-controls", calendarId);
137
+ actionButtonRef === null || actionButtonRef === void 0 ? void 0 : actionButtonRef.setAttribute("aria-describedby", calendarId);
102
138
  }
103
- };
139
+ }, [isOpen, disabled, calendarId]);
104
140
 
105
141
  var handleCalendarOnClick = function handleCalendarOnClick(newDate) {
106
- var newValue = (0, _moment["default"])(newDate).format(format.toUpperCase());
107
- value !== null && value !== void 0 ? value : setInnerValue(newValue);
108
- onChange === null || onChange === void 0 ? void 0 : onChange({
142
+ var newValue = newDate.format(format.toUpperCase());
143
+
144
+ if (!value) {
145
+ setDayjsDate(newDate);
146
+ setInnerValue(newValue);
147
+ }
148
+
149
+ setLastValidYear(newDate.get("year"));
150
+ newDate !== null && newDate !== void 0 && newDate.set("day", newDate.get("date")).toJSON() ? onChange === null || onChange === void 0 ? void 0 : onChange({
109
151
  value: newValue,
110
- error: null,
111
- date: newDate && newDate.toJSON() ? newDate : null
152
+ date: newDate.toDate()
153
+ }) : onChange === null || onChange === void 0 ? void 0 : onChange({
154
+ value: newValue
112
155
  });
113
156
  };
114
157
 
115
- var handleIOnChange = function handleIOnChange(_ref2) {
116
- var newValue = _ref2.value,
117
- inputError = _ref2.error;
158
+ var handleIOnChange = function handleIOnChange(_ref3) {
159
+ var newValue = _ref3.value,
160
+ inputError = _ref3.error;
118
161
  value !== null && value !== void 0 ? value : setInnerValue(newValue);
119
- var momentDate = (0, _moment["default"])(newValue, format.toUpperCase(), true);
120
- var invalidDateMessage = newValue !== "" && !momentDate.isValid() ? "Invalid date." : null;
121
- onChange === null || onChange === void 0 ? void 0 : onChange({
162
+ var newDate = getDate(newValue, format, lastValidYear, setLastValidYear);
163
+ var invalidDateMessage = newValue !== "" && !newDate.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
164
+ var callbackParams = inputError || invalidDateMessage ? {
122
165
  value: newValue,
123
- error: inputError || invalidDateMessage,
124
- date: momentDate.isValid() ? momentDate._d : null
125
- });
166
+ error: inputError || invalidDateMessage
167
+ } : {
168
+ value: newValue
169
+ };
170
+
171
+ if (newDate.isValid()) {
172
+ setDayjsDate(newDate);
173
+ onChange === null || onChange === void 0 ? void 0 : onChange(_objectSpread(_objectSpread({}, callbackParams), {}, {
174
+ date: newDate.toDate()
175
+ }));
176
+ } else {
177
+ onChange === null || onChange === void 0 ? void 0 : onChange(callbackParams);
178
+ setLastValidYear(function (validYear) {
179
+ var _dayjsDate$get;
180
+
181
+ return (_dayjsDate$get = dayjsDate === null || dayjsDate === void 0 ? void 0 : dayjsDate.get("year")) !== null && _dayjsDate$get !== void 0 ? _dayjsDate$get : validYear;
182
+ });
183
+ setDayjsDate(null);
184
+ }
126
185
  };
127
186
 
128
- var handleIOnBlur = function handleIOnBlur(_ref3) {
129
- var value = _ref3.value,
130
- inputError = _ref3.error;
131
- var momentDate = (0, _moment["default"])(value, format.toUpperCase(), true);
132
- var invalidDateMessage = value !== "" && !momentDate.isValid() ? "Invalid date." : null;
133
- onBlur === null || onBlur === void 0 ? void 0 : onBlur({
187
+ var handleIOnBlur = function handleIOnBlur(_ref4) {
188
+ var value = _ref4.value,
189
+ inputError = _ref4.error;
190
+ var date = getDate(value, format, lastValidYear, setLastValidYear);
191
+ var invalidDateMessage = value !== "" && !date.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
192
+ var callbackParams = inputError || invalidDateMessage ? {
134
193
  value: value,
135
- error: inputError || invalidDateMessage,
136
- date: momentDate.isValid() ? momentDate._d : null
137
- });
194
+ error: inputError || invalidDateMessage
195
+ } : {
196
+ value: value
197
+ };
198
+ date.isValid() ? onBlur === null || onBlur === void 0 ? void 0 : onBlur(_objectSpread(_objectSpread({}, callbackParams), {}, {
199
+ date: date.toDate()
200
+ })) : onBlur === null || onBlur === void 0 ? void 0 : onBlur(callbackParams);
138
201
  };
139
202
 
140
- var getValueForPicker = function getValueForPicker() {
141
- return (0, _moment["default"])(value !== null && value !== void 0 ? value : innerValue, format.toUpperCase(), true).format();
142
- };
143
-
144
- var openCalendar = function openCalendar(event) {
145
- if (event) {
146
- setIsOpen(!isOpen);
147
- setAnchorEl(event.currentTarget);
148
- }
203
+ var openCalendar = function openCalendar() {
204
+ setIsOpen(!isOpen);
149
205
  };
150
206
 
151
207
  var closeCalendar = function closeCalendar() {
152
208
  setIsOpen(false);
153
209
  };
154
210
 
155
- var calendarAction = {
156
- onClick: openCalendar,
157
- icon: /*#__PURE__*/_react["default"].createElement("svg", {
158
- xmlns: "http://www.w3.org/2000/svg",
159
- height: "24",
160
- viewBox: "0 0 24 24",
161
- width: "24",
162
- fill: "currentColor"
163
- }, /*#__PURE__*/_react["default"].createElement("path", {
164
- d: "M0 0h24v24H0z",
165
- fill: "none"
166
- }), /*#__PURE__*/_react["default"].createElement("path", {
167
- d: "M20 3h-1V1h-2v2H7V1H5v2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 18H4V8h16v13z"
168
- }))
211
+ var handleDatePickerEscKeydown = function handleDatePickerEscKeydown(event) {
212
+ event.preventDefault();
213
+ closeCalendar();
214
+ dateRef === null || dateRef === void 0 ? void 0 : dateRef.current.getElementsByTagName("input")[0].focus();
169
215
  };
170
- var dateTheme = (0, _core.createMuiTheme)({
171
- overrides: {
172
- MuiTypography: {
173
- root: {
174
- fontFamily: "".concat(colorsTheme.dateInput.pickerFontFamily, " !important")
175
- }
176
- },
177
- MuiPickersYearSelection: {
178
- container: {
179
- color: colorsTheme.dateInput.pickerYearFontColor,
180
- "&::-webkit-scrollbar": {
181
- width: "3px"
182
- },
183
- "&::-webkit-scrollbar-track": {
184
- backgroundColor: "#D9D9D9",
185
- borderRadius: "3px"
186
- },
187
- "&::-webkit-scrollbar-thumb": {
188
- backgroundColor: "#666666",
189
- borderRadius: "3px"
190
- }
191
- }
192
- },
193
- MuiPickersToolbar: {
194
- toolbar: {
195
- backgroundColor: colorsTheme.dateInput.pickerBackgroundColor,
196
- color: colorsTheme.dateInput.pickerDayFontColor
197
- }
198
- },
199
- MuiIconButton: {
200
- root: {
201
- height: "36px",
202
- width: "36px",
203
- padding: "0px"
204
- }
205
- },
206
- MuiTouchRipple: {
207
- child: {
208
- opacity: "0"
209
- }
210
- },
211
- MuiButtonBase: {
212
- root: {
213
- "&:focus": {
214
- outline: colorsTheme.dateInput.pickerFocusColor + " solid 2px"
215
- }
216
- }
217
- },
218
- MuiPickersBasePicker: {
219
- pickerView: {
220
- minWidth: "unset",
221
- maxWidth: "unset",
222
- minHeight: "unset",
223
- padding: "0px 10px",
224
- height: colorsTheme.dateInput.pickerHeight,
225
- width: colorsTheme.dateInput.pickerWidth,
226
- backgroundColor: colorsTheme.dateInput.pickerBackgroundColor,
227
- fontFamily: colorsTheme.dateInput.pickerFontFamily
228
- }
229
- },
230
- MuiPickersToolbarText: {
231
- toolbarTxt: {
232
- color: colorsTheme.dateInput.pickerActualDateFontColor,
233
- fontFamily: colorsTheme.dateInput.pickerFontFamily,
234
- fontSize: "2rem"
235
- },
236
- toolbarBtnSelected: {
237
- color: colorsTheme.dateInput.pickerActualDateFontColor
238
- }
239
- },
240
- MuiPickersCalendarHeader: {
241
- transitionContainer: {
242
- color: colorsTheme.dateInput.pickerMonthFontColor
243
- },
244
- dayLabel: {
245
- color: colorsTheme.dateInput.pickerWeekFontColor,
246
- fontFamily: colorsTheme.dateInput.pickerFontFamily
247
- },
248
- switchHeader: {
249
- backgroundColor: "#ffffff",
250
- color: colorsTheme.dateInput.pickerDayFontColor
251
- },
252
- iconButton: {
253
- backgroundColor: colorsTheme.dateInput.pickerMonthArrowsBackgroundColor,
254
- "&:hover": {
255
- backgroundColor: colorsTheme.dateInput.pickerMonthArrowsBackgroundColor
256
- }
257
- }
258
- },
259
- MuiPickersCalendar: {
260
- week: {
261
- marginBottom: "2px"
262
- }
263
- },
264
- MuiPickersDay: {
265
- current: {
266
- color: colorsTheme.dateInput.pickerDayFontColor
267
- },
268
- day: {
269
- fontFamily: colorsTheme.dateInput.pickerFontFamily,
270
- color: colorsTheme.dateInput.pickerDayFontColor,
271
- "&:hover": {
272
- backgroundColor: colorsTheme.dateInput.pickerHoverDateBackgroundColor,
273
- color: colorsTheme.dateInput.pickerHoverDateFontColor
274
- }
275
- },
276
- daySelected: {
277
- backgroundColor: colorsTheme.dateInput.pickerSelectedDateBackgroundColor,
278
- color: colorsTheme.dateInput.pickerSelectedDateColor,
279
- "&:hover": {
280
- backgroundColor: colorsTheme.dateInput.pickerSelectedDateBackgroundColor,
281
- color: colorsTheme.dateInput.pickerSelectedDateColor,
282
- opacity: "1"
283
- }
284
- }
285
- },
286
- MuiPickersYear: {
287
- yearSelected: {
288
- color: colorsTheme.dateInput.pickerSelectedDateColor,
289
- backgroundColor: colorsTheme.dateInput.pickerSelectedDateBackgroundColor,
290
- margin: "0px 100px",
291
- borderRadius: "20px"
292
- },
293
- root: {
294
- "&:focus": {
295
- color: colorsTheme.dateInput.pickerHoverDateFontColor,
296
- backgroundColor: colorsTheme.dateInput.pickerHoverDateBackgroundColor
297
- }
298
- }
299
- },
300
- MuiPickersModal: {
301
- dialogAction: {
302
- color: "pink"
303
- }
304
- }
305
- }
306
- });
216
+
217
+ var handleDatePickerOnBlur = function handleDatePickerOnBlur(event) {
218
+ if (!(event !== null && event !== void 0 && event.currentTarget.contains(event.relatedTarget))) closeCalendar();
219
+ };
220
+
307
221
  return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
308
222
  theme: colorsTheme
309
- }, /*#__PURE__*/_react["default"].createElement(_core.MuiThemeProvider, {
310
- theme: dateTheme
311
- }, /*#__PURE__*/_react["default"].createElement(_pickers.MuiPickersUtilsProvider, {
312
- utils: _dateFns["default"]
313
- }, /*#__PURE__*/_react["default"].createElement(StyledDPicker, null, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
223
+ }, /*#__PURE__*/_react["default"].createElement("div", {
224
+ ref: ref
225
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Root, {
226
+ open: isOpen
227
+ }, /*#__PURE__*/_react["default"].createElement(Popover.Trigger, {
228
+ asChild: true,
229
+ "aria-controls": undefined
230
+ }, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
314
231
  label: label,
315
232
  name: name,
233
+ defaultValue: defaultValue,
316
234
  value: value !== null && value !== void 0 ? value : innerValue,
317
235
  helperText: helperText,
318
236
  placeholder: placeholder ? format.toUpperCase() : null,
319
- action: calendarAction,
237
+ action: {
238
+ onClick: openCalendar,
239
+ icon: _Icons.calendarIcon,
240
+ title: "Open calendar"
241
+ },
320
242
  clearable: clearable,
321
243
  disabled: disabled,
322
244
  optional: optional,
@@ -327,70 +249,21 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
327
249
  margin: margin,
328
250
  size: size,
329
251
  tabIndex: tabIndex,
330
- ref: ref
331
- }), /*#__PURE__*/_react["default"].createElement(_Popover["default"], {
332
- onKeyDown: handleCalendarOnKeyDown,
333
- open: isOpen,
334
- anchorEl: anchorEl,
335
- anchorOrigin: {
336
- vertical: "bottom",
337
- horizontal: "left"
338
- },
339
- transformOrigin: {
340
- vertical: "top",
341
- horizontal: "center"
342
- },
343
- PaperProps: {
344
- style: {
345
- marginTop: "10px"
346
- }
347
- }
348
- }, /*#__PURE__*/_react["default"].createElement(_ClickAwayListener["default"], {
349
- onClickAway: closeCalendar
350
- }, /*#__PURE__*/_react["default"].createElement(_core.Paper, {
351
- role: "dialog",
352
- "aria-modal": "true"
353
- }, /*#__PURE__*/_react["default"].createElement(_pickers.DatePicker, {
354
- variant: "static",
355
- value: getValueForPicker(),
356
- onChange: function onChange(date) {
357
- return handleCalendarOnClick(date);
358
- },
359
- format: format,
360
- disabled: disabled
361
- }))))))));
252
+ ref: dateRef
253
+ })), /*#__PURE__*/_react["default"].createElement(StyledContent, {
254
+ sideOffset: error ? -18 : 2,
255
+ align: "end",
256
+ "aria-modal": true,
257
+ onBlur: handleDatePickerOnBlur,
258
+ onEscapeKeyDown: handleDatePickerEscKeydown,
259
+ avoidCollisions: false
260
+ }, /*#__PURE__*/_react["default"].createElement(_DatePicker["default"], {
261
+ id: calendarId,
262
+ onDateSelect: handleCalendarOnClick,
263
+ date: dayjsDate
264
+ })))));
362
265
  });
363
266
 
364
- var sizes = {
365
- medium: "360px",
366
- large: "480px",
367
- fillParent: "100%"
368
- };
369
-
370
- var StyledDPicker = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])([""])));
371
-
372
- DxcDateInput.propTypes = {
373
- label: _propTypes["default"].string,
374
- name: _propTypes["default"].string,
375
- value: _propTypes["default"].string,
376
- format: _propTypes["default"].string,
377
- helperText: _propTypes["default"].string,
378
- placeholder: _propTypes["default"].bool,
379
- clearable: _propTypes["default"].bool,
380
- disabled: _propTypes["default"].bool,
381
- optional: _propTypes["default"].bool,
382
- onChange: _propTypes["default"].func,
383
- onBlur: _propTypes["default"].func,
384
- error: _propTypes["default"].string,
385
- autocomplete: _propTypes["default"].string,
386
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
387
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
388
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
389
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
390
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
391
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
392
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
393
- tabIndex: _propTypes["default"].number
394
- };
267
+ var StyledContent = (0, _styledComponents["default"])(Popover.Content)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n &:focus-visible {\n outline: none;\n }\n"])));
395
268
  var _default = DxcDateInput;
396
269
  exports["default"] = _default;