@nutui/nutui 3.3.4 → 3.3.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.
Files changed (174) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/nutui.es.js +1 -1
  3. package/dist/nutui.umd.js +6 -6
  4. package/dist/packages/_es/ActionSheet.js +1 -1
  5. package/dist/packages/_es/Address.js +1 -1
  6. package/dist/packages/_es/AddressList.js +1 -1
  7. package/dist/packages/_es/Animate.js +1 -1
  8. package/dist/packages/_es/Audio.js +1 -1
  9. package/dist/packages/_es/AudioOperate.js +1 -1
  10. package/dist/packages/_es/Avatar.js +1 -1
  11. package/dist/packages/_es/AvatarGroup.js +1 -1
  12. package/dist/packages/_es/BackTop.js +1 -1
  13. package/dist/packages/_es/Badge.js +1 -1
  14. package/dist/packages/_es/Barrage.js +1 -1
  15. package/dist/packages/_es/Button.js +1 -1
  16. package/dist/packages/_es/Calendar.js +1 -1
  17. package/dist/packages/_es/CalendarItem.js +1 -1
  18. package/dist/packages/_es/Card.js +1 -1
  19. package/dist/packages/_es/Cascader.js +1 -1
  20. package/dist/packages/_es/Category.js +1 -1
  21. package/dist/packages/_es/CategoryPane.js +1 -1
  22. package/dist/packages/_es/Cell.js +1 -1
  23. package/dist/packages/_es/CellGroup.js +1 -1
  24. package/dist/packages/_es/Checkbox.js +1 -1
  25. package/dist/packages/_es/CheckboxGroup.js +1 -1
  26. package/dist/packages/_es/CircleProgress.js +1 -1
  27. package/dist/packages/_es/Col.js +1 -1
  28. package/dist/packages/_es/Collapse.js +1 -1
  29. package/dist/packages/_es/CollapseItem.js +1 -1
  30. package/dist/packages/_es/Comment.js +1 -1
  31. package/dist/packages/_es/ConfigProvider.js +1 -1
  32. package/dist/packages/_es/CountDown.js +1 -1
  33. package/dist/packages/_es/CountUp.js +1 -1
  34. package/dist/packages/_es/DatePicker.js +1 -1
  35. package/dist/packages/_es/Dialog.js +1 -1
  36. package/dist/packages/_es/Divider.js +1 -1
  37. package/dist/packages/_es/Drag.js +1 -1
  38. package/dist/packages/_es/Ecard.js +1 -1
  39. package/dist/packages/_es/Elevator.js +1 -1
  40. package/dist/packages/_es/Ellipsis.js +1 -1
  41. package/dist/packages/_es/Empty.js +1 -1
  42. package/dist/packages/_es/FixedNav.js +1 -1
  43. package/dist/packages/_es/Form.js +2 -2
  44. package/dist/packages/_es/FormItem.js +1 -1
  45. package/dist/packages/_es/Grid.js +1 -1
  46. package/dist/packages/_es/GridItem.js +1 -1
  47. package/dist/packages/_es/Icon.js +1 -1
  48. package/dist/packages/_es/Image.js +1 -1
  49. package/dist/packages/_es/ImagePreview.js +1 -1
  50. package/dist/packages/_es/Indicator.js +1 -1
  51. package/dist/packages/_es/InfiniteLoading.js +1 -1
  52. package/dist/packages/_es/Input.js +1 -1
  53. package/dist/packages/_es/InputNumber.js +1 -1
  54. package/dist/packages/_es/Invoice.js +1 -1
  55. package/dist/packages/_es/Layout.js +1 -1
  56. package/dist/packages/_es/List.js +165 -28
  57. package/dist/packages/_es/Menu.js +1 -1
  58. package/dist/packages/_es/MenuItem.js +1 -1
  59. package/dist/packages/_es/Navbar.js +1 -1
  60. package/dist/packages/_es/NoticeBar.js +4 -3
  61. package/dist/packages/_es/Notify.js +1 -1
  62. package/dist/packages/_es/NumberKeyboard.js +1 -1
  63. package/dist/packages/_es/OverLay.js +1 -1
  64. package/dist/packages/_es/Pagination.js +1 -1
  65. package/dist/packages/_es/Picker.js +1 -1
  66. package/dist/packages/_es/Popover.js +3 -3
  67. package/dist/packages/_es/Popup.js +1 -1
  68. package/dist/packages/_es/Price.js +1 -1
  69. package/dist/packages/_es/Progress.js +3 -2
  70. package/dist/packages/_es/Radio.js +1 -1
  71. package/dist/packages/_es/RadioGroup.js +1 -1
  72. package/dist/packages/_es/Range.js +1 -1
  73. package/dist/packages/_es/Rate.js +1 -1
  74. package/dist/packages/_es/Row.js +1 -1
  75. package/dist/packages/_es/SearchBar.js +1 -1
  76. package/dist/packages/_es/ShortPassword.js +1 -1
  77. package/dist/packages/_es/SideNavBar.js +1 -1
  78. package/dist/packages/_es/SideNavBarItem.js +1 -1
  79. package/dist/packages/_es/Signature.js +1 -1
  80. package/dist/packages/_es/Skeleton.js +1 -1
  81. package/dist/packages/_es/Sku.js +1 -1
  82. package/dist/packages/_es/Step.js +1 -1
  83. package/dist/packages/_es/Steps.js +1 -1
  84. package/dist/packages/_es/Sticky.js +1 -1
  85. package/dist/packages/_es/SubSideNavBar.js +1 -1
  86. package/dist/packages/_es/Swipe.js +1 -1
  87. package/dist/packages/_es/Swiper.js +1 -1
  88. package/dist/packages/_es/SwiperItem.js +1 -1
  89. package/dist/packages/_es/Switch.js +1 -1
  90. package/dist/packages/_es/TabPane.js +1 -1
  91. package/dist/packages/_es/Tabbar.js +1 -1
  92. package/dist/packages/_es/TabbarItem.js +1 -1
  93. package/dist/packages/_es/Table.js +1 -1
  94. package/dist/packages/_es/Tabs.js +2 -2
  95. package/dist/packages/_es/Tag.js +1 -1
  96. package/dist/packages/_es/TextArea.js +1 -1
  97. package/dist/packages/_es/TimeDetail.js +1 -1
  98. package/dist/packages/_es/TimePannel.js +1 -1
  99. package/dist/packages/_es/TimeSelect.js +1 -1
  100. package/dist/packages/_es/Toast.js +1 -1
  101. package/dist/packages/_es/TrendArrow.js +1 -1
  102. package/dist/packages/_es/Uploader.js +1 -1
  103. package/dist/packages/_es/Video.js +1 -1
  104. package/dist/packages/_es/WaterMark.js +1 -1
  105. package/dist/packages/_es/common.js +1 -1
  106. package/dist/packages/_es/component.js +1 -1
  107. package/dist/packages/_es/index.js +1 -1
  108. package/dist/packages/_es/index2.js +1 -1
  109. package/dist/packages/_es/index3.js +1 -1
  110. package/dist/packages/_es/index4.js +1 -1
  111. package/dist/packages/_es/index5.js +1 -1
  112. package/dist/packages/_es/interceptor.js +1 -1
  113. package/dist/packages/_es/mountComponent.js +1 -1
  114. package/dist/packages/_es/plugin-vue_export-helper.js +1 -1
  115. package/dist/packages/_es/props.js +1 -1
  116. package/dist/packages/_es/pxCheck.js +1 -1
  117. package/dist/packages/_es/raf.js +1 -1
  118. package/dist/packages/list/index.scss +8 -8
  119. package/dist/packages/locale/lang/baseLang.js +1 -1
  120. package/dist/packages/locale/lang/en-US.js +1 -1
  121. package/dist/packages/locale/lang/id-ID.js +1 -1
  122. package/dist/packages/locale/lang/index.js +1 -1
  123. package/dist/packages/locale/lang/zh-CN.js +1 -1
  124. package/dist/packages/locale/lang/zh-TW.js +1 -1
  125. package/dist/smartips/attributes.json +9 -1
  126. package/dist/smartips/tags.json +3 -1
  127. package/dist/smartips/web-types.json +21 -3
  128. package/dist/style.css +1 -1
  129. package/dist/styles/themes/default.scss +51 -51
  130. package/dist/styles/themes/jdb.scss +51 -51
  131. package/dist/styles/themes/jddkh.scss +51 -51
  132. package/dist/styles/themes/jdt.scss +51 -51
  133. package/dist/types/__VUE/actionsheet/index.vue.d.ts +5 -5
  134. package/dist/types/__VUE/address/index.vue.d.ts +6 -6
  135. package/dist/types/__VUE/avatar/index.vue.d.ts +1 -1
  136. package/dist/types/__VUE/badge/index.vue.d.ts +1 -1
  137. package/dist/types/__VUE/button/index.vue.d.ts +1 -1
  138. package/dist/types/__VUE/calendar/index.vue.d.ts +1 -1
  139. package/dist/types/__VUE/cascader/index.vue.d.ts +4 -4
  140. package/dist/types/__VUE/cell/index.vue.d.ts +2 -2
  141. package/dist/types/__VUE/datepicker/index.vue.d.ts +4 -4
  142. package/dist/types/__VUE/dialog/index.vue.d.ts +7 -7
  143. package/dist/types/__VUE/divider/index.vue.d.ts +1 -1
  144. package/dist/types/__VUE/fixednav/index.vue.d.ts +3 -3
  145. package/dist/types/__VUE/grid/index.vue.d.ts +1 -1
  146. package/dist/types/__VUE/image/index.vue.d.ts +1 -1
  147. package/dist/types/__VUE/imagepreview/imagePreviewItem.vue.d.ts +1 -1
  148. package/dist/types/__VUE/imagepreview/index.vue.d.ts +3 -3
  149. package/dist/types/__VUE/input/index.vue.d.ts +1 -1
  150. package/dist/types/__VUE/list/index.vue.d.ts +45 -16
  151. package/dist/types/__VUE/list/type.d.ts +17 -0
  152. package/dist/types/__VUE/menu/index.vue.d.ts +1 -1
  153. package/dist/types/__VUE/menuitem/index.vue.d.ts +2 -2
  154. package/dist/types/__VUE/noticebar/index.vue.d.ts +6 -4
  155. package/dist/types/__VUE/notify/index.vue.d.ts +1 -1
  156. package/dist/types/__VUE/numberkeyboard/index.vue.d.ts +1 -1
  157. package/dist/types/__VUE/overlay/index.vue.d.ts +2 -2
  158. package/dist/types/__VUE/picker/index.vue.d.ts +5 -5
  159. package/dist/types/__VUE/popover/index.vue.d.ts +4 -4
  160. package/dist/types/__VUE/popup/index.vue.d.ts +4 -4
  161. package/dist/types/__VUE/shortpassword/index.vue.d.ts +1 -1
  162. package/dist/types/__VUE/skeleton/index.vue.d.ts +1 -1
  163. package/dist/types/__VUE/sku/index.vue.d.ts +5 -5
  164. package/dist/types/__VUE/step/index.vue.d.ts +1 -1
  165. package/dist/types/__VUE/sticky/index.vue.d.ts +1 -1
  166. package/dist/types/__VUE/swipe/index.vue.d.ts +2 -2
  167. package/dist/types/__VUE/swiper/index.vue.d.ts +1 -1
  168. package/dist/types/__VUE/tabbar/index.vue.d.ts +1 -1
  169. package/dist/types/__VUE/tabbaritem/index.vue.d.ts +1 -1
  170. package/dist/types/__VUE/timeselect/index.vue.d.ts +1 -1
  171. package/dist/types/__VUE/toast/index.vue.d.ts +1 -1
  172. package/dist/types/__VUE/watermark/index.vue.d.ts +2 -2
  173. package/dist/types/index.d.ts +1 -1
  174. package/package.json +1 -1
