@dxc-technology/halstack-react 0.0.0-12908ef → 0.0.0-1300a09

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 (399) hide show
  1. package/BackgroundColorContext.d.ts +10 -0
  2. package/BackgroundColorContext.js +47 -0
  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 +226 -0
  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 +169 -0
  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/{dist/alert → 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 +61 -0
  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 +116 -0
  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/{dist/button → 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 +161 -0
  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/{dist/checkbox → checkbox}/Checkbox.js +55 -98
  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 +161 -0
  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/{dist/common → common}/OpenSans.css +0 -0
  64. package/{dist/common → common}/RequiredComponent.js +3 -11
  65. package/{dist/common → common}/fonts/OpenSans-Bold.ttf +0 -0
  66. package/{dist/common → common}/fonts/OpenSans-BoldItalic.ttf +0 -0
  67. package/{dist/common → common}/fonts/OpenSans-ExtraBold.ttf +0 -0
  68. package/{dist/common → common}/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  69. package/{dist/common → common}/fonts/OpenSans-Italic.ttf +0 -0
  70. package/{dist/common → common}/fonts/OpenSans-Light.ttf +0 -0
  71. package/{dist/common → common}/fonts/OpenSans-LightItalic.ttf +0 -0
  72. package/{dist/common → common}/fonts/OpenSans-Regular.ttf +0 -0
  73. package/{dist/common → common}/fonts/OpenSans-SemiBold.ttf +0 -0
  74. package/{dist/common → common}/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  75. package/{dist/common → common}/utils.js +0 -0
  76. package/{dist/common → common}/variables.js +319 -420
  77. package/date-input/DateInput.d.ts +4 -0
  78. package/{dist/date-input → date-input}/DateInput.js +80 -108
  79. package/date-input/DateInput.stories.tsx +138 -0
  80. package/date-input/DateInput.test.js +479 -0
  81. package/date-input/types.d.ts +107 -0
  82. package/date-input/types.js +5 -0
  83. package/dialog/Dialog.d.ts +4 -0
  84. package/dialog/Dialog.js +138 -0
  85. package/dialog/Dialog.stories.tsx +212 -0
  86. package/dialog/Dialog.test.js +40 -0
  87. package/dialog/types.d.ts +43 -0
  88. package/dialog/types.js +5 -0
  89. package/dropdown/Dropdown.d.ts +4 -0
  90. package/{dist/dropdown → dropdown}/Dropdown.js +54 -207
  91. package/dropdown/Dropdown.stories.tsx +249 -0
  92. package/dropdown/Dropdown.test.js +189 -0
  93. package/dropdown/types.d.ts +80 -0
  94. package/dropdown/types.js +5 -0
  95. package/file-input/FileInput.d.ts +4 -0
  96. package/file-input/FileInput.js +593 -0
  97. package/file-input/FileInput.stories.tsx +507 -0
  98. package/file-input/FileInput.test.js +457 -0
  99. package/file-input/FileItem.d.ts +14 -0
  100. package/file-input/FileItem.js +186 -0
  101. package/file-input/types.d.ts +112 -0
  102. package/file-input/types.js +5 -0
  103. package/footer/Footer.d.ts +4 -0
  104. package/footer/Footer.js +185 -0
  105. package/footer/Footer.stories.tsx +130 -0
  106. package/footer/Footer.test.js +109 -0
  107. package/footer/Icons.d.ts +2 -0
  108. package/{dist/footer → footer}/Icons.js +16 -16
  109. package/footer/types.d.ts +65 -0
  110. package/footer/types.js +5 -0
  111. package/header/Header.d.ts +7 -0
  112. package/header/Header.js +303 -0
  113. package/header/Header.stories.tsx +172 -0
  114. package/header/Header.test.js +79 -0
  115. package/header/Icons.d.ts +2 -0
  116. package/{dist/header → header}/Icons.js +7 -32
  117. package/header/types.d.ts +47 -0
  118. package/header/types.js +5 -0
  119. package/heading/Heading.d.ts +4 -0
  120. package/{dist/heading → heading}/Heading.js +25 -96
  121. package/heading/Heading.stories.tsx +54 -0
  122. package/heading/Heading.test.js +186 -0
  123. package/heading/types.d.ts +33 -0
  124. package/heading/types.js +5 -0
  125. package/inset/Inset.d.ts +3 -0
  126. package/inset/Inset.js +51 -0
  127. package/inset/Inset.stories.tsx +229 -0
  128. package/inset/types.d.ts +37 -0
  129. package/inset/types.js +5 -0
  130. package/layout/ApplicationLayout.d.ts +11 -0
  131. package/layout/ApplicationLayout.js +199 -0
  132. package/layout/ApplicationLayout.stories.tsx +126 -0
  133. package/layout/Icons.d.ts +5 -0
  134. package/{dist/layout → layout}/Icons.js +19 -8
  135. package/layout/SidenavContext.d.ts +5 -0
  136. package/layout/SidenavContext.js +19 -0
  137. package/layout/types.d.ts +52 -0
  138. package/layout/types.js +5 -0
  139. package/link/Link.d.ts +4 -0
  140. package/link/Link.js +136 -0
  141. package/link/Link.stories.tsx +186 -0
  142. package/link/Link.test.js +83 -0
  143. package/link/types.d.ts +54 -0
  144. package/link/types.js +5 -0
  145. package/list/List.d.ts +4 -0
  146. package/list/List.js +47 -0
  147. package/list/List.stories.tsx +89 -0
  148. package/list/types.d.ts +7 -0
  149. package/list/types.js +5 -0
  150. package/main.d.ts +47 -0
  151. package/{dist/main.js → main.js} +133 -99
  152. package/number-input/NumberInput.d.ts +4 -0
  153. package/number-input/NumberInput.js +76 -0
  154. package/number-input/NumberInput.stories.tsx +115 -0
  155. package/number-input/NumberInput.test.js +506 -0
  156. package/number-input/NumberInputContext.d.ts +4 -0
  157. package/{dist/number-input → number-input}/NumberInputContext.js +5 -2
  158. package/number-input/numberInputContextTypes.d.ts +19 -0
  159. package/number-input/numberInputContextTypes.js +5 -0
  160. package/number-input/types.d.ts +124 -0
  161. package/number-input/types.js +5 -0
  162. package/package.json +35 -20
  163. package/{dist/paginator → paginator}/Icons.js +9 -9
  164. package/paginator/Paginator.d.ts +4 -0
  165. package/paginator/Paginator.js +171 -0
  166. package/paginator/Paginator.stories.tsx +63 -0
  167. package/paginator/Paginator.test.js +308 -0
  168. package/paginator/types.d.ts +38 -0
  169. package/paginator/types.js +5 -0
  170. package/password-input/PasswordInput.d.ts +4 -0
  171. package/{dist/password-input → password-input}/PasswordInput.js +45 -77
  172. package/password-input/PasswordInput.stories.tsx +131 -0
  173. package/password-input/PasswordInput.test.js +180 -0
  174. package/password-input/types.d.ts +110 -0
  175. package/password-input/types.js +5 -0
  176. package/progress-bar/ProgressBar.d.ts +4 -0
  177. package/{dist/progress-bar → progress-bar}/ProgressBar.js +23 -95
  178. package/progress-bar/ProgressBar.stories.jsx +58 -0
  179. package/progress-bar/ProgressBar.test.js +65 -0
  180. package/progress-bar/types.d.ts +37 -0
  181. package/progress-bar/types.js +5 -0
  182. package/quick-nav/QuickNav.d.ts +4 -0
  183. package/quick-nav/QuickNav.js +116 -0
  184. package/quick-nav/QuickNav.stories.tsx +264 -0
  185. package/quick-nav/types.d.ts +21 -0
  186. package/quick-nav/types.js +5 -0
  187. package/radio-group/Radio.d.ts +4 -0
  188. package/radio-group/Radio.js +141 -0
  189. package/radio-group/RadioGroup.d.ts +4 -0
  190. package/radio-group/RadioGroup.js +283 -0
  191. package/radio-group/RadioGroup.stories.tsx +100 -0
  192. package/radio-group/RadioGroup.test.js +695 -0
  193. package/radio-group/types.d.ts +114 -0
  194. package/radio-group/types.js +5 -0
  195. package/resultsetTable/ResultsetTable.d.ts +4 -0
  196. package/{dist/resultsetTable → resultsetTable}/ResultsetTable.js +43 -147
  197. package/resultsetTable/ResultsetTable.stories.tsx +275 -0
  198. package/resultsetTable/ResultsetTable.test.js +348 -0
  199. package/resultsetTable/types.d.ts +67 -0
  200. package/resultsetTable/types.js +5 -0
  201. package/row/Row.d.ts +3 -0
  202. package/row/Row.js +127 -0
  203. package/row/Row.stories.tsx +237 -0
  204. package/row/types.d.ts +28 -0
  205. package/row/types.js +5 -0
  206. package/select/Icons.d.ts +10 -0
  207. package/select/Icons.js +93 -0
  208. package/select/Listbox.d.ts +4 -0
  209. package/select/Listbox.js +175 -0
  210. package/select/Option.d.ts +4 -0
  211. package/select/Option.js +110 -0
  212. package/select/Select.d.ts +4 -0
  213. package/select/Select.js +660 -0
  214. package/select/Select.stories.tsx +626 -0
  215. package/select/Select.test.js +2162 -0
  216. package/select/types.d.ts +212 -0
  217. package/select/types.js +5 -0
  218. package/sidenav/Sidenav.d.ts +9 -0
  219. package/sidenav/Sidenav.js +147 -0
  220. package/sidenav/Sidenav.stories.tsx +182 -0
  221. package/sidenav/Sidenav.test.js +56 -0
  222. package/sidenav/types.d.ts +50 -0
  223. package/sidenav/types.js +5 -0
  224. package/slider/Slider.d.ts +4 -0
  225. package/{dist/slider → slider}/Slider.js +76 -162
  226. package/slider/Slider.stories.tsx +177 -0
  227. package/slider/Slider.test.js +150 -0
  228. package/slider/types.d.ts +82 -0
  229. package/slider/types.js +5 -0
  230. package/spinner/Spinner.d.ts +4 -0
  231. package/spinner/Spinner.js +250 -0
  232. package/spinner/Spinner.stories.jsx +103 -0
  233. package/spinner/Spinner.test.js +64 -0
  234. package/spinner/types.d.ts +32 -0
  235. package/spinner/types.js +5 -0
  236. package/stack/Stack.d.ts +4 -0
  237. package/stack/Stack.js +56 -0
  238. package/stack/Stack.stories.tsx +263 -0
  239. package/stack/types.d.ts +32 -0
  240. package/stack/types.js +5 -0
  241. package/switch/Switch.d.ts +4 -0
  242. package/switch/Switch.js +195 -0
  243. package/switch/Switch.stories.tsx +160 -0
  244. package/switch/Switch.test.js +98 -0
  245. package/switch/types.d.ts +62 -0
  246. package/switch/types.js +5 -0
  247. package/table/Table.d.ts +4 -0
  248. package/{dist/table → table}/Table.js +12 -26
  249. package/table/Table.stories.jsx +277 -0
  250. package/table/Table.test.js +26 -0
  251. package/table/types.d.ts +21 -0
  252. package/table/types.js +5 -0
  253. package/tabs/Tabs.d.ts +4 -0
  254. package/tabs/Tabs.js +211 -0
  255. package/tabs/Tabs.stories.tsx +112 -0
  256. package/tabs/Tabs.test.js +140 -0
  257. package/tabs/types.d.ts +82 -0
  258. package/tabs/types.js +5 -0
  259. package/tabs-nav/NavTabs.d.ts +8 -0
  260. package/tabs-nav/NavTabs.js +125 -0
  261. package/tabs-nav/NavTabs.stories.tsx +170 -0
  262. package/tabs-nav/NavTabs.test.js +82 -0
  263. package/tabs-nav/Tab.d.ts +4 -0
  264. package/tabs-nav/Tab.js +132 -0
  265. package/tabs-nav/types.d.ts +53 -0
  266. package/tabs-nav/types.js +5 -0
  267. package/tag/Tag.d.ts +4 -0
  268. package/tag/Tag.js +183 -0
  269. package/tag/Tag.stories.tsx +142 -0
  270. package/tag/Tag.test.js +60 -0
  271. package/tag/types.d.ts +69 -0
  272. package/tag/types.js +5 -0
  273. package/text/Text.d.ts +7 -0
  274. package/text/Text.js +30 -0
  275. package/text/Text.stories.tsx +19 -0
  276. package/text-input/Suggestion.d.ts +4 -0
  277. package/text-input/Suggestion.js +55 -0
  278. package/text-input/TextInput.d.ts +4 -0
  279. package/{dist/text-input → text-input}/TextInput.js +284 -485
  280. package/text-input/TextInput.stories.tsx +474 -0
  281. package/text-input/TextInput.test.js +1712 -0
  282. package/text-input/types.d.ts +178 -0
  283. package/text-input/types.js +5 -0
  284. package/textarea/Textarea.d.ts +4 -0
  285. package/{dist/textarea → textarea}/Textarea.js +50 -142
  286. package/textarea/Textarea.stories.jsx +157 -0
  287. package/textarea/Textarea.test.js +437 -0
  288. package/textarea/types.d.ts +137 -0
  289. package/textarea/types.js +5 -0
  290. package/toggle-group/ToggleGroup.d.ts +4 -0
  291. package/{dist/toggle-group → toggle-group}/ToggleGroup.js +36 -148
  292. package/toggle-group/ToggleGroup.stories.tsx +173 -0
  293. package/toggle-group/ToggleGroup.test.js +156 -0
  294. package/toggle-group/types.d.ts +105 -0
  295. package/toggle-group/types.js +5 -0
  296. package/useTheme.d.ts +2 -0
  297. package/{dist/useTheme.js → useTheme.js} +2 -2
  298. package/useTranslatedLabels.d.ts +2 -0
  299. package/useTranslatedLabels.js +20 -0
  300. package/wizard/Wizard.d.ts +4 -0
  301. package/wizard/Wizard.js +292 -0
  302. package/wizard/Wizard.stories.tsx +214 -0
  303. package/wizard/Wizard.test.js +141 -0
  304. package/wizard/types.d.ts +64 -0
  305. package/wizard/types.js +5 -0
  306. package/README.md +0 -66
  307. package/babel.config.js +0 -8
  308. package/dist/BackgroundColorContext.js +0 -46
  309. package/dist/ThemeContext.js +0 -250
  310. package/dist/V3Textarea/V3Textarea.js +0 -264
  311. package/dist/accordion/Accordion.js +0 -353
  312. package/dist/accordion-group/AccordionGroup.js +0 -186
  313. package/dist/alert/index.d.ts +0 -51
  314. package/dist/badge/Badge.js +0 -63
  315. package/dist/box/Box.js +0 -156
  316. package/dist/card/Card.js +0 -254
  317. package/dist/chip/Chip.js +0 -265
  318. package/dist/date/Date.js +0 -379
  319. package/dist/date-input/index.d.ts +0 -95
  320. package/dist/dialog/Dialog.js +0 -218
  321. package/dist/file-input/FileInput.js +0 -644
  322. package/dist/file-input/FileItem.js +0 -280
  323. package/dist/file-input/index.d.ts +0 -81
  324. package/dist/footer/Footer.js +0 -421
  325. package/dist/header/Header.js +0 -470
  326. package/dist/input-text/Icons.js +0 -22
  327. package/dist/input-text/InputText.js +0 -705
  328. package/dist/layout/ApplicationLayout.js +0 -327
  329. package/dist/link/Link.js +0 -237
  330. package/dist/main.d.ts +0 -8
  331. package/dist/new-select/NewSelect.js +0 -836
  332. package/dist/new-select/index.d.ts +0 -53
  333. package/dist/number-input/NumberInput.js +0 -136
  334. package/dist/number-input/index.d.ts +0 -113
  335. package/dist/paginator/Paginator.js +0 -283
  336. package/dist/password-input/index.d.ts +0 -94
  337. package/dist/radio/Radio.js +0 -209
  338. package/dist/select/Select.js +0 -549
  339. package/dist/sidenav/Sidenav.js +0 -179
  340. package/dist/spinner/Spinner.js +0 -381
  341. package/dist/switch/Switch.js +0 -222
  342. package/dist/tabs/Tabs.js +0 -343
  343. package/dist/tag/Tag.js +0 -282
  344. package/dist/text-input/index.d.ts +0 -135
  345. package/dist/textarea/index.d.ts +0 -117
  346. package/dist/toggle/Toggle.js +0 -220
  347. package/dist/upload/Upload.js +0 -205
  348. package/dist/upload/buttons-upload/ButtonsUpload.js +0 -135
  349. package/dist/upload/buttons-upload/Icons.js +0 -40
  350. package/dist/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  351. package/dist/upload/dragAndDropArea/Icons.js +0 -39
  352. package/dist/upload/file-upload/FileToUpload.js +0 -189
  353. package/dist/upload/file-upload/Icons.js +0 -66
  354. package/dist/upload/files-upload/FilesToUpload.js +0 -123
  355. package/dist/upload/transaction/Icons.js +0 -160
  356. package/dist/upload/transaction/Transaction.js +0 -148
  357. package/dist/upload/transactions/Transactions.js +0 -138
  358. package/dist/wizard/Icons.js +0 -65
  359. package/dist/wizard/Wizard.js +0 -405
  360. package/test/Accordion.test.js +0 -33
  361. package/test/AccordionGroup.test.js +0 -125
  362. package/test/Alert.test.js +0 -53
  363. package/test/Box.test.js +0 -10
  364. package/test/Button.test.js +0 -18
  365. package/test/Card.test.js +0 -30
  366. package/test/Checkbox.test.js +0 -45
  367. package/test/Chip.test.js +0 -25
  368. package/test/Date.test.js +0 -397
  369. package/test/DateInput.test.js +0 -242
  370. package/test/Dialog.test.js +0 -23
  371. package/test/Dropdown.test.js +0 -145
  372. package/test/FileInput.test.js +0 -201
  373. package/test/Footer.test.js +0 -94
  374. package/test/Header.test.js +0 -34
  375. package/test/Heading.test.js +0 -83
  376. package/test/InputText.test.js +0 -248
  377. package/test/Link.test.js +0 -43
  378. package/test/NumberInput.test.js +0 -259
  379. package/test/Paginator.test.js +0 -177
  380. package/test/PasswordInput.test.js +0 -83
  381. package/test/ProgressBar.test.js +0 -35
  382. package/test/Radio.test.js +0 -37
  383. package/test/ResultsetTable.test.js +0 -329
  384. package/test/Select.test.js +0 -212
  385. package/test/Sidenav.test.js +0 -45
  386. package/test/Slider.test.js +0 -74
  387. package/test/Spinner.test.js +0 -32
  388. package/test/Switch.test.js +0 -45
  389. package/test/Table.test.js +0 -36
  390. package/test/Tabs.test.js +0 -109
  391. package/test/Tag.test.js +0 -32
  392. package/test/TextInput.test.js +0 -732
  393. package/test/Textarea.test.js +0 -193
  394. package/test/ToggleGroup.test.js +0 -85
  395. package/test/Upload.test.js +0 -60
  396. package/test/V3TextArea.test.js +0 -51
  397. package/test/Wizard.test.js +0 -130
  398. package/test/mocks/pngMock.js +0 -1
  399. package/test/mocks/svgMock.js +0 -1
@@ -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
+ };