@nutui/nutui 4.0.11 → 4.0.12

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 (158) hide show
  1. package/dist/nutui.es.js +1 -1
  2. package/dist/nutui.js +2 -2
  3. package/dist/nutui.umd.js +1 -1
  4. package/dist/packages/_es/ActionSheet.js +111 -78
  5. package/dist/packages/_es/Address.js +375 -250
  6. package/dist/packages/_es/AddressList.js +354 -269
  7. package/dist/packages/_es/Animate.js +58 -41
  8. package/dist/packages/_es/Audio.js +197 -128
  9. package/dist/packages/_es/AudioOperate.js +71 -60
  10. package/dist/packages/_es/Avatar.js +89 -66
  11. package/dist/packages/_es/AvatarGroup.js +31 -23
  12. package/dist/packages/_es/Backtop.js +99 -59
  13. package/dist/packages/_es/Badge.js +47 -36
  14. package/dist/packages/_es/Barrage.js +147 -68
  15. package/dist/packages/_es/Button.js +66 -47
  16. package/dist/packages/_es/Calendar.js +157 -135
  17. package/dist/packages/_es/CalendarItem.js +6 -6
  18. package/dist/packages/_es/Card.js +56 -42
  19. package/dist/packages/_es/Cascader.js +474 -315
  20. package/dist/packages/_es/Category.js +39 -29
  21. package/dist/packages/_es/CategoryPane.js +83 -57
  22. package/dist/packages/_es/Cell.js +71 -56
  23. package/dist/packages/_es/CellGroup.js +27 -19
  24. package/dist/packages/_es/Checkbox.js +156 -109
  25. package/dist/packages/_es/CheckboxGroup.js +59 -38
  26. package/dist/packages/_es/CircleProgress.js +96 -67
  27. package/dist/packages/_es/Col.js +31 -23
  28. package/dist/packages/_es/Collapse.js +58 -33
  29. package/dist/packages/_es/CollapseItem.js +108 -78
  30. package/dist/packages/_es/Comment.js +279 -207
  31. package/dist/packages/_es/ConfigProvider.js +55 -37
  32. package/dist/packages/_es/Countdown.js +212 -100
  33. package/dist/packages/_es/Countup.js +445 -232
  34. package/dist/packages/_es/DatePicker.js +265 -162
  35. package/dist/packages/_es/Dialog.js +213 -161
  36. package/dist/packages/_es/Divider.js +57 -42
  37. package/dist/packages/_es/Drag.js +153 -70
  38. package/dist/packages/_es/Ecard.js +104 -64
  39. package/dist/packages/_es/Elevator.js +219 -143
  40. package/dist/packages/_es/Ellipsis.js +178 -95
  41. package/dist/packages/_es/Empty.js +39 -23
  42. package/dist/packages/_es/FixedNav.js +116 -93
  43. package/dist/packages/_es/Form.js +178 -107
  44. package/dist/packages/_es/FormItem.js +61 -48
  45. package/dist/packages/_es/Grid.js +6 -5
  46. package/dist/packages/_es/GridItem.js +84 -58
  47. package/dist/packages/_es/Image.js +130 -90
  48. package/dist/packages/_es/ImagePreview.js +412 -256
  49. package/dist/packages/_es/Indicator.js +34 -30
  50. package/dist/packages/_es/InfiniteLoading.js +136 -83
  51. package/dist/packages/_es/Input.js +264 -160
  52. package/dist/packages/_es/InputNumber.js +117 -81
  53. package/dist/packages/_es/Interceptor-956b24fc.js +29 -0
  54. package/dist/packages/_es/Invoice.js +130 -104
  55. package/dist/packages/_es/Layout.js +4 -3
  56. package/dist/packages/_es/List.js +215 -117
  57. package/dist/packages/_es/Menu.js +150 -95
  58. package/dist/packages/_es/MenuItem.js +154 -109
  59. package/dist/packages/_es/Navbar.js +119 -103
  60. package/dist/packages/_es/Noticebar.js +312 -197
  61. package/dist/packages/_es/Notify.js +166 -110
  62. package/dist/packages/_es/NumberKeyboard.js +202 -127
  63. package/dist/packages/_es/Overlay.js +80 -52
  64. package/dist/packages/_es/Pagination.js +100 -70
  65. package/dist/packages/_es/Picker.js +437 -275
  66. package/dist/packages/_es/Popover.js +225 -122
  67. package/dist/packages/_es/Popup.js +4 -4
  68. package/dist/packages/_es/Price.js +82 -44
  69. package/dist/packages/_es/Progress.js +79 -63
  70. package/dist/packages/_es/PullRefresh.js +173 -95
  71. package/dist/packages/_es/Radio.js +4 -4
  72. package/dist/packages/_es/RadioGroup.js +3 -3
  73. package/dist/packages/_es/Range.js +347 -204
  74. package/dist/packages/_es/Rate.js +141 -92
  75. package/dist/packages/_es/Row.js +27 -21
  76. package/dist/packages/_es/Searchbar.js +174 -123
  77. package/dist/packages/_es/ShortPassword.js +93 -69
  78. package/dist/packages/_es/SideNavbar.js +80 -49
  79. package/dist/packages/_es/SideNavbarItem.js +32 -22
  80. package/dist/packages/_es/Signature.js +146 -83
  81. package/dist/packages/_es/Skeleton.js +130 -110
  82. package/dist/packages/_es/Sku.js +343 -250
  83. package/dist/packages/_es/Step.js +86 -59
  84. package/dist/packages/_es/Steps.js +31 -26
  85. package/dist/packages/_es/Sticky.js +4 -4
  86. package/dist/packages/_es/SubSideNavbar.js +74 -52
  87. package/dist/packages/_es/Swipe.js +155 -83
  88. package/dist/packages/_es/Swiper.js +311 -174
  89. package/dist/packages/_es/SwiperItem.js +44 -28
  90. package/dist/packages/_es/Switch.js +68 -55
  91. package/dist/packages/_es/TabPane.js +41 -30
  92. package/dist/packages/_es/Tabbar.js +52 -41
  93. package/dist/packages/_es/TabbarItem.js +82 -61
  94. package/dist/packages/_es/Table.js +165 -109
  95. package/dist/packages/_es/Tabs.js +388 -240
  96. package/dist/packages/_es/Tag.js +61 -44
  97. package/dist/packages/_es/Textarea.js +124 -80
  98. package/dist/packages/_es/TimeDetail.js +76 -49
  99. package/dist/packages/_es/TimePannel.js +48 -34
  100. package/dist/packages/_es/TimeSelect.js +68 -47
  101. package/dist/packages/_es/Toast.js +218 -144
  102. package/dist/packages/_es/Tour.js +192 -138
  103. package/dist/packages/_es/TrendArrow.js +77 -57
  104. package/dist/packages/_es/Uploader.js +359 -234
  105. package/dist/packages/_es/Video.js +316 -191
  106. package/dist/packages/_es/Watermark.js +117 -84
  107. package/dist/packages/_es/_plugin-vue_export-helper-cc2b3d55.js +10 -0
  108. package/dist/packages/_es/common-b9a5e726.js +145 -0
  109. package/dist/packages/_es/component-81a4c1d0.js +145 -0
  110. package/dist/packages/_es/index-29892cda.js +33 -0
  111. package/dist/packages/_es/index-43c34ac6.js +30 -0
  112. package/dist/packages/_es/index-54d03fc1.js +8 -0
  113. package/dist/packages/_es/index-79c5dc33.js +10 -0
  114. package/dist/packages/_es/index-7a7385e4.js +67 -0
  115. package/dist/packages/_es/index-87422be8.js +942 -0
  116. package/dist/packages/_es/index-da0a7662.js +259 -0
  117. package/dist/packages/_es/index.vue_vue_type_script_lang-22dfc112.js +46 -0
  118. package/dist/packages/_es/index.vue_vue_type_script_lang-a8856969.js +97 -0
  119. package/dist/packages/_es/index.vue_vue_type_script_lang-cc5c4086.js +151 -0
  120. package/dist/packages/_es/mountComponent-8b24c346.js +39 -0
  121. package/dist/packages/_es/pxCheck-c6b9f6b7.js +6 -0
  122. package/dist/packages/_es/raf-729dad54.js +25 -0
  123. package/dist/packages/_es/renderIcon-3d0fd47c.js +9 -0
  124. package/dist/packages/locale/lang/baseLang-3a8457ac.js +5 -0
  125. package/dist/packages/locale/lang/en-US.js +39 -36
  126. package/dist/packages/locale/lang/id-ID.js +39 -36
  127. package/dist/packages/locale/lang/index.js +44 -22
  128. package/dist/packages/locale/lang/zh-CN.js +38 -35
  129. package/dist/packages/locale/lang/zh-TW.js +38 -35
  130. package/dist/resolver/index.js +26 -1
  131. package/dist/resolver/index.mjs +17 -14
  132. package/dist/smartips/web-types.json +1 -1
  133. package/dist/style.css +1 -1
  134. package/dist/styles/themes/default.scss +48 -48
  135. package/dist/styles/themes/jdb.scss +48 -48
  136. package/dist/styles/themes/jddkh.scss +48 -48
  137. package/dist/styles/themes/jdt.scss +48 -48
  138. package/dist/types/index.d.ts +1 -1
  139. package/package.json +3 -4
  140. package/dist/packages/_es/Interceptor-6e26b757.js +0 -18
  141. package/dist/packages/_es/_plugin-vue_export-helper-dad06003.js +0 -9
  142. package/dist/packages/_es/common-d218746f.js +0 -116
  143. package/dist/packages/_es/component-234624bc.js +0 -89
  144. package/dist/packages/_es/index-14dfadc4.js +0 -561
  145. package/dist/packages/_es/index-192a3ef6.js +0 -29
  146. package/dist/packages/_es/index-360c5092.js +0 -210
  147. package/dist/packages/_es/index-496e6e05.js +0 -24
  148. package/dist/packages/_es/index-50eed3d9.js +0 -7
  149. package/dist/packages/_es/index-53ec2d4d.js +0 -34
  150. package/dist/packages/_es/index-fadb0974.js +0 -8
  151. package/dist/packages/_es/index.vue_vue_type_script_lang-1139b29a.js +0 -43
  152. package/dist/packages/_es/index.vue_vue_type_script_lang-43b774dd.js +0 -77
  153. package/dist/packages/_es/index.vue_vue_type_script_lang-f44c159d.js +0 -110
  154. package/dist/packages/_es/mountComponent-6d4ff200.js +0 -23
  155. package/dist/packages/_es/pxCheck-38173291.js +0 -4
  156. package/dist/packages/_es/raf-a74f1a06.js +0 -16
  157. package/dist/packages/_es/renderIcon-47498b32.js +0 -5
  158. package/dist/packages/locale/lang/baseLang-0bdc6353.js +0 -5
