@dxc-technology/halstack-react 0.0.0-74ba970 → 0.0.0-752ca0a
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/BackgroundColorContext.d.ts +2 -2
- package/BackgroundColorContext.js +1 -1
- package/HalstackContext.d.ts +1349 -5
- package/HalstackContext.js +117 -77
- package/README.md +47 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +14 -37
- package/accordion/Accordion.stories.tsx +104 -113
- package/accordion/Accordion.test.js +1 -1
- package/accordion/types.d.ts +2 -13
- package/accordion-group/AccordionGroup.d.ts +4 -3
- package/accordion-group/AccordionGroup.js +23 -44
- package/accordion-group/AccordionGroup.stories.tsx +77 -76
- package/accordion-group/AccordionGroup.test.js +7 -17
- package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
- package/accordion-group/AccordionGroupAccordion.js +43 -0
- package/accordion-group/types.d.ts +2 -13
- package/alert/Alert.js +4 -8
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +1 -1
- package/bleed/Bleed.stories.tsx +1 -0
- package/box/Box.d.ts +1 -1
- package/box/Box.js +7 -26
- package/box/Box.stories.tsx +38 -51
- package/box/Box.test.js +1 -1
- package/box/types.d.ts +0 -11
- package/bulleted-list/BulletedList.js +4 -2
- package/bulleted-list/BulletedList.stories.tsx +7 -1
- package/bulleted-list/types.d.ts +31 -4
- package/button/Button.d.ts +1 -1
- package/button/Button.js +48 -60
- package/button/Button.stories.tsx +151 -9
- package/button/Button.test.js +12 -1
- package/button/types.d.ts +7 -3
- package/card/Card.d.ts +1 -1
- package/card/Card.js +27 -45
- package/card/Card.stories.tsx +12 -42
- package/card/Card.test.js +1 -1
- package/card/types.d.ts +1 -6
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +71 -51
- package/checkbox/Checkbox.stories.tsx +146 -58
- package/checkbox/Checkbox.test.js +84 -11
- package/checkbox/types.d.ts +10 -2
- package/chip/Chip.js +28 -49
- package/chip/Chip.stories.tsx +121 -26
- package/chip/Chip.test.js +3 -5
- package/common/OpenSans.css +68 -80
- package/common/coreTokens.d.ts +146 -0
- package/common/coreTokens.js +167 -0
- package/common/utils.d.ts +1 -0
- package/common/utils.js +4 -4
- package/common/variables.d.ts +1499 -0
- package/common/variables.js +1004 -1134
- package/date-input/Calendar.d.ts +4 -0
- package/date-input/Calendar.js +258 -0
- package/date-input/DateInput.js +138 -239
- package/date-input/DateInput.stories.tsx +209 -33
- package/date-input/DateInput.test.js +519 -149
- package/date-input/DatePicker.d.ts +4 -0
- package/date-input/DatePicker.js +146 -0
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +75 -0
- package/date-input/YearPicker.d.ts +4 -0
- package/date-input/YearPicker.js +126 -0
- package/date-input/types.d.ts +55 -0
- package/dialog/Dialog.d.ts +1 -1
- package/dialog/Dialog.js +54 -85
- package/dialog/Dialog.stories.tsx +154 -170
- package/dialog/Dialog.test.js +302 -3
- package/dialog/types.d.ts +0 -12
- package/dropdown/Dropdown.js +40 -39
- package/dropdown/Dropdown.stories.tsx +210 -84
- package/dropdown/Dropdown.test.js +21 -26
- package/dropdown/DropdownMenu.js +12 -18
- package/dropdown/DropdownMenuItem.js +4 -17
- package/dropdown/types.d.ts +3 -3
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +174 -220
- package/file-input/FileInput.stories.tsx +122 -11
- package/file-input/FileInput.test.js +14 -14
- package/file-input/FileItem.d.ts +4 -14
- package/file-input/FileItem.js +39 -63
- package/file-input/types.d.ts +18 -1
- package/flex/Flex.d.ts +1 -1
- package/flex/Flex.js +33 -19
- package/flex/Flex.stories.tsx +35 -26
- package/flex/types.d.ts +83 -7
- package/footer/Footer.d.ts +1 -1
- package/footer/Footer.js +44 -64
- package/footer/Footer.stories.tsx +36 -21
- package/footer/Footer.test.js +16 -26
- package/footer/types.d.ts +10 -11
- package/grid/Grid.d.ts +7 -0
- package/grid/Grid.js +91 -0
- package/grid/Grid.stories.tsx +219 -0
- package/grid/types.d.ts +115 -0
- package/header/Header.d.ts +4 -3
- package/header/Header.js +20 -49
- package/header/Header.stories.tsx +115 -36
- package/header/Header.test.js +2 -2
- package/header/types.d.ts +1 -14
- package/heading/Heading.js +1 -1
- package/heading/Heading.test.js +1 -1
- package/image/Image.d.ts +4 -0
- package/image/Image.js +85 -0
- package/image/Image.stories.tsx +127 -0
- package/image/types.d.ts +72 -0
- package/inset/Inset.stories.tsx +2 -1
- package/layout/ApplicationLayout.d.ts +5 -5
- package/layout/ApplicationLayout.js +15 -12
- package/layout/ApplicationLayout.stories.tsx +1 -1
- package/layout/Icons.d.ts +7 -4
- package/layout/Icons.js +52 -56
- package/layout/types.d.ts +2 -3
- package/link/Link.js +4 -4
- package/link/Link.stories.tsx +60 -0
- package/link/Link.test.js +2 -4
- package/link/types.d.ts +2 -2
- package/main.d.ts +4 -2
- package/main.js +17 -1
- package/{tabs-nav → nav-tabs}/NavTabs.d.ts +2 -2
- package/{tabs-nav → nav-tabs}/NavTabs.js +8 -11
- package/{tabs-nav → nav-tabs}/NavTabs.stories.tsx +110 -6
- package/{tabs-nav → nav-tabs}/NavTabs.test.js +1 -1
- package/{tabs-nav → nav-tabs}/Tab.js +48 -32
- package/{tabs-nav → nav-tabs}/types.d.ts +8 -9
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.d.ts +7 -0
- package/number-input/NumberInput.js +6 -4
- package/number-input/NumberInput.test.js +317 -98
- package/package.json +9 -14
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +16 -28
- package/paginator/Paginator.js +8 -16
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +58 -48
- package/paragraph/Paragraph.d.ts +3 -4
- package/paragraph/Paragraph.js +5 -5
- package/password-input/Icons.d.ts +6 -0
- package/password-input/Icons.js +39 -0
- package/password-input/PasswordInput.js +35 -82
- package/password-input/PasswordInput.stories.tsx +1 -0
- package/password-input/PasswordInput.test.js +34 -40
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +5 -5
- package/progress-bar/ProgressBar.stories.jsx +35 -2
- package/progress-bar/ProgressBar.test.js +1 -1
- package/progress-bar/types.d.ts +4 -3
- package/quick-nav/QuickNav.js +11 -12
- package/quick-nav/QuickNav.stories.tsx +111 -19
- package/radio-group/Radio.js +10 -10
- package/radio-group/RadioGroup.js +15 -13
- package/radio-group/RadioGroup.stories.tsx +131 -18
- package/radio-group/RadioGroup.test.js +117 -60
- package/resultsetTable/Icons.d.ts +7 -0
- package/resultsetTable/Icons.js +51 -0
- package/resultsetTable/ResultsetTable.js +49 -108
- package/resultsetTable/ResultsetTable.stories.tsx +50 -25
- package/resultsetTable/ResultsetTable.test.js +41 -64
- package/resultsetTable/types.d.ts +1 -1
- package/select/Listbox.d.ts +1 -1
- package/select/Listbox.js +5 -34
- package/select/Option.js +11 -24
- package/select/Select.js +59 -36
- package/select/Select.stories.tsx +497 -153
- package/select/Select.test.js +345 -292
- package/select/types.d.ts +2 -2
- package/sidenav/Icons.d.ts +7 -0
- package/sidenav/Icons.js +51 -0
- package/sidenav/Sidenav.d.ts +2 -2
- package/sidenav/Sidenav.js +66 -96
- package/sidenav/Sidenav.stories.tsx +165 -63
- package/sidenav/types.d.ts +21 -18
- package/slider/Slider.d.ts +2 -2
- package/slider/Slider.js +17 -14
- package/slider/Slider.stories.tsx +57 -0
- package/slider/Slider.test.js +1 -1
- package/slider/types.d.ts +6 -2
- package/spinner/Spinner.js +17 -23
- package/spinner/Spinner.stories.jsx +53 -27
- package/spinner/Spinner.test.js +1 -1
- package/switch/Switch.d.ts +3 -3
- package/switch/Switch.js +7 -6
- package/switch/Switch.stories.tsx +33 -0
- package/switch/Switch.test.js +1 -1
- package/switch/types.d.ts +8 -3
- package/table/Table.js +3 -3
- package/table/Table.stories.jsx +80 -1
- package/table/Table.test.js +2 -2
- package/tabs/Tab.js +12 -15
- package/tabs/Tabs.js +11 -17
- package/tabs/Tabs.stories.tsx +45 -5
- package/tabs/Tabs.test.js +4 -5
- package/tabs/types.d.ts +2 -2
- package/tag/Tag.js +7 -9
- package/tag/Tag.stories.tsx +14 -1
- package/tag/Tag.test.js +1 -1
- package/text-input/Suggestion.js +34 -7
- package/text-input/TextInput.js +224 -228
- package/text-input/TextInput.stories.tsx +132 -5
- package/text-input/TextInput.test.js +757 -658
- package/text-input/types.d.ts +9 -0
- package/textarea/Textarea.js +27 -26
- package/textarea/Textarea.stories.jsx +68 -1
- package/textarea/Textarea.test.js +61 -19
- package/textarea/types.d.ts +4 -0
- package/toggle-group/ToggleGroup.d.ts +2 -2
- package/toggle-group/ToggleGroup.js +85 -59
- package/toggle-group/ToggleGroup.stories.tsx +48 -3
- package/toggle-group/ToggleGroup.test.js +38 -24
- package/toggle-group/types.d.ts +22 -13
- package/typography/Typography.d.ts +2 -2
- package/typography/Typography.js +14 -113
- package/typography/Typography.stories.tsx +1 -1
- package/useTheme.d.ts +1251 -1
- package/useTheme.js +1 -1
- package/useTranslatedLabels.d.ts +84 -1
- package/utils/BaseTypography.d.ts +21 -0
- package/utils/BaseTypography.js +108 -0
- package/utils/FocusLock.d.ts +13 -0
- package/utils/FocusLock.js +138 -0
- package/wizard/Wizard.js +2 -2
- package/wizard/Wizard.stories.tsx +20 -0
- package/wizard/Wizard.test.js +1 -1
- package/wizard/types.d.ts +5 -6
- package/card/ice-cream.jpg +0 -0
- package/common/RequiredComponent.js +0 -32
- package/number-input/NumberInputContext.d.ts +0 -4
- package/number-input/NumberInputContext.js +0 -19
- package/number-input/numberInputContextTypes.d.ts +0 -19
- /package/{tabs-nav → grid}/types.js +0 -0
- /package/{number-input/numberInputContextTypes.js → image/types.js} +0 -0
- /package/{tabs-nav → nav-tabs}/Tab.d.ts +0 -0
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports["default"] = void 0;
|
|
11
|
+
|
|
12
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
+
|
|
14
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
|
+
|
|
16
|
+
var _dayjs = _interopRequireDefault(require("dayjs"));
|
|
17
|
+
|
|
18
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
+
|
|
20
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
21
|
+
|
|
22
|
+
var _Calendar = _interopRequireDefault(require("./Calendar"));
|
|
23
|
+
|
|
24
|
+
var _YearPicker = _interopRequireDefault(require("./YearPicker"));
|
|
25
|
+
|
|
26
|
+
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
27
|
+
|
|
28
|
+
var _Icons = require("./Icons");
|
|
29
|
+
|
|
30
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
31
|
+
|
|
32
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
33
|
+
|
|
34
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
35
|
+
|
|
36
|
+
var today = (0, _dayjs["default"])();
|
|
37
|
+
|
|
38
|
+
var DxcDatePicker = function DxcDatePicker(_ref) {
|
|
39
|
+
var date = _ref.date,
|
|
40
|
+
onDateSelect = _ref.onDateSelect,
|
|
41
|
+
id = _ref.id;
|
|
42
|
+
|
|
43
|
+
var _useState = (0, _react.useState)(date !== null && date !== void 0 && date.isValid() ? date : (0, _dayjs["default"])()),
|
|
44
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
45
|
+
innerDate = _useState2[0],
|
|
46
|
+
setInnerDate = _useState2[1];
|
|
47
|
+
|
|
48
|
+
var _useState3 = (0, _react.useState)("calendar"),
|
|
49
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
50
|
+
content = _useState4[0],
|
|
51
|
+
setContent = _useState4[1];
|
|
52
|
+
|
|
53
|
+
var selectedDate = date !== null && date !== void 0 && date.isValid() ? date : null;
|
|
54
|
+
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
55
|
+
|
|
56
|
+
var handleDateSelect = function handleDateSelect(date) {
|
|
57
|
+
setInnerDate(date);
|
|
58
|
+
onDateSelect(date);
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
var handleOnYearSelect = function handleOnYearSelect(year) {
|
|
62
|
+
setInnerDate(innerDate.set("year", year));
|
|
63
|
+
setContent("calendar");
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
var handleMonthChange = function handleMonthChange(date) {
|
|
67
|
+
setInnerDate(date);
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
return /*#__PURE__*/_react["default"].createElement(DatePicker, {
|
|
71
|
+
id: id
|
|
72
|
+
}, /*#__PURE__*/_react["default"].createElement(PickerHeader, null, /*#__PURE__*/_react["default"].createElement(HeaderButton, {
|
|
73
|
+
"aria-label": translatedLabels.calendar.previousMonthTitle,
|
|
74
|
+
title: translatedLabels.calendar.previousMonthTitle,
|
|
75
|
+
onClick: function onClick() {
|
|
76
|
+
return handleMonthChange(innerDate.set("month", innerDate.get("month") - 1));
|
|
77
|
+
}
|
|
78
|
+
}, _Icons.leftCaret), /*#__PURE__*/_react["default"].createElement(HeaderYearTrigger, {
|
|
79
|
+
"aria-live": "polite",
|
|
80
|
+
onClick: function onClick() {
|
|
81
|
+
return setContent(function (content) {
|
|
82
|
+
return content === "yearPicker" ? "calendar" : "yearPicker";
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}, /*#__PURE__*/_react["default"].createElement(HeaderYearTriggerLabel, null, translatedLabels.calendar.months[innerDate.get("month")], " ", innerDate.format("YYYY")), content === "yearPicker" ? _Icons.upCaret : _Icons.downCaret), /*#__PURE__*/_react["default"].createElement(HeaderButton, {
|
|
86
|
+
"aria-label": translatedLabels.calendar.nextMonthTitle,
|
|
87
|
+
title: translatedLabels.calendar.nextMonthTitle,
|
|
88
|
+
onClick: function onClick() {
|
|
89
|
+
return handleMonthChange(innerDate.set("month", innerDate.get("month") + 1));
|
|
90
|
+
}
|
|
91
|
+
}, _Icons.rightCaret)), content === "calendar" && /*#__PURE__*/_react["default"].createElement(_Calendar["default"], {
|
|
92
|
+
innerDate: innerDate,
|
|
93
|
+
selectedDate: selectedDate,
|
|
94
|
+
onInnerDateChange: setInnerDate,
|
|
95
|
+
onDaySelect: handleDateSelect,
|
|
96
|
+
today: today
|
|
97
|
+
}), content === "yearPicker" && /*#__PURE__*/_react["default"].createElement(_YearPicker["default"], {
|
|
98
|
+
selectedDate: selectedDate,
|
|
99
|
+
onYearSelect: handleOnYearSelect,
|
|
100
|
+
today: today
|
|
101
|
+
}));
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
var DatePicker = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n padding-top: 16px;\n background-color: ", ";\n box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n border: ", ";\n border-radius: 4px;\n width: fit-content;\n font-family: ", ";\n font-size: ", ";\n color: ", ";\n font-weight: ", ";\n"])), function (props) {
|
|
105
|
+
return props.theme.dateInput.pickerBackgroundColor;
|
|
106
|
+
}, function (props) {
|
|
107
|
+
return "".concat(props.theme.dateInput.pickerBorderWidth, " ").concat(props.theme.dateInput.pickerBorderStyle, "\n ").concat(props.theme.dateInput.pickerBorderColor);
|
|
108
|
+
}, function (props) {
|
|
109
|
+
return props.theme.dateInput.pickerFontFamily;
|
|
110
|
+
}, function (props) {
|
|
111
|
+
return props.theme.dateInput.pickerFontSize;
|
|
112
|
+
}, function (props) {
|
|
113
|
+
return props.theme.dateInput.pickerFontColor;
|
|
114
|
+
}, function (props) {
|
|
115
|
+
return props.theme.dateInput.pickerFontWeight;
|
|
116
|
+
});
|
|
117
|
+
|
|
118
|
+
var PickerHeader = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n gap: 8px;\n align-items: center;\n justify-content: space-between;\n padding: 0px 16px;\n"])));
|
|
119
|
+
|
|
120
|
+
var HeaderButton = _styledComponents["default"].button(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n padding: 0px;\n color: ", ";\n background-color: ", ";\n border-radius: 4px;\n border: none;\n cursor: pointer;\n\n &:hover {\n color: ", ";\n background-color: ", ";\n }\n &:focus {\n outline: ", ";\n }\n &:active {\n color: ", ";\n background-color: ", ";\n }\n svg {\n width: 24px;\n height: 24px;\n }\n"])), function (props) {
|
|
121
|
+
return props.theme.dateInput.pickerHeaderFontColor;
|
|
122
|
+
}, function (props) {
|
|
123
|
+
return props.theme.dateInput.pickerHeaderBackgroundColor;
|
|
124
|
+
}, function (props) {
|
|
125
|
+
return props.theme.dateInput.pickerHeaderHoverFontColor;
|
|
126
|
+
}, function (props) {
|
|
127
|
+
return props.theme.dateInput.pickerHeaderHoverBackgroundColor;
|
|
128
|
+
}, function (props) {
|
|
129
|
+
return "".concat(props.theme.dateInput.pickerFocusColor, " solid\n ").concat(props.theme.dateInput.pickerFocusWidth);
|
|
130
|
+
}, function (props) {
|
|
131
|
+
return props.theme.dateInput.pickerHeaderActiveFontColor;
|
|
132
|
+
}, function (props) {
|
|
133
|
+
return props.theme.dateInput.pickerHeaderActiveBackgroundColor;
|
|
134
|
+
});
|
|
135
|
+
|
|
136
|
+
var HeaderYearTrigger = (0, _styledComponents["default"])(HeaderButton)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n gap: 8px;\n height: 40px;\n width: 172px;\n"])));
|
|
137
|
+
|
|
138
|
+
var HeaderYearTriggerLabel = _styledComponents["default"].span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: ", ";\n font-size: ", ";\n"])), function (props) {
|
|
139
|
+
return props.theme.dateInput.pickerFontFamily;
|
|
140
|
+
}, function (props) {
|
|
141
|
+
return props.theme.dateInput.pickerHeaderFontSize;
|
|
142
|
+
});
|
|
143
|
+
|
|
144
|
+
var _default = /*#__PURE__*/_react["default"].memo(DxcDatePicker);
|
|
145
|
+
|
|
146
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.upCaret = exports.rightCaret = exports.leftCaret = exports.downCaret = exports.calendarIcon = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
var calendarIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
13
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
14
|
+
height: "24",
|
|
15
|
+
viewBox: "0 0 24 24",
|
|
16
|
+
width: "24",
|
|
17
|
+
fill: "currentColor"
|
|
18
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
19
|
+
d: "M0 0h24v24H0z",
|
|
20
|
+
fill: "none"
|
|
21
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
22
|
+
d: "M20 3h-1V1h-2v2H7V1H5v2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 18H4V8h16v13z"
|
|
23
|
+
}));
|
|
24
|
+
|
|
25
|
+
exports.calendarIcon = calendarIcon;
|
|
26
|
+
|
|
27
|
+
var leftCaret = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
28
|
+
fill: "currentColor",
|
|
29
|
+
focusable: "false",
|
|
30
|
+
viewBox: "0 0 24 24"
|
|
31
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
32
|
+
d: "M15.41 16.59L10.83 12l4.58-4.59L14 6l-6 6 6 6 1.41-1.41z"
|
|
33
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
34
|
+
fill: "none",
|
|
35
|
+
d: "M0 0h24v24H0V0z"
|
|
36
|
+
}));
|
|
37
|
+
|
|
38
|
+
exports.leftCaret = leftCaret;
|
|
39
|
+
|
|
40
|
+
var rightCaret = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
41
|
+
fill: "currentColor",
|
|
42
|
+
focusable: "false",
|
|
43
|
+
viewBox: "0 0 24 24"
|
|
44
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
45
|
+
d: "M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z"
|
|
46
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
47
|
+
fill: "none",
|
|
48
|
+
d: "M0 0h24v24H0V0z"
|
|
49
|
+
}));
|
|
50
|
+
|
|
51
|
+
exports.rightCaret = rightCaret;
|
|
52
|
+
|
|
53
|
+
var downCaret = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
54
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
55
|
+
width: "24",
|
|
56
|
+
height: "24",
|
|
57
|
+
viewBox: "0 0 24 24"
|
|
58
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
59
|
+
d: "M7.5 10L12.5 15L17.5 10H7.5Z",
|
|
60
|
+
fill: "currentColor"
|
|
61
|
+
}));
|
|
62
|
+
|
|
63
|
+
exports.downCaret = downCaret;
|
|
64
|
+
|
|
65
|
+
var upCaret = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
66
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
67
|
+
height: "24",
|
|
68
|
+
width: "24",
|
|
69
|
+
viewBox: "0 0 24 24"
|
|
70
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
71
|
+
d: "m7 14 5-5 5 5Z",
|
|
72
|
+
fill: "currentColor"
|
|
73
|
+
}));
|
|
74
|
+
|
|
75
|
+
exports.upCaret = upCaret;
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports["default"] = void 0;
|
|
11
|
+
|
|
12
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
+
|
|
14
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
|
+
|
|
16
|
+
var _dayjs = _interopRequireDefault(require("dayjs"));
|
|
17
|
+
|
|
18
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
+
|
|
20
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
21
|
+
|
|
22
|
+
var _templateObject, _templateObject2;
|
|
23
|
+
|
|
24
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
25
|
+
|
|
26
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
27
|
+
|
|
28
|
+
var getYearsArray = function getYearsArray() {
|
|
29
|
+
var yearList = [];
|
|
30
|
+
|
|
31
|
+
for (var i = 1899; i <= 2100; i++) {
|
|
32
|
+
yearList.push(i);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
return yearList;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
var yearList = getYearsArray();
|
|
39
|
+
|
|
40
|
+
var YearPicker = function YearPicker(_ref) {
|
|
41
|
+
var onYearSelect = _ref.onYearSelect,
|
|
42
|
+
selectedDate = _ref.selectedDate,
|
|
43
|
+
today = _ref.today;
|
|
44
|
+
|
|
45
|
+
var _useState = (0, _react.useState)(selectedDate ? selectedDate.get("year") : (0, _dayjs["default"])().get("year")),
|
|
46
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
47
|
+
yearToFocus = _useState2[0],
|
|
48
|
+
setYearToFocus = _useState2[1];
|
|
49
|
+
|
|
50
|
+
(0, _react.useEffect)(function () {
|
|
51
|
+
var _yearToFocusEl$scroll;
|
|
52
|
+
|
|
53
|
+
var yearToFocusEl = document.getElementById("year_".concat(yearToFocus));
|
|
54
|
+
yearToFocusEl === null || yearToFocusEl === void 0 ? void 0 : (_yearToFocusEl$scroll = yearToFocusEl.scrollIntoView) === null || _yearToFocusEl$scroll === void 0 ? void 0 : _yearToFocusEl$scroll.call(yearToFocusEl, {
|
|
55
|
+
block: "nearest",
|
|
56
|
+
inline: "start"
|
|
57
|
+
});
|
|
58
|
+
yearToFocusEl === null || yearToFocusEl === void 0 ? void 0 : yearToFocusEl.focus();
|
|
59
|
+
}, [yearToFocus]);
|
|
60
|
+
|
|
61
|
+
var handleDayKeyboardEvent = function handleDayKeyboardEvent(event) {
|
|
62
|
+
switch (event.key) {
|
|
63
|
+
case "ArrowUp":
|
|
64
|
+
setYearToFocus(function (prev) {
|
|
65
|
+
return prev > 1899 ? prev - 1 : prev;
|
|
66
|
+
});
|
|
67
|
+
break;
|
|
68
|
+
|
|
69
|
+
case "ArrowDown":
|
|
70
|
+
setYearToFocus(function (prev) {
|
|
71
|
+
return prev < 2100 ? prev + 1 : prev;
|
|
72
|
+
});
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
return /*#__PURE__*/_react["default"].createElement(YearPickerContainer, null, yearList.map(function (year) {
|
|
78
|
+
return /*#__PURE__*/_react["default"].createElement(YearPickerButton, {
|
|
79
|
+
"aria-label": year,
|
|
80
|
+
key: year,
|
|
81
|
+
selected: (selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.get("year")) === year,
|
|
82
|
+
"aria-selected": (selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.get("year")) === year,
|
|
83
|
+
tabIndex: yearToFocus === year ? 0 : -1,
|
|
84
|
+
isCurrentYear: today.get("year") === year,
|
|
85
|
+
onKeyDown: function onKeyDown(event) {
|
|
86
|
+
return handleDayKeyboardEvent(event);
|
|
87
|
+
},
|
|
88
|
+
id: "year_".concat(year),
|
|
89
|
+
onClick: function onClick() {
|
|
90
|
+
onYearSelect(year);
|
|
91
|
+
}
|
|
92
|
+
}, year);
|
|
93
|
+
}));
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
var YearPickerContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n gap: 4px;\n align-items: center;\n overflow-y: scroll;\n width: 292px;\n height: 312px;\n padding: 2px 8px 8px 8px;\n"])));
|
|
97
|
+
|
|
98
|
+
var YearPickerButton = _styledComponents["default"].button(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n width: 80px;\n min-height: 40px;\n line-height: 21px;\n background-color: transparent;\n border: none;\n border-radius: 50px;\n cursor: pointer;\n font-family: ", ";\n font-size: ", ";\n color: ", ";\n font-weight: ", ";\n\n ", "\n\n &:hover, &:focus, &:active {\n font-size: ", ";\n line-height: 36px;\n }\n &:hover {\n color: ", ";\n background-color: ", ";\n }\n &:focus {\n color: ", ";\n outline: ", ";\n }\n &:active {\n color: ", ";\n background-color: ", " !important;\n }\n"])), function (props) {
|
|
99
|
+
return props.theme.dateInput.pickerFontFamily;
|
|
100
|
+
}, function (props) {
|
|
101
|
+
return props.theme.dateInput.pickerFontSize;
|
|
102
|
+
}, function (props) {
|
|
103
|
+
return props.theme.dateInput.pickerFontColor;
|
|
104
|
+
}, function (props) {
|
|
105
|
+
return props.theme.dateInput.pickerFontWeight;
|
|
106
|
+
}, function (props) {
|
|
107
|
+
return props.selected ? "font-size: ".concat(props.theme.dateInput.pickerInteractedYearFontSize, ";\n line-height: 36px;\n color: ").concat(props.theme.dateInput.pickerSelectedFontColor, " !important;\n background-color: ").concat(props.theme.dateInput.pickerSelectedBackgroundColor, " !important;") : props.isCurrentYear ? "border: 1px solid ".concat(props.theme.dateInput.pickerCurrentDateBorderColor, "; \n color: ").concat(props.theme.dateInput.pickerCurrentYearFontColor, ";") : "";
|
|
108
|
+
}, function (props) {
|
|
109
|
+
return props.theme.dateInput.pickerInteractedYearFontSize;
|
|
110
|
+
}, function (props) {
|
|
111
|
+
return props.theme.dateInput.pickerHoverFontColor;
|
|
112
|
+
}, function (props) {
|
|
113
|
+
return props.theme.dateInput.pickerHoverBackgroundColor;
|
|
114
|
+
}, function (props) {
|
|
115
|
+
return props.theme.dateInput.pickerHoverFontColor;
|
|
116
|
+
}, function (props) {
|
|
117
|
+
return "".concat(props.theme.dateInput.pickerFocusColor, " solid\n ").concat(props.theme.dateInput.pickerFocusWidth);
|
|
118
|
+
}, function (props) {
|
|
119
|
+
return props.theme.dateInput.pickerActiveFontColor;
|
|
120
|
+
}, function (props) {
|
|
121
|
+
return props.theme.dateInput.pickerActiveBackgroundColor;
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
var _default = /*#__PURE__*/_react["default"].memo(YearPicker);
|
|
125
|
+
|
|
126
|
+
exports["default"] = _default;
|
package/date-input/types.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Dayjs } from "dayjs";
|
|
1
2
|
declare type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
2
3
|
declare type Margin = {
|
|
3
4
|
top?: Space;
|
|
@@ -42,6 +43,10 @@ declare type Props = {
|
|
|
42
43
|
* If true, the component will be disabled.
|
|
43
44
|
*/
|
|
44
45
|
disabled?: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* If true, the component will not be mutable, meaning the user can not edit the control.
|
|
48
|
+
*/
|
|
49
|
+
readOnly?: boolean;
|
|
45
50
|
/**
|
|
46
51
|
* If true, the date will be optional, showing '(Optional)'
|
|
47
52
|
* next to the label. Otherwise, the field will be considered required and an error will be
|
|
@@ -100,6 +105,56 @@ declare type Props = {
|
|
|
100
105
|
*/
|
|
101
106
|
tabIndex?: number;
|
|
102
107
|
};
|
|
108
|
+
export declare type DatePickerPropsType = {
|
|
109
|
+
/**
|
|
110
|
+
* Initial selected date value. If invalid the actual date will be used instead.
|
|
111
|
+
*/
|
|
112
|
+
date: Dayjs;
|
|
113
|
+
/**
|
|
114
|
+
* Function called when a date is selected.
|
|
115
|
+
*/
|
|
116
|
+
onDateSelect: (date: Dayjs) => void;
|
|
117
|
+
/**
|
|
118
|
+
* Id assigned to the date picker.
|
|
119
|
+
*/
|
|
120
|
+
id: string;
|
|
121
|
+
};
|
|
122
|
+
export declare type CalendarPropsType = {
|
|
123
|
+
/**
|
|
124
|
+
* Initial selected date value. If invalid the actual date will be used instead.
|
|
125
|
+
*/
|
|
126
|
+
selectedDate: Dayjs;
|
|
127
|
+
/**
|
|
128
|
+
* Date showed by the calendar.
|
|
129
|
+
*/
|
|
130
|
+
innerDate: Dayjs;
|
|
131
|
+
/**
|
|
132
|
+
* Function called when the date showned needs to be updated
|
|
133
|
+
*/
|
|
134
|
+
onInnerDateChange: (date: Dayjs) => void;
|
|
135
|
+
/**
|
|
136
|
+
* Function called when a date is selected.
|
|
137
|
+
*/
|
|
138
|
+
onDaySelect: (date: Dayjs) => void;
|
|
139
|
+
/**
|
|
140
|
+
* Current date
|
|
141
|
+
*/
|
|
142
|
+
today: Dayjs;
|
|
143
|
+
};
|
|
144
|
+
export declare type YearPickerPropsType = {
|
|
145
|
+
/**
|
|
146
|
+
* Initial selected date value. If invalid the actual date will be used instead.
|
|
147
|
+
*/
|
|
148
|
+
selectedDate: Dayjs;
|
|
149
|
+
/**
|
|
150
|
+
* Function called when a year is selected.
|
|
151
|
+
*/
|
|
152
|
+
onYearSelect: (year: number) => void;
|
|
153
|
+
/**
|
|
154
|
+
* Current date
|
|
155
|
+
*/
|
|
156
|
+
today: Dayjs;
|
|
157
|
+
};
|
|
103
158
|
/**
|
|
104
159
|
* Reference to the component.
|
|
105
160
|
*/
|
package/dialog/Dialog.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import DialogPropsType from "./types";
|
|
3
|
-
declare const DxcDialog: ({ isCloseVisible, onCloseClick, children, overlay, onBackgroundClick,
|
|
3
|
+
declare const DxcDialog: ({ isCloseVisible, onCloseClick, children, overlay, onBackgroundClick, tabIndex, }: DialogPropsType) => JSX.Element;
|
|
4
4
|
export default DxcDialog;
|