@dxc-technology/halstack-react 0.0.0-da224ae → 0.0.0-da4b2be

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 (329) 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 +1 -1
  6. package/accordion/Accordion.js +118 -142
  7. package/accordion/Accordion.stories.tsx +395 -0
  8. package/accordion/Accordion.test.js +71 -0
  9. package/accordion/types.d.ts +9 -8
  10. package/accordion-group/AccordionGroup.d.ts +5 -4
  11. package/accordion-group/AccordionGroup.js +34 -76
  12. package/accordion-group/AccordionGroup.stories.tsx +251 -0
  13. package/accordion-group/AccordionGroup.test.js +126 -0
  14. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  15. package/accordion-group/AccordionGroupAccordion.js +43 -0
  16. package/accordion-group/types.d.ts +15 -8
  17. package/alert/Alert.js +11 -12
  18. package/alert/Alert.stories.tsx +28 -0
  19. package/alert/Alert.test.js +92 -0
  20. package/alert/types.d.ts +1 -1
  21. package/badge/Badge.d.ts +4 -0
  22. package/badge/Badge.js +6 -4
  23. package/badge/types.d.ts +5 -0
  24. package/bleed/Bleed.d.ts +3 -0
  25. package/bleed/Bleed.js +51 -0
  26. package/bleed/Bleed.stories.tsx +342 -0
  27. package/bleed/types.d.ts +37 -0
  28. package/bleed/types.js +5 -0
  29. package/box/Box.d.ts +1 -1
  30. package/box/Box.js +23 -55
  31. package/box/Box.stories.tsx +38 -51
  32. package/box/Box.test.js +18 -0
  33. package/box/types.d.ts +0 -15
  34. package/bulleted-list/BulletedList.d.ts +7 -0
  35. package/bulleted-list/BulletedList.js +125 -0
  36. package/bulleted-list/BulletedList.stories.tsx +206 -0
  37. package/bulleted-list/types.d.ts +38 -0
  38. package/bulleted-list/types.js +5 -0
  39. package/button/Button.d.ts +1 -1
  40. package/button/Button.js +61 -85
  41. package/button/Button.stories.tsx +163 -14
  42. package/button/Button.test.js +35 -0
  43. package/button/types.d.ts +8 -12
  44. package/card/Card.js +35 -40
  45. package/card/Card.stories.tsx +200 -0
  46. package/card/Card.test.js +50 -0
  47. package/card/ice-cream.jpg +0 -0
  48. package/card/types.d.ts +5 -6
  49. package/checkbox/Checkbox.d.ts +2 -2
  50. package/checkbox/Checkbox.js +108 -111
  51. package/checkbox/Checkbox.stories.tsx +198 -130
  52. package/checkbox/Checkbox.test.js +155 -0
  53. package/checkbox/types.d.ts +13 -5
  54. package/chip/Chip.d.ts +4 -0
  55. package/chip/Chip.js +37 -118
  56. package/chip/Chip.stories.tsx +123 -30
  57. package/chip/Chip.test.js +54 -0
  58. package/chip/types.d.ts +45 -0
  59. package/chip/types.js +5 -0
  60. package/common/OpenSans.css +68 -80
  61. package/common/coreTokens.d.ts +146 -0
  62. package/common/coreTokens.js +167 -0
  63. package/common/utils.d.ts +1 -0
  64. package/common/utils.js +4 -4
  65. package/common/variables.d.ts +1482 -0
  66. package/common/variables.js +1100 -1316
  67. package/date-input/Calendar.d.ts +4 -0
  68. package/date-input/Calendar.js +258 -0
  69. package/date-input/DateInput.js +174 -266
  70. package/date-input/DateInput.stories.tsx +199 -33
  71. package/date-input/DateInput.test.js +835 -0
  72. package/date-input/DatePicker.d.ts +4 -0
  73. package/date-input/DatePicker.js +146 -0
  74. package/date-input/Icons.d.ts +6 -0
  75. package/date-input/Icons.js +75 -0
  76. package/date-input/YearPicker.d.ts +4 -0
  77. package/date-input/YearPicker.js +126 -0
  78. package/date-input/types.d.ts +67 -9
  79. package/dialog/Dialog.d.ts +1 -1
  80. package/dialog/Dialog.js +69 -103
  81. package/dialog/Dialog.stories.tsx +154 -171
  82. package/dialog/Dialog.test.js +369 -0
  83. package/dialog/types.d.ts +0 -12
  84. package/dropdown/Dropdown.d.ts +1 -1
  85. package/dropdown/Dropdown.js +248 -277
  86. package/dropdown/Dropdown.stories.tsx +438 -0
  87. package/dropdown/Dropdown.test.js +586 -0
  88. package/dropdown/DropdownMenu.d.ts +4 -0
  89. package/dropdown/DropdownMenu.js +74 -0
  90. package/dropdown/DropdownMenuItem.d.ts +4 -0
  91. package/dropdown/DropdownMenuItem.js +79 -0
  92. package/dropdown/types.d.ts +28 -17
  93. package/file-input/FileInput.d.ts +4 -0
  94. package/file-input/FileInput.js +183 -168
  95. package/file-input/FileInput.stories.tsx +618 -0
  96. package/file-input/FileInput.test.js +457 -0
  97. package/file-input/FileItem.d.ts +4 -0
  98. package/file-input/FileItem.js +50 -81
  99. package/file-input/types.d.ts +129 -0
  100. package/file-input/types.js +5 -0
  101. package/flex/Flex.d.ts +4 -0
  102. package/flex/Flex.js +71 -0
  103. package/flex/Flex.stories.tsx +112 -0
  104. package/flex/types.d.ts +97 -0
  105. package/flex/types.js +5 -0
  106. package/footer/Footer.d.ts +1 -1
  107. package/footer/Footer.js +34 -117
  108. package/footer/Footer.stories.tsx +228 -0
  109. package/footer/Footer.test.js +97 -0
  110. package/footer/Icons.d.ts +2 -0
  111. package/footer/Icons.js +4 -4
  112. package/footer/types.d.ts +23 -18
  113. package/grid/Grid.d.ts +7 -0
  114. package/grid/Grid.js +91 -0
  115. package/grid/Grid.stories.tsx +219 -0
  116. package/grid/types.d.ts +115 -0
  117. package/grid/types.js +5 -0
  118. package/header/Header.d.ts +3 -2
  119. package/header/Header.js +110 -131
  120. package/header/Header.stories.tsx +315 -0
  121. package/header/Header.test.js +79 -0
  122. package/header/Icons.d.ts +2 -0
  123. package/header/Icons.js +2 -2
  124. package/header/types.d.ts +5 -2
  125. package/heading/Heading.js +2 -2
  126. package/heading/Heading.stories.tsx +54 -0
  127. package/heading/Heading.test.js +186 -0
  128. package/inset/Inset.d.ts +3 -0
  129. package/inset/Inset.js +51 -0
  130. package/inset/Inset.stories.tsx +230 -0
  131. package/inset/types.d.ts +37 -0
  132. package/inset/types.js +5 -0
  133. package/layout/ApplicationLayout.d.ts +20 -0
  134. package/layout/ApplicationLayout.js +72 -136
  135. package/layout/ApplicationLayout.stories.tsx +162 -0
  136. package/layout/Icons.d.ts +5 -0
  137. package/layout/Icons.js +13 -2
  138. package/layout/SidenavContext.d.ts +5 -0
  139. package/layout/SidenavContext.js +19 -0
  140. package/layout/types.d.ts +41 -0
  141. package/layout/types.js +5 -0
  142. package/link/Link.d.ts +3 -2
  143. package/link/Link.js +64 -89
  144. package/link/Link.stories.tsx +199 -16
  145. package/link/Link.test.js +81 -0
  146. package/link/types.d.ts +7 -27
  147. package/main.d.ts +13 -12
  148. package/main.js +68 -54
  149. package/nav-tabs/NavTabs.d.ts +8 -0
  150. package/nav-tabs/NavTabs.js +122 -0
  151. package/nav-tabs/NavTabs.stories.tsx +274 -0
  152. package/nav-tabs/NavTabs.test.js +82 -0
  153. package/nav-tabs/Tab.d.ts +4 -0
  154. package/nav-tabs/Tab.js +146 -0
  155. package/nav-tabs/types.d.ts +52 -0
  156. package/nav-tabs/types.js +5 -0
  157. package/number-input/NumberInput.js +14 -24
  158. package/number-input/NumberInput.stories.tsx +5 -5
  159. package/number-input/NumberInput.test.js +542 -0
  160. package/number-input/NumberInputContext.d.ts +4 -0
  161. package/number-input/NumberInputContext.js +5 -2
  162. package/number-input/numberInputContextTypes.d.ts +19 -0
  163. package/number-input/numberInputContextTypes.js +5 -0
  164. package/number-input/types.d.ts +17 -10
  165. package/package.json +22 -23
  166. package/paginator/Icons.d.ts +5 -0
  167. package/paginator/Icons.js +16 -28
  168. package/paginator/Paginator.js +22 -57
  169. package/paginator/Paginator.stories.tsx +24 -0
  170. package/paginator/Paginator.test.js +318 -0
  171. package/paragraph/Paragraph.d.ts +5 -0
  172. package/paragraph/Paragraph.js +38 -0
  173. package/paragraph/Paragraph.stories.tsx +44 -0
  174. package/password-input/PasswordInput.js +23 -19
  175. package/password-input/PasswordInput.stories.tsx +3 -3
  176. package/password-input/PasswordInput.test.js +181 -0
  177. package/password-input/types.d.ts +29 -19
  178. package/progress-bar/ProgressBar.js +63 -57
  179. package/progress-bar/ProgressBar.stories.jsx +47 -12
  180. package/progress-bar/ProgressBar.test.js +110 -0
  181. package/quick-nav/QuickNav.d.ts +4 -0
  182. package/quick-nav/QuickNav.js +117 -0
  183. package/quick-nav/QuickNav.stories.tsx +356 -0
  184. package/quick-nav/types.d.ts +21 -0
  185. package/quick-nav/types.js +5 -0
  186. package/radio-group/Radio.d.ts +4 -0
  187. package/radio-group/Radio.js +156 -0
  188. package/radio-group/RadioGroup.d.ts +4 -0
  189. package/radio-group/RadioGroup.js +281 -0
  190. package/radio-group/RadioGroup.stories.tsx +214 -0
  191. package/radio-group/RadioGroup.test.js +722 -0
  192. package/radio-group/types.d.ts +114 -0
  193. package/radio-group/types.js +5 -0
  194. package/resultsetTable/Icons.d.ts +7 -0
  195. package/resultsetTable/Icons.js +51 -0
  196. package/resultsetTable/ResultsetTable.d.ts +4 -0
  197. package/resultsetTable/ResultsetTable.js +54 -133
  198. package/resultsetTable/ResultsetTable.stories.tsx +300 -0
  199. package/resultsetTable/ResultsetTable.test.js +325 -0
  200. package/resultsetTable/types.d.ts +67 -0
  201. package/resultsetTable/types.js +5 -0
  202. package/select/Icons.d.ts +10 -0
  203. package/select/Icons.js +93 -0
  204. package/select/Listbox.d.ts +4 -0
  205. package/select/Listbox.js +169 -0
  206. package/select/Option.d.ts +4 -0
  207. package/select/Option.js +97 -0
  208. package/select/Select.d.ts +4 -0
  209. package/select/Select.js +202 -401
  210. package/select/Select.stories.tsx +600 -201
  211. package/select/Select.test.js +2228 -0
  212. package/select/types.d.ts +210 -0
  213. package/select/types.js +5 -0
  214. package/sidenav/Icons.d.ts +7 -0
  215. package/sidenav/Icons.js +51 -0
  216. package/sidenav/Sidenav.d.ts +6 -5
  217. package/sidenav/Sidenav.js +148 -46
  218. package/sidenav/Sidenav.stories.tsx +282 -0
  219. package/sidenav/Sidenav.test.js +44 -0
  220. package/sidenav/types.d.ts +52 -26
  221. package/slider/Slider.d.ts +2 -2
  222. package/slider/Slider.js +124 -99
  223. package/slider/Slider.stories.tsx +72 -9
  224. package/slider/Slider.test.js +250 -0
  225. package/slider/types.d.ts +8 -0
  226. package/spinner/Spinner.js +20 -26
  227. package/spinner/Spinner.stories.jsx +53 -26
  228. package/spinner/Spinner.test.js +64 -0
  229. package/switch/Switch.d.ts +2 -2
  230. package/switch/Switch.js +153 -70
  231. package/switch/Switch.stories.tsx +54 -43
  232. package/switch/Switch.test.js +225 -0
  233. package/switch/types.d.ts +10 -2
  234. package/table/Table.js +6 -6
  235. package/table/Table.stories.jsx +81 -1
  236. package/table/Table.test.js +26 -0
  237. package/tabs/Tab.d.ts +4 -0
  238. package/tabs/Tab.js +132 -0
  239. package/tabs/Tabs.d.ts +1 -1
  240. package/tabs/Tabs.js +362 -112
  241. package/tabs/Tabs.stories.tsx +226 -0
  242. package/tabs/Tabs.test.js +350 -0
  243. package/tabs/types.d.ts +39 -18
  244. package/tag/Tag.d.ts +1 -1
  245. package/tag/Tag.js +25 -37
  246. package/tag/Tag.stories.tsx +38 -28
  247. package/tag/Tag.test.js +60 -0
  248. package/tag/types.d.ts +23 -14
  249. package/text-input/Icons.d.ts +8 -0
  250. package/text-input/Icons.js +60 -0
  251. package/text-input/Suggestion.d.ts +4 -0
  252. package/text-input/Suggestion.js +84 -0
  253. package/text-input/Suggestions.d.ts +4 -0
  254. package/text-input/Suggestions.js +134 -0
  255. package/text-input/TextInput.d.ts +4 -0
  256. package/text-input/TextInput.js +236 -388
  257. package/text-input/TextInput.stories.tsx +569 -0
  258. package/text-input/TextInput.test.js +1723 -0
  259. package/text-input/types.d.ts +197 -0
  260. package/text-input/types.js +5 -0
  261. package/textarea/Textarea.d.ts +4 -0
  262. package/textarea/Textarea.js +41 -82
  263. package/textarea/Textarea.stories.jsx +96 -15
  264. package/textarea/Textarea.test.js +435 -0
  265. package/textarea/types.d.ts +137 -0
  266. package/textarea/types.js +5 -0
  267. package/toggle-group/ToggleGroup.d.ts +4 -0
  268. package/toggle-group/ToggleGroup.js +24 -49
  269. package/toggle-group/ToggleGroup.stories.tsx +69 -32
  270. package/toggle-group/ToggleGroup.test.js +156 -0
  271. package/toggle-group/types.d.ts +105 -0
  272. package/toggle-group/types.js +5 -0
  273. package/typography/Typography.d.ts +4 -0
  274. package/typography/Typography.js +32 -0
  275. package/typography/Typography.stories.tsx +198 -0
  276. package/typography/types.d.ts +18 -0
  277. package/typography/types.js +5 -0
  278. package/useTheme.d.ts +1235 -0
  279. package/useTheme.js +3 -3
  280. package/useTranslatedLabels.d.ts +85 -0
  281. package/useTranslatedLabels.js +20 -0
  282. package/utils/BaseTypography.d.ts +21 -0
  283. package/utils/BaseTypography.js +108 -0
  284. package/utils/FocusLock.d.ts +13 -0
  285. package/utils/FocusLock.js +138 -0
  286. package/wizard/Wizard.d.ts +1 -1
  287. package/wizard/Wizard.js +113 -59
  288. package/wizard/{Wizard.stories.jsx → Wizard.stories.tsx} +48 -19
  289. package/wizard/Wizard.test.js +141 -0
  290. package/wizard/types.d.ts +10 -10
  291. package/ThemeContext.js +0 -246
  292. package/V3Select/V3Select.js +0 -455
  293. package/V3Select/index.d.ts +0 -27
  294. package/V3Textarea/V3Textarea.js +0 -260
  295. package/V3Textarea/index.d.ts +0 -27
  296. package/chip/index.d.ts +0 -22
  297. package/common/RequiredComponent.js +0 -32
  298. package/date/Date.js +0 -373
  299. package/date/index.d.ts +0 -27
  300. package/file-input/index.d.ts +0 -81
  301. package/footer/Footer.stories.jsx +0 -151
  302. package/input-text/Icons.js +0 -22
  303. package/input-text/InputText.js +0 -611
  304. package/input-text/index.d.ts +0 -36
  305. package/radio/Radio.d.ts +0 -4
  306. package/radio/Radio.js +0 -174
  307. package/radio/Radio.stories.tsx +0 -192
  308. package/radio/types.d.ts +0 -54
  309. package/resultsetTable/index.d.ts +0 -19
  310. package/select/index.d.ts +0 -131
  311. package/text-input/index.d.ts +0 -135
  312. package/textarea/index.d.ts +0 -117
  313. package/toggle/Toggle.js +0 -186
  314. package/toggle/index.d.ts +0 -21
  315. package/toggle-group/index.d.ts +0 -21
  316. package/upload/Upload.js +0 -201
  317. package/upload/buttons-upload/ButtonsUpload.js +0 -111
  318. package/upload/buttons-upload/Icons.js +0 -40
  319. package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
  320. package/upload/dragAndDropArea/Icons.js +0 -39
  321. package/upload/file-upload/FileToUpload.js +0 -115
  322. package/upload/file-upload/Icons.js +0 -66
  323. package/upload/files-upload/FilesToUpload.js +0 -109
  324. package/upload/index.d.ts +0 -15
  325. package/upload/transaction/Icons.js +0 -160
  326. package/upload/transaction/Transaction.js +0 -104
  327. package/upload/transactions/Transactions.js +0 -94
  328. package/wizard/Icons.js +0 -65
  329. /package/{radio → badge}/types.js +0 -0
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { DatePickerPropsType } from "./types";
3
+ declare const _default: React.MemoExoticComponent<({ date, onDateSelect, id }: DatePickerPropsType) => JSX.Element>;
4
+ export default _default;
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _dayjs = _interopRequireDefault(require("dayjs"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
21
+
22
+ var _Calendar = _interopRequireDefault(require("./Calendar"));
23
+
24
+ var _YearPicker = _interopRequireDefault(require("./YearPicker"));
25
+
26
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
27
+
28
+ var _Icons = require("./Icons");
29
+
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
31
+
32
+ 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); }
33
+
34
+ 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; }
35
+
36
+ var today = (0, _dayjs["default"])();
37
+
38
+ var DxcDatePicker = function DxcDatePicker(_ref) {
39
+ var date = _ref.date,
40
+ onDateSelect = _ref.onDateSelect,
41
+ id = _ref.id;
42
+
43
+ var _useState = (0, _react.useState)(date !== null && date !== void 0 && date.isValid() ? date : (0, _dayjs["default"])()),
44
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
45
+ innerDate = _useState2[0],
46
+ setInnerDate = _useState2[1];
47
+
48
+ var _useState3 = (0, _react.useState)("calendar"),
49
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
50
+ content = _useState4[0],
51
+ setContent = _useState4[1];
52
+
53
+ var selectedDate = date !== null && date !== void 0 && date.isValid() ? date : null;
54
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
55
+
56
+ var handleDateSelect = function handleDateSelect(date) {
57
+ setInnerDate(date);
58
+ onDateSelect(date);
59
+ };
60
+
61
+ var handleOnYearSelect = function handleOnYearSelect(year) {
62
+ setInnerDate(innerDate.set("year", year));
63
+ setContent("calendar");
64
+ };
65
+
66
+ var handleMonthChange = function handleMonthChange(date) {
67
+ setInnerDate(date);
68
+ };
69
+
70
+ return /*#__PURE__*/_react["default"].createElement(DatePicker, {
71
+ id: id
72
+ }, /*#__PURE__*/_react["default"].createElement(PickerHeader, null, /*#__PURE__*/_react["default"].createElement(HeaderButton, {
73
+ "aria-label": translatedLabels.calendar.previousMonthTitle,
74
+ title: translatedLabels.calendar.previousMonthTitle,
75
+ onClick: function onClick() {
76
+ return handleMonthChange(innerDate.set("month", innerDate.get("month") - 1));
77
+ }
78
+ }, _Icons.leftCaret), /*#__PURE__*/_react["default"].createElement(HeaderYearTrigger, {
79
+ "aria-live": "polite",
80
+ onClick: function onClick() {
81
+ return setContent(function (content) {
82
+ return content === "yearPicker" ? "calendar" : "yearPicker";
83
+ });
84
+ }
85
+ }, /*#__PURE__*/_react["default"].createElement(HeaderYearTriggerLabel, null, translatedLabels.calendar.months[innerDate.get("month")], " ", innerDate.format("YYYY")), content === "yearPicker" ? _Icons.upCaret : _Icons.downCaret), /*#__PURE__*/_react["default"].createElement(HeaderButton, {
86
+ "aria-label": translatedLabels.calendar.nextMonthTitle,
87
+ title: translatedLabels.calendar.nextMonthTitle,
88
+ onClick: function onClick() {
89
+ return handleMonthChange(innerDate.set("month", innerDate.get("month") + 1));
90
+ }
91
+ }, _Icons.rightCaret)), content === "calendar" && /*#__PURE__*/_react["default"].createElement(_Calendar["default"], {
92
+ innerDate: innerDate,
93
+ selectedDate: selectedDate,
94
+ onInnerDateChange: setInnerDate,
95
+ onDaySelect: handleDateSelect,
96
+ today: today
97
+ }), content === "yearPicker" && /*#__PURE__*/_react["default"].createElement(_YearPicker["default"], {
98
+ selectedDate: selectedDate,
99
+ onYearSelect: handleOnYearSelect,
100
+ today: today
101
+ }));
102
+ };
103
+
104
+ var DatePicker = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: 16px;\n background-color: ", ";\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n border: ", ";\n border-radius: 4px;\n width: fit-content;\n font-family: ", ";\n font-size: ", ";\n color: ", ";\n font-weight: ", ";\n"])), function (props) {
105
+ return props.theme.dateInput.pickerBackgroundColor;
106
+ }, function (props) {
107
+ return "".concat(props.theme.dateInput.pickerBorderWidth, " ").concat(props.theme.dateInput.pickerBorderStyle, "\n ").concat(props.theme.dateInput.pickerBorderColor);
108
+ }, function (props) {
109
+ return props.theme.dateInput.pickerFontFamily;
110
+ }, function (props) {
111
+ return props.theme.dateInput.pickerFontSize;
112
+ }, function (props) {
113
+ return props.theme.dateInput.pickerFontColor;
114
+ }, function (props) {
115
+ return props.theme.dateInput.pickerFontWeight;
116
+ });
117
+
118
+ var PickerHeader = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n gap: 8px;\n align-items: center;\n justify-content: space-between;\n padding: 0px 16px;\n"])));
119
+
120
+ var HeaderButton = _styledComponents["default"].button(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n padding: 0px;\n color: ", ";\n background-color: ", ";\n border-radius: 4px;\n border: none;\n cursor: pointer;\n\n &:hover {\n color: ", ";\n background-color: ", ";\n }\n &:focus {\n outline: ", ";\n }\n &:active {\n color: ", ";\n background-color: ", ";\n }\n svg {\n width: 24px;\n height: 24px;\n }\n"])), function (props) {
121
+ return props.theme.dateInput.pickerHeaderFontColor;
122
+ }, function (props) {
123
+ return props.theme.dateInput.pickerHeaderBackgroundColor;
124
+ }, function (props) {
125
+ return props.theme.dateInput.pickerHeaderHoverFontColor;
126
+ }, function (props) {
127
+ return props.theme.dateInput.pickerHeaderHoverBackgroundColor;
128
+ }, function (props) {
129
+ return "".concat(props.theme.dateInput.pickerFocusColor, " solid\n ").concat(props.theme.dateInput.pickerFocusWidth);
130
+ }, function (props) {
131
+ return props.theme.dateInput.pickerHeaderActiveFontColor;
132
+ }, function (props) {
133
+ return props.theme.dateInput.pickerHeaderActiveBackgroundColor;
134
+ });
135
+
136
+ var HeaderYearTrigger = (0, _styledComponents["default"])(HeaderButton)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n gap: 8px;\n height: 40px;\n width: 172px;\n"])));
137
+
138
+ var HeaderYearTriggerLabel = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: ", ";\n font-size: ", ";\n"])), function (props) {
139
+ return props.theme.dateInput.pickerFontFamily;
140
+ }, function (props) {
141
+ return props.theme.dateInput.pickerHeaderFontSize;
142
+ });
143
+
144
+ var _default = /*#__PURE__*/_react["default"].memo(DxcDatePicker);
145
+
146
+ exports["default"] = _default;
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ export declare const calendarIcon: JSX.Element;
3
+ export declare const leftCaret: JSX.Element;
4
+ export declare const rightCaret: JSX.Element;
5
+ export declare const downCaret: JSX.Element;
6
+ export declare const upCaret: JSX.Element;
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.upCaret = exports.rightCaret = exports.leftCaret = exports.downCaret = exports.calendarIcon = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var calendarIcon = /*#__PURE__*/_react["default"].createElement("svg", {
13
+ xmlns: "http://www.w3.org/2000/svg",
14
+ height: "24",
15
+ viewBox: "0 0 24 24",
16
+ width: "24",
17
+ fill: "currentColor"
18
+ }, /*#__PURE__*/_react["default"].createElement("path", {
19
+ d: "M0 0h24v24H0z",
20
+ fill: "none"
21
+ }), /*#__PURE__*/_react["default"].createElement("path", {
22
+ 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"
23
+ }));
24
+
25
+ exports.calendarIcon = calendarIcon;
26
+
27
+ var leftCaret = /*#__PURE__*/_react["default"].createElement("svg", {
28
+ fill: "currentColor",
29
+ focusable: "false",
30
+ viewBox: "0 0 24 24"
31
+ }, /*#__PURE__*/_react["default"].createElement("path", {
32
+ d: "M15.41 16.59L10.83 12l4.58-4.59L14 6l-6 6 6 6 1.41-1.41z"
33
+ }), /*#__PURE__*/_react["default"].createElement("path", {
34
+ fill: "none",
35
+ d: "M0 0h24v24H0V0z"
36
+ }));
37
+
38
+ exports.leftCaret = leftCaret;
39
+
40
+ var rightCaret = /*#__PURE__*/_react["default"].createElement("svg", {
41
+ fill: "currentColor",
42
+ focusable: "false",
43
+ viewBox: "0 0 24 24"
44
+ }, /*#__PURE__*/_react["default"].createElement("path", {
45
+ d: "M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z"
46
+ }), /*#__PURE__*/_react["default"].createElement("path", {
47
+ fill: "none",
48
+ d: "M0 0h24v24H0V0z"
49
+ }));
50
+
51
+ exports.rightCaret = rightCaret;
52
+
53
+ var downCaret = /*#__PURE__*/_react["default"].createElement("svg", {
54
+ xmlns: "http://www.w3.org/2000/svg",
55
+ width: "24",
56
+ height: "24",
57
+ viewBox: "0 0 24 24"
58
+ }, /*#__PURE__*/_react["default"].createElement("path", {
59
+ d: "M7.5 10L12.5 15L17.5 10H7.5Z",
60
+ fill: "currentColor"
61
+ }));
62
+
63
+ exports.downCaret = downCaret;
64
+
65
+ var upCaret = /*#__PURE__*/_react["default"].createElement("svg", {
66
+ xmlns: "http://www.w3.org/2000/svg",
67
+ height: "24",
68
+ width: "24",
69
+ viewBox: "0 0 24 24"
70
+ }, /*#__PURE__*/_react["default"].createElement("path", {
71
+ d: "m7 14 5-5 5 5Z",
72
+ fill: "currentColor"
73
+ }));
74
+
75
+ exports.upCaret = upCaret;
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { YearPickerPropsType } from "./types";
3
+ declare const _default: React.MemoExoticComponent<({ onYearSelect, selectedDate, today }: YearPickerPropsType) => JSX.Element>;
4
+ export default _default;
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _dayjs = _interopRequireDefault(require("dayjs"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
21
+
22
+ var _templateObject, _templateObject2;
23
+
24
+ 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); }
25
+
26
+ 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; }
27
+
28
+ var getYearsArray = function getYearsArray() {
29
+ var yearList = [];
30
+
31
+ for (var i = 1899; i <= 2100; i++) {
32
+ yearList.push(i);
33
+ }
34
+
35
+ return yearList;
36
+ };
37
+
38
+ var yearList = getYearsArray();
39
+
40
+ var YearPicker = function YearPicker(_ref) {
41
+ var onYearSelect = _ref.onYearSelect,
42
+ selectedDate = _ref.selectedDate,
43
+ today = _ref.today;
44
+
45
+ var _useState = (0, _react.useState)(selectedDate ? selectedDate.get("year") : (0, _dayjs["default"])().get("year")),
46
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
47
+ yearToFocus = _useState2[0],
48
+ setYearToFocus = _useState2[1];
49
+
50
+ (0, _react.useEffect)(function () {
51
+ var _yearToFocusEl$scroll;
52
+
53
+ var yearToFocusEl = document.getElementById("year_".concat(yearToFocus));
54
+ yearToFocusEl === null || yearToFocusEl === void 0 ? void 0 : (_yearToFocusEl$scroll = yearToFocusEl.scrollIntoView) === null || _yearToFocusEl$scroll === void 0 ? void 0 : _yearToFocusEl$scroll.call(yearToFocusEl, {
55
+ block: "nearest",
56
+ inline: "start"
57
+ });
58
+ yearToFocusEl === null || yearToFocusEl === void 0 ? void 0 : yearToFocusEl.focus();
59
+ }, [yearToFocus]);
60
+
61
+ var handleDayKeyboardEvent = function handleDayKeyboardEvent(event) {
62
+ switch (event.key) {
63
+ case "ArrowUp":
64
+ setYearToFocus(function (prev) {
65
+ return prev > 1899 ? prev - 1 : prev;
66
+ });
67
+ break;
68
+
69
+ case "ArrowDown":
70
+ setYearToFocus(function (prev) {
71
+ return prev < 2100 ? prev + 1 : prev;
72
+ });
73
+ break;
74
+ }
75
+ };
76
+
77
+ return /*#__PURE__*/_react["default"].createElement(YearPickerContainer, null, yearList.map(function (year) {
78
+ return /*#__PURE__*/_react["default"].createElement(YearPickerButton, {
79
+ "aria-label": year,
80
+ key: year,
81
+ selected: (selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.get("year")) === year,
82
+ "aria-selected": (selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.get("year")) === year,
83
+ tabIndex: yearToFocus === year ? 0 : -1,
84
+ isCurrentYear: today.get("year") === year,
85
+ onKeyDown: function onKeyDown(event) {
86
+ return handleDayKeyboardEvent(event);
87
+ },
88
+ id: "year_".concat(year),
89
+ onClick: function onClick() {
90
+ onYearSelect(year);
91
+ }
92
+ }, year);
93
+ }));
94
+ };
95
+
96
+ var YearPickerContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n gap: 4px;\n align-items: center;\n overflow-y: scroll;\n width: 292px;\n height: 312px;\n padding: 2px 8px 8px 8px;\n"])));
97
+
98
+ var YearPickerButton = _styledComponents["default"].button(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n width: 80px;\n min-height: 40px;\n line-height: 21px;\n background-color: transparent;\n border: none;\n border-radius: 50px;\n cursor: pointer;\n font-family: ", ";\n font-size: ", ";\n color: ", ";\n font-weight: ", ";\n\n ", "\n\n &:hover, &:focus, &:active {\n font-size: ", ";\n line-height: 36px;\n }\n &:hover {\n color: ", ";\n background-color: ", ";\n }\n &:focus {\n color: ", ";\n outline: ", ";\n }\n &:active {\n color: ", ";\n background-color: ", " !important;\n }\n"])), function (props) {
99
+ return props.theme.dateInput.pickerFontFamily;
100
+ }, function (props) {
101
+ return props.theme.dateInput.pickerFontSize;
102
+ }, function (props) {
103
+ return props.theme.dateInput.pickerFontColor;
104
+ }, function (props) {
105
+ return props.theme.dateInput.pickerFontWeight;
106
+ }, function (props) {
107
+ return props.selected ? "font-size: ".concat(props.theme.dateInput.pickerInteractedYearFontSize, ";\n line-height: 36px;\n color: ").concat(props.theme.dateInput.pickerSelectedFontColor, " !important;\n background-color: ").concat(props.theme.dateInput.pickerSelectedBackgroundColor, " !important;") : props.isCurrentYear ? "border: 1px solid ".concat(props.theme.dateInput.pickerCurrentDateBorderColor, "; \n color: ").concat(props.theme.dateInput.pickerCurrentYearFontColor, ";") : "";
108
+ }, function (props) {
109
+ return props.theme.dateInput.pickerInteractedYearFontSize;
110
+ }, function (props) {
111
+ return props.theme.dateInput.pickerHoverFontColor;
112
+ }, function (props) {
113
+ return props.theme.dateInput.pickerHoverBackgroundColor;
114
+ }, function (props) {
115
+ return props.theme.dateInput.pickerHoverFontColor;
116
+ }, function (props) {
117
+ return "".concat(props.theme.dateInput.pickerFocusColor, " solid\n ").concat(props.theme.dateInput.pickerFocusWidth);
118
+ }, function (props) {
119
+ return props.theme.dateInput.pickerActiveFontColor;
120
+ }, function (props) {
121
+ return props.theme.dateInput.pickerActiveBackgroundColor;
122
+ });
123
+
124
+ var _default = /*#__PURE__*/_react["default"].memo(YearPicker);
125
+
126
+ exports["default"] = _default;
@@ -1,3 +1,4 @@
1
+ import { Dayjs } from "dayjs";
1
2
  declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
