@hi-ui/tree-select 4.0.0-alpha.10 → 4.0.0-alpha.14
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/README.md +87 -7
- package/lib/cjs/ui/input/lib/esm/Input.js +17 -7
- package/lib/cjs/ui/input/lib/esm/Input.js.map +1 -1
- package/lib/cjs/ui/input/lib/esm/MockInput.js +8 -5
- package/lib/cjs/ui/input/lib/esm/MockInput.js.map +1 -1
- package/lib/cjs/ui/input/lib/esm/TextArea.js +8 -1
- package/lib/cjs/ui/input/lib/esm/TextArea.js.map +1 -1
- package/lib/cjs/ui/input/lib/esm/styles/index.scss.js +1 -1
- package/lib/cjs/ui/input/lib/esm/use-input.js +47 -16
- package/lib/cjs/ui/input/lib/esm/use-input.js.map +1 -1
- package/lib/cjs/ui/input/lib/esm/utils/index.js +202 -0
- package/lib/cjs/ui/input/lib/esm/utils/index.js.map +1 -0
- package/lib/esm/ui/input/lib/esm/Input.js +17 -7
- package/lib/esm/ui/input/lib/esm/Input.js.map +1 -1
- package/lib/esm/ui/input/lib/esm/MockInput.js +8 -5
- package/lib/esm/ui/input/lib/esm/MockInput.js.map +1 -1
- package/lib/esm/ui/input/lib/esm/TextArea.js +8 -1
- package/lib/esm/ui/input/lib/esm/TextArea.js.map +1 -1
- package/lib/esm/ui/input/lib/esm/styles/index.scss.js +1 -1
- package/lib/esm/ui/input/lib/esm/use-input.js +41 -11
- package/lib/esm/ui/input/lib/esm/use-input.js.map +1 -1
- package/lib/esm/ui/input/lib/esm/utils/index.js +186 -0
- package/lib/esm/ui/input/lib/esm/utils/index.js.map +1 -0
- package/package.json +12 -12
package/README.md
CHANGED
@@ -1,11 +1,91 @@
|
|
1
|
-
#
|
1
|
+
# TreeSelect 树形多项选择器
|
2
2
|
|
3
|
-
|
3
|
+
一种接收树形数据结构的选择器,为用户提供复杂数据展示的能力
|
4
4
|
|
5
|
-
##
|
5
|
+
## 何时使用
|
6
6
|
|
7
|
-
|
8
|
-
|
7
|
+
- 选择部门的组织结构、部门等
|
8
|
+
- 选择商品目录等
|
9
9
|
|
10
|
-
|
11
|
-
|
10
|
+
## 使用示例
|
11
|
+
|
12
|
+
<!-- Inject Stories -->
|
13
|
+
|
14
|
+
## Props
|
15
|
+
|
16
|
+
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|
17
|
+
| ------------------ | ---------------------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
|
18
|
+
| data | 展示数据 | DataItem [] | - | - |
|
19
|
+
| fieldNames | 设置 data 中 id, title, disabled, children 对应的 key (3.0 新增) | object | - | { title: 'title', id: 'id',disabled:'disabled', children: 'children'} |
|
20
|
+
| showCheckedMode | 数据回显模式 | string | ALL: 所有被选中节点,不区分父子节点 <br/>PARENT: 当所有子节点被选中时将只保留父节点<br/>CHILD:仅显示子节点 | ALL |
|
21
|
+
| disabled | 是否禁用 | boolean | true \| false | false |
|
22
|
+
| defaultExpandAll | 是否默认展开所有树节点 | boolean | true \| false | false |
|
23
|
+
| expandedIds | 展开的节点(受控) | ReactText[] | - | - |
|
24
|
+
| defaultExpandedIds | 默认展开的节点(非受控) | ReactText[] | - | - |
|
25
|
+
| defaultValue | 默认选中项 (非受控) | ReactText | - | - |
|
26
|
+
| value | 默认选中项 (受控) | ReactText | - | - |
|
27
|
+
| displayRender | 自定义渲染 Input 中展示内容 | (valueItem: checkedNode) => ReactNode | - | - |
|
28
|
+
| placeholder | 输入框占位 | string | - | 请选择 |
|
29
|
+
| searchPlaceholder | 搜索输入框占位 | string | - | 搜索 |
|
30
|
+
| loadingContent | 加载中文字提示 | string | - | 数据加载中... |
|
31
|
+
| searchMode | 节点搜索模式 | string | 'highlight' \| 'filter' | - |
|
32
|
+
| dataSource | 异步加载数据 | (key: string) => DataSource \| DataSource \| Promise | - | - |
|
33
|
+
| emptyContent | 没有选项时的提示 | ReactNode | - | 无内容 |
|
34
|
+
| optionWidth | 自定义下拉选项宽度 | number | - | |
|
35
|
+
| overlayClassName | 下拉根元素的类名称 | string | - | - |
|
36
|
+
| popper | 自定义控制弹出层 popper 行为 | Omit<PopperProps, 'visible' \| 'attachEl'> | - | - |
|
37
|
+
|
38
|
+
## Events
|
39
|
+
|
40
|
+
| 名称 | 说明 | 类型 | 参数 | 返回值 |
|
41
|
+
| -------- | ---------- | --------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | ------ |
|
42
|
+
| onChange | 选中时触发 | (checkedIds: ReactText[], checkedNodes: DataItem[], targetNode: DataItem, shouldChecked: boolean) => void | checkedIds: 选中项 ID 集合 <br/> checkedNodes: 选中项数据项集合 <br/> targetNode: 当前操作节点 <br/> shouldChecked: 是否要被选中 | - |
|
43
|
+
|
44
|
+
### DataItem
|
45
|
+
|
46
|
+
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|
47
|
+
| -------- | --------------- | ---------------- | ------ | ------ |
|
48
|
+
| title | 下拉选项标题 | string | - | - |
|
49
|
+
| id | 下拉选项唯一 id | string \| number | - | - |
|
50
|
+
| disabled | 是否禁用 | boolean | - | false |
|
51
|
+
| children | 子级数据 | DataItem[] | - | - |
|
52
|
+
|
53
|
+
### DataSource
|
54
|
+
|
55
|
+
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|
56
|
+
| ----------------- | ---------------------------------- | -------------------------------- | -------------------------------------------------- | ------------- |
|
57
|
+
| url | 请求的 url | string | - | - |
|
58
|
+
| type | 请求方法 | string | get \| post | get |
|
59
|
+
| data | post 请求时请求体参数 | object | - | - |
|
60
|
+
| params | url 查询参数 | object | - | - |
|
61
|
+
| headers | 请求头 | object | - | - |
|
62
|
+
| mode | 请求模式 | string | 'same-origin' \| 'cors' \| 'no-cors' \| 'navigate' | 'same-origin' |
|
63
|
+
| transformResponse | 成功时的回调,用于对数据进行预处理 | (response: object) => DataItem[] | - | - |
|
64
|
+
|
65
|
+
## CHANGELOG
|
66
|
+
|
67
|
+
> 从原 TreeSelect 组件抽离单选模式出来,作为为单独单选的 TreeSelect 组件。
|
68
|
+
|
69
|
+
| 参数 | 变更类型 | 变更内容 | 解决的问题 |
|
70
|
+
| ------------------ | ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
|
71
|
+
| propName | feature \| deprecated \| update | 变更了什么 | 之前是什么样子,解决什么问题 |
|
72
|
+
| ---- | ---- | ---- | ---- |
|
73
|
+
| value | update | 类型 DataItem[] \| string[] \| string -> <string \| number> | 对于表单控件 id 值的控制,均使用 React.ReactText(即 string 和 number 都支持) |
|
74
|
+
| defaultValue | update | 类型 DataItem[] \| string[] \| string -> <string \| number> | 对于表单控件 id 值的控制,均使用 React.ReactText(即 string 和 number 都支持) |
|
75
|
+
| id | update | 类型 string -> string \| number | 对于表单控件 id 值的控制,均使用 React.ReactText(即 string 和 number 都支持) |
|
76
|
+
| bordered | deprecated | 字段 `bordered` -> `appearance` | 对于 Picker 类型的组件,统一使用 appearance 设置外形(线\面\无边框)值 |
|
77
|
+
| searchPlaceholder | feature | - | Picker 类型组件统一支持 |
|
78
|
+
| loadingContent | feature | - | Picker 类型组件统一支持,适配新 UI |
|
79
|
+
| popper | feature | - | Picker 类型组件统一支持,聚合管理。比如: placement,之前有的加了有的没加 |
|
80
|
+
| titleRender | feature | - | 统一支持自定义渲染每一项 |
|
81
|
+
| virtual | feature | - | 支持虚拟列表 |
|
82
|
+
| height | feature | - | 支持虚拟列表 |
|
83
|
+
| itemHeight | feature | - | 支持虚拟列表 |
|
84
|
+
| type | deprecated | - | 拆分单选多选组件单独维护 |
|
85
|
+
| autoload | deprecated | - | 页面级首次渲染执行数据加载操作,取消内置 |
|
86
|
+
| mode | deprecated | - | 面包屑模式可以使用 checkCascade 组件替代,交互形式更为优雅。 |
|
87
|
+
| appearance | feature | - | 统一支持:线性\面性\无边框 |
|
88
|
+
| valueRender | update | valueRender(items: DataItem[]) -> displayRender(item: DataItem) | 统一字段命名及其含义 |
|
89
|
+
| expandedIds | update | 字段:expandIds -> expandedIds | 统一字段命名及其含义 |
|
90
|
+
| defaultExpandedIds | update | defaultExpandIds -> defaultExpandedIds | 统一字段命名及其含义 |
|
91
|
+
| onChange | update | 类型:`(checkedIds \| checkedId, checkedNodes \| checkedNode, currentNode) => void` -> `(checkedIds: ReactText[], checkedNodes: DataItem[], targetNode: DataItem, shouldChecked: boolean) => void` | 1. 移除数组结构,方便用户获取;2. 暴露 shouldSelected 执行相应拦截之类的操作; 3. 点击清空时触发 onChange |
|
@@ -49,7 +49,14 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
49
49
|
|
50
50
|
var _prefix = classname.getPrefixCls('input');
|
51
51
|
/**
|
52
|
-
*
|
52
|
+
* 输入框
|
53
|
+
*
|
54
|
+
* @TODO:
|
55
|
+
* 1. size api 确认
|
56
|
+
* 2. 修改类名结构
|
57
|
+
* 3. 支持带数字展示
|
58
|
+
* 4. InputGroup 模式支持
|
59
|
+
* 5. 手动聚焦支持额外配置
|
53
60
|
*/
|
54
61
|
|
55
62
|
|
@@ -60,8 +67,6 @@ var Input = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
60
67
|
role = _a$role === void 0 ? 'input' : _a$role,
|
61
68
|
className = _a.className,
|
62
69
|
style = _a.style,
|
63
|
-
_a$type = _a.type,
|
64
|
-
type = _a$type === void 0 ? 'text' : _a$type,
|
65
70
|
_a$size = _a.size,
|
66
71
|
size = _a$size === void 0 ? 'md' : _a$size,
|
67
72
|
_a$appearance = _a.appearance,
|
@@ -88,7 +93,8 @@ var Input = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
88
93
|
onFocus = _a.onFocus,
|
89
94
|
onBlur = _a.onBlur,
|
90
95
|
trimValueOnBlur = _a.trimValueOnBlur,
|
91
|
-
|
96
|
+
type = _a.type,
|
97
|
+
rest = tslib.__rest(_a, ["prefixCls", "role", "className", "style", "size", "appearance", "prepend", "append", "prefix", "suffix", "clearableTrigger", "clearable", "invalid", "name", "autoFocus", "disabled", "readOnly", "maxLength", "placeholder", "defaultValue", "value", "onChange", "onFocus", "onBlur", "trimValueOnBlur", "type"]); // @TODO: 临时方案,后面迁移至 InputGroup
|
92
98
|
|
93
99
|
|
94
100
|
var _useMemo = React.useMemo(function () {
|
@@ -123,8 +129,10 @@ var Input = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
123
129
|
if (!onChange) return;
|
124
130
|
onChangeMock(onChange, evt, inputElementRef.current, value);
|
125
131
|
}, [onChange]);
|
132
|
+
var clearElementRef = React.useRef(null);
|
126
133
|
|
127
134
|
var _useInput = useInput.useInput({
|
135
|
+
clearElementRef: clearElementRef,
|
128
136
|
name: name,
|
129
137
|
autoFocus: autoFocus,
|
130
138
|
disabled: disabled,
|
@@ -136,7 +144,8 @@ var Input = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
136
144
|
onChange: proxyOnChange,
|
137
145
|
onFocus: onFocus,
|
138
146
|
onBlur: onBlur,
|
139
|
-
trimValueOnBlur: trimValueOnBlur
|
147
|
+
trimValueOnBlur: trimValueOnBlur,
|
148
|
+
type: type
|
140
149
|
}),
|
141
150
|
tryChangeValue = _useInput.tryChangeValue,
|
142
151
|
focused = _useInput.focused,
|
@@ -185,6 +194,7 @@ var Input = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
185
194
|
}, getInputProps(), rest)), suffix || showClearableIcon ? /*#__PURE__*/React__default['default'].createElement("span", {
|
186
195
|
className: prefixCls + "__suffix"
|
187
196
|
}, showClearableIcon ? /*#__PURE__*/React__default['default'].createElement("span", {
|
197
|
+
ref: clearElementRef,
|
188
198
|
className: classname.cx(prefixCls + "__clear", (clearableTrigger === 'always' || hover) && 'active'),
|
189
199
|
role: "button",
|
190
200
|
tabIndex: -1,
|
@@ -218,13 +228,13 @@ function onChangeMock(onChange, evt, target, targetValue) {
|
|
218
228
|
event.target = target;
|
219
229
|
event.currentTarget = target;
|
220
230
|
target.value = targetValue;
|
221
|
-
onChange(event); // 重置为之前值
|
231
|
+
onChange(event, targetValue); // 重置为之前值
|
222
232
|
|
223
233
|
target.value = originalTargetValue;
|
224
234
|
return;
|
225
235
|
}
|
226
236
|
|
227
|
-
onChange(event);
|
237
|
+
onChange(event, targetValue);
|
228
238
|
}
|
229
239
|
|
230
240
|
exports.Input = Input;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Input.js","sources":["../../../../../../../input/lib/esm/Input.js"],"sourcesContent":["/** @LICENSE\n * @hi-ui/input\n * https://github.com/XiaoMi/hiui/tree/master/packages/ui/input#readme\n *\n * Copyright (c) HIUI <mi-hiui@xiaomi.com>.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { __rest } from 'tslib';\nimport React, { forwardRef, useMemo, isValidElement, useRef, useCallback, useState } from 'react';\nimport { getPrefixCls, cx } from '@hi-ui/classname';\nimport { __DEV__ } from '@hi-ui/env';\nimport { useMergeRefs } from '@hi-ui/use-merge-refs';\nimport { CloseCircleFilled } from '@hi-ui/icons';\nimport { useInput } from './use-input.js';\n\nvar _prefix = getPrefixCls('input');\n/**\n * TODO: What is Input\n */\n\n\nvar Input = /*#__PURE__*/forwardRef(function (_a, ref) {\n var _a$prefixCls = _a.prefixCls,\n prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,\n _a$role = _a.role,\n role = _a$role === void 0 ? 'input' : _a$role,\n className = _a.className,\n style = _a.style,\n _a$type = _a.type,\n type = _a$type === void 0 ? 'text' : _a$type,\n _a$size = _a.size,\n size = _a$size === void 0 ? 'md' : _a$size,\n _a$appearance = _a.appearance,\n appearance = _a$appearance === void 0 ? 'outline' : _a$appearance,\n prepend = _a.prepend,\n append = _a.append,\n prefix = _a.prefix,\n suffix = _a.suffix,\n _a$clearableTrigger = _a.clearableTrigger,\n clearableTrigger = _a$clearableTrigger === void 0 ? 'hover' : _a$clearableTrigger,\n _a$clearable = _a.clearable,\n clearable = _a$clearable === void 0 ? false : _a$clearable,\n _a$invalid = _a.invalid,\n invalid = _a$invalid === void 0 ? false : _a$invalid,\n name = _a.name,\n autoFocus = _a.autoFocus,\n disabled = _a.disabled,\n readOnly = _a.readOnly,\n maxLength = _a.maxLength,\n placeholder = _a.placeholder,\n defaultValue = _a.defaultValue,\n valueProp = _a.value,\n onChange = _a.onChange,\n onFocus = _a.onFocus,\n onBlur = _a.onBlur,\n trimValueOnBlur = _a.trimValueOnBlur,\n rest = __rest(_a, [\"prefixCls\", \"role\", \"className\", \"style\", \"type\", \"size\", \"appearance\", \"prepend\", \"append\", \"prefix\", \"suffix\", \"clearableTrigger\", \"clearable\", \"invalid\", \"name\", \"autoFocus\", \"disabled\", \"readOnly\", \"maxLength\", \"placeholder\", \"defaultValue\", \"value\", \"onChange\", \"onFocus\", \"onBlur\", \"trimValueOnBlur\"]); // @TODO: 临时方案,后面迁移至 InputGroup\n\n\n var _useMemo = useMemo(function () {\n var shouldUnset = [false, false]; // @ts-ignore\n // @ts-ignore\n\n if ( /*#__PURE__*/isValidElement(prepend) && ['Select', 'Button'].includes(prepend.type.HiName)) {\n shouldUnset[0] = true;\n } // @ts-ignore\n // @ts-ignore\n\n\n if ( /*#__PURE__*/isValidElement(append) && ['Select', 'Button'].includes(append.type.HiName)) {\n shouldUnset[1] = true;\n }\n\n return shouldUnset;\n }, [prepend, append]),\n unsetPrepend = _useMemo[0],\n unsetAppend = _useMemo[1];\n\n var inputElementRef = useRef(null);\n var proxyOnChange = useCallback(function (value, evt) {\n if (!onChange) return;\n onChangeMock(onChange, evt, inputElementRef.current, value);\n }, [onChange]);\n\n var _useInput = useInput({\n name: name,\n autoFocus: autoFocus,\n disabled: disabled,\n readOnly: readOnly,\n maxLength: maxLength,\n placeholder: placeholder,\n defaultValue: defaultValue,\n value: valueProp,\n onChange: proxyOnChange,\n onFocus: onFocus,\n onBlur: onBlur,\n trimValueOnBlur: trimValueOnBlur\n }),\n tryChangeValue = _useInput.tryChangeValue,\n focused = _useInput.focused,\n value = _useInput.value,\n getInputProps = _useInput.getInputProps;\n\n var focus = useCallback(function () {\n var _a;\n\n (_a = inputElementRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n }, []);\n var handleReset = useCallback(function (evt) {\n tryChangeValue('', evt);\n focus();\n }, [tryChangeValue, focus]);\n\n var _useState = useState(false),\n hover = _useState[0],\n setHover = _useState[1]; // 在开启 clearable 下展示 清除内容按钮,可点击进行内容清楚\n\n\n var showClearableIcon = clearable && !!value && !disabled;\n var mergedRef = useMergeRefs(ref, inputElementRef);\n var cls = cx(className, prefixCls + \"__outer\", prepend && prefixCls + \"__outer--prepend\", prepend && unsetPrepend && prefixCls + \"__outer--prepend-unset\", append && prefixCls + \"__outer--append\", append && unsetAppend && prefixCls + \"__outer--append-unset\", prefixCls + \"--appearance-\" + appearance, prefixCls + \"--size-\" + size);\n return /*#__PURE__*/React.createElement(\"div\", {\n role: role,\n className: cls,\n style: style\n }, prepend ? /*#__PURE__*/React.createElement(\"div\", {\n className: prefixCls + \"__prepend\"\n }, prepend) : null, /*#__PURE__*/React.createElement(\"div\", {\n className: cx(prefixCls + \"__inner\", prefix && prefixCls + \"__inner--prefix\", suffix && prefixCls + \"__inner--suffix\", // TODO: bem规范统一\n focused && \"focused\", disabled && 'disabled', readOnly && 'readonly', invalid && 'invalid'),\n onMouseOver: function onMouseOver(e) {\n setHover(true);\n },\n onMouseLeave: function onMouseLeave(e) {\n setHover(false);\n }\n }, prefix ? /*#__PURE__*/React.createElement(\"span\", {\n className: prefixCls + \"__prefix\"\n }, prefix) : null, /*#__PURE__*/React.createElement(\"input\", Object.assign({\n ref: mergedRef,\n className: cx(prefixCls, focused && \"focused\", disabled && 'disabled', readOnly && 'readonly'),\n type: type\n }, getInputProps(), rest)), suffix || showClearableIcon ? /*#__PURE__*/React.createElement(\"span\", {\n className: prefixCls + \"__suffix\"\n }, showClearableIcon ? /*#__PURE__*/React.createElement(\"span\", {\n className: cx(prefixCls + \"__clear\", (clearableTrigger === 'always' || hover) && 'active'),\n role: \"button\",\n tabIndex: -1,\n onClick: handleReset\n }, /*#__PURE__*/React.createElement(CloseCircleFilled, null)) : null, suffix) : null), append ? /*#__PURE__*/React.createElement(\"div\", {\n className: prefixCls + \"__append\"\n }, append) : null);\n});\n\nif (__DEV__) {\n Input.displayName = 'Input';\n}\n/**\n * 模拟伪装目标事件 target\n *\n * @param target\n * @param evt\n * @param onChange\n * @param targetValue\n * @returns\n */\n\n\nfunction onChangeMock(onChange, evt, target, targetValue) {\n var event = evt; // 点击 clearIcon 或者 失焦 trim 时,都会代理 onChange 的事件对象 target 指向 input.target\n\n if (evt.type !== 'change') {\n if (!target) return;\n var originalTargetValue = target.value;\n event = Object.create(evt);\n event.target = target;\n event.currentTarget = target;\n target.value = targetValue;\n onChange(event); // 重置为之前值\n\n target.value = originalTargetValue;\n return;\n }\n\n onChange(event);\n}\n\nexport { Input, onChangeMock };\n//# sourceMappingURL=Input.js.map\n"],"names":["_prefix","getPrefixCls","Input","forwardRef","_a","ref","prefixCls","role","_a$role","className","style","type","_a$type","size","_a$size","appearance","_a$appearance","prepend","append","prefix","suffix","clearableTrigger","_a$clearableTrigger","clearable","_a$clearable","invalid","_a$invalid","name","autoFocus","disabled","readOnly","maxLength","placeholder","defaultValue","valueProp","value","onChange","onFocus","onBlur","trimValueOnBlur","rest","useMemo","shouldUnset","isValidElement","includes","HiName","unsetPrepend","_useMemo","unsetAppend","inputElementRef","useRef","proxyOnChange","useCallback","evt","onChangeMock","current","useInput","tryChangeValue","_useInput","focused","getInputProps","focus","handleReset","useState","hover","_useState","setHover","showClearableIcon","mergedRef","useMergeRefs","cls","cx","React","onMouseOver","e","onMouseLeave","tabIndex","onClick","__DEV__","target","targetValue","event","originalTargetValue","Object"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Input.js","sources":["../../../../../../../input/lib/esm/Input.js"],"sourcesContent":["/** @LICENSE\n * @hi-ui/input\n * https://github.com/XiaoMi/hiui/tree/master/packages/ui/input#readme\n *\n * Copyright (c) HIUI <mi-hiui@xiaomi.com>.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { __rest } from 'tslib';\nimport React, { forwardRef, useMemo, isValidElement, useRef, useCallback, useState } from 'react';\nimport { getPrefixCls, cx } from '@hi-ui/classname';\nimport { __DEV__ } from '@hi-ui/env';\nimport { useMergeRefs } from '@hi-ui/use-merge-refs';\nimport { CloseCircleFilled } from '@hi-ui/icons';\nimport { useInput } from './use-input.js';\n\nvar _prefix = getPrefixCls('input');\n/**\n * 输入框\n *\n * @TODO:\n * 1. size api 确认\n * 2. 修改类名结构\n * 3. 支持带数字展示\n * 4. InputGroup 模式支持\n * 5. 手动聚焦支持额外配置\n */\n\n\nvar Input = /*#__PURE__*/forwardRef(function (_a, ref) {\n var _a$prefixCls = _a.prefixCls,\n prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,\n _a$role = _a.role,\n role = _a$role === void 0 ? 'input' : _a$role,\n className = _a.className,\n style = _a.style,\n _a$size = _a.size,\n size = _a$size === void 0 ? 'md' : _a$size,\n _a$appearance = _a.appearance,\n appearance = _a$appearance === void 0 ? 'outline' : _a$appearance,\n prepend = _a.prepend,\n append = _a.append,\n prefix = _a.prefix,\n suffix = _a.suffix,\n _a$clearableTrigger = _a.clearableTrigger,\n clearableTrigger = _a$clearableTrigger === void 0 ? 'hover' : _a$clearableTrigger,\n _a$clearable = _a.clearable,\n clearable = _a$clearable === void 0 ? false : _a$clearable,\n _a$invalid = _a.invalid,\n invalid = _a$invalid === void 0 ? false : _a$invalid,\n name = _a.name,\n autoFocus = _a.autoFocus,\n disabled = _a.disabled,\n readOnly = _a.readOnly,\n maxLength = _a.maxLength,\n placeholder = _a.placeholder,\n defaultValue = _a.defaultValue,\n valueProp = _a.value,\n onChange = _a.onChange,\n onFocus = _a.onFocus,\n onBlur = _a.onBlur,\n trimValueOnBlur = _a.trimValueOnBlur,\n type = _a.type,\n rest = __rest(_a, [\"prefixCls\", \"role\", \"className\", \"style\", \"size\", \"appearance\", \"prepend\", \"append\", \"prefix\", \"suffix\", \"clearableTrigger\", \"clearable\", \"invalid\", \"name\", \"autoFocus\", \"disabled\", \"readOnly\", \"maxLength\", \"placeholder\", \"defaultValue\", \"value\", \"onChange\", \"onFocus\", \"onBlur\", \"trimValueOnBlur\", \"type\"]); // @TODO: 临时方案,后面迁移至 InputGroup\n\n\n var _useMemo = useMemo(function () {\n var shouldUnset = [false, false]; // @ts-ignore\n // @ts-ignore\n\n if ( /*#__PURE__*/isValidElement(prepend) && ['Select', 'Button'].includes(prepend.type.HiName)) {\n shouldUnset[0] = true;\n } // @ts-ignore\n // @ts-ignore\n\n\n if ( /*#__PURE__*/isValidElement(append) && ['Select', 'Button'].includes(append.type.HiName)) {\n shouldUnset[1] = true;\n }\n\n return shouldUnset;\n }, [prepend, append]),\n unsetPrepend = _useMemo[0],\n unsetAppend = _useMemo[1];\n\n var inputElementRef = useRef(null);\n var proxyOnChange = useCallback(function (value, evt) {\n if (!onChange) return;\n onChangeMock(onChange, evt, inputElementRef.current, value);\n }, [onChange]);\n var clearElementRef = useRef(null);\n\n var _useInput = useInput({\n clearElementRef: clearElementRef,\n name: name,\n autoFocus: autoFocus,\n disabled: disabled,\n readOnly: readOnly,\n maxLength: maxLength,\n placeholder: placeholder,\n defaultValue: defaultValue,\n value: valueProp,\n onChange: proxyOnChange,\n onFocus: onFocus,\n onBlur: onBlur,\n trimValueOnBlur: trimValueOnBlur,\n type: type\n }),\n tryChangeValue = _useInput.tryChangeValue,\n focused = _useInput.focused,\n value = _useInput.value,\n getInputProps = _useInput.getInputProps;\n\n var focus = useCallback(function () {\n var _a;\n\n (_a = inputElementRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n }, []);\n var handleReset = useCallback(function (evt) {\n tryChangeValue('', evt);\n focus();\n }, [tryChangeValue, focus]);\n\n var _useState = useState(false),\n hover = _useState[0],\n setHover = _useState[1]; // 在开启 clearable 下展示 清除内容按钮,可点击进行内容清楚\n\n\n var showClearableIcon = clearable && !!value && !disabled;\n var mergedRef = useMergeRefs(ref, inputElementRef);\n var cls = cx(className, prefixCls + \"__outer\", prepend && prefixCls + \"__outer--prepend\", prepend && unsetPrepend && prefixCls + \"__outer--prepend-unset\", append && prefixCls + \"__outer--append\", append && unsetAppend && prefixCls + \"__outer--append-unset\", prefixCls + \"--appearance-\" + appearance, prefixCls + \"--size-\" + size);\n return /*#__PURE__*/React.createElement(\"div\", {\n role: role,\n className: cls,\n style: style\n }, prepend ? /*#__PURE__*/React.createElement(\"div\", {\n className: prefixCls + \"__prepend\"\n }, prepend) : null, /*#__PURE__*/React.createElement(\"div\", {\n className: cx(prefixCls + \"__inner\", prefix && prefixCls + \"__inner--prefix\", suffix && prefixCls + \"__inner--suffix\", // TODO: bem规范统一\n focused && \"focused\", disabled && 'disabled', readOnly && 'readonly', invalid && 'invalid'),\n onMouseOver: function onMouseOver(e) {\n setHover(true);\n },\n onMouseLeave: function onMouseLeave(e) {\n setHover(false);\n }\n }, prefix ? /*#__PURE__*/React.createElement(\"span\", {\n className: prefixCls + \"__prefix\"\n }, prefix) : null, /*#__PURE__*/React.createElement(\"input\", Object.assign({\n ref: mergedRef,\n className: cx(prefixCls, focused && \"focused\", disabled && 'disabled', readOnly && 'readonly'),\n type: type\n }, getInputProps(), rest)), suffix || showClearableIcon ? /*#__PURE__*/React.createElement(\"span\", {\n className: prefixCls + \"__suffix\"\n }, showClearableIcon ? /*#__PURE__*/React.createElement(\"span\", {\n ref: clearElementRef,\n className: cx(prefixCls + \"__clear\", (clearableTrigger === 'always' || hover) && 'active'),\n role: \"button\",\n tabIndex: -1,\n onClick: handleReset\n }, /*#__PURE__*/React.createElement(CloseCircleFilled, null)) : null, suffix) : null), append ? /*#__PURE__*/React.createElement(\"div\", {\n className: prefixCls + \"__append\"\n }, append) : null);\n});\n\nif (__DEV__) {\n Input.displayName = 'Input';\n}\n/**\n * 模拟伪装目标事件 target\n *\n * @param target\n * @param evt\n * @param onChange\n * @param targetValue\n * @returns\n */\n\n\nfunction onChangeMock(onChange, evt, target, targetValue) {\n var event = evt; // 点击 clearIcon 或者 失焦 trim 时,都会代理 onChange 的事件对象 target 指向 input.target\n\n if (evt.type !== 'change') {\n if (!target) return;\n var originalTargetValue = target.value;\n event = Object.create(evt);\n event.target = target;\n event.currentTarget = target;\n target.value = targetValue;\n onChange(event, targetValue); // 重置为之前值\n\n target.value = originalTargetValue;\n return;\n }\n\n onChange(event, targetValue);\n}\n\nexport { Input, onChangeMock };\n//# sourceMappingURL=Input.js.map\n"],"names":["_prefix","getPrefixCls","Input","forwardRef","_a","ref","prefixCls","role","_a$role","className","style","size","_a$size","appearance","_a$appearance","prepend","append","prefix","suffix","clearableTrigger","_a$clearableTrigger","clearable","_a$clearable","invalid","_a$invalid","name","autoFocus","disabled","readOnly","maxLength","placeholder","defaultValue","valueProp","value","onChange","onFocus","onBlur","trimValueOnBlur","type","rest","useMemo","shouldUnset","isValidElement","includes","HiName","unsetPrepend","_useMemo","unsetAppend","inputElementRef","useRef","proxyOnChange","useCallback","evt","onChangeMock","current","clearElementRef","useInput","tryChangeValue","_useInput","focused","getInputProps","focus","handleReset","useState","hover","_useState","setHover","showClearableIcon","mergedRef","useMergeRefs","cls","cx","React","onMouseOver","e","onMouseLeave","tabIndex","onClick","__DEV__","target","targetValue","event","originalTargetValue","Object"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAMA,OAAO,GAAGC,sBAAAA,CAAhB,OAAgBA,CAAhB;AAEA;;;;;;;;;;;;IAUaC,KAAK,gBAAGC,gBAAAA,CACnB,UAAAC,EAAA,EAAAC,GAAA,EAAA;wBAEIC;MAAAA,SAAAA,GAAAA,YAAAA,KAAAA,KAAAA,CAAAA,GAAYN,OAAZM,GAAYN;mBACZO;MAAAA,IAAAA,GAAAA,OAAAA,KAAAA,KAAAA,CAAAA,GAAO,OAAPA,GAAOC;MACPC,SAAAA,GAAAA,EAAAA,CAAAA;MACAC,KAAAA,GAAAA,EAAAA,CAAAA;mBACAC;MAAAA,IAAAA,GAAAA,OAAAA,KAAAA,KAAAA,CAAAA,GAAO,IAAPA,GAAOC;yBACPC;MAAAA,UAAAA,GAAAA,aAAAA,KAAAA,KAAAA,CAAAA,GAAa,SAAbA,GAAaC;MACbC,OAAAA,GAAAA,EAAAA,CAAAA;MACAC,MAAAA,GAAAA,EAAAA,CAAAA;MACAC,MAAAA,GAAAA,EAAAA,CAAAA;MACAC,MAAAA,GAAAA,EAAAA,CAAAA;+BACAC;MAAAA,gBAAAA,GAAAA,mBAAAA,KAAAA,KAAAA,CAAAA,GAAmB,OAAnBA,GAAmBC;wBACnBC;MAAAA,SAAAA,GAAAA,YAAAA,KAAAA,KAAAA,CAAAA,GAAY,KAAZA,GAAYC;sBACZC;MAAAA,OAAAA,GAAAA,UAAAA,KAAAA,KAAAA,CAAAA,GAAU,KAAVA,GAAUC;MAEVC,IAAAA,GAAAA,EAAAA,CAAAA;MACAC,SAAAA,GAAAA,EAAAA,CAAAA;MACAC,QAAAA,GAAAA,EAAAA,CAAAA;MACAC,QAAAA,GAAAA,EAAAA,CAAAA;MACAC,SAAAA,GAAAA,EAAAA,CAAAA;MACAC,WAAAA,GAAAA,EAAAA,CAAAA;MACAC,YAAAA,GAAAA,EAAAA,CAAAA;MACOC,SAAAA,GAAAA,EAAAA,CAAPC;MACAC,QAAAA,GAAAA,EAAAA,CAAAA;MACAC,OAAAA,GAAAA,EAAAA,CAAAA;MACAC,MAAAA,GAAAA,EAAAA,CAAAA;MACAC,eAAAA,GAAAA,EAAAA,CAAAA;MACAC,IAAAA,GAAAA,EAAAA,CAAAA;MACGC,IAAAA,GAAAA,YAAAA,CAAAA,EAAAA,EA5BL,CAAA,WAAA,EAAA,MAAA,EAAA,WAAA,EAAA,OAAA,EAAA,MAAA,EAAA,YAAA,EAAA,SAAA,EAAA,QAAA,EAAA,QAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,SAAA,EAAA,MAAA,EAAA,WAAA,EAAA,UAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,OAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,CA4BKA,EA7BP;;;iBAkCsCC,aAAAA,CAAQ,YAAA;QACpCC,WAAW,GAAG,CAAA,KAAA,EAAA,KAAA,EADsB;;;;;;;AAGtCC,IAAAA,oBAAAA,CAAAA,OAAAA,KAA2B,CAAA,QAAA,EAAA,QAAA,EAAAC,QAAA,CAA8B5B,OAAO,CAAPA,IAAAA,CAA9B6B,MAAA,GAAoD;AACjFH,MAAAA,WAAW,CAAXA,CAAW,CAAXA,GAAAA,IAAAA;AAJwC,KAAA;;;;;;;;AAQtCC,IAAAA,oBAAAA,CAAAA,MAAAA,KAA0B,CAAA,QAAA,EAAA,QAAA,EAAAC,QAAA,CAA8B3B,MAAM,CAANA,IAAAA,CAA9B4B,MAAA,GAAmD;AAC/EH,MAAAA,WAAW,CAAXA,CAAW,CAAXA,GAAAA,IAAAA;;;WAEKA;AAXkC,GAAPD,EAYjC,CAAAzB,OAAA,EAZwCC,MAYxC,CAZiCwB;MAA7BK,YAAP,GAAAC,QAAA,CAAA,CAAA;MAAqBC,WAArB,GAAAD,QAAA,CAAA,CAAA;;MAcME,eAAe,GAAGC,YAAAA,CAAM,IAANA;MAElBC,aAAa,GAAGC,iBAAAA,CACpB,UAAAlB,KAAA,EAAAmB,GAAA,EAAA;QACM,CAAClB,UAAU;AACfmB,IAAAA,YAAY,CAAAnB,QAAA,EAAAkB,GAAA,EAAgBJ,eAAe,CAA/BM,OAAA,EAAZD,KAAY,CAAZA;AAH6B,GAAXF,EAKpB,CAL+BjB,QAK/B,CALoBiB;MAQhBI,eAAe,GAAGN,YAAAA,CAAM,IAANA;;kBAEkCO,iBAAAA,CAAS;AACjED,IAAAA,eAAe,EADkDA,eAAA;AAEjE9B,IAAAA,IAAI,EAF6DA,IAAA;AAGjEC,IAAAA,SAAS,EAHwDA,SAAA;AAIjEC,IAAAA,QAAQ,EAJyDA,QAAA;AAKjEC,IAAAA,QAAQ,EALyDA,QAAA;AAMjEC,IAAAA,SAAS,EANwDA,SAAA;AAOjEC,IAAAA,WAAW,EAPsDA,WAAA;AAQjEC,IAAAA,YAAY,EARqDA,YAAA;AASjEE,IAAAA,KAAK,EAT4DD,SAAA;AAUjEE,IAAAA,QAAQ,EAVyDgB,aAAA;AAWjEf,IAAAA,OAAO,EAX0DA,OAAA;AAYjEC,IAAAA,MAAM,EAZ2DA,MAAA;AAajEC,IAAAA,eAAe,EAbkDA,eAAA;AAcjEC,IAAAA,IAAI,EAAJA;AAdiE,GAATkB;MAAlDC,cAAR,GAAAC,SAAA,CAAQD;MAAgBE,OAAxB,GAAAD,SAAA,CAAwBC;MAAS1B,KAAjC,GAAAyB,SAAA,CAAiCzB;MAAO2B,aAAxC,GAAAF,SAAA,CAAwCE;;MAiBlCC,KAAK,GAAGV,iBAAAA,CAAY,YAAA;;;UACxBH,eAAe,CAACM,aAAAA,QAAAA,EAAAA,KAAAA,KAAAA,IAAAA,KAAAA,IAAAA,EAAAA,CAASO,KAATP;AADO,GAAXH,EAAW,EAAXA;MAIRW,WAAW,GAAGX,iBAAAA,CAClB,UAAAC,GAAA,EAAA;AACEK,IAAAA,cAAc,CAAA,EAAA,EAAdA,GAAc,CAAdA;AACAI,IAAAA,KAAK;AAHsB,GAAXV,EAKlB,CAAAM,cAAA,EAL6BI,KAK7B,CALkBV;;kBAQMY,cAAAA,CAAQ,KAARA;MAAnBC,KAAP,GAAAC,SAAA,CAAA,CAAA;MAAcC,QAAd,GAAAD,SAAA,CAAA,CAAA,EAzFF;;;MA2FQE,iBAAiB,GAAG9C,SAAS,IAAI,CAAC,CAAdA,KAAAA,IAAwB,CAACM;MAE7CyC,SAAS,GAAGC,kBAAAA,CAAYhE,GAAZgE,EAAYrB,eAAZqB;MAEZC,GAAG,GAAGC,YAAAA,CAAE9D,SAAF8D,EAEPjE,SAFS,GAAA,SAAFiE,EAGVxD,OAAO,IAAOT,SAAP,GAHK,kBAAFiE,EAIVxD,OAAO,IAAPA,YAAAA,IAA8BT,SAA9BS,GAJY,wBAAFwD,EAKVvD,MAAM,IAAOV,SAAP,GALM,iBAAFiE,EAMVvD,MAAM,IAANA,WAAAA,IAA4BV,SAA5BU,GANY,uBAAFuD,EAOPjE,SAPS,GAAA,eAOTA,GAPSO,UAAF0D,EAQPjE,SARS,GAAA,SAQTA,GARSK,IAAF4D;sBAYVC,yBAAAA,CAAAA,aAAAA,CAAAA,KAAAA,EAAAA;AAAKjE,IAAAA,IAAI,EAAEA,IAAXiE;AAAiB/D,IAAAA,SAAS,EAAE6D,GAA5BE;AAAiC9D,IAAAA,KAAK,EAAEA;AAAxC8D,GAAAA,EACGzD,OAAO,gBAAGyD,yBAAAA,CAAAA,aAAAA,CAAAA,KAAAA,EAAAA;AAAK/D,IAAAA,SAAS,EAAKH,SAAL,GAAA;AAAdkE,GAAAA,EAAHzD,OAAGyD,CAAH,GADVA,IAAAA,eAEEA,yBAAAA,CAAAA,aAAAA,CAAAA,KAAAA,EAAAA;AACE/D,IAAAA,SAAS,EAAE8D,YAAAA,CACNjE,SADQ,GAAA,SAAFiE,EAETtD,MAAM,IAAOX,SAAP,GAFK,iBAAFiE,EAGTrD,MAAM,IAAOZ,SAAP,GAHK,iBAAFiE;AAKTZ,IAAAA,OAAO,IALI,SAAFY,EAMT5C,QAAQ,IANG,UAAF4C,EAOT3C,QAAQ,IAPG,UAAF2C,EAQThD,OAAO,IARI,SAAFgD,CADbC;AAWEC,IAAAA,WAAW,EAAE,SAAAA,WAAA,CAAAC,CAAA,EAAA;AACXR,MAAAA,QAAQ,CAARA,IAAQ,CAARA;AAZJM,KAAAA;AAcEG,IAAAA,YAAY,EAAE,SAAAA,YAAA,CAAAD,CAAA,EAAA;AACZR,MAAAA,QAAQ,CAARA,KAAQ,CAARA;;AAfJM,GAAAA,EAkBGvD,MAAM,gBAAGuD,yBAAAA,CAAAA,aAAAA,CAAAA,MAAAA,EAAAA;AAAM/D,IAAAA,SAAS,EAAKH,SAAL,GAAA;AAAfkE,GAAAA,EAAHvD,MAAGuD,CAAH,GAlBTA,IAAAA,eAoBEA,yBAAAA,CAAAA,aAAAA,CAAAA,OAAAA,EAAAA,MAAAA,CAAAA,MAAAA,CAAAA;AACEnE,IAAAA,GAAG,EAAE+D,SADPI;AAEE/D,IAAAA,SAAS,EAAE8D,YAAAA,CAAEjE,SAAFiE,EAETZ,OAAO,IAFI,SAAFY,EAGT5C,QAAQ,IAHG,UAAF4C,EAIT3C,QAAQ,IAJG,UAAF2C,CAFbC;AAQElC,IAAAA,IAAI,EAAEA;AARRkC,GAAAA,EASMZ,aAAa,EATnBY,EApBFA,IAoBEA,CAAAA,CApBFA,EAiCGtD,MAAM,IAANA,iBAAAA,gBACCsD,yBAAAA,CAAAA,aAAAA,CAAAA,MAAAA,EAAAA;AAAM/D,IAAAA,SAAS,EAAKH,SAAL,GAAA;AAAfkE,GAAAA,EACGL,iBAAiB,gBAChBK,yBAAAA,CAAAA,aAAAA,CAAAA,MAAAA,EAAAA;AACEnE,IAAAA,GAAG,EAAEkD,eADPiB;AAEE/D,IAAAA,SAAS,EAAE8D,YAAAA,CACNjE,SADQ,GAAA,SAAFiE,EAET,CAACpD,gBAAgB,KAAhBA,QAAAA,IAAD6C,KAAA,KAFW,QAAFO,CAFbC;AAMEjE,IAAAA,IAAI,EAAC,QANPiE;AAOEI,IAAAA,QAAQ,EAAE,CAAC,CAPbJ;AAQEK,IAAAA,OAAO,EAAEf;AARXU,GAAAA,eAUEA,yBAAAA,CAAAA,aAAAA,CAAAA,uBAAAA,EAXc,IAWdA,CAVFA,CADgB,GADpBA,IAAAA,EADDtD,MACCsD,CADDtD,GAnCLsD,IAEEA,CAFFA,EAuDGxD,MAAM,gBAAGwD,yBAAAA,CAAAA,aAAAA,CAAAA,KAAAA,EAAAA;AAAK/D,IAAAA,SAAS,EAAKH,SAAL,GAAA;AAAdkE,GAAAA,EAAHxD,MAAGwD,CAAH,GAvDTA,IAAAA;AA5GyB,CAAVrE;;AAqPrB,IAAA2E,WAAA,EAAa;AACX5E,EAAAA,KAAK,CAALA,WAAAA,GAAAA,OAAAA;;AAGF;;;;;;;;;;;SASgBmD,aACdnB,UACAkB,KACA2B,QACAC,aAAAA;MAEIC,KAAK,GAAG7B,IAFZ4B;;MAKI5B,GAAG,CAAHA,IAAAA,KAAa,UAAU;QACrB,CAAC2B,QAAQ;QAEPG,mBAAmB,GAAGH,MAAM,CAAC9C;AACnCgD,IAAAA,KAAK,GAAGE,MAAM,CAANA,MAAAA,CAARF,GAAQE,CAARF;AAEAA,IAAAA,KAAK,CAALA,MAAAA,GAAAA,MAAAA;AACAA,IAAAA,KAAK,CAALA,aAAAA,GAAAA,MAAAA;AACAF,IAAAA,MAAM,CAANA,KAAAA,GAAAA,WAAAA;AACA7C,IAAAA,QAAQ,CAAA+C,KAAA,EATiBD,WASjB,CAAR9C,CATyB;;AAWzB6C,IAAAA,MAAM,CAANA,KAAAA,GAAAA,mBAAAA;;;;AAIF7C,EAAAA,QAAQ,CAAA+C,KAAA,EAAR/C,WAAQ,CAARA;;;;"}
|
@@ -94,24 +94,27 @@ var MockInput = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
94
94
|
value = _useUncontrolledState[0],
|
95
95
|
tryChangeValue = _useUncontrolledState[1];
|
96
96
|
|
97
|
-
var
|
97
|
+
var displayItem = React.useMemo(function () {
|
98
98
|
if (value === '') return null;
|
99
99
|
var displayItem = data.find(function (item) {
|
100
100
|
return item.id === value;
|
101
101
|
});
|
102
|
-
|
102
|
+
return displayItem || null;
|
103
|
+
}, [value, data]);
|
104
|
+
var displayValue = React.useMemo(function () {
|
105
|
+
if (!displayItem) return '';
|
103
106
|
|
104
107
|
if (displayRender) {
|
105
108
|
return displayRender(displayItem);
|
106
109
|
}
|
107
110
|
|
108
111
|
return displayItem.title;
|
109
|
-
}, [
|
112
|
+
}, [displayItem, displayRender]);
|
110
113
|
var handleClear = React.useCallback(function (evt) {
|
111
114
|
if (disabled) return;
|
112
115
|
evt.stopPropagation();
|
113
|
-
tryChangeValue(NOOP_VALUE);
|
114
|
-
}, [tryChangeValue, disabled]);
|
116
|
+
tryChangeValue(NOOP_VALUE, displayItem);
|
117
|
+
}, [tryChangeValue, disabled, displayItem]);
|
115
118
|
|
116
119
|
var _useState = React.useState(false),
|
117
120
|
hover = _useState[0],
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"MockInput.js","sources":["../../../../../../../input/lib/esm/MockInput.js"],"sourcesContent":["/** @LICENSE\n * @hi-ui/input\n * https://github.com/XiaoMi/hiui/tree/master/packages/ui/input#readme\n *\n * Copyright (c) HIUI <mi-hiui@xiaomi.com>.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { __rest } from 'tslib';\nimport React, { forwardRef, useMemo, useCallback, useState } from 'react';\nimport { getPrefixCls, cx } from '@hi-ui/classname';\nimport { __DEV__ } from '@hi-ui/env';\nimport { useUncontrolledState } from '@hi-ui/use-uncontrolled-state';\nimport { CloseCircleFilled } from '@hi-ui/icons';\nvar _role = 'mock-input';\n\nvar _prefix = getPrefixCls(_role);\n\nvar NOOP_VALUE = '';\nvar NOOP_ARRAY = [];\n/**\n * 支持自定义渲染输入框内容,暂时仅供内部 Picker 类组件使用,不对外提供\n */\n\nvar MockInput = /*#__PURE__*/forwardRef(function (_a, ref) {\n var _a$prefixCls = _a.prefixCls,\n prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,\n _a$role = _a.role,\n role = _a$role === void 0 ? _role : _a$role,\n className = _a.className,\n _a$data = _a.data,\n data = _a$data === void 0 ? NOOP_ARRAY : _a$data,\n _a$defaultValue = _a.defaultValue,\n defaultValue = _a$defaultValue === void 0 ? NOOP_VALUE : _a$defaultValue,\n valueProp = _a.value,\n onChange = _a.onChange,\n placeholder = _a.placeholder,\n _a$disabled = _a.disabled,\n disabled = _a$disabled === void 0 ? false : _a$disabled,\n _a$clearable = _a.clearable,\n clearable = _a$clearable === void 0 ? false : _a$clearable,\n _a$focused = _a.focused,\n focused = _a$focused === void 0 ? false : _a$focused,\n _a$invalid = _a.invalid,\n invalid = _a$invalid === void 0 ? false : _a$invalid,\n _a$readOnly = _a.readOnly,\n readOnly = _a$readOnly === void 0 ? false : _a$readOnly,\n _a$size = _a.size,\n size = _a$size === void 0 ? 'md' : _a$size,\n _a$appearance = _a.appearance,\n appearance = _a$appearance === void 0 ? 'outline' : _a$appearance,\n _a$clearableTrigger = _a.clearableTrigger,\n clearableTrigger = _a$clearableTrigger === void 0 ? 'hover' : _a$clearableTrigger,\n displayRender = _a.displayRender,\n suffix = _a.suffix,\n _onMouseOver = _a.onMouseOver,\n _onMouseLeave = _a.onMouseLeave,\n rest = __rest(_a, [\"prefixCls\", \"role\", \"className\", \"data\", \"defaultValue\", \"value\", \"onChange\", \"placeholder\", \"disabled\", \"clearable\", \"focused\", \"invalid\", \"readOnly\", \"size\", \"appearance\", \"clearableTrigger\", \"displayRender\", \"suffix\", \"onMouseOver\", \"onMouseLeave\"]);\n\n var _useUncontrolledState = useUncontrolledState(defaultValue, valueProp, onChange),\n value = _useUncontrolledState[0],\n tryChangeValue = _useUncontrolledState[1];\n\n var displayValue = useMemo(function () {\n if (value === '') return null;\n var displayItem = data.find(function (item) {\n return item.id === value;\n });\n if (!displayItem) return null;\n\n if (displayRender) {\n return displayRender(displayItem);\n }\n\n return displayItem.title;\n }, [data, value, displayRender]);\n var handleClear = useCallback(function (evt) {\n if (disabled) return;\n evt.stopPropagation();\n tryChangeValue(NOOP_VALUE);\n }, [tryChangeValue, disabled]);\n\n var _useState = useState(false),\n hover = _useState[0],\n setHover = _useState[1];\n\n var trySetHover = useCallback(function (hovered) {\n if (disabled) return;\n setHover(hovered);\n }, [disabled]);\n var hasValue = !!displayValue; // 在开启 clearable 下展示 清除内容按钮,可点击进行内容清除\n\n var showClearableIcon = useMemo(function () {\n return clearable && hasValue && !disabled && (clearableTrigger === 'always' || hover);\n }, [clearable, hasValue, disabled, clearableTrigger, hover]);\n var cls = cx(prefixCls, className, prefixCls + \"--appearance-\" + appearance, prefixCls + \"--size-\" + size, focused && \"focused\", disabled && 'disabled', readOnly && 'readonly', invalid && 'invalid');\n return /*#__PURE__*/React.createElement(\"div\", Object.assign({\n ref: ref,\n role: role,\n className: cls,\n onMouseOver: function onMouseOver(evt) {\n trySetHover(true);\n _onMouseOver === null || _onMouseOver === void 0 ? void 0 : _onMouseOver(evt);\n },\n onMouseLeave: function onMouseLeave(evt) {\n trySetHover(false);\n _onMouseLeave === null || _onMouseLeave === void 0 ? void 0 : _onMouseLeave(evt);\n }\n }, rest), hasValue ? /*#__PURE__*/React.createElement(\"span\", {\n className: prefixCls + \"__value\"\n }, displayValue) : /*#__PURE__*/React.createElement(\"span\", {\n className: prefixCls + \"__placeholder\"\n }, placeholder), suffix || showClearableIcon ? /*#__PURE__*/React.createElement(\"span\", {\n className: prefixCls + \"__suffix\"\n }, showClearableIcon ? /*#__PURE__*/React.createElement(\"span\", {\n role: \"button\",\n tabIndex: -1,\n className: cx(prefixCls + \"__clear\", 'active'),\n onClick: handleClear\n }, /*#__PURE__*/React.createElement(CloseCircleFilled, null)) : suffix) : null);\n});\n\nif (__DEV__) {\n MockInput.displayName = 'MockInput';\n}\n\nexport { MockInput };\n//# sourceMappingURL=MockInput.js.map\n"],"names":["_role","_prefix","getPrefixCls","NOOP_VALUE","NOOP_ARRAY","MockInput","forwardRef","_a","ref","prefixCls","role","className","data","defaultValue","valueProp","value","onChange","placeholder","disabled","_a$disabled","clearable","_a$clearable","focused","_a$focused","invalid","_a$invalid","readOnly","_a$readOnly","size","_a$size","appearance","_a$appearance","clearableTrigger","_a$clearableTrigger","displayRender","suffix","onMouseOver","onMouseLeave","rest","useUncontrolledState","_useUncontrolledState","tryChangeValue","displayValue","useMemo","displayItem","find","item","title","handleClear","useCallback","evt","useState","hover","_useState","setHover","trySetHover","hovered","hasValue","showClearableIcon","cls","cx","React","tabIndex","onClick","__DEV__"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"MockInput.js","sources":["../../../../../../../input/lib/esm/MockInput.js"],"sourcesContent":["/** @LICENSE\n * @hi-ui/input\n * https://github.com/XiaoMi/hiui/tree/master/packages/ui/input#readme\n *\n * Copyright (c) HIUI <mi-hiui@xiaomi.com>.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { __rest } from 'tslib';\nimport React, { forwardRef, useMemo, useCallback, useState } from 'react';\nimport { getPrefixCls, cx } from '@hi-ui/classname';\nimport { __DEV__ } from '@hi-ui/env';\nimport { useUncontrolledState } from '@hi-ui/use-uncontrolled-state';\nimport { CloseCircleFilled } from '@hi-ui/icons';\nvar _role = 'mock-input';\n\nvar _prefix = getPrefixCls(_role);\n\nvar NOOP_VALUE = '';\nvar NOOP_ARRAY = [];\n/**\n * 支持自定义渲染输入框内容,暂时仅供内部 Picker 类组件使用,不对外提供\n */\n\nvar MockInput = /*#__PURE__*/forwardRef(function (_a, ref) {\n var _a$prefixCls = _a.prefixCls,\n prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,\n _a$role = _a.role,\n role = _a$role === void 0 ? _role : _a$role,\n className = _a.className,\n _a$data = _a.data,\n data = _a$data === void 0 ? NOOP_ARRAY : _a$data,\n _a$defaultValue = _a.defaultValue,\n defaultValue = _a$defaultValue === void 0 ? NOOP_VALUE : _a$defaultValue,\n valueProp = _a.value,\n onChange = _a.onChange,\n placeholder = _a.placeholder,\n _a$disabled = _a.disabled,\n disabled = _a$disabled === void 0 ? false : _a$disabled,\n _a$clearable = _a.clearable,\n clearable = _a$clearable === void 0 ? false : _a$clearable,\n _a$focused = _a.focused,\n focused = _a$focused === void 0 ? false : _a$focused,\n _a$invalid = _a.invalid,\n invalid = _a$invalid === void 0 ? false : _a$invalid,\n _a$readOnly = _a.readOnly,\n readOnly = _a$readOnly === void 0 ? false : _a$readOnly,\n _a$size = _a.size,\n size = _a$size === void 0 ? 'md' : _a$size,\n _a$appearance = _a.appearance,\n appearance = _a$appearance === void 0 ? 'outline' : _a$appearance,\n _a$clearableTrigger = _a.clearableTrigger,\n clearableTrigger = _a$clearableTrigger === void 0 ? 'hover' : _a$clearableTrigger,\n displayRender = _a.displayRender,\n suffix = _a.suffix,\n _onMouseOver = _a.onMouseOver,\n _onMouseLeave = _a.onMouseLeave,\n rest = __rest(_a, [\"prefixCls\", \"role\", \"className\", \"data\", \"defaultValue\", \"value\", \"onChange\", \"placeholder\", \"disabled\", \"clearable\", \"focused\", \"invalid\", \"readOnly\", \"size\", \"appearance\", \"clearableTrigger\", \"displayRender\", \"suffix\", \"onMouseOver\", \"onMouseLeave\"]);\n\n var _useUncontrolledState = useUncontrolledState(defaultValue, valueProp, onChange),\n value = _useUncontrolledState[0],\n tryChangeValue = _useUncontrolledState[1];\n\n var displayItem = useMemo(function () {\n if (value === '') return null;\n var displayItem = data.find(function (item) {\n return item.id === value;\n });\n return displayItem || null;\n }, [value, data]);\n var displayValue = useMemo(function () {\n if (!displayItem) return '';\n\n if (displayRender) {\n return displayRender(displayItem);\n }\n\n return displayItem.title;\n }, [displayItem, displayRender]);\n var handleClear = useCallback(function (evt) {\n if (disabled) return;\n evt.stopPropagation();\n tryChangeValue(NOOP_VALUE, displayItem);\n }, [tryChangeValue, disabled, displayItem]);\n\n var _useState = useState(false),\n hover = _useState[0],\n setHover = _useState[1];\n\n var trySetHover = useCallback(function (hovered) {\n if (disabled) return;\n setHover(hovered);\n }, [disabled]);\n var hasValue = !!displayValue; // 在开启 clearable 下展示 清除内容按钮,可点击进行内容清除\n\n var showClearableIcon = useMemo(function () {\n return clearable && hasValue && !disabled && (clearableTrigger === 'always' || hover);\n }, [clearable, hasValue, disabled, clearableTrigger, hover]);\n var cls = cx(prefixCls, className, prefixCls + \"--appearance-\" + appearance, prefixCls + \"--size-\" + size, focused && \"focused\", disabled && 'disabled', readOnly && 'readonly', invalid && 'invalid');\n return /*#__PURE__*/React.createElement(\"div\", Object.assign({\n ref: ref,\n role: role,\n className: cls,\n onMouseOver: function onMouseOver(evt) {\n trySetHover(true);\n _onMouseOver === null || _onMouseOver === void 0 ? void 0 : _onMouseOver(evt);\n },\n onMouseLeave: function onMouseLeave(evt) {\n trySetHover(false);\n _onMouseLeave === null || _onMouseLeave === void 0 ? void 0 : _onMouseLeave(evt);\n }\n }, rest), hasValue ? /*#__PURE__*/React.createElement(\"span\", {\n className: prefixCls + \"__value\"\n }, displayValue) : /*#__PURE__*/React.createElement(\"span\", {\n className: prefixCls + \"__placeholder\"\n }, placeholder), suffix || showClearableIcon ? /*#__PURE__*/React.createElement(\"span\", {\n className: prefixCls + \"__suffix\"\n }, showClearableIcon ? /*#__PURE__*/React.createElement(\"span\", {\n role: \"button\",\n tabIndex: -1,\n className: cx(prefixCls + \"__clear\", 'active'),\n onClick: handleClear\n }, /*#__PURE__*/React.createElement(CloseCircleFilled, null)) : suffix) : null);\n});\n\nif (__DEV__) {\n MockInput.displayName = 'MockInput';\n}\n\nexport { MockInput };\n//# sourceMappingURL=MockInput.js.map\n"],"names":["_role","_prefix","getPrefixCls","NOOP_VALUE","NOOP_ARRAY","MockInput","forwardRef","_a","ref","prefixCls","role","className","data","defaultValue","valueProp","value","onChange","placeholder","disabled","_a$disabled","clearable","_a$clearable","focused","_a$focused","invalid","_a$invalid","readOnly","_a$readOnly","size","_a$size","appearance","_a$appearance","clearableTrigger","_a$clearableTrigger","displayRender","suffix","onMouseOver","onMouseLeave","rest","useUncontrolledState","_useUncontrolledState","tryChangeValue","displayItem","useMemo","find","item","displayValue","title","handleClear","useCallback","evt","useState","hover","_useState","setHover","trySetHover","hovered","hasValue","showClearableIcon","cls","cx","React","tabIndex","onClick","__DEV__"],"mappings":"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"}
|
@@ -47,7 +47,14 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
47
47
|
|
48
48
|
var _prefix = classname.getPrefixCls('input');
|
49
49
|
/**
|
50
|
-
*
|
50
|
+
* 动态文本域输入框
|
51
|
+
*
|
52
|
+
* @TODO:
|
53
|
+
* 1. 支持带数字展示
|
54
|
+
* 2. 支持自适应行高大小
|
55
|
+
* 3. 支持清空按钮
|
56
|
+
* 4. 支持最大最小行支持
|
57
|
+
* 5. 手动聚焦支持额外配置
|
51
58
|
*/
|
52
59
|
|
53
60
|
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TextArea.js","sources":["../../../../../../../input/lib/esm/TextArea.js"],"sourcesContent":["/** @LICENSE\n * @hi-ui/input\n * https://github.com/XiaoMi/hiui/tree/master/packages/ui/input#readme\n *\n * Copyright (c) HIUI <mi-hiui@xiaomi.com>.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { __rest } from 'tslib';\nimport React, { forwardRef } from 'react';\nimport { getPrefixCls, cx } from '@hi-ui/classname';\nimport { __DEV__ } from '@hi-ui/env';\nimport { useInput } from './use-input.js';\nimport { useLatestCallback } from '@hi-ui/use-latest';\n\nvar _prefix = getPrefixCls('input');\n/**\n * TODO
|
1
|
+
{"version":3,"file":"TextArea.js","sources":["../../../../../../../input/lib/esm/TextArea.js"],"sourcesContent":["/** @LICENSE\n * @hi-ui/input\n * https://github.com/XiaoMi/hiui/tree/master/packages/ui/input#readme\n *\n * Copyright (c) HIUI <mi-hiui@xiaomi.com>.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { __rest } from 'tslib';\nimport React, { forwardRef } from 'react';\nimport { getPrefixCls, cx } from '@hi-ui/classname';\nimport { __DEV__ } from '@hi-ui/env';\nimport { useInput } from './use-input.js';\nimport { useLatestCallback } from '@hi-ui/use-latest';\n\nvar _prefix = getPrefixCls('input');\n/**\n * 动态文本域输入框\n *\n * @TODO:\n * 1. 支持带数字展示\n * 2. 支持自适应行高大小\n * 3. 支持清空按钮\n * 4. 支持最大最小行支持\n * 5. 手动聚焦支持额外配置\n */\n\n\nvar TextArea = /*#__PURE__*/forwardRef(function (_a, ref) {\n var _a$prefixCls = _a.prefixCls,\n prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,\n className = _a.className,\n _a$size = _a.size,\n size = _a$size === void 0 ? 'md' : _a$size,\n _a$appearance = _a.appearance,\n appearance = _a$appearance === void 0 ? 'outline' : _a$appearance,\n _a$invalid = _a.invalid,\n invalid = _a$invalid === void 0 ? false : _a$invalid,\n name = _a.name,\n autoFocus = _a.autoFocus,\n disabled = _a.disabled,\n readOnly = _a.readOnly,\n maxLength = _a.maxLength,\n placeholder = _a.placeholder,\n defaultValue = _a.defaultValue,\n valueProp = _a.value,\n onChange = _a.onChange,\n onFocus = _a.onFocus,\n onBlur = _a.onBlur,\n trimValueOnBlur = _a.trimValueOnBlur,\n nativeProps = __rest(_a, [\"prefixCls\", \"className\", \"style\", \"size\", \"appearance\", \"invalid\", \"name\", \"autoFocus\", \"disabled\", \"readOnly\", \"maxLength\", \"placeholder\", \"defaultValue\", \"value\", \"onChange\", \"onFocus\", \"onBlur\", \"trimValueOnBlur\"]);\n\n var proxyOnChange = useLatestCallback(function (_, evt) {\n onChange === null || onChange === void 0 ? void 0 : onChange(evt);\n });\n\n var _useInput = useInput({\n name: name,\n autoFocus: autoFocus,\n disabled: disabled,\n readOnly: readOnly,\n maxLength: maxLength,\n placeholder: placeholder,\n defaultValue: defaultValue,\n value: valueProp,\n onChange: proxyOnChange,\n onFocus: onFocus,\n onBlur: onBlur,\n trimValueOnBlur: trimValueOnBlur\n }),\n focused = _useInput.focused,\n getInputProps = _useInput.getInputProps;\n\n var cls = cx(prefixCls, className, disabled && 'disabled', readOnly && 'readonly', focused && \"focused\", invalid && 'invalid', prefixCls + \"--appearance-\" + appearance, prefixCls + \"--size-\" + size);\n return /*#__PURE__*/React.createElement(\"textarea\", Object.assign({\n ref: ref,\n className: cls,\n autoComplete: \"off\"\n }, getInputProps(), nativeProps));\n});\n\nif (__DEV__) {\n TextArea.displayName = 'TextArea';\n}\n\nexport { TextArea };\n//# sourceMappingURL=TextArea.js.map\n"],"names":["_prefix","getPrefixCls","TextArea","forwardRef","_a","ref","prefixCls","className","size","_a$size","appearance","_a$appearance","invalid","_a$invalid","name","autoFocus","disabled","readOnly","maxLength","placeholder","defaultValue","valueProp","value","onChange","onFocus","onBlur","trimValueOnBlur","nativeProps","proxyOnChange","useLatestCallback","_","evt","useInput","focused","_useInput","getInputProps","cls","cx","React","autoComplete","__DEV__"],"mappings":"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"}
|