@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.
Files changed (143) hide show
  1. package/Autocomplete/AutocompleteContainer.d.ts +33 -6
  2. package/Autocomplete/AutocompleteContainer.js +48 -36
  3. package/Autocomplete/AutocompleteItem.d.ts +1 -1
  4. package/Autocomplete/AutocompleteTextField.d.ts +3 -0
  5. package/Autocomplete/AutocompleteTextField.js +63 -1
  6. package/Autocomplete/OverrideMenuList.d.ts +4 -0
  7. package/Autocomplete/OverrideMenuList.js +39 -0
  8. package/Autocomplete/context.d.ts +9 -1
  9. package/Autocomplete/context.js +15 -1
  10. package/Autocomplete/index.js +9 -10
  11. package/Autocomplete2/Autocomplete2.d.ts +12 -0
  12. package/Autocomplete2/Autocomplete2.js +83 -0
  13. package/Autocomplete2/Autocomplete2TextField.d.ts +7 -0
  14. package/Autocomplete2/Autocomplete2TextField.js +39 -0
  15. package/Autocomplete2/index.d.ts +2 -0
  16. package/Autocomplete2/index.js +7 -0
  17. package/Avatar/index.js +1 -1
  18. package/Badge/BadgeDeleteButton.js +6 -6
  19. package/Badge/BadgeOutlined.js +2 -2
  20. package/Badge/BadgeStandard.js +1 -1
  21. package/Button/ButtonOutlined.js +1 -1
  22. package/Button/ButtonPlain.js +1 -1
  23. package/Button/ButtonStandard.js +4 -11
  24. package/Calendar/CalendarCell.js +6 -2
  25. package/Calendar/CalendarComponent.d.ts +226 -0
  26. package/Calendar/CalendarComponent.js +572 -0
  27. package/Calendar/CalendarControlButton.js +16 -9
  28. package/Calendar/CalendarDayBadge.js +1 -1
  29. package/Calendar/CalendarEmptyCell.d.ts +2 -2
  30. package/Calendar/CalendarEmptyCell.js +8 -3
  31. package/Calendar/CalendarHeading.js +2 -1
  32. package/Calendar/CalendarSubheading.js +3 -2
  33. package/Calendar/CalendarWeekDayCell.d.ts +10 -0
  34. package/Calendar/CalendarWeekDayCell.js +32 -0
  35. package/Calendar/CalendarWeekDayWeekNumber.d.ts +7 -0
  36. package/Calendar/CalendarWeekDayWeekNumber.js +38 -0
  37. package/Calendar/CalendarWeekRow.d.ts +2 -2
  38. package/Calendar/CalendarWeekRow.js +2 -1
  39. package/Calendar/CalendarWeekRowButton.d.ts +13 -0
  40. package/Calendar/CalendarWeekRowButton.js +31 -0
  41. package/Calendar/CalendarYearsSelector.d.ts +39 -1
  42. package/Calendar/CalendarYearsSelector.js +52 -16
  43. package/Calendar/IconChevronDown.d.ts +3 -0
  44. package/Calendar/IconChevronDown.js +31 -0
  45. package/Calendar/index.d.ts +7 -224
  46. package/Calendar/index.js +19 -281
  47. package/Calendar/use-calendar.d.ts +1 -1
  48. package/Color/Color.d.ts +138 -0
  49. package/Color/Color.js +324 -0
  50. package/Color/ColorGenerator.d.ts +29 -0
  51. package/Color/ColorGenerator.js +141 -0
  52. package/Color/ColorParser.d.ts +20 -0
  53. package/Color/ColorParser.js +284 -0
  54. package/Color/index.d.ts +4 -122
  55. package/Color/index.js +18 -473
  56. package/CountryFlags/SwiperOverview.d.ts +257 -0
  57. package/CountryFlags/SwiperOverview.js +524 -0
  58. package/DatePicker/index.d.ts +2 -17
  59. package/DatePicker/index.js +47 -61
  60. package/DatePicker/useDatePickerFormat.js +5 -5
  61. package/ErrorBoundary/Fallback.d.ts +3 -0
  62. package/ErrorBoundary/Fallback.js +51 -0
  63. package/ErrorBoundary/RenderError.d.ts +6 -0
  64. package/ErrorBoundary/RenderError.js +80 -0
  65. package/ErrorBoundary/index.d.ts +7 -11
  66. package/ErrorBoundary/index.js +4 -51
  67. package/LoadingIndicator/Spinner.d.ts +5 -3
  68. package/LoadingIndicator/Spinner.js +61 -32
  69. package/LoadingIndicator/index.d.ts +3 -3
  70. package/LoadingIndicator/index.js +15 -2
  71. package/MaskedField/index.d.ts +2 -1
  72. package/MaskedField/index.js +52 -43
  73. package/MaskedField/useMasked.js +7 -5
  74. package/Menu/AutoHeightWrapper.d.ts +6 -0
  75. package/Menu/AutoHeightWrapper.js +43 -0
  76. package/Menu/MeasuredItem.d.ts +10 -0
  77. package/Menu/MeasuredItem.js +51 -0
  78. package/Menu/MenuContainer.d.ts +51 -18
  79. package/Menu/MenuContainer.js +19 -12
  80. package/Menu/MenuItem.d.ts +24 -7
  81. package/Menu/MenuItem.js +13 -6
  82. package/Menu/MenuList.d.ts +4 -2
  83. package/Menu/MenuList.js +26 -6
  84. package/Menu/VirtualizedItem.d.ts +22 -0
  85. package/Menu/VirtualizedItem.js +69 -0
  86. package/Menu/VirtualizedList.d.ts +18 -0
  87. package/Menu/VirtualizedList.js +28 -0
  88. package/Menu/VirtualizedListComponent.d.ts +20 -0
  89. package/Menu/VirtualizedListComponent.js +305 -0
  90. package/Menu/index.d.ts +3 -1
  91. package/Menu/index.js +2 -0
  92. package/Popper/Popper.d.ts +7 -80
  93. package/Popper/Popper.js +26 -12
  94. package/Popper/PopperContainer.js +1 -1
  95. package/Popper/usePopprer.d.ts +88 -3
  96. package/Popper/usePopprer.js +240 -65
  97. package/Selectbox/SelectboxButton.d.ts +5 -0
  98. package/Selectbox/SelectboxButton.js +48 -8
  99. package/Selectbox/SelectboxButtonWrapper.d.ts +2 -0
  100. package/Selectbox/SelectboxButtonWrapper.js +1 -17
  101. package/Selectbox/SelectboxMenu.d.ts +12 -0
  102. package/Selectbox/SelectboxMenu.js +50 -0
  103. package/Selectbox/index.d.ts +5 -5
  104. package/Selectbox/index.js +115 -97
  105. package/Surface/index.js +1 -1
  106. package/Swiper/Swiper.d.ts +57 -0
  107. package/Swiper/Swiper.js +412 -0
  108. package/Swiper/SwiperContainer.d.ts +7 -0
  109. package/Swiper/SwiperContainer.js +15 -0
  110. package/Swiper/SwiperSlide.d.ts +12 -0
  111. package/Swiper/SwiperSlide.js +58 -0
  112. package/Swiper/SwiperSlidesRenderer.d.ts +11 -0
  113. package/Swiper/SwiperSlidesRenderer.js +74 -0
  114. package/Swiper/SwiperTrack.d.ts +18 -0
  115. package/Swiper/SwiperTrack.js +55 -0
  116. package/Swiper/SwiperWrapper.d.ts +16 -0
  117. package/Swiper/SwiperWrapper.js +60 -0
  118. package/Swiper/index.d.ts +7 -0
  119. package/Swiper/index.js +26 -0
  120. package/Switch/SwitchDot.js +1 -1
  121. package/Switch/SwitchTrack.js +1 -1
  122. package/TextField/TextFieldContainer.d.ts +2 -2
  123. package/TextField/TextFieldContainer.js +5 -3
  124. package/TextField/TextFieldErrorText.d.ts +2 -2
  125. package/TextField/TextFieldErrorText.js +5 -4
  126. package/TextField/TextFieldIconWrapper.d.ts +3 -3
  127. package/TextField/TextFieldIconWrapper.js +5 -3
  128. package/TextField/TextFieldInput.d.ts +2 -2
  129. package/TextField/TextFieldInput.js +6 -4
  130. package/TextField/TextFieldInputWrapper.d.ts +2 -2
  131. package/TextField/TextFieldInputWrapper.js +5 -3
  132. package/TextField/TextFieldLabel.d.ts +2 -2
  133. package/TextField/TextFieldLabel.js +5 -3
  134. package/TextField/TextFieldLabelAsterisk.d.ts +2 -2
  135. package/TextField/TextFieldLabelAsterisk.js +5 -3
  136. package/TextField/index.d.ts +8 -1
  137. package/TextField/index.js +49 -22
  138. package/ThemeProvider/createTheme.js +2 -2
  139. package/package.json +1 -1
  140. package/Calendar/reducer.d.ts +0 -17
  141. package/Calendar/reducer.js +0 -50
  142. /package/Calendar/{IconChevronRight.d.ts → CalendarIconNext.d.ts} +0 -0
  143. /package/Calendar/{IconChevronRight.js → CalendarIconNext.js} +0 -0
