@via-profit/ui-kit 0.1.8 → 0.2.1-alpha.3

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 (157) hide show
  1. package/Accordion/index.d.ts +4 -4
  2. package/Autocomplete/AutocompleteContainer.d.ts +34 -7
  3. package/Autocomplete/AutocompleteContainer.js +28 -24
  4. package/Autocomplete/AutocompleteItem.d.ts +1 -1
  5. package/Autocomplete/AutocompleteTextField.d.ts +3 -0
  6. package/Autocomplete/AutocompleteTextField.js +63 -1
  7. package/Autocomplete/OverrideMenuList.d.ts +4 -0
  8. package/Autocomplete/OverrideMenuList.js +39 -0
  9. package/Autocomplete/context.d.ts +9 -1
  10. package/Autocomplete/context.js +15 -1
  11. package/Autocomplete/index.js +9 -10
  12. package/Autocomplete2/Autocomplete2.d.ts +12 -0
  13. package/Autocomplete2/Autocomplete2.js +83 -0
  14. package/Autocomplete2/Autocomplete2TextField.d.ts +7 -0
  15. package/Autocomplete2/Autocomplete2TextField.js +39 -0
  16. package/Autocomplete2/index.d.ts +2 -0
  17. package/Autocomplete2/index.js +7 -0
  18. package/Avatar/AvatarBase.d.ts +4 -4
  19. package/Avatar/index.js +1 -1
  20. package/Badge/BadgeBase.d.ts +4 -4
  21. package/Badge/BadgeDeleteButton.js +6 -6
  22. package/Badge/BadgeOutlined.js +2 -2
  23. package/Badge/BadgeStandard.js +1 -1
  24. package/Button/ButtonBase.d.ts +3 -3
  25. package/Button/ButtonOutlined.js +1 -1
  26. package/Button/ButtonPlain.js +1 -1
  27. package/Button/ButtonStandard.js +4 -11
  28. package/Calendar/CalendarCell.js +22 -4
  29. package/Calendar/CalendarComponent.d.ts +226 -0
  30. package/Calendar/CalendarComponent.js +572 -0
  31. package/Calendar/CalendarControlButton.js +16 -9
  32. package/Calendar/CalendarDayBadge.js +1 -1
  33. package/Calendar/CalendarEmptyCell.d.ts +2 -2
  34. package/Calendar/CalendarEmptyCell.js +8 -3
  35. package/Calendar/CalendarHeading.js +2 -1
  36. package/Calendar/CalendarMonthCell.js +0 -5
  37. package/Calendar/CalendarSubheading.js +3 -2
  38. package/Calendar/CalendarWeekDayCell.d.ts +10 -0
  39. package/Calendar/CalendarWeekDayCell.js +32 -0
  40. package/Calendar/CalendarWeekDayWeekNumber.d.ts +7 -0
  41. package/Calendar/CalendarWeekDayWeekNumber.js +38 -0
  42. package/Calendar/CalendarWeekRow.d.ts +2 -2
  43. package/Calendar/CalendarWeekRow.js +2 -1
  44. package/Calendar/CalendarWeekRowButton.d.ts +13 -0
  45. package/Calendar/CalendarWeekRowButton.js +31 -0
  46. package/Calendar/CalendarYearCell.js +5 -5
  47. package/Calendar/CalendarYearsSelector.d.ts +39 -1
  48. package/Calendar/CalendarYearsSelector.js +52 -16
  49. package/Calendar/IconChevronDown.d.ts +3 -0
  50. package/Calendar/IconChevronDown.js +31 -0
  51. package/Calendar/index.d.ts +7 -220
  52. package/Calendar/index.js +19 -274
  53. package/Calendar/use-calendar.d.ts +1 -1
  54. package/Calendar/use-calendar.js +102 -155
  55. package/Color/Color.d.ts +138 -0
  56. package/Color/Color.js +324 -0
  57. package/Color/ColorGenerator.d.ts +29 -0
  58. package/Color/ColorGenerator.js +141 -0
  59. package/Color/ColorParser.d.ts +20 -0
  60. package/Color/ColorParser.js +284 -0
  61. package/Color/index.d.ts +4 -122
  62. package/Color/index.js +18 -473
  63. package/DatePicker/index.d.ts +2 -17
  64. package/DatePicker/index.js +47 -61
  65. package/DatePicker/useDatePickerFormat.js +5 -5
  66. package/ErrorBoundary/Fallback.d.ts +3 -0
  67. package/ErrorBoundary/Fallback.js +51 -0
  68. package/ErrorBoundary/RenderError.d.ts +6 -0
  69. package/ErrorBoundary/RenderError.js +80 -0
  70. package/ErrorBoundary/index.d.ts +7 -11
  71. package/ErrorBoundary/index.js +4 -51
  72. package/Highlighted/index.d.ts +3 -3
  73. package/LoadingIndicator/Spinner.d.ts +5 -3
  74. package/LoadingIndicator/Spinner.js +61 -32
  75. package/LoadingIndicator/index.d.ts +3 -3
  76. package/LoadingIndicator/index.js +15 -2
  77. package/MaskedField/index.d.ts +1 -1
  78. package/MaskedField/index.js +11 -10
  79. package/Menu/AutoHeightWrapper.d.ts +6 -0
  80. package/Menu/AutoHeightWrapper.js +43 -0
  81. package/Menu/MeasuredItem.d.ts +10 -0
  82. package/Menu/MeasuredItem.js +51 -0
  83. package/Menu/MenuContainer.d.ts +53 -20
  84. package/Menu/MenuContainer.js +18 -11
  85. package/Menu/MenuItem.d.ts +24 -7
  86. package/Menu/MenuItem.js +13 -6
  87. package/Menu/MenuList.d.ts +4 -2
  88. package/Menu/MenuList.js +26 -6
  89. package/Menu/VirtualizedItem.d.ts +22 -0
  90. package/Menu/VirtualizedItem.js +69 -0
  91. package/Menu/VirtualizedList.d.ts +18 -0
  92. package/Menu/VirtualizedList.js +28 -0
  93. package/Menu/VirtualizedListComponent.d.ts +20 -0
  94. package/Menu/VirtualizedListComponent.js +305 -0
  95. package/Menu/index.d.ts +3 -1
  96. package/Menu/index.js +4 -7
  97. package/Modal/BaseModal/RenderModal.d.ts +3 -3
  98. package/Modal/BaseModal/index.d.ts +3 -3
  99. package/Modal/ConfirmBox/index.d.ts +5 -5
  100. package/Modal/Drawer/index.d.ts +5 -5
  101. package/Modal/MessageBox/index.d.ts +5 -5
  102. package/Popper/Popper.d.ts +148 -0
  103. package/Popper/Popper.js +113 -0
  104. package/Popper/PopperContainer.d.ts +2 -0
  105. package/Popper/PopperContainer.js +3 -6
  106. package/Popper/index.d.ts +5 -22
  107. package/Popper/index.js +18 -264
  108. package/Popper/usePopprer.d.ts +110 -0
  109. package/Popper/usePopprer.js +505 -0
  110. package/Selectbox/SelectboxButton.d.ts +5 -0
  111. package/Selectbox/SelectboxButton.js +48 -8
  112. package/Selectbox/SelectboxButtonWrapper.d.ts +2 -0
  113. package/Selectbox/SelectboxButtonWrapper.js +1 -17
  114. package/Selectbox/SelectboxMenu.d.ts +12 -0
  115. package/Selectbox/SelectboxMenu.js +50 -0
  116. package/Selectbox/index.d.ts +13 -13
  117. package/Selectbox/index.js +115 -97
  118. package/Surface/index.d.ts +5 -5
  119. package/Surface/index.js +1 -1
  120. package/Swiper/Swiper.d.ts +44 -0
  121. package/Swiper/Swiper.js +139 -0
  122. package/Swiper/SwiperContainer.d.ts +7 -0
  123. package/Swiper/SwiperContainer.js +14 -0
  124. package/Swiper/SwiperSlide.d.ts +7 -0
  125. package/Swiper/SwiperSlide.js +55 -0
  126. package/Swiper/SwiperTrack.d.ts +14 -0
  127. package/Swiper/SwiperTrack.js +58 -0
  128. package/Swiper/SwiperWrapper.d.ts +14 -0
  129. package/Swiper/SwiperWrapper.js +60 -0
  130. package/Swiper/index.d.ts +7 -0
  131. package/Swiper/index.js +26 -0
  132. package/Switch/SwitchDot.js +1 -1
  133. package/Switch/SwitchTrack.js +1 -1
  134. package/Switch/index.d.ts +8 -8
  135. package/TextArea/index.d.ts +7 -7
  136. package/TextField/TextFieldContainer.d.ts +2 -2
  137. package/TextField/TextFieldContainer.js +5 -3
  138. package/TextField/TextFieldErrorText.d.ts +2 -2
  139. package/TextField/TextFieldErrorText.js +5 -4
  140. package/TextField/TextFieldIconWrapper.d.ts +3 -3
  141. package/TextField/TextFieldIconWrapper.js +5 -3
  142. package/TextField/TextFieldInput.d.ts +2 -2
  143. package/TextField/TextFieldInput.js +6 -4
  144. package/TextField/TextFieldInputWrapper.d.ts +2 -2
  145. package/TextField/TextFieldInputWrapper.js +5 -3
  146. package/TextField/TextFieldLabel.d.ts +2 -2
  147. package/TextField/TextFieldLabel.js +5 -3
  148. package/TextField/TextFieldLabelAsterisk.d.ts +2 -2
  149. package/TextField/TextFieldLabelAsterisk.js +5 -3
  150. package/TextField/index.d.ts +15 -8
  151. package/TextField/index.js +49 -22
  152. package/ThemeProvider/createTheme.js +2 -2
  153. package/package.json +1 -1
  154. package/Calendar/reducer.d.ts +0 -14
  155. package/Calendar/reducer.js +0 -26
  156. /package/Calendar/{IconChevronRight.d.ts → CalendarIconNext.d.ts} +0 -0
  157. /package/Calendar/{IconChevronRight.js → CalendarIconNext.js} +0 -0
