@dxc-technology/halstack-react 0.0.0-da90bf9 → 0.0.0-dcd93c4

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 (359) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +7 -6
  3. package/HalstackContext.d.ts +12 -0
  4. package/HalstackContext.js +295 -0
  5. package/accordion/Accordion.d.ts +4 -0
  6. package/accordion/Accordion.js +35 -162
  7. package/accordion/Accordion.stories.tsx +307 -0
  8. package/accordion/Accordion.test.js +72 -0
  9. package/accordion/types.d.ts +68 -0
  10. package/accordion/types.js +5 -0
  11. package/accordion-group/AccordionGroup.d.ts +7 -0
  12. package/accordion-group/AccordionGroup.js +68 -85
  13. package/accordion-group/AccordionGroup.stories.tsx +225 -0
  14. package/accordion-group/AccordionGroup.test.js +151 -0
  15. package/accordion-group/types.d.ts +72 -0
  16. package/accordion-group/types.js +5 -0
  17. package/alert/Alert.d.ts +4 -0
  18. package/alert/Alert.js +43 -153
  19. package/alert/Alert.stories.tsx +170 -0
  20. package/alert/Alert.test.js +92 -0
  21. package/alert/types.d.ts +49 -0
  22. package/alert/types.js +5 -0
  23. package/badge/Badge.d.ts +4 -0
  24. package/badge/Badge.js +15 -17
  25. package/badge/types.d.ts +5 -0
  26. package/badge/types.js +5 -0
  27. package/bleed/Bleed.d.ts +3 -0
  28. package/bleed/Bleed.js +51 -0
  29. package/bleed/Bleed.stories.tsx +341 -0
  30. package/bleed/types.d.ts +37 -0
  31. package/bleed/types.js +5 -0
  32. package/box/Box.d.ts +4 -0
  33. package/box/Box.js +36 -76
  34. package/box/Box.stories.tsx +132 -0
  35. package/box/Box.test.js +18 -0
  36. package/box/types.d.ts +43 -0
  37. package/box/types.js +5 -0
  38. package/button/Button.d.ts +4 -0
  39. package/button/Button.js +33 -97
  40. package/button/Button.stories.tsx +274 -0
  41. package/button/Button.test.js +35 -0
  42. package/button/types.d.ts +53 -0
  43. package/button/types.js +5 -0
  44. package/card/Card.d.ts +4 -0
  45. package/card/Card.js +44 -137
  46. package/card/Card.stories.tsx +201 -0
  47. package/card/Card.test.js +50 -0
  48. package/card/ice-cream.jpg +0 -0
  49. package/card/types.d.ts +67 -0
  50. package/card/types.js +5 -0
  51. package/checkbox/Checkbox.d.ts +4 -0
  52. package/checkbox/Checkbox.js +52 -94
  53. package/checkbox/Checkbox.stories.tsx +188 -0
  54. package/checkbox/Checkbox.test.js +78 -0
  55. package/checkbox/types.d.ts +64 -0
  56. package/checkbox/types.js +5 -0
  57. package/chip/Chip.d.ts +4 -0
  58. package/chip/Chip.js +26 -130
  59. package/chip/Chip.stories.tsx +119 -0
  60. package/chip/Chip.test.js +56 -0
  61. package/chip/types.d.ts +45 -0
  62. package/chip/types.js +5 -0
  63. package/common/RequiredComponent.js +3 -11
  64. package/common/variables.js +291 -387
  65. package/date-input/DateInput.d.ts +4 -0
  66. package/date-input/DateInput.js +80 -108
  67. package/date-input/DateInput.stories.tsx +138 -0
  68. package/date-input/DateInput.test.js +479 -0
  69. package/date-input/types.d.ts +107 -0
  70. package/date-input/types.js +5 -0
  71. package/dialog/Dialog.d.ts +4 -0
  72. package/dialog/Dialog.js +25 -105
  73. package/dialog/Dialog.stories.tsx +212 -0
  74. package/dialog/Dialog.test.js +40 -0
  75. package/dialog/types.d.ts +43 -0
  76. package/dialog/types.js +5 -0
  77. package/dropdown/Dropdown.d.ts +4 -0
  78. package/dropdown/Dropdown.js +54 -207
  79. package/dropdown/Dropdown.stories.tsx +249 -0
  80. package/dropdown/Dropdown.test.js +189 -0
  81. package/dropdown/types.d.ts +80 -0
  82. package/dropdown/types.js +5 -0
  83. package/file-input/FileInput.d.ts +4 -0
  84. package/file-input/FileInput.js +200 -251
  85. package/file-input/FileInput.stories.tsx +507 -0
  86. package/file-input/FileInput.test.js +457 -0
  87. package/file-input/FileItem.d.ts +14 -0
  88. package/file-input/FileItem.js +44 -145
  89. package/file-input/types.d.ts +112 -0
  90. package/file-input/types.js +5 -0
  91. package/footer/Footer.d.ts +4 -0
  92. package/footer/Footer.js +50 -286
  93. package/footer/Footer.stories.tsx +130 -0
  94. package/footer/Footer.test.js +109 -0
  95. package/footer/Icons.d.ts +2 -0
  96. package/footer/Icons.js +16 -16
  97. package/footer/types.d.ts +65 -0
  98. package/footer/types.js +5 -0
  99. package/header/Header.d.ts +7 -0
  100. package/header/Header.js +82 -249
  101. package/header/Header.stories.tsx +172 -0
  102. package/header/Header.test.js +79 -0
  103. package/header/Icons.d.ts +2 -0
  104. package/header/Icons.js +7 -32
  105. package/header/types.d.ts +47 -0
  106. package/header/types.js +5 -0
  107. package/heading/Heading.d.ts +4 -0
  108. package/heading/Heading.js +25 -96
  109. package/heading/Heading.stories.tsx +54 -0
  110. package/heading/Heading.test.js +186 -0
  111. package/heading/types.d.ts +33 -0
  112. package/heading/types.js +5 -0
  113. package/inline/Inline.d.ts +4 -0
  114. package/inline/Inline.js +60 -0
  115. package/inline/Inline.stories.tsx +319 -0
  116. package/inline/types.d.ts +36 -0
  117. package/inline/types.js +5 -0
  118. package/inset/Inset.d.ts +3 -0
  119. package/inset/Inset.js +51 -0
  120. package/inset/Inset.stories.tsx +229 -0
  121. package/inset/types.d.ts +37 -0
  122. package/inset/types.js +5 -0
  123. package/layout/ApplicationLayout.d.ts +11 -0
  124. package/layout/ApplicationLayout.js +90 -218
  125. package/layout/ApplicationLayout.stories.tsx +126 -0
  126. package/layout/Icons.d.ts +5 -0
  127. package/layout/Icons.js +19 -8
  128. package/layout/SidenavContext.d.ts +5 -0
  129. package/layout/SidenavContext.js +19 -0
  130. package/layout/types.d.ts +52 -0
  131. package/layout/types.js +5 -0
  132. package/link/Link.d.ts +4 -0
  133. package/link/Link.js +64 -165
  134. package/link/Link.stories.tsx +186 -0
  135. package/link/Link.test.js +83 -0
  136. package/link/types.d.ts +54 -0
  137. package/link/types.js +5 -0
  138. package/list/List.d.ts +4 -0
  139. package/list/List.js +47 -0
  140. package/list/List.stories.tsx +89 -0
  141. package/list/types.d.ts +7 -0
  142. package/list/types.js +5 -0
  143. package/main.d.ts +48 -40
  144. package/main.js +138 -96
  145. package/number-input/NumberInput.d.ts +4 -0
  146. package/number-input/NumberInput.js +21 -81
  147. package/number-input/NumberInput.stories.tsx +115 -0
  148. package/number-input/NumberInput.test.js +506 -0
  149. package/number-input/NumberInputContext.d.ts +4 -0
  150. package/number-input/NumberInputContext.js +5 -2
  151. package/number-input/numberInputContextTypes.d.ts +19 -0
  152. package/number-input/numberInputContextTypes.js +5 -0
  153. package/number-input/types.d.ts +124 -0
  154. package/number-input/types.js +5 -0
  155. package/package.json +23 -16
  156. package/paginator/Icons.js +9 -9
  157. package/paginator/Paginator.d.ts +4 -0
  158. package/paginator/Paginator.js +32 -166
  159. package/paginator/Paginator.stories.tsx +63 -0
  160. package/paginator/Paginator.test.js +308 -0
  161. package/paginator/types.d.ts +38 -0
  162. package/paginator/types.js +5 -0
  163. package/password-input/PasswordInput.d.ts +4 -0
  164. package/password-input/PasswordInput.js +40 -77
  165. package/password-input/PasswordInput.stories.tsx +131 -0
  166. package/password-input/PasswordInput.test.js +180 -0
  167. package/password-input/types.d.ts +110 -0
  168. package/password-input/types.js +5 -0
  169. package/progress-bar/ProgressBar.d.ts +4 -0
  170. package/progress-bar/ProgressBar.js +23 -95
  171. package/progress-bar/ProgressBar.stories.jsx +58 -0
  172. package/progress-bar/ProgressBar.test.js +65 -0
  173. package/progress-bar/types.d.ts +37 -0
  174. package/progress-bar/types.js +5 -0
  175. package/quick-nav/QuickNav.d.ts +4 -0
  176. package/quick-nav/QuickNav.js +116 -0
  177. package/quick-nav/QuickNav.stories.tsx +237 -0
  178. package/quick-nav/types.d.ts +21 -0
  179. package/quick-nav/types.js +5 -0
  180. package/radio-group/Radio.d.ts +4 -0
  181. package/radio-group/Radio.js +141 -0
  182. package/radio-group/RadioGroup.d.ts +4 -0
  183. package/radio-group/RadioGroup.js +283 -0
  184. package/radio-group/RadioGroup.stories.tsx +100 -0
  185. package/radio-group/RadioGroup.test.js +695 -0
  186. package/radio-group/types.d.ts +114 -0
  187. package/radio-group/types.js +5 -0
  188. package/resultsetTable/ResultsetTable.d.ts +4 -0
  189. package/resultsetTable/ResultsetTable.js +43 -147
  190. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  191. package/resultsetTable/ResultsetTable.test.js +348 -0
  192. package/resultsetTable/types.d.ts +67 -0
  193. package/resultsetTable/types.js +5 -0
  194. package/row/Row.d.ts +3 -0
  195. package/row/Row.js +127 -0
  196. package/row/Row.stories.tsx +237 -0
  197. package/row/types.d.ts +28 -0
  198. package/row/types.js +5 -0
  199. package/select/Icons.d.ts +10 -0
  200. package/select/Icons.js +93 -0
  201. package/select/Listbox.d.ts +4 -0
  202. package/select/Listbox.js +175 -0
  203. package/select/Option.d.ts +4 -0
  204. package/select/Option.js +110 -0
  205. package/select/Select.d.ts +4 -0
  206. package/select/Select.js +243 -719
  207. package/select/Select.stories.tsx +626 -0
  208. package/select/Select.test.js +2162 -0
  209. package/select/types.d.ts +212 -0
  210. package/select/types.js +5 -0
  211. package/sidenav/Sidenav.d.ts +9 -0
  212. package/sidenav/Sidenav.js +32 -64
  213. package/sidenav/Sidenav.stories.tsx +182 -0
  214. package/sidenav/Sidenav.test.js +56 -0
  215. package/sidenav/types.d.ts +50 -0
  216. package/sidenav/types.js +5 -0
  217. package/slider/Slider.d.ts +4 -0
  218. package/slider/Slider.js +76 -162
  219. package/slider/Slider.stories.tsx +177 -0
  220. package/slider/Slider.test.js +150 -0
  221. package/slider/types.d.ts +82 -0
  222. package/slider/types.js +5 -0
  223. package/spinner/Spinner.d.ts +4 -0
  224. package/spinner/Spinner.js +46 -177
  225. package/spinner/Spinner.stories.jsx +103 -0
  226. package/spinner/Spinner.test.js +64 -0
  227. package/spinner/types.d.ts +32 -0
  228. package/spinner/types.js +5 -0
  229. package/stack/Stack.d.ts +4 -0
  230. package/stack/Stack.js +56 -0
  231. package/stack/Stack.stories.tsx +263 -0
  232. package/stack/types.d.ts +32 -0
  233. package/stack/types.js +5 -0
  234. package/switch/Switch.d.ts +4 -0
  235. package/switch/Switch.js +55 -82
  236. package/switch/Switch.stories.tsx +160 -0
  237. package/switch/Switch.test.js +98 -0
  238. package/switch/types.d.ts +62 -0
  239. package/switch/types.js +5 -0
  240. package/table/Table.d.ts +4 -0
  241. package/table/Table.js +12 -26
  242. package/table/Table.stories.jsx +277 -0
  243. package/table/Table.test.js +26 -0
  244. package/table/types.d.ts +21 -0
  245. package/table/types.js +5 -0
  246. package/tabs/Tabs.d.ts +4 -0
  247. package/tabs/Tabs.js +43 -175
  248. package/tabs/Tabs.stories.tsx +112 -0
  249. package/tabs/Tabs.test.js +140 -0
  250. package/tabs/types.d.ts +82 -0
  251. package/tabs/types.js +5 -0
  252. package/tabs-nav/NavTabs.d.ts +8 -0
  253. package/tabs-nav/NavTabs.js +125 -0
  254. package/tabs-nav/NavTabs.stories.tsx +170 -0
  255. package/tabs-nav/NavTabs.test.js +82 -0
  256. package/tabs-nav/Tab.d.ts +4 -0
  257. package/tabs-nav/Tab.js +132 -0
  258. package/tabs-nav/types.d.ts +53 -0
  259. package/tabs-nav/types.js +5 -0
  260. package/tag/Tag.d.ts +4 -0
  261. package/tag/Tag.js +44 -143
  262. package/tag/Tag.stories.tsx +142 -0
  263. package/tag/Tag.test.js +60 -0
  264. package/tag/types.d.ts +69 -0
  265. package/tag/types.js +5 -0
  266. package/text/Text.d.ts +7 -0
  267. package/text/Text.js +30 -0
  268. package/text/Text.stories.tsx +19 -0
  269. package/text-input/Suggestion.d.ts +4 -0
  270. package/text-input/Suggestion.js +55 -0
  271. package/text-input/TextInput.d.ts +4 -0
  272. package/text-input/TextInput.js +169 -389
  273. package/text-input/TextInput.stories.tsx +474 -0
  274. package/text-input/TextInput.test.js +1712 -0
  275. package/text-input/types.d.ts +178 -0
  276. package/text-input/types.js +5 -0
  277. package/textarea/Textarea.d.ts +4 -0
  278. package/textarea/Textarea.js +50 -142
  279. package/textarea/Textarea.stories.jsx +157 -0
  280. package/textarea/Textarea.test.js +437 -0
  281. package/textarea/types.d.ts +137 -0
  282. package/textarea/types.js +5 -0
  283. package/toggle-group/ToggleGroup.d.ts +4 -0
  284. package/toggle-group/ToggleGroup.js +36 -148
  285. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  286. package/toggle-group/ToggleGroup.test.js +156 -0
  287. package/toggle-group/types.d.ts +105 -0
  288. package/toggle-group/types.js +5 -0
  289. package/useTheme.d.ts +2 -0
  290. package/useTheme.js +2 -2
  291. package/useTranslatedLabels.d.ts +2 -0
  292. package/useTranslatedLabels.js +20 -0
  293. package/wizard/Wizard.d.ts +4 -0
  294. package/wizard/Wizard.js +131 -244
  295. package/wizard/Wizard.stories.tsx +214 -0
  296. package/wizard/Wizard.test.js +141 -0
  297. package/wizard/types.d.ts +64 -0
  298. package/wizard/types.js +5 -0
  299. package/ThemeContext.js +0 -250
  300. package/V3Select/V3Select.js +0 -549
  301. package/V3Select/index.d.ts +0 -27
  302. package/V3Textarea/V3Textarea.js +0 -264
  303. package/V3Textarea/index.d.ts +0 -27
  304. package/accordion/index.d.ts +0 -28
  305. package/accordion-group/index.d.ts +0 -16
  306. package/alert/index.d.ts +0 -51
  307. package/box/index.d.ts +0 -25
  308. package/button/Button.stories.js +0 -27
  309. package/button/index.d.ts +0 -24
  310. package/card/index.d.ts +0 -22
  311. package/checkbox/index.d.ts +0 -24
  312. package/chip/index.d.ts +0 -22
  313. package/date/Date.js +0 -379
  314. package/date/index.d.ts +0 -27
  315. package/date-input/index.d.ts +0 -95
  316. package/dialog/index.d.ts +0 -18
  317. package/dropdown/index.d.ts +0 -26
  318. package/file-input/index.d.ts +0 -81
  319. package/footer/index.d.ts +0 -25
  320. package/header/index.d.ts +0 -25
  321. package/heading/index.d.ts +0 -17
  322. package/input-text/Icons.js +0 -22
  323. package/input-text/InputText.js +0 -705
  324. package/input-text/index.d.ts +0 -36
  325. package/link/index.d.ts +0 -23
  326. package/number-input/index.d.ts +0 -113
  327. package/paginator/index.d.ts +0 -20
  328. package/password-input/index.d.ts +0 -94
  329. package/progress-bar/index.d.ts +0 -18
  330. package/radio/Radio.js +0 -209
  331. package/radio/index.d.ts +0 -23
  332. package/resultsetTable/index.d.ts +0 -19
  333. package/select/index.d.ts +0 -131
  334. package/sidenav/index.d.ts +0 -13
  335. package/slider/index.d.ts +0 -29
  336. package/spinner/index.d.ts +0 -17
  337. package/switch/index.d.ts +0 -24
  338. package/table/index.d.ts +0 -13
  339. package/tabs/index.d.ts +0 -19
  340. package/tag/index.d.ts +0 -24
  341. package/text-input/index.d.ts +0 -135
  342. package/textarea/index.d.ts +0 -117
  343. package/toggle/Toggle.js +0 -220
  344. package/toggle/index.d.ts +0 -21
  345. package/toggle-group/index.d.ts +0 -21
  346. package/upload/Upload.js +0 -205
  347. package/upload/buttons-upload/ButtonsUpload.js +0 -135
  348. package/upload/buttons-upload/Icons.js +0 -40
  349. package/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  350. package/upload/dragAndDropArea/Icons.js +0 -39
  351. package/upload/file-upload/FileToUpload.js +0 -189
  352. package/upload/file-upload/Icons.js +0 -66
  353. package/upload/files-upload/FilesToUpload.js +0 -123
  354. package/upload/index.d.ts +0 -15
  355. package/upload/transaction/Icons.js +0 -160
  356. package/upload/transaction/Transaction.js +0 -148
  357. package/upload/transactions/Transactions.js +0 -138
  358. package/wizard/Icons.js +0 -65
  359. package/wizard/index.d.ts +0 -18
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import DateInputPropsType from "./types";
3
+ declare const DxcDateInput: React.ForwardRefExoticComponent<DateInputPropsType & React.RefAttributes<HTMLDivElement>>;
4
+ export default DxcDateInput;
@@ -1,18 +1,18 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
-
5
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
4
 
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
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"));
@@ -25,61 +25,55 @@ var _ClickAwayListener = _interopRequireDefault(require("@material-ui/core/Click
25
25
 
26
26
  var _Popover = _interopRequireDefault(require("@material-ui/core/Popover"));
27
27
 
28
- var _moment = _interopRequireDefault(require("moment"));
28
+ var _dayjs = _interopRequireDefault(require("dayjs"));
29
29
 
30
- var _dateFns = _interopRequireDefault(require("@date-io/date-fns"));
30
+ var _dayjs2 = _interopRequireDefault(require("@date-io/dayjs"));
31
31
 
32
32
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
33
33
 
34
- var _propTypes = _interopRequireDefault(require("prop-types"));
35
-
36
- var _variables = require("../common/variables.js");
34
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
37
35
 
38
- var _useTheme = _interopRequireDefault(require("../useTheme.js"));
36
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
39
37
 
40
38
  var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
41
39
 
42
- function _templateObject() {
43
- var data = (0, _taggedTemplateLiteral2["default"])([""]);
40
+ var _templateObject;
44
41
 
45
- _templateObject = function _templateObject() {
46
- return data;
47
- };
42
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
43
+
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; }
48
45
 
49
- return data;
50
- }
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; }
51
47
 
