@salutejs/plasma-new-hope 0.325.0-canary.1986.15254197327.0 → 0.325.0-canary.1992.15255012441.0
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/cjs/components/Combobox/ComboboxNew/Combobox.css +51 -55
- package/cjs/components/Combobox/ComboboxNew/Combobox.js +1 -5
- package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +1 -8
- package/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.styles.js +1 -1
- package/cjs/components/Pagination/Pagination.css +51 -55
- package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +51 -55
- package/cjs/components/Select/Select.css +51 -55
- package/cjs/components/Select/Select.js +1 -5
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/Select.tokens.js +0 -7
- package/cjs/components/Select/Select.tokens.js.map +1 -1
- package/cjs/components/Select/ui/Inner/ui/Item/Item.styles.js +1 -1
- package/cjs/components/Table/Table.css +28 -32
- package/cjs/components/Table/ui/Cell/Cell.css +28 -32
- package/cjs/components/Table/ui/EditableCell/EditableCell.css +28 -32
- package/cjs/components/Table/ui/HeadCell/HeadCell.css +28 -32
- package/cjs/components/Table/ui/HeadCell/ui/Filter/Filter.css +28 -32
- package/cjs/index.css +11 -19
- package/emotion/cjs/components/Combobox/Combobox.template-doc.mdx +0 -58
- package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +1 -4
- package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +1 -8
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/index.js +0 -11
- package/emotion/cjs/components/Select/Select.js +1 -4
- package/emotion/cjs/components/Select/Select.template-doc.mdx +0 -58
- package/emotion/cjs/components/Select/Select.tokens.js +0 -7
- package/emotion/cjs/components/Select/ui/index.js +0 -11
- package/emotion/cjs/examples/plasma_b2c/components/Combobox/Combobox.config.js +15 -15
- package/emotion/cjs/examples/plasma_b2c/components/Combobox/Combobox.js +2 -13
- package/emotion/cjs/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -186
- package/emotion/cjs/examples/plasma_b2c/components/Select/Select.config.js +24 -24
- package/emotion/cjs/examples/plasma_b2c/components/Select/Select.stories.tsx +0 -186
- package/emotion/cjs/examples/plasma_web/components/Combobox/Combobox.config.js +15 -15
- package/emotion/cjs/examples/plasma_web/components/Combobox/Combobox.js +2 -12
- package/emotion/cjs/examples/plasma_web/components/Combobox/Combobox.stories.tsx +1 -188
- package/emotion/cjs/examples/plasma_web/components/Select/Select.config.js +24 -24
- package/emotion/cjs/examples/plasma_web/components/Select/Select.stories.tsx +0 -186
- package/emotion/es/components/Combobox/Combobox.template-doc.mdx +0 -58
- package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +2 -5
- package/emotion/es/components/Combobox/ComboboxNew/Combobox.tokens.js +1 -8
- package/emotion/es/components/Combobox/ComboboxNew/ui/index.js +1 -2
- package/emotion/es/components/Select/Select.js +2 -5
- package/emotion/es/components/Select/Select.template-doc.mdx +0 -58
- package/emotion/es/components/Select/Select.tokens.js +0 -7
- package/emotion/es/components/Select/ui/index.js +1 -2
- package/emotion/es/examples/plasma_b2c/components/Combobox/Combobox.config.js +15 -15
- package/emotion/es/examples/plasma_b2c/components/Combobox/Combobox.js +2 -10
- package/emotion/es/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -186
- package/emotion/es/examples/plasma_b2c/components/Select/Select.config.js +24 -24
- package/emotion/es/examples/plasma_b2c/components/Select/Select.stories.tsx +0 -186
- package/emotion/es/examples/plasma_web/components/Combobox/Combobox.config.js +15 -15
- package/emotion/es/examples/plasma_web/components/Combobox/Combobox.js +3 -10
- package/emotion/es/examples/plasma_web/components/Combobox/Combobox.stories.tsx +1 -188
- package/emotion/es/examples/plasma_web/components/Select/Select.config.js +24 -24
- package/emotion/es/examples/plasma_web/components/Select/Select.stories.tsx +0 -186
- package/es/components/Combobox/ComboboxNew/Combobox.css +51 -55
- package/es/components/Combobox/ComboboxNew/Combobox.js +1 -5
- package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/Combobox.tokens.js +1 -8
- package/es/components/Combobox/ComboboxNew/Combobox.tokens.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.styles.js +1 -1
- package/es/components/Pagination/Pagination.css +51 -55
- package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +51 -55
- package/es/components/Select/Select.css +51 -55
- package/es/components/Select/Select.js +1 -5
- package/es/components/Select/Select.js.map +1 -1
- package/es/components/Select/Select.tokens.js +0 -7
- package/es/components/Select/Select.tokens.js.map +1 -1
- package/es/components/Select/ui/Inner/ui/Item/Item.styles.js +1 -1
- package/es/components/Table/Table.css +28 -32
- package/es/components/Table/ui/Cell/Cell.css +28 -32
- package/es/components/Table/ui/EditableCell/EditableCell.css +28 -32
- package/es/components/Table/ui/HeadCell/HeadCell.css +28 -32
- package/es/components/Table/ui/HeadCell/ui/Filter/Filter.css +28 -32
- package/es/index.css +11 -19
- package/package.json +2 -2
- package/styled-components/cjs/components/Combobox/Combobox.template-doc.mdx +0 -58
- package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +1 -4
- package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +1 -8
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/index.js +0 -11
- package/styled-components/cjs/components/Select/Select.js +1 -4
- package/styled-components/cjs/components/Select/Select.template-doc.mdx +0 -58
- package/styled-components/cjs/components/Select/Select.tokens.js +0 -7
- package/styled-components/cjs/components/Select/ui/index.js +0 -11
- package/styled-components/cjs/examples/plasma_b2c/components/Combobox/Combobox.config.js +8 -8
- package/styled-components/cjs/examples/plasma_b2c/components/Combobox/Combobox.js +2 -13
- package/styled-components/cjs/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -186
- package/styled-components/cjs/examples/plasma_b2c/components/Select/Select.config.js +14 -14
- package/styled-components/cjs/examples/plasma_b2c/components/Select/Select.stories.tsx +0 -186
- package/styled-components/cjs/examples/plasma_web/components/Combobox/Combobox.config.js +8 -8
- package/styled-components/cjs/examples/plasma_web/components/Combobox/Combobox.js +2 -12
- package/styled-components/cjs/examples/plasma_web/components/Combobox/Combobox.stories.tsx +1 -188
- package/styled-components/cjs/examples/plasma_web/components/Select/Select.config.js +14 -14
- package/styled-components/cjs/examples/plasma_web/components/Select/Select.stories.tsx +0 -186
- package/styled-components/es/components/Combobox/Combobox.template-doc.mdx +0 -58
- package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +2 -5
- package/styled-components/es/components/Combobox/ComboboxNew/Combobox.tokens.js +1 -8
- package/styled-components/es/components/Combobox/ComboboxNew/ui/index.js +1 -2
- package/styled-components/es/components/Select/Select.js +2 -5
- package/styled-components/es/components/Select/Select.template-doc.mdx +0 -58
- package/styled-components/es/components/Select/Select.tokens.js +0 -7
- package/styled-components/es/components/Select/ui/index.js +1 -2
- package/styled-components/es/examples/plasma_b2c/components/Combobox/Combobox.config.js +8 -8
- package/styled-components/es/examples/plasma_b2c/components/Combobox/Combobox.js +2 -10
- package/styled-components/es/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +0 -186
- package/styled-components/es/examples/plasma_b2c/components/Select/Select.config.js +14 -14
- package/styled-components/es/examples/plasma_b2c/components/Select/Select.stories.tsx +0 -186
- package/styled-components/es/examples/plasma_web/components/Combobox/Combobox.config.js +8 -8
- package/styled-components/es/examples/plasma_web/components/Combobox/Combobox.js +3 -10
- package/styled-components/es/examples/plasma_web/components/Combobox/Combobox.stories.tsx +1 -188
- package/styled-components/es/examples/plasma_web/components/Select/Select.config.js +14 -14
- package/styled-components/es/examples/plasma_web/components/Select/Select.stories.tsx +0 -186
- package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.tokens.d.ts +0 -7
- package/types/components/Combobox/ComboboxNew/Combobox.tokens.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +0 -11
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/ui/index.d.ts +0 -1
- package/types/components/Combobox/ComboboxNew/ui/index.d.ts.map +1 -1
- package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +0 -3
- package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts.map +1 -1
- package/types/components/Select/Select.d.ts.map +1 -1
- package/types/components/Select/Select.tokens.d.ts +0 -7
- package/types/components/Select/Select.tokens.d.ts.map +1 -1
- package/types/components/Select/Select.types.d.ts +0 -12
- package/types/components/Select/Select.types.d.ts.map +1 -1
- package/types/components/Select/ui/index.d.ts +0 -1
- package/types/components/Select/ui/index.d.ts.map +1 -1
- package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts +0 -3
- package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.css +0 -56
- package/cjs/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.js +0 -44
- package/cjs/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.js.map +0 -1
- package/cjs/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles.js +0 -53
- package/cjs/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles.js.map +0 -1
- package/cjs/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles_1bpknuo.css +0 -3
- package/cjs/components/Select/ui/SelectAll/SelectAll.css +0 -54
- package/cjs/components/Select/ui/SelectAll/SelectAll.js +0 -44
- package/cjs/components/Select/ui/SelectAll/SelectAll.js.map +0 -1
- package/cjs/components/Select/ui/SelectAll/SelectAll.styles.js +0 -53
- package/cjs/components/Select/ui/SelectAll/SelectAll.styles.js.map +0 -1
- package/cjs/components/Select/ui/SelectAll/SelectAll.styles_iii1q7.css +0 -3
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.js +0 -39
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles.js +0 -30
- package/emotion/cjs/components/Select/ui/SelectAll/SelectAll.js +0 -39
- package/emotion/cjs/components/Select/ui/SelectAll/SelectAll.styles.js +0 -30
- package/emotion/es/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.js +0 -32
- package/emotion/es/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles.js +0 -23
- package/emotion/es/components/Select/ui/SelectAll/SelectAll.js +0 -32
- package/emotion/es/components/Select/ui/SelectAll/SelectAll.styles.js +0 -23
- package/es/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.css +0 -56
- package/es/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.js +0 -36
- package/es/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.js.map +0 -1
- package/es/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles.js +0 -47
- package/es/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles.js.map +0 -1
- package/es/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles_1bpknuo.css +0 -3
- package/es/components/Select/ui/SelectAll/SelectAll.css +0 -54
- package/es/components/Select/ui/SelectAll/SelectAll.js +0 -36
- package/es/components/Select/ui/SelectAll/SelectAll.js.map +0 -1
- package/es/components/Select/ui/SelectAll/SelectAll.styles.js +0 -47
- package/es/components/Select/ui/SelectAll/SelectAll.styles.js.map +0 -1
- package/es/components/Select/ui/SelectAll/SelectAll.styles_iii1q7.css +0 -3
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.js +0 -39
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles.js +0 -27
- package/styled-components/cjs/components/Select/ui/SelectAll/SelectAll.js +0 -39
- package/styled-components/cjs/components/Select/ui/SelectAll/SelectAll.styles.js +0 -27
- package/styled-components/es/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.js +0 -32
- package/styled-components/es/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles.js +0 -20
- package/styled-components/es/components/Select/ui/SelectAll/SelectAll.js +0 -32
- package/styled-components/es/components/Select/ui/SelectAll/SelectAll.styles.js +0 -20
- package/types/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.d.ts +0 -7
- package/types/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.d.ts.map +0 -1
- package/types/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles.d.ts +0 -11
- package/types/components/Combobox/ComboboxNew/ui/SelectAll/SelectAll.styles.d.ts.map +0 -1
- package/types/components/Select/ui/SelectAll/SelectAll.d.ts +0 -7
- package/types/components/Select/ui/SelectAll/SelectAll.d.ts.map +0 -1
- package/types/components/Select/ui/SelectAll/SelectAll.styles.d.ts +0 -11
- package/types/components/Select/ui/SelectAll/SelectAll.styles.d.ts.map +0 -1
@@ -13,8 +13,6 @@ import { Select } from './Select';
|
|
13
13
|
type StorySelectProps = ComponentProps<typeof Select> & {
|
14
14
|
enableContentLeft?: boolean;
|
15
15
|
hasHint?: boolean;
|
16
|
-
selectAllLabel?: string;
|
17
|
-
selectAllSticky?: boolean;
|
18
16
|
};
|
19
17
|
|
20
18
|
const view = ['default', 'accent', 'secondary', 'clear', 'positive', 'warning', 'negative', 'dark', 'black', 'white'];
|
@@ -999,187 +997,3 @@ export const Common: StoryObj<StorySelectProps> = {
|
|
999
997
|
},
|
1000
998
|
render: (args) => <CommonStory {...args} />,
|
1001
999
|
};
|
1002
|
-
|
1003
|
-
const flatItems = [
|
1004
|
-
{
|
1005
|
-
value: 'north_america',
|
1006
|
-
label: 'Северная Америка',
|
1007
|
-
},
|
1008
|
-
{
|
1009
|
-
value: 'rio_de_janeiro',
|
1010
|
-
label: 'Рио-де-Жанейро',
|
1011
|
-
},
|
1012
|
-
{
|
1013
|
-
value: 'sao_paulo',
|
1014
|
-
label: 'Сан-Паулу',
|
1015
|
-
},
|
1016
|
-
{
|
1017
|
-
value: 'buenos_aires',
|
1018
|
-
label: 'Буэнос-Айрес',
|
1019
|
-
},
|
1020
|
-
{
|
1021
|
-
value: 'cordoba',
|
1022
|
-
label: 'Кордова',
|
1023
|
-
},
|
1024
|
-
{
|
1025
|
-
value: 'bogota',
|
1026
|
-
label: 'Богота',
|
1027
|
-
},
|
1028
|
-
{
|
1029
|
-
value: 'medellin',
|
1030
|
-
label: 'Медельин',
|
1031
|
-
},
|
1032
|
-
{
|
1033
|
-
value: 'paris',
|
1034
|
-
label: 'Париж',
|
1035
|
-
},
|
1036
|
-
{
|
1037
|
-
value: 'lyon',
|
1038
|
-
label: 'Лион',
|
1039
|
-
},
|
1040
|
-
{
|
1041
|
-
value: 'berlin',
|
1042
|
-
label: 'Берлин',
|
1043
|
-
},
|
1044
|
-
{
|
1045
|
-
value: 'munich',
|
1046
|
-
label: 'Мюнхен',
|
1047
|
-
},
|
1048
|
-
{
|
1049
|
-
value: 'rome',
|
1050
|
-
label: 'Рим',
|
1051
|
-
},
|
1052
|
-
{
|
1053
|
-
value: 'milan',
|
1054
|
-
label: 'Милан',
|
1055
|
-
},
|
1056
|
-
{
|
1057
|
-
value: 'madrid',
|
1058
|
-
label: 'Мадрид',
|
1059
|
-
},
|
1060
|
-
{
|
1061
|
-
value: 'barcelona',
|
1062
|
-
label: 'Барселона',
|
1063
|
-
},
|
1064
|
-
{
|
1065
|
-
value: 'london',
|
1066
|
-
label: 'Лондон',
|
1067
|
-
},
|
1068
|
-
{
|
1069
|
-
value: 'manchester',
|
1070
|
-
label: 'Манчестер',
|
1071
|
-
},
|
1072
|
-
{
|
1073
|
-
value: 'beijing',
|
1074
|
-
label: 'Пекин',
|
1075
|
-
},
|
1076
|
-
{
|
1077
|
-
value: 'shanghai',
|
1078
|
-
label: 'Шанхай',
|
1079
|
-
},
|
1080
|
-
{
|
1081
|
-
value: 'tokyo',
|
1082
|
-
label: 'Токио',
|
1083
|
-
},
|
1084
|
-
{
|
1085
|
-
value: 'osaka',
|
1086
|
-
label: 'Осака',
|
1087
|
-
},
|
1088
|
-
{
|
1089
|
-
value: 'delhi',
|
1090
|
-
label: 'Дели',
|
1091
|
-
},
|
1092
|
-
{
|
1093
|
-
value: 'mumbai',
|
1094
|
-
label: 'Мумбаи',
|
1095
|
-
},
|
1096
|
-
{
|
1097
|
-
value: 'seoul',
|
1098
|
-
label: 'Сеул',
|
1099
|
-
},
|
1100
|
-
{
|
1101
|
-
value: 'busan',
|
1102
|
-
label: 'Пусан',
|
1103
|
-
},
|
1104
|
-
{
|
1105
|
-
value: 'bangkok',
|
1106
|
-
label: 'Бангкок',
|
1107
|
-
},
|
1108
|
-
{
|
1109
|
-
value: 'phuket',
|
1110
|
-
label: 'Пхукет',
|
1111
|
-
},
|
1112
|
-
{
|
1113
|
-
value: 'africa',
|
1114
|
-
label: 'Африка',
|
1115
|
-
},
|
1116
|
-
];
|
1117
|
-
|
1118
|
-
const SelectAllStory = (args: StorySelectProps) => {
|
1119
|
-
const [value, setValue] = useState([]);
|
1120
|
-
const [checked, setChecked] = useState(false);
|
1121
|
-
const [indeterminate, setIndeterminate] = useState(false);
|
1122
|
-
|
1123
|
-
const handleClick = () => {
|
1124
|
-
if (checked && !indeterminate) {
|
1125
|
-
setValue([]);
|
1126
|
-
} else {
|
1127
|
-
setValue(flatItems.map((item) => item.value));
|
1128
|
-
}
|
1129
|
-
};
|
1130
|
-
|
1131
|
-
React.useEffect(() => {
|
1132
|
-
if (value.length === 0) {
|
1133
|
-
setChecked(false);
|
1134
|
-
setIndeterminate(false);
|
1135
|
-
} else if (value.length === flatItems.length) {
|
1136
|
-
setChecked(true);
|
1137
|
-
setIndeterminate(false);
|
1138
|
-
} else {
|
1139
|
-
setChecked(true);
|
1140
|
-
setIndeterminate(true);
|
1141
|
-
}
|
1142
|
-
}, [value]);
|
1143
|
-
|
1144
|
-
return (
|
1145
|
-
<div style={{ width: '400px' }}>
|
1146
|
-
<Select
|
1147
|
-
placeholder="Placeholder"
|
1148
|
-
multiselect
|
1149
|
-
items={flatItems}
|
1150
|
-
value={value}
|
1151
|
-
onChange={setValue}
|
1152
|
-
listOverflow="auto"
|
1153
|
-
listMaxHeight="300px"
|
1154
|
-
selectAllOptions={{
|
1155
|
-
sticky: args?.selectAllSticky || false,
|
1156
|
-
label: args?.selectAllLabel,
|
1157
|
-
checked,
|
1158
|
-
indeterminate,
|
1159
|
-
onClick: handleClick,
|
1160
|
-
}}
|
1161
|
-
/>
|
1162
|
-
</div>
|
1163
|
-
);
|
1164
|
-
};
|
1165
|
-
|
1166
|
-
export const SelectAll: StoryObj<StorySelectProps> = {
|
1167
|
-
render: (args) => <SelectAllStory {...args} />,
|
1168
|
-
argTypes: {
|
1169
|
-
selectAllSticky: {
|
1170
|
-
control: 'boolean',
|
1171
|
-
},
|
1172
|
-
selectAllLabel: {
|
1173
|
-
control: 'text',
|
1174
|
-
},
|
1175
|
-
},
|
1176
|
-
args: {
|
1177
|
-
selectAllSticky: false,
|
1178
|
-
selectAllLabel: 'Выбрать все',
|
1179
|
-
},
|
1180
|
-
parameters: {
|
1181
|
-
controls: {
|
1182
|
-
include: ['selectAllSticky', 'selectAllLabel'],
|
1183
|
-
},
|
1184
|
-
},
|
1185
|
-
};
|
@@ -436,64 +436,6 @@ type Items = Array<{
|
|
436
436
|
}
|
437
437
|
```
|
438
438
|
</TabItem>
|
439
|
-
<TabItem value="selectAll" label="Выбрать всё">
|
440
|
-
Работа с кнопкой "Выбрать всё" осуществляется через свойство `selectAllOptions` только в режиме `multiple`:
|
441
|
-
```tsx
|
442
|
-
type SelectAllProps = {
|
443
|
-
checked?: boolean;
|
444
|
-
indeterminate?: boolean;
|
445
|
-
label?: string;
|
446
|
-
onClick?: () => void;
|
447
|
-
sticky?: boolean;
|
448
|
-
};
|
449
|
-
```
|
450
|
-
Вся логика выбора элементов и взаимодействия с компонентом лежит на стороне пользователя.
|
451
|
-
|
452
|
-
```tsx live
|
453
|
-
import React, { useState } from 'react';
|
454
|
-
import { Select } from '@salutejs/{{ package }}';
|
455
|
-
|
456
|
-
export function App() {
|
457
|
-
const [checked, setChecked] = useState(false);
|
458
|
-
|
459
|
-
const items = [
|
460
|
-
{
|
461
|
-
value: 'north_america',
|
462
|
-
label: 'Северная Америка',
|
463
|
-
},
|
464
|
-
{
|
465
|
-
value: 'south_america',
|
466
|
-
label: 'Южная Америка',
|
467
|
-
items: [
|
468
|
-
{
|
469
|
-
value: 'brazil',
|
470
|
-
label: 'Бразилия',
|
471
|
-
},
|
472
|
-
{
|
473
|
-
value: 'argentina',
|
474
|
-
label: 'Аргентина',
|
475
|
-
},
|
476
|
-
],
|
477
|
-
},
|
478
|
-
];
|
479
|
-
|
480
|
-
return (
|
481
|
-
<div style={{ display: "flex", gap: "30px", height: "300px" }}>
|
482
|
-
<Combobox
|
483
|
-
label="Label"
|
484
|
-
placeholder="Placeholder"
|
485
|
-
items={items}
|
486
|
-
multiple
|
487
|
-
selectAllOptions={{
|
488
|
-
checked,
|
489
|
-
onClick: () => setChecked(prev => !prev)
|
490
|
-
}}
|
491
|
-
/>
|
492
|
-
</div>
|
493
|
-
);
|
494
|
-
}
|
495
|
-
```
|
496
|
-
</TabItem>
|
497
439
|
</Tabs>
|
498
440
|
|
499
441
|
## Использование с React Hook Form и нативной формой
|
@@ -22,7 +22,7 @@ import { classes } from "./Combobox.tokens";
|
|
22
22
|
import { FloatingPopover } from "./FloatingPopover";
|
23
23
|
import { useKeyNavigation, getItemByFocused } from "./hooks/useKeyboardNavigation";
|
24
24
|
import { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, filterItems, getItemId, getRemovedElement } from "./utils";
|
25
|
-
import { Inner, StyledTextField, VirtualList
|
25
|
+
import { Inner, StyledTextField, VirtualList } from "./ui";
|
26
26
|
import { pathReducer, focusedPathReducer } from "./reducers";
|
27
27
|
import { getPathMap, getTreeMaps } from "./hooks/getPathMaps";
|
28
28
|
import { Ul, base, StyledArrow, IconArrowWrapper, StyledEmptyState, StyledLeftHelper } from "./Combobox.styles";
|
@@ -543,10 +543,7 @@ export var comboboxRoot = function comboboxRoot(Root) {
|
|
543
543
|
className: classes.emptyStateWrapper,
|
544
544
|
size: size,
|
545
545
|
description: emptyStateDescription || 'Ничего не найдено'
|
546
|
-
}) : /*#__PURE__*/React.createElement(React.Fragment, null,
|
547
|
-
selectAllOptions: props.selectAllOptions,
|
548
|
-
variant: variant
|
549
|
-
}), virtual ? /*#__PURE__*/React.createElement(VirtualList, {
|
546
|
+
}) : /*#__PURE__*/React.createElement(React.Fragment, null, virtual ? /*#__PURE__*/React.createElement(VirtualList, {
|
550
547
|
items: filteredItems,
|
551
548
|
listMaxHeight: listMaxHeight || listHeight,
|
552
549
|
onScroll: onScroll
|
@@ -217,14 +217,7 @@ export var tokens = {
|
|
217
217
|
disclosureIconColor: '--plasma-combobox-disclosure-icon-color',
|
218
218
|
disclosureIconColorHover: '--plasma-combobox-disclosure-icon-color-hover',
|
219
219
|
disclosureIconSize: '--plasma-select-disclosure-icon-size',
|
220
|
-
disclosureIconMargin: '--plasma-select-disclosure-icon-margin'
|
221
|
-
dividerMarginTop: '--plasma-combobox-divider-margin-top',
|
222
|
-
dividerMarginTopTight: '--plasma-combobox-divider-margin-top-tight',
|
223
|
-
dividerMarginRight: '--plasma-combobox-divider-margin-right',
|
224
|
-
dividerMarginBottom: '--plasma-combobox-divider-margin-bottom',
|
225
|
-
dividerMarginBottomTight: '--plasma-combobox-divider-margin-bottom-tight',
|
226
|
-
dividerMarginLeft: '--plasma-combobox-divider-margin-left',
|
227
|
-
dividerColor: '--plasma-combobox-divider-color'
|
220
|
+
disclosureIconMargin: '--plasma-select-disclosure-icon-margin'
|
228
221
|
};
|
229
222
|
export var constants = {
|
230
223
|
focusColor: '--surface-accent',
|
@@ -15,7 +15,7 @@ import { isEmpty } from "../../utils";
|
|
15
15
|
import { useOutsideClick } from "../../hooks";
|
16
16
|
import { useKeyNavigation, getItemByFocused } from "./hooks/useKeyboardNavigation";
|
17
17
|
import { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, getView } from "./utils";
|
18
|
-
import { Inner, Target, VirtualList
|
18
|
+
import { Inner, Target, VirtualList } from "./ui";
|
19
19
|
import { pathReducer, focusedPathReducer } from "./reducers";
|
20
20
|
import { usePathMaps } from "./hooks/usePathMaps";
|
21
21
|
import { Ul, base } from "./Select.styles";
|
@@ -420,10 +420,7 @@ export var selectRoot = function selectRoot(Root) {
|
|
420
420
|
listWidth: listWidth,
|
421
421
|
ref: targetRef,
|
422
422
|
virtual: virtual
|
423
|
-
}, beforeList,
|
424
|
-
selectAllOptions: props.selectAllOptions,
|
425
|
-
variant: variant
|
426
|
-
}), virtual ? /*#__PURE__*/React.createElement(VirtualList, {
|
423
|
+
}, beforeList, virtual ? /*#__PURE__*/React.createElement(VirtualList, {
|
427
424
|
items: transformedItems,
|
428
425
|
listMaxHeight: listMaxHeight || listHeight,
|
429
426
|
onScroll: onScroll
|
@@ -508,64 +508,6 @@ Select может выглядеть как Button и как Textfield. За э
|
|
508
508
|
}
|
509
509
|
```
|
510
510
|
</TabItem>
|
511
|
-
<TabItem value="selectAll" label="Выбрать всё">
|
512
|
-
Работа с кнопкой "Выбрать всё" осуществляется через свойство `selectAllOptions` только в режиме `multiselect`:
|
513
|
-
```tsx
|
514
|
-
type SelectAllProps = {
|
515
|
-
checked?: boolean;
|
516
|
-
indeterminate?: boolean;
|
517
|
-
label?: string;
|
518
|
-
onClick?: () => void;
|
519
|
-
sticky?: boolean;
|
520
|
-
};
|
521
|
-
```
|
522
|
-
Вся логика выбора элементов и взаимодействия с компонентом лежит на стороне пользователя.
|
523
|
-
|
524
|
-
```tsx live
|
525
|
-
import React, { useState } from 'react';
|
526
|
-
import { Select } from '@salutejs/{{ package }}';
|
527
|
-
|
528
|
-
export function App() {
|
529
|
-
const [checked, setChecked] = useState(false);
|
530
|
-
|
531
|
-
const items = [
|
532
|
-
{
|
533
|
-
value: 'north_america',
|
534
|
-
label: 'Северная Америка',
|
535
|
-
},
|
536
|
-
{
|
537
|
-
value: 'south_america',
|
538
|
-
label: 'Южная Америка',
|
539
|
-
items: [
|
540
|
-
{
|
541
|
-
value: 'brazil',
|
542
|
-
label: 'Бразилия',
|
543
|
-
},
|
544
|
-
{
|
545
|
-
value: 'argentina',
|
546
|
-
label: 'Аргентина',
|
547
|
-
},
|
548
|
-
],
|
549
|
-
},
|
550
|
-
];
|
551
|
-
|
552
|
-
return (
|
553
|
-
<div style={{ display: "flex", gap: "30px", height: "300px" }}>
|
554
|
-
<Select
|
555
|
-
label="Label"
|
556
|
-
placeholder="Placeholder"
|
557
|
-
items={items}
|
558
|
-
multiselect
|
559
|
-
selectAllOptions={{
|
560
|
-
checked,
|
561
|
-
onClick: () => setChecked(prev => !prev)
|
562
|
-
}}
|
563
|
-
/>
|
564
|
-
</div>
|
565
|
-
);
|
566
|
-
}
|
567
|
-
```
|
568
|
-
</TabItem>
|
569
511
|
</Tabs>
|
570
512
|
|
571
513
|
|
@@ -53,13 +53,6 @@ export var tokens = {
|
|
53
53
|
checkboxTriggerBorderWidth: '--plasma-select-checkbox-trigger-border-width',
|
54
54
|
indicatorSize: '--plasma-select-indicator-size',
|
55
55
|
targetHeight: '--plasma-select-target-height',
|
56
|
-
dividerMarginTop: '--plasma-select-divider-margin-top',
|
57
|
-
dividerMarginTopTight: '--plasma-select-divider-margin-top-tight',
|
58
|
-
dividerMarginRight: '--plasma-select-divider-margin-right',
|
59
|
-
dividerMarginBottom: '--plasma-select-divider-margin-bottom',
|
60
|
-
dividerMarginBottomTight: '--plasma-select-divider-margin-bottom-tight',
|
61
|
-
dividerMarginLeft: '--plasma-select-divider-margin-left',
|
62
|
-
dividerColor: '--plasma-select-divider-color',
|
63
56
|
// Токены для Button
|
64
57
|
buttonColor: '--plasma-select-button-color',
|
65
58
|
buttonColorHover: '--plasma-select-button-color-hover',
|