@dxc-technology/halstack-react 0.0.0-1e57e26 → 0.0.0-1e5db1e

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 (135) hide show
  1. package/HalstackContext.d.ts +12 -0
  2. package/HalstackContext.js +295 -0
  3. package/accordion/Accordion.d.ts +1 -1
  4. package/accordion/Accordion.js +7 -28
  5. package/accordion/Accordion.stories.tsx +11 -11
  6. package/accordion/Accordion.test.js +19 -4
  7. package/accordion/types.d.ts +4 -0
  8. package/accordion-group/AccordionGroup.d.ts +1 -1
  9. package/accordion-group/AccordionGroup.js +13 -15
  10. package/accordion-group/AccordionGroup.stories.tsx +1 -1
  11. package/accordion-group/AccordionGroup.test.js +24 -6
  12. package/accordion-group/types.d.ts +4 -0
  13. package/alert/Alert.js +4 -1
  14. package/badge/Badge.d.ts +1 -1
  15. package/badge/Badge.js +5 -3
  16. package/badge/types.d.ts +1 -0
  17. package/bleed/types.d.ts +24 -0
  18. package/box/Box.js +22 -32
  19. package/button/Button.js +14 -11
  20. package/card/Card.js +27 -28
  21. package/checkbox/Checkbox.d.ts +1 -1
  22. package/checkbox/Checkbox.js +43 -39
  23. package/checkbox/Checkbox.stories.tsx +124 -128
  24. package/checkbox/Checkbox.test.js +13 -0
  25. package/checkbox/types.d.ts +7 -3
  26. package/common/variables.js +181 -84
  27. package/date-input/DateInput.js +53 -39
  28. package/date-input/DateInput.stories.tsx +7 -7
  29. package/date-input/DateInput.test.js +69 -59
  30. package/date-input/types.d.ts +16 -9
  31. package/dialog/Dialog.js +4 -32
  32. package/dropdown/Dropdown.js +13 -17
  33. package/file-input/FileInput.js +9 -6
  34. package/file-input/FileItem.js +7 -5
  35. package/footer/Footer.js +15 -88
  36. package/header/Header.js +27 -48
  37. package/header/Header.stories.tsx +46 -36
  38. package/header/Header.test.js +18 -2
  39. package/inset/types.d.ts +24 -0
  40. package/layout/ApplicationLayout.d.ts +4 -3
  41. package/layout/ApplicationLayout.js +78 -114
  42. package/layout/ApplicationLayout.stories.tsx +14 -59
  43. package/layout/Icons.d.ts +5 -0
  44. package/layout/Icons.js +13 -2
  45. package/layout/SidenavContext.d.ts +5 -0
  46. package/layout/SidenavContext.js +19 -0
  47. package/layout/types.d.ts +4 -10
  48. package/link/Link.d.ts +3 -2
  49. package/link/Link.js +57 -74
  50. package/link/Link.stories.tsx +87 -52
  51. package/link/Link.test.js +7 -15
  52. package/link/types.d.ts +7 -23
  53. package/main.d.ts +4 -3
  54. package/main.js +23 -9
  55. package/number-input/NumberInput.js +11 -18
  56. package/number-input/NumberInput.stories.tsx +5 -5
  57. package/number-input/NumberInput.test.js +2 -4
  58. package/number-input/types.d.ts +17 -10
  59. package/package.json +6 -5
  60. package/paginator/Paginator.js +17 -38
  61. package/password-input/PasswordInput.js +7 -4
  62. package/password-input/PasswordInput.test.js +3 -6
  63. package/password-input/types.d.ts +14 -11
  64. package/progress-bar/ProgressBar.js +1 -1
  65. package/progress-bar/ProgressBar.stories.jsx +11 -11
  66. package/quick-nav/QuickNav.d.ts +4 -0
  67. package/quick-nav/QuickNav.js +112 -0
  68. package/quick-nav/QuickNav.stories.tsx +237 -0
  69. package/quick-nav/types.d.ts +21 -0
  70. package/{radio → quick-nav}/types.js +0 -0
  71. package/radio-group/Radio.js +1 -1
  72. package/radio-group/RadioGroup.js +8 -6
  73. package/row/types.d.ts +18 -0
  74. package/select/Listbox.d.ts +4 -0
  75. package/select/Listbox.js +152 -0
  76. package/select/Option.js +1 -1
  77. package/select/Select.js +66 -161
  78. package/select/Select.stories.tsx +14 -2
  79. package/select/Select.test.js +335 -231
  80. package/select/types.d.ts +33 -11
  81. package/sidenav/Sidenav.d.ts +1 -1
  82. package/sidenav/Sidenav.js +20 -9
  83. package/slider/Slider.d.ts +1 -1
  84. package/slider/Slider.js +2 -1
  85. package/slider/Slider.stories.tsx +8 -8
  86. package/slider/Slider.test.js +31 -10
  87. package/slider/types.d.ts +4 -0
  88. package/spinner/Spinner.js +1 -1
  89. package/switch/Switch.d.ts +1 -1
  90. package/switch/Switch.js +35 -19
  91. package/switch/Switch.stories.tsx +14 -14
  92. package/switch/Switch.test.js +25 -0
  93. package/switch/types.d.ts +6 -2
  94. package/tabs/Tabs.d.ts +1 -1
  95. package/tabs/Tabs.js +9 -11
  96. package/tabs/Tabs.stories.tsx +0 -8
  97. package/tabs/Tabs.test.js +26 -9
  98. package/tabs/types.d.ts +4 -0
  99. package/tabs-nav/NavTabs.d.ts +8 -0
  100. package/tabs-nav/NavTabs.js +125 -0
  101. package/tabs-nav/NavTabs.stories.tsx +170 -0
  102. package/tabs-nav/NavTabs.test.js +82 -0
  103. package/tabs-nav/Tab.d.ts +4 -0
  104. package/tabs-nav/Tab.js +132 -0
  105. package/tabs-nav/types.d.ts +53 -0
  106. package/tabs-nav/types.js +5 -0
  107. package/tag/Tag.js +5 -8
  108. package/text-input/Suggestion.d.ts +4 -0
  109. package/text-input/Suggestion.js +55 -0
  110. package/text-input/TextInput.js +48 -76
  111. package/text-input/TextInput.test.js +22 -35
  112. package/text-input/types.d.ts +27 -12
  113. package/textarea/Textarea.js +12 -23
  114. package/textarea/Textarea.test.js +10 -20
  115. package/textarea/types.d.ts +14 -11
  116. package/toggle-group/ToggleGroup.d.ts +1 -1
  117. package/toggle-group/ToggleGroup.js +5 -4
  118. package/toggle-group/ToggleGroup.stories.tsx +4 -4
  119. package/toggle-group/ToggleGroup.test.js +35 -4
  120. package/toggle-group/types.d.ts +8 -0
  121. package/useTheme.js +2 -2
  122. package/useTranslatedLabels.d.ts +2 -0
  123. package/useTranslatedLabels.js +20 -0
  124. package/wizard/Wizard.d.ts +1 -1
  125. package/wizard/Wizard.js +55 -44
  126. package/wizard/Wizard.stories.tsx +13 -23
  127. package/wizard/Wizard.test.js +36 -23
  128. package/wizard/types.d.ts +6 -2
  129. package/ThemeContext.d.ts +0 -10
  130. package/ThemeContext.js +0 -243
  131. package/radio/Radio.d.ts +0 -4
  132. package/radio/Radio.js +0 -174
  133. package/radio/Radio.stories.tsx +0 -192
  134. package/radio/Radio.test.js +0 -71
  135. package/radio/types.d.ts +0 -54
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.typeface = exports.spaces = exports.responsiveSizes = exports.globalTokens = exports.componentTokens = void 0;
6
+ exports.typeface = exports.spaces = exports.responsiveSizes = exports.globalTokens = exports.defaultTranslatedComponentLabels = exports.componentTokens = void 0;
7
7
  var globalTokens = {
8
- // Color
8
+ // Color
9
9
  inherit: "inherit",
10
10
  transparent: "transparent",
11
11
  hal_white: "#ffffff",
@@ -19,12 +19,15 @@ var globalTokens = {
19
19
  color_grey_800: "#4d4d4d",
20
20
  color_grey_600: "#808080",
21
21
  color_grey_50: "#fafafa",
22
+ color_grey_a_100: "#0000000d",
23
+ color_grey_a_300: "#00000033",
22
24
  hal_purple_l_95: "#f2eafa",
23
25
  hal_purple_l_90: "#e5d5f6",
24
26
  hal_purple_l_65: "#a46ede",
25
27
  hal_purple_s_38: "#5f249f",
26
28
  hal_purple_d_30: "#4b1c7d",
27
29
  hal_purple_d_20: "#321353",
30
+ hal_purple_d_70: "#9A6BB2",
28
31
  color_purple_600: "#7D2FD0",
29
32
  color_purple_300: "#cbacec",
30
33
  hal_blue_l_95: "#e6f4ff",
@@ -107,7 +110,7 @@ var globalTokens = {
107
110
  type_normal: "normal",
108
111
  type_spacing_tight_02: "-0.05em",
109
112
  type_spacing_tight_01: "-0.025em",
110
- type_spacing_normal: "0",
113
+ type_spacing_normal: "0em",
111
114
  type_spacing_wide_01: "0.025em",
112
115
  type_spacing_wide_02: "0.05em",
113
116
  type_spacing_wide_03: "0.1em",
@@ -236,7 +239,7 @@ var componentTokens = {
236
239
  successBackgroundColor: globalTokens.hal_green_l_95,
237
240
  warningBackgroundColor: globalTokens.hal_yellow_l_95,
238
241
  errorBackgroundColor: globalTokens.hal_red_l_95,
239
- hoverActionBackgroundColor: "#0000000D",
242
+ hoverActionBackgroundColor: globalTokens.color_grey_a_100,
240
243
  activeActionBackgroundColor: "#0000001A",
241
244
  focusActionBorderColor: globalTokens.hal_blue_l_50,
242
245
  overlayColor: "#000000B3"
@@ -257,12 +260,12 @@ var componentTokens = {
257
260
  oneShadowDepthShadowOffsetY: "3px",
258
261
  oneShadowDepthShadowBlur: "6px",
259
262
  oneShadowDepthShadowSpread: "0px",
260
- oneShadowDepthShadowColor: "#00000033",
263
+ oneShadowDepthShadowColor: globalTokens.color_grey_a_300,
261
264
  twoShadowDepthShadowOffsetX: "0px",
262
265
  twoShadowDepthShadowOffsetY: "3px",
263
266
  twoShadowDepthShadowBlur: "10px",
264
267
  twoShadowDepthShadowSpread: "0px",
265
- twoShadowDepthShadowColor: "#00000033"
268
+ twoShadowDepthShadowColor: globalTokens.color_grey_a_300
266
269
  },
267
270
  button: {
268
271
  labelFontLineHeight: globalTokens.type_leading_normal,
@@ -483,14 +486,13 @@ var componentTokens = {
483
486
  focusDropBorderColor: globalTokens.hal_blue_l_50,
484
487
  disabledDropBorderColor: globalTokens.hal_grey_l_60,
485
488
  dragoverDropBackgroundColor: globalTokens.color_blue_50,
486
- hoverFileItemIconBackgroundColor: globalTokens.hal_grey_l_95,
487
489
  activeFileItemIconBackgrounColor: globalTokens.hal_grey_l_80,
488
490
  errorFileItemBorderColor: globalTokens.hal_red_s_41,
489
491
  errorFileItemBackgroundColor: globalTokens.color_red_50,
490
- errorFileItemIconBackgroundColor: globalTokens.color_red_700,
492
+ errorFilePreviewBackgroundColor: globalTokens.color_red_700,
491
493
  errorFileItemIconColor: globalTokens.hal_red_s_41,
492
494
  fileItemIconBackgroundColor: globalTokens.hal_grey_l_95,
493
- fileItemIconColor: globalTokens.color_grey_600,
495
+ deleteFileItemColor: globalTokens.hal_black,
494
496
  errorMessageFontColor: globalTokens.hal_red_s_41,
495
497
  labelFontFamily: globalTokens.type_sans,
496
498
  labelFontSize: globalTokens.type_scale_02,
@@ -517,9 +519,12 @@ var componentTokens = {
517
519
  fileItemBorderThickness: globalTokens.border_width_1,
518
520
  fileItemBorderStyle: globalTokens.border_solid,
519
521
  fileItemBorderRadius: globalTokens.border_radius_medium,
520
- hoverDeleteFileItemBackgroundColor: "#0000000d",
521
- activeDeleteFileItemBackgroundColor: "#00000033",
522
- focusActionBorderColor: globalTokens.hal_blue_l_50
522
+ hoverDeleteFileItemBackgroundColor: globalTokens.color_grey_a_100,
523
+ activeDeleteFileItemBackgroundColor: globalTokens.color_grey_a_300,
524
+ focusDeleteFileItemBorderColor: globalTokens.hal_blue_l_50,
525
+ filePreviewBackgroundColor: globalTokens.hal_grey_l_95,
526
+ filePreviewIconColor: globalTokens.color_grey_600,
527
+ errorFilePreviewIconColor: globalTokens.hal_red_s_41
523
528
  },
524
529
  footer: {
525
530
  height: "124px",
@@ -712,7 +717,7 @@ var componentTokens = {
712
717
  link: {
713
718
  fontColor: globalTokens.hal_blue_s_35,
714
719
  fontFamily: globalTokens.inherit,
715
- fontSize: globalTokens.type_scale_root,
720
+ fontSize: globalTokens.inherit,
716
721
  fontStyle: globalTokens.type_normal,
717
722
  fontWeight: globalTokens.type_regular,
718
723
  iconSize: "16px",
@@ -737,15 +742,15 @@ var componentTokens = {
737
742
  fontStyle: globalTokens.type_normal,
738
743
  fontWeight: globalTokens.type_regular,
739
744
  fontTextTransform: "none",
740
- height: "64px",
741
- width: "100%",
742
- marginRight: "40px",
743
- marginLeft: "20px",
745
+ verticalPadding: "0.75rem",
746
+ horizontalPadding: "2rem",
747
+ marginRight: "2rem",
748
+ marginLeft: "2rem",
744
749
  itemsPerPageSelectorMarginLeft: "0px",
745
- itemsPerPageSelectorMarginRight: "30px",
750
+ itemsPerPageSelectorMarginRight: "1rem",
746
751
  pageSelectorMarginRight: "30px",
747
752
  pageSelectorMarginLeft: "0px",
748
- totalItemsContainerMarginRight: "30px",
753
+ totalItemsContainerMarginRight: "3rem",
749
754
  totalItemsContainerMarginLeft: "0px"
750
755
  },
751
756
  progressBar: {
@@ -777,21 +782,21 @@ var componentTokens = {
777
782
  overlayColor: globalTokens.black,
778
783
  overlayOpacity: "0.8"
779
784
  },
780
- radio: {
781
- circleLabelSpacing: "10px",
782
- circleSize: "24px",
783
- color: globalTokens.black,
784
- colorOnDark: globalTokens.white,
785
- disabledColor: globalTokens.lighterBlack,
786
- disabledColorOnDark: "#575757",
787
- disabledFontColor: globalTokens.lighterBlack,
788
- disabledFontColorOnDark: "#575757",
789
- focusColor: globalTokens.hal_blue_l_50,
790
- focusColorOnDark: "#1682FF",
791
- fontColor: globalTokens.inherit,
792
- fontColorOnDark: globalTokens.white,
785
+ quickNav: {
786
+ fontColor: globalTokens.hal_grey_s_40,
787
+ hoverFontColor: globalTokens.hal_purple_d_70,
788
+ selectedFontColor: globalTokens.hal_purple_s_38,
789
+ dividerBorderColor: globalTokens.hal_grey_l_75,
790
+ focusBorderColor: globalTokens.hal_blue_l_50,
791
+ focusBorderStyle: globalTokens.border_solid,
792
+ focusBorderThickness: globalTokens.border_width_2,
793
+ focusBorderRadius: globalTokens.border_width_2,
794
+ paddingTop: globalTokens.spacing_03,
795
+ paddingBottom: globalTokens.spacing_03,
796
+ paddingLeft: globalTokens.spacing_05,
797
+ paddingRight: globalTokens.spacing_05,
793
798
  fontFamily: globalTokens.type_sans,
794
- fontSize: globalTokens.type_scale_root,
799
+ fontSize: globalTokens.type_scale_02,
795
800
  fontStyle: globalTokens.type_normal,
796
801
  fontWeight: globalTokens.type_regular
797
802
  },
@@ -1010,7 +1015,7 @@ var componentTokens = {
1010
1015
  },
1011
1016
  spinner: {
1012
1017
  trackCircleColor: "#5f249f",
1013
- trackCircleColorOnDark: "#a46ede",
1018
+ trackCircleColorOverlay: "#a46ede",
1014
1019
  totalCircleColor: globalTokens.white,
1015
1020
  labelFontFamily: globalTokens.type_sans,
1016
1021
  labelFontSize: globalTokens.type_scale_02,
@@ -1145,6 +1150,7 @@ var componentTokens = {
1145
1150
  disabledFontColor: "#999999",
1146
1151
  disabledIconColor: "#999999",
1147
1152
  disabledFontStyle: globalTokens.type_normal,
1153
+ disabledBadgeBackgroundColor: "#0000004D",
1148
1154
  hoverBackgroundColor: "#f2eafa",
1149
1155
  pressedBackgroundColor: "#e5d5f6",
1150
1156
  pressedFontWeight: globalTokens.type_semibold,
@@ -1264,57 +1270,64 @@ var componentTokens = {
1264
1270
  optionFocusBorderThickness: globalTokens.border_width_2
1265
1271
  },
1266
1272
  wizard: {
1267
- disabledBackgroundColor: globalTokens.lightGrey,
1268
- disabledFontColor: globalTokens.darkGrey,
1269
- stepContainerFontSize: globalTokens.type_scale_03,
1270
- stepContainerFontFamily: globalTokens.type_sans,
1271
- stepContainerFontStyle: globalTokens.type_normal,
1272
- stepContainerFontWeight: globalTokens.type_regular,
1273
- stepContainerLetterSpacing: globalTokens.type_spacing_wide_02,
1274
- stepContainerFontColor: globalTokens.black,
1275
- stepContainerSelectedFontColor: globalTokens.white,
1276
- stepContainerSelectedBackgroundColor: globalTokens.hal_purple_s_38,
1277
- stepContainerBackgroundColor: globalTokens.white,
1278
- stepContainerIconSize: "19px",
1273
+ visitedStepFontColor: globalTokens.hal_black,
1274
+ visitedStepBackgroundColor: globalTokens.hal_white,
1275
+ visitedStepBorderColor: globalTokens.hal_black,
1276
+ unvisitedStepFontColor: globalTokens.hal_grey_s_40,
1277
+ unvisitedLabelFontColor: globalTokens.hal_grey_s_40,
1278
+ unvisitedHelperTextFontColor: globalTokens.hal_grey_s_40,
1279
+ unvisitedStepBackgroundColor: globalTokens.transparent,
1280
+ unvisitedStepBorderColor: globalTokens.hal_grey_s_40,
1281
+ selectedStepFontColor: globalTokens.white,
1282
+ selectedStepBackgroundColor: globalTokens.hal_purple_s_38,
1283
+ selectedStepBorderColor: globalTokens.hal_purple_s_38,
1284
+ selectedLabelFontColor: globalTokens.hal_black,
1285
+ selectedHelperTextFontColor: globalTokens.hal_black,
1286
+ selectedStepWidth: "32px",
1287
+ selectedStepHeight: "32px",
1288
+ selectedStepBorderThickness: "2px",
1289
+ selectedStepBorderStyle: "solid",
1290
+ selectedStepBorderRadius: "45px",
1291
+ stepFontSize: globalTokens.type_scale_03,
1292
+ stepFontFamily: globalTokens.type_sans,
1293
+ stepFontStyle: globalTokens.type_normal,
1294
+ stepFontWeight: globalTokens.type_regular,
1295
+ stepFontTracking: globalTokens.type_spacing_wide_02,
1296
+ stepIconSize: "20px",
1297
+ stepWidth: "32px",
1298
+ stepHeight: "32px",
1299
+ stepBorderThickness: "2px",
1300
+ stepBorderStyle: "solid",
1301
+ stepBorderRadius: "45px",
1302
+ visitedLabelFontColor: globalTokens.hal_black,
1279
1303
  labelFontSize: globalTokens.type_scale_03,
1280
1304
  labelFontFamily: globalTokens.type_sans,
1281
1305
  labelFontStyle: globalTokens.type_normal,
1282
1306
  labelFontWeight: globalTokens.type_regular,
1283
- labelLetterSpacing: globalTokens.type_spacing_normal,
1307
+ labelFontTracking: globalTokens.type_spacing_normal,
1284
1308
  labelFontTextTransform: "none",
1285
1309
  labelTextAlign: "left",
1286
- labelFontColor: globalTokens.darkGrey,
1287
- visitedLabelFontColor: globalTokens.black,
1288
- visitedDescriptionFontColor: globalTokens.black,
1289
- descriptionFontSize: globalTokens.type_scale_01,
1290
- descriptionFontFamily: globalTokens.type_sans,
1291
- descriptionFontStyle: globalTokens.type_normal,
1292
- descriptionFontWeight: globalTokens.type_regular,
1293
- descriptionLetterSpacing: globalTokens.type_spacing_wide_01,
1294
- descriptionFontTextTransform: "none",
1295
- descriptionFontColor: globalTokens.darkGrey,
1296
- descriptionTextAlign: "left",
1297
- circleWidth: "32px",
1298
- circleHeight: "32px",
1299
- circleBorderThickness: "2px",
1300
- circleBorderStyle: "solid",
1301
- circleBorderRadius: "45px",
1302
- circleBorderColor: globalTokens.black,
1303
- selectedCircleWidth: "32px",
1304
- selectedCircleHeight: "32px",
1305
- selectedCircleBorderThickness: "2px",
1306
- selectedCircleBorderStyle: "solid",
1307
- selectedCircleBorderRadius: "45px",
1308
- selectedCircleBorderColor: globalTokens.purple,
1309
- disabledCircleWidth: "32px",
1310
- disabledCircleHeight: "32px",
1311
- disabledCircleBorderThickness: "2px",
1312
- disabledCircleBorderStyle: "solid",
1313
- disabledCircleBorderRadius: "45px",
1314
- disabledCircleBorderColor: globalTokens.lightGrey,
1310
+ helperTextFontSize: globalTokens.type_scale_02,
1311
+ helperTextFontFamily: globalTokens.type_sans,
1312
+ helperTextFontStyle: globalTokens.type_normal,
1313
+ helperTextFontWeight: globalTokens.type_regular,
1314
+ helperTextFontTracking: globalTokens.type_spacing_normal,
1315
+ helperTextFontTextTransform: "none",
1316
+ visitedHelperTextFontColor: globalTokens.hal_black,
1317
+ helperTextTextAlign: "left",
1318
+ disabledStepBackgroundColor: globalTokens.hal_grey_l_95,
1319
+ disabledStepFontColor: globalTokens.hal_grey_l_60,
1320
+ disabledLabelFontColor: globalTokens.hal_grey_l_60,
1321
+ disabledHelperTextFontColor: globalTokens.hal_grey_l_60,
1322
+ disabledStepBorderColor: globalTokens.hal_grey_l_95,
1323
+ disabledStepWidth: "32px",
1324
+ disabledStepHeight: "32px",
1325
+ disabledStepBorderThickness: "2px",
1326
+ disabledStepBorderStyle: "solid",
1327
+ disabledStepBorderRadius: "45px",
1315
1328
  separatorBorderThickness: "1px",
1316
1329
  separatorBorderStyle: "solid",
1317
- separatorColor: globalTokens.lightGrey,
1330
+ separatorColor: globalTokens.hal_grey_s_40,
1318
1331
  focusColor: globalTokens.hal_blue_l_50
1319
1332
  }
1320
1333
  };
@@ -1330,12 +1343,11 @@ var spaces = {
1330
1343
  };
1331
1344
  exports.spaces = spaces;
1332
1345
  var responsiveSizes = {
1333
- mobileSmall: "320",
1334
- mobileMedium: "375",
1335
- mobileLarge: "425",
1336
- tablet: "768",
1337
- laptop: "1024",
1338
- desktop: "1440"
1346
+ xsmall: "20",
1347
+ small: "30",
1348
+ medium: "45",
1349
+ large: "66",
1350
+ xlarge: "90"
1339
1351
  };
1340
1352
  exports.responsiveSizes = responsiveSizes;
1341
1353
  var typeface = {
@@ -1370,4 +1382,89 @@ var typeface = {
1370
1382
  textTransform: "uppercase"
1371
1383
  }
1372
1384
  };
1373
- exports.typeface = typeface;
1385
+ exports.typeface = typeface;
1386
+ var defaultTranslatedComponentLabels = {
1387
+ formFields: {
1388
+ optionalLabel: "(Optional)",
1389
+ requiredSelectionErrorMessage: "This field is required. Please, choose an option.",
1390
+ requiredValueErrorMessage: "This field is required. Please, enter a value.",
1391
+ formatRequestedErrorMessage: "Please match the format requested.",
1392
+ lengthErrorMessage: function lengthErrorMessage(minLength, maxLength) {
1393
+ return "Min length ".concat(minLength, ", max length ").concat(maxLength, ".");
1394
+ },
1395
+ logoAlternativeText: "Logo"
1396
+ },
1397
+ alert: {
1398
+ infoTitleText: "information",
1399
+ successTitleText: "success",
1400
+ warningTitleText: "warning",
1401
+ errorTitleText: "error"
1402
+ },
1403
+ dateInput: {
1404
+ invalidDateErrorMessage: "Invalid date."
1405
+ },
1406
+ fileInput: {
1407
+ fileSizeGreaterThanErrorMessage: "File size must be greater than min size.",
1408
+ fileSizeLessThanErrorMessage: "File size must be less than max size.",
1409
+ multipleButtonLabelDefault: "Select files",
1410
+ singleButtonLabelDefault: "Select file",
1411
+ dropAreaButtonLabelDefault: "Select",
1412
+ multipleDropAreaLabelDefault: "or drop files",
1413
+ singleDropAreaLabelDefault: "or drop a file"
1414
+ },
1415
+ footer: {
1416
+ copyrightText: function copyrightText(year) {
1417
+ return "\xA9 DXC Technology ".concat(year, ". All rights reserved.");
1418
+ }
1419
+ },
1420
+ numberInput: {
1421
+ valueGreaterThanOrEqualToErrorMessage: function valueGreaterThanOrEqualToErrorMessage(value) {
1422
+ return "Value must be greater than or equal to ".concat(value, ".");
1423
+ },
1424
+ valueLessThanOrEqualToErrorMessage: function valueLessThanOrEqualToErrorMessage(value) {
1425
+ return "Value must be less than or equal to ".concat(value, ".");
1426
+ },
1427
+ decrementValueTitle: "Decrement value",
1428
+ incrementValueTitle: "Increment value"
1429
+ },
1430
+ paginator: {
1431
+ itemsPerPageText: "Items per page ",
1432
+ minToMaxOfText: function minToMaxOfText(minNumberOfItems, maxNumberOfItems, totalItems) {
1433
+ return "".concat(minNumberOfItems, " to ").concat(maxNumberOfItems, " of ").concat(totalItems);
1434
+ },
1435
+ goToPageText: "Go to page:",
1436
+ pageOfText: function pageOfText(pageNumber, totalPagesNumber) {
1437
+ return "Page: ".concat(pageNumber, " of ").concat(totalPagesNumber);
1438
+ }
1439
+ },
1440
+ passwordInput: {
1441
+ inputShowPasswordTitle: "Show password",
1442
+ inputHidePasswordTitle: "Hide password"
1443
+ },
1444
+ quickNav: {
1445
+ contentTitle: "Contents"
1446
+ },
1447
+ radioGroup: {
1448
+ optionalItemLabelDefault: "N/A"
1449
+ },
1450
+ select: {
1451
+ noMatchesErrorMessage: "No matches found",
1452
+ actionClearSelectionTitle: "Clear selection",
1453
+ actionClearSearchTitle: "Clear search"
1454
+ },
1455
+ textInput: {
1456
+ clearFieldActionTitle: "Clear field",
1457
+ searchingMessage: "Searching...",
1458
+ fetchingDataErrorMessage: "Error fetching data"
1459
+ },
1460
+ calendar: {
1461
+ days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
1462
+ daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
1463
+ months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
1464
+ monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
1465
+ },
1466
+ applicationLayout: {
1467
+ visibilityToggleTitle: "Toggle visibility sidenav"
1468
+ }
1469
+ };
1470
+ exports.defaultTranslatedComponentLabels = defaultTranslatedComponentLabels;
@@ -11,6 +11,8 @@ exports["default"] = void 0;
11
11
 
12
12
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
13
 
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+
14
16
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
17
 
16
18
  var _react = _interopRequireWildcard(require("react"));
@@ -23,14 +25,16 @@ var _ClickAwayListener = _interopRequireDefault(require("@material-ui/core/Click
23
25
 
24
26
  var _Popover = _interopRequireDefault(require("@material-ui/core/Popover"));
25
27
 
26
- var _moment = _interopRequireDefault(require("moment"));
28
+ var _dayjs = _interopRequireDefault(require("dayjs"));
27
29
 
28
- var _dateFns = _interopRequireDefault(require("@date-io/date-fns"));
30
+ var _dayjs2 = _interopRequireDefault(require("@date-io/dayjs"));
29
31
 
30
32
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
31
33
 
32
34
  var _useTheme = _interopRequireDefault(require("../useTheme"));
33
35
 
36
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
37
+
34
38
  var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
35
39
 
36
40
  var _templateObject;
@@ -39,34 +43,37 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
39
43
 
40
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; }
41
45
 
46
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
47
+
48
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
49
+
50
+ var getValueForPicker = function getValueForPicker(value, format) {
51
+ return (0, _dayjs["default"])(value, format.toUpperCase(), true).format();
52
+ };
53
+
42
54
  var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
43
55
  var label = _ref.label,
44
- _ref$name = _ref.name,
45
- name = _ref$name === void 0 ? "" : _ref$name,
56
+ name = _ref.name,
57
+ _ref$defaultValue = _ref.defaultValue,
58
+ defaultValue = _ref$defaultValue === void 0 ? "" : _ref$defaultValue,
46
59
  value = _ref.value,
47
60
  _ref$format = _ref.format,
48
61
  format = _ref$format === void 0 ? "dd-MM-yyyy" : _ref$format,
49
62
  helperText = _ref.helperText,
50
63
  _ref$placeholder = _ref.placeholder,
51
64
  placeholder = _ref$placeholder === void 0 ? false : _ref$placeholder,
52
- _ref$clearable = _ref.clearable,
53
- clearable = _ref$clearable === void 0 ? false : _ref$clearable,
54
- _ref$disabled = _ref.disabled,
55
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
56
- _ref$optional = _ref.optional,
57
- optional = _ref$optional === void 0 ? false : _ref$optional,
65
+ clearable = _ref.clearable,
66
+ disabled = _ref.disabled,
67
+ optional = _ref.optional,
58
68
  onChange = _ref.onChange,
59
69
  onBlur = _ref.onBlur,
60
70
  error = _ref.error,
61
- _ref$autocomplete = _ref.autocomplete,
62
- autocomplete = _ref$autocomplete === void 0 ? "off" : _ref$autocomplete,
71
+ autocomplete = _ref.autocomplete,
63
72
  margin = _ref.margin,
64
- _ref$size = _ref.size,
65
- size = _ref$size === void 0 ? "medium" : _ref$size,
66
- _ref$tabIndex = _ref.tabIndex,
67
- tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
73
+ size = _ref.size,
74
+ tabIndex = _ref.tabIndex;
68
75
 
69
- var _useState = (0, _react.useState)(""),
76
+ var _useState = (0, _react.useState)(defaultValue),
70
77
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
71
78
  innerValue = _useState2[0],
72
79
  setInnerValue = _useState2[1];
@@ -82,6 +89,7 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
82
89
  setAnchorEl = _useState6[1];
83
90
 
84
91
  var colorsTheme = (0, _useTheme["default"])();
92
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
85
93
  var refDate = ref || (0, _react.useRef)(null);
86
94
 
87
95
  var handleCalendarOnKeyDown = function handleCalendarOnKeyDown(event) {
@@ -95,12 +103,13 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
95
103
  };
96
104
 
97
105
  var handleCalendarOnClick = function handleCalendarOnClick(newDate) {
98
- var newValue = (0, _moment["default"])(newDate).format(format.toUpperCase());
106
+ var newValue = (0, _dayjs["default"])(newDate).format(format.toUpperCase());
99
107
  value !== null && value !== void 0 ? value : setInnerValue(newValue);
100
- onChange === null || onChange === void 0 ? void 0 : onChange({
108
+ newDate !== null && newDate !== void 0 && newDate.toJSON() ? onChange === null || onChange === void 0 ? void 0 : onChange({
101
109
  value: newValue,
102
- error: null,
103
- date: newDate !== null && newDate !== void 0 && newDate.toJSON() ? newDate : null
110
+ date: newDate
111
+ }) : onChange === null || onChange === void 0 ? void 0 : onChange({
112
+ value: newValue
104
113
  });
105
114
  };
106
115
 
@@ -108,29 +117,33 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
108
117
  var newValue = _ref2.value,
109
118
  inputError = _ref2.error;
110
119
  value !== null && value !== void 0 ? value : setInnerValue(newValue);
111
- var momentDate = (0, _moment["default"])(newValue, format.toUpperCase(), true);
112
- var invalidDateMessage = newValue !== "" && !momentDate.isValid() ? "Invalid date." : null;
113
- 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 ? {
114
123
  value: newValue,
115
- error: inputError || invalidDateMessage,
116
- date: momentDate.isValid() ? momentDate.toDate() : null
117
- });
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);
118
131
  };
119
132
 
120
133
  var handleIOnBlur = function handleIOnBlur(_ref3) {
121
134
  var value = _ref3.value,
122
135
  inputError = _ref3.error;
123
- var momentDate = (0, _moment["default"])(value, format.toUpperCase(), true);
124
- var invalidDateMessage = value !== "" && !momentDate.isValid() ? "Invalid date." : null;
125
- 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 ? {
126
139
  value: value,
127
- error: inputError || invalidDateMessage,
128
- date: momentDate.isValid() ? momentDate.toDate() : null
129
- });
130
- };
131
-
132
- var getValueForPicker = function getValueForPicker() {
133
- 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);
134
147
  };
135
148
 
136
149
  var openCalendar = function openCalendar() {
@@ -300,10 +313,11 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
300
313
  }, /*#__PURE__*/_react["default"].createElement(_core.MuiThemeProvider, {
301
314
  theme: dateTheme
302
315
  }, /*#__PURE__*/_react["default"].createElement(_pickers.MuiPickersUtilsProvider, {
303
- utils: _dateFns["default"]
316
+ utils: _dayjs2["default"]
304
317
  }, /*#__PURE__*/_react["default"].createElement(StyledDPicker, null, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
305
318
  label: label,
306
319
  name: name,
320
+ defaultValue: defaultValue,
307
321
  value: value !== null && value !== void 0 ? value : innerValue,
308
322
  helperText: helperText,
309
323
  placeholder: placeholder ? format.toUpperCase() : null,
@@ -343,7 +357,7 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
343
357
  "aria-modal": "true"
344
358
  }, /*#__PURE__*/_react["default"].createElement(_pickers.DatePicker, {
345
359
  variant: "static",
346
- value: getValueForPicker(),
360
+ value: getValueForPicker(value !== null && value !== void 0 ? value : innerValue, format),
347
361
  onChange: function onChange(date) {
348
362
  return handleCalendarOnClick(date);
349
363
  },
@@ -19,7 +19,7 @@ export const Chromatic = () => (
19
19
  </ExampleContainer>
20
20
  <ExampleContainer>
21
21
  <Title title="Disabled" theme="light" level={4} />
22
- <DxcDateInput label="Disabled date input" helperText="Help message" value="06-04-2027" clearable disabled />
22
+ <DxcDateInput label="Disabled date input" helperText="Help message" defaultValue="06-04-2027" clearable disabled />
23
23
  </ExampleContainer>
24
24
  <ExampleContainer>
25
25
  <Title title="Invalid" theme="light" level={4} />
@@ -27,7 +27,7 @@ export const Chromatic = () => (
27
27
  </ExampleContainer>
28
28
  <ExampleContainer>
29
29
  <Title title="Relation between icons" theme="light" level={4} />
30
- <DxcDateInput label="Error date input" error="Error message." value="06-04-2027" clearable />
30
+ <DxcDateInput label="Error date input" error="Error message." defaultValue="06-04-2027" clearable />
31
31
  </ExampleContainer>
32
32
  <BackgroundColorProvider color="#333333">
33
33
  <DarkContainer>
@@ -38,7 +38,7 @@ export const Chromatic = () => (
38
38
  </ExampleContainer>
39
39
  <ExampleContainer>
40
40
  <Title title="Disabled" theme="dark" level={4} />
41
- <DxcDateInput label="Disabled Date input" helperText="Help message" value="06-04-2027" clearable disabled />
41
+ <DxcDateInput label="Disabled Date input" helperText="Help message" defaultValue="06-04-2027" clearable disabled />
42
42
  </ExampleContainer>
43
43
  <ExampleContainer>
44
44
  <Title title="Invalid" theme="dark" level={4} />
@@ -46,7 +46,7 @@ export const Chromatic = () => (
46
46
  </ExampleContainer>
47
47
  <ExampleContainer>
48
48
  <Title title="Relation between icons" theme="dark" level={4} />
49
- <DxcDateInput label="Error date input" value="06-04-2027" error="Error message." clearable />
49
+ <DxcDateInput label="Error date input" defaultValue="06-04-2027" error="Error message." clearable />
50
50
  </ExampleContainer>
51
51
  </DarkContainer>
52
52
  </BackgroundColorProvider>
@@ -98,7 +98,7 @@ export const Chromatic = () => (
98
98
  const DatePicker = () => (
99
99
  <ExampleContainer expanded>
100
100
  <Title title="Show date input" theme="light" level={4} />
101
- <DxcDateInput label="Date input" value="10-06-2023" />
101
+ <DxcDateInput label="Date input" defaultValue="10-06-2023" />
102
102
  </ExampleContainer>
103
103
  );
104
104
 
@@ -113,7 +113,7 @@ ShowDatePicker.play = async ({ canvasElement }) => {
113
113
  const YearPicker = () => (
114
114
  <ExampleContainer expanded>
115
115
  <Title title="Show date input" theme="light" level={4} />
116
- <DxcDateInput label="Date input" value="10-06-2023" />
116
+ <DxcDateInput label="Date input" defaultValue="10-06-2023" />
117
117
  </ExampleContainer>
118
118
  );
119
119
 
@@ -126,7 +126,7 @@ ShowYearPicker.play = async () => {
126
126
  const YearPickerFocus = () => (
127
127
  <ExampleContainer expanded>
128
128
  <Title title="Show date input" theme="light" level={4} />
129
- <DxcDateInput label="Date input" value="10-06-2023" />
129
+ <DxcDateInput label="Date input" defaultValue="10-06-2023" />
130
130
  </ExampleContainer>
131
131
  );
132
132