52
- var DxcDateInput = _react["default"].forwardRef(function (_ref, ref) {
53
- var _ref$label = _ref.label,
54
- label = _ref$label === void 0 ? "" : _ref$label,
55
- _ref$name = _ref.name,
56
- name = _ref$name === void 0 ? "" : _ref$name,
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
+ var getValueForPicker = function getValueForPicker(value, format) {
51
+ return (0, _dayjs["default"])(value, format.toUpperCase(), true).format();
52
+ };
53
+
54
+ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
55
+ var label = _ref.label,
56
+ name = _ref.name,
57
+ _ref$defaultValue = _ref.defaultValue,
58
+ defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
57
59
  value = _ref.value,
58
60
  _ref$format = _ref.format,
59
61
  format = _ref$format === void 0 ? "dd-MM-yyyy" : _ref$format,
60
- _ref$helperText = _ref.helperText,
61
- helperText = _ref$helperText === void 0 ? "" : _ref$helperText,
62
+ helperText = _ref.helperText,
62
63
  _ref$placeholder = _ref.placeholder,
63
64
  placeholder = _ref$placeholder === void 0 ? false : _ref$placeholder,
64
- _ref$clearable = _ref.clearable,
65
- clearable = _ref$clearable === void 0 ? false : _ref$clearable,
66
- _ref$disabled = _ref.disabled,
67
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
68
- _ref$optional = _ref.optional,
69
- optional = _ref$optional === void 0 ? false : _ref$optional,
65
+ clearable = _ref.clearable,
66
+ disabled = _ref.disabled,
67
+ optional = _ref.optional,
70
68
  onChange = _ref.onChange,
71
69
  onBlur = _ref.onBlur,
72
- _ref$error = _ref.error,
73
- error = _ref$error === void 0 ? "" : _ref$error,
74
- _ref$autocomplete = _ref.autocomplete,
75
- autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
70
+ error = _ref.error,
71
+ autocomplete = _ref.autocomplete,
76
72
  margin = _ref.margin,
77
- _ref$size = _ref.size,
78
- size = _ref$size === void 0 ? "medium" : _ref$size,
79
- _ref$tabIndex = _ref.tabIndex,
80
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
73
+ size = _ref.size,
74
+ tabIndex = _ref.tabIndex;
81
75
 
82
- var _useState = (0, _react.useState)(""),
76
+ var _useState = (0, _react.useState)(defaultValue),
83
77
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
84
78
  innerValue = _useState2[0],
85
79
  setInnerValue = _useState2[1];
@@ -95,6 +89,8 @@ var DxcDateInput = _react["default"].forwardRef(function (_ref, ref) {
95
89
  setAnchorEl = _useState6[1];
96
90
 
97
91
  var colorsTheme = (0, _useTheme["default"])();
92
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
93
+ var refDate = ref || (0, _react.useRef)(null);
98
94
 
99
95
  var handleCalendarOnKeyDown = function handleCalendarOnKeyDown(event) {
100
96
  switch (event.keyCode) {
@@ -107,12 +103,13 @@ var DxcDateInput = _react["default"].forwardRef(function (_ref, ref) {
107
103
  };
108
104
 
109
105
  var handleCalendarOnClick = function handleCalendarOnClick(newDate) {
110
- var newValue = (0, _moment["default"])(newDate).format(format.toUpperCase());
106
+ var newValue = (0, _dayjs["default"])(newDate).format(format.toUpperCase());
111
107
  value !== null && value !== void 0 ? value : setInnerValue(newValue);
112
- onChange === null || onChange === void 0 ? void 0 : onChange({
108
+ newDate !== null && newDate !== void 0 && newDate.toJSON() ? onChange === null || onChange === void 0 ? void 0 : onChange({
113
109
  value: newValue,
114
- error: null,
115
- date: newDate && newDate.toJSON() ? newDate : null
110
+ date: newDate
111
+ }) : onChange === null || onChange === void 0 ? void 0 : onChange({
112
+ value: newValue
116
113
  });
117
114
  };
118
115
 
@@ -120,36 +117,39 @@ var DxcDateInput = _react["default"].forwardRef(function (_ref, ref) {
120
117
  var newValue = _ref2.value,
121
118
  inputError = _ref2.error;
122
119
  value !== null && value !== void 0 ? value : setInnerValue(newValue);
123
- var momentDate = (0, _moment["default"])(newValue, format.toUpperCase(), true);
124
- var invalidDateMessage = newValue !== "" && !momentDate.isValid() ? "Invalid date." : null;
125
- onChange === null || onChange === void 0 ? void 0 : onChange({
120
+ var dayjsDate = (0, _dayjs["default"])(newValue, format.toUpperCase(), true);
121
+ var invalidDateMessage = newValue !== "" && !dayjsDate.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
122
+ var callbackParams = inputError || invalidDateMessage ? {
126
123
  value: newValue,
127
- error: inputError || invalidDateMessage,
128
- date: momentDate.isValid() ? momentDate._d : null
129
- });
124
+ error: inputError || invalidDateMessage
125
+ } : {
126
+ value: newValue
127
+ };
128
+ dayjsDate.isValid() ? onChange === null || onChange === void 0 ? void 0 : onChange(_objectSpread(_objectSpread({}, callbackParams), {}, {
129
+ date: dayjsDate.toDate()
130
+ })) : onChange === null || onChange === void 0 ? void 0 : onChange(callbackParams);
130
131
  };
131
132
 
132
133
  var handleIOnBlur = function handleIOnBlur(_ref3) {
133
134
  var value = _ref3.value,
134
135
  inputError = _ref3.error;
135
- var momentDate = (0, _moment["default"])(value, format.toUpperCase(), true);
136
- var invalidDateMessage = value !== "" && !momentDate.isValid() ? "Invalid date." : null;
137
- onBlur === null || onBlur === void 0 ? void 0 : onBlur({
136
+ var dayjsDate = (0, _dayjs["default"])(value, format.toUpperCase(), true);
137
+ var invalidDateMessage = value !== "" && !dayjsDate.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
138
+ var callbackParams = inputError || invalidDateMessage ? {
138
139
  value: value,
139
- error: inputError || invalidDateMessage,
140
- date: momentDate.isValid() ? momentDate._d : null
141
- });
142
- };
143
-
144
- var getValueForPicker = function getValueForPicker() {
145
- return (0, _moment["default"])(value !== null && value !== void 0 ? value : innerValue, format.toUpperCase(), true).format();
140
+ error: inputError || invalidDateMessage
141
+ } : {
142
+ value: value
143
+ };
144
+ dayjsDate.isValid() ? onBlur === null || onBlur === void 0 ? void 0 : onBlur(_objectSpread(_objectSpread({}, callbackParams), {}, {
145
+ date: dayjsDate.toDate()
146
+ })) : onBlur === null || onBlur === void 0 ? void 0 : onBlur(callbackParams);
146
147
  };
147
148
 
148
- var openCalendar = function openCalendar(event) {
149
- if (event) {
150
- setIsOpen(!isOpen);
151
- setAnchorEl(event.currentTarget);
152
- }
149
+ var openCalendar = function openCalendar() {
150
+ var dateBtn = refDate.current.getElementsByTagName("button")[0];
151
+ setIsOpen(!isOpen);
152
+ setAnchorEl(dateBtn);
153
153
  };
154
154
 
155
155
  var closeCalendar = function closeCalendar() {
@@ -158,16 +158,16 @@ var DxcDateInput = _react["default"].forwardRef(function (_ref, ref) {
158
158
 
159
159
  var calendarAction = {
160
160
  onClick: openCalendar,
161
- icon: _react["default"].createElement("svg", {
161
+ icon: /*#__PURE__*/_react["default"].createElement("svg", {
162
162
  xmlns: "http://www.w3.org/2000/svg",
163
163
  height: "24",
164
164
  viewBox: "0 0 24 24",
165
165
  width: "24",
166
166
  fill: "currentColor"
167
- }, _react["default"].createElement("path", {
167
+ }, /*#__PURE__*/_react["default"].createElement("path", {
168
168
  d: "M0 0h24v24H0z",
169
169
  fill: "none"
170
- }), _react["default"].createElement("path", {
170
+ }), /*#__PURE__*/_react["default"].createElement("path", {
171
171
  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"
172
172
  }))
173
173
  };
@@ -308,15 +308,16 @@ var DxcDateInput = _react["default"].forwardRef(function (_ref, ref) {
308
308
  }
309
309
  }
310
310
  });
311
- return _react["default"].createElement(_styledComponents.ThemeProvider, {
311
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
312
312
  theme: colorsTheme
313
- }, _react["default"].createElement(_core.MuiThemeProvider, {
313
+ }, /*#__PURE__*/_react["default"].createElement(_core.MuiThemeProvider, {
314
314
  theme: dateTheme
315
- }, _react["default"].createElement(_pickers.MuiPickersUtilsProvider, {
316
- utils: _dateFns["default"]
317
- }, _react["default"].createElement(StyledDPicker, null, _react["default"].createElement(_TextInput["default"], {
315
+ }, /*#__PURE__*/_react["default"].createElement(_pickers.MuiPickersUtilsProvider, {
316
+ utils: _dayjs2["default"]
317
+ }, /*#__PURE__*/_react["default"].createElement(StyledDPicker, null, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
318
318
  label: label,
319
319
  name: name,
320
+ defaultValue: defaultValue,
320
321
  value: value !== null && value !== void 0 ? value : innerValue,
321
322
  helperText: helperText,
322
323
  placeholder: placeholder ? format.toUpperCase() : null,
@@ -331,8 +332,8 @@ var DxcDateInput = _react["default"].forwardRef(function (_ref, ref) {
331
332
  margin: margin,
332
333
  size: size,
333
334
  tabIndex: tabIndex,
334
- ref: ref
335
- }), _react["default"].createElement(_Popover["default"], {
335
+ ref: refDate
336
+ }), /*#__PURE__*/_react["default"].createElement(_Popover["default"], {
336
337
  onKeyDown: handleCalendarOnKeyDown,
337
338
  open: isOpen,
338
339
  anchorEl: anchorEl,
@@ -349,14 +350,14 @@ var DxcDateInput = _react["default"].forwardRef(function (_ref, ref) {
349
350
  marginTop: "10px"
350
351
  }
351
352
  }
352
- }, _react["default"].createElement(_ClickAwayListener["default"], {
353
+ }, /*#__PURE__*/_react["default"].createElement(_ClickAwayListener["default"], {
353
354
  onClickAway: closeCalendar
354
- }, _react["default"].createElement(_core.Paper, {
355
+ }, /*#__PURE__*/_react["default"].createElement(_core.Paper, {
355
356
  role: "dialog",
356
357
  "aria-modal": "true"
357
- }, _react["default"].createElement(_pickers.DatePicker, {
358
+ }, /*#__PURE__*/_react["default"].createElement(_pickers.DatePicker, {
358
359
  variant: "static",
359
- value: getValueForPicker(),
360
+ value: getValueForPicker(value !== null && value !== void 0 ? value : innerValue, format),
360
361
  onChange: function onChange(date) {
361
362
  return handleCalendarOnClick(date);
362
363
  },
@@ -365,36 +366,7 @@ var DxcDateInput = _react["default"].forwardRef(function (_ref, ref) {
365
366
  }))))))));
366
367
  });
367
368
 
368
- var sizes = {
369
- medium: "360px",
370
- large: "480px",
371
- fillParent: "100%"
372
- };
369
+ var StyledDPicker = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])([""])));
373
370
 
374
- var StyledDPicker = _styledComponents["default"].div(_templateObject());
375
-
376
- DxcDateInput.propTypes = {
377
- label: _propTypes["default"].string,
378
- name: _propTypes["default"].string,
379
- value: _propTypes["default"].string,
380
- format: _propTypes["default"].string,
381
- helperText: _propTypes["default"].string,
382
- placeholder: _propTypes["default"].bool,
383
- clearable: _propTypes["default"].bool,
384
- disabled: _propTypes["default"].bool,
385
- optional: _propTypes["default"].bool,
386
- onChange: _propTypes["default"].func,
387
- onBlur: _propTypes["default"].func,
388
- error: _propTypes["default"].string,
389
- autocomplete: _propTypes["default"].string,
390
- size: _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(sizes))),
391
- margin: _propTypes["default"].oneOfType([_propTypes["default"].shape({
392
- top: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
393
- bottom: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
394
- left: _propTypes["default"].oneOf(Object.keys(_variables.spaces)),
395
- right: _propTypes["default"].oneOf(Object.keys(_variables.spaces))
396
- }), _propTypes["default"].oneOf((0, _toConsumableArray2["default"])(Object.keys(_variables.spaces)))]),
397
- tabIndex: _propTypes["default"].number
398
- };
399
371
  var _default = DxcDateInput;
400
372
  exports["default"] = _default;
@@ -0,0 +1,138 @@
1
+ import React from "react";
2
+ import { userEvent, within, fireEvent, screen } from "@storybook/testing-library";
3
+ import DxcDateInput from "./DateInput";
4
+ import Title from "../../.storybook/components/Title";
5
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
6
+ import { BackgroundColorProvider } from "../BackgroundColorContext";
7
+ import DarkContainer from "../../.storybook/components/DarkSection";
8
+
9
+ export default {
10
+ title: "Date input",
11
+ component: DxcDateInput,
12
+ };
13
+
14
+ export const Chromatic = () => (
15
+ <>
16
+ <ExampleContainer>
17
+ <Title title="Complete date input" theme="light" level={4} />
18
+ <DxcDateInput label="Date input" helperText="Help message" format="dd/mm/yy" placeholder optional />
19
+ </ExampleContainer>
20
+ <ExampleContainer>
21
+ <Title title="Disabled" theme="light" level={4} />
22
+ <DxcDateInput label="Disabled date input" helperText="Help message" defaultValue="06-04-2027" clearable disabled />
23
+ </ExampleContainer>
24
+ <ExampleContainer>
25
+ <Title title="Invalid" theme="light" level={4} />
26
+ <DxcDateInput label="Error date input" error="Error message." placeholder />
27
+ </ExampleContainer>
28
+ <ExampleContainer>
29
+ <Title title="Relation between icons" theme="light" level={4} />
30
+ <DxcDateInput label="Error date input" error="Error message." defaultValue="06-04-2027" clearable />
31
+ </ExampleContainer>
32
+ <BackgroundColorProvider color="#333333">
33
+ <DarkContainer>
34
+ <Title title="Dark" theme="dark" level={2} />
35
+ <ExampleContainer>
36
+ <Title title="Complete date input" theme="dark" level={4} />
37
+ <DxcDateInput label="Date input" helperText="Help message" format="yyyy/dd/mm" placeholder optional />
38
+ </ExampleContainer>
39
+ <ExampleContainer>
40
+ <Title title="Disabled" theme="dark" level={4} />
41
+ <DxcDateInput label="Disabled Date input" helperText="Help message" defaultValue="06-04-2027" clearable disabled />
42
+ </ExampleContainer>
43
+ <ExampleContainer>
44
+ <Title title="Invalid" theme="dark" level={4} />
45
+ <DxcDateInput label="Error date input" error="Error message." placeholder />
46
+ </ExampleContainer>
47
+ <ExampleContainer>
48
+ <Title title="Relation between icons" theme="dark" level={4} />
49
+ <DxcDateInput label="Error date input" defaultValue="06-04-2027" error="Error message." clearable />
50
+ </ExampleContainer>
51
+ </DarkContainer>
52
+ </BackgroundColorProvider>
53
+ <Title title="Margins" theme="light" level={2} />
54
+ <ExampleContainer>
55
+ <Title title="Xxsmall" theme="light" level={4} />
56
+ <DxcDateInput label="Xxsmall" margin="xxsmall" />
57
+ </ExampleContainer>
58
+ <ExampleContainer>
59
+ <Title title="Xsmall" theme="light" level={4} />
60
+ <DxcDateInput label="Xsmall" margin="xsmall" />
61
+ </ExampleContainer>
62
+ <ExampleContainer>
63
+ <Title title="Small" theme="light" level={4} />
64
+ <DxcDateInput label="Small" margin="small" />
65
+ </ExampleContainer>
66
+ <ExampleContainer>
67
+ <Title title="Medium" theme="light" level={4} />
68
+ <DxcDateInput label="Medium" margin="medium" />
69
+ </ExampleContainer>
70
+ <ExampleContainer>
71
+ <Title title="Large" theme="light" level={4} />
72
+ <DxcDateInput label="Large" margin="large" />
73
+ </ExampleContainer>
74
+ <ExampleContainer>
75
+ <Title title="Xlarge" theme="light" level={4} />
76
+ <DxcDateInput label="Xlarge" margin="xlarge" />
77
+ </ExampleContainer>
78
+ <ExampleContainer>
79
+ <Title title="Xxlarge" theme="light" level={4} />
80
+ <DxcDateInput label="Xxlarge" margin="xxlarge" />
81
+ </ExampleContainer>
82
+ <Title title="Sizes" theme="light" level={2} />
83
+ <ExampleContainer>
84
+ <Title title="Medium size" theme="light" level={4} />
85
+ <DxcDateInput label="Medium" size="medium" />
86
+ </ExampleContainer>
87
+ <ExampleContainer>
88
+ <Title title="Large size" theme="light" level={4} />
89
+ <DxcDateInput label="Large" size="large" />
90
+ </ExampleContainer>
91
+ <ExampleContainer>
92
+ <Title title="FillParent size" theme="light" level={4} />
93
+ <DxcDateInput label="FillParent" size="fillParent" />
94
+ </ExampleContainer>
95
+ </>
96
+ );
97
+
98
+ const DatePicker = () => (
99
+ <ExampleContainer expanded>
100
+ <Title title="Show date input" theme="light" level={4} />
101
+ <DxcDateInput label="Date input" defaultValue="10-06-2023" />
102
+ </ExampleContainer>
103
+ );
104
+
105
+ export const ShowDatePicker = DatePicker.bind({});
106
+ ShowDatePicker.play = async ({ canvasElement }) => {
107
+ const canvas = within(canvasElement);
108
+ const dateBtn = canvas.getByRole("button");
109
+ await userEvent.click(dateBtn);
110
+ await userEvent.tab();
111
+ };
112
+
113
+ const YearPicker = () => (
114
+ <ExampleContainer expanded>
115
+ <Title title="Show date input" theme="light" level={4} />
116
+ <DxcDateInput label="Date input" defaultValue="10-06-2023" />
117
+ </ExampleContainer>
118
+ );
119
+
120
+ export const ShowYearPicker = YearPicker.bind({});
121
+ ShowYearPicker.play = async () => {
122
+ await fireEvent.click(screen.getByRole("button"));
123
+ await fireEvent.click(screen.getByText("2023"));
124
+ };
125
+
126
+ const YearPickerFocus = () => (
127
+ <ExampleContainer expanded>
128
+ <Title title="Show date input" theme="light" level={4} />
129
+ <DxcDateInput label="Date input" defaultValue="10-06-2023" />
130
+ </ExampleContainer>
131
+ );
132
+
133
+ export const ShowYearPickerFocus = YearPickerFocus.bind({});
134
+ ShowYearPickerFocus.play = async () => {
135
+ await fireEvent.click(screen.getByRole("button"));
136
+ await fireEvent.click(screen.getByText("2023"));
137
+ await screen.getByText("2021").focus();
138
+ };