@hi-ui/tag-input 4.1.3 → 4.1.5
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/CHANGELOG.md +12 -0
- package/lib/cjs/TagInputMock.js +11 -8
- package/lib/esm/TagInputMock.js +11 -8
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @hi-ui/tag-input
|
|
2
2
|
|
|
3
|
+
## 4.1.5
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#3450](https://github.com/XiaoMi/hiui/pull/3450) [`0cea4d7`](https://github.com/XiaoMi/hiui/commit/0cea4d75c771b5db56f520821b53864051c33594) Thanks [@zyprepare](https://github.com/zyprepare)! - fix(tag-input): ensure at least one tag is displayed when container width is insufficient (#3449)
|
|
8
|
+
|
|
9
|
+
## 4.1.4
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [#3261](https://github.com/XiaoMi/hiui/pull/3261) [`b8c19048f`](https://github.com/XiaoMi/hiui/commit/b8c19048fe25147f344be4cd951740593aee8d12) Thanks [@zyprepare](https://github.com/zyprepare)! - fix(tag-input): 修复 TagInputMock 组件中标签最大数量逻辑及更新 tagsWidth 的处理方式 (#3260)
|
|
14
|
+
|
|
3
15
|
## 4.1.3
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/lib/cjs/TagInputMock.js
CHANGED
|
@@ -98,7 +98,8 @@ var TagInputMock = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
98
98
|
if (wrap) {
|
|
99
99
|
return tagList;
|
|
100
100
|
}
|
|
101
|
-
|
|
101
|
+
var maxCount = Math.min(tagList.length, containerWidth / tagWidth);
|
|
102
|
+
return tagList.slice(0, maxCount < 1 ? 1 : maxCount);
|
|
102
103
|
}, [tagList, tagWidth, containerWidth, wrap]);
|
|
103
104
|
var showTags = mergedTagList.length > 0;
|
|
104
105
|
var showTagCount = !wrap && showTags;
|
|
@@ -143,17 +144,19 @@ var TagInputMock = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
143
144
|
tagMaxCount = 0;
|
|
144
145
|
}
|
|
145
146
|
// 保底要展示 1 个
|
|
146
|
-
setTagMaxCount(typeAssertion.isArrayNonEmpty(mergedTagList) && tagMaxCount < 1 ?
|
|
147
|
+
setTagMaxCount(typeAssertion.isArrayNonEmpty(mergedTagList) && tagMaxCount < 1 ? 0 : tagMaxCount);
|
|
147
148
|
}, [tagsWidth, suffixWidth, getTagWidth, containerWidth, mergedTagList, suffix]);
|
|
148
149
|
// mergedTagList 更新后同步更新 tagsWidth
|
|
149
150
|
React.useEffect(function () {
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
151
|
+
setTagsWidth(function (prev) {
|
|
152
|
+
var updatedTagsWidth = {};
|
|
153
|
+
mergedTagList.forEach(function (item) {
|
|
154
|
+
var _a;
|
|
155
|
+
var id = item.id;
|
|
156
|
+
updatedTagsWidth[id] = (_a = prev[id]) !== null && _a !== void 0 ? _a : 0;
|
|
157
|
+
});
|
|
158
|
+
return updatedTagsWidth;
|
|
155
159
|
});
|
|
156
|
-
setTagsWidth(updatedTagsWidth);
|
|
157
160
|
}, [mergedTagList]);
|
|
158
161
|
var onClearLatest = useLatest.useLatestCallback(onClear);
|
|
159
162
|
var handleClear = React.useCallback(function (evt) {
|
package/lib/esm/TagInputMock.js
CHANGED
|
@@ -85,7 +85,8 @@ var TagInputMock = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
85
85
|
if (wrap) {
|
|
86
86
|
return tagList;
|
|
87
87
|
}
|
|
88
|
-
|
|
88
|
+
var maxCount = Math.min(tagList.length, containerWidth / tagWidth);
|
|
89
|
+
return tagList.slice(0, maxCount < 1 ? 1 : maxCount);
|
|
89
90
|
}, [tagList, tagWidth, containerWidth, wrap]);
|
|
90
91
|
var showTags = mergedTagList.length > 0;
|
|
91
92
|
var showTagCount = !wrap && showTags;
|
|
@@ -130,17 +131,19 @@ var TagInputMock = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
130
131
|
tagMaxCount = 0;
|
|
131
132
|
}
|
|
132
133
|
// 保底要展示 1 个
|
|
133
|
-
setTagMaxCount(isArrayNonEmpty(mergedTagList) && tagMaxCount < 1 ?
|
|
134
|
+
setTagMaxCount(isArrayNonEmpty(mergedTagList) && tagMaxCount < 1 ? 0 : tagMaxCount);
|
|
134
135
|
}, [tagsWidth, suffixWidth, getTagWidth, containerWidth, mergedTagList, suffix]);
|
|
135
136
|
// mergedTagList 更新后同步更新 tagsWidth
|
|
136
137
|
useEffect(function () {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
138
|
+
setTagsWidth(function (prev) {
|
|
139
|
+
var updatedTagsWidth = {};
|
|
140
|
+
mergedTagList.forEach(function (item) {
|
|
141
|
+
var _a;
|
|
142
|
+
var id = item.id;
|
|
143
|
+
updatedTagsWidth[id] = (_a = prev[id]) !== null && _a !== void 0 ? _a : 0;
|
|
144
|
+
});
|
|
145
|
+
return updatedTagsWidth;
|
|
142
146
|
});
|
|
143
|
-
setTagsWidth(updatedTagsWidth);
|
|
144
147
|
}, [mergedTagList]);
|
|
145
148
|
var onClearLatest = useLatestCallback(onClear);
|
|
146
149
|
var handleClear = useCallback(function (evt) {
|