@via-profit/ui-kit 0.2.1-alpha.1 → 0.2.2
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/Autocomplete/AutocompleteContainer.d.ts +33 -6
- package/Autocomplete/AutocompleteContainer.js +48 -36
- package/Autocomplete/AutocompleteItem.d.ts +1 -1
- package/Autocomplete/AutocompleteTextField.d.ts +3 -0
- package/Autocomplete/AutocompleteTextField.js +63 -1
- package/Autocomplete/OverrideMenuList.d.ts +4 -0
- package/Autocomplete/OverrideMenuList.js +39 -0
- package/Autocomplete/context.d.ts +9 -1
- package/Autocomplete/context.js +15 -1
- package/Autocomplete/index.js +9 -10
- package/Autocomplete2/Autocomplete2.d.ts +12 -0
- package/Autocomplete2/Autocomplete2.js +83 -0
- package/Autocomplete2/Autocomplete2TextField.d.ts +7 -0
- package/Autocomplete2/Autocomplete2TextField.js +39 -0
- package/Autocomplete2/index.d.ts +2 -0
- package/Autocomplete2/index.js +7 -0
- package/Avatar/index.js +1 -1
- package/Badge/BadgeDeleteButton.js +6 -6
- package/Badge/BadgeOutlined.js +2 -2
- package/Badge/BadgeStandard.js +1 -1
- package/Button/ButtonOutlined.js +1 -1
- package/Button/ButtonPlain.js +1 -1
- package/Button/ButtonStandard.js +4 -11
- package/Calendar/CalendarCell.js +6 -2
- package/Calendar/CalendarComponent.d.ts +226 -0
- package/Calendar/CalendarComponent.js +572 -0
- package/Calendar/CalendarControlButton.js +16 -9
- package/Calendar/CalendarDayBadge.js +1 -1
- package/Calendar/CalendarEmptyCell.d.ts +2 -2
- package/Calendar/CalendarEmptyCell.js +8 -3
- package/Calendar/CalendarHeading.js +2 -1
- package/Calendar/CalendarSubheading.js +3 -2
- package/Calendar/CalendarWeekDayCell.d.ts +10 -0
- package/Calendar/CalendarWeekDayCell.js +32 -0
- package/Calendar/CalendarWeekDayWeekNumber.d.ts +7 -0
- package/Calendar/CalendarWeekDayWeekNumber.js +38 -0
- package/Calendar/CalendarWeekRow.d.ts +2 -2
- package/Calendar/CalendarWeekRow.js +2 -1
- package/Calendar/CalendarWeekRowButton.d.ts +13 -0
- package/Calendar/CalendarWeekRowButton.js +31 -0
- package/Calendar/CalendarYearsSelector.d.ts +39 -1
- package/Calendar/CalendarYearsSelector.js +52 -16
- package/Calendar/IconChevronDown.d.ts +3 -0
- package/Calendar/IconChevronDown.js +31 -0
- package/Calendar/index.d.ts +7 -224
- package/Calendar/index.js +19 -281
- package/Calendar/use-calendar.d.ts +1 -1
- package/Color/Color.d.ts +138 -0
- package/Color/Color.js +324 -0
- package/Color/ColorGenerator.d.ts +29 -0
- package/Color/ColorGenerator.js +141 -0
- package/Color/ColorParser.d.ts +20 -0
- package/Color/ColorParser.js +284 -0
- package/Color/index.d.ts +4 -122
- package/Color/index.js +18 -473
- package/CountryFlags/SwiperOverview.d.ts +257 -0
- package/CountryFlags/SwiperOverview.js +524 -0
- package/DatePicker/index.d.ts +2 -17
- package/DatePicker/index.js +47 -61
- package/DatePicker/useDatePickerFormat.js +5 -5
- package/ErrorBoundary/Fallback.d.ts +3 -0
- package/ErrorBoundary/Fallback.js +51 -0
- package/ErrorBoundary/RenderError.d.ts +6 -0
- package/ErrorBoundary/RenderError.js +80 -0
- package/ErrorBoundary/index.d.ts +7 -11
- package/ErrorBoundary/index.js +4 -51
- package/LoadingIndicator/Spinner.d.ts +5 -3
- package/LoadingIndicator/Spinner.js +61 -32
- package/LoadingIndicator/index.d.ts +3 -3
- package/LoadingIndicator/index.js +15 -2
- package/MaskedField/index.d.ts +2 -1
- package/MaskedField/index.js +52 -43
- package/MaskedField/useMasked.js +7 -5
- package/Menu/AutoHeightWrapper.d.ts +6 -0
- package/Menu/AutoHeightWrapper.js +43 -0
- package/Menu/MeasuredItem.d.ts +10 -0
- package/Menu/MeasuredItem.js +51 -0
- package/Menu/MenuContainer.d.ts +51 -18
- package/Menu/MenuContainer.js +19 -12
- package/Menu/MenuItem.d.ts +24 -7
- package/Menu/MenuItem.js +13 -6
- package/Menu/MenuList.d.ts +4 -2
- package/Menu/MenuList.js +26 -6
- package/Menu/VirtualizedItem.d.ts +22 -0
- package/Menu/VirtualizedItem.js +69 -0
- package/Menu/VirtualizedList.d.ts +18 -0
- package/Menu/VirtualizedList.js +28 -0
- package/Menu/VirtualizedListComponent.d.ts +20 -0
- package/Menu/VirtualizedListComponent.js +305 -0
- package/Menu/index.d.ts +3 -1
- package/Menu/index.js +2 -0
- package/Popper/Popper.d.ts +7 -80
- package/Popper/Popper.js +26 -12
- package/Popper/PopperContainer.js +1 -1
- package/Popper/usePopprer.d.ts +88 -3
- package/Popper/usePopprer.js +240 -65
- package/Selectbox/SelectboxButton.d.ts +5 -0
- package/Selectbox/SelectboxButton.js +48 -8
- package/Selectbox/SelectboxButtonWrapper.d.ts +2 -0
- package/Selectbox/SelectboxButtonWrapper.js +1 -17
- package/Selectbox/SelectboxMenu.d.ts +12 -0
- package/Selectbox/SelectboxMenu.js +50 -0
- package/Selectbox/index.d.ts +5 -5
- package/Selectbox/index.js +115 -97
- package/Surface/index.js +1 -1
- package/Swiper/Swiper.d.ts +57 -0
- package/Swiper/Swiper.js +412 -0
- package/Swiper/SwiperContainer.d.ts +7 -0
- package/Swiper/SwiperContainer.js +15 -0
- package/Swiper/SwiperSlide.d.ts +12 -0
- package/Swiper/SwiperSlide.js +58 -0
- package/Swiper/SwiperSlidesRenderer.d.ts +11 -0
- package/Swiper/SwiperSlidesRenderer.js +74 -0
- package/Swiper/SwiperTrack.d.ts +18 -0
- package/Swiper/SwiperTrack.js +55 -0
- package/Swiper/SwiperWrapper.d.ts +16 -0
- package/Swiper/SwiperWrapper.js +60 -0
- package/Swiper/index.d.ts +7 -0
- package/Swiper/index.js +26 -0
- package/Switch/SwitchDot.js +1 -1
- package/Switch/SwitchTrack.js +1 -1
- package/TextField/TextFieldContainer.d.ts +2 -2
- package/TextField/TextFieldContainer.js +5 -3
- package/TextField/TextFieldErrorText.d.ts +2 -2
- package/TextField/TextFieldErrorText.js +5 -4
- package/TextField/TextFieldIconWrapper.d.ts +3 -3
- package/TextField/TextFieldIconWrapper.js +5 -3
- package/TextField/TextFieldInput.d.ts +2 -2
- package/TextField/TextFieldInput.js +6 -4
- package/TextField/TextFieldInputWrapper.d.ts +2 -2
- package/TextField/TextFieldInputWrapper.js +5 -3
- package/TextField/TextFieldLabel.d.ts +2 -2
- package/TextField/TextFieldLabel.js +5 -3
- package/TextField/TextFieldLabelAsterisk.d.ts +2 -2
- package/TextField/TextFieldLabelAsterisk.js +5 -3
- package/TextField/index.d.ts +8 -1
- package/TextField/index.js +49 -22
- package/ThemeProvider/createTheme.js +2 -2
- package/package.json +1 -1
- package/Calendar/reducer.d.ts +0 -17
- package/Calendar/reducer.js +0 -50
- /package/Calendar/{IconChevronRight.d.ts → CalendarIconNext.d.ts} +0 -0
- /package/Calendar/{IconChevronRight.js → CalendarIconNext.js} +0 -0
package/DatePicker/index.js
CHANGED
|
@@ -49,10 +49,10 @@ const StyledMaskedField = (0, styled_1.default)(MaskedField_1.default) `
|
|
|
49
49
|
`}
|
|
50
50
|
`;
|
|
51
51
|
const DatePicker = props => {
|
|
52
|
-
const { value, template, onChange, calendarButtonTooltip, readOnly, disabled, minDate = new Date(new Date().getFullYear() - 100, 0, 1, 0, 0, 0), maxDate = new Date(new Date().getFullYear() + 100, 0, 1, 0, 0, 0), weekStartDay = 'monday', locale = 'ru-RU', badges = [], displayLeadingZero = false,
|
|
52
|
+
const { value, template, onChange, calendarButtonTooltip, readOnly, disabled, minDate = new Date(new Date().getFullYear() - 100, 0, 1, 0, 0, 0), maxDate = new Date(new Date().getFullYear() + 100, 0, 1, 0, 0, 0), weekStartDay = 'monday', locale = 'ru-RU', badges = [], displayLeadingZero = false, resetButtonLabel, toodayButtonLabel, heading, subheading, view, views, footer, overrides } = props, restInputProps = __rest(props, ["value", "template", "onChange", "calendarButtonTooltip", "readOnly", "disabled", "minDate", "maxDate", "weekStartDay", "locale", "badges", "displayLeadingZero", "resetButtonLabel", "toodayButtonLabel", "heading", "subheading", "view", "views", "footer", "overrides"]);
|
|
53
53
|
const {
|
|
54
54
|
// Calendar overrides
|
|
55
|
-
Body, Cell, EmptyCell, Paper, Header, WeekRow, DateContainer, Toolbar, YearsSelector, MonthsSelector, MonthCell,
|
|
55
|
+
Body, Cell, EmptyCell, Paper, Header, WeekRow, DateContainer, Toolbar, YearsSelector, MonthsSelector, MonthCell, DayBadge, Footer, ControlButton, Heading, Subheading, IconPrev, IconNext, WeekDaysBar,
|
|
56
56
|
// Textfield overrides
|
|
57
57
|
Input, ErrorText, IconWrapper, InputWrapper, Label, Asterisk, Container, } = overrides || {};
|
|
58
58
|
const [currentValue, setCurrentValue] = react_1.default.useState(value);
|
|
@@ -80,69 +80,55 @@ const DatePicker = props => {
|
|
|
80
80
|
const b = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0, 0, 0);
|
|
81
81
|
return b.getTime() <= a.getTime();
|
|
82
82
|
}, [maxDate]);
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
83
|
+
const handleClick = react_1.default.useCallback(() => {
|
|
84
|
+
if (readOnly) {
|
|
85
|
+
setOpenSate(!isOpen);
|
|
86
|
+
}
|
|
87
|
+
}, [isOpen, readOnly]);
|
|
88
|
+
const endIcon = react_1.default.useMemo(() => (react_1.default.createElement(Button_1.default, { disabled: disabled, iconOnly: true, variant: "plain", type: "button", onClick: () => setOpenSate(true), title: calendarButtonTooltip },
|
|
89
|
+
react_1.default.createElement(DatePickerIcon_1.default, null))), [calendarButtonTooltip, disabled]);
|
|
90
|
+
const handleChange = react_1.default.useCallback(({ isValid, text }) => {
|
|
91
|
+
if (isValid) {
|
|
92
|
+
const parsedDate = parseInputByTemplate(text, template);
|
|
93
|
+
// Trying to parse the input date value
|
|
94
|
+
if (parsedDate instanceof Date && !isNaN(parsedDate.getTime())) {
|
|
95
|
+
// if the date satisfies the restrictions
|
|
96
|
+
if (isGreatherThenMinDate(parsedDate) && isLessThenMaxDate(parsedDate)) {
|
|
97
|
+
onChange(parsedDate);
|
|
98
|
+
// if the date violates the restrictions
|
|
87
99
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
if
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
onChange(parsedDate);
|
|
97
|
-
// if the date violates the restrictions
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
// set as minDate if parsed date less then minDate value constraint
|
|
101
|
-
if (!isGreatherThenMinDate(parsedDate)) {
|
|
102
|
-
onChange(minDate);
|
|
103
|
-
}
|
|
104
|
-
// set as maxDate if parsed date greather then maxDate value constraint
|
|
105
|
-
if (!isLessThenMaxDate(parsedDate)) {
|
|
106
|
-
onChange(maxDate);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
100
|
+
else {
|
|
101
|
+
// set as minDate if parsed date less then minDate value constraint
|
|
102
|
+
if (!isGreatherThenMinDate(parsedDate)) {
|
|
103
|
+
onChange(minDate);
|
|
104
|
+
}
|
|
105
|
+
// set as maxDate if parsed date greather then maxDate value constraint
|
|
106
|
+
if (!isLessThenMaxDate(parsedDate)) {
|
|
107
|
+
onChange(maxDate);
|
|
109
108
|
}
|
|
110
109
|
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}, [
|
|
113
|
+
isGreatherThenMinDate,
|
|
114
|
+
isLessThenMaxDate,
|
|
115
|
+
maxDate,
|
|
116
|
+
minDate,
|
|
117
|
+
onChange,
|
|
118
|
+
parseInputByTemplate,
|
|
119
|
+
template,
|
|
120
|
+
]);
|
|
121
|
+
const calendarValue = react_1.default.useMemo(() => currentValue || new Date(), [currentValue]);
|
|
122
|
+
const calendarChange = react_1.default.useCallback(date => {
|
|
123
|
+
if (date) {
|
|
124
|
+
onChange(date);
|
|
125
|
+
}
|
|
126
|
+
setOpenSate(false);
|
|
127
|
+
}, [onChange]);
|
|
128
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
129
|
+
react_1.default.createElement(StyledMaskedField, Object.assign({ onClick: handleClick, disabled: disabled, mask: getMaskByTemplate(template), ref: setTextFieldRef, readOnly: readOnly, endIcon: endIcon }, restInputProps, { value: currentValue ? formatInputByTemplate(currentValue, template) : '', onChange: handleChange })),
|
|
120
130
|
react_1.default.createElement(ClickOutside_1.default, { onOutsideClick: () => setOpenSate(false), mouseEvent: "onMouseDown" },
|
|
121
131
|
react_1.default.createElement(Popper_1.default, { isOpen: isOpen, anchorElement: textFieldRef },
|
|
122
|
-
react_1.default.createElement(Calendar_1.default, { minDate: minDate, maxDate: maxDate, weekStartDay: weekStartDay, locale: locale, badges: badges, displayLeadingZero: displayLeadingZero,
|
|
123
|
-
onChange(date);
|
|
124
|
-
setOpenSate(false);
|
|
125
|
-
}, overrides: {
|
|
126
|
-
Body,
|
|
127
|
-
Cell,
|
|
128
|
-
EmptyCell,
|
|
129
|
-
Paper,
|
|
130
|
-
Header,
|
|
131
|
-
WeekRow,
|
|
132
|
-
DateContainer,
|
|
133
|
-
Toolbar,
|
|
134
|
-
YearsSelector,
|
|
135
|
-
MonthsSelector,
|
|
136
|
-
MonthCell,
|
|
137
|
-
YearCell,
|
|
138
|
-
DayBadge,
|
|
139
|
-
Footer,
|
|
140
|
-
ControlButton,
|
|
141
|
-
Heading,
|
|
142
|
-
Subheading,
|
|
143
|
-
IconPrev,
|
|
144
|
-
IconNext,
|
|
145
|
-
WeekDaysBar,
|
|
146
|
-
} })))));
|
|
132
|
+
react_1.default.createElement(Calendar_1.default, { minDate: minDate, maxDate: maxDate, weekStartDay: weekStartDay, locale: locale, badges: badges, displayLeadingZero: displayLeadingZero, resetButtonLabel: resetButtonLabel, todayButtonLabel: toodayButtonLabel, heading: heading, subheading: subheading, view: view, views: views, footer: footer, value: calendarValue, onChange: calendarChange })))));
|
|
147
133
|
};
|
|
148
134
|
exports.default = DatePicker;
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.useDatePickerFormat = void 0;
|
|
7
7
|
const react_1 = __importDefault(require("react"));
|
|
8
8
|
const useDatePickerFormat = () => {
|
|
9
|
-
const templateValidChars = react_1.default.useMemo(() => ['y', 'Y', 'yy', 'yyyy', 'd', 'dd', 'D', 'm', 'mm'
|
|
9
|
+
const templateValidChars = react_1.default.useMemo(() => ['y', 'Y', 'yy', 'yyyy', 'd', 'dd', 'D', 'm', 'mm'], []);
|
|
10
10
|
const isValidTemplate = react_1.default.useCallback((template) => {
|
|
11
11
|
const matches = template.match(/[yYmMdD]+/g);
|
|
12
12
|
if (!matches) {
|
|
@@ -25,7 +25,7 @@ const useDatePickerFormat = () => {
|
|
|
25
25
|
const getMaskByTemplate = react_1.default.useCallback((template) => {
|
|
26
26
|
validateTemplate(template);
|
|
27
27
|
return template.split('').map(char => {
|
|
28
|
-
if (['m', '
|
|
28
|
+
if (['m', 'd', 'D', 'y', 'Y'].includes(char)) {
|
|
29
29
|
return /\d/;
|
|
30
30
|
}
|
|
31
31
|
return char;
|
|
@@ -78,11 +78,11 @@ const useDatePickerFormat = () => {
|
|
|
78
78
|
}
|
|
79
79
|
return day;
|
|
80
80
|
})
|
|
81
|
-
// mm
|
|
81
|
+
// mm - month with leading zero
|
|
82
82
|
// m - month without leading zero
|
|
83
|
-
.replace(/(m{1,2}
|
|
83
|
+
.replace(/(m{1,2})/, entries => {
|
|
84
84
|
const month = `${date.getMonth() + 1}`;
|
|
85
|
-
if (['
|
|
85
|
+
if (['mm'].includes(entries)) {
|
|
86
86
|
const str = `0${month}`;
|
|
87
87
|
return str.substring(str.length - entries.length);
|
|
88
88
|
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
const React = __importStar(require("react"));
|
|
30
|
+
const styled_1 = __importDefault(require("@emotion/styled"));
|
|
31
|
+
const react_1 = require("@emotion/react");
|
|
32
|
+
const Container = styled_1.default.div `
|
|
33
|
+
flex: 1;
|
|
34
|
+
width: 100%;
|
|
35
|
+
height: 100%;
|
|
36
|
+
box-sizing: border-box;
|
|
37
|
+
padding: 20px;
|
|
38
|
+
border-radius: inherit;
|
|
39
|
+
background-color: #8b0101;
|
|
40
|
+
color: #f5e7e7;
|
|
41
|
+
`;
|
|
42
|
+
const Fallback = () => (React.createElement(React.Fragment, null,
|
|
43
|
+
React.createElement(react_1.Global, { styles: (0, react_1.css) `
|
|
44
|
+
body {
|
|
45
|
+
margin: 0;
|
|
46
|
+
}
|
|
47
|
+
` }),
|
|
48
|
+
React.createElement(Container, null,
|
|
49
|
+
React.createElement("h1", null, "It looks like our server has broken down"),
|
|
50
|
+
React.createElement("p", null, "We're already fixing it. We are waiting for you later"))));
|
|
51
|
+
exports.default = Fallback;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
const React = __importStar(require("react"));
|
|
30
|
+
const react_intl_1 = require("react-intl");
|
|
31
|
+
const styled_1 = __importDefault(require("@emotion/styled"));
|
|
32
|
+
const createTheme_1 = __importDefault(require("../ThemeProvider/createTheme"));
|
|
33
|
+
const H1_1 = __importDefault(require("../Typography/H1"));
|
|
34
|
+
const ThemeProvider_1 = __importDefault(require("../ThemeProvider"));
|
|
35
|
+
const Paragraph_1 = __importDefault(require("../Typography/Paragraph"));
|
|
36
|
+
const Surface_1 = __importDefault(require("../Surface"));
|
|
37
|
+
const Strong_1 = __importDefault(require("../Typography/Strong"));
|
|
38
|
+
const Container = styled_1.default.div `
|
|
39
|
+
width: 100%;
|
|
40
|
+
height: 100%;
|
|
41
|
+
`;
|
|
42
|
+
const StyledSurface = (0, styled_1.default)(Surface_1.default) `
|
|
43
|
+
border-left: 2em solid ${({ theme }) => theme.color.error.toString()};
|
|
44
|
+
`;
|
|
45
|
+
const StyledHeading = (0, styled_1.default)(H1_1.default) `
|
|
46
|
+
margin-top: 0;
|
|
47
|
+
`;
|
|
48
|
+
const RenderError = props => {
|
|
49
|
+
const { error } = props;
|
|
50
|
+
const isDev = process.env.NODE_ENV === 'development';
|
|
51
|
+
const { name, message, stack } = React.useMemo(() => {
|
|
52
|
+
let name = '';
|
|
53
|
+
let message = '';
|
|
54
|
+
let stack = '';
|
|
55
|
+
if (error && typeof error === 'object') {
|
|
56
|
+
if ('name' in error) {
|
|
57
|
+
name = `${error.name}`;
|
|
58
|
+
}
|
|
59
|
+
if ('message' in error) {
|
|
60
|
+
message = `${error.message}`;
|
|
61
|
+
}
|
|
62
|
+
if ('stack' in error) {
|
|
63
|
+
stack = `${error.stack}`;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return { name, message, stack };
|
|
67
|
+
}, [error]);
|
|
68
|
+
const theme = (0, createTheme_1.default)();
|
|
69
|
+
return (React.createElement(ThemeProvider_1.default, { theme: theme },
|
|
70
|
+
React.createElement(Container, null,
|
|
71
|
+
React.createElement(StyledSurface, null, isDev ? (React.createElement(React.Fragment, null,
|
|
72
|
+
React.createElement(StyledHeading, null, name),
|
|
73
|
+
React.createElement(Strong_1.default, null, message),
|
|
74
|
+
stack !== '' && React.createElement(Paragraph_1.default, null, stack))) : (React.createElement(React.Fragment, null,
|
|
75
|
+
React.createElement(StyledHeading, null,
|
|
76
|
+
React.createElement(react_intl_1.FormattedMessage, { defaultMessage: "\u041F\u0440\u043E\u0438\u0437\u043E\u0448\u043B\u0430 \u043E\u0448\u0438\u0431\u043A\u0430" })),
|
|
77
|
+
React.createElement(Paragraph_1.default, null,
|
|
78
|
+
React.createElement(react_intl_1.FormattedMessage, { defaultMessage: "\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0441\u043E\u043E\u0431\u0449\u0438\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u0430\u043C" }))))))));
|
|
79
|
+
};
|
|
80
|
+
exports.default = RenderError;
|
package/ErrorBoundary/index.d.ts
CHANGED
|
@@ -1,19 +1,15 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
|
|
3
|
-
readonly children: React.ReactNode | readonly React.ReactNode[];
|
|
4
|
-
}
|
|
5
|
-
interface State {
|
|
2
|
+
type State = {
|
|
6
3
|
readonly error: Error | null;
|
|
7
4
|
readonly errorInfo: React.ErrorInfo | null;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
readonly children: React.ReactNode
|
|
11
|
-
readonly
|
|
12
|
-
}
|
|
5
|
+
};
|
|
6
|
+
type Props = {
|
|
7
|
+
readonly children: React.ReactNode;
|
|
8
|
+
readonly fallback?: React.ReactNode | undefined | null;
|
|
9
|
+
};
|
|
13
10
|
declare class ErrorBoundary extends React.Component<Props, State> {
|
|
14
11
|
constructor(props: Props);
|
|
15
|
-
static getDerivedStateFromError(error: Error): State;
|
|
16
12
|
componentDidCatch(error: Error, errorInfo: React.ErrorInfo): void;
|
|
17
|
-
render(): React.JSX.Element;
|
|
13
|
+
render(): string | number | boolean | React.JSX.Element | Iterable<React.ReactNode> | null | undefined;
|
|
18
14
|
}
|
|
19
15
|
export default ErrorBoundary;
|
package/ErrorBoundary/index.js
CHANGED
|
@@ -4,41 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const react_1 = __importDefault(require("react"));
|
|
7
|
-
const
|
|
8
|
-
const Container = styled_1.default.div `
|
|
9
|
-
flex: 1;
|
|
10
|
-
width: 100%;
|
|
11
|
-
height: 100%;
|
|
12
|
-
display: flex;
|
|
13
|
-
box-sizing: border-box;
|
|
14
|
-
padding: theme.spacing(1);
|
|
15
|
-
border-radius: inherit;
|
|
16
|
-
border: 1px solid rgb(92, 0, 0);
|
|
17
|
-
background-color: rgb(41, 0, 0);
|
|
18
|
-
`;
|
|
19
|
-
const Inner = styled_1.default.div `
|
|
20
|
-
flex: 1;
|
|
21
|
-
width: 100%;
|
|
22
|
-
height: 100%;
|
|
23
|
-
overflow-y: auto;
|
|
24
|
-
`;
|
|
25
|
-
const Title = styled_1.default.h1 `
|
|
26
|
-
margin-top: 0;
|
|
27
|
-
`;
|
|
28
|
-
const ErrorBox = styled_1.default.div `
|
|
29
|
-
color: rgb(255, 128, 128);
|
|
30
|
-
padding: 1rem;
|
|
31
|
-
`;
|
|
32
|
-
const ErrorMessage = styled_1.default.pre `
|
|
33
|
-
max-height: 300;
|
|
34
|
-
overflow: auto;
|
|
35
|
-
`;
|
|
36
|
-
const CallStack = styled_1.default.pre `
|
|
37
|
-
opacity: 0.8;
|
|
38
|
-
max-height: 300;
|
|
39
|
-
overflow: auto;
|
|
40
|
-
white-space: break-spaces;
|
|
41
|
-
`;
|
|
7
|
+
const RenderError_1 = __importDefault(require("./RenderError"));
|
|
42
8
|
class ErrorBoundary extends react_1.default.Component {
|
|
43
9
|
constructor(props) {
|
|
44
10
|
super(props);
|
|
@@ -47,12 +13,6 @@ class ErrorBoundary extends react_1.default.Component {
|
|
|
47
13
|
errorInfo: null,
|
|
48
14
|
};
|
|
49
15
|
}
|
|
50
|
-
static getDerivedStateFromError(error) {
|
|
51
|
-
return {
|
|
52
|
-
error,
|
|
53
|
-
errorInfo: null,
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
16
|
componentDidCatch(error, errorInfo) {
|
|
57
17
|
this.setState({
|
|
58
18
|
error,
|
|
@@ -61,18 +21,11 @@ class ErrorBoundary extends react_1.default.Component {
|
|
|
61
21
|
}
|
|
62
22
|
render() {
|
|
63
23
|
const { error } = this.state;
|
|
64
|
-
const { children
|
|
24
|
+
const { children } = this.props;
|
|
65
25
|
if (error) {
|
|
66
|
-
return
|
|
67
|
-
react_1.default.createElement(Inner, null, process.env.NODE_ENV === 'development' ? (react_1.default.createElement(ErrorBox, null,
|
|
68
|
-
react_1.default.createElement(Title, null, "Something went wrong"),
|
|
69
|
-
react_1.default.createElement(ErrorMessage, null, error.message),
|
|
70
|
-
react_1.default.createElement("h2", null, "Callstack:"),
|
|
71
|
-
react_1.default.createElement(CallStack, null, error.stack))) : (react_1.default.createElement(ErrorBox, null,
|
|
72
|
-
react_1.default.createElement(Title, null, "It looks like our server has broken down"),
|
|
73
|
-
react_1.default.createElement("p", null, "We're already fixing it. We are waiting for you later"))))));
|
|
26
|
+
return react_1.default.createElement(RenderError_1.default, { error: error });
|
|
74
27
|
}
|
|
75
|
-
return
|
|
28
|
+
return children;
|
|
76
29
|
}
|
|
77
30
|
}
|
|
78
31
|
exports.default = ErrorBoundary;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
|
|
3
|
-
declare const
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
type Props = React.HTMLAttributes<HTMLDivElement>;
|
|
3
|
+
export declare const LoadingIndicator: React.ForwardRefRenderFunction<HTMLDivElement, Props>;
|
|
4
|
+
export declare const StaticLoadingIndicator: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
|
|
5
|
+
declare const _default: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
|
|
4
6
|
export default _default;
|
|
@@ -1,42 +1,71 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
27
|
};
|
|
5
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
29
|
+
exports.StaticLoadingIndicator = exports.LoadingIndicator = void 0;
|
|
30
|
+
const React = __importStar(require("react"));
|
|
7
31
|
const styled_1 = __importDefault(require("@emotion/styled"));
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
32
|
+
const react_1 = require("@emotion/react");
|
|
33
|
+
const Container = styled_1.default.div `
|
|
34
|
+
position: absolute;
|
|
35
|
+
left: 0;
|
|
36
|
+
right: 0;
|
|
37
|
+
top: 0;
|
|
38
|
+
bottom: 0;
|
|
39
|
+
display: flex;
|
|
40
|
+
justify-content: center;
|
|
41
|
+
align-items: center;
|
|
16
42
|
`;
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
50% {
|
|
22
|
-
stroke-dashoffset: 46.75;
|
|
23
|
-
transform: rotate(135deg);
|
|
24
|
-
}
|
|
25
|
-
100% {
|
|
26
|
-
stroke-dashoffset: 187;
|
|
27
|
-
transform: rotate(450deg);
|
|
28
|
-
}
|
|
43
|
+
const spin = (0, react_1.keyframes) `
|
|
44
|
+
to {
|
|
45
|
+
transform: rotate(360deg);
|
|
46
|
+
}
|
|
29
47
|
`;
|
|
30
|
-
const
|
|
31
|
-
|
|
48
|
+
const SpinLoader = styled_1.default.div `
|
|
49
|
+
width: 2em;
|
|
50
|
+
height: 2em;
|
|
51
|
+
border: 0.187em solid ${({ theme }) => theme.color.surface.darken(30).toString()};
|
|
52
|
+
border-top-color: ${({ theme }) => theme.color.accentPrimary.toString()};
|
|
53
|
+
border-radius: 50%;
|
|
54
|
+
animation: ${spin} 0.8s linear infinite;
|
|
32
55
|
`;
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
56
|
+
const LoadingIndicator = (props, ref) => (React.createElement(Container, Object.assign({}, props, { ref: ref }),
|
|
57
|
+
React.createElement(SpinLoader, null)));
|
|
58
|
+
exports.LoadingIndicator = LoadingIndicator;
|
|
59
|
+
const StaticLoadingIndicatorContainer = styled_1.default.span `
|
|
60
|
+
height: 100%;
|
|
61
|
+
flex: 1;
|
|
62
|
+
display: flex;
|
|
63
|
+
flex-direction: column;
|
|
64
|
+
text-align: center;
|
|
65
|
+
justify-content: center;
|
|
66
|
+
align-items: center;
|
|
39
67
|
`;
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
exports.
|
|
68
|
+
exports.StaticLoadingIndicator = React.forwardRef((props, ref) => (React.createElement(StaticLoadingIndicatorContainer, Object.assign({}, props, { ref: ref }),
|
|
69
|
+
React.createElement(SpinLoader, null))));
|
|
70
|
+
exports.StaticLoadingIndicator.displayName = 'StaticLoadingIndicator';
|
|
71
|
+
exports.default = React.forwardRef(exports.LoadingIndicator);
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
export
|
|
3
|
-
export default
|
|
1
|
+
import LoadingIndicator from './Spinner';
|
|
2
|
+
export * from './Spinner';
|
|
3
|
+
export default LoadingIndicator;
|
|
@@ -1,9 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
18
|
};
|
|
5
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.Spinner = void 0;
|
|
7
20
|
const Spinner_1 = __importDefault(require("./Spinner"));
|
|
8
|
-
|
|
21
|
+
__exportStar(require("./Spinner"), exports);
|
|
9
22
|
exports.default = Spinner_1.default;
|
package/MaskedField/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { FormatParsedPayload, Mask, ParseInput } from './useMasked';
|
|
3
3
|
import { TextFieldProps } from '../TextField';
|
|
4
|
+
export * from './useMasked';
|
|
4
5
|
export type GetMask = (input: string) => Mask;
|
|
5
6
|
export interface MaskedFieldProps extends Omit<TextFieldProps, 'value' | 'onChange'> {
|
|
6
7
|
/**
|