@dxc-technology/halstack-react 0.0.0-bcc5ff3 → 0.0.0-bd364ae

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 (70) hide show
  1. package/HalstackContext.d.ts +4 -2
  2. package/HalstackContext.js +110 -58
  3. package/alert/Alert.js +4 -1
  4. package/badge/Badge.d.ts +1 -1
  5. package/badge/Badge.js +5 -3
  6. package/badge/types.d.ts +1 -0
  7. package/bleed/Bleed.js +1 -34
  8. package/bleed/Bleed.stories.tsx +31 -32
  9. package/bleed/types.d.ts +1 -1
  10. package/box/Box.js +22 -32
  11. package/card/Card.js +34 -36
  12. package/checkbox/Checkbox.js +4 -1
  13. package/common/variables.js +162 -68
  14. package/date-input/DateInput.js +5 -2
  15. package/file-input/FileInput.js +9 -6
  16. package/footer/Footer.js +7 -5
  17. package/header/Header.js +7 -4
  18. package/inset/Inset.js +1 -34
  19. package/inset/Inset.stories.tsx +32 -32
  20. package/inset/types.d.ts +1 -1
  21. package/layout/ApplicationLayout.d.ts +4 -3
  22. package/layout/ApplicationLayout.js +83 -102
  23. package/layout/ApplicationLayout.stories.tsx +14 -59
  24. package/layout/Icons.d.ts +5 -0
  25. package/layout/Icons.js +13 -2
  26. package/layout/SidenavContext.d.ts +5 -0
  27. package/layout/SidenavContext.js +19 -0
  28. package/layout/types.d.ts +5 -10
  29. package/link/Link.d.ts +2 -2
  30. package/link/Link.js +23 -49
  31. package/link/types.d.ts +2 -3
  32. package/main.d.ts +3 -3
  33. package/main.js +14 -8
  34. package/package.json +1 -1
  35. package/paginator/Paginator.js +17 -38
  36. package/password-input/PasswordInput.js +7 -4
  37. package/password-input/PasswordInput.test.js +1 -2
  38. package/progress-bar/ProgressBar.js +1 -1
  39. package/progress-bar/ProgressBar.stories.jsx +11 -11
  40. package/quick-nav/QuickNav.js +65 -17
  41. package/quick-nav/QuickNav.stories.tsx +2 -2
  42. package/quick-nav/types.d.ts +1 -1
  43. package/radio-group/Radio.js +1 -1
  44. package/radio-group/RadioGroup.js +8 -6
  45. package/select/Listbox.js +4 -1
  46. package/select/Select.js +37 -47
  47. package/select/Select.stories.tsx +14 -2
  48. package/select/Select.test.js +257 -194
  49. package/sidenav/Sidenav.d.ts +1 -1
  50. package/sidenav/Sidenav.js +20 -9
  51. package/spinner/Spinner.js +1 -1
  52. package/switch/Switch.js +4 -1
  53. package/tabs-nav/NavTabs.d.ts +8 -0
  54. package/tabs-nav/NavTabs.js +125 -0
  55. package/tabs-nav/NavTabs.stories.tsx +170 -0
  56. package/tabs-nav/NavTabs.test.js +82 -0
  57. package/tabs-nav/Tab.d.ts +4 -0
  58. package/tabs-nav/Tab.js +132 -0
  59. package/tabs-nav/types.d.ts +53 -0
  60. package/{radio → tabs-nav}/types.js +0 -0
  61. package/text-input/TextInput.js +19 -20
  62. package/textarea/Textarea.js +10 -19
  63. package/useTranslatedLabels.d.ts +2 -0
  64. package/useTranslatedLabels.js +20 -0
  65. package/wizard/Wizard.js +27 -25
  66. package/radio/Radio.d.ts +0 -4
  67. package/radio/Radio.js +0 -173
  68. package/radio/Radio.stories.tsx +0 -192
  69. package/radio/Radio.test.js +0 -71
  70. 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",