@@ -1,24 +1,34 @@
1
- var x = Object.defineProperty, ee = Object.defineProperties;
2
- var te = Object.getOwnPropertyDescriptors;
3
- var B = Object.getOwnPropertySymbols;
4
- var ne = Object.prototype.hasOwnProperty, ie = Object.prototype.propertyIsEnumerable;
5
- var V = (e, a, c) => a in e ? x(e, a, { enumerable: !0, configurable: !0, writable: !0, value: c }) : e[a] = c, H = (e, a) => {
6
- for (var c in a || (a = {}))
7
- ne.call(a, c) && V(e, c, a[c]);
8
- if (B)
9
- for (var c of B(a))
10
- ie.call(a, c) && V(e, c, a[c]);
11
- return e;
12
- }, $ = (e, a) => ee(e, te(a));
13
- import { getCurrentInstance as re, ref as A, reactive as C, watch as F, nextTick as M, onMounted as ue, onUnmounted as le, toRefs as E, openBlock as s, createElementBlock as g, Fragment as b, normalizeStyle as d, renderList as z, createCommentVNode as O, toDisplayString as R, createTextVNode as ae } from "vue";
14
- import { c as oe } from "./component-234624bc.js";
15
- import { _ as me } from "./_plugin-vue_export-helper-dad06003.js";
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { getCurrentInstance, ref, reactive, watch, nextTick, onMounted, onUnmounted, toRefs, openBlock, createElementBlock, Fragment, normalizeStyle, renderList, createCommentVNode, toDisplayString, createTextVNode } from "vue";
21
+ import { c as createComponent } from "./component-81a4c1d0.js";
22
+ import { _ as _export_sfc } from "./_plugin-vue_export-helper-cc2b3d55.js";
16
23
  import "../locale/lang";