@@ -1,38 +1,77 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
6
6
  import { ref, reactive, computed, watch, toRefs, openBlock, createElementBlock, normalizeClass, normalizeStyle, createElementVNode, Fragment, renderList, renderSlot } from "vue";
7
7
  import { c as createComponent } from "./component.js";
8
+ import { u as useRect } from "./index2.js";
8
9
  import { _ as _export_sfc } from "./plugin-vue_export-helper.js";
9
10
  import "../locale/lang";
11
+ var CompareResult = /* @__PURE__ */ ((CompareResult2) => {
12
+ CompareResult2[CompareResult2["eq"] = 1] = "eq";
13
+ CompareResult2[CompareResult2["lt"] = 2] = "lt";
14
+ CompareResult2[CompareResult2["gt"] = 3] = "gt";
15
+ return CompareResult2;
16
+ })(CompareResult || {});
17
+ function binarySearch(list, value, compareFunc) {
18
+ let start = 0;
19
+ let end = list.length - 1;
20
+ let tempIndex = null;
21
+ while (start <= end) {
22
+ tempIndex = Math.floor((start + end) / 2);
23
+ const midValue = list[tempIndex];
24
+ const compareRes = compareFunc(midValue, value);
25
+ if (compareRes === 1) {
26
+ return tempIndex;
27
+ }
28
+ if (compareRes === 2) {
29
+ start = tempIndex + 1;
30
+ } else if (compareRes === 3) {
31
+ end = tempIndex - 1;
32
+ }
33
+ }
34
+ return tempIndex;
35
+ }
10
36
  const { componentName, create } = createComponent("list");
