@dxc-technology/halstack-react 0.0.0-9b45027 → 0.0.0-9bd9511
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 -11
- package/HalstackContext.d.ts +13 -0
- package/HalstackContext.js +318 -0
- package/accordion/Accordion.d.ts +1 -1
- package/accordion/Accordion.js +124 -179
- package/accordion/Accordion.stories.tsx +115 -27
- package/accordion/Accordion.test.js +56 -0
- package/accordion/types.d.ts +12 -11
- package/accordion-group/AccordionGroup.d.ts +1 -1
- package/accordion-group/AccordionGroup.js +28 -77
- package/accordion-group/AccordionGroup.stories.tsx +28 -2
- package/accordion-group/AccordionGroup.test.js +108 -0
- package/accordion-group/types.d.ts +19 -12
- package/alert/Alert.js +18 -46
- package/alert/Alert.stories.tsx +28 -0
- package/alert/Alert.test.js +75 -0
- package/alert/types.d.ts +3 -3
- package/badge/Badge.d.ts +4 -0
- package/badge/Badge.js +6 -16
- package/badge/types.d.ts +5 -0
- package/bleed/Bleed.d.ts +2 -2
- package/bleed/Bleed.js +14 -55
- package/bleed/Bleed.stories.tsx +94 -95
- package/bleed/types.d.ts +26 -2
- package/box/Box.js +34 -63
- package/box/Box.stories.tsx +15 -0
- package/box/Box.test.js +13 -0
- package/box/types.d.ts +5 -4
- package/bulleted-list/BulletedList.d.ts +7 -0
- package/bulleted-list/BulletedList.js +98 -0
- package/bulleted-list/BulletedList.stories.tsx +200 -0
- package/bulleted-list/types.d.ts +11 -0
- package/bulleted-list/types.js +5 -0
- package/button/Button.js +61 -100
- package/button/Button.stories.tsx +159 -8
- package/button/Button.test.js +26 -0
- package/button/types.d.ts +8 -8
- package/card/Card.js +44 -70
- package/card/Card.test.js +39 -0
- package/card/types.d.ts +4 -3
- package/checkbox/Checkbox.d.ts +2 -2
- package/checkbox/Checkbox.js +115 -162
- package/checkbox/Checkbox.stories.tsx +198 -130
- package/checkbox/Checkbox.test.js +128 -0
- package/checkbox/types.d.ts +14 -6
- package/chip/Chip.d.ts +1 -1
- package/chip/Chip.js +29 -91
- package/chip/Chip.stories.tsx +98 -13
- package/chip/Chip.test.js +42 -0
- package/chip/types.d.ts +8 -16
- package/common/utils.js +1 -6
- package/common/variables.d.ts +1431 -0
- package/common/variables.js +480 -554
- package/date-input/Calendar.d.ts +4 -0
- package/date-input/Calendar.js +215 -0
- package/date-input/DateInput.js +164 -300
- package/date-input/DateInput.stories.tsx +199 -33
- package/date-input/DateInput.test.js +648 -0
- package/date-input/DatePicker.d.ts +4 -0
- package/date-input/DatePicker.js +116 -0
- package/date-input/Icons.d.ts +6 -0
- package/date-input/Icons.js +63 -0
- package/date-input/YearPicker.d.ts +4 -0
- package/date-input/YearPicker.js +101 -0
- package/date-input/types.d.ts +71 -13
- package/dialog/Dialog.js +52 -84
- package/dialog/Dialog.stories.tsx +99 -22
- package/dialog/Dialog.test.js +56 -0
- package/dialog/types.d.ts +4 -3
- package/dropdown/Dropdown.d.ts +1 -1
- package/dropdown/Dropdown.js +240 -323
- package/dropdown/Dropdown.stories.tsx +255 -64
- package/dropdown/Dropdown.test.js +479 -0
- package/dropdown/DropdownMenu.d.ts +4 -0
- package/dropdown/DropdownMenu.js +60 -0
- package/dropdown/DropdownMenuItem.d.ts +4 -0
- package/dropdown/DropdownMenuItem.js +70 -0
- package/dropdown/types.d.ts +30 -19
- package/file-input/FileInput.d.ts +2 -2
- package/file-input/FileInput.js +224 -351
- package/file-input/FileInput.stories.tsx +122 -11
- package/file-input/FileInput.test.js +445 -0
- package/file-input/FileItem.d.ts +4 -14
- package/file-input/FileItem.js +48 -97
- package/file-input/types.d.ts +24 -7
- package/flex/Flex.d.ts +4 -0
- package/flex/Flex.js +57 -0
- package/flex/Flex.stories.tsx +103 -0
- package/flex/types.d.ts +32 -0
- package/flex/types.js +5 -0
- package/footer/Footer.js +36 -143
- package/footer/Footer.stories.tsx +99 -1
- package/footer/Footer.test.js +92 -0
- package/footer/Icons.js +1 -5
- package/footer/types.d.ts +7 -6
- package/header/Header.js +112 -177
- package/header/Header.stories.tsx +189 -36
- package/header/Header.test.js +66 -0
- package/header/Icons.js +2 -6
- package/header/types.d.ts +4 -3
- package/heading/Heading.js +8 -29
- package/heading/Heading.test.js +169 -0
- package/heading/types.d.ts +3 -3
- package/inset/Inset.js +14 -55
- package/inset/Inset.stories.tsx +36 -36
- package/inset/types.d.ts +26 -2
- package/layout/ApplicationLayout.d.ts +16 -6
- package/layout/ApplicationLayout.js +71 -164
- package/layout/ApplicationLayout.stories.tsx +84 -93
- package/layout/Icons.d.ts +5 -0
- package/layout/Icons.js +11 -10
- package/layout/SidenavContext.d.ts +5 -0
- package/layout/SidenavContext.js +15 -0
- package/layout/types.d.ts +18 -33
- package/link/Link.d.ts +3 -2
- package/link/Link.js +61 -106
- package/link/Link.stories.tsx +159 -52
- package/link/Link.test.js +65 -0
- package/link/types.d.ts +9 -29
- package/main.d.ts +11 -15
- package/main.js +48 -121
- package/nav-tabs/NavTabs.d.ts +8 -0
- package/nav-tabs/NavTabs.js +95 -0
- package/nav-tabs/NavTabs.stories.tsx +260 -0
- package/nav-tabs/NavTabs.test.js +75 -0
- package/nav-tabs/Tab.d.ts +4 -0
- package/nav-tabs/Tab.js +120 -0
- package/nav-tabs/types.d.ts +53 -0
- package/nav-tabs/types.js +5 -0
- package/number-input/NumberInput.js +21 -38
- package/number-input/NumberInput.stories.tsx +5 -5
- package/number-input/NumberInput.test.js +406 -0
- package/number-input/NumberInputContext.js +0 -5
- package/number-input/numberInputContextTypes.d.ts +1 -1
- package/number-input/types.d.ts +21 -14
- package/package.json +22 -25
- package/paginator/Icons.d.ts +5 -0
- package/paginator/Icons.js +16 -38
- package/paginator/Paginator.js +31 -82
- package/paginator/Paginator.stories.tsx +24 -0
- package/paginator/Paginator.test.js +266 -0
- package/paginator/types.d.ts +1 -1
- package/paragraph/Paragraph.d.ts +6 -0
- package/paragraph/Paragraph.js +28 -0
- package/paragraph/Paragraph.stories.tsx +44 -0
- package/password-input/PasswordInput.js +28 -54
- package/password-input/PasswordInput.test.js +138 -0
- package/password-input/types.d.ts +18 -15
- package/progress-bar/ProgressBar.d.ts +2 -2
- package/progress-bar/ProgressBar.js +65 -84
- package/progress-bar/ProgressBar.stories.jsx +47 -12
- package/progress-bar/ProgressBar.test.js +93 -0
- package/progress-bar/types.d.ts +3 -4
- package/quick-nav/QuickNav.d.ts +4 -0
- package/quick-nav/QuickNav.js +95 -0
- package/quick-nav/QuickNav.stories.tsx +356 -0
- package/quick-nav/types.d.ts +21 -0
- package/quick-nav/types.js +5 -0
- package/radio-group/Radio.d.ts +1 -1
- package/radio-group/Radio.js +61 -66
- package/radio-group/RadioGroup.js +99 -129
- package/radio-group/RadioGroup.stories.tsx +171 -36
- package/radio-group/RadioGroup.test.js +620 -0
- package/radio-group/types.d.ts +85 -7
- package/resultsetTable/Icons.d.ts +7 -0
- package/resultsetTable/Icons.js +48 -0
- package/resultsetTable/ResultsetTable.js +66 -157
- package/resultsetTable/ResultsetTable.stories.tsx +50 -25
- package/resultsetTable/ResultsetTable.test.js +292 -0
- package/resultsetTable/types.d.ts +5 -5
- package/select/Icons.d.ts +10 -0
- package/select/Icons.js +90 -0
- package/select/Listbox.d.ts +4 -0
- package/select/Listbox.js +144 -0
- package/select/Option.d.ts +4 -0
- package/select/Option.js +81 -0
- package/select/Select.js +201 -485
- package/select/Select.stories.tsx +600 -201
- package/select/Select.test.js +1845 -0
- package/select/types.d.ts +62 -22
- package/sidenav/Sidenav.d.ts +6 -5
- package/sidenav/Sidenav.js +164 -74
- package/sidenav/Sidenav.stories.tsx +249 -149
- package/sidenav/Sidenav.test.js +37 -0
- package/sidenav/types.d.ts +50 -27
- package/slider/Slider.d.ts +2 -2
- package/slider/Slider.js +143 -164
- package/slider/Slider.stories.tsx +72 -9
- package/slider/Slider.test.js +222 -0
- package/slider/types.d.ts +11 -3
- package/spinner/Spinner.js +12 -41
- package/spinner/Spinner.stories.jsx +27 -1
- package/spinner/Spinner.test.js +55 -0
- package/spinner/types.d.ts +3 -3
- package/switch/Switch.d.ts +2 -2
- package/switch/Switch.js +148 -107
- package/switch/Switch.stories.tsx +53 -42
- package/switch/Switch.test.js +180 -0
- package/switch/types.d.ts +13 -5
- package/table/Table.js +5 -23
- package/table/Table.stories.jsx +80 -1
- package/table/Table.test.js +21 -0
- package/table/types.d.ts +3 -3
- package/tabs/Tab.d.ts +4 -0
- package/tabs/Tab.js +115 -0
- package/tabs/Tabs.d.ts +1 -1
- package/tabs/Tabs.js +318 -139
- package/tabs/Tabs.stories.tsx +119 -13
- package/tabs/Tabs.test.js +295 -0
- package/tabs/types.d.ts +21 -7
- package/tag/Tag.d.ts +1 -1
- package/tag/Tag.js +36 -75
- package/tag/Tag.stories.tsx +37 -27
- package/tag/Tag.test.js +49 -0
- package/tag/types.d.ts +25 -16
- package/text-input/Icons.d.ts +8 -0
- package/text-input/Icons.js +57 -0
- package/text-input/Suggestion.d.ts +4 -0
- package/text-input/Suggestion.js +68 -0
- package/text-input/Suggestions.d.ts +4 -0
- package/text-input/Suggestions.js +109 -0
- package/text-input/TextInput.js +232 -438
- package/text-input/TextInput.stories.tsx +310 -197
- package/text-input/TextInput.test.js +1404 -0
- package/text-input/types.d.ts +55 -17
- package/textarea/Textarea.js +53 -96
- package/textarea/Textarea.stories.jsx +93 -13
- package/textarea/Textarea.test.js +360 -0
- package/textarea/types.d.ts +22 -15
- package/toggle-group/ToggleGroup.d.ts +1 -1
- package/toggle-group/ToggleGroup.js +23 -57
- package/toggle-group/ToggleGroup.stories.tsx +46 -4
- package/toggle-group/ToggleGroup.test.js +124 -0
- package/toggle-group/types.d.ts +19 -11
- package/translatedLabelsType.d.ts +82 -0
- package/translatedLabelsType.js +5 -0
- package/typography/Typography.d.ts +4 -0
- package/typography/Typography.js +119 -0
- package/typography/Typography.stories.tsx +198 -0
- package/typography/types.d.ts +18 -0
- package/typography/types.js +5 -0
- package/useTheme.d.ts +1 -1
- package/useTheme.js +3 -9
- package/useTranslatedLabels.d.ts +3 -0
- package/useTranslatedLabels.js +15 -0
- package/wizard/Wizard.d.ts +1 -1
- package/wizard/Wizard.js +68 -98
- package/wizard/Wizard.stories.tsx +48 -19
- package/wizard/Wizard.test.js +114 -0
- package/wizard/types.d.ts +12 -7
- package/ThemeContext.d.ts +0 -15
- package/ThemeContext.js +0 -243
- package/V3Select/V3Select.js +0 -455
- package/V3Select/index.d.ts +0 -27
- package/V3Textarea/V3Textarea.js +0 -260
- package/V3Textarea/index.d.ts +0 -27
- package/common/RequiredComponent.js +0 -32
- package/date/Date.js +0 -373
- package/date/index.d.ts +0 -27
- package/input-text/Icons.js +0 -22
- package/input-text/InputText.js +0 -611
- package/input-text/index.d.ts +0 -36
- package/list/List.d.ts +0 -8
- package/list/List.js +0 -47
- package/list/List.stories.tsx +0 -95
- package/radio/Radio.d.ts +0 -4
- package/radio/Radio.js +0 -174
- package/radio/Radio.stories.tsx +0 -192
- package/radio/types.d.ts +0 -54
- package/row/Row.d.ts +0 -11
- package/row/Row.js +0 -127
- package/row/Row.stories.tsx +0 -239
- package/stack/Stack.d.ts +0 -10
- package/stack/Stack.js +0 -97
- package/stack/Stack.stories.tsx +0 -166
- package/text/Text.d.ts +0 -7
- package/text/Text.js +0 -30
- package/text/Text.stories.tsx +0 -19
- package/toggle/Toggle.js +0 -186
- package/toggle/index.d.ts +0 -21
- package/upload/Upload.js +0 -201
- package/upload/buttons-upload/ButtonsUpload.js +0 -111
- package/upload/buttons-upload/Icons.js +0 -40
- package/upload/dragAndDropArea/DragAndDropArea.js +0 -225
- package/upload/dragAndDropArea/Icons.js +0 -39
- package/upload/file-upload/FileToUpload.js +0 -115
- package/upload/file-upload/Icons.js +0 -66
- package/upload/files-upload/FilesToUpload.js +0 -109
- package/upload/index.d.ts +0 -15
- package/upload/transaction/Icons.js +0 -160
- package/upload/transaction/Transaction.js +0 -104
- package/upload/transactions/Transactions.js +0 -94
- /package/{radio → badge}/types.js +0 -0
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
var _dayjs = _interopRequireDefault(require("dayjs"));
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
14
|
+
var _Calendar = _interopRequireDefault(require("./Calendar"));
|
|
15
|
+
var _YearPicker = _interopRequireDefault(require("./YearPicker"));
|
|
16
|
+
var _useTranslatedLabels = _interopRequireDefault(require("../useTranslatedLabels"));
|
|
17
|
+
var _Icons = require("./Icons");
|
|
18
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
19
|
+
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); }
|
|
20
|
+
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; }
|
|
21
|
+
var today = (0, _dayjs["default"])();
|
|
22
|
+
var DxcDatePicker = function DxcDatePicker(_ref) {
|
|
23
|
+
var date = _ref.date,
|
|
24
|
+
onDateSelect = _ref.onDateSelect,
|
|
25
|
+
id = _ref.id;
|
|
26
|
+
var _useState = (0, _react.useState)(date !== null && date !== void 0 && date.isValid() ? date : (0, _dayjs["default"])()),
|
|
27
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
28
|
+
innerDate = _useState2[0],
|
|
29
|
+
setInnerDate = _useState2[1];
|
|
30
|
+
var _useState3 = (0, _react.useState)("calendar"),
|
|
31
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
32
|
+
content = _useState4[0],
|
|
33
|
+
setContent = _useState4[1];
|
|
34
|
+
var selectedDate = date !== null && date !== void 0 && date.isValid() ? date : null;
|
|
35
|
+
var translatedLabels = (0, _useTranslatedLabels["default"])();
|
|
36
|
+
var handleDateSelect = function handleDateSelect(date) {
|
|
37
|
+
setInnerDate(date);
|
|
38
|
+
onDateSelect(date);
|
|
39
|
+
};
|
|
40
|
+
var handleOnYearSelect = function handleOnYearSelect(year) {
|
|
41
|
+
setInnerDate(innerDate.set("year", year));
|
|
42
|
+
setContent("calendar");
|
|
43
|
+
};
|
|
44
|
+
var handleMonthChange = function handleMonthChange(date) {
|
|
45
|
+
setInnerDate(date);
|
|
46
|
+
};
|
|
47
|
+
return /*#__PURE__*/_react["default"].createElement(DatePicker, {
|
|
48
|
+
id: id
|
|
49
|
+
}, /*#__PURE__*/_react["default"].createElement(PickerHeader, null, /*#__PURE__*/_react["default"].createElement(HeaderButton, {
|
|
50
|
+
"aria-label": translatedLabels.calendar.previousMonthTitle,
|
|
51
|
+
title: translatedLabels.calendar.previousMonthTitle,
|
|
52
|
+
onClick: function onClick() {
|
|
53
|
+
return handleMonthChange(innerDate.set("month", innerDate.get("month") - 1));
|
|
54
|
+
}
|
|
55
|
+
}, _Icons.leftCaret), /*#__PURE__*/_react["default"].createElement(HeaderYearTrigger, {
|
|
56
|
+
"aria-live": "polite",
|
|
57
|
+
onClick: function onClick() {
|
|
58
|
+
return setContent(function (content) {
|
|
59
|
+
return content === "yearPicker" ? "calendar" : "yearPicker";
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}, /*#__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, {
|
|
63
|
+
"aria-label": translatedLabels.calendar.nextMonthTitle,
|
|
64
|
+
title: translatedLabels.calendar.nextMonthTitle,
|
|
65
|
+
onClick: function onClick() {
|
|
66
|
+
return handleMonthChange(innerDate.set("month", innerDate.get("month") + 1));
|
|
67
|
+
}
|
|
68
|
+
}, _Icons.rightCaret)), content === "calendar" && /*#__PURE__*/_react["default"].createElement(_Calendar["default"], {
|
|
69
|
+
innerDate: innerDate,
|
|
70
|
+
selectedDate: selectedDate,
|
|
71
|
+
onInnerDateChange: setInnerDate,
|
|
72
|
+
onDaySelect: handleDateSelect,
|
|
73
|
+
today: today
|
|
74
|
+
}), content === "yearPicker" && /*#__PURE__*/_react["default"].createElement(_YearPicker["default"], {
|
|
75
|
+
selectedDate: selectedDate,
|
|
76
|
+
onYearSelect: handleOnYearSelect,
|
|
77
|
+
today: today
|
|
78
|
+
}));
|
|
79
|
+
};
|
|
80
|
+
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) {
|
|
81
|
+
return props.theme.dateInput.pickerBackgroundColor;
|
|
82
|
+
}, function (props) {
|
|
83
|
+
return "".concat(props.theme.dateInput.pickerBorderWidth, " ").concat(props.theme.dateInput.pickerBorderStyle, "\n ").concat(props.theme.dateInput.pickerBorderColor);
|
|
84
|
+
}, function (props) {
|
|
85
|
+
return props.theme.dateInput.pickerFontFamily;
|
|
86
|
+
}, function (props) {
|
|
87
|
+
return props.theme.dateInput.pickerFontSize;
|
|
88
|
+
}, function (props) {
|
|
89
|
+
return props.theme.dateInput.pickerFontColor;
|
|
90
|
+
}, function (props) {
|
|
91
|
+
return props.theme.dateInput.pickerFontWeight;
|
|
92
|
+
});
|
|
93
|
+
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"])));
|
|
94
|
+
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) {
|
|
95
|
+
return props.theme.dateInput.pickerHeaderFontColor;
|
|
96
|
+
}, function (props) {
|
|
97
|
+
return props.theme.dateInput.pickerHeaderBackgroundColor;
|
|
98
|
+
}, function (props) {
|
|
99
|
+
return props.theme.dateInput.pickerHeaderHoverFontColor;
|
|
100
|
+
}, function (props) {
|
|
101
|
+
return props.theme.dateInput.pickerHeaderHoverBackgroundColor;
|
|
102
|
+
}, function (props) {
|
|
103
|
+
return "".concat(props.theme.dateInput.pickerFocusColor, " solid\n ").concat(props.theme.dateInput.pickerFocusWidth);
|
|
104
|
+
}, function (props) {
|
|
105
|
+
return props.theme.dateInput.pickerHeaderActiveFontColor;
|
|
106
|
+
}, function (props) {
|
|
107
|
+
return props.theme.dateInput.pickerHeaderActiveBackgroundColor;
|
|
108
|
+
});
|
|
109
|
+
var HeaderYearTrigger = (0, _styledComponents["default"])(HeaderButton)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n gap: 8px;\n height: 40px;\n width: 172px;\n"])));
|
|
110
|
+
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) {
|
|
111
|
+
return props.theme.dateInput.pickerFontFamily;
|
|
112
|
+
}, function (props) {
|
|
113
|
+
return props.theme.dateInput.pickerHeaderFontSize;
|
|
114
|
+
});
|
|
115
|
+
var _default = /*#__PURE__*/_react["default"].memo(DxcDatePicker);
|
|
116
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.upCaret = exports.rightCaret = exports.leftCaret = exports.downCaret = exports.calendarIcon = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var calendarIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
10
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
11
|
+
height: "24",
|
|
12
|
+
viewBox: "0 0 24 24",
|
|
13
|
+
width: "24",
|
|
14
|
+
fill: "currentColor"
|
|
15
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
16
|
+
d: "M0 0h24v24H0z",
|
|
17
|
+
fill: "none"
|
|
18
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
19
|
+
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"
|
|
20
|
+
}));
|
|
21
|
+
exports.calendarIcon = calendarIcon;
|
|
22
|
+
var leftCaret = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
23
|
+
fill: "currentColor",
|
|
24
|
+
focusable: "false",
|
|
25
|
+
viewBox: "0 0 24 24"
|
|
26
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
27
|
+
d: "M15.41 16.59L10.83 12l4.58-4.59L14 6l-6 6 6 6 1.41-1.41z"
|
|
28
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
29
|
+
fill: "none",
|
|
30
|
+
d: "M0 0h24v24H0V0z"
|
|
31
|
+
}));
|
|
32
|
+
exports.leftCaret = leftCaret;
|
|
33
|
+
var rightCaret = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
34
|
+
fill: "currentColor",
|
|
35
|
+
focusable: "false",
|
|
36
|
+
viewBox: "0 0 24 24"
|
|
37
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
38
|
+
d: "M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z"
|
|
39
|
+
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
40
|
+
fill: "none",
|
|
41
|
+
d: "M0 0h24v24H0V0z"
|
|
42
|
+
}));
|
|
43
|
+
exports.rightCaret = rightCaret;
|
|
44
|
+
var downCaret = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
45
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
46
|
+
width: "24",
|
|
47
|
+
height: "24",
|
|
48
|
+
viewBox: "0 0 24 24"
|
|
49
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
50
|
+
d: "M7.5 10L12.5 15L17.5 10H7.5Z",
|
|
51
|
+
fill: "currentColor"
|
|
52
|
+
}));
|
|
53
|
+
exports.downCaret = downCaret;
|
|
54
|
+
var upCaret = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
55
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
56
|
+
height: "24",
|
|
57
|
+
width: "24",
|
|
58
|
+
viewBox: "0 0 24 24"
|
|
59
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
60
|
+
d: "m7 14 5-5 5 5Z",
|
|
61
|
+
fill: "currentColor"
|
|
62
|
+
}));
|
|
63
|
+
exports.upCaret = upCaret;
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
var _dayjs = _interopRequireDefault(require("dayjs"));
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
14
|
+
var _templateObject, _templateObject2;
|
|
15
|
+
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); }
|
|
16
|
+
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; }
|
|
17
|
+
var getYearsArray = function getYearsArray() {
|
|
18
|
+
var yearList = [];
|
|
19
|
+
for (var i = 1899; i <= 2100; i++) {
|
|
20
|
+
yearList.push(i);
|
|
21
|
+
}
|
|
22
|
+
return yearList;
|
|
23
|
+
};
|
|
24
|
+
var yearList = getYearsArray();
|
|
25
|
+
var YearPicker = function YearPicker(_ref) {
|
|
26
|
+
var onYearSelect = _ref.onYearSelect,
|
|
27
|
+
selectedDate = _ref.selectedDate,
|
|
28
|
+
today = _ref.today;
|
|
29
|
+
var _useState = (0, _react.useState)(selectedDate ? selectedDate.get("year") : (0, _dayjs["default"])().get("year")),
|
|
30
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
31
|
+
yearToFocus = _useState2[0],
|
|
32
|
+
setYearToFocus = _useState2[1];
|
|
33
|
+
(0, _react.useEffect)(function () {
|
|
34
|
+
var _yearToFocusEl$scroll;
|
|
35
|
+
var yearToFocusEl = document.getElementById("year_".concat(yearToFocus));
|
|
36
|
+
yearToFocusEl === null || yearToFocusEl === void 0 ? void 0 : (_yearToFocusEl$scroll = yearToFocusEl.scrollIntoView) === null || _yearToFocusEl$scroll === void 0 ? void 0 : _yearToFocusEl$scroll.call(yearToFocusEl, {
|
|
37
|
+
block: "nearest",
|
|
38
|
+
inline: "start"
|
|
39
|
+
});
|
|
40
|
+
yearToFocusEl === null || yearToFocusEl === void 0 ? void 0 : yearToFocusEl.focus();
|
|
41
|
+
}, [yearToFocus]);
|
|
42
|
+
var handleDayKeyboardEvent = function handleDayKeyboardEvent(event) {
|
|
43
|
+
switch (event.key) {
|
|
44
|
+
case "ArrowUp":
|
|
45
|
+
setYearToFocus(function (prev) {
|
|
46
|
+
return prev > 1899 ? prev - 1 : prev;
|
|
47
|
+
});
|
|
48
|
+
break;
|
|
49
|
+
case "ArrowDown":
|
|
50
|
+
setYearToFocus(function (prev) {
|
|
51
|
+
return prev < 2100 ? prev + 1 : prev;
|
|
52
|
+
});
|
|
53
|
+
break;
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
return /*#__PURE__*/_react["default"].createElement(YearPickerContainer, null, yearList.map(function (year) {
|
|
57
|
+
return /*#__PURE__*/_react["default"].createElement(YearPickerButton, {
|
|
58
|
+
"aria-label": year,
|
|
59
|
+
key: year,
|
|
60
|
+
selected: (selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.get("year")) === year,
|
|
61
|
+
"aria-selected": (selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.get("year")) === year,
|
|
62
|
+
tabIndex: yearToFocus === year ? 0 : -1,
|
|
63
|
+
isCurrentYear: today.get("year") === year,
|
|
64
|
+
onKeyDown: function onKeyDown(event) {
|
|
65
|
+
return handleDayKeyboardEvent(event);
|
|
66
|
+
},
|
|
67
|
+
id: "year_".concat(year),
|
|
68
|
+
onClick: function onClick() {
|
|
69
|
+
onYearSelect(year);
|
|
70
|
+
}
|
|
71
|
+
}, year);
|
|
72
|
+
}));
|
|
73
|
+
};
|
|
74
|
+
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"])));
|
|
75
|
+
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) {
|
|
76
|
+
return props.theme.dateInput.pickerFontFamily;
|
|
77
|
+
}, function (props) {
|
|
78
|
+
return props.theme.dateInput.pickerFontSize;
|
|
79
|
+
}, function (props) {
|
|
80
|
+
return props.theme.dateInput.pickerFontColor;
|
|
81
|
+
}, function (props) {
|
|
82
|
+
return props.theme.dateInput.pickerFontWeight;
|
|
83
|
+
}, function (props) {
|
|
84
|
+
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, ";") : "";
|
|
85
|
+
}, function (props) {
|
|
86
|
+
return props.theme.dateInput.pickerInteractedYearFontSize;
|
|
87
|
+
}, function (props) {
|
|
88
|
+
return props.theme.dateInput.pickerHoverFontColor;
|
|
89
|
+
}, function (props) {
|
|
90
|
+
return props.theme.dateInput.pickerHoverBackgroundColor;
|
|
91
|
+
}, function (props) {
|
|
92
|
+
return props.theme.dateInput.pickerHoverFontColor;
|
|
93
|
+
}, function (props) {
|
|
94
|
+
return "".concat(props.theme.dateInput.pickerFocusColor, " solid\n ").concat(props.theme.dateInput.pickerFocusWidth);
|
|
95
|
+
}, function (props) {
|
|
96
|
+
return props.theme.dateInput.pickerActiveFontColor;
|
|
97
|
+
}, function (props) {
|
|
98
|
+
return props.theme.dateInput.pickerActiveBackgroundColor;
|
|
99
|
+
});
|
|
100
|
+
var _default = /*#__PURE__*/_react["default"].memo(YearPicker);
|
|
101
|
+
exports["default"] = _default;
|
package/date-input/types.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { Dayjs } from "dayjs";
|
|
2
|
+
type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
|
|
3
|
+
type Margin = {
|
|
3
4
|
top?: Space;
|
|
4
5
|
bottom?: Space;
|
|
5
6
|
left?: Space;
|
|
6
7
|
right?: Space;
|
|
7
8
|
};
|
|
8
|
-
|
|
9
|
+
type Props = {
|
|
9
10
|
/**
|
|
10
11
|
* Text to be placed above the date.
|
|
11
12
|
*/
|
|
@@ -14,6 +15,10 @@ declare type Props = {
|
|
|
14
15
|
* Name attribute of the input element.
|
|
15
16
|
*/
|
|
16
17
|
name?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Initial value of the input element, only when it is uncontrolled.
|
|
20
|
+
*/
|
|
21
|
+
defaultValue?: string;
|
|
17
22
|
/**
|
|
18
23
|
* Value of the input element. If undefined, the component will be uncontrolled and the value will be managed internally by the component.
|
|
19
24
|
*/
|
|
@@ -50,28 +55,31 @@ declare type Props = {
|
|
|
50
55
|
* element of the component. An object including the string value, the
|
|
51
56
|
* error and the date value will be passed to this function.
|
|
52
57
|
* If the string value is a valid date, error will
|
|
53
|
-
* be
|
|
58
|
+
* be undefined. Also, if the string value is not a valid date, date will be undefined.
|
|
54
59
|
*/
|
|
55
60
|
onChange?: (val: {
|
|
56
61
|
value: string;
|
|
57
|
-
error
|
|
58
|
-
date
|
|
62
|
+
error?: string;
|
|
63
|
+
date?: Date;
|
|
59
64
|
}) => void;
|
|
60
65
|
/**
|
|
61
66
|
* This function will be called when the input element loses the focus.
|
|
62
67
|
* An object including the string value, the error and the date value
|
|
63
68
|
* will be passed to this function. If the string value is a valid date, error will
|
|
64
|
-
* be
|
|
69
|
+
* be undefined. Also, if the string value is not a valid date, date will be undefined.
|
|
65
70
|
*/
|
|
66
71
|
onBlur?: (val: {
|
|
67
72
|
value: string;
|
|
68
|
-
error
|
|
69
|
-
date
|
|
73
|
+
error?: string;
|
|
74
|
+
date?: Date;
|
|
70
75
|
}) => void;
|
|
71
76
|
/**
|
|
72
|
-
* If it is defined
|
|
73
|
-
* the error below the date input
|
|
74
|
-
*
|
|
77
|
+
* If it is a defined value and also a truthy string, the component will
|
|
78
|
+
* change its appearance, showing the error below the date input
|
|
79
|
+
* component. If the defined value is an empty string, it will reserve a
|
|
80
|
+
* space below the component for a future error, but it would not change
|
|
81
|
+
* its look. In case of being undefined or null, both the appearance and
|
|
82
|
+
* the space for the error message would not be modified.
|
|
75
83
|
*/
|
|
76
84
|
error?: string;
|
|
77
85
|
/**
|
|
@@ -93,8 +101,58 @@ declare type Props = {
|
|
|
93
101
|
*/
|
|
94
102
|
tabIndex?: number;
|
|
95
103
|
};
|
|
104
|
+
export type DatePickerPropsType = {
|
|
105
|
+
/**
|
|
106
|
+
* Initial selected date value. If invalid the actual date will be used instead.
|
|
107
|
+
*/
|
|
108
|
+
date: Dayjs;
|
|
109
|
+
/**
|
|
110
|
+
* Function called when a date is selected.
|
|
111
|
+
*/
|
|
112
|
+
onDateSelect: (date: Dayjs) => void;
|
|
113
|
+
/**
|
|
114
|
+
* Id assigned to the date picker.
|
|
115
|
+
*/
|
|
116
|
+
id: string;
|
|
117
|
+
};
|
|
118
|
+
export type CalendarPropsType = {
|
|
119
|
+
/**
|
|
120
|
+
* Initial selected date value. If invalid the actual date will be used instead.
|
|
121
|
+
*/
|
|
122
|
+
selectedDate: Dayjs;
|
|
123
|
+
/**
|
|
124
|
+
* Date showed by the calendar.
|
|
125
|
+
*/
|
|
126
|
+
innerDate: Dayjs;
|
|
127
|
+
/**
|
|
128
|
+
* Function called when the date showned needs to be updated
|
|
129
|
+
*/
|
|
130
|
+
onInnerDateChange: (date: Dayjs) => void;
|
|
131
|
+
/**
|
|
132
|
+
* Function called when a date is selected.
|
|
133
|
+
*/
|
|
134
|
+
onDaySelect: (date: Dayjs) => void;
|
|
135
|
+
/**
|
|
136
|
+
* Current date
|
|
137
|
+
*/
|
|
138
|
+
today: Dayjs;
|
|
139
|
+
};
|
|
140
|
+
export type YearPickerPropsType = {
|
|
141
|
+
/**
|
|
142
|
+
* Initial selected date value. If invalid the actual date will be used instead.
|
|
143
|
+
*/
|
|
144
|
+
selectedDate: Dayjs;
|
|
145
|
+
/**
|
|
146
|
+
* Function called when a year is selected.
|
|
147
|
+
*/
|
|
148
|
+
onYearSelect: (year: number) => void;
|
|
149
|
+
/**
|
|
150
|
+
* Current date
|
|
151
|
+
*/
|
|
152
|
+
today: Dayjs;
|
|
153
|
+
};
|
|
96
154
|
/**
|
|
97
155
|
* Reference to the component.
|
|
98
156
|
*/
|
|
99
|
-
export
|
|
157
|
+
export type RefType = HTMLDivElement;
|
|
100
158
|
export default Props;
|
package/dialog/Dialog.js
CHANGED
|
@@ -1,91 +1,69 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports["default"] = void 0;
|
|
11
|
-
|
|
12
9
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
13
|
-
|
|
14
10
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
15
|
-
|
|
16
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
|
-
|
|
18
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
-
|
|
20
12
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
21
|
-
|
|
22
|
-
var _Dialog = _interopRequireDefault(require("@material-ui/core/Dialog"));
|
|
23
|
-
|
|
24
|
-
var _variables = require("../common/variables.js");
|
|
25
|
-
|
|
13
|
+
var _variables = require("../common/variables");
|
|
26
14
|
var _useTheme = _interopRequireDefault(require("../useTheme"));
|
|
27
|
-
|
|
28
15
|
var _BackgroundColorContext = require("../BackgroundColorContext");
|
|
29
|
-
|
|
30
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
31
|
-
|
|
16
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
|
|
32
17
|
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
18
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(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
19
|
var DxcDialog = function DxcDialog(_ref) {
|
|
37
20
|
var _ref$isCloseVisible = _ref.isCloseVisible,
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
var _useState = (0, _react.useState)(false),
|
|
50
|
-
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
51
|
-
isResponsive = _useState2[0],
|
|
52
|
-
setIsResponsive = _useState2[1];
|
|
53
|
-
|
|
21
|
+
isCloseVisible = _ref$isCloseVisible === void 0 ? true : _ref$isCloseVisible,
|
|
22
|
+
onCloseClick = _ref.onCloseClick,
|
|
23
|
+
children = _ref.children,
|
|
24
|
+
_ref$overlay = _ref.overlay,
|
|
25
|
+
overlay = _ref$overlay === void 0 ? true : _ref$overlay,
|
|
26
|
+
onBackgroundClick = _ref.onBackgroundClick,
|
|
27
|
+
_ref$padding = _ref.padding,
|
|
28
|
+
padding = _ref$padding === void 0 ? "small" : _ref$padding,
|
|
29
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
30
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
54
31
|
var colorsTheme = (0, _useTheme["default"])();
|
|
55
|
-
|
|
56
32
|
var handleClose = function handleClose() {
|
|
57
33
|
onCloseClick === null || onCloseClick === void 0 ? void 0 : onCloseClick();
|
|
58
34
|
};
|
|
59
|
-
|
|
60
35
|
var handleOverlayClick = function handleOverlayClick() {
|
|
61
36
|
onBackgroundClick === null || onBackgroundClick === void 0 ? void 0 : onBackgroundClick();
|
|
62
37
|
};
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
var handleEventListener = function handleEventListener() {
|
|
69
|
-
handleResize(window.innerWidth);
|
|
38
|
+
var handleOnKeyDown = function handleOnKeyDown(event) {
|
|
39
|
+
if (event.key === "Escape") {
|
|
40
|
+
event.preventDefault();
|
|
41
|
+
handleClose();
|
|
42
|
+
}
|
|
70
43
|
};
|
|
71
|
-
|
|
72
44
|
(0, _react.useEffect)(function () {
|
|
73
|
-
|
|
74
|
-
|
|
45
|
+
if (isCloseVisible) {
|
|
46
|
+
window.addEventListener("keydown", handleOnKeyDown);
|
|
47
|
+
}
|
|
75
48
|
return function () {
|
|
76
|
-
window.removeEventListener("
|
|
49
|
+
window.removeEventListener("keydown", handleOnKeyDown);
|
|
77
50
|
};
|
|
78
|
-
}, []);
|
|
51
|
+
}, [isCloseVisible]);
|
|
79
52
|
return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
|
|
80
|
-
theme: colorsTheme
|
|
81
|
-
}, /*#__PURE__*/_react["default"].createElement(DialogContainer, {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
53
|
+
theme: colorsTheme["dialog"]
|
|
54
|
+
}, /*#__PURE__*/_react["default"].createElement(BodyStyle, null), /*#__PURE__*/_react["default"].createElement(DialogContainer, {
|
|
55
|
+
role: "presentation"
|
|
56
|
+
}, overlay && /*#__PURE__*/_react["default"].createElement(Overlay, {
|
|
57
|
+
onClick: handleOverlayClick
|
|
58
|
+
}), /*#__PURE__*/_react["default"].createElement(Dialog, {
|
|
59
|
+
role: "dialog",
|
|
60
|
+
"aria-modal": overlay,
|
|
61
|
+
isCloseVisible: isCloseVisible
|
|
62
|
+
}, /*#__PURE__*/_react["default"].createElement(Children, {
|
|
63
|
+
padding: padding
|
|
64
|
+
}, /*#__PURE__*/_react["default"].createElement(_BackgroundColorContext.BackgroundColorProvider, {
|
|
65
|
+
color: colorsTheme["dialog"].backgroundColor
|
|
66
|
+
}, children)), isCloseVisible && /*#__PURE__*/_react["default"].createElement(CloseIconContainer, {
|
|
89
67
|
onClick: handleClose,
|
|
90
68
|
tabIndex: tabIndex
|
|
91
69
|
}, /*#__PURE__*/_react["default"].createElement(CloseIcon, {
|
|
@@ -99,28 +77,27 @@ var DxcDialog = function DxcDialog(_ref) {
|
|
|
99
77
|
fill: "none"
|
|
100
78
|
}), /*#__PURE__*/_react["default"].createElement("path", {
|
|
101
79
|
d: "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"
|
|
102
|
-
})))
|
|
103
|
-
color: colorsTheme.dialog.backgroundColor
|
|
104
|
-
}, children))));
|
|
80
|
+
}))))));
|
|
105
81
|
};
|
|
106
|
-
|
|
107
|
-
var DialogContainer =
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
}, function (props) {
|
|
112
|
-
return props.overlay === true && props.theme.overlayOpacity;
|
|
113
|
-
}, function (props) {
|
|
82
|
+
var BodyStyle = (0, _styledComponents.createGlobalStyle)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n body {\n overflow: hidden;\n }\n"])));
|
|
83
|
+
var DialogContainer = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n inset: 0px;\n height: 100%;\n z-index: 1300;\n"])));
|
|
84
|
+
var Overlay = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n position: fixed;\n inset: 0px;\n height: 100%;\n background-color: ", ";\n"])), function (props) {
|
|
85
|
+
return props.theme.overlayColor;
|
|
86
|
+
});
|
|
87
|
+
var Dialog = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n z-index: 1300;\n background-color: ", ";\n font-family: ", ";\n font-size: ", ";\n font-weight: ", ";\n ", "\n box-sizing: border-box;\n box-shadow: ", ";\n border-radius: 4px;\n position: relative;\n\n @media (min-width: ", "rem) {\n max-width: 80%;\n min-width: 800px;\n }\n\n @media (max-width: ", "rem) {\n //mobile phones\n max-width: 92%;\n min-width: 92%;\n }\n"])), function (props) {
|
|
114
88
|
return props.theme.backgroundColor;
|
|
115
89
|
}, function (props) {
|
|
116
|
-
return props.
|
|
90
|
+
return props.theme.fontFamily;
|
|
117
91
|
}, function (props) {
|
|
118
|
-
return props.
|
|
92
|
+
return props.theme.fontSize;
|
|
119
93
|
}, function (props) {
|
|
120
|
-
return props.
|
|
94
|
+
return props.theme.fontWeight;
|
|
121
95
|
}, function (props) {
|
|
122
|
-
return
|
|
96
|
+
return props.isCloseVisible && "min-height: 72px; padding-top: 24px;";
|
|
123
97
|
}, function (props) {
|
|
98
|
+
return "".concat(props.theme.boxShadowOffsetX, " ").concat(props.theme.boxShadowOffsetY, " ").concat(props.theme.boxShadowBlur, " ").concat(props.theme.boxShadowColor);
|
|
99
|
+
}, _variables.responsiveSizes.medium, _variables.responsiveSizes.medium);
|
|
100
|
+
var Children = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n width: 100%;\n padding: ", ";\n padding-top: ", ";\n padding-right: ", ";\n padding-bottom: ", ";\n padding-left: ", ";\n"])), function (props) {
|
|
124
101
|
return props.padding && (0, _typeof2["default"])(props.padding) !== "object" ? _variables.spaces[props.padding] : _variables.spaces["small"];
|
|
125
102
|
}, function (props) {
|
|
126
103
|
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.top ? _variables.spaces[props.padding.top] : "";
|
|
@@ -131,22 +108,14 @@ var DialogContainer = (0, _styledComponents["default"])(_Dialog["default"])(_tem
|
|
|
131
108
|
}, function (props) {
|
|
132
109
|
return props.padding && (0, _typeof2["default"])(props.padding) === "object" && props.padding.left ? _variables.spaces[props.padding.left] : "";
|
|
133
110
|
});
|
|
134
|
-
|
|
135
|
-
var Children = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])([""])));
|
|
136
|
-
|
|
137
|
-
var CloseIconContainer = _styledComponents["default"].button(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: flex-end;\n position: absolute;\n top: ", ";\n right: ", ";\n cursor: pointer;\n padding: 0;\n margin: 0;\n background: none;\n color: ", ";\n width: ", ";\n height: ", ";\n border: none;\n"])), function (props) {
|
|
138
|
-
return props.theme.closeIconTopPosition;
|
|
139
|
-
}, function (props) {
|
|
140
|
-
return props.theme.closeIconRightPosition;
|
|
141
|
-
}, function (props) {
|
|
111
|
+
var CloseIconContainer = _styledComponents["default"].button(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n padding: 0;\n margin: 0;\n background: none;\n border: none;\n position: absolute;\n top: 20px;\n right: 20px;\n color: ", ";\n width: ", ";\n height: ", ";\n"])), function (props) {
|
|
142
112
|
return props.theme.closeIconColor;
|
|
143
113
|
}, function (props) {
|
|
144
114
|
return props.theme.closeIconWidth;
|
|
145
115
|
}, function (props) {
|
|
146
116
|
return props.theme.closeIconHeight;
|
|
147
117
|
});
|
|
148
|
-
|
|
149
|
-
var CloseIcon = _styledComponents["default"].svg(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n width: ", ";\n height: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n"])), function (props) {
|
|
118
|
+
var CloseIcon = _styledComponents["default"].svg(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n background-color: ", ";\n width: ", ";\n height: ", ";\n border-radius: ", ";\n border-width: ", ";\n border-style: ", ";\n border-color: ", ";\n"])), function (props) {
|
|
150
119
|
return props.theme.closeIconBackgroundColor;
|
|
151
120
|
}, function (props) {
|
|
152
121
|
return props.theme.closeIconWidth;
|
|
@@ -161,6 +130,5 @@ var CloseIcon = _styledComponents["default"].svg(_templateObject4 || (_templateO
|
|
|
161
130
|
}, function (props) {
|
|
162
131
|
return props.theme.closeIconBorderColor;
|
|
163
132
|
});
|
|
164
|
-
|
|
165
133
|
var _default = DxcDialog;
|
|
166
134
|
exports["default"] = _default;
|