@sima-land/ui-nucleons 45.0.0-alpha.52 → 45.0.0-alpha.53
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/dist/button/button-util.scss +2 -2
- package/dist/button/button.js +2 -2
- package/dist/button/button.js.map +1 -1
- package/dist/button/button.m.scss +20 -0
- package/dist/button/types.d.ts +4 -2
- package/dist/dropdown/utils.d.ts +4 -1
- package/dist/dropdown/utils.js +3 -1
- package/dist/dropdown/utils.js.map +1 -1
- package/dist/select/index.d.ts +2 -0
- package/dist/select/index.js +5 -1
- package/dist/select/index.js.map +1 -1
- package/dist/select/parts/button.d.ts +8 -0
- package/dist/select/parts/button.js +42 -0
- package/dist/select/parts/button.js.map +1 -0
- package/dist/select/parts/icon.d.ts +11 -0
- package/dist/select/parts/icon.js +33 -0
- package/dist/select/parts/icon.js.map +1 -0
- package/dist/select/parts/icon.m.scss +17 -0
- package/dist/select/select.js +10 -1
- package/dist/select/select.js.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/package.json +2 -2
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
@mixin color-primary {
|
|
25
|
-
--button-color: #
|
|
25
|
+
--button-color: #{colors.$basic-white};
|
|
26
26
|
--button-background: #{colors.$basic-blue};
|
|
27
27
|
--button-hover-background: #{colors.$additional-unlit-blue};
|
|
28
28
|
--button-disabled-color: #{colors.$basic-gray24};
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
@mixin color-success {
|
|
41
|
-
--button-color: #
|
|
41
|
+
--button-color: #{colors.$basic-white};
|
|
42
42
|
--button-background: #{colors.$additional-teal};
|
|
43
43
|
--button-hover-background: #{colors.$additional-dark-teal};
|
|
44
44
|
--button-disabled-color: #{colors.$basic-gray24};
|
package/dist/button/button.js
CHANGED
|
@@ -15,10 +15,10 @@ const cx = bind_1.default.bind(button_m_scss_1.default);
|
|
|
15
15
|
* @param props Свойства.
|
|
16
16
|
* @return Элемент.
|
|
17
17
|
*/
|
|
18
|
-
exports.Button = (0, react_1.forwardRef)(function Button({ viewType = 'primary', icon: Icon, iconPosition = 'start', size = 'm', loading, disabled, className, children, 'data-testid': testId = 'button', ...restProps }, ref) {
|
|
18
|
+
exports.Button = (0, react_1.forwardRef)(function Button({ viewType = 'primary', theme = 'light', icon: Icon, iconPosition = 'start', size = 'm', loading, disabled, className, children, 'data-testid': testId = 'button', ...restProps }, ref) {
|
|
19
19
|
const hasIcon = Boolean(Icon);
|
|
20
20
|
const hasText = Boolean(children);
|
|
21
|
-
const rootClassName = cx('root', `size-${size}`, viewType !== 'unset' && `view-${viewType}`, loading && 'loading', disabled && 'disabled', hasIcon && !hasText && 'icon-only', hasText && hasIcon && iconPosition === 'start' && 'icon-start', hasText && hasIcon && iconPosition === 'end' && 'icon-end', className);
|
|
21
|
+
const rootClassName = cx('root', `size-${size}`, viewType !== 'unset' && `view-${viewType}`, theme !== 'unset' && `theme-${theme}`, loading && 'loading', disabled && 'disabled', hasIcon && !hasText && 'icon-only', hasText && hasIcon && iconPosition === 'start' && 'icon-start', hasText && hasIcon && iconPosition === 'end' && 'icon-end', className);
|
|
22
22
|
const spinnerColor = (0, react_1.useMemo)(() => {
|
|
23
23
|
if (disabled) {
|
|
24
24
|
return 'basic-gray38';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/button/button.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/button/button.tsx"],"names":[],"mappings":"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"}
|
|
@@ -88,18 +88,38 @@
|
|
|
88
88
|
// view variants
|
|
89
89
|
.view-primary {
|
|
90
90
|
@include button-util.color-primary;
|
|
91
|
+
&.theme-dark {
|
|
92
|
+
--button-hover-background: #{colors.$additional-deep-blue};
|
|
93
|
+
--button-disabled-background: #{colors.$basic-gray76};
|
|
94
|
+
--button-disabled-color: #{colors.$basic-gray54};
|
|
95
|
+
}
|
|
91
96
|
}
|
|
92
97
|
|
|
93
98
|
.view-secondary {
|
|
94
99
|
@include button-util.color-secondary;
|
|
100
|
+
&.theme-dark {
|
|
101
|
+
--button-color: #{colors.$basic-white};
|
|
102
|
+
--button-background: #{colors.$basic-gray76};
|
|
103
|
+
--button-hover-background: #{colors.$basic-gray66};
|
|
104
|
+
--button-disabled-background: #{colors.$basic-gray76};
|
|
105
|
+
--button-disabled-color: #{colors.$basic-gray54};
|
|
106
|
+
}
|
|
95
107
|
}
|
|
96
108
|
|
|
97
109
|
.view-success {
|
|
98
110
|
@include button-util.color-success;
|
|
111
|
+
&.theme-dark {
|
|
112
|
+
--button-disabled-background: #{colors.$basic-gray76};
|
|
113
|
+
--button-disabled-color: #{colors.$basic-gray54};
|
|
114
|
+
}
|
|
99
115
|
}
|
|
100
116
|
|
|
101
117
|
.view-info {
|
|
102
118
|
@include button-util.color-info;
|
|
119
|
+
&.theme-dark {
|
|
120
|
+
--button-disabled-background: #{colors.$basic-gray76};
|
|
121
|
+
--button-disabled-color: #{colors.$basic-gray54};
|
|
122
|
+
}
|
|
103
123
|
}
|
|
104
124
|
|
|
105
125
|
// icons
|
package/dist/button/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { AnchorHTMLAttributes, ButtonHTMLAttributes, CSSProperties, ElementType, HTMLAttributes, SVGAttributes } from 'react';
|
|
2
|
-
import type { WithTestId } from '../types';
|
|
2
|
+
import type { Theme, WithTestId } from '../types';
|
|
3
3
|
export type ButtonSize = 'xs' | 's' | 'm';
|
|
4
4
|
export type ButtonViewType = 'primary' | 'secondary' | 'success' | 'info' | 'unset';
|
|
5
5
|
export type ButtonAppearance = 'button' | 'link' | 'container';
|
|
@@ -12,9 +12,11 @@ export interface ButtonStyle extends CSSProperties {
|
|
|
12
12
|
'--button-disabled-color'?: string;
|
|
13
13
|
'--button-disabled-background'?: string;
|
|
14
14
|
}
|
|
15
|
-
interface CommonProps<T extends ButtonAppearance = ButtonAppearance> extends WithTestId {
|
|
15
|
+
export interface CommonProps<T extends ButtonAppearance = ButtonAppearance> extends WithTestId {
|
|
16
16
|
/** Определяет внешний вид кнопки. */
|
|
17
17
|
viewType?: ButtonViewType;
|
|
18
|
+
/** Тема. */
|
|
19
|
+
theme?: Theme;
|
|
18
20
|
/** Определяет тип корневого элемента. */
|
|
19
21
|
appearance?: T;
|
|
20
22
|
/** Иконка. */
|
package/dist/dropdown/utils.d.ts
CHANGED
|
@@ -2,9 +2,12 @@ import { RefObject } from 'react';
|
|
|
2
2
|
import { autoUpdate, UseFloatingReturn } from '@floating-ui/react';
|
|
3
3
|
/**
|
|
4
4
|
* Возвращает конфигурацию для `useFloating` по дизайн-гайдам.
|
|
5
|
+
* @param options Опции.
|
|
5
6
|
* @return Конфигурация для `useFloating` по дизайн-гайдам.
|
|
6
7
|
*/
|
|
7
|
-
export declare function dropdownFloatingConfig(
|
|
8
|
+
export declare function dropdownFloatingConfig(options?: {
|
|
9
|
+
offset?: number;
|
|
10
|
+
}): {
|
|
8
11
|
whileElementsMounted: typeof autoUpdate;
|
|
9
12
|
placement: "bottom-start";
|
|
10
13
|
middleware: {
|
package/dist/dropdown/utils.js
CHANGED
|
@@ -10,13 +10,15 @@ const context_1 = require("../context");
|
|
|
10
10
|
const helpers_1 = require("../helpers");
|
|
11
11
|
/**
|
|
12
12
|
* Возвращает конфигурацию для `useFloating` по дизайн-гайдам.
|
|
13
|
+
* @param options Опции.
|
|
13
14
|
* @return Конфигурация для `useFloating` по дизайн-гайдам.
|
|
14
15
|
*/
|
|
15
|
-
function dropdownFloatingConfig() {
|
|
16
|
+
function dropdownFloatingConfig(options) {
|
|
16
17
|
return {
|
|
17
18
|
whileElementsMounted: react_2.autoUpdate,
|
|
18
19
|
placement: 'bottom-start',
|
|
19
20
|
middleware: [
|
|
21
|
+
(0, react_2.offset)(options?.offset ?? 0),
|
|
20
22
|
// @todo в будущем с дизайнерами можем решить использовать autoPlacement
|
|
21
23
|
// но есть сложности: https://github.com/floating-ui/floating-ui/discussions/2155
|
|
22
24
|
(0, react_2.flip)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/dropdown/utils.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/dropdown/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/select/index.d.ts
CHANGED
|
@@ -2,3 +2,5 @@ export type { SelectProps, SelectStyle } from './types';
|
|
|
2
2
|
export { Select } from './select';
|
|
3
3
|
export { SelectFieldBlock } from './parts/field-block';
|
|
4
4
|
export { SelectTextButton } from './parts/text-button';
|
|
5
|
+
export { SelectButton } from './parts/button';
|
|
6
|
+
export { SelectIcon } from './parts/icon';
|
package/dist/select/index.js
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SelectTextButton = exports.SelectFieldBlock = exports.Select = void 0;
|
|
3
|
+
exports.SelectIcon = exports.SelectButton = exports.SelectTextButton = exports.SelectFieldBlock = exports.Select = void 0;
|
|
4
4
|
var select_1 = require("./select");
|
|
5
5
|
Object.defineProperty(exports, "Select", { enumerable: true, get: function () { return select_1.Select; } });
|
|
6
6
|
var field_block_1 = require("./parts/field-block");
|
|
7
7
|
Object.defineProperty(exports, "SelectFieldBlock", { enumerable: true, get: function () { return field_block_1.SelectFieldBlock; } });
|
|
8
8
|
var text_button_1 = require("./parts/text-button");
|
|
9
9
|
Object.defineProperty(exports, "SelectTextButton", { enumerable: true, get: function () { return text_button_1.SelectTextButton; } });
|
|
10
|
+
var button_1 = require("./parts/button");
|
|
11
|
+
Object.defineProperty(exports, "SelectButton", { enumerable: true, get: function () { return button_1.SelectButton; } });
|
|
12
|
+
var icon_1 = require("./parts/icon");
|
|
13
|
+
Object.defineProperty(exports, "SelectIcon", { enumerable: true, get: function () { return icon_1.SelectIcon; } });
|
|
10
14
|
//# sourceMappingURL=index.js.map
|
package/dist/select/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/select/index.ts"],"names":[],"mappings":";;;AACA,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,mDAAuD;AAA9C,+GAAA,gBAAgB,OAAA;AACzB,mDAAuD;AAA9C,+GAAA,gBAAgB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/select/index.ts"],"names":[],"mappings":";;;AACA,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,mDAAuD;AAA9C,+GAAA,gBAAgB,OAAA;AACzB,mDAAuD;AAA9C,+GAAA,gBAAgB,OAAA;AACzB,yCAA8C;AAArC,sGAAA,YAAY,OAAA;AACrB,qCAA0C;AAAjC,kGAAA,UAAU,OAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* "Открывашка" для Select в виде кнопки.
|
|
3
|
+
* @param props Свойства.
|
|
4
|
+
* @return Элемент.
|
|
5
|
+
*/
|
|
6
|
+
export declare const SelectButton: import("react").ForwardRefExoticComponent<import("../../button/types").CommonProps<import("../../button").ButtonAppearance> & Omit<import("react").ButtonHTMLAttributes<HTMLButtonElement>, keyof import("../../button/types").CommonProps<import("../../button").ButtonAppearance>> & {
|
|
7
|
+
appearance?: "button";
|
|
8
|
+
} & import("react").RefAttributes<HTMLButtonElement>>;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SelectButton = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const react_1 = require("react");
|
|
6
|
+
const utils_1 = require("../utils");
|
|
7
|
+
const button_1 = require("../../button");
|
|
8
|
+
const helpers_1 = require("../../helpers");
|
|
9
|
+
/**
|
|
10
|
+
* "Открывашка" для Select в виде кнопки.
|
|
11
|
+
* @param props Свойства.
|
|
12
|
+
* @return Элемент.
|
|
13
|
+
*/
|
|
14
|
+
exports.SelectButton = (0, react_1.forwardRef)(function SelectButton({ children, onMouseDown, onKeyDown, ...restProps }, ref) {
|
|
15
|
+
const { selectProps, currentValue, menuOpen, setMenuOpen, setOpenerElement, setAnchorElement } = (0, react_1.useContext)(utils_1.SelectContext);
|
|
16
|
+
const { label, disabled, renderValue = v => v } = selectProps;
|
|
17
|
+
const mergedRef = (0, react_1.useMemo)(() => (0, helpers_1.mergeRefs)([ref, setOpenerElement, setAnchorElement]), [ref, setOpenerElement, setAnchorElement]);
|
|
18
|
+
const handleMouseDown = (0, react_1.useCallback)(event => {
|
|
19
|
+
onMouseDown?.(event);
|
|
20
|
+
if (disabled || event.defaultPrevented) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
// ВАЖНО: предотвращаем фокус
|
|
24
|
+
!menuOpen && event.preventDefault();
|
|
25
|
+
setMenuOpen(a => !a);
|
|
26
|
+
}, [onMouseDown, disabled, menuOpen, setMenuOpen]);
|
|
27
|
+
const handleKeyDown = (0, react_1.useCallback)(event => {
|
|
28
|
+
onKeyDown?.(event);
|
|
29
|
+
if (disabled || event.defaultPrevented) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
switch (event.code) {
|
|
33
|
+
case 'Enter':
|
|
34
|
+
case 'ArrowUp':
|
|
35
|
+
case 'ArrowDown':
|
|
36
|
+
setMenuOpen(true);
|
|
37
|
+
break;
|
|
38
|
+
}
|
|
39
|
+
}, [onKeyDown, disabled, setMenuOpen]);
|
|
40
|
+
return ((0, jsx_runtime_1.jsx)(button_1.Button, { ...restProps, ref: mergedRef, disabled: disabled, onMouseDown: handleMouseDown, onKeyDown: handleKeyDown, children: children ?? (renderValue(currentValue) || label) }));
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/select/parts/button.tsx"],"names":[],"mappings":";;;;AAAA,iCAOe;AACf,oCAAyC;AACzC,yCAAmD;AACnD,2CAA0C;AAI1C;;;;GAIG;AACU,QAAA,YAAY,GAAG,IAAA,kBAAU,EAAuC,SAAS,YAAY,CAChG,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,EAClD,GAAG;IAEH,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,GAC5F,IAAA,kBAAU,EAAC,qBAAa,CAAC,CAAC;IAE5B,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC;IAE9D,MAAM,SAAS,GAAG,IAAA,eAAO,EACvB,GAAG,EAAE,CAAC,IAAA,mBAAS,EAAoB,CAAC,GAAG,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,EAC7E,CAAC,GAAG,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAC1C,CAAC;IAEF,MAAM,eAAe,GAAyC,IAAA,mBAAW,EACvE,KAAK,CAAC,EAAE;QACN,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC;QAErB,IAAI,QAAQ,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YACvC,OAAO;QACT,CAAC;QAED,6BAA6B;QAC7B,CAAC,QAAQ,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;QAEpC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC,EACD,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAC/C,CAAC;IAEF,MAAM,aAAa,GAA4C,IAAA,mBAAW,EACxE,KAAK,CAAC,EAAE;QACN,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC;QAEnB,IAAI,QAAQ,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YACvC,OAAO;QACT,CAAC;QAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,OAAO,CAAC;YACb,KAAK,SAAS,CAAC;YACf,KAAK,WAAW;gBACd,WAAW,CAAC,IAAI,CAAC,CAAC;gBAClB,MAAM;QACV,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC,CACnC,CAAC;IAEF,OAAO,CACL,uBAAC,eAAM,OACD,SAAS,EACb,GAAG,EAAE,SAAS,EACd,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,eAAe,EAC5B,SAAS,EAAE,aAAa,YAEvB,QAAQ,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,GAC1C,CACV,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ElementType, SVGAttributes } from 'react';
|
|
2
|
+
export interface SelectIconProps extends SVGAttributes<SVGSVGElement> {
|
|
3
|
+
/** Компонент иконки. */
|
|
4
|
+
icon: ElementType<SVGAttributes<SVGSVGElement>>;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* "Открывашка" для Select в виде простой иконки.
|
|
8
|
+
* @param props Свойства.
|
|
9
|
+
* @return Элемент.
|
|
10
|
+
*/
|
|
11
|
+
export declare function SelectIcon({ icon: Icon, ...restProps }: SelectIconProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.SelectIcon = SelectIcon;
|
|
7
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
|
+
const react_1 = require("react");
|
|
9
|
+
const utils_1 = require("../utils");
|
|
10
|
+
const helpers_1 = require("../../helpers");
|
|
11
|
+
const icon_m_scss_1 = __importDefault(require("./icon.m.scss"));
|
|
12
|
+
const classnames_1 = __importDefault(require("classnames"));
|
|
13
|
+
/**
|
|
14
|
+
* "Открывашка" для Select в виде простой иконки.
|
|
15
|
+
* @param props Свойства.
|
|
16
|
+
* @return Элемент.
|
|
17
|
+
*/
|
|
18
|
+
function SelectIcon({ icon: Icon, ...restProps }) {
|
|
19
|
+
const { selectProps, menuOpen, setMenuOpen, setOpenerElement, setAnchorElement } = (0, react_1.useContext)(utils_1.SelectContext);
|
|
20
|
+
const { disabled, failed } = selectProps;
|
|
21
|
+
const mergedRef = (0, react_1.useMemo)(() => (0, helpers_1.mergeRefs)([setOpenerElement, setAnchorElement]), [setOpenerElement, setAnchorElement]);
|
|
22
|
+
const handleClick = (0, react_1.useCallback)((event) => {
|
|
23
|
+
restProps.onClick?.(event);
|
|
24
|
+
if (disabled || event.defaultPrevented)
|
|
25
|
+
return;
|
|
26
|
+
setMenuOpen(!menuOpen);
|
|
27
|
+
}, [restProps.onClick, disabled, menuOpen]);
|
|
28
|
+
return ((0, jsx_runtime_1.jsx)(Icon, { ...restProps, ref: mergedRef, className: (0, classnames_1.default)(icon_m_scss_1.default.icon, {
|
|
29
|
+
[icon_m_scss_1.default.disabled]: disabled,
|
|
30
|
+
[icon_m_scss_1.default.failed]: failed,
|
|
31
|
+
}), onClick: handleClick }));
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icon.js","sourceRoot":"","sources":["../../../src/select/parts/icon.tsx"],"names":[],"mappings":";;;;;AAwBA,gCA+BC;;AAvDD,iCAQe;AACf,oCAAyC;AACzC,2CAA0C;AAC1C,gEAAmC;AACnC,4DAA4B;AAO5B;;;;GAIG;AACH,SAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,SAAS,EAAmB;IACtE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,GAC9E,IAAA,kBAAU,EAAC,qBAAa,CAAC,CAAC;IAE5B,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC;IAEzC,MAAM,SAAS,GAAG,IAAA,eAAO,EACvB,GAAG,EAAE,CAAC,IAAA,mBAAS,EAAc,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAuB,EACxF,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CACrC,CAAC;IAEF,MAAM,WAAW,GAAG,IAAA,mBAAW,EAC7B,CAAC,KAAgC,EAAE,EAAE;QACnC,SAAS,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,QAAQ,IAAI,KAAK,CAAC,gBAAgB;YAAE,OAAO;QAC/C,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC,EACD,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CACxC,CAAC;IAEF,OAAO,CACL,uBAAC,IAAI,OACC,SAAS,EACb,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,IAAA,oBAAE,EAAC,qBAAM,CAAC,IAAI,EAAE;YACzB,CAAC,qBAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ;YAC3B,CAAC,qBAAM,CAAC,MAAM,CAAC,EAAE,MAAM;SACxB,CAAC,EACF,OAAO,EAAE,WAAW,GACpB,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
@use '../../colors';
|
|
2
|
+
|
|
3
|
+
.icon {
|
|
4
|
+
cursor: pointer;
|
|
5
|
+
color: var(--select-icon-color);
|
|
6
|
+
fill: currentColor;
|
|
7
|
+
--select-icon-color: #{colors.$basic-gray87};
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.icon.disabled {
|
|
11
|
+
cursor: default;
|
|
12
|
+
--select-icon-color: #{colors.$basic-gray24};
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.icon.failed {
|
|
16
|
+
--select-icon-color: #{colors.$additional-deep-red};
|
|
17
|
+
}
|
package/dist/select/select.js
CHANGED
|
@@ -9,6 +9,8 @@ const menu_1 = require("./parts/menu");
|
|
|
9
9
|
const react_2 = require("@floating-ui/react");
|
|
10
10
|
const dropdown_1 = require("../dropdown");
|
|
11
11
|
const hooks_1 = require("../hooks");
|
|
12
|
+
const text_button_1 = require("./parts/text-button");
|
|
13
|
+
const icon_1 = require("./parts/icon");
|
|
12
14
|
/**
|
|
13
15
|
* Поле выбора из списка.
|
|
14
16
|
* @param props Свойства.
|
|
@@ -16,13 +18,20 @@ const hooks_1 = require("../hooks");
|
|
|
16
18
|
*/
|
|
17
19
|
function Select(props) {
|
|
18
20
|
const { opener = (0, jsx_runtime_1.jsx)(field_block_1.SelectFieldBlock, {}), menu = (0, jsx_runtime_1.jsx)(menu_1.SelectMenu, {}), value, defaultValue, onValueChange, } = props;
|
|
21
|
+
const offsetValue = (0, react_1.useMemo)(() => {
|
|
22
|
+
const type = opener.type;
|
|
23
|
+
return type === text_button_1.SelectTextButton || type === icon_1.SelectIcon ? 4 : 0;
|
|
24
|
+
}, [opener]);
|
|
19
25
|
// @todo по аналогии с <select /> надо проверять, есть ли значение в списке переданных
|
|
20
26
|
const [currentValue, setCurrentValue] = (0, react_1.useState)(() => value ?? defaultValue ?? '');
|
|
21
27
|
const [menuOpen, setMenuOpen] = (0, react_1.useState)(false);
|
|
22
28
|
const [openerElement, setOpenerElement] = (0, react_1.useState)(null);
|
|
23
29
|
const [anchorElement, setAnchorElement] = (0, react_1.useState)(null);
|
|
24
30
|
const [menuElement, setMenuElement] = (0, react_1.useState)(null);
|
|
25
|
-
const menuFloating = (0, react_2.useFloating)({
|
|
31
|
+
const menuFloating = (0, react_2.useFloating)({
|
|
32
|
+
open: menuOpen,
|
|
33
|
+
...(0, dropdown_1.dropdownFloatingConfig)({ offset: offsetValue }),
|
|
34
|
+
});
|
|
26
35
|
const { setReference, setFloating } = menuFloating.refs;
|
|
27
36
|
const menuFloatingStyle = (0, dropdown_1.useDropdownFloatingStyle)(menuFloating);
|
|
28
37
|
(0, hooks_1.useIsomorphicLayoutEffect)(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/select/select.tsx"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/select/select.tsx"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -16,3 +16,4 @@ export interface FieldProps {
|
|
|
16
16
|
/** Свойства компонента поля переключателя (input[type="checkbox"]). */
|
|
17
17
|
export interface CheckboxInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type'>, FieldProps, WithTestId {
|
|
18
18
|
}
|
|
19
|
+
export type Theme = 'light' | 'dark' | 'unset';
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sima-land/ui-nucleons",
|
|
3
3
|
"type": "commonjs",
|
|
4
|
-
"version": "45.0.0-alpha.
|
|
4
|
+
"version": "45.0.0-alpha.53",
|
|
5
5
|
"author": "www.sima-land.ru team",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"engines": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"focus-trap": "^7.2.0",
|
|
32
32
|
"overlayscrollbars": "^2.8.0",
|
|
33
33
|
"overlayscrollbars-react": "^0.5.6",
|
|
34
|
-
"react-transition-state": "^2.
|
|
34
|
+
"react-transition-state": "^2.3.3",
|
|
35
35
|
"redux": "^4.2.0"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|