11
37
  const clientHeight = document.documentElement.clientHeight || document.body.clientHeight || 667;
12
38
  const _sfc_main = create({
13
39
  props: {
14
- height: {
15
- type: [Number],
16
- default: 50
17
- },
18
40
  listData: {
19
41
  type: Array,
20
42
  default: () => {
21
43
  return [];
22
44
  }
23
45
  },
46
+ bufferSize: {
47
+ type: Number,
48
+ default: 5
49
+ },
24
50
  containerHeight: {
25
51
  type: [Number],
26
52
  default: clientHeight
53
+ },
54
+ height: {
55
+ type: Number,
56
+ default: 80
57
+ },
58
+ margin: {
59
+ type: Number,
60
+ default: 10
27
61
  }
28
62
  },
29
- emits: ["scroll", "scroll-bottom"],
63
+ emits: ["scroll-up", "scroll-down", "scroll-bottom"],
30
64
  setup(props, { emit }) {
31
65
  const list = ref(null);
66
+ const phantom = ref(null);
67
+ const actualContent = ref(null);
32
68
  const state = reactive({
33
- startOffset: 0,
34
69
  start: 0,
35
- list: props.listData.slice()
70
+ originStartIndex: 0,
71
+ scrollTop: 0,
72
+ list: props.listData.slice(),
73
+ cachePositions: [],
74
+ phantomHeight: props.height * props.listData.length
36
75
  });
37
76
  const getContainerHeight = computed(() => {
38
77
  return Math.min(props.containerHeight, clientHeight);
@@ -41,10 +80,7 @@ const _sfc_main = create({
41
80
  return Math.ceil(getContainerHeight.value / props.height);
42
81
  });
43
82
  const end = computed(() => {
44
- return state.start + visibleCount.value;
45
- });
46
- const getTransform = computed(() => {
47
- return `translate3d(0, ${state.startOffset}px, 0)`;
83
+ return Math.min(state.originStartIndex + visibleCount.value + props.bufferSize, state.list.length - 1);
48
84
  });
49
85
  const classes = computed(() => {
50
86
  const prefixCls = componentName;
@@ -52,33 +88,133 @@ const _sfc_main = create({
52
88
  [prefixCls]: true
53
89
  };
54
90
  });
55
- const listHeight = computed(() => {
56
- return state.list.length * props.height;
57
- });
58
91
  const visibleData = computed(() => {
59
- return state.list.slice(state.start, Math.min(end.value, state.list.length));
92
+ return state.list.slice(state.start, end.value);
60
93
  });
94
+ const getTransform = () => {
95
+ if (actualContent.value) {
96
+ return `translate3d(0, ${state.start >= 1 ? state.cachePositions[state.start - 1].bottom : 0}px, 0)`;
97
+ }
98
+ };
99
+ const initCachedPosition = () => {
100
+ state.cachePositions = [];
101
+ for (let i = 0; i < state.list.length; ++i) {
102
+ state.cachePositions[i] = {
103
+ index: i,
104
+ height: props.height,
105
+ top: i * props.height,
106
+ bottom: (i + 1) * (props.height + props.margin),
107
+ dValue: 0
108
+ };
109
+ }
110
+ };
111
+ const updateCachedPosition = () => {
112
+ let nodes = actualContent.value.childNodes;
113
+ nodes = Array.from(nodes).filter((node) => node.nodeType === 1);
114
+ const start = nodes[0];
115
+ nodes.forEach((node, index2) => {
116
+ if (!node)
117
+ return;
118
+ const rect = useRect(node);
119
+ const { height: height2 } = rect;
120
+ const oldHeight = state.cachePositions[index2 + state.start].height;
121
+ const dValue = oldHeight - height2;
122
+ if (dValue) {
123
+ state.cachePositions[index2 + state.start].bottom -= dValue;
124
+ state.cachePositions[index2 + state.start].height = height2;
125
+ state.cachePositions[index2 + state.start].dValue = dValue;
126
+ }
127
+ });
128
+ let startIndex = 0;
129
+ if (start) {
130
+ startIndex = state.start;
131
+ }
132
+ const cachedPositionsLen = state.cachePositions.length;
133
+ let cumulativeDiffHeight = state.cachePositions[startIndex].dValue;
134
+ state.cachePositions[startIndex].dValue = 0;
135
+ for (let i = startIndex + 1; i < cachedPositionsLen; ++i) {
136
+ const item = state.cachePositions[i];
137
+ state.cachePositions[i].top = state.cachePositions[i - 1].bottom;
138
+ state.cachePositions[i].bottom = state.cachePositions[i].bottom - cumulativeDiffHeight;
139
+ if (item.dValue !== 0) {
140
+ cumulativeDiffHeight += item.dValue;
141
+ item.dValue = 0;
142
+ }
143
+ }
144
+ const height = state.cachePositions[cachedPositionsLen - 1].bottom;
145
+ state.phantomHeight = height;
146
+ };
147
+ const getStartIndex = (scrollTop = 0) => {
148
+ let idx = binarySearch(
149
+ state.cachePositions,
150
+ scrollTop,
151
+ (currentValue, targetValue) => {
152
+ const currentCompareValue = currentValue.bottom;
153
+ if (currentCompareValue === targetValue) {
154
+ return CompareResult.eq;
155
+ }
156
+ if (currentCompareValue < targetValue) {
157
+ return CompareResult.lt;
158
+ }
159
+ return CompareResult.gt;
160
+ }
161
+ );
162
+ const targetItem = state.cachePositions[idx];
163
+ if (targetItem.bottom < scrollTop) {
164
+ idx += 1;
165
+ }
166
+ return idx;
167
+ };
168
+ const resetAllVirtualParam = () => {
169
+ state.originStartIndex = 0;
170
+ state.start = 0;
171
+ state.scrollTop = 0;
172
+ list.value.scrollTop = 0;
173
+ initCachedPosition();
174
+ state.phantomHeight = props.height * state.list.length;
175
+ };
61
176
  const handleScrollEvent = () => {
62
177
  var _a;
63
178
  const scrollTop = (_a = list.value) == null ? void 0 : _a.scrollTop;
64
- state.start = Math.floor(scrollTop / props.height);
65
- if (end.value > state.list.length) {
66
- emit("scroll");
67
- emit("scroll-bottom");
179
+ const { originStartIndex } = state;
180
+ const currentIndex = getStartIndex(scrollTop);
181
+ if (currentIndex !== originStartIndex) {
182
+ state.originStartIndex = currentIndex;
183
+ state.start = Math.max(state.originStartIndex - props.bufferSize, 0);
184
+ if (end.value >= state.list.length - 1) {
185
+ emit("scroll-bottom");
186
+ }
68
187
  }
69
- state.startOffset = scrollTop - scrollTop % props.height;
188
+ emit(scrollTop > state.scrollTop ? "scroll-up" : "scroll-down", scrollTop);
189
+ state.scrollTop = scrollTop;
70
190
  };
71
191
  watch(
72
192
  () => props.listData,
193
+ (val) => {
194
+ state.list = val.slice();
195
+ if (state.list.length === val.length) {
196
+ initCachedPosition();
197
+ updateCachedPosition();
198
+ } else {
199
+ resetAllVirtualParam();
200
+ return;
201
+ }
202
+ }
203
+ );
204
+ watch(
205
+ () => state.start,
73
206
  () => {
74
- state.list = props.listData.slice();
207
+ if (actualContent.value && state.list.length > 0) {
208
+ updateCachedPosition();
209
+ }
75
210
  }
76
211
  );
77
212
  return {
78
213
  ...toRefs(state),
79
214
  list,
215
+ phantom,
216
+ actualContent,
80
217
  getTransform,
81
- listHeight,
82
218
  visibleData,
83
219
  classes,
84
220
  getContainerHeight,
@@ -95,23 +231,24 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
95
231
  }, [
96
232
  createElementVNode("div", {
97
233
  class: "nut-list-phantom",
98
- style: normalizeStyle({ height: _ctx.listHeight + "px" })
234
+ style: normalizeStyle({ height: _ctx.phantomHeight + "px" }),
235
+ ref: "phantom"
99
236
  }, null, 4),
100
237
  createElementVNode("div", {
101
238
  class: "nut-list-container",
102
- style: normalizeStyle({ transform: _ctx.getTransform })
239
+ style: normalizeStyle({ transform: _ctx.getTransform() }),
240
+ ref: "actualContent"
103
241
  }, [
104
242
  (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.visibleData, (item, index2) => {
105
243
  return openBlock(), createElementBlock("div", {
106
244
  class: "nut-list-item",
107
- style: normalizeStyle({ height: _ctx.height + "px" }),
108
245
  key: item
109
246
  }, [
110
247
  renderSlot(_ctx.$slots, "default", {
111
248
  item,
112
- index: index2
249
+ index: index2 + _ctx.start
113
250
  })
114
- ], 4);
251
+ ]);
115
252
  }), 128))
116
253
  ], 4)
117
254
  ], 38);
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -75,7 +75,7 @@ const _sfc_main = create({
75
75
  return h(props.item);
76
76
  }
77
77
  },
78
- emits: ["click", "close"],
78
+ emits: ["click", "close", "across-end"],
79
79
  setup(props, { emit, slots }) {
80
80
  const wrap = ref(null);
81
81
  const content = ref(null);
@@ -196,8 +196,9 @@ const _sfc_main = create({
196
196
  }
197
197
  emit("close", event);
198
198
  };
199
- const onAnimationEnd = () => {
199
+ const onAnimationEnd = (event) => {
200
200
  state.firstRound = false;
201
+ emit("across-end", event);
201
202
  setTimeout(() => {
202
203
  state.duration = (state.offsetWidth + state.wrapWidth) / props.speed;
203
204
  state.animationClass = "play-infinite";
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -213,7 +213,7 @@ const _hoisted_1 = {
213
213
  const _hoisted_2 = ["onClick"];
214
214
  const _hoisted_3 = { class: "nut-popover-menu-item-name" };
215
215
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
216
- const _component_Icon = resolveComponent("Icon");
216
+ const _component_nut_icon = resolveComponent("nut-icon");
217
217
  const _component_nut_popup = resolveComponent("nut-popup");
218
218
  return openBlock(), createElementBlock(Fragment, null, [
219
219
  !_ctx.targetId ? (openBlock(), createElementBlock("div", {
@@ -256,7 +256,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
256
256
  onClick: withModifiers(($event) => _ctx.chooseItem(item, index2), ["stop"])
257
257
  }, [
258
258
  item.icon ? renderSlot(_ctx.$slots, "default", { key: 0 }, () => [
259
- createVNode(_component_Icon, mergeProps(_ctx.$attrs, {
259
+ createVNode(_component_nut_icon, mergeProps(_ctx.$attrs, {
260
260
  class: "nut-popover-item-img",
261
261
  classPrefix: _ctx.iconPrefix,
262
262
  name: item.icon
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -131,7 +131,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
131
131
  position: `absolute`,
132
132
  top: `50%`,
133
133
  left: `${_ctx.percentage}%`,
134
- transform: `translate(-${+_ctx.percentage}%,-50%)`
134
+ transform: `translate(-${+_ctx.percentage}%,-50%)`,
135
+ transition: "all 0.4s"
135
136
  })
136
137
  }, [
137
138
  renderSlot(_ctx.$slots, "default")
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -206,7 +206,7 @@ const component = {
206
206
  const methods = {
207
207
  tabChange: (item, index2) => {
208
208
  emit("click", item);
209
- if (item.disabled) {
209
+ if (item.disabled || currentIndex.value == index2) {
210
210
  return;
211
211
  }
212
212
  currentIndex.value = index2;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui v3.3.4 Fri Feb 10 2023 17:19:15 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.3.5 Fri Feb 24 2023 15:21:20 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */