@dxc-technology/halstack-react 5.0.0 → 6.0.0

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 (128) hide show
  1. package/HalstackContext.d.ts +4 -2
  2. package/HalstackContext.js +110 -58
  3. package/accordion/Accordion.stories.tsx +1 -1
  4. package/accordion-group/AccordionGroup.js +1 -0
  5. package/alert/Alert.js +4 -1
  6. package/badge/Badge.d.ts +1 -1
  7. package/badge/Badge.js +5 -3
  8. package/badge/types.d.ts +1 -0
  9. package/bleed/Bleed.js +1 -34
  10. package/bleed/Bleed.stories.tsx +94 -95
  11. package/bleed/types.d.ts +1 -1
  12. package/box/Box.js +22 -32
  13. package/bulleted-list/BulletedList.d.ts +7 -0
  14. package/bulleted-list/BulletedList.js +123 -0
  15. package/bulleted-list/BulletedList.stories.tsx +200 -0
  16. package/bulleted-list/types.d.ts +11 -0
  17. package/{list → bulleted-list}/types.js +0 -0
  18. package/button/Button.js +3 -1
  19. package/card/Card.js +34 -36
  20. package/checkbox/Checkbox.js +4 -1
  21. package/common/variables.js +211 -88
  22. package/date-input/DateInput.js +5 -2
  23. package/dropdown/Dropdown.stories.tsx +1 -1
  24. package/file-input/FileInput.js +9 -6
  25. package/file-input/FileItem.js +7 -5
  26. package/flex/Flex.d.ts +4 -0
  27. package/flex/Flex.js +57 -0
  28. package/flex/Flex.stories.tsx +103 -0
  29. package/flex/types.d.ts +21 -0
  30. package/{radio → flex}/types.js +0 -0
  31. package/footer/Footer.js +7 -5
  32. package/footer/Icons.js +1 -1
  33. package/header/Header.js +7 -4
  34. package/inset/Inset.js +1 -34
  35. package/inset/Inset.stories.tsx +36 -36
  36. package/inset/types.d.ts +1 -1
  37. package/layout/ApplicationLayout.d.ts +16 -6
  38. package/layout/ApplicationLayout.js +70 -117
  39. package/layout/ApplicationLayout.stories.tsx +83 -93
  40. package/layout/Icons.d.ts +5 -0
  41. package/layout/Icons.js +13 -2
  42. package/layout/SidenavContext.d.ts +5 -0
  43. package/layout/SidenavContext.js +19 -0
  44. package/layout/types.d.ts +18 -33
  45. package/link/Link.d.ts +3 -2
  46. package/link/Link.js +57 -70
  47. package/link/Link.stories.tsx +88 -53
  48. package/link/Link.test.js +7 -15
  49. package/link/types.d.ts +7 -23
  50. package/main.d.ts +7 -10
  51. package/main.js +38 -56
  52. package/number-input/types.d.ts +1 -1
  53. package/package.json +3 -1
  54. package/paginator/Paginator.js +17 -38
  55. package/paginator/Paginator.test.js +42 -0
  56. package/paragraph/Paragraph.d.ts +6 -0
  57. package/paragraph/Paragraph.js +38 -0
  58. package/paragraph/Paragraph.stories.tsx +44 -0
  59. package/password-input/PasswordInput.js +7 -4
  60. package/password-input/PasswordInput.test.js +1 -2
  61. package/password-input/types.d.ts +1 -1
  62. package/progress-bar/ProgressBar.js +1 -1
  63. package/progress-bar/ProgressBar.stories.jsx +11 -11
  64. package/quick-nav/QuickNav.js +74 -20
  65. package/quick-nav/QuickNav.stories.tsx +43 -16
  66. package/quick-nav/types.d.ts +4 -4
  67. package/radio-group/Radio.js +1 -1
  68. package/radio-group/RadioGroup.js +10 -7
  69. package/resultsetTable/ResultsetTable.test.js +42 -0
  70. package/select/Listbox.d.ts +1 -1
  71. package/select/Listbox.js +35 -8
  72. package/select/Select.js +83 -78
  73. package/select/Select.stories.tsx +144 -100
  74. package/select/Select.test.js +299 -194
  75. package/select/types.d.ts +3 -4
  76. package/sidenav/Sidenav.d.ts +6 -5
  77. package/sidenav/Sidenav.js +172 -52
  78. package/sidenav/Sidenav.stories.tsx +154 -156
  79. package/sidenav/Sidenav.test.js +25 -37
  80. package/sidenav/types.d.ts +50 -27
  81. package/spinner/Spinner.js +1 -1
  82. package/switch/Switch.js +4 -1
  83. package/tabs/Tabs.stories.tsx +0 -6
  84. package/tabs-nav/NavTabs.d.ts +8 -0
  85. package/tabs-nav/NavTabs.js +125 -0
  86. package/tabs-nav/NavTabs.stories.tsx +170 -0
  87. package/tabs-nav/NavTabs.test.js +82 -0
  88. package/tabs-nav/Tab.d.ts +4 -0
  89. package/tabs-nav/Tab.js +132 -0
  90. package/tabs-nav/types.d.ts +53 -0
  91. package/{row → tabs-nav}/types.js +0 -0
  92. package/text-input/Suggestion.d.ts +4 -0
  93. package/text-input/Suggestion.js +55 -0
  94. package/text-input/TextInput.js +46 -72
  95. package/text-input/TextInput.test.js +1 -1
  96. package/text-input/types.d.ts +14 -2
  97. package/textarea/Textarea.js +10 -19
  98. package/textarea/types.d.ts +1 -1
  99. package/typography/Typography.d.ts +4 -0
  100. package/typography/Typography.js +131 -0
  101. package/typography/Typography.stories.tsx +198 -0
  102. package/typography/types.d.ts +18 -0
  103. package/{stack → typography}/types.js +0 -0
  104. package/useTranslatedLabels.d.ts +2 -0
  105. package/useTranslatedLabels.js +20 -0
  106. package/wizard/Wizard.js +36 -41
  107. package/wizard/Wizard.stories.tsx +20 -1
  108. package/wizard/types.d.ts +4 -3
  109. package/list/List.d.ts +0 -4
  110. package/list/List.js +0 -47
  111. package/list/List.stories.tsx +0 -95
  112. package/list/types.d.ts +0 -7
  113. package/radio/Radio.d.ts +0 -4
  114. package/radio/Radio.js +0 -173
  115. package/radio/Radio.stories.tsx +0 -192
  116. package/radio/Radio.test.js +0 -71
  117. package/radio/types.d.ts +0 -54
  118. package/row/Row.d.ts +0 -3
  119. package/row/Row.js +0 -127
  120. package/row/Row.stories.tsx +0 -237
  121. package/row/types.d.ts +0 -28
  122. package/stack/Stack.d.ts +0 -3
  123. package/stack/Stack.js +0 -97
  124. package/stack/Stack.stories.tsx +0 -164
  125. package/stack/types.d.ts +0 -24
  126. package/text/Text.d.ts +0 -7
  127. package/text/Text.js +0 -30
  128. package/text/Text.stories.tsx +0 -19