@@ -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;
@@ -42,15 +42,15 @@ export interface HighlightedOverrides {
42
42
  /**
43
43
  * Container element
44
44
  */
45
- readonly Container?: React.ForwardRefExoticComponent<HighlightedContainerProps & React.RefAttributes<HTMLSpanElement>>;
45
+ readonly Container?: React.ComponentType<HighlightedContainerProps & React.RefAttributes<HTMLSpanElement>>;
46
46
  /**
47
47
  * Mark element (HTML <mark>)
48
48
  */
49
- readonly Mark?: React.ForwardRefExoticComponent<HighlightedMarkProps & React.RefAttributes<HTMLElement>>;
49
+ readonly Mark?: React.ComponentType<HighlightedMarkProps & React.RefAttributes<HTMLElement>>;
50
50
  /**
51
51
  * Text element (HTML <span>)regex
52
52
  */
53
- readonly Text?: React.ForwardRefExoticComponent<HighlightedTextProps & React.RefAttributes<HTMLSpanElement>>;
53
+ readonly Text?: React.ComponentType<HighlightedTextProps & React.RefAttributes<HTMLSpanElement>>;
54
54
  }
55
55
  export declare const escapeRegex: (pattern: string) => string;
56
56
  declare const _default: React.ForwardRefExoticComponent<HighlightedProps & React.RefAttributes<HTMLSpanElement>>;
