colibri-ui 0.7.57 → 0.7.59
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/Badge/Badge.module.css +13 -15
- package/Badge/Control/Control.module.css +1 -1
- package/Button/Button.module.css +44 -30
- package/Button/index.props.d.ts +1 -1
- package/Calendar/components/ContinueButton/index.d.ts +10 -0
- package/Calendar/components/ContinueButton/index.js +45 -0
- package/Calendar/components/ContinueButton/index.module.css +4 -0
- package/Calendar/components/Month/Month.d.ts +15 -0
- package/Calendar/components/Month/Month.js +142 -0
- package/Calendar/components/Month/index.module.css +143 -0
- package/Calendar/components/Presets/index.d.ts +19 -0
- package/Calendar/components/Presets/index.js +68 -0
- package/Calendar/components/Presets/index.module.css +28 -0
- package/Calendar/index.d.ts +20 -0
- package/Calendar/index.js +196 -0
- package/Calendar/index.module.css +98 -0
- package/Calendar/package.json +6 -0
- package/Calendar/utils/getMonthWeeks.d.ts +20 -0
- package/Calendar/utils/getMonthWeeks.js +81 -0
- package/Calendar/utils/getNumberOfMonthsBetweenDates.d.ts +4 -0
- package/Calendar/utils/getNumberOfMonthsBetweenDates.js +21 -0
- package/Calendar/utils/getPresets.d.ts +10 -0
- package/Calendar/utils/getStartMonth.d.ts +6 -0
- package/Calendar/utils/getStartMonth.js +15 -0
- package/Checkbox/Checkbox.module.css +14 -14
- package/Checkbox/index.js +1 -1
- package/Counter/Counter.module.css +3 -3
- package/Dropdown/Dropdown.module.css +7 -7
- package/Dropdown/index.js +3 -2
- package/Grid/Grid.module.css +5 -10
- package/Grid/Item/Grid-Item.module.css +1 -1
- package/Grid/Item/index.js +4 -2
- package/Grid/Item/index.props.d.ts +2 -1
- package/Icons/Check.d.ts +4 -0
- package/Icons/Check.js +41 -0
- package/Icons/Setting.d.ts +4 -0
- package/Image/Image.module.css +5 -6
- package/InputRadio/InputRadio.module.css +7 -9
- package/Menu/Menu.module.css +3 -3
- package/Menu/components/MenuItem/MenuItem.module.css +8 -7
- package/Menu/components/MenuItem/index.d.ts +2 -2
- package/Menu/components/MenuItem/index.js +9 -9
- package/Menu/index.d.ts +3 -2
- package/Menu/index.js +3 -4
- package/Menu/index.props.d.ts +2 -7
- package/Modal/Modal.module.css +19 -19
- package/Modal/components/Content/Content.module.css +1 -1
- package/Modal/index.js +4 -4
- package/RadioGroup/index.d.ts +2 -1
- package/Select/components/MenuOverlay/index.d.ts +11 -0
- package/Select/components/MenuOverlay/index.js +63 -0
- package/Select/components/MenuOverlay/index.module.css +4 -0
- package/Select/components/MenuOverlayItem/index.d.ts +13 -0
- package/Select/components/MenuOverlayItem/index.js +45 -0
- package/Select/index.d.ts +1 -1
- package/Select/index.js +19 -34
- package/Select/{Select.module.css → index.module.css} +12 -17
- package/Select/index.props.d.ts +6 -3
- package/Skeleton/Skeleton.module.css +4 -4
- package/Switch/Switch.module.css +22 -22
- package/Switch/index.js +1 -1
- package/Theme/colors/common.d.ts +27 -0
- package/Theme/colors/common.js +28 -0
- package/Theme/colors/index.d.ts +48 -0
- package/Theme/colors/index.js +12 -0
- package/Theme/colors/theme_buenos_aires.d.ts +47 -0
- package/Theme/colors/theme_buenos_aires.js +40 -0
- package/Theme/colors/theme_default.d.ts +47 -0
- package/Theme/colors/theme_default.js +40 -0
- package/Theme/global.css +7 -5
- package/Theme/index.d.ts +12 -0
- package/Theme/themes/buenos_aires.js +7 -7
- package/Theme/themes/default.d.ts +12 -0
- package/Theme/themes/default.js +94 -82
- package/TimeSelect/Label/index.d.ts +8 -0
- package/TimeSelect/helpers.d.ts +7 -0
- package/TimeSelect/index.d.ts +7 -0
- package/TimeSelect/index.props.d.ts +4 -0
- package/TimeSelect/package.json +6 -0
- package/Typography/Typography.module.css +3 -3
- package/Typography/index.d.ts +2 -2
- package/Typography/index.js +3 -3
- package/Typography/index.props.d.ts +2 -1
- package/base/BaseInput/BaseInput.module.css +4 -4
- package/base/BaseInput/index.js +1 -1
- package/base/InputRoot/InputRoot.module.css +22 -20
- package/base/InputRoot/index.js +5 -5
- package/esm/Badge/Badge.module.css +13 -15
- package/esm/Badge/Control/Control.module.css +1 -1
- package/esm/Badge/Control/index.js +2 -2
- package/esm/Badge/index.js +2 -2
- package/esm/Button/Button.module.css +44 -30
- package/esm/Button/index.js +5 -5
- package/esm/Button/index.props.d.ts +1 -1
- package/esm/Calendar/components/ContinueButton/index.d.ts +10 -0
- package/esm/Calendar/components/ContinueButton/index.js +37 -0
- package/esm/Calendar/components/ContinueButton/index.module.css +4 -0
- package/esm/Calendar/components/Month/Month.d.ts +15 -0
- package/esm/Calendar/components/Month/Month.js +116 -0
- package/esm/Calendar/components/Month/index.module.css +143 -0
- package/esm/Calendar/components/Presets/index.d.ts +19 -0
- package/esm/Calendar/components/Presets/index.js +42 -0
- package/esm/Calendar/components/Presets/index.module.css +28 -0
- package/esm/Calendar/index.d.ts +20 -0
- package/esm/Calendar/index.js +186 -0
- package/esm/Calendar/index.module.css +98 -0
- package/esm/Calendar/utils/getMonthWeeks.d.ts +20 -0
- package/esm/Calendar/utils/getMonthWeeks.js +79 -0
- package/esm/Calendar/utils/getNumberOfMonthsBetweenDates.d.ts +4 -0
- package/esm/Calendar/utils/getNumberOfMonthsBetweenDates.js +19 -0
- package/esm/Calendar/utils/getPresets.d.ts +10 -0
- package/esm/Calendar/utils/getStartMonth.d.ts +6 -0
- package/esm/Calendar/utils/getStartMonth.js +13 -0
- package/esm/Checkbox/Checkbox.module.css +14 -14
- package/esm/Checkbox/index.js +9 -9
- package/esm/ClickOutside/index.js +3 -3
- package/esm/Counter/Counter.module.css +3 -3
- package/esm/Counter/index.js +8 -8
- package/esm/DotsLoader/index.js +6 -6
- package/esm/Dropdown/Dropdown.module.css +7 -7
- package/esm/Dropdown/index.js +9 -8
- package/esm/Grid/Grid.module.css +5 -10
- package/esm/Grid/Item/Grid-Item.module.css +1 -1
- package/esm/Grid/Item/index.js +6 -4
- package/esm/Grid/Item/index.props.d.ts +2 -1
- package/esm/Grid/index.js +2 -2
- package/esm/Icons/Cart.js +3 -3
- package/esm/Icons/Check.d.ts +4 -0
- package/esm/Icons/Check.js +33 -0
- package/esm/Icons/Chevron.js +3 -3
- package/esm/Icons/Close.js +3 -3
- package/esm/Icons/EyeClosed.js +3 -3
- package/esm/Icons/EyeOpen.js +4 -4
- package/esm/Icons/Help.js +3 -3
- package/esm/Icons/Info.js +3 -3
- package/esm/Icons/Minus.js +3 -3
- package/esm/Icons/More.js +5 -5
- package/esm/Icons/Plus.js +5 -5
- package/esm/Icons/Setting.d.ts +4 -0
- package/esm/Icons/Trash.js +3 -3
- package/esm/Icons/User.js +4 -4
- package/esm/Image/Image.module.css +5 -6
- package/esm/Image/index.js +4 -4
- package/esm/Input/index.js +4 -4
- package/esm/InputRadio/InputRadio.module.css +7 -9
- package/esm/InputRadio/index.js +7 -7
- package/esm/Menu/Menu.module.css +3 -3
- package/esm/Menu/components/MenuItem/MenuItem.module.css +8 -7
- package/esm/Menu/components/MenuItem/index.d.ts +2 -2
- package/esm/Menu/components/MenuItem/index.js +11 -11
- package/esm/Menu/index.d.ts +3 -2
- package/esm/Menu/index.js +5 -6
- package/esm/Menu/index.props.d.ts +2 -7
- package/esm/Modal/Modal.module.css +19 -19
- package/esm/Modal/components/Close/index.js +2 -2
- package/esm/Modal/components/Content/Content.module.css +1 -1
- package/esm/Modal/components/Content/index.js +2 -2
- package/esm/Modal/components/Title/index.js +3 -3
- package/esm/Modal/index.js +13 -13
- package/esm/RadioGroup/Radio.js +2 -2
- package/esm/RadioGroup/index.d.ts +2 -1
- package/esm/RadioGroup/index.js +3 -3
- package/esm/Select/components/MenuOverlay/index.d.ts +11 -0
- package/esm/Select/components/MenuOverlay/index.js +53 -0
- package/esm/Select/components/MenuOverlay/index.module.css +4 -0
- package/esm/Select/components/MenuOverlayItem/index.d.ts +13 -0
- package/esm/Select/components/MenuOverlayItem/index.js +37 -0
- package/esm/Select/index.d.ts +1 -1
- package/esm/Select/index.js +26 -41
- package/esm/Select/{Select.module.css → index.module.css} +12 -17
- package/esm/Select/index.props.d.ts +6 -3
- package/esm/Separator/index.js +2 -2
- package/esm/Skeleton/Skeleton.module.css +4 -4
- package/esm/Skeleton/index.js +3 -3
- package/esm/Switch/Switch.module.css +22 -22
- package/esm/Switch/index.js +6 -6
- package/esm/Theme/colors/common.d.ts +27 -0
- package/esm/Theme/colors/common.js +20 -0
- package/esm/Theme/colors/index.d.ts +48 -0
- package/esm/Theme/colors/index.js +8 -0
- package/esm/Theme/colors/theme_buenos_aires.d.ts +47 -0
- package/esm/Theme/colors/theme_buenos_aires.js +31 -0
- package/esm/Theme/colors/theme_default.d.ts +47 -0
- package/esm/Theme/colors/theme_default.js +31 -0
- package/esm/Theme/global.css +7 -5
- package/esm/Theme/index.d.ts +12 -0
- package/esm/Theme/themes/buenos_aires.js +1 -1
- package/esm/Theme/themes/default.d.ts +12 -0
- package/esm/Theme/themes/default.js +13 -1
- package/esm/TimeSelect/Label/index.d.ts +8 -0
- package/esm/TimeSelect/helpers.d.ts +7 -0
- package/esm/TimeSelect/index.d.ts +7 -0
- package/esm/TimeSelect/index.props.d.ts +4 -0
- package/esm/Typography/Typography.module.css +3 -3
- package/esm/Typography/index.d.ts +2 -2
- package/esm/Typography/index.js +5 -5
- package/esm/Typography/index.props.d.ts +2 -1
- package/esm/base/BaseInput/BaseInput.module.css +4 -4
- package/esm/base/BaseInput/index.js +3 -3
- package/esm/base/FormField/index.js +4 -4
- package/esm/base/InputRoot/InputRoot.module.css +22 -20
- package/esm/base/InputRoot/index.js +8 -8
- package/esm/helpers/date/index.d.ts +11 -0
- package/esm/helpers/date/index.js +69 -0
- package/esm/index.d.ts +3 -1
- package/esm/index.js +2 -0
- package/esm/libs/numbers/leadingZeros.d.ts +4 -0
- package/esm/libs/numbers/leadingZeros.js +12 -0
- package/esm/libs/requestIdleCallback/index.d.ts +5 -0
- package/esm/libs/requestIdleCallback/index.js +9 -0
- package/esm/theme_default_variables.css +12 -0
- package/helpers/date/index.d.ts +11 -0
- package/helpers/date/index.js +79 -0
- package/index.d.ts +3 -1
- package/index.js +43 -39
- package/libs/numbers/leadingZeros.d.ts +4 -0
- package/libs/numbers/leadingZeros.js +14 -0
- package/libs/requestIdleCallback/index.d.ts +5 -0
- package/libs/requestIdleCallback/index.js +11 -0
- package/package.json +2 -1
- package/theme_default_variables.css +12 -0
- package/Theme/color.d.ts +0 -118
- package/Theme/color.js +0 -88
- package/esm/Theme/color.d.ts +0 -118
- package/esm/Theme/color.js +0 -72
package/esm/Input/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __rest, __assign } from 'tslib';
|
|
2
|
-
import
|
|
2
|
+
import React__default, { forwardRef } from 'react';
|
|
3
3
|
import classNames from 'classnames';
|
|
4
4
|
import FormField from '../base/FormField/index.js';
|
|
5
5
|
import InputRoot from '../base/InputRoot/index.js';
|
|
@@ -18,12 +18,12 @@ var Input = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
18
18
|
_c = _a.size,
|
|
19
19
|
size = _c === void 0 ? "m" : _c,
|
|
20
20
|
props = __rest(_a, ["className", "startIcon", "endIcon", "label", "hint", "error", "onChange", "variant", "size"]);
|
|
21
|
-
return /*#__PURE__*/
|
|
21
|
+
return /*#__PURE__*/React__default.createElement(FormField, {
|
|
22
22
|
className: classNames(className),
|
|
23
23
|
label: label,
|
|
24
24
|
hint: hint,
|
|
25
25
|
error: error
|
|
26
|
-
}, /*#__PURE__*/
|
|
26
|
+
}, /*#__PURE__*/React__default.createElement(InputRoot, {
|
|
27
27
|
ref: ref,
|
|
28
28
|
startIcon: startIcon,
|
|
29
29
|
endIcon: endIcon,
|
|
@@ -31,7 +31,7 @@ var Input = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
31
31
|
size: size,
|
|
32
32
|
disabled: !!props.disabled,
|
|
33
33
|
error: error
|
|
34
|
-
}, /*#__PURE__*/
|
|
34
|
+
}, /*#__PURE__*/React__default.createElement(BaseInput, __assign({
|
|
35
35
|
onChange: onChange,
|
|
36
36
|
type: "text"
|
|
37
37
|
}, props))));
|
|
@@ -4,9 +4,7 @@
|
|
|
4
4
|
}
|
|
5
5
|
|
|
6
6
|
.text {
|
|
7
|
-
flex
|
|
8
|
-
flex-grow: 1;
|
|
9
|
-
flex-shrink: 1;
|
|
7
|
+
flex: 1 1 auto;
|
|
10
8
|
line-height: 18px;
|
|
11
9
|
margin-inline-start: 8px;
|
|
12
10
|
}
|
|
@@ -52,21 +50,21 @@
|
|
|
52
50
|
padding: 0;
|
|
53
51
|
position: absolute;
|
|
54
52
|
}
|
|
55
|
-
.input:not(.input_disabled
|
|
53
|
+
.input:not(.input_disabled, .input_error):hover + .icon {
|
|
56
54
|
border-color: var(--inputradio-primary-background-color-hovered);
|
|
57
55
|
}
|
|
58
|
-
.input:not(.input_disabled
|
|
56
|
+
.input:not(.input_disabled, .input_error):focus + .icon {
|
|
59
57
|
box-shadow: 0 0 0 2px var(--inputradio-primary-box-shadow-focused);
|
|
60
58
|
}
|
|
61
|
-
.input:not(.input_disabled
|
|
59
|
+
.input:not(.input_disabled, .input_error):active + .icon {
|
|
62
60
|
background-color: var(--inputradio-primary-background-color-focused);
|
|
63
61
|
border-color: var(--inputradio-primary-border-color-focused);
|
|
64
62
|
box-shadow: 0 0 0 2px var(--inputradio-primary-box-shadow-focused);
|
|
65
63
|
}
|
|
66
|
-
.input:not(.input_disabled
|
|
64
|
+
.input:not(.input_disabled, .input_error) .input_checked:hover + .icon {
|
|
67
65
|
border-color: var(--inputradio-primary-background-color-hovered);
|
|
68
66
|
}
|
|
69
|
-
.input:not(.input_disabled
|
|
67
|
+
.input:not(.input_disabled, .input_error) .input_checked:active + .icon {
|
|
70
68
|
background-color: var(--palette-white);
|
|
71
69
|
border: 4px solid var(--inputradio-primary-background-color-checked);
|
|
72
70
|
}
|
|
@@ -79,12 +77,12 @@
|
|
|
79
77
|
}
|
|
80
78
|
.input_disabled + .icon::after {
|
|
81
79
|
background-color: rgba(246, 246, 246, 0.8);
|
|
80
|
+
border-radius: 50%;
|
|
82
81
|
content: "";
|
|
83
82
|
display: block;
|
|
84
83
|
inset: 0;
|
|
85
84
|
margin: -1px;
|
|
86
85
|
position: absolute;
|
|
87
|
-
border-radius: 50%;
|
|
88
86
|
}
|
|
89
87
|
.input_checked:disabled + .icon::after {
|
|
90
88
|
margin: -4px;
|
package/esm/InputRadio/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __rest, __assign } from 'tslib';
|
|
2
|
-
import
|
|
2
|
+
import React__default, { memo } from 'react';
|
|
3
3
|
import classNames from 'classnames/bind';
|
|
4
4
|
import Typography from '../Typography/index.js';
|
|
5
5
|
import styles from './InputRadio.module.css';
|
|
@@ -25,19 +25,19 @@ var InputRadio = /*#__PURE__*/memo(function (_a) {
|
|
|
25
25
|
value = _a.value,
|
|
26
26
|
testid = _a.testid,
|
|
27
27
|
rest = __rest(_a, ["checked", "children", "className", "containerClassName", "disabled", "error", "id", "name", "note", "onBlur", "onFocus", "onChange", "onClick", "onMouseEnter", "style", "text", "value", "testid"]);
|
|
28
|
-
return /*#__PURE__*/
|
|
28
|
+
return /*#__PURE__*/React__default.createElement("label", {
|
|
29
29
|
className: clx(styles.label, className),
|
|
30
30
|
htmlFor: id,
|
|
31
31
|
style: style,
|
|
32
32
|
onClick: onClick,
|
|
33
33
|
onMouseEnter: onMouseEnter,
|
|
34
34
|
"data-testid": testid
|
|
35
|
-
}, /*#__PURE__*/
|
|
35
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
36
36
|
className: clx(styles.container, {
|
|
37
37
|
container_disabled: !!disabled,
|
|
38
38
|
container_error: !!error
|
|
39
39
|
}, containerClassName)
|
|
40
|
-
}, /*#__PURE__*/
|
|
40
|
+
}, /*#__PURE__*/React__default.createElement("input", __assign({
|
|
41
41
|
type: "radio",
|
|
42
42
|
id: id,
|
|
43
43
|
value: value,
|
|
@@ -52,11 +52,11 @@ var InputRadio = /*#__PURE__*/memo(function (_a) {
|
|
|
52
52
|
onChange: onChange,
|
|
53
53
|
onFocus: onFocus,
|
|
54
54
|
onBlur: onBlur
|
|
55
|
-
}, rest)), /*#__PURE__*/
|
|
55
|
+
}, rest)), /*#__PURE__*/React__default.createElement("span", {
|
|
56
56
|
className: clx(styles.icon)
|
|
57
|
-
}), /*#__PURE__*/
|
|
57
|
+
}), /*#__PURE__*/React__default.createElement("span", {
|
|
58
58
|
className: clx(styles.text)
|
|
59
|
-
}, !children && text, !text && children)), !!note && ( /*#__PURE__*/
|
|
59
|
+
}, !children && text, !text && children)), !!note && ( /*#__PURE__*/React__default.createElement(Typography, {
|
|
60
60
|
tag: "p",
|
|
61
61
|
size: "s",
|
|
62
62
|
className: clx(styles.note)
|
package/esm/Menu/Menu.module.css
CHANGED
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
.item {
|
|
2
|
+
align-items: center;
|
|
2
3
|
cursor: pointer;
|
|
3
4
|
display: flex;
|
|
4
|
-
|
|
5
|
-
list-style: none;
|
|
6
|
-
padding: 8px 6px;
|
|
5
|
+
font-size: 16px;
|
|
7
6
|
font-style: normal;
|
|
8
7
|
font-weight: 400;
|
|
9
|
-
|
|
8
|
+
justify-content: space-between;
|
|
10
9
|
line-height: 22px;
|
|
10
|
+
list-style: none;
|
|
11
|
+
padding: 8px 6px;
|
|
11
12
|
}
|
|
12
13
|
.item > * {
|
|
13
|
-
white-space: nowrap;
|
|
14
14
|
overflow: hidden;
|
|
15
15
|
text-overflow: ellipsis;
|
|
16
|
+
white-space: nowrap;
|
|
16
17
|
}
|
|
17
18
|
|
|
18
19
|
.variant_primary {
|
|
@@ -29,8 +30,8 @@
|
|
|
29
30
|
}
|
|
30
31
|
|
|
31
32
|
.disabled {
|
|
33
|
+
background-color: var(--palette-white);
|
|
34
|
+
color: var(--palette-bg-2);
|
|
32
35
|
cursor: not-allowed;
|
|
33
36
|
pointer-events: none;
|
|
34
|
-
color: var(--palette-bg-2);
|
|
35
|
-
background-color: var(--palette-white);
|
|
36
37
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React from "react";
|
|
2
2
|
import type { MenuItemProps } from "./index.props";
|
|
3
|
-
declare const MenuItem:
|
|
3
|
+
declare const MenuItem: React.ForwardRefExoticComponent<MenuItemProps & React.RefAttributes<HTMLLIElement>>;
|
|
4
4
|
export default MenuItem;
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default, { forwardRef } from 'react';
|
|
2
2
|
import classNames from 'classnames/bind';
|
|
3
3
|
import styles from './MenuItem.module.css';
|
|
4
4
|
|
|
5
5
|
var clx = classNames.bind(styles);
|
|
6
|
-
var MenuItem = function
|
|
6
|
+
var MenuItem = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
7
7
|
var _b;
|
|
8
8
|
var className = _a.className,
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
variant = _d === void 0 ? "primary" : _d,
|
|
9
|
+
isSelected = _a.isSelected,
|
|
10
|
+
_c = _a.variant,
|
|
11
|
+
variant = _c === void 0 ? "primary" : _c,
|
|
13
12
|
disabled = _a.disabled,
|
|
14
13
|
onClick = _a.onClick,
|
|
15
14
|
children = _a.children;
|
|
16
|
-
return /*#__PURE__*/
|
|
15
|
+
return /*#__PURE__*/React__default.createElement("li", {
|
|
16
|
+
ref: ref,
|
|
17
|
+
"data-component": "menu-item",
|
|
17
18
|
style: {
|
|
18
|
-
backgroundColor: isSelected ? "
|
|
19
|
+
backgroundColor: isSelected ? "var(--palette-primary-1)" : "var(--palette-white)"
|
|
19
20
|
},
|
|
20
|
-
className: clx((_b = {
|
|
21
|
-
item: true,
|
|
21
|
+
className: clx(styles.item, (_b = {
|
|
22
22
|
disabled: disabled
|
|
23
23
|
}, _b["variant_".concat(variant)] = !!variant, _b), className),
|
|
24
24
|
onClick: onClick
|
|
25
25
|
}, children);
|
|
26
|
-
};
|
|
26
|
+
});
|
|
27
27
|
|
|
28
28
|
export { MenuItem as default };
|
package/esm/Menu/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { Props } from "./index.props";
|
|
3
|
+
declare const Menu: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLUListElement>>;
|
|
3
4
|
export default Menu;
|
package/esm/Menu/index.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default, { forwardRef, useMemo, Children, isValidElement, cloneElement } from 'react';
|
|
2
2
|
import classNames from 'classnames';
|
|
3
|
-
import MenuItem from './components/MenuItem/index.js';
|
|
4
3
|
import styles from './Menu.module.css';
|
|
5
4
|
|
|
6
|
-
var Menu = function
|
|
5
|
+
var Menu = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
7
6
|
var selected = _a.selected,
|
|
8
7
|
variant = _a.variant,
|
|
9
8
|
className = _a.className,
|
|
@@ -26,10 +25,10 @@ var Menu = function Menu(_a) {
|
|
|
26
25
|
return child;
|
|
27
26
|
});
|
|
28
27
|
}, [children, selected, onClick]);
|
|
29
|
-
return /*#__PURE__*/
|
|
28
|
+
return /*#__PURE__*/React__default.createElement("ul", {
|
|
29
|
+
ref: ref,
|
|
30
30
|
className: classNames(styles.menu, className)
|
|
31
31
|
}, renderChild);
|
|
32
|
-
};
|
|
33
|
-
Menu.Item = MenuItem;
|
|
32
|
+
});
|
|
34
33
|
|
|
35
34
|
export { Menu as default };
|
|
@@ -1,15 +1,10 @@
|
|
|
1
|
-
import type { ReactElement, MouseEvent
|
|
2
|
-
import type MenuItem from "./components/MenuItem";
|
|
1
|
+
import type { ReactElement, MouseEvent } from "react";
|
|
3
2
|
import type { MenuItemProps } from "./components/MenuItem/index.props";
|
|
4
3
|
export type MenuVariant = "primary";
|
|
5
|
-
type Props = {
|
|
4
|
+
export type Props = {
|
|
6
5
|
selected?: string[];
|
|
7
6
|
variant?: MenuVariant;
|
|
8
7
|
className?: string;
|
|
9
8
|
onClick?: (key: string, e: MouseEvent) => void;
|
|
10
9
|
children?: ReactElement<MenuItemProps> | ReactElement<MenuItemProps>[];
|
|
11
10
|
};
|
|
12
|
-
export interface MenuProps extends FC<Props> {
|
|
13
|
-
Item: typeof MenuItem;
|
|
14
|
-
}
|
|
15
|
-
export {};
|
|
@@ -1,51 +1,51 @@
|
|
|
1
1
|
.root {
|
|
2
|
+
bottom: 0;
|
|
3
|
+
height: 100%;
|
|
2
4
|
position: fixed;
|
|
3
5
|
top: 0;
|
|
4
|
-
bottom: 0;
|
|
5
6
|
width: 100%;
|
|
6
|
-
height: 100%;
|
|
7
7
|
z-index: 1000;
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
.
|
|
11
|
-
display: flex;
|
|
12
|
-
justify-content: space-between;
|
|
10
|
+
.title-wrapper {
|
|
13
11
|
align-items: center;
|
|
14
12
|
border-bottom: 1px solid var(--palette-bg-2);
|
|
13
|
+
display: flex;
|
|
14
|
+
justify-content: space-between;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
.
|
|
17
|
+
.close-wrapper {
|
|
18
18
|
display: flex;
|
|
19
19
|
justify-content: flex-end;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
.
|
|
22
|
+
.modal-overlay {
|
|
23
|
+
background-color: rgba(0, 0, 0, 0.25);
|
|
24
|
+
bottom: 0;
|
|
25
|
+
height: 100%;
|
|
23
26
|
position: fixed;
|
|
24
27
|
top: 0;
|
|
25
|
-
bottom: 0;
|
|
26
28
|
width: 100%;
|
|
27
|
-
height: 100%;
|
|
28
|
-
background-color: rgba(0, 0, 0, 0.25);
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
.
|
|
31
|
+
.modal-wrapper {
|
|
32
|
+
background-color: var(--palette-white);
|
|
33
|
+
display: flex;
|
|
34
|
+
flex-direction: column;
|
|
35
|
+
left: 50%;
|
|
32
36
|
overflow: hidden;
|
|
33
37
|
position: absolute;
|
|
34
|
-
left: 50%;
|
|
35
38
|
top: 50%;
|
|
36
39
|
transform: translate(-50%, -50%);
|
|
37
|
-
display: flex;
|
|
38
|
-
flex-direction: column;
|
|
39
|
-
background-color: var(--palette-white);
|
|
40
40
|
}
|
|
41
|
-
.
|
|
41
|
+
.modal-wrapper_mobile {
|
|
42
42
|
height: 100%;
|
|
43
43
|
width: 100%;
|
|
44
44
|
}
|
|
45
|
-
.
|
|
45
|
+
.modal-wrapper_desktop {
|
|
46
|
+
border: solid 1px var(--palette-bg-2);
|
|
47
|
+
border-radius: 8px;
|
|
46
48
|
max-height: calc(100vh - 100px);
|
|
47
49
|
max-width: calc(100vw - 100px);
|
|
48
50
|
min-width: 515px;
|
|
49
|
-
border: solid 1px var(--palette-bg-2);
|
|
50
|
-
border-radius: 8px;
|
|
51
51
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import classNames from 'classnames';
|
|
3
3
|
import '../../../Icons/index.js';
|
|
4
4
|
import styles from './Close.module.css';
|
|
@@ -6,7 +6,7 @@ import CloseIcon from '../../../Icons/Close.js';
|
|
|
6
6
|
|
|
7
7
|
var Close = function Close(_a) {
|
|
8
8
|
var onClick = _a.onClick;
|
|
9
|
-
return /*#__PURE__*/
|
|
9
|
+
return /*#__PURE__*/React__default.createElement(CloseIcon, {
|
|
10
10
|
className: classNames(styles.close),
|
|
11
11
|
onClick: onClick
|
|
12
12
|
});
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import classNames from 'classnames';
|
|
2
|
-
import
|
|
2
|
+
import React__default from 'react';
|
|
3
3
|
import styles from './Content.module.css';
|
|
4
4
|
|
|
5
5
|
var Content = function Content(_a) {
|
|
6
6
|
var children = _a.children;
|
|
7
|
-
return /*#__PURE__*/
|
|
7
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
8
8
|
className: classNames(styles.root)
|
|
9
9
|
}, children);
|
|
10
10
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import classNames from 'classnames/bind';
|
|
3
3
|
import Typography from '../../../Typography/index.js';
|
|
4
4
|
import styles from './Title.module.css';
|
|
@@ -6,11 +6,11 @@ import styles from './Title.module.css';
|
|
|
6
6
|
var clx = classNames.bind(styles);
|
|
7
7
|
var Title = function Title(_a) {
|
|
8
8
|
var children = _a.children;
|
|
9
|
-
return /*#__PURE__*/
|
|
9
|
+
return /*#__PURE__*/React__default.createElement(Typography, {
|
|
10
10
|
tag: "h3",
|
|
11
11
|
size: "h3",
|
|
12
12
|
className: clx(styles.title)
|
|
13
|
-
}, /*#__PURE__*/
|
|
13
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
14
14
|
className: clx(styles.wrapper)
|
|
15
15
|
}, children));
|
|
16
16
|
};
|
package/esm/Modal/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default, { useRef, useMemo, useEffect } from 'react';
|
|
2
2
|
import classNames from 'classnames/bind';
|
|
3
3
|
import useScrollLock from '../hooks/useScrollLock/index.js';
|
|
4
4
|
import useTrapFocus from '../hooks/useTrapFocus/index.js';
|
|
@@ -36,26 +36,26 @@ var Modal = function Modal(_a) {
|
|
|
36
36
|
document.removeEventListener("keydown", onEsc);
|
|
37
37
|
};
|
|
38
38
|
}, [onCloseHandler]);
|
|
39
|
-
return /*#__PURE__*/
|
|
39
|
+
return /*#__PURE__*/React__default.createElement(Portal, null, /*#__PURE__*/React__default.createElement("div", {
|
|
40
40
|
className: clx(styles.root)
|
|
41
|
-
}, /*#__PURE__*/
|
|
42
|
-
className: clx(styles
|
|
41
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
42
|
+
className: clx(styles["modal-overlay"]),
|
|
43
43
|
onClick: onCloseHandler
|
|
44
|
-
}), /*#__PURE__*/
|
|
45
|
-
className: clx(styles
|
|
44
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
45
|
+
className: clx(styles["modal-wrapper"], {
|
|
46
46
|
modalWrapper_desktop: isDesktop ? 1 : 0,
|
|
47
47
|
modalWrapper_mobile: !isDesktop ? 1 : 0
|
|
48
48
|
}, className),
|
|
49
49
|
ref: modalRef
|
|
50
|
-
}, title ? ( /*#__PURE__*/
|
|
51
|
-
className: clx(styles
|
|
52
|
-
}, /*#__PURE__*/
|
|
50
|
+
}, title ? ( /*#__PURE__*/React__default.createElement("div", {
|
|
51
|
+
className: clx(styles["title-wrapper"])
|
|
52
|
+
}, /*#__PURE__*/React__default.createElement(Title, null, title), /*#__PURE__*/React__default.createElement(Close, {
|
|
53
53
|
onClick: onCloseHandler
|
|
54
|
-
}))) : ( /*#__PURE__*/
|
|
55
|
-
className: clx(styles
|
|
56
|
-
}, /*#__PURE__*/
|
|
54
|
+
}))) : ( /*#__PURE__*/React__default.createElement("div", {
|
|
55
|
+
className: clx(styles["close-wrapper"])
|
|
56
|
+
}, /*#__PURE__*/React__default.createElement(Close, {
|
|
57
57
|
onClick: onCloseHandler
|
|
58
|
-
}))), /*#__PURE__*/
|
|
58
|
+
}))), /*#__PURE__*/React__default.createElement(Content, null, children))));
|
|
59
59
|
};
|
|
60
60
|
|
|
61
61
|
export { Modal as default };
|
package/esm/RadioGroup/Radio.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default from 'react';
|
|
2
2
|
import InputRadio from '../InputRadio/index.js';
|
|
3
3
|
|
|
4
4
|
var Radio = function Radio(_a) {
|
|
@@ -17,7 +17,7 @@ var Radio = function Radio(_a) {
|
|
|
17
17
|
_c = _a.disabled,
|
|
18
18
|
disabled = _c === void 0 ? false : _c,
|
|
19
19
|
testId = _a.testId;
|
|
20
|
-
return /*#__PURE__*/
|
|
20
|
+
return /*#__PURE__*/React__default.createElement(InputRadio, {
|
|
21
21
|
id: id,
|
|
22
22
|
value: value,
|
|
23
23
|
checked: checked,
|
package/esm/RadioGroup/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React__default, { memo } from 'react';
|
|
2
2
|
import classNames from 'classnames/bind';
|
|
3
3
|
import Radio from './Radio.js';
|
|
4
4
|
import styles from './RadioGroup.module.css';
|
|
@@ -18,7 +18,7 @@ var RadioGroup = /*#__PURE__*/memo(function (_a) {
|
|
|
18
18
|
disabled = _d === void 0 ? false : _d,
|
|
19
19
|
_e = _a.hasError,
|
|
20
20
|
hasError = _e === void 0 ? false : _e;
|
|
21
|
-
return /*#__PURE__*/
|
|
21
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
22
22
|
className: clx(styles.group, {
|
|
23
23
|
column: column,
|
|
24
24
|
wrapped: wrapped,
|
|
@@ -34,7 +34,7 @@ var RadioGroup = /*#__PURE__*/memo(function (_a) {
|
|
|
34
34
|
onMouseEnter = option.onMouseEnter,
|
|
35
35
|
optionClassName = option.className,
|
|
36
36
|
optionDisabled = option.disabled;
|
|
37
|
-
return /*#__PURE__*/
|
|
37
|
+
return /*#__PURE__*/React__default.createElement(Radio, {
|
|
38
38
|
key: optionVal,
|
|
39
39
|
id: id,
|
|
40
40
|
testId: id,
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface Props<T extends string> {
|
|
3
|
+
options: {
|
|
4
|
+
value: T;
|
|
5
|
+
label: React.ReactNode;
|
|
6
|
+
selected: boolean;
|
|
7
|
+
}[];
|
|
8
|
+
onChange: (value: T) => void;
|
|
9
|
+
}
|
|
10
|
+
declare const MenuOverlay: <T extends string>({ options, onChange }: Props<T>) => React.JSX.Element;
|
|
11
|
+
export default MenuOverlay;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import React__default, { useState, useRef, useCallback, useLayoutEffect } from 'react';
|
|
2
|
+
import classNames from 'classnames/bind';
|
|
3
|
+
import Menu from '../../../Menu/index.js';
|
|
4
|
+
import SelectItem from '../MenuOverlayItem/index.js';
|
|
5
|
+
import styles from './index.module.css';
|
|
6
|
+
|
|
7
|
+
var clx = classNames.bind(styles);
|
|
8
|
+
var OFFSET_ITEMS_COUNT = 2;
|
|
9
|
+
var MenuOverlay = function MenuOverlay(_a) {
|
|
10
|
+
var options = _a.options,
|
|
11
|
+
onChange = _a.onChange;
|
|
12
|
+
var _b = useState(),
|
|
13
|
+
selected = _b[0],
|
|
14
|
+
setSelected = _b[1];
|
|
15
|
+
var _c = useState({
|
|
16
|
+
top: 0,
|
|
17
|
+
height: 0
|
|
18
|
+
}),
|
|
19
|
+
scrollView = _c[0],
|
|
20
|
+
setScrollView = _c[1];
|
|
21
|
+
var listRef = useRef(null);
|
|
22
|
+
var rootRef = useRef(null);
|
|
23
|
+
var handleSelect = useCallback(function (option, key) {
|
|
24
|
+
onChange(option.value);
|
|
25
|
+
setSelected(key.split(" "));
|
|
26
|
+
}, [onChange]);
|
|
27
|
+
useLayoutEffect(function () {
|
|
28
|
+
if (!rootRef || !rootRef.current) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
rootRef.current.scrollTo({
|
|
32
|
+
top: scrollView.top - OFFSET_ITEMS_COUNT * scrollView.height
|
|
33
|
+
});
|
|
34
|
+
}, [scrollView, rootRef]);
|
|
35
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
36
|
+
ref: rootRef,
|
|
37
|
+
className: clx(styles.root)
|
|
38
|
+
}, /*#__PURE__*/React__default.createElement(Menu, {
|
|
39
|
+
ref: listRef,
|
|
40
|
+
selected: selected
|
|
41
|
+
}, options.map(function (option, index) {
|
|
42
|
+
return /*#__PURE__*/React__default.createElement(SelectItem, {
|
|
43
|
+
setScrollView: setScrollView,
|
|
44
|
+
option: option,
|
|
45
|
+
key: "item-".concat(index),
|
|
46
|
+
onClick: function onClick() {
|
|
47
|
+
return handleSelect(option, "item-".concat(index));
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
})));
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
export { MenuOverlay as default };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { Coordinates } from "../../index.props";
|
|
3
|
+
type SelectItemProps = {
|
|
4
|
+
option: {
|
|
5
|
+
value: string;
|
|
6
|
+
label: React.ReactNode;
|
|
7
|
+
selected: boolean;
|
|
8
|
+
};
|
|
9
|
+
onClick?: () => void;
|
|
10
|
+
setScrollView: (value: Coordinates) => void;
|
|
11
|
+
};
|
|
12
|
+
declare const SelectItem: ({ option, onClick, setScrollView }: SelectItemProps) => React.JSX.Element;
|
|
13
|
+
export default SelectItem;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import React__default, { useRef, useLayoutEffect } from 'react';
|
|
2
|
+
import MenuItem from '../../../Menu/components/MenuItem/index.js';
|
|
3
|
+
import Check from '../../../Icons/Check.js';
|
|
4
|
+
|
|
5
|
+
var SelectItem = function SelectItem(_a) {
|
|
6
|
+
var option = _a.option,
|
|
7
|
+
onClick = _a.onClick,
|
|
8
|
+
setScrollView = _a.setScrollView;
|
|
9
|
+
var ref = useRef(null);
|
|
10
|
+
function scrollToItem() {
|
|
11
|
+
if (!ref.current) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
var _a = ref.current,
|
|
15
|
+
offsetTop = _a.offsetTop,
|
|
16
|
+
offsetHeight = _a.offsetHeight;
|
|
17
|
+
setScrollView({
|
|
18
|
+
top: offsetTop,
|
|
19
|
+
height: offsetHeight
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
useLayoutEffect(function () {
|
|
23
|
+
if (option.selected) {
|
|
24
|
+
scrollToItem();
|
|
25
|
+
}
|
|
26
|
+
}, []);
|
|
27
|
+
return /*#__PURE__*/React__default.createElement(MenuItem, {
|
|
28
|
+
ref: ref,
|
|
29
|
+
onClick: onClick,
|
|
30
|
+
isSelected: option.selected
|
|
31
|
+
}, option.label, option.selected && /*#__PURE__*/React__default.createElement(Check, {
|
|
32
|
+
width: 16,
|
|
33
|
+
height: 16
|
|
34
|
+
}));
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export { SelectItem as default };
|
package/esm/Select/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { SelectProps } from "./index.props";
|
|
3
|
-
declare const Select: <T extends string
|
|
3
|
+
declare const Select: <T extends string>({ options, value, zIndex, label, hint, error, placeholder, disabled, fullWidth, onChange, }: SelectProps<T>) => React.JSX.Element;
|
|
4
4
|
export default Select;
|