@@ -27,6 +27,7 @@ var globalTokens = {
27
27
  hal_purple_s_38: "#5f249f",
28
28
  hal_purple_d_30: "#4b1c7d",
29
29
  hal_purple_d_20: "#321353",
30
+ hal_purple_d_70: "#9A6BB2",
30
31
  color_purple_600: "#7D2FD0",
31
32
  color_purple_300: "#cbacec",
32
33
  hal_blue_l_95: "#e6f4ff",
@@ -109,7 +110,7 @@ var globalTokens = {
109
110
  type_normal: "normal",
110
111
  type_spacing_tight_02: "-0.05em",
111
112
  type_spacing_tight_01: "-0.025em",
112
- type_spacing_normal: "0",
113
+ type_spacing_normal: "0em",
113
114
  type_spacing_wide_01: "0.025em",
114
115
  type_spacing_wide_02: "0.05em",
115
116
  type_spacing_wide_03: "0.1em",
@@ -741,15 +742,15 @@ var componentTokens = {
741
742
  fontStyle: globalTokens.type_normal,
742
743
  fontWeight: globalTokens.type_regular,
743
744
  fontTextTransform: "none",
744
- height: "64px",
745
- width: "100%",
746
- marginRight: "40px",
747
- marginLeft: "20px",
745
+ verticalPadding: "0.75rem",
746
+ horizontalPadding: "2rem",
747
+ marginRight: "2rem",
748
+ marginLeft: "2rem",
748
749
  itemsPerPageSelectorMarginLeft: "0px",
749
- itemsPerPageSelectorMarginRight: "30px",
750
+ itemsPerPageSelectorMarginRight: "1rem",
750
751
  pageSelectorMarginRight: "30px",
751
752
  pageSelectorMarginLeft: "0px",
752
- totalItemsContainerMarginRight: "30px",
753
+ totalItemsContainerMarginRight: "3rem",
753
754
  totalItemsContainerMarginLeft: "0px"
754
755
  },
755
756
  progressBar: {
@@ -781,21 +782,21 @@ var componentTokens = {
781
782
  overlayColor: globalTokens.black,
782
783
  overlayOpacity: "0.8"
783
784
  },
784
- radio: {
785
- circleLabelSpacing: "10px",
786
- circleSize: "24px",
787
- color: globalTokens.black,
788
- colorOnDark: globalTokens.white,
789
- disabledColor: globalTokens.lighterBlack,
790
- disabledColorOnDark: "#575757",
791
- disabledFontColor: globalTokens.lighterBlack,
792
- disabledFontColorOnDark: "#575757",
793
- focusColor: globalTokens.hal_blue_l_50,
794
- focusColorOnDark: "#1682FF",
795
- fontColor: globalTokens.inherit,
796
- 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,
797
798
  fontFamily: globalTokens.type_sans,
798
- fontSize: globalTokens.type_scale_root,
799
+ fontSize: globalTokens.type_scale_02,
799
800
  fontStyle: globalTokens.type_normal,
800
801
  fontWeight: globalTokens.type_regular
801
802
  },
@@ -1014,7 +1015,7 @@ var componentTokens = {
1014
1015
  },
1015
1016
  spinner: {
1016
1017
  trackCircleColor: "#5f249f",
1017
- trackCircleColorOnDark: "#a46ede",
1018
+ trackCircleColorOverlay: "#a46ede",
1018
1019
  totalCircleColor: globalTokens.white,
1019
1020
  labelFontFamily: globalTokens.type_sans,
1020
1021
  labelFontSize: globalTokens.type_scale_02,
@@ -1149,6 +1150,7 @@ var componentTokens = {
1149
1150
  disabledFontColor: "#999999",
1150
1151
  disabledIconColor: "#999999",
1151
1152
  disabledFontStyle: globalTokens.type_normal,
1153
+ disabledBadgeBackgroundColor: "#0000004D",
1152
1154
  hoverBackgroundColor: "#f2eafa",
1153
1155
  pressedBackgroundColor: "#e5d5f6",
1154
1156
  pressedFontWeight: globalTokens.type_semibold,
@@ -1268,57 +1270,64 @@ var componentTokens = {
1268
1270
  optionFocusBorderThickness: globalTokens.border_width_2
1269
1271
  },
1270
1272
  wizard: {
1271
- disabledBackgroundColor: globalTokens.lightGrey,
1272
- disabledFontColor: globalTokens.darkGrey,
1273
- stepContainerFontSize: globalTokens.type_scale_03,
1274
- stepContainerFontFamily: globalTokens.type_sans,
1275
- stepContainerFontStyle: globalTokens.type_normal,
1276
- stepContainerFontWeight: globalTokens.type_regular,
1277
- stepContainerLetterSpacing: globalTokens.type_spacing_wide_02,
1278
- stepContainerFontColor: globalTokens.black,
1279
- stepContainerSelectedFontColor: globalTokens.white,
1280
- stepContainerSelectedBackgroundColor: globalTokens.hal_purple_s_38,
1281
- stepContainerBackgroundColor: globalTokens.white,
1282
- 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,
1283
1303
  labelFontSize: globalTokens.type_scale_03,
1284
1304
  labelFontFamily: globalTokens.type_sans,
1285
1305
  labelFontStyle: globalTokens.type_normal,
1286
1306
  labelFontWeight: globalTokens.type_regular,
1287
- labelLetterSpacing: globalTokens.type_spacing_normal,
1307
+ labelFontTracking: globalTokens.type_spacing_normal,
1288
1308
  labelFontTextTransform: "none",
1289
1309
  labelTextAlign: "left",
1290
- labelFontColor: globalTokens.darkGrey,
1291
- visitedLabelFontColor: globalTokens.black,
1292
- visitedDescriptionFontColor: globalTokens.black,
1293
- descriptionFontSize: globalTokens.type_scale_01,
1294
- descriptionFontFamily: globalTokens.type_sans,
1295
- descriptionFontStyle: globalTokens.type_normal,
1296
- descriptionFontWeight: globalTokens.type_regular,
1297
- descriptionLetterSpacing: globalTokens.type_spacing_wide_01,
1298
- descriptionFontTextTransform: "none",
1299
- descriptionFontColor: globalTokens.darkGrey,
1300
- descriptionTextAlign: "left",
1301
- circleWidth: "32px",
1302
- circleHeight: "32px",
1303
- circleBorderThickness: "2px",
1304
- circleBorderStyle: "solid",
1305
- circleBorderRadius: "45px",
1306
- circleBorderColor: globalTokens.black,
1307
- selectedCircleWidth: "32px",
1308
- selectedCircleHeight: "32px",
1309
- selectedCircleBorderThickness: "2px",
1310
- selectedCircleBorderStyle: "solid",
1311
- selectedCircleBorderRadius: "45px",
1312
- selectedCircleBorderColor: globalTokens.purple,
1313
- disabledCircleWidth: "32px",
1314
- disabledCircleHeight: "32px",
1315
- disabledCircleBorderThickness: "2px",
1316
- disabledCircleBorderStyle: "solid",
1317
- disabledCircleBorderRadius: "45px",
1318
- 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",
1319
1328
  separatorBorderThickness: "1px",
1320
1329
  separatorBorderStyle: "solid",
1321
- separatorColor: globalTokens.lightGrey,
1330
+ separatorColor: globalTokens.hal_grey_s_40,
1322
1331
  focusColor: globalTokens.hal_blue_l_50
1323
1332
  }
1324
1333
  };
@@ -1373,4 +1382,89 @@ var typeface = {
1373
1382
  textTransform: "uppercase"
1374
1383
  }
1375
1384
  };
1376
- 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;
@@ -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
@@ -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,
package/footer/Footer.js CHANGED
@@ -21,6 +21,8 @@ var _variables = require("../common/variables.js");
21
21
 
22
22
  var _useTheme = _interopRequireDefault(require("../useTheme"));
23
23
 
24
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
25
+
24
26
  var _BackgroundColorContext = require("../BackgroundColorContext");
25
27
 
26
28
  var _Icons = require("./Icons");
@@ -34,14 +36,14 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
34
36
  var DxcFooter = function DxcFooter(_ref) {
35
37
  var socialLinks = _ref.socialLinks,
36
38
  bottomLinks = _ref.bottomLinks,
37
- _ref$copyright = _ref.copyright,
38
- copyright = _ref$copyright === void 0 ? "\xA9 DXC Technology ".concat(new Date().getFullYear(), ". All rights reserved.") : _ref$copyright,
39
+ copyright = _ref.copyright,
39
40
  children = _ref.children,
40
41
  padding = _ref.padding,
41
42
  margin = _ref.margin,
42
43
  _ref$tabIndex = _ref.tabIndex,
43
44
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
44
45
  var colorsTheme = (0, _useTheme["default"])();
46
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
45
47
  var footerLogo = (0, _react.useMemo)(function () {
46
48
  if (!colorsTheme.footer.logo) {
47
49
  return _Icons.dxcLogo;
@@ -49,7 +51,7 @@ var DxcFooter = function DxcFooter(_ref) {
49
51
 
50
52
  if (typeof colorsTheme.footer.logo === "string") {
51
53
  return /*#__PURE__*/_react["default"].createElement(LogoImg, {
52
- alt: "Logo",
54
+ alt: translatedLabels.formFields.logoAlternativeText,
53
55
  src: colorsTheme.footer.logo
54
56
  });
55
57
  }
@@ -86,7 +88,7 @@ var DxcFooter = function DxcFooter(_ref) {
86
88
  color: colorsTheme.footer.backgroundColor
87
89
  }, children)), /*#__PURE__*/_react["default"].createElement(FooterFooter, {
88
90
  className: "footerFooter"
89
- }, /*#__PURE__*/_react["default"].createElement(BottomLinks, null, bottomLink), /*#__PURE__*/_react["default"].createElement(Copyright, null, copyright)))));
91
+ }, /*#__PURE__*/_react["default"].createElement(BottomLinks, null, bottomLink), /*#__PURE__*/_react["default"].createElement(Copyright, null, copyright || translatedLabels.footer.copyrightText(new Date().getFullYear()))))));
90
92
  };