@@ -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,5 +1,5 @@
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
4
  export type GetMask = (input: string) => Mask;
5
5
  export interface MaskedFieldProps extends Omit<TextFieldProps, 'value' | 'onChange'> {
@@ -31,7 +31,7 @@ const MaskedField = (props, ref) => {
31
31
  typeof parseInput === 'undefined' &&
32
32
  elem.match(/[0-9a-zа-яё]/i))) {
33
33
  decoratorsErrorDisplayed.current = true;
34
- console.warn(`[MaskedField component] You use symbols as decorators, which should be replaced with RegExp or provide the «parseInput» function instead`);
34
+ console.warn('[MaskedField component] You use symbols as decorators, which should be replaced with RegExp or provide the «parseInput» function instead');
35
35
  }
36
36
  return currentMask;
37
37
  }, [mask, parseInput]);
@@ -66,14 +66,15 @@ const MaskedField = (props, ref) => {
66
66
  (_a = textInputRef.current) === null || _a === void 0 ? void 0 : _a.setSelectionRange(caret, caret);
67
67
  }, 15);
68
68
  }, [getMask, masked, transform, onChange, parseInputFn]);
69
- return (react_1.default.createElement(TextField_1.default, Object.assign({ ref: ref }, nativeProps, { type: "text", value: inputValue, onChange: handleOnChange, inputRef: elem => {
70
- textInputRef.current = elem;
71
- if (typeof nativeProps.inputRef === 'function') {
72
- nativeProps.inputRef(elem);
73
- }
74
- if (nativeProps.inputRef !== null && typeof nativeProps.inputRef === 'object') {
75
- nativeProps.inputRef.current = elem;
76
- }
77
- } })));
69
+ const setInputRef = react_1.default.useCallback((elem) => {
70
+ textInputRef.current = elem;
71
+ if (typeof nativeProps.inputRef === 'function') {
72
+ nativeProps.inputRef(elem);
73
+ }
74
+ if (nativeProps.inputRef !== null && typeof nativeProps.inputRef === 'object') {
75
+ nativeProps.inputRef.current = elem;
76
+ }
77
+ }, [nativeProps]);
78
+ return (react_1.default.createElement(TextField_1.default, Object.assign({ ref: ref }, nativeProps, { type: "text", value: inputValue, onChange: handleOnChange, inputRef: setInputRef })));
78
79
  };
79
80
  exports.default = react_1.default.forwardRef(MaskedField);
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ export type AutoHeightWrapperProps = {
3
+ readonly children: (height: number) => React.ReactNode;
4
+ };
5
+ declare const AutoHeightWrapper: (props: AutoHeightWrapperProps) => React.JSX.Element;
6
+ export default AutoHeightWrapper;
@@ -0,0 +1,43 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const React = __importStar(require("react"));
27
+ const AutoHeightWrapper = (props) => {
28
+ const { children } = props;
29
+ const ref = React.useRef(null);
30
+ const [height, setHeight] = React.useState(0);
31
+ React.useLayoutEffect(() => {
32
+ const el = ref.current;
33
+ if (!el)
34
+ return;
35
+ const ro = new ResizeObserver(() => {
36
+ setHeight(el.clientHeight);
37
+ });
38
+ ro.observe(el);
39
+ return () => ro.disconnect();
40
+ }, []);
41
+ return (React.createElement("div", { "data-virt-elem": "AutoHeightWrapper", ref: ref, style: { height: '100%', overflow: 'hidden' } }, height > 0 && children(height)));
42
+ };
43
+ exports.default = AutoHeightWrapper;
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ export type MeasuredItemProps = {
3
+ readonly index: number;
4
+ readonly top: number;
5
+ readonly isFixed: boolean;
6
+ readonly updateHeight: (index: number, height: number) => void;
7
+ readonly children: React.ReactNode;
8
+ };
9
+ declare const MeasuredItem: React.FC<MeasuredItemProps>;
10
+ export default MeasuredItem;
@@ -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
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const React = __importStar(require("react"));
27
+ const MeasuredItem = props => {
28
+ const { index, top, isFixed, updateHeight, children } = props;
29
+ const ref = React.useRef(null);
30
+ React.useLayoutEffect(() => {
31
+ if (isFixed)
32
+ return; // в фиксированном режиме измерять не нужно
33
+ const el = ref.current;
34
+ if (!el)
35
+ return;
36
+ const measure = () => {
37
+ const h = el.offsetHeight;
38
+ updateHeight(index, h);
39
+ };
40
+ measure();
41
+ const ro = new ResizeObserver(measure);
42
+ ro.observe(el);
43
+ return () => ro.disconnect();
44
+ }, [index, updateHeight, isFixed]);
45
+ return (React.createElement("div", { ref: ref, style: {
46
+ position: 'absolute',
47
+ top,
48
+ width: '100%',
49
+ } }, children));
50
+ };
51
+ exports.default = MeasuredItem;