3
  declare type Margin = {
3
4
  top?: Space;
@@ -14,6 +15,10 @@ declare type Props = {
14
15
  * Name attribute of the input element.
15
16
  */
16
17
  name?: string;
18
+ /**
19
+ * Initial value of the input element, only when it is uncontrolled.
20
+ */
21
+ defaultValue?: string;
17
22
  /**
18
23
  * Value of the input element. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
19
24
  */
@@ -50,28 +55,31 @@ declare type Props = {
50
55
  * element of the component. An object including the string value, the
51
56
  * error and the date value will be passed to this function.
52
57
  * If the string value is a valid date, error will
53
- * be null. Also, if the string value is not a valid date, date will be null.
58
+ * be undefined. Also, if the string value is not a valid date, date will be undefined.
54
59
  */
55
60
  onChange?: (val: {
56
61
  value: string;
57
- error: string | null;
58
- date: Date | null;
62
+ error?: string;
63
+ date?: Date;
59
64
  }) => void;
60
65
  /**
61
66
  * This function will be called when the input element loses the focus.
62
67
  * An object including the string value, the error and the date value
63
68
  * will be passed to this function. If the string value is a valid date, error will
64
- * be null. Also, if the string value is not a valid date, date will be null.
69
+ * be undefined. Also, if the string value is not a valid date, date will be undefined.
65
70
  */
66
71
  onBlur?: (val: {
67
72
  value: string;
68
- error: string | null;
69
- date: Date | null;
73
+ error?: string;
74
+ date?: Date;
70
75
  }) => void;
71
76
  /**
72
- * If it is defined, the component will change its appearance, showing
73
- * the error below the date input component. If it is not defined, the error
74
- * messages will be managed internally, but never displayed on its own.
77
+ * If it is a defined value and also a truthy string, the component will
78
+ * change its appearance, showing the error below the date input
79
+ * component. If the defined value is an empty string, it will reserve a
80
+ * space below the component for a future error, but it would not change
81
+ * its look. In case of being undefined or null, both the appearance and
82
+ * the space for the error message would not be modified.
75
83
  */
76
84
  error?: string;
77
85
  /**
@@ -93,6 +101,56 @@ declare type Props = {
93
101
  */
94
102
  tabIndex?: number;
95
103
  };
104
+ export declare type DatePickerPropsType = {
105
+ /**
106
+ * Initial selected date value. If invalid the actual date will be used instead.
107
+ */
108
+ date: Dayjs;
109
+ /**
110
+ * Function called when a date is selected.
111
+ */
112
+ onDateSelect: (date: Dayjs) => void;
113
+ /**
114
+ * Id assigned to the date picker.
115
+ */
116
+ id: string;
117
+ };
118
+ export declare type CalendarPropsType = {
119
+ /**
120
+ * Initial selected date value. If invalid the actual date will be used instead.
121
+ */
122
+ selectedDate: Dayjs;
123
+ /**
124
+ * Date showed by the calendar.
125
+ */
126
+ innerDate: Dayjs;
127
+ /**
128
+ * Function called when the date showned needs to be updated
129
+ */
130
+ onInnerDateChange: (date: Dayjs) => void;
131
+ /**
132
+ * Function called when a date is selected.
133
+ */
134
+ onDaySelect: (date: Dayjs) => void;
135
+ /**
136
+ * Current date
137
+ */
138
+ today: Dayjs;
139
+ };
140
+ export declare type YearPickerPropsType = {
141
+ /**
142
+ * Initial selected date value. If invalid the actual date will be used instead.
143
+ */
144
+ selectedDate: Dayjs;
145
+ /**
146
+ * Function called when a year is selected.
147
+ */
148
+ onYearSelect: (year: number) => void;
149
+ /**
150
+ * Current date
151
+ */
152
+ today: Dayjs;
153
+ };
96
154
  /**
97
155
  * Reference to the component.
98
156
  */
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import DialogPropsType from "./types";
3
- declare const DxcDialog: ({ isCloseVisible, onCloseClick, children, overlay, onBackgroundClick, padding, tabIndex, }: DialogPropsType) => JSX.Element;
3
+ declare const DxcDialog: ({ isCloseVisible, onCloseClick, children, overlay, onBackgroundClick, tabIndex, }: DialogPropsType) => JSX.Element;
4
4
  export default DxcDialog;