@dxc-technology/halstack-react 0.0.0-c25d3b6 → 0.0.0-c2834c3
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.
- package/HalstackContext.d.ts +12 -0
- package/HalstackContext.js +298 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +7 -28
- package/accordion/Accordion.stories.tsx +11 -11
- package/accordion/Accordion.test.js +19 -4
- package/accordion/types.d.ts +4 -0
- package/accordion-group/AccordionGroup.d.ts +1 -1
- package/accordion-group/AccordionGroup.js +13 -15
- package/accordion-group/AccordionGroup.stories.tsx +1 -1
- package/accordion-group/AccordionGroup.test.js +24 -6
- package/accordion-group/types.d.ts +4 -0
- package/alert/Alert.js +4 -1
- package/button/Button.js +14 -11
- package/card/Card.js +27 -28
- package/checkbox/Checkbox.d.ts +1 -1
- package/checkbox/Checkbox.js +43 -39
- package/checkbox/Checkbox.stories.tsx +124 -128
- package/checkbox/Checkbox.test.js +13 -0
- package/checkbox/types.d.ts +7 -3
- package/common/variables.js +181 -70
- package/date-input/DateInput.js +38 -20
- package/date-input/DateInput.test.js +9 -22
- package/date-input/types.d.ts +12 -9
- package/dialog/Dialog.js +4 -32
- package/dropdown/Dropdown.js +13 -17
- package/file-input/FileInput.js +9 -6
- package/file-input/FileItem.js +7 -5
- package/footer/Footer.js +15 -88
- package/header/Header.js +27 -48
- package/header/Header.stories.tsx +46 -36
- package/header/Header.test.js +18 -2
- package/inset/types.d.ts +24 -0
- package/layout/ApplicationLayout.js +5 -18
- package/link/Link.d.ts +3 -2
- package/link/Link.js +65 -56
- package/link/Link.stories.tsx +87 -52
- package/link/Link.test.js +7 -15
- package/link/types.d.ts +8 -23
- package/main.d.ts +3 -2
- package/main.js +19 -5
- package/number-input/NumberInput.test.js +2 -4
- package/number-input/types.d.ts +13 -10
- package/package.json +6 -5
- package/paginator/Paginator.js +17 -38
- package/password-input/PasswordInput.js +7 -4
- package/password-input/PasswordInput.test.js +3 -6
- package/password-input/types.d.ts +14 -11
- package/quick-nav/QuickNav.d.ts +4 -0
- package/quick-nav/QuickNav.js +116 -0
- package/quick-nav/QuickNav.stories.tsx +237 -0
- package/quick-nav/types.d.ts +21 -0
- package/quick-nav/types.js +5 -0
- package/radio/Radio.js +10 -11
- package/radio-group/Radio.js +1 -1
- package/radio-group/RadioGroup.js +8 -6
- package/row/types.d.ts +18 -0
- package/select/Listbox.d.ts +4 -0
- package/select/Listbox.js +152 -0
- package/select/Option.js +1 -1
- package/select/Select.js +53 -139
- package/select/Select.stories.tsx +14 -2
- package/select/Select.test.js +83 -42
- package/select/types.d.ts +33 -11
- package/slider/Slider.d.ts +1 -1
- package/slider/Slider.js +2 -1
- package/slider/Slider.stories.tsx +8 -8
- package/slider/Slider.test.js +31 -10
- package/slider/types.d.ts +4 -0
- package/spinner/Spinner.js +1 -1
- package/switch/Switch.d.ts +1 -1
- package/switch/Switch.js +35 -19
- package/switch/Switch.stories.tsx +14 -14
- package/switch/Switch.test.js +25 -0
- package/switch/types.d.ts +6 -2
- package/tabs/Tabs.d.ts +1 -1
- package/tabs/Tabs.js +9 -11
- package/tabs/Tabs.stories.tsx +0 -8
- package/tabs/Tabs.test.js +26 -9
- package/tabs/types.d.ts +4 -0
- package/tag/Tag.js +5 -8
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +55 -0
- package/text-input/TextInput.js +48 -76
- package/text-input/TextInput.test.js +22 -35
- package/text-input/types.d.ts +27 -12
- package/textarea/Textarea.js +12 -23
- package/textarea/Textarea.test.js +10 -20
- package/textarea/types.d.ts +14 -11
- package/toggle-group/ToggleGroup.d.ts +1 -1
- package/toggle-group/ToggleGroup.js +5 -4
- package/toggle-group/ToggleGroup.stories.tsx +4 -4
- package/toggle-group/ToggleGroup.test.js +35 -4
- package/toggle-group/types.d.ts +8 -0
- package/useTheme.js +2 -2
- package/useTranslatedLabels.d.ts +2 -0
- package/useTranslatedLabels.js +20 -0
- package/wizard/Wizard.d.ts +1 -1
- package/wizard/Wizard.js +55 -44
- package/wizard/Wizard.stories.tsx +13 -23
- package/wizard/Wizard.test.js +36 -23
- package/wizard/types.d.ts +6 -2
- package/ThemeContext.d.ts +0 -10
- package/ThemeContext.js +0 -243
package/common/variables.js
CHANGED
|
@@ -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
|
-
//
|
|
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: "
|
|
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:
|
|
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:
|
|
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:
|
|
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
|
-
|
|
492
|
+
errorFilePreviewBackgroundColor: globalTokens.color_red_700,
|
|
491
493
|
errorFileItemIconColor: globalTokens.hal_red_s_41,
|
|
492
494
|
fileItemIconBackgroundColor: globalTokens.hal_grey_l_95,
|
|
493
|
-
|
|
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:
|
|
521
|
-
activeDeleteFileItemBackgroundColor:
|
|
522
|
-
|
|
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.
|
|
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
|
-
|
|
741
|
-
|
|
742
|
-
marginRight: "
|
|
743
|
-
marginLeft: "
|
|
745
|
+
verticalPadding: "0.75rem",
|
|
746
|
+
horizontalPadding: "2rem",
|
|
747
|
+
marginRight: "2rem",
|
|
748
|
+
marginLeft: "2rem",
|
|
744
749
|
itemsPerPageSelectorMarginLeft: "0px",
|
|
745
|
-
itemsPerPageSelectorMarginRight: "
|
|
750
|
+
itemsPerPageSelectorMarginRight: "1rem",
|
|
746
751
|
pageSelectorMarginRight: "30px",
|
|
747
752
|
pageSelectorMarginLeft: "0px",
|
|
748
|
-
totalItemsContainerMarginRight: "
|
|
753
|
+
totalItemsContainerMarginRight: "3rem",
|
|
749
754
|
totalItemsContainerMarginLeft: "0px"
|
|
750
755
|
},
|
|
751
756
|
progressBar: {
|
|
@@ -777,6 +782,24 @@ var componentTokens = {
|
|
|
777
782
|
overlayColor: globalTokens.black,
|
|
778
783
|
overlayOpacity: "0.8"
|
|
779
784
|
},
|
|
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,
|
|
798
|
+
fontFamily: globalTokens.type_sans,
|
|
799
|
+
fontSize: globalTokens.type_scale_02,
|
|
800
|
+
fontStyle: globalTokens.type_normal,
|
|
801
|
+
fontWeight: globalTokens.type_regular
|
|
802
|
+
},
|
|
780
803
|
radio: {
|
|
781
804
|
circleLabelSpacing: "10px",
|
|
782
805
|
circleSize: "24px",
|
|
@@ -1010,7 +1033,7 @@ var componentTokens = {
|
|
|
1010
1033
|
},
|
|
1011
1034
|
spinner: {
|
|
1012
1035
|
trackCircleColor: "#5f249f",
|
|
1013
|
-
|
|
1036
|
+
trackCircleColorOverlay: "#a46ede",
|
|
1014
1037
|
totalCircleColor: globalTokens.white,
|
|
1015
1038
|
labelFontFamily: globalTokens.type_sans,
|
|
1016
1039
|
labelFontSize: globalTokens.type_scale_02,
|
|
@@ -1264,57 +1287,64 @@ var componentTokens = {
|
|
|
1264
1287
|
optionFocusBorderThickness: globalTokens.border_width_2
|
|
1265
1288
|
},
|
|
1266
1289
|
wizard: {
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1290
|
+
visitedStepFontColor: globalTokens.hal_black,
|
|
1291
|
+
visitedStepBackgroundColor: globalTokens.hal_white,
|
|
1292
|
+
visitedStepBorderColor: globalTokens.hal_black,
|
|
1293
|
+
unvisitedStepFontColor: globalTokens.hal_grey_s_40,
|
|
1294
|
+
unvisitedLabelFontColor: globalTokens.hal_grey_s_40,
|
|
1295
|
+
unvisitedHelperTextFontColor: globalTokens.hal_grey_s_40,
|
|
1296
|
+
unvisitedStepBackgroundColor: globalTokens.transparent,
|
|
1297
|
+
unvisitedStepBorderColor: globalTokens.hal_grey_s_40,
|
|
1298
|
+
selectedStepFontColor: globalTokens.white,
|
|
1299
|
+
selectedStepBackgroundColor: globalTokens.hal_purple_s_38,
|
|
1300
|
+
selectedStepBorderColor: globalTokens.hal_purple_s_38,
|
|
1301
|
+
selectedLabelFontColor: globalTokens.hal_black,
|
|
1302
|
+
selectedHelperTextFontColor: globalTokens.hal_black,
|
|
1303
|
+
selectedStepWidth: "32px",
|
|
1304
|
+
selectedStepHeight: "32px",
|
|
1305
|
+
selectedStepBorderThickness: "2px",
|
|
1306
|
+
selectedStepBorderStyle: "solid",
|
|
1307
|
+
selectedStepBorderRadius: "45px",
|
|
1308
|
+
stepFontSize: globalTokens.type_scale_03,
|
|
1309
|
+
stepFontFamily: globalTokens.type_sans,
|
|
1310
|
+
stepFontStyle: globalTokens.type_normal,
|
|
1311
|
+
stepFontWeight: globalTokens.type_regular,
|
|
1312
|
+
stepFontTracking: globalTokens.type_spacing_wide_02,
|
|
1313
|
+
stepIconSize: "20px",
|
|
1314
|
+
stepWidth: "32px",
|
|
1315
|
+
stepHeight: "32px",
|
|
1316
|
+
stepBorderThickness: "2px",
|
|
1317
|
+
stepBorderStyle: "solid",
|
|
1318
|
+
stepBorderRadius: "45px",
|
|
1319
|
+
visitedLabelFontColor: globalTokens.hal_black,
|
|
1279
1320
|
labelFontSize: globalTokens.type_scale_03,
|
|
1280
1321
|
labelFontFamily: globalTokens.type_sans,
|
|
1281
1322
|
labelFontStyle: globalTokens.type_normal,
|
|
1282
1323
|
labelFontWeight: globalTokens.type_regular,
|
|
1283
|
-
|
|
1324
|
+
labelFontTracking: globalTokens.type_spacing_normal,
|
|
1284
1325
|
labelFontTextTransform: "none",
|
|
1285
1326
|
labelTextAlign: "left",
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
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,
|
|
1327
|
+
helperTextFontSize: globalTokens.type_scale_02,
|
|
1328
|
+
helperTextFontFamily: globalTokens.type_sans,
|
|
1329
|
+
helperTextFontStyle: globalTokens.type_normal,
|
|
1330
|
+
helperTextFontWeight: globalTokens.type_regular,
|
|
1331
|
+
helperTextFontTracking: globalTokens.type_spacing_normal,
|
|
1332
|
+
helperTextFontTextTransform: "none",
|
|
1333
|
+
visitedHelperTextFontColor: globalTokens.hal_black,
|
|
1334
|
+
helperTextTextAlign: "left",
|
|
1335
|
+
disabledStepBackgroundColor: globalTokens.hal_grey_l_95,
|
|
1336
|
+
disabledStepFontColor: globalTokens.hal_grey_l_60,
|
|
1337
|
+
disabledLabelFontColor: globalTokens.hal_grey_l_60,
|
|
1338
|
+
disabledHelperTextFontColor: globalTokens.hal_grey_l_60,
|
|
1339
|
+
disabledStepBorderColor: globalTokens.hal_grey_l_95,
|
|
1340
|
+
disabledStepWidth: "32px",
|
|
1341
|
+
disabledStepHeight: "32px",
|
|
1342
|
+
disabledStepBorderThickness: "2px",
|
|
1343
|
+
disabledStepBorderStyle: "solid",
|
|
1344
|
+
disabledStepBorderRadius: "45px",
|
|
1315
1345
|
separatorBorderThickness: "1px",
|
|
1316
1346
|
separatorBorderStyle: "solid",
|
|
1317
|
-
separatorColor: globalTokens.
|
|
1347
|
+
separatorColor: globalTokens.hal_grey_s_40,
|
|
1318
1348
|
focusColor: globalTokens.hal_blue_l_50
|
|
1319
1349
|
}
|
|
1320
1350
|
};
|
|
@@ -1330,12 +1360,11 @@ var spaces = {
|
|
|
1330
1360
|
};
|
|
1331
1361
|
exports.spaces = spaces;
|
|
1332
1362
|
var responsiveSizes = {
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
desktop: "1440"
|
|
1363
|
+
xsmall: "20",
|
|
1364
|
+
small: "30",
|
|
1365
|
+
medium: "45",
|
|
1366
|
+
large: "66",
|
|
1367
|
+
xlarge: "90"
|
|
1339
1368
|
};
|
|
1340
1369
|
exports.responsiveSizes = responsiveSizes;
|
|
1341
1370
|
var typeface = {
|
|
@@ -1370,4 +1399,86 @@ var typeface = {
|
|
|
1370
1399
|
textTransform: "uppercase"
|
|
1371
1400
|
}
|
|
1372
1401
|
};
|
|
1373
|
-
exports.typeface = typeface;
|
|
1402
|
+
exports.typeface = typeface;
|
|
1403
|
+
var defaultTranslatedComponentLabels = {
|
|
1404
|
+
formFields: {
|
|
1405
|
+
optionalLabel: "(Optional)",
|
|
1406
|
+
requiredSelectionErrorMessage: "This field is required. Please, choose an option.",
|
|
1407
|
+
requiredValueErrorMessage: "This field is required. Please, enter a value.",
|
|
1408
|
+
formatRequestedErrorMessage: "Please match the format requested.",
|
|
1409
|
+
lengthErrorMessage: function lengthErrorMessage(minLength, maxLength) {
|
|
1410
|
+
return "Min length ".concat(minLength, ", max length ").concat(maxLength, ".");
|
|
1411
|
+
},
|
|
1412
|
+
logoAlternativeText: "Logo"
|
|
1413
|
+
},
|
|
1414
|
+
alert: {
|
|
1415
|
+
infoTitleText: "information",
|
|
1416
|
+
successTitleText: "success",
|
|
1417
|
+
warningTitleText: "warning",
|
|
1418
|
+
errorTitleText: "error"
|
|
1419
|
+
},
|
|
1420
|
+
dateInput: {
|
|
1421
|
+
invalidDateErrorMessage: "Invalid date."
|
|
1422
|
+
},
|
|
1423
|
+
fileInput: {
|
|
1424
|
+
fileSizeGreaterThanErrorMessage: "File size must be greater than min size.",
|
|
1425
|
+
fileSizeLessThanErrorMessage: "File size must be less than max size.",
|
|
1426
|
+
multipleButtonLabelDefault: "Select files",
|
|
1427
|
+
singleButtonLabelDefault: "Select file",
|
|
1428
|
+
dropAreaButtonLabelDefault: "Select",
|
|
1429
|
+
multipleDropAreaLabelDefault: "or drop files",
|
|
1430
|
+
singleDropAreaLabelDefault: "or drop a file"
|
|
1431
|
+
},
|
|
1432
|
+
footer: {
|
|
1433
|
+
copyrightText: function copyrightText(year) {
|
|
1434
|
+
return "\xA9 DXC Technology ".concat(year, ". All rights reserved.");
|
|
1435
|
+
}
|
|
1436
|
+
},
|
|
1437
|
+
numberInput: {
|
|
1438
|
+
valueGreaterThanOrEqualToErrorMessage: function valueGreaterThanOrEqualToErrorMessage(value) {
|
|
1439
|
+
return "Value must be greater than or equal to ".concat(value, ".");
|
|
1440
|
+
},
|
|
1441
|
+
valueLessThanOrEqualToErrorMessage: function valueLessThanOrEqualToErrorMessage(value) {
|
|
1442
|
+
return "Value must be less than or equal to ".concat(value, ".");
|
|
1443
|
+
},
|
|
1444
|
+
decrementValueTitle: "Decrement value",
|
|
1445
|
+
incrementValueTitle: "Increment value"
|
|
1446
|
+
},
|
|
1447
|
+
paginator: {
|
|
1448
|
+
itemsPerPageText: "Items per page ",
|
|
1449
|
+
minToMaxOfText: function minToMaxOfText(minNumberOfItems, maxNumberOfItems, totalItems) {
|
|
1450
|
+
return "".concat(minNumberOfItems, " to ").concat(maxNumberOfItems, " of ").concat(totalItems);
|
|
1451
|
+
},
|
|
1452
|
+
goToPageText: "Go to page:",
|
|
1453
|
+
pageOfText: function pageOfText(pageNumber, totalPagesNumber) {
|
|
1454
|
+
return "Page: ".concat(pageNumber, " of ").concat(totalPagesNumber);
|
|
1455
|
+
}
|
|
1456
|
+
},
|
|
1457
|
+
passwordInput: {
|
|
1458
|
+
inputShowPasswordTitle: "Show password",
|
|
1459
|
+
inputHidePasswordTitle: "Hide password"
|
|
1460
|
+
},
|
|
1461
|
+
quickNav: {
|
|
1462
|
+
contentTitle: "Contents"
|
|
1463
|
+
},
|
|
1464
|
+
radioGroup: {
|
|
1465
|
+
optionalItemLabelDefault: "N/A"
|
|
1466
|
+
},
|
|
1467
|
+
select: {
|
|
1468
|
+
noMatchesErrorMessage: "No matches found",
|
|
1469
|
+
actionClearSelectionTitle: "Clear selection",
|
|
1470
|
+
actionClearSearchTitle: "Clear search"
|
|
1471
|
+
},
|
|
1472
|
+
textInput: {
|
|
1473
|
+
clearFieldActionTitle: "Clear field",
|
|
1474
|
+
searchingMessage: "Searching...",
|
|
1475
|
+
fetchingDataErrorMessage: "Error fetching data"
|
|
1476
|
+
},
|
|
1477
|
+
calendar: {
|
|
1478
|
+
days: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
|
1479
|
+
daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
|
|
1480
|
+
months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
|
|
1481
|
+
monthsShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
|
|
1482
|
+
}
|
|
1483
|
+
};
|
|
1484
|
+
exports.defaultTranslatedComponentLabels = defaultTranslatedComponentLabels;
|
package/date-input/DateInput.js
CHANGED
|
@@ -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
|
|
28
|
+
var _dayjs = _interopRequireDefault(require("dayjs"));
|
|
27
29
|
|
|
28
|
-
var
|
|
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,8 +43,12 @@ 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
|
+
|
|
42
50
|
var getValueForPicker = function getValueForPicker(value, format) {
|
|
43
|
-
return (0,
|
|
51
|
+
return (0, _dayjs["default"])(value, format.toUpperCase(), true).format();
|
|
44
52
|
};
|
|
45
53
|
|
|
46
54
|
var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
|
|
@@ -81,6 +89,7 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
81
89
|
setAnchorEl = _useState6[1];
|
|
82
90
|
|
|
83
91
|
var colorsTheme = (0, _useTheme["default"])();
|
|
92
|
+
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
84
93
|
var refDate = ref || (0, _react.useRef)(null);
|
|
85
94
|
|
|
86
95
|
var handleCalendarOnKeyDown = function handleCalendarOnKeyDown(event) {
|
|
@@ -94,12 +103,13 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
94
103
|
};
|
|
95
104
|
|
|
96
105
|
var handleCalendarOnClick = function handleCalendarOnClick(newDate) {
|
|
97
|
-
var newValue = (0,
|
|
106
|
+
var newValue = (0, _dayjs["default"])(newDate).format(format.toUpperCase());
|
|
98
107
|
value !== null && value !== void 0 ? value : setInnerValue(newValue);
|
|
99
|
-
onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
108
|
+
newDate !== null && newDate !== void 0 && newDate.toJSON() ? onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
100
109
|
value: newValue,
|
|
101
|
-
|
|
102
|
-
|
|
110
|
+
date: newDate
|
|
111
|
+
}) : onChange === null || onChange === void 0 ? void 0 : onChange({
|
|
112
|
+
value: newValue
|
|
103
113
|
});
|
|
104
114
|
};
|
|
105
115
|
|
|
@@ -107,25 +117,33 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
107
117
|
var newValue = _ref2.value,
|
|
108
118
|
inputError = _ref2.error;
|
|
109
119
|
value !== null && value !== void 0 ? value : setInnerValue(newValue);
|
|
110
|
-
var
|
|
111
|
-
var invalidDateMessage = newValue !== "" && !
|
|
112
|
-
|
|
120
|
+
var dayjsDate = (0, _dayjs["default"])(newValue, format.toUpperCase(), true);
|
|
121
|
+
var invalidDateMessage = newValue !== "" && !dayjsDate.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
|
|
122
|
+
var callbackParams = inputError || invalidDateMessage ? {
|
|
113
123
|
value: newValue,
|
|
114
|
-
error: inputError || invalidDateMessage
|
|
115
|
-
|
|
116
|
-
|
|
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);
|
|
117
131
|
};
|
|
118
132
|
|
|
119
133
|
var handleIOnBlur = function handleIOnBlur(_ref3) {
|
|
120
134
|
var value = _ref3.value,
|
|
121
135
|
inputError = _ref3.error;
|
|
122
|
-
var
|
|
123
|
-
var invalidDateMessage = value !== "" && !
|
|
124
|
-
|
|
136
|
+
var dayjsDate = (0, _dayjs["default"])(value, format.toUpperCase(), true);
|
|
137
|
+
var invalidDateMessage = value !== "" && !dayjsDate.isValid() && translatedLabels.dateInput.invalidDateErrorMessage;
|
|
138
|
+
var callbackParams = inputError || invalidDateMessage ? {
|
|
125
139
|
value: value,
|
|
126
|
-
error: inputError || invalidDateMessage
|
|
127
|
-
|
|
128
|
-
|
|
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);
|
|
129
147
|
};
|
|
130
148
|
|
|
131
149
|
var openCalendar = function openCalendar() {
|
|
@@ -295,7 +313,7 @@ var DxcDateInput = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref
|
|
|
295
313
|
}, /*#__PURE__*/_react["default"].createElement(_core.MuiThemeProvider, {
|
|
296
314
|
theme: dateTheme
|
|
297
315
|
}, /*#__PURE__*/_react["default"].createElement(_pickers.MuiPickersUtilsProvider, {
|
|
298
|
-
utils:
|
|
316
|
+
utils: _dayjs2["default"]
|
|
299
317
|
}, /*#__PURE__*/_react["default"].createElement(StyledDPicker, null, /*#__PURE__*/_react["default"].createElement(_TextInput["default"], {
|
|
300
318
|
label: label,
|
|
301
319
|
name: name,
|
|
@@ -106,8 +106,7 @@ describe("DateInput component tests", function () {
|
|
|
106
106
|
expect(onChange).toHaveBeenCalledTimes(10);
|
|
107
107
|
expect(onChange).toHaveBeenCalledWith({
|
|
108
108
|
value: "10/90/2010",
|
|
109
|
-
error: "Invalid date."
|
|
110
|
-
date: null
|
|
109
|
+
error: "Invalid date."
|
|
111
110
|
});
|
|
112
111
|
});
|
|
113
112
|
test("Calendar renders with correct date: today's date", function () {
|
|
@@ -191,8 +190,7 @@ describe("DateInput component tests", function () {
|
|
|
191
190
|
expect(onBlur).toHaveBeenCalled();
|
|
192
191
|
expect(onBlur).toHaveBeenCalledWith({
|
|
193
192
|
value: "01-01-xxxx",
|
|
194
|
-
error: "Invalid date."
|
|
195
|
-
date: null
|
|
193
|
+
error: "Invalid date."
|
|
196
194
|
});
|
|
197
195
|
|
|
198
196
|
_userEvent["default"].click(calendarAction);
|
|
@@ -301,7 +299,6 @@ describe("DateInput component tests", function () {
|
|
|
301
299
|
expect(onChange).toHaveBeenCalledTimes(10);
|
|
302
300
|
expect(onChange).toHaveBeenCalledWith({
|
|
303
301
|
value: "10-10-2011",
|
|
304
|
-
error: null,
|
|
305
302
|
date: d
|
|
306
303
|
});
|
|
307
304
|
|
|
@@ -310,7 +307,6 @@ describe("DateInput component tests", function () {
|
|
|
310
307
|
expect(onBlur).toHaveBeenCalled();
|
|
311
308
|
expect(onBlur).toHaveBeenCalledWith({
|
|
312
309
|
value: "10-10-2011",
|
|
313
|
-
error: null,
|
|
314
310
|
date: d
|
|
315
311
|
});
|
|
316
312
|
});
|
|
@@ -332,8 +328,7 @@ describe("DateInput component tests", function () {
|
|
|
332
328
|
expect(onChange).toHaveBeenCalledTimes(6);
|
|
333
329
|
expect(onChange).toHaveBeenCalledWith({
|
|
334
330
|
value: "10-10-",
|
|
335
|
-
error: "Invalid date."
|
|
336
|
-
date: null
|
|
331
|
+
error: "Invalid date."
|
|
337
332
|
});
|
|
338
333
|
|
|
339
334
|
_react2.fireEvent.blur(input);
|
|
@@ -341,8 +336,7 @@ describe("DateInput component tests", function () {
|
|
|
341
336
|
expect(onBlur).toHaveBeenCalled();
|
|
342
337
|
expect(onBlur).toHaveBeenCalledWith({
|
|
343
338
|
value: "10-10-",
|
|
344
|
-
error: "Invalid date."
|
|
345
|
-
date: null
|
|
339
|
+
error: "Invalid date."
|
|
346
340
|
});
|
|
347
341
|
});
|
|
348
342
|
test("onBlur function removes the error when it is fixed", function () {
|
|
@@ -365,8 +359,7 @@ describe("DateInput component tests", function () {
|
|
|
365
359
|
expect(onBlur).toHaveBeenCalled();
|
|
366
360
|
expect(onBlur).toHaveBeenCalledWith({
|
|
367
361
|
value: "test",
|
|
368
|
-
error: "Invalid date."
|
|
369
|
-
date: null
|
|
362
|
+
error: "Invalid date."
|
|
370
363
|
});
|
|
371
364
|
|
|
372
365
|
_userEvent["default"].clear(input);
|
|
@@ -380,7 +373,6 @@ describe("DateInput component tests", function () {
|
|
|
380
373
|
expect(onBlur).toHaveBeenCalled();
|
|
381
374
|
expect(onBlur).toHaveBeenCalledWith({
|
|
382
375
|
value: "20-02-2002",
|
|
383
|
-
error: null,
|
|
384
376
|
date: d
|
|
385
377
|
});
|
|
386
378
|
});
|
|
@@ -404,8 +396,7 @@ describe("DateInput component tests", function () {
|
|
|
404
396
|
expect(onBlur).toHaveBeenCalled();
|
|
405
397
|
expect(onBlur).toHaveBeenCalledWith({
|
|
406
398
|
value: "test",
|
|
407
|
-
error: "Invalid date."
|
|
408
|
-
date: null
|
|
399
|
+
error: "Invalid date."
|
|
409
400
|
});
|
|
410
401
|
|
|
411
402
|
_userEvent["default"].clear(input);
|
|
@@ -414,9 +405,7 @@ describe("DateInput component tests", function () {
|
|
|
414
405
|
|
|
415
406
|
expect(onBlur).toHaveBeenCalled();
|
|
416
407
|
expect(onBlur).toHaveBeenCalledWith({
|
|
417
|
-
value: ""
|
|
418
|
-
error: null,
|
|
419
|
-
date: null
|
|
408
|
+
value: ""
|
|
420
409
|
});
|
|
421
410
|
});
|
|
422
411
|
test("onBlur & onChange functions error: required field (not optional)", function () {
|
|
@@ -442,14 +431,12 @@ describe("DateInput component tests", function () {
|
|
|
442
431
|
expect(onBlur).toHaveBeenCalled();
|
|
443
432
|
expect(onBlur).toHaveBeenCalledWith({
|
|
444
433
|
value: "",
|
|
445
|
-
error: "This field is required. Please, enter a value."
|
|
446
|
-
date: null
|
|
434
|
+
error: "This field is required. Please, enter a value."
|
|
447
435
|
});
|
|
448
436
|
expect(onChange).toHaveBeenCalled();
|
|
449
437
|
expect(onChange).toHaveBeenCalledWith({
|
|
450
438
|
value: "",
|
|
451
|
-
error: "This field is required. Please, enter a value."
|
|
452
|
-
date: null
|
|
439
|
+
error: "This field is required. Please, enter a value."
|
|
453
440
|
});
|
|
454
441
|
});
|
|
455
442
|
test("Disabled date input (calendar action must be shown but not clickable)", function () {
|
package/date-input/types.d.ts
CHANGED
|
@@ -54,28 +54,31 @@ declare type Props = {
|
|
|
54
54
|
* element of the component. An object including the string value, the
|
|
55
55
|
* error and the date value will be passed to this function.
|
|
56
56
|
* If the string value is a valid date, error will
|
|
57
|
-
* be
|
|
57
|
+
* be undefined. Also, if the string value is not a valid date, date will be undefined.
|
|
58
58
|
*/
|
|
59
59
|
onChange?: (val: {
|
|
60
60
|
value: string;
|
|
61
|
-
error
|
|
62
|
-
date
|
|
61
|
+
error?: string;
|
|
62
|
+
date?: Date;
|
|
63
63
|
}) => void;
|
|
64
64
|
/**
|
|
65
65
|
* This function will be called when the input element loses the focus.
|
|
66
66
|
* An object including the string value, the error and the date value
|
|
67
67
|
* will be passed to this function. If the string value is a valid date, error will
|
|
68
|
-
* be
|
|
68
|
+
* be undefined. Also, if the string value is not a valid date, date will be undefined.
|
|
69
69
|
*/
|
|
70
70
|
onBlur?: (val: {
|
|
71
71
|
value: string;
|
|
72
|
-
error
|
|
73
|
-
date
|
|
72
|
+
error?: string;
|
|
73
|
+
date?: Date;
|
|
74
74
|
}) => void;
|
|
75
75
|
/**
|
|
76
|
-
* If it is defined
|
|
77
|
-
* the error below the date input
|
|
78
|
-
*
|
|
76
|
+
* If it is a defined value and also a truthy string, the component will
|
|
77
|
+
* change its appearance, showing the error below the date input
|
|
78
|
+
* component. If the defined value is an empty string, it will reserve a
|
|
79
|
+
* space below the component for a future error, but it would not change
|
|
80
|
+
* its look. In case of being undefined or null, both the appearance and
|
|
81
|
+
* the space for the error message would not be modified.
|
|
79
82
|
*/
|
|
80
83
|
error?: string;
|
|
81
84
|
/**
|