@hi-ui/check-select 4.0.0-alpha.10
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/LICENSE +21 -0
- package/README.md +11 -0
- package/lib/cjs/CheckSelect.js +309 -0
- package/lib/cjs/CheckSelect.js.map +1 -0
- package/lib/cjs/context.js +33 -0
- package/lib/cjs/context.js.map +1 -0
- package/lib/cjs/hooks/use-search.js +154 -0
- package/lib/cjs/hooks/use-search.js.map +1 -0
- package/lib/cjs/index.js +25 -0
- package/lib/cjs/index.js.map +1 -0
- package/lib/cjs/styles/index.scss.js +22 -0
- package/lib/cjs/styles/index.scss.js.map +1 -0
- package/lib/cjs/use-check-select.js +167 -0
- package/lib/cjs/use-check-select.js.map +1 -0
- package/lib/cjs/utils/type-assertion/lib/esm/index.js +42 -0
- package/lib/cjs/utils/type-assertion/lib/esm/index.js.map +1 -0
- package/lib/esm/CheckSelect.js +268 -0
- package/lib/esm/CheckSelect.js.map +1 -0
- package/lib/esm/context.js +25 -0
- package/lib/esm/context.js.map +1 -0
- package/lib/esm/hooks/use-search.js +144 -0
- package/lib/esm/hooks/use-search.js.map +1 -0
- package/lib/esm/index.js +12 -0
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/styles/index.scss.js +17 -0
- package/lib/esm/styles/index.scss.js.map +1 -0
- package/lib/esm/use-check-select.js +144 -0
- package/lib/esm/use-check-select.js.map +1 -0
- package/lib/esm/utils/type-assertion/lib/esm/index.js +33 -0
- package/lib/esm/utils/type-assertion/lib/esm/index.js.map +1 -0
- package/lib/types/CheckSelect.d.ts +80 -0
- package/lib/types/context.d.ts +41 -0
- package/lib/types/hooks/index.d.ts +1 -0
- package/lib/types/hooks/use-search.d.ts +9 -0
- package/lib/types/index.d.ts +3 -0
- package/lib/types/types.d.ts +26 -0
- package/lib/types/use-check-select.d.ts +83 -0
- package/package.json +72 -0
package/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
MIT License
|
2
|
+
|
3
|
+
Copyright (c) 2018 Xiaomi
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
@@ -0,0 +1,309 @@
|
|
1
|
+
/** @LICENSE
|
2
|
+
* @hi-ui/check-select
|
3
|
+
* https://github.com/XiaoMi/hiui/tree/master/packages/ui/check-select#readme
|
4
|
+
*
|
5
|
+
* Copyright (c) HIUI <mi-hiui@xiaomi.com>.
|
6
|
+
*
|
7
|
+
* This source code is licensed under the MIT license found in the
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
9
|
+
*/
|
10
|
+
'use strict';
|
11
|
+
|
12
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
13
|
+
|
14
|
+
Object.defineProperty(exports, '__esModule', {
|
15
|
+
value: true
|
16
|
+
});
|
17
|
+
|
18
|
+
var tslib = require('tslib');
|
19
|
+
|
20
|
+
var React = require('react');
|
21
|
+
|
22
|
+
var classname = require('@hi-ui/classname');
|
23
|
+
|
24
|
+
var env = require('@hi-ui/env');
|
25
|
+
|
26
|
+
var Input = require('@hi-ui/input');
|
27
|
+
|
28
|
+
var useCheckSelect = require('./use-check-select.js');
|
29
|
+
|
30
|
+
var Popper = require('@hi-ui/popper');
|
31
|
+
|
32
|
+
var icons = require('@hi-ui/icons');
|
33
|
+
|
34
|
+
var context = require('./context.js');
|
35
|
+
|
36
|
+
var useLatest = require('@hi-ui/use-latest');
|
37
|
+
|
38
|
+
var Checkbox = require('@hi-ui/checkbox');
|
39
|
+
|
40
|
+
var tagInput = require('@hi-ui/tag-input');
|
41
|
+
|
42
|
+
var index = require('./utils/type-assertion/lib/esm/index.js');
|
43
|
+
|
44
|
+
var VirtualList = require('rc-virtual-list');
|
45
|
+
|
46
|
+
function _interopDefaultLegacy(e) {
|
47
|
+
return e && _typeof(e) === 'object' && 'default' in e ? e : {
|
48
|
+
'default': e
|
49
|
+
};
|
50
|
+
}
|
51
|
+
|
52
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
53
|
+
|
54
|
+
var Input__default = /*#__PURE__*/_interopDefaultLegacy(Input);
|
55
|
+
|
56
|
+
var Popper__default = /*#__PURE__*/_interopDefaultLegacy(Popper);
|
57
|
+
|
58
|
+
var Checkbox__default = /*#__PURE__*/_interopDefaultLegacy(Checkbox);
|
59
|
+
|
60
|
+
var VirtualList__default = /*#__PURE__*/_interopDefaultLegacy(VirtualList);
|
61
|
+
|
62
|
+
var _role = 'check-select';
|
63
|
+
|
64
|
+
var _prefix = classname.getPrefixCls(_role);
|
65
|
+
/**
|
66
|
+
* TODO: What is CheckSelect
|
67
|
+
*/
|
68
|
+
|
69
|
+
|
70
|
+
var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
71
|
+
var _a$prefixCls = _a.prefixCls,
|
72
|
+
prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,
|
73
|
+
_a$role = _a.role,
|
74
|
+
role = _a$role === void 0 ? _role : _a$role,
|
75
|
+
className = _a.className,
|
76
|
+
children = _a.children,
|
77
|
+
_a$disabled = _a.disabled,
|
78
|
+
disabled = _a$disabled === void 0 ? false : _a$disabled,
|
79
|
+
_a$clearable = _a.clearable,
|
80
|
+
clearable = _a$clearable === void 0 ? false : _a$clearable,
|
81
|
+
_a$searchable = _a.searchable,
|
82
|
+
searchable = _a$searchable === void 0 ? false : _a$searchable,
|
83
|
+
_a$wrap = _a.wrap,
|
84
|
+
wrap = _a$wrap === void 0 ? true : _a$wrap,
|
85
|
+
placeholder = _a.placeholder,
|
86
|
+
displayRenderProp = _a.displayRender,
|
87
|
+
onSelectProp = _a.onSelect,
|
88
|
+
height = _a.height,
|
89
|
+
_a$itemHeight = _a.itemHeight,
|
90
|
+
itemHeight = _a$itemHeight === void 0 ? 40 : _a$itemHeight,
|
91
|
+
_a$virtual = _a.virtual,
|
92
|
+
virtual = _a$virtual === void 0 ? true : _a$virtual,
|
93
|
+
popper = _a.popper,
|
94
|
+
onOpen = _a.onOpen,
|
95
|
+
onClose = _a.onClose,
|
96
|
+
rest = tslib.__rest(_a, ["prefixCls", "role", "className", "children", "disabled", "clearable", "searchable", "invalid", "wrap", "placeholder", "displayRender", "onSelect", "height", "itemHeight", "virtual", "popper", "onOpen", "onClose"]);
|
97
|
+
|
98
|
+
var _useState = React.useState(null),
|
99
|
+
targetElRef = _useState[0],
|
100
|
+
setTargetElRef = _useState[1];
|
101
|
+
|
102
|
+
var _useState2 = React.useState(false),
|
103
|
+
menuVisible = _useState2[0],
|
104
|
+
setMenuVisible = _useState2[1];
|
105
|
+
|
106
|
+
var onOpenLatest = useLatest.useLatestCallback(onOpen);
|
107
|
+
var onCloseLatest = useLatest.useLatestCallback(onClose);
|
108
|
+
var closeMenu = React.useCallback(function () {
|
109
|
+
if (disabled) return;
|
110
|
+
setMenuVisible(false);
|
111
|
+
onOpenLatest();
|
112
|
+
}, [disabled, onOpenLatest]);
|
113
|
+
var openMenu = React.useCallback(function () {
|
114
|
+
if (disabled) return;
|
115
|
+
setMenuVisible(true);
|
116
|
+
onCloseLatest();
|
117
|
+
}, [disabled, onCloseLatest]);
|
118
|
+
var displayRender = React.useCallback(function (item) {
|
119
|
+
if (index.isFunction(displayRenderProp)) {
|
120
|
+
return displayRenderProp(item);
|
121
|
+
}
|
122
|
+
|
123
|
+
return item.title;
|
124
|
+
}, [displayRenderProp]);
|
125
|
+
var onSelectLatest = useLatest.useLatestCallback(onSelectProp);
|
126
|
+
|
127
|
+
var _b = useCheckSelect.useCheckSelect(Object.assign(Object.assign({}, rest), {
|
128
|
+
children: children,
|
129
|
+
onSelect: onSelectLatest
|
130
|
+
})),
|
131
|
+
rootProps = _b.rootProps,
|
132
|
+
context$1 = tslib.__rest(_b, ["rootProps"]);
|
133
|
+
|
134
|
+
var value = context$1.value,
|
135
|
+
tryChangeValue = context$1.tryChangeValue,
|
136
|
+
selectData = context$1.data;
|
137
|
+
var virtualData = React.useMemo(function () {
|
138
|
+
return selectData.reduce(function (acc, cur, index) {
|
139
|
+
if ('groupTitle' in cur) {
|
140
|
+
acc.push({
|
141
|
+
id: "group-" + index,
|
142
|
+
groupTitle: cur.groupTitle,
|
143
|
+
rootProps: cur.rootProps
|
144
|
+
});
|
145
|
+
return acc.concat(cur.children);
|
146
|
+
}
|
147
|
+
|
148
|
+
acc.push(cur);
|
149
|
+
return acc;
|
150
|
+
}, []);
|
151
|
+
}, [selectData]);
|
152
|
+
var cls = classname.cx(prefixCls, className, prefixCls + "--" + (menuVisible ? 'open' : 'closed')); // TODO: tagInput 内部支持支持多种模式切换
|
153
|
+
|
154
|
+
var TagInput = wrap ? tagInput.TagInput : tagInput.TagInputMock;
|
155
|
+
return /*#__PURE__*/React__default['default'].createElement(context.CheckSelectProvider, {
|
156
|
+
value: context$1
|
157
|
+
}, /*#__PURE__*/React__default['default'].createElement("div", Object.assign({
|
158
|
+
ref: ref,
|
159
|
+
role: role,
|
160
|
+
className: cls
|
161
|
+
}, rootProps), /*#__PURE__*/React__default['default'].createElement(TagInput, {
|
162
|
+
ref: setTargetElRef,
|
163
|
+
onClick: openMenu,
|
164
|
+
disabled: disabled,
|
165
|
+
clearable: clearable,
|
166
|
+
placeholder: placeholder,
|
167
|
+
data: selectData,
|
168
|
+
value: value,
|
169
|
+
wrap: wrap,
|
170
|
+
onChange: tryChangeValue,
|
171
|
+
displayRender: displayRender,
|
172
|
+
suffix: /*#__PURE__*/React__default['default'].createElement(icons.DownOutlined, null)
|
173
|
+
}), /*#__PURE__*/React__default['default'].createElement(Popper__default['default'], Object.assign({}, popper, {
|
174
|
+
attachEl: targetElRef,
|
175
|
+
visible: menuVisible,
|
176
|
+
onClose: closeMenu
|
177
|
+
}), /*#__PURE__*/React__default['default'].createElement("div", {
|
178
|
+
className: prefixCls + "-panel"
|
179
|
+
}, searchable ? /*#__PURE__*/React__default['default'].createElement(CheckSelectSearch, null) : null, /*#__PURE__*/React__default['default'].createElement(VirtualList__default['default'], {
|
180
|
+
itemKey: "id",
|
181
|
+
fullHeight: false,
|
182
|
+
height: height,
|
183
|
+
itemHeight: itemHeight,
|
184
|
+
virtual: virtual,
|
185
|
+
data: virtualData
|
186
|
+
}, function (node) {
|
187
|
+
/* 反向 map,搜索删选数据时会对数据进行处理 */
|
188
|
+
return 'groupTitle' in node ? /*#__PURE__*/React__default['default'].createElement(CheckSelectOptionGroup, Object.assign({
|
189
|
+
label: node.groupTitle
|
190
|
+
}, node.rootProps)) : /*#__PURE__*/React__default['default'].createElement(CheckSelectOption, Object.assign({
|
191
|
+
option: node
|
192
|
+
}, node.rootProps));
|
193
|
+
})))));
|
194
|
+
}); // @ts-ignore
|
195
|
+
|
196
|
+
CheckSelect.HiName = 'CheckSelect';
|
197
|
+
|
198
|
+
if (env.__DEV__) {
|
199
|
+
CheckSelect.displayName = 'CheckSelect';
|
200
|
+
}
|
201
|
+
|
202
|
+
var searchPrefix = classname.getPrefixCls('check-select-search');
|
203
|
+
/**
|
204
|
+
* TODO: What is CheckSelectSearch
|
205
|
+
*/
|
206
|
+
|
207
|
+
var CheckSelectSearch = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
208
|
+
var _a$prefixCls2 = _a.prefixCls,
|
209
|
+
prefixCls = _a$prefixCls2 === void 0 ? searchPrefix : _a$prefixCls2,
|
210
|
+
className = _a.className,
|
211
|
+
rest = tslib.__rest(_a, ["prefixCls", "className"]);
|
212
|
+
|
213
|
+
var _useCheckSelectContex = context.useCheckSelectContext(),
|
214
|
+
isEmpty = _useCheckSelectContex.isEmpty,
|
215
|
+
emptyContent = _useCheckSelectContex.emptyContent,
|
216
|
+
getSearchInputProps = _useCheckSelectContex.getSearchInputProps;
|
217
|
+
|
218
|
+
return /*#__PURE__*/React__default['default'].createElement("div", Object.assign({
|
219
|
+
ref: ref,
|
220
|
+
className: classname.cx(prefixCls, className)
|
221
|
+
}, rest), /*#__PURE__*/React__default['default'].createElement(Input__default['default'], Object.assign({}, getSearchInputProps(), {
|
222
|
+
appearance: "underline",
|
223
|
+
prefix: /*#__PURE__*/React__default['default'].createElement(icons.SearchOutlined, null)
|
224
|
+
})), isEmpty ? /*#__PURE__*/React__default['default'].createElement("span", {
|
225
|
+
className: prefixCls + "__empty"
|
226
|
+
}, emptyContent) : null);
|
227
|
+
});
|
228
|
+
|
229
|
+
if (env.__DEV__) {
|
230
|
+
CheckSelectSearch.displayName = 'CheckSelectSearch';
|
231
|
+
}
|
232
|
+
|
233
|
+
var optionPrefix = classname.getPrefixCls('check-select-option');
|
234
|
+
/**
|
235
|
+
* TODO: What is CheckSelectOption
|
236
|
+
*/
|
237
|
+
|
238
|
+
var CheckSelectOption = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
239
|
+
var _a$prefixCls3 = _a.prefixCls,
|
240
|
+
prefixCls = _a$prefixCls3 === void 0 ? optionPrefix : _a$prefixCls3,
|
241
|
+
className = _a.className,
|
242
|
+
_a$option = _a.option,
|
243
|
+
option = _a$option === void 0 ? {} : _a$option,
|
244
|
+
onClick = _a.onClick,
|
245
|
+
rest = tslib.__rest(_a, ["prefixCls", "className", "children", "option", "onClick"]);
|
246
|
+
|
247
|
+
var _useCheckSelectContex2 = context.useCheckSelectContext(),
|
248
|
+
isSelectedId = _useCheckSelectContex2.isSelectedId,
|
249
|
+
onSelect = _useCheckSelectContex2.onSelect,
|
250
|
+
titleRender = _useCheckSelectContex2.titleRender;
|
251
|
+
|
252
|
+
var checked = isSelectedId(option.id);
|
253
|
+
var _option$disabled = option.disabled,
|
254
|
+
disabled = _option$disabled === void 0 ? false : _option$disabled;
|
255
|
+
var cls = classname.cx(prefixCls, className, checked && prefixCls + "--selected", disabled && prefixCls + "--disabled");
|
256
|
+
var handleOptionCheck = React.useCallback(function (evt) {
|
257
|
+
onSelect(option, !checked);
|
258
|
+
onClick === null || onClick === void 0 ? void 0 : onClick(evt);
|
259
|
+
}, [onSelect, option, checked, onClick]); // 如果 titleRender 返回 `true`,则使用默认 title
|
260
|
+
|
261
|
+
var title = titleRender ? titleRender(Object.assign(Object.assign({}, option), {
|
262
|
+
checked: checked
|
263
|
+
})) : true;
|
264
|
+
return /*#__PURE__*/React__default['default'].createElement("div", Object.assign({
|
265
|
+
ref: ref,
|
266
|
+
className: cls
|
267
|
+
}, rest, {
|
268
|
+
onClick: handleOptionCheck
|
269
|
+
}), title === true ? /*#__PURE__*/React__default['default'].createElement(Checkbox__default['default'], {
|
270
|
+
checked: checked,
|
271
|
+
disabled: option.disabled
|
272
|
+
}, option.title) : title);
|
273
|
+
}); // @ts-ignore
|
274
|
+
|
275
|
+
CheckSelectOption.HiName = 'CheckSelectOption';
|
276
|
+
|
277
|
+
if (env.__DEV__) {
|
278
|
+
CheckSelectOption.displayName = 'CheckSelectOption';
|
279
|
+
}
|
280
|
+
/**
|
281
|
+
* TODO: What is CheckSelectOptionGroup
|
282
|
+
*/
|
283
|
+
|
284
|
+
|
285
|
+
var CheckSelectOptionGroup = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
286
|
+
var _a$prefixCls4 = _a.prefixCls,
|
287
|
+
prefixCls = _a$prefixCls4 === void 0 ? optionPrefix : _a$prefixCls4,
|
288
|
+
className = _a.className,
|
289
|
+
label = _a.label,
|
290
|
+
rest = tslib.__rest(_a, ["prefixCls", "className", "children", "label", "onClick"]);
|
291
|
+
|
292
|
+
var cls = classname.cx(prefixCls, className);
|
293
|
+
return /*#__PURE__*/React__default['default'].createElement("div", Object.assign({
|
294
|
+
ref: ref,
|
295
|
+
className: cls
|
296
|
+
}, rest), /*#__PURE__*/React__default['default'].createElement("span", null, label));
|
297
|
+
}); // @ts-ignore
|
298
|
+
|
299
|
+
CheckSelectOptionGroup.HiName = 'CheckSelectOptionGroup';
|
300
|
+
|
301
|
+
if (env.__DEV__) {
|
302
|
+
CheckSelectOptionGroup.displayName = 'CheckSelectOptionGroup';
|
303
|
+
}
|
304
|
+
|
305
|
+
exports.CheckSelect = CheckSelect;
|
306
|
+
exports.CheckSelectOption = CheckSelectOption;
|
307
|
+
exports.CheckSelectOptionGroup = CheckSelectOptionGroup;
|
308
|
+
exports.CheckSelectSearch = CheckSelectSearch;
|
309
|
+
//# sourceMappingURL=CheckSelect.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"CheckSelect.js","sources":["../../src/CheckSelect.tsx"],"sourcesContent":[null],"names":["_role","_prefix","getPrefixCls","CheckSelect","forwardRef","_a","ref","prefixCls","role","className","children","disabled","clearable","searchable","wrap","placeholder","displayRenderProp","displayRender","onSelectProp","onSelect","height","itemHeight","virtual","popper","onOpen","onClose","rest","useState","targetElRef","setTargetElRef","menuVisible","setMenuVisible","onOpenLatest","useLatestCallback","onCloseLatest","closeMenu","useCallback","openMenu","item","isFunction","title","onSelectLatest","_b","useCheckSelect","rootProps","context","value","tryChangeValue","selectData","data","virtualData","useMemo","reduce","acc","cur","index","push","id","groupTitle","concat","cls","cx","TagInput","TagInputDefault","TagInputMock","React","CheckSelectProvider","onClick","onChange","suffix","DownOutlined","Popper","attachEl","visible","CheckSelectSearch","VirtualList","itemKey","fullHeight","node","CheckSelectOptionGroup","label","CheckSelectOption","option","HiName","__DEV__","displayName","searchPrefix","useCheckSelectContext","isEmpty","emptyContent","getSearchInputProps","Input","appearance","prefix","SearchOutlined","optionPrefix","isSelectedId","titleRender","checked","handleOptionCheck","evt","Checkbox"],"mappings":"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"}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
/** @LICENSE
|
2
|
+
* @hi-ui/check-select
|
3
|
+
* https://github.com/XiaoMi/hiui/tree/master/packages/ui/check-select#readme
|
4
|
+
*
|
5
|
+
* Copyright (c) HIUI <mi-hiui@xiaomi.com>.
|
6
|
+
*
|
7
|
+
* This source code is licensed under the MIT license found in the
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
9
|
+
*/
|
10
|
+
'use strict';
|
11
|
+
|
12
|
+
Object.defineProperty(exports, '__esModule', {
|
13
|
+
value: true
|
14
|
+
});
|
15
|
+
|
16
|
+
var React = require('react');
|
17
|
+
|
18
|
+
var checkSelectContext = /*#__PURE__*/React.createContext(null);
|
19
|
+
var CheckSelectProvider = checkSelectContext.Provider;
|
20
|
+
|
21
|
+
var useCheckSelectContext = function useCheckSelectContext() {
|
22
|
+
var context = React.useContext(checkSelectContext);
|
23
|
+
|
24
|
+
if (!context) {
|
25
|
+
throw new Error('The checkSelectContext context should using in CheckSelect.');
|
26
|
+
}
|
27
|
+
|
28
|
+
return context;
|
29
|
+
};
|
30
|
+
|
31
|
+
exports.CheckSelectProvider = CheckSelectProvider;
|
32
|
+
exports.useCheckSelectContext = useCheckSelectContext;
|
33
|
+
//# sourceMappingURL=context.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"context.js","sources":["../../src/context.ts"],"sourcesContent":[null],"names":["checkSelectContext","createContext","CheckSelectProvider","Provider","useCheckSelectContext","context","useContext","Error"],"mappings":";;;;;;;;;;;;;;;;;AAIA,IAAMA,kBAAkB,gBAAGC,mBAAAA,CAAyD,IAAzDA,CAA3B;IAEaC,mBAAmB,GAAGF,kBAAkB,CAACG;;IAEzCC,qBAAqB,GAAG,SAAxBA,qBAAwB;MAC7BC,OAAO,GAAGC,gBAAAA,CAAWN,kBAAXM;;MAEZ,CAACD,SAAS;UACN,IAAIE,KAAJ,CAAU,6DAAV;;;SAGDF;;;;"}
|
@@ -0,0 +1,154 @@
|
|
1
|
+
/** @LICENSE
|
2
|
+
* @hi-ui/check-select
|
3
|
+
* https://github.com/XiaoMi/hiui/tree/master/packages/ui/check-select#readme
|
4
|
+
*
|
5
|
+
* Copyright (c) HIUI <mi-hiui@xiaomi.com>.
|
6
|
+
*
|
7
|
+
* This source code is licensed under the MIT license found in the
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
9
|
+
*/
|
10
|
+
'use strict';
|
11
|
+
|
12
|
+
Object.defineProperty(exports, '__esModule', {
|
13
|
+
value: true
|
14
|
+
});
|
15
|
+
|
16
|
+
var React = require('react');
|
17
|
+
|
18
|
+
var useLatest = require('@hi-ui/use-latest');
|
19
|
+
|
20
|
+
var env = require('@hi-ui/env');
|
21
|
+
|
22
|
+
var index = require('../utils/type-assertion/lib/esm/index.js');
|
23
|
+
/**
|
24
|
+
* 支持搜索功能的 hook
|
25
|
+
*/
|
26
|
+
|
27
|
+
|
28
|
+
var useSearch = function useSearch(flattedData, filter) {
|
29
|
+
var _useState = React.useState(''),
|
30
|
+
searchValue = _useState[0],
|
31
|
+
setSearchValue = _useState[1];
|
32
|
+
|
33
|
+
var _useState2 = React.useState([]),
|
34
|
+
matchedNodes = _useState2[0],
|
35
|
+
setMatchedNodes = _useState2[1];
|
36
|
+
|
37
|
+
var flattedDataRef = useLatest.useLatestRef(flattedData);
|
38
|
+
var handleChange = React.useCallback(function (evt) {
|
39
|
+
var nextSearchValue = evt.target.value;
|
40
|
+
setSearchValue(nextSearchValue); // 匹配到搜索的节点,将这些节点进行展开显示,其它均隐藏
|
41
|
+
|
42
|
+
var matchedNodes = getMatchedNodes(flattedDataRef.current, nextSearchValue, filter);
|
43
|
+
setMatchedNodes(matchedNodes);
|
44
|
+
}, [flattedDataRef, filter]);
|
45
|
+
var inputProps = React.useMemo(function () {
|
46
|
+
return {
|
47
|
+
value: searchValue,
|
48
|
+
onChange: handleChange
|
49
|
+
};
|
50
|
+
}, [searchValue, handleChange]);
|
51
|
+
var resetSearch = React.useCallback(function () {
|
52
|
+
setSearchValue('');
|
53
|
+
}, []);
|
54
|
+
var isSearch = !!searchValue;
|
55
|
+
var isEmpty = isSearch && matchedNodes.length === 0;
|
56
|
+
return [isSearch, matchedNodes, inputProps, isEmpty, resetSearch];
|
57
|
+
};
|
58
|
+
/**
|
59
|
+
* 从 value 中 找到指定的 options(逐层查找)
|
60
|
+
*/
|
61
|
+
|
62
|
+
|
63
|
+
var getMatchedNodes = function getMatchedNodes(flattedData, searchValue, filter) {
|
64
|
+
if (!searchValue) return [];
|
65
|
+
var matchedResult = [];
|
66
|
+
var shouldFilter = index.isFunction(filter); // 1. 先对于 groupTitle 匹配
|
67
|
+
// 2. 若未匹配到。再对其 children 进行 title 匹配
|
68
|
+
|
69
|
+
var _loop = function _loop(i) {
|
70
|
+
var optionOrGroup = flattedData[i];
|
71
|
+
|
72
|
+
if ('groupTitle' in optionOrGroup) {
|
73
|
+
// search for OptionGroup
|
74
|
+
// @ts-ignore
|
75
|
+
var shouldReserved = shouldFilter && filter(searchValue, optionOrGroup) === true;
|
76
|
+
|
77
|
+
if (shouldReserved) {
|
78
|
+
matchedResult.push(optionOrGroup);
|
79
|
+
return "continue";
|
80
|
+
}
|
81
|
+
|
82
|
+
if (typeof optionOrGroup.groupTitle === 'string') {
|
83
|
+
// 匹配策略:`String.include`
|
84
|
+
if (optionOrGroup.groupTitle.includes(searchValue)) {
|
85
|
+
matchedResult.push(optionOrGroup);
|
86
|
+
return "continue";
|
87
|
+
}
|
88
|
+
} else {
|
89
|
+
if (env.__DEV__) {
|
90
|
+
console.info('WARNING: The `optionGroup.groupTitle` should be `string` when searchable is enabled.');
|
91
|
+
}
|
92
|
+
}
|
93
|
+
|
94
|
+
if (index.isArrayNonEmpty(optionOrGroup.children)) {
|
95
|
+
var matchedChildren = optionOrGroup.children.filter(function (node) {
|
96
|
+
var _a, _b;
|
97
|
+
|
98
|
+
if (shouldFilter) {
|
99
|
+
// @ts-ignore
|
100
|
+
return filter(searchValue, optionOrGroup);
|
101
|
+
}
|
102
|
+
|
103
|
+
if (typeof node.title !== 'string') {
|
104
|
+
if (env.__DEV__) {
|
105
|
+
console.info('WARNING: The `option.title` should be `string` when searchable is enabled.');
|
106
|
+
}
|
107
|
+
|
108
|
+
return false;
|
109
|
+
}
|
110
|
+
|
111
|
+
return (_b = (_a = node.title).includes) === null || _b === void 0 ? void 0 : _b.call(_a, searchValue);
|
112
|
+
});
|
113
|
+
|
114
|
+
if (index.isArrayNonEmpty(matchedChildren)) {
|
115
|
+
var matchedOptionOrGroup = Object.assign(Object.assign({}, optionOrGroup), {
|
116
|
+
children: matchedChildren
|
117
|
+
});
|
118
|
+
matchedResult.push(matchedOptionOrGroup);
|
119
|
+
}
|
120
|
+
}
|
121
|
+
} else {
|
122
|
+
// search for Option
|
123
|
+
// @ts-ignore
|
124
|
+
var _shouldReserved = shouldFilter && filter(searchValue, optionOrGroup) === true;
|
125
|
+
|
126
|
+
if (_shouldReserved) {
|
127
|
+
matchedResult.push(optionOrGroup);
|
128
|
+
return "continue";
|
129
|
+
}
|
130
|
+
|
131
|
+
if (typeof optionOrGroup.title === 'string') {
|
132
|
+
// 匹配策略:`String.include`
|
133
|
+
if (optionOrGroup.title.includes(searchValue)) {
|
134
|
+
matchedResult.push(optionOrGroup);
|
135
|
+
}
|
136
|
+
} else {
|
137
|
+
if (env.__DEV__) {
|
138
|
+
console.info('WARNING: The `option.title` should be `string` when searchable is enabled.');
|
139
|
+
}
|
140
|
+
}
|
141
|
+
}
|
142
|
+
};
|
143
|
+
|
144
|
+
for (var i = 0; i < flattedData.length; i++) {
|
145
|
+
var _ret = _loop(i);
|
146
|
+
|
147
|
+
if (_ret === "continue") continue;
|
148
|
+
}
|
149
|
+
|
150
|
+
return matchedResult;
|
151
|
+
};
|
152
|
+
|
153
|
+
exports.useSearch = useSearch;
|
154
|
+
//# sourceMappingURL=use-search.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"use-search.js","sources":["../../../src/hooks/use-search.ts"],"sourcesContent":[null],"names":["useSearch","flattedData","filter","useState","searchValue","setSearchValue","matchedNodes","setMatchedNodes","flattedDataRef","useLatestRef","handleChange","useCallback","evt","nextSearchValue","target","value","getMatchedNodes","current","inputProps","useMemo","onChange","resetSearch","isSearch","isEmpty","length","matchedResult","shouldFilter","isFunction","i","optionOrGroup","shouldReserved","push","groupTitle","includes","__DEV__","console","info","isArrayNonEmpty","children","matchedChildren","node","title","matchedOptionOrGroup"],"mappings":"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"}
|
package/lib/cjs/index.js
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
/** @LICENSE
|
2
|
+
* @hi-ui/check-select
|
3
|
+
* https://github.com/XiaoMi/hiui/tree/master/packages/ui/check-select#readme
|
4
|
+
*
|
5
|
+
* Copyright (c) HIUI <mi-hiui@xiaomi.com>.
|
6
|
+
*
|
7
|
+
* This source code is licensed under the MIT license found in the
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
9
|
+
*/
|
10
|
+
'use strict';
|
11
|
+
|
12
|
+
Object.defineProperty(exports, '__esModule', {
|
13
|
+
value: true
|
14
|
+
});
|
15
|
+
|
16
|
+
require('./styles/index.scss.js');
|
17
|
+
|
18
|
+
var CheckSelect = require('./CheckSelect.js');
|
19
|
+
|
20
|
+
exports.CheckSelect = CheckSelect.CheckSelect;
|
21
|
+
exports.CheckSelectOption = CheckSelect.CheckSelectOption;
|
22
|
+
exports.CheckSelectOptionGroup = CheckSelect.CheckSelectOptionGroup;
|
23
|
+
exports.CheckSelectSearch = CheckSelect.CheckSelectSearch;
|
24
|
+
exports["default"] = CheckSelect.CheckSelect;
|
25
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
/** @LICENSE
|
2
|
+
* @hi-ui/check-select
|
3
|
+
* https://github.com/XiaoMi/hiui/tree/master/packages/ui/check-select#readme
|
4
|
+
*
|
5
|
+
* Copyright (c) HIUI <mi-hiui@xiaomi.com>.
|
6
|
+
*
|
7
|
+
* This source code is licensed under the MIT license found in the
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
9
|
+
*/
|
10
|
+
'use strict';
|
11
|
+
|
12
|
+
Object.defineProperty(exports, '__esModule', {
|
13
|
+
value: true
|
14
|
+
});
|
15
|
+
var css_248z = "@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n@use 'sass:map';\n.hi-v4-check-select {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: none;\n outline: none;\n font-size: 0.875rem;\n font-size: var(--hi-v4-text-size-normal, 0.875rem);\n vertical-align: middle;\n list-style: none;\n width: auto;\n box-sizing: border-box;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n display: inline-block;\n min-width: 160px;\n max-height: 260px;\n overflow: auto;\n padding-bottom: 10px; }\n.hi-v4-check-select--open .hi-v4-tag-input,\n .hi-v4-check-select--open .hi-v4-tag-input-mock {\n border-color: #4387f4;\n border-color: var(--hi-v4-color-brandblue-500, #4387f4); }\n.hi-v4-check-select-item {\n width: 100%;\n padding: 4px 0;\n padding: var(--hi-v4-spacing-2, 4px) 0;\n position: relative;\n cursor: pointer;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex; }\n.hi-v4-check-select-option {\n padding: 0 8px2px;\n padding: 0 var(--hi-v4-spacing-4, 8px)2px;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n min-height: 32px;\n width: 100%;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n position: relative;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between; }\n.hi-v4-check-select-option:hover {\n background-color: #f0f5fe;\n background-color: var(--hi-v4-color-brandblue-100, #f0f5fe); }\n.hi-v4-check-select-option--selected {\n background-color: #f0f5fe;\n background-color: var(--hi-v4-color-brandblue-100, #f0f5fe);\n font-weight: 700;\n color: #4387f4;\n color: var(--hi-v4-color-brandblue-500, #4387f4); }\n.hi-v4-check-select-option--focused {\n background-color: #f7faff;\n background-color: var(--hi-v4-color-brandblue-50, #f7faff); }\n.hi-v4-check-select-option--disabled {\n cursor: not-allowed;\n color: #6b7280;\n color: var(--hi-v4-color-gray-500, #6b7280);\n font-weight: 400; }\n.hi-v4-check-select .title__text {\n -webkit-box-flex: 1;\n -ms-flex: 1 1;\n flex: 1 1; }\n.hi-v4-check-select-panel {\n white-space: nowrap;\n -webkit-box-sizing: border-box;\n box-sizing: border-box; }\n.hi-v4-check-select-search {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n padding: 10px 10px 6px;\n position: relative; }\n.hi-v4-check-select-search .hi-v4-input__prefix {\n font-size: 16px;\n padding-left: 0; }\n.hi-v4-check-select-search__empty {\n display: inline-block;\n margin-top: 20px;\n font-size: 14px;\n font-weight: 400;\n color: #999;\n line-height: 20px; }\n";
|
16
|
+
|
17
|
+
var __styleInject__ = require('style-inject/dist/style-inject.es.js')["default"];
|
18
|
+
|
19
|
+
__styleInject__(css_248z);
|
20
|
+
|
21
|
+
exports["default"] = css_248z;
|
22
|
+
//# sourceMappingURL=index.scss.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
|