@@ -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, prevMonthButtonTooltip, nextMonthButtonTooltip, changeMonthButtonTooltip, changeYearButtonTooltip, resetButtonLabel, toodayButtonLabel, heading, subheading, initialView, footer, overrides } = props, restInputProps = __rest(props, ["value", "template", "onChange", "calendarButtonTooltip", "readOnly", "disabled", "minDate", "maxDate", "weekStartDay", "locale", "badges", "displayLeadingZero", "prevMonthButtonTooltip", "nextMonthButtonTooltip", "changeMonthButtonTooltip", "changeYearButtonTooltip", "resetButtonLabel", "toodayButtonLabel", "heading", "subheading", "initialView", "footer", "overrides"]);
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, YearCell, DayBadge, Footer, ControlButton, Heading, Subheading, IconPrev, IconNext, WeekDaysBar,
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
- return (react_1.default.createElement(react_1.default.Fragment, null,
84
- react_1.default.createElement(StyledMaskedField, Object.assign({ onClick: () => {
85
- if (readOnly) {
86
- setOpenSate(!isOpen);
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
- }, disabled: disabled, mask: getMaskByTemplate(template), ref: setTextFieldRef, readOnly: readOnly, endIcon: react_1.default.createElement(Button_1.default, { disabled: disabled, iconOnly: true, type: "button", onClick: () => setOpenSate(true), title: calendarButtonTooltip },
89
- react_1.default.createElement(DatePickerIcon_1.default, null)) }, restInputProps, { value: currentValue ? formatInputByTemplate(currentValue, template) : '', onChange: ({ isValid, text }) => {
90
- if (isValid) {
91
- const parsedDate = parseInputByTemplate(text, template);
92
- // Trying to parse the input date value
93
- if (parsedDate instanceof Date && !isNaN(parsedDate.getTime())) {
94
- // if the date satisfies the restrictions
95
- if (isGreatherThenMinDate(parsedDate) && isLessThenMaxDate(parsedDate)) {
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
- }, overrides: {
112
- Input,
113
- ErrorText,
114
- IconWrapper,
115
- InputWrapper,
116
- Label,
117
- Asterisk,
118
- Container,
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, prevMonthButtonTooltip: prevMonthButtonTooltip, nextMonthButtonTooltip: nextMonthButtonTooltip, changeMonthButtonTooltip: changeMonthButtonTooltip, changeYearButtonTooltip: changeYearButtonTooltip, resetButtonLabel: resetButtonLabel, todayButtonLabel: toodayButtonLabel, heading: heading, subheading: subheading, initialView: initialView, footer: footer, value: currentValue || new Date(), onChange: date => {
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', 'M'], []);
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', 'M', 'd', 'D', 'y', 'Y'].includes(char)) {
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 or M - month with leading zero
81
+ // mm - month with leading zero
82
82
  // m - month without leading zero
83
- .replace(/(m{1,2}|M{1,2})/, entries => {
83
+ .replace(/(m{1,2})/, entries => {
84
84
  const month = `${date.getMonth() + 1}`;
85
- if (['MM', 'M', 'mm'].includes(entries)) {
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,3 @@
1
+ import * as React from 'react';
2
+ declare const Fallback: React.FC;
3
+ export default Fallback;
@@ -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,6 @@
1
+ import * as React from 'react';
2
+ type RenderErrorProps = {
3
+ readonly error?: Error | unknown;
4
+ };
5
+ declare const RenderError: React.FC<RenderErrorProps>;
6
+ export default RenderError;
@@ -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;
@@ -1,19 +1,15 @@
1
1
  import React from 'react';
2
- export interface ErrorBoundaryComponentProps {
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
- interface Props {
10
- readonly children: React.ReactNode | React.ReactNode[];
11
- readonly styles?: React.CSSProperties;
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;
@@ -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 styled_1 = __importDefault(require("@emotion/styled"));
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, styles } = this.props;
24
+ const { children } = this.props;
65
25
  if (error) {
66
- return (react_1.default.createElement(Container, { style: styles },
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 react_1.default.createElement(react_1.default.Fragment, null, children);
28
+ return children;
76
29
  }
77
30
  }
78
31
  exports.default = ErrorBoundary;
@@ -1,4 +1,6 @@
1
- import React from 'react';
2
- export type SpinnerProps = React.SVGAttributes<SVGSVGElement>;
3
- declare const _default: React.ForwardRefExoticComponent<SpinnerProps & React.RefAttributes<SVGSVGElement>>;
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
- const react_1 = __importDefault(require("react"));
29
+ exports.StaticLoadingIndicator = exports.LoadingIndicator = void 0;
30
+ const React = __importStar(require("react"));
7
31
  const styled_1 = __importDefault(require("@emotion/styled"));
8
- const react_2 = require("@emotion/react");
9
- const animationRotate = (0, react_2.keyframes) `
10
- 0% {
11
- transform: rotate(0deg);
12
- }
13
- 100% {
14
- transform: rotate(270deg);
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 animationDash = (0, react_2.keyframes) `
18
- 0% {
19
- stroke-dashoffset: 187;
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 Svg = styled_1.default.svg `
31
- animation: ${animationRotate} 1.4s linear infinite;
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 Circle = styled_1.default.circle `
34
- stroke-dasharray: 187;
35
- stroke-dashoffset: 0;
36
- transform-origin: center;
37
- animation: ${animationDash} 1.4s ease-in-out infinite;
38
- stroke: ${({ theme }) => theme.color.accentSecondary.toString()};
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
- const Spinner = (props, ref) => (react_1.default.createElement(Svg, Object.assign({ width: "1em", height: "1em", viewBox: "0 0 66 66", xmlns: "http://www.w3.org/2000/svg" }, props, { ref: ref }),
41
- react_1.default.createElement(Circle, { fill: "none", strokeWidth: "6", strokeLinecap: "round", cx: "33", cy: "33", r: "30" })));
42
- exports.default = react_1.default.forwardRef(Spinner);
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 Spinner from './Spinner';
2
- export { Spinner };
3
- export default Spinner;
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
- exports.Spinner = Spinner_1.default;
21
+ __exportStar(require("./Spinner"), exports);
9
22
  exports.default = Spinner_1.default;
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
- import { Mask, FormatParsedPayload, ParseInput } from './useMasked';
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
  /**