91
93
 
92
94
  var FooterContainer = _styledComponents["default"].footer(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n @media (min-width: ", "rem) {\n padding: 24px 36px 24px 36px;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n padding: 20px;\n }\n\n background-color: ", ";\n margin-top: ", ";\n width: 100%;\n box-sizing: border-box;\n min-height: ", ";\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n"])), _variables.responsiveSizes.small, _variables.responsiveSizes.small, function (props) {
@@ -119,7 +121,7 @@ var ChildComponents = _styledComponents["default"].div(_templateObject5 || (_tem
119
121
  return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
120
122
  });
121
123
 
122
- var Copyright = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n\n @media (min-width: ", "rem) {\n max-width: 40%;\n text-align: right;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n max-width: 100%;\n width: 100%;\n text-align: left;\n }\n \n padding-top: ", ";\n"])), function (props) {
124
+ var Copyright = _styledComponents["default"].div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n font-family: ", ";\n font-size: ", ";\n font-style: ", ";\n font-weight: ", ";\n color: ", ";\n\n @media (min-width: ", "rem) {\n max-width: 40%;\n text-align: right;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n max-width: 100%;\n width: 100%;\n text-align: left;\n }\n\n padding-top: ", ";\n"])), function (props) {
123
125
  return props.theme.copyrightFontFamily;
124
126
  }, function (props) {
125
127
  return props.theme.copyrightFontSize;
package/header/Header.js CHANGED
@@ -29,6 +29,8 @@ var _variables = require("../common/variables.js");
29
29
 
30
30
  var _useTheme = _interopRequireDefault(require("../useTheme"));
31
31
 
32
+ var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
33
+
32
34
  var _BackgroundColorContext = _interopRequireWildcard(require("../BackgroundColorContext"));
33
35
 
34
36
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15;
@@ -64,14 +66,14 @@ var Dropdown = function Dropdown(props) {
64
66
 
65
67
  var HeaderDropdown = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n button {\n background-color: transparent;\n :hover {\n background-color: transparent;\n }\n }\n"])));
66
68
 
67
- var getLogoElement = function getLogoElement(themeInput) {
69
+ var getLogoElement = function getLogoElement(themeInput, logoLabel) {
68
70
  if (!themeInput) {
69
71
  return _Icons.dxcLogo;
70
72
  }
71
73
 
72
74
  if (typeof themeInput === "string") {
73
75
  return /*#__PURE__*/_react["default"].createElement(LogoImg, {
74
- alt: "Logo",
76
+ alt: logoLabel,
75
77
  src: themeInput
76
78
  });
77
79
  }
@@ -90,6 +92,7 @@ var DxcHeader = function DxcHeader(_ref) {
90
92
  _ref$tabIndex = _ref.tabIndex,
91
93
  tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
92
94
  var colorsTheme = (0, _useTheme["default"])();
95
+ var translatedLabels = (0, _useTranslatedLabels["default"])();
93
96
  var ref = (0, _react.useRef)(null);
94
97
 
95
98
  var _useState = (0, _react.useState)(false),
@@ -125,10 +128,10 @@ var DxcHeader = function DxcHeader(_ref) {
125
128
  };
126
129
 
127
130
  var headerLogo = (0, _react.useMemo)(function () {
128
- return getLogoElement(colorsTheme.header.logo);
131
+ return getLogoElement(colorsTheme.header.logo, translatedLabels.formFields.logoAlternativeText);
129
132
  }, [colorsTheme.header.logo]);
130
133
  var headerResponsiveLogo = (0, _react.useMemo)(function () {
131
- return getLogoElement(colorsTheme.header.logoResponsive);
134
+ return getLogoElement(colorsTheme.header.logoResponsive, translatedLabels.formFields.logoAlternativeText);
132
135
  }, [colorsTheme.header.logoResponsive]);
133
136
  (0, _react.useEffect)(function () {
134
137
  if (ref.current) {
package/inset/Inset.js CHANGED
@@ -36,40 +36,7 @@ function Inset(_ref) {
36
36
  }
37
37
 
38
38
  function getSpacingValue(spacingName) {
39
- switch (spacingName) {
40
- case "none":
41
- return "0rem";
42
-
43
- case "xxxsmall":
44
- return "0.125rem";
45
-
46
- case "xxsmall":
47
- return "0.25rem";
48
-
49
- case "xsmall":
50
- return "0.5rem";
51
-
52
- case "small":
53
- return "1rem";
54
-
55
- case "medium":
56
- return "1.5rem";
57
-
58
- case "large":
59
- return "2rem";
60
-
61
- case "xlarge":
62
- return "3rem";
63
-
64
- case "xxlarge":
65
- return "4rem";
66
-
67
- case "xxxlarge":
68
- return "5rem";
69
-
70
- default:
71
- return "0rem";
72
- }
39
+ return spacingName ? spacingName : "0rem";
73
40
  }
74
41
 
75
42
  var StyledInset = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n"])), function (_ref2) {