17
- function se(e) {
18
- const a = re();
19
- a && Object.assign(a.proxy, e);
24
+ function useExtend(apis) {
25
+ const instance = getCurrentInstance();
26
+ if (instance) {
27
+ Object.assign(instance.proxy, apis);
28
+ }
20
29
  }
21
- const { componentName: Fe, create: ge } = oe("countup"), ce = ge({
30
+ const { componentName, create } = createComponent("countup");
31
+ const _sfc_main = create({
22
32
  props: {
23
33
  initNum: {
24
34
  type: Number,
@@ -42,7 +52,7 @@ const { componentName: Fe, create: ge } = oe("countup"), ce = ge({
42
52
  },
43
53
  startFlag: {
44
54
  type: Boolean,
45
- default: !0
55
+ default: true
46
56
  },
47
57
  // 数字滚动
48
58
  numWidth: {
@@ -55,7 +65,7 @@ const { componentName: Fe, create: ge } = oe("countup"), ce = ge({
55
65
  },
56
66
  scrolling: {
57
67
  type: Boolean,
58
- default: !1
68
+ default: false
59
69
  },
60
70
  // 自定义图片
61
71
  customBgImg: {
@@ -94,11 +104,16 @@ const { componentName: Fe, create: ge } = oe("countup"), ce = ge({
94
104
  },
95
105
  components: {},
96
106
  emits: ["click", "scroll-end"],
97
- setup(e, { emit: a }) {
98
- const c = A(null), I = A([]), Y = (n) => {
99
- n && I.value.push(n);
100
- }, t = C({
101
- valFlag: !1,
107
+ setup(props, { emit }) {
108
+ const runNumberImg = ref(null);
109
+ const numberItemRef = ref([]);
110
+ const setRef = (el) => {
111
+ if (el) {
112
+ numberItemRef.value.push(el);
113
+ }
114
+ };
115
+ const data = reactive({
116
+ valFlag: false,
102
117
  current: 0,
103
118
  sortFlag: "add",
104
119
  initDigit1: 0,
@@ -124,260 +139,458 @@ const { componentName: Fe, create: ge } = oe("countup"), ce = ge({
124
139
  finshMachine: 0,
125
140
  notPrize: [],
126
141
  typeMachine: ""
127
- }), { startFlag: v, scrolling: o, customBgImg: y, type: k } = C(e);
128
- F(
129
- () => e.customChangeNum,
130
- (n, r) => {
131
- S(), D(0);
142
+ });
143
+ const { startFlag, scrolling, customBgImg, type } = reactive(props);
144
+ watch(
145
+ () => props.customChangeNum,
146
+ (count, prevCount) => {
147
+ clearIntervalTime();
148
+ countGo(0);
132
149
  }
133
- ), F(
134
- () => e.machinePrizeLevel,
135
- (n, r) => {
136
- t.prizeLevelTrun = n;
150
+ );
151
+ watch(
152
+ () => props.machinePrizeLevel,
153
+ (count, prevCount) => {
154
+ data.prizeLevelTrun = count;
137
155
  }
138
- ), F(
139
- () => e.initNum,
140
- (n, r) => {
141
- t.current = n, t.valFlag = !1, w();
156
+ );
157
+ watch(
158
+ () => props.initNum,
159
+ (count, prevCount) => {
160
+ data.current = count;
161
+ data.valFlag = false;
162
+ valChange();
142
163
  }
143
- ), F(
144
- () => e.endNum,
145
- (n, r) => {
146
- t.current = e.initNum, t.valFlag = !1, w();
164
+ );
165
+ watch(
166
+ () => props.endNum,
167
+ (count, prevCount) => {
168
+ data.current = props.initNum;
169
+ data.valFlag = false;
170
+ valChange();
147
171
  }
148
172
  );
149
- const w = () => {
150
- if (t.valFlag)
151
- return !1;
152
- v && (o || y ? k != "machine" && D() : (j(), setTimeout(() => {
153
- t.valFlag = !0;
154
- }, 300)));
155
- }, S = () => {
156
- clearInterval(Number(t.timer)), t.timer = null;
157
- }, T = (n, r, i) => {
158
- const u = (n.toString().split(".")[1] || "").length, m = (r.toString().split(".")[1] || "").length, l = Math.pow(10, Math.max(u, m));
159
- return i == "-" ? Number((n * l - r * l).toFixed(0)) / l : Number((n * l + r * l).toFixed(0)) / l;
160
- }, q = (n) => {
161
- let { num_total_len: r, pointNum: i, initDigit1: u, initDigit2: m, sortFlag: l } = t, h = l == "add" || l == "equal" ? String(m)[n - (r - i)] : 10 - Number(String(m)[n - (r - i)]), p = l == "add" || l == "equal" ? String(u)[n] : 10 - Number(String(u)[n]), f = n > r - i - 1 ? -h * 100 + "%" : n <= String(u).length - 1 ? -p * 100 + "%" : 0;
162
- return f == "-1000%" && (f = 0), f;
163
- }, J = (n) => {
164
- let { num_total_len: r, pointNum: i, initDigit1: u, initDigit2: m, sortFlag: l } = t, h = String(m)[n - (r - i)];
165
- return n > r - i - 1 ? h || 0 : n <= String(u).length - 1 ? String(u)[n] : 0;
166
- }, j = () => {
167
- let { endNum: n, initNum: r, speed: i, toFixed: u } = e, m = setInterval(() => {
168
- if (r > n)
169
- if (t.current <= n || t.current <= i)
170
- t.current = n.toFixed(u), clearInterval(m), a("scroll-end"), t.valFlag = !1;
171
- else {
172
- let l = parseFloat(String(t.current)) - parseFloat(String(i));
173
- t.current = l.toFixed(u);
173
+ const valChange = () => {
174
+ if (data.valFlag) {
175
+ return false;
176
+ }
177
+ if (startFlag) {
178
+ if (scrolling || customBgImg) {
179
+ if (type != "machine") {
180
+ countGo();
174
181
  }
175
- else if (t.current >= n)
176
- t.current = n.toFixed(u), clearInterval(m), a("scroll-end"), t.valFlag = !1;
177
- else {
178
- let l = parseFloat(String(t.current)) + parseFloat(String(i));
179
- t.current = l.toFixed(u);
182
+ } else {
183
+ countChange();
184
+ setTimeout(() => {
185
+ data.valFlag = true;
186
+ }, 300);
180
187
  }
181
- }, e.during);
182
- }, D = (n) => {
183
- let { initNum: r, endNum: i, toFixed: u, customBgImg: m } = e;
184
- m && (r = e.customChangeNum);
185
- let l, h, p, f;
186
- r != 0 ? (u != 0 && (r = Number(r.toFixed(u))), String(r).indexOf(".") > -1 ? (l = String(r).split(".")[0].length, h = String(r).split(".")[1].length) : (l = String(r).length, h = 0)) : (l = 1, h = 0), i != 0 ? (u != 0 && (i = Number(i.toFixed(u))), String(i).indexOf(".") > -1 ? (p = String(i).split(".")[0].length, f = String(i).split(".")[1].length) : (p = String(i).length, f = 0)) : (p = 1, f = 0);
187
- let Z = l >= p ? l : p, L = h >= f ? h : f;
188
- t.num_total_len = Z + L, t.pointNum = L, r > i ? (t.sortFlag = "reduce", t.to0_10 = [0, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0], t.totalCount = T(r, i, "-"), t.numberVal = Number(String(r))) : r < i ? (t.sortFlag = "add", t.to0_10 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0], t.totalCount = T(i, r, "-"), t.numberVal = Number(String(i))) : t.sortFlag = "equal";
189
- var _ = 1;
190
- for (let N = 0; N < t.pointNum; N++)
191
- _ *= 10;
192
- var W = t.numberVal * _;
193
- if (t.relNum = W, u != 0 && (t.pointNum = String(t.numberVal).split(".")[1] ? String(t.numberVal).split(".")[1].length : 0, t.num_total_len = String(W).length), String(r).indexOf(".") > -1) {
194
- let N = String(r).split(".");
195
- t.initDigit1 = Number(N[0]), t.initDigit2 = Number(N[1]);
196
- } else
197
- t.initDigit1 = r, t.initDigit2 = 0;
198
- o && !m ? M(() => {
199
- if (t.sortFlag == "equal")
200
- return !1;
201
- let N = I.value[t.num_total_len - 1];
202
- G(N);
203
- }) : n !== 0 && X();
204
- }, G = (n) => {
205
- S();
206
- var r = 1;
207
- t.pointNum != 0 && (r = 1 / Math.pow(10, t.pointNum)), t.timer = setInterval(() => {
208
- P(n), t.totalCount = T(t.totalCount, r, "-"), t.totalCount <= 0 && (S(), a("scroll-end"), t.valFlag = !1);
209
- }, e.during);
210
- }, P = (n) => {
211
- let r = n.getAttribute("turn-number"), i;
212
- if (t.sortFlag == "add" ? i = parseInt(String(r)) + 1 : i = parseInt(String(r)) - 1 >= 0 ? parseInt(String(r)) - 1 : 9, n.setAttribute("turn-number", String(i)), (n.style.transition == "none 0s ease 0s" || i == 1 || !n.style.transition) && (n.style.transition = `all linear ${e.during}ms`), i == 10 || t.sortFlag == "reduce" && i == 0) {
213
- var u = null;
214
- n.style.top = `-${t.sortFlag == "add" ? i * 100 : (10 - i) * 100}%`, n.setAttribute("turn-number", "0"), u = setTimeout(() => {
215
- u && clearTimeout(u), n.style.transition = "none", n.style.top = "0", U(n, i);
216
- }, 0.975 * e.during);
217
- } else
218
- n.style.top = `-${t.sortFlag == "add" ? i * 100 : (10 - i) * 100}%`;
219
- n.style.top == "-100%" && t.sortFlag == "reduce" && P(n.previousSibling);
220
- }, U = (n, r) => {
188
+ }
189
+ };
190
+ const clearIntervalTime = () => {
191
+ clearInterval(Number(data.timer));
192
+ data.timer = null;
193
+ };
194
+ const calculation = (num1, num2, type2) => {
195
+ const num1Digits = (num1.toString().split(".")[1] || "").length;
196
+ const num2Digits = (num2.toString().split(".")[1] || "").length;
197
+ const baseNum = Math.pow(10, Math.max(num1Digits, num2Digits));
198
+ if (type2 == "-") {
199
+ const n = Number((num1 * baseNum - num2 * baseNum).toFixed(0));
200
+ return n / baseNum;
201
+ } else {
202
+ const m = Number((num1 * baseNum + num2 * baseNum).toFixed(0));
203
+ return m / baseNum;
204
+ }
205
+ };
206
+ const topNumber = (index2) => {
207
+ let { num_total_len, pointNum, initDigit1, initDigit2, sortFlag } = data;
208
+ let idx1 = sortFlag == "add" || sortFlag == "equal" ? String(initDigit2)[index2 - (num_total_len - pointNum)] : 10 - Number(String(initDigit2)[index2 - (num_total_len - pointNum)]);
209
+ let idx2 = sortFlag == "add" || sortFlag == "equal" ? String(initDigit1)[index2] : 10 - Number(String(initDigit1)[index2]);
210
+ let num = index2 > num_total_len - pointNum - 1 ? -idx1 * 100 + "%" : index2 <= String(initDigit1).length - 1 ? -idx2 * 100 + "%" : 0;
211
+ if (num == "-1000%") {
212
+ num = 0;
213
+ }
214
+ return num;
215
+ };
216
+ const turnNumber = (index2) => {
217
+ let { num_total_len, pointNum, initDigit1, initDigit2, sortFlag } = data;
218
+ let idx1 = String(initDigit2)[index2 - (num_total_len - pointNum)];
219
+ let num = index2 > num_total_len - pointNum - 1 ? idx1 ? idx1 : 0 : index2 <= String(initDigit1).length - 1 ? String(initDigit1)[index2] : 0;
220
+ return num;
221
+ };
222
+ const countChange = () => {
223
+ let { endNum, initNum, speed, toFixed } = props;
224
+ let countTimer = setInterval(() => {
225
+ if (initNum > endNum) {
226
+ if (data.current <= endNum || data.current <= speed) {
227
+ data.current = endNum.toFixed(toFixed);
228
+ clearInterval(countTimer);
229
+ emit("scroll-end");
230
+ data.valFlag = false;
231
+ } else {
232
+ let num = parseFloat(String(data.current)) - parseFloat(String(speed));
233
+ data.current = num.toFixed(toFixed);
234
+ }
235
+ } else {
236
+ if (data.current >= endNum) {
237
+ data.current = endNum.toFixed(toFixed);
238
+ clearInterval(countTimer);
239
+ emit("scroll-end");
240
+ data.valFlag = false;
241
+ } else {
242
+ let num = parseFloat(String(data.current)) + parseFloat(String(speed));
243
+ data.current = num.toFixed(toFixed);
244
+ }
245
+ }
246
+ }, props.during);
247
+ };
248
+ const countGo = (flag) => {
249
+ let { initNum, endNum, toFixed, customBgImg: customBgImg2 } = props;
250
+ if (customBgImg2) {
251
+ initNum = props.customChangeNum;
252
+ }
253
+ let startNumber1, startNumber2, endNumber1, endNumber2;
254
+ if (initNum != 0) {
255
+ if (toFixed != 0) {
256
+ initNum = Number(initNum.toFixed(toFixed));
257
+ }
258
+ if (String(initNum).indexOf(".") > -1) {
259
+ startNumber1 = String(initNum).split(".")[0].length;
260
+ startNumber2 = String(initNum).split(".")[1].length;
261
+ } else {
262
+ startNumber1 = String(initNum).length;
263
+ startNumber2 = 0;
264
+ }
265
+ } else {
266
+ startNumber1 = 1;
267
+ startNumber2 = 0;
268
+ }
269
+ if (endNum != 0) {
270
+ if (toFixed != 0) {
271
+ endNum = Number(endNum.toFixed(toFixed));
272
+ }
273
+ if (String(endNum).indexOf(".") > -1) {
274
+ endNumber1 = String(endNum).split(".")[0].length;
275
+ endNumber2 = String(endNum).split(".")[1].length;
276
+ } else {
277
+ endNumber1 = String(endNum).length;
278
+ endNumber2 = 0;
279
+ }
280
+ } else {
281
+ endNumber1 = 1;
282
+ endNumber2 = 0;
283
+ }
284
+ let len1 = startNumber1 >= endNumber1 ? startNumber1 : endNumber1;
285
+ let len2 = startNumber2 >= endNumber2 ? startNumber2 : endNumber2;
286
+ data.num_total_len = len1 + len2;
287
+ data.pointNum = len2;
288
+ if (initNum > endNum) {
289
+ data.sortFlag = "reduce";
290
+ data.to0_10 = [0, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0];
291
+ data.totalCount = calculation(initNum, endNum, "-");
292
+ data.numberVal = Number(String(initNum));
293
+ } else if (initNum < endNum) {
294
+ data.sortFlag = "add";
295
+ data.to0_10 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0];
296
+ data.totalCount = calculation(endNum, initNum, "-");
297
+ data.numberVal = Number(String(endNum));
298
+ } else {
299
+ data.sortFlag = "equal";
300
+ }
301
+ var unit = 1;
302
+ for (let i = 0; i < data.pointNum; i++) {
303
+ unit *= 10;
304
+ }
305
+ var rel_big = data.numberVal * unit;
306
+ data.relNum = rel_big;
307
+ if (toFixed != 0) {
308
+ data.pointNum = String(data.numberVal).split(".")[1] ? String(data.numberVal).split(".")[1].length : 0;
309
+ data.num_total_len = String(rel_big).length;
310
+ }
311
+ if (String(initNum).indexOf(".") > -1) {
312
+ let n = String(initNum).split(".");
313
+ data.initDigit1 = Number(n[0]);
314
+ data.initDigit2 = Number(n[1]);
315
+ } else {
316
+ data.initDigit1 = initNum;
317
+ data.initDigit2 = 0;
318
+ }
319
+ if (scrolling && !customBgImg2) {
320
+ nextTick(() => {
321
+ if (data.sortFlag == "equal") {
322
+ return false;
323
+ }
324
+ let element = numberItemRef.value[data.num_total_len - 1];
325
+ runTurn(element);
326
+ });
327
+ } else {
328
+ if (flag !== 0) {
329
+ imgNumberScroll();
330
+ }
331
+ }
332
+ };
333
+ const runTurn = (el) => {
334
+ clearIntervalTime();
335
+ var m = 1;
336
+ if (data.pointNum != 0) {
337
+ m = 1 / Math.pow(10, data.pointNum);
338
+ }
339
+ data.timer = setInterval(() => {
340
+ runStep(el);
341
+ data.totalCount = calculation(data.totalCount, m, "-");
342
+ if (data.totalCount <= 0) {
343
+ clearIntervalTime();
344
+ emit("scroll-end");
345
+ data.valFlag = false;
346
+ }
347
+ }, props.during);
348
+ };
349
+ const runStep = (el) => {
350
+ let currentTurn = el.getAttribute("turn-number");
351
+ let turningNum;
352
+ if (data.sortFlag == "add") {
353
+ turningNum = parseInt(String(currentTurn)) + 1;
354
+ } else {
355
+ turningNum = parseInt(String(currentTurn)) - 1 >= 0 ? parseInt(String(currentTurn)) - 1 : 9;
356
+ }
357
+ el.setAttribute("turn-number", String(turningNum));
358
+ if (el.style.transition == "none 0s ease 0s" || turningNum == 1 || !el.style.transition) {
359
+ el.style.transition = `all linear ${props.during}ms`;
360
+ }
361
+ if (turningNum == 10 || data.sortFlag == "reduce" && turningNum == 0) {
362
+ var timeOut = null;
363
+ el.style.top = `-${data.sortFlag == "add" ? turningNum * 100 : (10 - turningNum) * 100}%`;
364
+ el.setAttribute("turn-number", "0");
365
+ timeOut = setTimeout(() => {
366
+ timeOut && clearTimeout(timeOut);
367
+ el.style.transition = "none";
368
+ el.style.top = "0";
369
+ reset(el, turningNum);
370
+ }, 0.975 * props.during);
371
+ } else {
372
+ el.style.top = `-${data.sortFlag == "add" ? turningNum * 100 : (10 - turningNum) * 100}%`;
373
+ }
374
+ if (el.style.top == "-100%" && data.sortFlag == "reduce") {
375
+ runStep(el.previousSibling);
376
+ }
377
+ };
378
+ const reset = (el, turningNum) => {
221
379
  setTimeout(() => {
222
- r == 10 && n.previousSibling && P(n.previousSibling);
380
+ if (turningNum == 10) {
381
+ if (el.previousSibling) {
382
+ runStep(el.previousSibling);
383
+ }
384
+ }
223
385
  }, 200);
224
- }, X = () => {
225
- t.pointNum != 0 && Math.pow(10, t.pointNum), M(() => {
226
- c.value.addEventListener("webkitTransitionEnd", () => {
227
- a("scroll-end"), t.valFlag = !1;
386
+ };
387
+ const imgNumberScroll = () => {
388
+ if (data.pointNum != 0) {
389
+ Math.pow(10, data.pointNum);
390
+ }
391
+ nextTick(() => {
392
+ runNumberImg.value.addEventListener("webkitTransitionEnd", () => {
393
+ emit("scroll-end");
394
+ data.valFlag = false;
228
395
  });
229
396
  });
230
- }, K = () => {
231
- for (t.notPrize = []; t.notPrize.length < 3; ) {
232
- var n = Math.floor(Math.random() * e.machinePrizeNum + 1);
233
- t.notPrize.indexOf(n) == -1 && t.notPrize.push(n);
397
+ };
398
+ const generateRandom = () => {
399
+ data.notPrize = [];
400
+ while (data.notPrize.length < 3) {
401
+ var rand = Math.floor(Math.random() * props.machinePrizeNum + 1);
402
+ if (data.notPrize.indexOf(rand) == -1) {
403
+ data.notPrize.push(rand);
404
+ }
234
405
  }
235
406
  };
236
- se({ machineLuck: () => {
237
- const n = e.machineTurnMore < 0 ? 0 : e.machineTurnMore;
238
- let r = e.numHeight * e.machinePrizeNum;
239
- t.prizeLevelTrun < 0 && K();
240
- for (let i = 0; i < e.machineNum; i++)
407
+ const machineLuck = () => {
408
+ const machineTurnMoreNum = props.machineTurnMore < 0 ? 0 : props.machineTurnMore;
409
+ let distance = props.numHeight * props.machinePrizeNum;
410
+ if (data.prizeLevelTrun < 0) {
411
+ generateRandom();
412
+ }
413
+ for (let i = 0; i < props.machineNum; i++) {
241
414
  setTimeout(() => {
242
- let u = r * (i + 1 + parseFloat(String(n)));
243
- t.prizeYPrev.length != 0 && (t.prizeY[i] = t.prizeYPrev[i]);
244
- let m = t.prizeYPrev[i] ? t.prizeYPrev[i] : 0, l = u + m + (e.machinePrizeNum - t.prizeLevelTrun + 1) * e.numHeight + (r - m);
245
- t.prizeLevelTrun < 0 && (l += e.numHeight * t.notPrize[i]), Q(
415
+ let turn = distance * (i + 1 + parseFloat(String(machineTurnMoreNum)));
416
+ if (data.prizeYPrev.length != 0) {
417
+ data.prizeY[i] = data.prizeYPrev[i];
418
+ }
419
+ let local = data.prizeYPrev[i] ? data.prizeYPrev[i] : 0;
420
+ let newLocation = turn + local + (props.machinePrizeNum - data.prizeLevelTrun + 1) * props.numHeight + (distance - local);
421
+ if (data.prizeLevelTrun < 0) {
422
+ newLocation += props.numHeight * data.notPrize[i];
423
+ }
424
+ scrollTime(
246
425
  i,
247
426
  // parseFloat((this.machinePrizeNum-(this.prizeLevelTrun-1))*this.numHeight + turn + local),
248
- l,
249
- m
427
+ newLocation,
428
+ local
250
429
  );
251
430
  }, 500 * i);
252
- } });
253
- const Q = (n, r, i) => {
254
- let u = setInterval(() => {
255
- if (i <= r)
256
- i += 10, t.prizeY[n] = parseFloat(String(i));
257
- else if (clearInterval(u), u = null, t.finshMachine += 1, t.prizeY[n] = r, t.finshMachine == e.machineNum) {
258
- let m = e.numHeight * e.machinePrizeNum;
259
- t.prizeYPrev = [], JSON.parse(JSON.stringify(t.prizeY)).forEach((h) => {
260
- let p = h;
261
- for (; p > m; )
262
- p -= m;
263
- t.prizeYPrev.push(p);
264
- }), setTimeout(() => {
265
- t.finshMachine = 0, t.prizeLevelTrun < 0 ? (a("scroll-end", !1), t.valFlag = !1) : (a("scroll-end", !0), t.valFlag = !1);
266
- }, 130);
431
+ }
432
+ };
433
+ useExtend({ machineLuck });
434
+ const scrollTime = (index2, total, num) => {
435
+ let t = setInterval(() => {
436
+ if (num <= total) {
437
+ num += 10;
438
+ data.prizeY[index2] = parseFloat(String(num));
439
+ } else {
440
+ clearInterval(t);
441
+ t = null;
442
+ data.finshMachine += 1;
443
+ data.prizeY[index2] = total;
444
+ if (data.finshMachine == props.machineNum) {
445
+ let distance = props.numHeight * props.machinePrizeNum;
446
+ data.prizeYPrev = [];
447
+ let prevAry = JSON.parse(JSON.stringify(data.prizeY));
448
+ prevAry.forEach((item) => {
449
+ let n = item;
450
+ while (n > distance) {
451
+ n -= distance;
452
+ }
453
+ data.prizeYPrev.push(n);
454
+ });
455
+ setTimeout(() => {
456
+ data.finshMachine = 0;
457
+ if (data.prizeLevelTrun < 0) {
458
+ emit("scroll-end", false);
459
+ data.valFlag = false;
460
+ } else {
461
+ emit("scroll-end", true);
462
+ data.valFlag = false;
463
+ }
464
+ }, 130);
465
+ }
267
466
  }
268
467
  }, 30);
269
468
  };
270
- return ue(() => {
271
- t.current = e.initNum, M(() => {
272
- w();
469
+ onMounted(() => {
470
+ data.current = props.initNum;
471
+ nextTick(() => {
472
+ valChange();
273
473
  });
274
- }), le(() => {
275
- S(), t.timer = null;
276
- }), $(H(H({}, E(t)), E(C(e))), {
277
- runNumberImg: c,
278
- setRef: Y,
279
- topNumber: q,
280
- turnNumber: J
474
+ });
475
+ onUnmounted(() => {
476
+ clearIntervalTime();
477
+ data.timer = null;
478
+ });
479
+ return __spreadProps(__spreadValues(__spreadValues({}, toRefs(data)), toRefs(reactive(props))), {
480
+ runNumberImg,
481
+ setRef,
482
+ topNumber,
483
+ turnNumber
281
484
  });
282
485
  }
283
- }), he = { class: "nut-countup" }, pe = ["turn-number"];
284
- function fe(e, a, c, I, Y, t) {
285
- return s(), g("view", he, [
286
- e.customBgImg != "" ? (s(), g(b, { key: 0 }, [
287
- e.type == "machine" ? (s(), g("view", {
486
+ });
487
+ const _hoisted_1 = { class: "nut-countup" };
488
+ const _hoisted_2 = ["turn-number"];
489
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
490
+ return openBlock(), createElementBlock("view", _hoisted_1, [
491
+ _ctx.customBgImg != "" ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
492
+ _ctx.type == "machine" ? (openBlock(), createElementBlock("view", {
288
493
  key: 0,
289
494
  class: "nut-countup__machine",
290
- style: d({ height: e.numHeight + "px" })
495
+ style: normalizeStyle({ height: _ctx.numHeight + "px" })
291
496
  }, [
292
- (s(!0), g(b, null, z(e.machineNum, (v, o) => (s(), g("view", {
293
- class: "nut-countup__machine-item",
294
- key: "mImg" + o,
295
- style: d({
296
- width: e.numWidth + "px",
297
- height: e.numHeight + "px",
298
- backgroundImage: "url(" + e.customBgImg + ")",
299
- backgroundPositionY: e.prizeY[o] + "px"
300
- })
301
- }, null, 4))), 128))
302
- ], 4)) : (s(), g("view", {
497
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.machineNum, (val, index2) => {
498
+ return openBlock(), createElementBlock("view", {
499
+ class: "nut-countup__machine-item",
500
+ key: "mImg" + index2,
501
+ style: normalizeStyle({
502
+ width: _ctx.numWidth + "px",
503
+ height: _ctx.numHeight + "px",
504
+ backgroundImage: "url(" + _ctx.customBgImg + ")",
505
+ backgroundPositionY: _ctx.prizeY[index2] + "px"
506
+ })
507
+ }, null, 4);
508
+ }), 128))
509
+ ], 4)) : (openBlock(), createElementBlock("view", {
303
510
  key: 1,
304
511
  ref: "runNumberImg",
305
512
  class: "nut-countup__numberimg",
306
- style: d({ height: e.numHeight + "px" })
513
+ style: normalizeStyle({ height: _ctx.numHeight + "px" })
307
514
  }, [
308
- (s(!0), g(b, null, z(e.num_total_len, (v, o) => (s(), g("view", {
309
- class: "nut-countup__numberimg__item",
310
- key: "cImg" + o,
311
- style: d({
312
- width: e.numWidth + "px",
313
- height: e.numHeight + "px",
314
- left: e.numWidth * (o > e.num_total_len - e.pointNum - 1 ? o == e.num_total_len - e.pointNum ? o * 1.5 : o * 1.3 : o) + "px",
315
- backgroundImage: "url(" + e.customBgImg + ")",
316
- backgroundPositionX: "0",
317
- backgroundPositionY: -(+String(e.relNum)[o] * e.numHeight + e.customSpacNum * +String(e.relNum)[o]) + "px",
318
- transition: "all linear " + e.during / 10 + "ms"
319
- })
320
- }, null, 4))), 128)),
321
- e.pointNum > 0 ? (s(), g("view", {
515
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.num_total_len, (val, index2) => {
516
+ return openBlock(), createElementBlock("view", {
517
+ class: "nut-countup__numberimg__item",
518
+ key: "cImg" + index2,
519
+ style: normalizeStyle({
520
+ width: _ctx.numWidth + "px",
521
+ height: _ctx.numHeight + "px",
522
+ left: _ctx.numWidth * (index2 > _ctx.num_total_len - _ctx.pointNum - 1 ? index2 == _ctx.num_total_len - _ctx.pointNum ? index2 * 1.5 : index2 * 1.3 : index2) + "px",
523
+ backgroundImage: "url(" + _ctx.customBgImg + ")",
524
+ backgroundPositionX: "0",
525
+ backgroundPositionY: -(+String(_ctx.relNum)[index2] * _ctx.numHeight + _ctx.customSpacNum * +String(_ctx.relNum)[index2]) + "px",
526
+ transition: "all linear " + _ctx.during / 10 + "ms"
527
+ })
528
+ }, null, 4);
529
+ }), 128)),
530
+ _ctx.pointNum > 0 ? (openBlock(), createElementBlock("view", {
322
531
  key: 0,
323
532
  class: "nut-countup-pointstyl",
324
- style: d({
325
- width: e.numWidth / 2 + "px",
533
+ style: normalizeStyle({
534
+ width: _ctx.numWidth / 2 + "px",
326
535
  bottom: 0,
327
- left: e.numWidth * (e.num_total_len - e.pointNum) * 1.1 + "px",
536
+ left: _ctx.numWidth * (_ctx.num_total_len - _ctx.pointNum) * 1.1 + "px",
328
537
  fontSize: "30px"
329
538
  })
330
- }, ".", 4)) : O("", !0)
539
+ }, ".", 4)) : createCommentVNode("", true)
331
540
  ], 4))
332
- ], 64)) : (s(), g(b, { key: 1 }, [
333
- e.scrolling ? (s(), g("view", {
541
+ ], 64)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
542
+ _ctx.scrolling ? (openBlock(), createElementBlock("view", {
334
543
  key: 0,
335
544
  class: "nut-countup__number",
336
- style: d({
337
- width: e.numWidth * e.num_total_len + e.numWidth / 3 + "px",
338
- height: e.numHeight + "px",
339
- lineHeight: e.numHeight + "px"
545
+ style: normalizeStyle({
546
+ width: _ctx.numWidth * _ctx.num_total_len + _ctx.numWidth / 3 + "px",
547
+ height: _ctx.numHeight + "px",
548
+ lineHeight: _ctx.numHeight + "px"
340
549
  })
341
550
  }, [
342
- (s(!0), g(b, null, z(e.num_total_len, (v, o) => (s(), g("view", {
343
- ref_for: !0,
344
- ref: (y) => e.setRef(y),
345
- class: "nut-countup__number-item",
346
- key: v,
347
- style: d({
348
- top: e.topNumber(o),
349
- left: e.numWidth * (o > e.num_total_len - e.pointNum - 1 ? o * 1.1 : o) + "px"
350
- }),
351
- "turn-number": e.turnNumber(o)
352
- }, [
353
- (s(!0), g(b, null, z(e.to0_10, (y, k) => (s(), g("view", {
354
- class: "nut-countup__number-item__span",
355
- key: "dote" + k,
356
- style: d({
357
- width: e.numWidth + "px",
358
- height: e.numHeight + "px",
359
- lineHeight: e.numHeight + "px"
360
- })
361
- }, R(y), 5))), 128))
362
- ], 12, pe))), 128)),
363
- e.pointNum > 0 ? (s(), g("view", {
551
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.num_total_len, (val, index2) => {
552
+ return openBlock(), createElementBlock("view", {
553
+ ref_for: true,
554
+ ref: (el) => _ctx.setRef(el),
555
+ class: "nut-countup__number-item",
556
+ key: val,
557
+ style: normalizeStyle({
558
+ top: _ctx.topNumber(index2),
559
+ left: _ctx.numWidth * (index2 > _ctx.num_total_len - _ctx.pointNum - 1 ? index2 * 1.1 : index2) + "px"
560
+ }),
561
+ "turn-number": _ctx.turnNumber(index2)
562
+ }, [
563
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.to0_10, (item, idx) => {
564
+ return openBlock(), createElementBlock("view", {
565
+ class: "nut-countup__number-item__span",
566
+ key: "dote" + idx,
567
+ style: normalizeStyle({
568
+ width: _ctx.numWidth + "px",
569
+ height: _ctx.numHeight + "px",
570
+ lineHeight: _ctx.numHeight + "px"
571
+ })
572
+ }, toDisplayString(item), 5);
573
+ }), 128))
574
+ ], 12, _hoisted_2);
575
+ }), 128)),
576
+ _ctx.pointNum > 0 ? (openBlock(), createElementBlock("view", {
364
577
  key: 0,
365
578
  class: "nut-countup-pointstyl",
366
- style: d({
367
- width: e.numWidth / 3 + "px",
368
- height: e.numHeight + "px",
369
- lineHeight: e.numHeight + "px",
579
+ style: normalizeStyle({
580
+ width: _ctx.numWidth / 3 + "px",
581
+ height: _ctx.numHeight + "px",
582
+ lineHeight: _ctx.numHeight + "px",
370
583
  top: 0,
371
- left: e.numWidth * (e.num_total_len - e.pointNum) + "px"
584
+ left: _ctx.numWidth * (_ctx.num_total_len - _ctx.pointNum) + "px"
372
585
  })
373
- }, ".", 4)) : O("", !0)
374
- ], 4)) : (s(), g(b, { key: 1 }, [
375
- ae(R(e.current), 1)
586
+ }, ".", 4)) : createCommentVNode("", true)
587
+ ], 4)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
588
+ createTextVNode(toDisplayString(_ctx.current), 1)
376
589
  ], 64))
377
590
  ], 64))
378
591
  ]);
379
592
  }
380
- const ze = /* @__PURE__ */ me(ce, [["render", fe]]);
593
+ const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
381
594
  export {
382
- ze as default
595
+ index as default
383
596
  };