@@ -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,21 @@ 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
269
+ },
270
+ bulletedList: {
271
+ fontColor: globalTokens.hal_black,
272
+ fontColorOnDark: globalTokens.hal_white,
273
+ bulletIconHeight: "1.5rem",
274
+ bulletIconWidth: "1.5rem",
275
+ bulletHeight: "5px",
276
+ bulletWidth: "5px",
277
+ bulletMarginRight: "0.5rem"
266
278
  },
267
279
  button: {
268
280
  labelFontLineHeight: globalTokens.type_leading_normal,
@@ -483,14 +495,13 @@ var componentTokens = {
483
495
  focusDropBorderColor: globalTokens.hal_blue_l_50,
484
496
  disabledDropBorderColor: globalTokens.hal_grey_l_60,
485
497
  dragoverDropBackgroundColor: globalTokens.color_blue_50,
486
- hoverFileItemIconBackgroundColor: globalTokens.hal_grey_l_95,
487
498
  activeFileItemIconBackgrounColor: globalTokens.hal_grey_l_80,
488
499
  errorFileItemBorderColor: globalTokens.hal_red_s_41,
489
500
  errorFileItemBackgroundColor: globalTokens.color_red_50,
490
- errorFileItemIconBackgroundColor: globalTokens.color_red_700,
501
+ errorFilePreviewBackgroundColor: globalTokens.color_red_700,
491
502
  errorFileItemIconColor: globalTokens.hal_red_s_41,
492
503
  fileItemIconBackgroundColor: globalTokens.hal_grey_l_95,
493
- fileItemIconColor: globalTokens.color_grey_600,
504
+ deleteFileItemColor: globalTokens.hal_black,
494
505
  errorMessageFontColor: globalTokens.hal_red_s_41,
495
506
  labelFontFamily: globalTokens.type_sans,
496
507
  labelFontSize: globalTokens.type_scale_02,
@@ -517,9 +528,12 @@ var componentTokens = {
517
528
  fileItemBorderThickness: globalTokens.border_width_1,
518
529
  fileItemBorderStyle: globalTokens.border_solid,
519
530
  fileItemBorderRadius: globalTokens.border_radius_medium,
520
- hoverDeleteFileItemBackgroundColor: "#0000000d",
521
- activeDeleteFileItemBackgroundColor: "#00000033",
522
- focusActionBorderColor: globalTokens.hal_blue_l_50
531
+ hoverDeleteFileItemBackgroundColor: globalTokens.color_grey_a_100,
532
+ activeDeleteFileItemBackgroundColor: globalTokens.color_grey_a_300,
533
+ focusDeleteFileItemBorderColor: globalTokens.hal_blue_l_50,
534
+ filePreviewBackgroundColor: globalTokens.hal_grey_l_95,
535
+ filePreviewIconColor: globalTokens.color_grey_600,
536
+ errorFilePreviewIconColor: globalTokens.hal_red_s_41
523
537
  },
524
538
  footer: {
525
539
  height: "124px",
@@ -712,7 +726,7 @@ var componentTokens = {
712
726
  link: {
713
727
  fontColor: globalTokens.hal_blue_s_35,
714
728
  fontFamily: globalTokens.inherit,
715
- fontSize: globalTokens.type_scale_root,
729
+ fontSize: globalTokens.inherit,
716
730
  fontStyle: globalTokens.type_normal,
717
731
  fontWeight: globalTokens.type_regular,
718
732
  iconSize: "16px",
@@ -729,6 +743,13 @@ var componentTokens = {
729
743
  activeUnderlineColor: globalTokens.black,
730
744
  focusColor: globalTokens.hal_blue_l_50
731
745
  },
746
+ paragraph: {
747
+ fontColor: globalTokens.hal_black,
748
+ fontColorOnDark: globalTokens.hal_white,
749
+ display: "block",
750
+ fontSize: globalTokens.type_scale_03,
751
+ fontWeight: globalTokens.type_regular
752
+ },
732
753
  paginator: {
733
754
  backgroundColor: globalTokens.darkWhite,
734
755
  fontColor: globalTokens.hal_black,
@@ -737,15 +758,15 @@ var componentTokens = {
737
758
  fontStyle: globalTokens.type_normal,
738
759
  fontWeight: globalTokens.type_regular,
739
760
  fontTextTransform: "none",
740
- height: "64px",
741
- width: "100%",
742
- marginRight: "40px",
743
- marginLeft: "20px",
761
+ verticalPadding: "0.75rem",
762
+ horizontalPadding: "2rem",
763
+ marginRight: "2rem",
764
+ marginLeft: "2rem",
744
765
  itemsPerPageSelectorMarginLeft: "0px",
745
- itemsPerPageSelectorMarginRight: "30px",
766
+ itemsPerPageSelectorMarginRight: "1rem",
746
767
  pageSelectorMarginRight: "30px",
747
768
  pageSelectorMarginLeft: "0px",
748
- totalItemsContainerMarginRight: "30px",
769
+ totalItemsContainerMarginRight: "3rem",
749
770
  totalItemsContainerMarginLeft: "0px"
750
771
  },
751
772
  progressBar: {
@@ -777,21 +798,21 @@ var componentTokens = {
777
798
  overlayColor: globalTokens.black,
778
799
  overlayOpacity: "0.8"
779
800
  },
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,
801
+ quickNav: {
802
+ fontColor: globalTokens.hal_grey_s_40,
803
+ hoverFontColor: globalTokens.hal_purple_d_70,
804
+ selectedFontColor: globalTokens.hal_purple_s_38,
805
+ dividerBorderColor: globalTokens.hal_grey_l_75,
806
+ focusBorderColor: globalTokens.hal_blue_l_50,
807
+ focusBorderStyle: globalTokens.border_solid,
808
+ focusBorderThickness: globalTokens.border_width_2,
809
+ focusBorderRadius: globalTokens.border_width_2,
810
+ paddingTop: globalTokens.spacing_03,
811
+ paddingBottom: globalTokens.spacing_03,
812
+ paddingLeft: globalTokens.spacing_05,
813
+ paddingRight: globalTokens.spacing_05,
793
814
  fontFamily: globalTokens.type_sans,
794
- fontSize: globalTokens.type_scale_root,
815
+ fontSize: globalTokens.type_scale_02,
795
816
  fontStyle: globalTokens.type_normal,
796
817
  fontWeight: globalTokens.type_regular
797
818
  },
@@ -905,24 +926,33 @@ var componentTokens = {
905
926
  arrowContainerColor: globalTokens.hal_grey_l_90,
906
927
  arrowColor: globalTokens.hal_black,
907
928
  titleFontFamily: globalTokens.type_sans,
908
- titleFontSize: globalTokens.type_scale_05,
929
+ titleFontSize: globalTokens.type_scale_04,
909
930
  titleFontStyle: globalTokens.type_normal,
910
- titleFontWeight: globalTokens.type_regular,
911
- titleFontColor: globalTokens.hal_black,
931
+ titleFontWeight: globalTokens.type_semibold,
932
+ titleFontColor: globalTokens.color_grey_800,
912
933
  titleFontTextTransform: "none",
913
934
  titleFontLetterSpacing: globalTokens.type_spacing_normal,
914
- subtitleFontFamily: globalTokens.type_sans,
915
- subtitleFontSize: globalTokens.type_scale_03,
916
- subtitleFontStyle: globalTokens.type_normal,
917
- subtitleFontWeight: globalTokens.type_regular,
918
- subtitleFontColor: globalTokens.color_grey_800,
919
- subtitleFontTextTransform: globalTokens.type_uppercase,
920
- subtitleFontLetterSpacing: globalTokens.type_spacing_wide_02,
935
+ groupTitleFontFamily: globalTokens.type_sans,
936
+ groupTitleFontSize: globalTokens.type_scale_02,
937
+ groupTitleFontStyle: globalTokens.type_normal,
938
+ groupTitleFontWeight: globalTokens.type_semibold,
939
+ groupTitleFontColor: globalTokens.color_grey_800,
940
+ groupTitleHoverBackgroundColor: globalTokens.hal_grey_l_90,
941
+ groupTitleActiveBackgroundColor: globalTokens.hal_grey_l_80,
942
+ groupTitleSelectedFontColor: globalTokens.white,
943
+ groupTitleSelectedBackgroundColor: globalTokens.white,
944
+ groupTitleFontTextTransform: globalTokens.type_uppercase,
945
+ groupTitleFontLetterSpacing: globalTokens.type_spacing_wide_02,
921
946
  linkFontFamily: globalTokens.type_sans,
922
947
  linkFontSize: globalTokens.type_scale_02,
923
948
  linkFontStyle: globalTokens.type_normal,
924
949
  linkFontWeight: globalTokens.type_regular,
925
950
  linkFontColor: globalTokens.color_grey_800,
951
+ linkHoverBackgroundColor: globalTokens.hal_grey_l_90,
952
+ linkSelectedFontColor: globalTokens.white,
953
+ linkSelectedBackgroundColor: globalTokens.color_grey_800,
954
+ linkSelectedHoverFontColor: globalTokens.white,
955
+ linkSelectedHoverBackgroundColor: globalTokens.color_grey_600,
926
956
  linkFontTextTransform: "none",
927
957
  linkFontLetterSpacing: globalTokens.type_spacing_wide_01,
928
958
  linkTextDecoration: globalTokens.type_no_line,
@@ -1010,7 +1040,7 @@ var componentTokens = {
1010
1040
  },
1011
1041
  spinner: {
1012
1042
  trackCircleColor: "#5f249f",
1013
- trackCircleColorOnDark: "#a46ede",
1043
+ trackCircleColorOverlay: "#a46ede",
1014
1044
  totalCircleColor: globalTokens.white,
1015
1045
  labelFontFamily: globalTokens.type_sans,
1016
1046
  labelFontSize: globalTokens.type_scale_02,
@@ -1145,6 +1175,7 @@ var componentTokens = {
1145
1175
  disabledFontColor: "#999999",
1146
1176
  disabledIconColor: "#999999",
1147
1177
  disabledFontStyle: globalTokens.type_normal,
1178
+ disabledBadgeBackgroundColor: "#0000004D",
1148
1179
  hoverBackgroundColor: "#f2eafa",
1149
1180
  pressedBackgroundColor: "#e5d5f6",
1150
1181
  pressedFontWeight: globalTokens.type_semibold,
@@ -1264,57 +1295,64 @@ var componentTokens = {
1264
1295
  optionFocusBorderThickness: globalTokens.border_width_2
1265
1296
  },
1266
1297
  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",
1298
+ visitedStepFontColor: globalTokens.hal_black,
1299
+ visitedStepBackgroundColor: globalTokens.hal_white,
1300
+ visitedStepBorderColor: globalTokens.hal_black,
1301
+ unvisitedStepFontColor: globalTokens.hal_grey_s_40,
1302
+ unvisitedLabelFontColor: globalTokens.hal_grey_s_40,
1303
+ unvisitedHelperTextFontColor: globalTokens.hal_grey_s_40,
1304
+ unvisitedStepBackgroundColor: globalTokens.transparent,
1305
+ unvisitedStepBorderColor: globalTokens.hal_grey_s_40,
1306
+ selectedStepFontColor: globalTokens.white,
1307
+ selectedStepBackgroundColor: globalTokens.hal_purple_s_38,
1308
+ selectedStepBorderColor: globalTokens.hal_purple_s_38,
1309
+ selectedLabelFontColor: globalTokens.hal_black,
1310
+ selectedHelperTextFontColor: globalTokens.hal_black,
1311
+ selectedStepWidth: "32px",
1312
+ selectedStepHeight: "32px",
1313
+ selectedStepBorderThickness: "2px",
1314
+ selectedStepBorderStyle: "solid",
1315
+ selectedStepBorderRadius: "45px",
1316
+ stepFontSize: globalTokens.type_scale_03,
1317
+ stepFontFamily: globalTokens.type_sans,
1318
+ stepFontStyle: globalTokens.type_normal,
1319
+ stepFontWeight: globalTokens.type_regular,
1320
+ stepFontTracking: globalTokens.type_spacing_wide_02,
1321
+ stepIconSize: "20px",
1322
+ stepWidth: "32px",
1323
+ stepHeight: "32px",
1324
+ stepBorderThickness: "2px",
1325
+ stepBorderStyle: "solid",
1326
+ stepBorderRadius: "45px",
1327
+ visitedLabelFontColor: globalTokens.hal_black,
1279
1328
  labelFontSize: globalTokens.type_scale_03,
1280
1329
  labelFontFamily: globalTokens.type_sans,
1281
1330
  labelFontStyle: globalTokens.type_normal,
1282
1331
  labelFontWeight: globalTokens.type_regular,
1283
- labelLetterSpacing: globalTokens.type_spacing_normal,
1332
+ labelFontTracking: globalTokens.type_spacing_normal,
1284
1333
  labelFontTextTransform: "none",
1285
1334
  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,
1335
+ helperTextFontSize: globalTokens.type_scale_02,
1336
+ helperTextFontFamily: globalTokens.type_sans,
1337
+ helperTextFontStyle: globalTokens.type_normal,
1338
+ helperTextFontWeight: globalTokens.type_regular,
1339
+ helperTextFontTracking: globalTokens.type_spacing_normal,
1340
+ helperTextFontTextTransform: "none",
1341
+ visitedHelperTextFontColor: globalTokens.hal_black,
1342
+ helperTextTextAlign: "left",
1343
+ disabledStepBackgroundColor: globalTokens.hal_grey_l_95,
1344
+ disabledStepFontColor: globalTokens.hal_grey_l_60,
1345
+ disabledLabelFontColor: globalTokens.hal_grey_l_60,
1346
+ disabledHelperTextFontColor: globalTokens.hal_grey_l_60,
1347
+ disabledStepBorderColor: globalTokens.hal_grey_l_95,
1348
+ disabledStepWidth: "32px",
1349
+ disabledStepHeight: "32px",
1350
+ disabledStepBorderThickness: "2px",
1351
+ disabledStepBorderStyle: "solid",
1352
+ disabledStepBorderRadius: "45px",
1315
1353
  separatorBorderThickness: "1px",
1316
1354
  separatorBorderStyle: "solid",
1317
- separatorColor: globalTokens.lightGrey,
1355
+ separatorColor: globalTokens.hal_grey_s_40,
1318
1356
  focusColor: globalTokens.hal_blue_l_50
1319
1357
  }
1320
1358
  };
@@ -1369,4 +1407,89 @@ var typeface = {
1369
1407
  textTransform: "uppercase"
1370
1408
  }
1371
1409
  };
1372
- exports.typeface = typeface;
1410
+ exports.typeface = typeface;
1411
+ var defaultTranslatedComponentLabels = {
1412
+ formFields: {
1413
+ optionalLabel: "(Optional)",
1414
+ requiredSelectionErrorMessage: "This field is required. Please, choose an option.",
1415
+ requiredValueErrorMessage: "This field is required. Please, enter a value.",
1416
+ formatRequestedErrorMessage: "Please match the format requested.",
1417
+ lengthErrorMessage: function lengthErrorMessage(minLength, maxLength) {
1418
+ return "Min length ".concat(minLength, ", max length ").concat(maxLength, ".");
1419
+ },
1420
+ logoAlternativeText: "Logo"
1421
+ },
1422
+ alert: {
1423
+ infoTitleText: "information",
1424
+ successTitleText: "success",
1425
+ warningTitleText: "warning",
1426
+ errorTitleText: "error"
1427
+ },
1428
+ dateInput: {
1429
+ invalidDateErrorMessage: "Invalid date."
1430
+ },
1431
+ fileInput: {
1432
+ fileSizeGreaterThanErrorMessage: "File size must be greater than min size.",
1433
+ fileSizeLessThanErrorMessage: "File size must be less than max size.",
1434
+ multipleButtonLabelDefault: "Select files",
1435
+ singleButtonLabelDefault: "Select file",
1436
+ dropAreaButtonLabelDefault: "Select",
1437
+ multipleDropAreaLabelDefault: "or drop files",
1438
+ singleDropAreaLabelDefault: "or drop a file"
1439
+ },
1440
+ footer: {
1441
+ copyrightText: function copyrightText(year) {
1442
+ return "\xA9 DXC Technology ".concat(year, ". All rights reserved.");
1443
+ }
1444
+ },
1445
+ numberInput: {
1446
+ valueGreaterThanOrEqualToErrorMessage: function valueGreaterThanOrEqualToErrorMessage(value) {
1447
+ return "Value must be greater than or equal to ".concat(value, ".");
1448
+ },
1449
+ valueLessThanOrEqualToErrorMessage: function valueLessThanOrEqualToErrorMessage(value) {
1450
+ return "Value must be less than or equal to ".concat(value, ".");
1451
+ },
1452
+ decrementValueTitle: "Decrement value",
1453
+ incrementValueTitle: "Increment value"
1454
+ },
1455
+ paginator: {
1456
+ itemsPerPageText: "Items per page ",
1457
+ minToMaxOfText: function minToMaxOfText(minNumberOfItems, maxNumberOfItems, totalItems) {
1458
+ return "".concat(minNumberOfItems, " to ").concat(maxNumberOfItems, " of ").concat(totalItems);
1459
+ },
1460
+ goToPageText: "Go to page:",
1461
+ pageOfText: function pageOfText(pageNumber, totalPagesNumber) {
1462
+ return "Page: ".concat(pageNumber, " of ").concat(totalPagesNumber);
1463
+ }
1464
+ },
1465
+ passwordInput: {
1466
+ inputShowPasswordTitle: "Show password",
1467
+ inputHidePasswordTitle: "Hide password"
1468
+ },
1469
+ quickNav: {
1470
+ contentTitle: "Contents"
1471
+ },
1472
+ radioGroup: {
1473
+ optionalItemLabelDefault: "N/A"
1474
+ },
1475
+ select: {
1476
+ noMatchesErrorMessage: "No matches found",
1477
+ actionClearSelectionTitle: "Clear selection",
1478
+ actionClearSearchTitle: "Clear search"
1479
+ },
1480
+ textInput: {
1481
+ clearFieldActionTitle: "Clear field",
1482
+ searchingMessage: "Searching...",
1483
+ fetchingDataErrorMessage: "Error fetching data"
1484
+ },
1485
+ calendar: {
1486
+ days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
1487
+ daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
1488
+ months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
1489
+ monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
1490
+ },
1491
+ applicationLayout: {
1492
+ visibilityToggleTitle: "Toggle visibility sidenav"
1493
+ }
1494
+ };
1495
+ exports.defaultTranslatedComponentLabels = defaultTranslatedComponentLabels;
@@ -33,6 +33,8 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
33
33
 
34
34
  var _useTheme = _interopRequireDefault(require("../useTheme"));
35
35
 
36
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
37
+
36
38
  var _TextInput = _interopRequireDefault(require("../text-input/TextInput"));
37
39
 
38
40
  var _templateObject;
@@ -87,6 +89,7 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
87
89
  setAnchorEl = _useState6[1];
88
90
 
89
91
  var colorsTheme = (0, _useTheme["default"])();
92
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
90
93
  var refDate = ref || (0, _react.useRef)(null);
91
94
 
92
95
  var handleCalendarOnKeyDown = function handleCalendarOnKeyDown(event) {
@@ -115,7 +118,7 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
115
118
  inputError = _ref2.error;
116
119
  value !== null && value !== void 0 ? value : setInnerValue(newValue);
117
120
  var dayjsDate = (0, _dayjs["default"])(newValue, format.toUpperCase(), true);
118
- var invalidDateMessage = newValue !== "" && !dayjsDate.isValid() && "Invalid date.";
121
+ var invalidDateMessage = newValue !== "" && !dayjsDate.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
119
122
  var callbackParams = inputError || invalidDateMessage ? {
120
123
  value: newValue,
121
124
  error: inputError || invalidDateMessage
@@ -131,7 +134,7 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
131
134
  var value = _ref3.value,
132
135
  inputError = _ref3.error;
133
136
  var dayjsDate = (0, _dayjs["default"])(value, format.toUpperCase(), true);
134
- var invalidDateMessage = value !== "" && !dayjsDate.isValid() && "Invalid date.";
137
+ var invalidDateMessage = value !== "" && !dayjsDate.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
135
138
  var callbackParams = inputError || invalidDateMessage ? {
136
139
  value: value,
137
140
  error: inputError || invalidDateMessage
@@ -17,7 +17,7 @@ const iconSVG = (
17
17
  );
18
18
 
19
19
  const iconSVGLarge = (
20
- <svg enable-background="new 0 0 24 24" height="48px" viewBox="0 0 24 24" width="48px" fill="currentColor">
20
+ <svg enableBackground="new 0 0 24 24" height="48px" viewBox="0 0 24 24" width="48px" fill="currentColor">
21
21
  <g>
22
22
  <path d="M0,0h24v24H0V0z" fill="none" />
23
23
  <path d="M0,0h24v24H0V0z" fill="none" />
@@ -33,6 +33,8 @@ var _variables = require("../common/variables.js");
33
33
 
34
34
  var _useTheme = _interopRequireDefault(require("../useTheme"));
35
35
 
36
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
37
+
36
38
  var _Button = _interopRequireDefault(require("../button/Button"));
37
39
 
38
40
  var _FileItem = _interopRequireDefault(require("./FileItem"));
@@ -127,6 +129,7 @@ var DxcFileInput = function DxcFileInput(_ref) {
127
129
  fileInputId = _useState6[0];
128
130
 
129
131
  var colorsTheme = (0, _useTheme["default"])();
132
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
130
133
  (0, _react.useEffect)(function () {
131
134
  var getFiles = /*#__PURE__*/function () {
132
135
  var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
@@ -204,11 +207,11 @@ var DxcFileInput = function DxcFileInput(_ref) {
204
207
 
205
208
  var checkFileSize = function checkFileSize(file) {
206
209
  if (file.size < minSize) {
207
- return "File size must be greater than min size.";
210
+ return translatedLabels.fileInput.fileSizeGreaterThanErrorMessage;
208
211
  }
209
212
 
210
213
  if (file.size > maxSize) {
211
- return "File size must be less than max size.";
214
+ return translatedLabels.fileInput.fileSizeLessThanErrorMessage;
212
215
  }
213
216
  };
214
217
 
@@ -410,7 +413,7 @@ var DxcFileInput = function DxcFileInput(_ref) {
410
413
  onChange: selectFiles
411
414
  }), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
412
415
  mode: "secondary",
413
- label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : multiple ? "Select files" : "Select file",
416
+ label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : multiple ? translatedLabels.fileInput.multipleButtonLabelDefault : translatedLabels.fileInput.singleButtonLabelDefault,
414
417
  onClick: handleClick,
415
418
  disabled: disabled,
416
419
  size: "medium",
@@ -450,15 +453,15 @@ var DxcFileInput = function DxcFileInput(_ref) {
450
453
  mode: mode
451
454
  }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
452
455
  mode: "secondary",
453
- label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : "Select",
456
+ label: buttonLabel !== null && buttonLabel !== void 0 ? buttonLabel : translatedLabels.fileInput.dropAreaButtonLabelDefault,
454
457
  onClick: handleClick,
455
458
  disabled: disabled,
456
459
  size: "fitContent"
457
460
  })), mode === "dropzone" ? /*#__PURE__*/_react["default"].createElement(DropzoneLabel, {
458
461
  disabled: disabled
459
- }, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? "or drop files" : "or drop a file") : /*#__PURE__*/_react["default"].createElement(FiledropLabel, {
462
+ }, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? translatedLabels.fileInput.multipleDropAreaLabelDefault : translatedLabels.fileInput.singleDropAreaLabelDefault) : /*#__PURE__*/_react["default"].createElement(FiledropLabel, {
460
463
  disabled: disabled
461
- }, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? "or drop files" : "or drop a file")), files.map(function (file) {
464
+ }, dropAreaLabel !== null && dropAreaLabel !== void 0 ? dropAreaLabel : multiple ? translatedLabels.fileInput.multipleDropAreaLabelDefault : translatedLabels.fileInput.singleDropAreaLabelDefault)), files.map(function (file) {
462
465
  return /*#__PURE__*/_react["default"].createElement(FileItemContainer, {
463
466
  mode: mode,
464
467
  multiple: multiple,
@@ -133,9 +133,9 @@ var FileItemContainer = _styledComponents["default"].div(_templateObject3 || (_t
133
133
  var ImagePreview = _styledComponents["default"].img(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n width: 48px;\n height: 48px;\n object-fit: contain;\n margin-right: 12px;\n border-radius: 2px;\n"])));
134
134
 
135
135
  var IconPreviewContainer = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: 12px;\n background-color: ", ";\n width: 48px;\n height: 48px;\n border-radius: 2px;\n color: ", ";\n"])), function (props) {
136
- return props.error ? props.theme.errorFileItemIconBackgroundColor : props.theme.fileItemIconBackgroundColor;
136
+ return props.error ? props.theme.errorFilePreviewBackgroundColor : props.theme.filePreviewBackgroundColor;
137
137
  }, function (props) {
138
- return props.error ? props.theme.errorFileItemIconColor : props.theme.fileItemIconColor;
138
+ return props.error ? props.theme.errorFilePreviewIconColor : props.theme.filePreviewIconColor;
139
139
  });
140
140
 
141
141
  var IconPreview = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])([""])));
@@ -156,14 +156,16 @@ var FileName = _styledComponents["default"].span(_templateObject7 || (_templateO
156
156
 
157
157
  var ErrorIcon = _styledComponents["default"].span(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n padding: 3px;\n height: 18px;\n width: 18px;\n color: #d0011b;\n"])));
158
158
 
159
- var DeleteIcon = _styledComponents["default"].button(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n font-size: 1rem;\n font-family: ", ";\n border: 1px solid transparent;\n border-radius: 2px;\n margin-left: 4px;\n background-color: transparent;\n box-shadow: 0 0 0 2px transparent;\n padding: 3px;\n cursor: pointer;\n svg {\n line-height: 18px;\n }\n &:hover {\n background-color: ", ";\n }\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n &:active {\n background-color: ", ";\n }\n"])), function (props) {
159
+ var DeleteIcon = _styledComponents["default"].button(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-wrap: wrap;\n align-content: center;\n height: 24px;\n width: 24px;\n font-size: 1rem;\n font-family: ", ";\n border: 1px solid transparent;\n border-radius: 2px;\n margin-left: 4px;\n background-color: transparent;\n box-shadow: 0 0 0 2px transparent;\n padding: 3px;\n cursor: pointer;\n color: ", ";\n svg {\n line-height: 18px;\n }\n &:hover {\n background-color: ", ";\n }\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n &:active {\n background-color: ", ";\n }\n"])), function (props) {
160
160
  return props.theme.fontFamily;
161
+ }, function (props) {
162
+ return props.theme.deleteFileItemColor;
161
163
  }, function (props) {
162
164
  return props.theme.hoverDeleteFileItemBackgroundColor;
163
165
  }, function (props) {
164
- return props.theme.focusActionBorderColor;
166
+ return props.theme.focusDeleteFileItemBorderColor;
165
167
  }, function (props) {
166
- return props.theme.focusActionBorderColor;
168
+ return props.theme.focusDeleteFileItemBorderColor;
167
169
  }, function (props) {
168
170
  return props.theme.activeDeleteFileItemBackgroundColor;
169
171
  });
package/flex/Flex.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import FlexPropsType from "./types";
3
+ declare const DxcFlex: ({ children, ...props }: FlexPropsType) => JSX.Element;
4
+ export default DxcFlex;
package/flex/Flex.js ADDED
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
+
16
+ var _react = _interopRequireDefault(require("react"));
17
+
18
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
19
+
20
+ var _templateObject;
21
+
22
+ var _excluded = ["children"];
23
+
24
+ var DxcFlex = function DxcFlex(_ref) {
25
+ var children = _ref.children,
26
+ props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
27
+ return /*#__PURE__*/_react["default"].createElement(Flex, props, children);
28
+ };
29
+
30
+ var Flex = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n ", "\n"])), function (_ref2) {
31
+ var _ref2$direction = _ref2.direction,
32
+ direction = _ref2$direction === void 0 ? "row" : _ref2$direction,
33
+ _ref2$wrap = _ref2.wrap,
34
+ wrap = _ref2$wrap === void 0 ? "nowrap" : _ref2$wrap,
35
+ _ref2$justifyContent = _ref2.justifyContent,
36
+ justifyContent = _ref2$justifyContent === void 0 ? "flex-start" : _ref2$justifyContent,
37
+ _ref2$alignItems = _ref2.alignItems,
38
+ alignItems = _ref2$alignItems === void 0 ? "stretch" : _ref2$alignItems,
39
+ _ref2$alignContent = _ref2.alignContent,
40
+ alignContent = _ref2$alignContent === void 0 ? "normal" : _ref2$alignContent,
41
+ _ref2$alignSelf = _ref2.alignSelf,
42
+ alignSelf = _ref2$alignSelf === void 0 ? "auto" : _ref2$alignSelf,
43
+ _ref2$gap = _ref2.gap,
44
+ gap = _ref2$gap === void 0 ? "0" : _ref2$gap,
45
+ _ref2$order = _ref2.order,
46
+ order = _ref2$order === void 0 ? 0 : _ref2$order,
47
+ _ref2$grow = _ref2.grow,
48
+ grow = _ref2$grow === void 0 ? 0 : _ref2$grow,
49
+ _ref2$shrink = _ref2.shrink,
50
+ shrink = _ref2$shrink === void 0 ? 1 : _ref2$shrink,
51
+ _ref2$basis = _ref2.basis,
52
+ basis = _ref2$basis === void 0 ? "auto" : _ref2$basis;
53
+ return "\n flex-direction: ".concat(direction, "; \n flex-wrap: ").concat(wrap, "; \n justify-content: ").concat(justifyContent, "; \n align-items: ").concat(alignItems, ";\n align-content: ").concat(alignContent, ";\n gap: ").concat((0, _typeof2["default"])(gap) === "object" ? "".concat(gap.rowGap, " ").concat(gap.columnGap) : gap, ";\n order: ").concat(order, ";\n flex-grow: ").concat(grow, ";\n flex-shrink: ").concat(shrink, ";\n flex-basis: ").concat(basis, ";\n align-self: ").concat(alignSelf, ";\n ");
54
+ });
55
+
56
+ var _default = DxcFlex;
57
+ exports["default"] = _default;