y-design-ssr 0.1.1 → 0.2.0

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 (224) hide show
  1. package/README.md +12 -1
  2. package/libs/button/index.css +1 -0
  3. package/libs/button/index.mjs +152 -0
  4. package/libs/button/index.umd.js +2 -0
  5. package/libs/button/package.json +5 -0
  6. package/libs/cell/index.css +1 -0
  7. package/libs/cell/index.mjs +231 -0
  8. package/libs/cell/index.umd.js +2 -0
  9. package/libs/cell/package.json +5 -0
  10. package/libs/checkbox/index.css +1 -0
  11. package/libs/checkbox/index.mjs +248 -0
  12. package/libs/checkbox/index.umd.js +2 -0
  13. package/libs/checkbox/package.json +5 -0
  14. package/libs/checkboxGroup/index.css +1 -0
  15. package/libs/checkboxGroup/index.mjs +173 -0
  16. package/libs/checkboxGroup/index.umd.js +2 -0
  17. package/libs/checkboxGroup/package.json +5 -0
  18. package/libs/col/index.css +1 -0
  19. package/libs/col/index.mjs +134 -0
  20. package/libs/col/index.umd.js +2 -0
  21. package/libs/col/package.json +5 -0
  22. package/libs/countdown/index.css +1 -0
  23. package/libs/countdown/index.mjs +117 -0
  24. package/libs/countdown/index.umd.js +2 -0
  25. package/libs/countdown/package.json +5 -0
  26. package/libs/dialog/index.css +1 -0
  27. package/libs/dialog/index.mjs +952 -0
  28. package/libs/dialog/index.umd.js +2 -0
  29. package/libs/dialog/package.json +5 -0
  30. package/libs/empty/index.css +1 -0
  31. package/libs/empty/index.mjs +86 -0
  32. package/libs/empty/index.umd.js +2 -0
  33. package/libs/empty/package.json +5 -0
  34. package/libs/form/index.css +1 -0
  35. package/libs/form/index.mjs +213 -0
  36. package/libs/form/index.umd.js +2 -0
  37. package/libs/form/package.json +5 -0
  38. package/libs/formItem/index.css +1 -0
  39. package/libs/formItem/index.mjs +216 -0
  40. package/libs/formItem/index.umd.js +2 -0
  41. package/libs/formItem/package.json +5 -0
  42. package/libs/icon/index.css +1 -0
  43. package/libs/icon/index.mjs +131 -0
  44. package/libs/icon/index.umd.js +2 -0
  45. package/libs/icon/package.json +5 -0
  46. package/libs/index.css +1 -154
  47. package/libs/index.mjs +2348 -3788
  48. package/libs/index.umd.js +2 -5505
  49. package/libs/input/index.css +1 -0
  50. package/libs/input/index.mjs +177 -0
  51. package/libs/input/index.umd.js +2 -0
  52. package/libs/input/package.json +5 -0
  53. package/libs/layout/index.css +1 -0
  54. package/libs/layout/index.mjs +212 -0
  55. package/libs/layout/index.umd.js +2 -0
  56. package/libs/layout/package.json +5 -0
  57. package/libs/list/index.css +1 -0
  58. package/libs/list/index.mjs +384 -0
  59. package/libs/list/index.umd.js +2 -0
  60. package/libs/list/package.json +5 -0
  61. package/libs/loading/index.css +1 -0
  62. package/libs/loading/index.mjs +237 -0
  63. package/libs/loading/index.umd.js +2 -0
  64. package/libs/loading/package.json +5 -0
  65. package/libs/mask/index.css +1 -0
  66. package/libs/mask/index.mjs +134 -0
  67. package/libs/mask/index.umd.js +2 -0
  68. package/libs/mask/package.json +5 -0
  69. package/libs/popup/index.css +1 -0
  70. package/libs/popup/index.mjs +276 -0
  71. package/libs/popup/index.umd.js +2 -0
  72. package/libs/popup/package.json +5 -0
  73. package/libs/progress/index.css +1 -0
  74. package/libs/progress/index.mjs +244 -0
  75. package/libs/progress/index.umd.js +2 -0
  76. package/libs/progress/package.json +5 -0
  77. package/libs/pullrefresh/index.css +1 -0
  78. package/libs/pullrefresh/index.mjs +166 -0
  79. package/libs/pullrefresh/index.umd.js +2 -0
  80. package/libs/pullrefresh/package.json +5 -0
  81. package/libs/row/index.css +1 -0
  82. package/libs/row/index.mjs +139 -0
  83. package/libs/row/index.umd.js +2 -0
  84. package/libs/row/package.json +5 -0
  85. package/libs/slider/index.css +1 -0
  86. package/libs/slider/index.mjs +251 -0
  87. package/libs/slider/index.umd.js +2 -0
  88. package/libs/slider/package.json +5 -0
  89. package/libs/stepper/index.css +1 -0
  90. package/libs/stepper/index.mjs +183 -0
  91. package/libs/stepper/index.umd.js +2 -0
  92. package/libs/stepper/package.json +5 -0
  93. package/libs/swipe/index.css +1 -0
  94. package/libs/swipe/index.mjs +414 -0
  95. package/libs/swipe/index.umd.js +2 -0
  96. package/libs/swipe/package.json +5 -0
  97. package/libs/swipeItem/index.css +1 -0
  98. package/libs/swipeItem/index.mjs +89 -0
  99. package/libs/swipeItem/index.umd.js +2 -0
  100. package/libs/swipeItem/package.json +5 -0
  101. package/libs/switch/index.css +1 -0
  102. package/libs/switch/index.mjs +135 -0
  103. package/libs/switch/index.umd.js +2 -0
  104. package/libs/switch/package.json +5 -0
  105. package/libs/tab/index.mjs +124 -0
  106. package/libs/tab/index.umd.js +1 -0
  107. package/libs/tab/package.json +5 -0
  108. package/libs/tabs/index.css +1 -0
  109. package/libs/tabs/index.mjs +673 -0
  110. package/libs/tabs/index.umd.js +2 -0
  111. package/libs/tabs/package.json +5 -0
  112. package/libs/toast/index.css +1 -0
  113. package/libs/toast/index.mjs +231 -0
  114. package/libs/toast/index.umd.js +2 -0
  115. package/libs/toast/package.json +5 -0
  116. package/libs/tooltip/index.css +1 -0
  117. package/libs/tooltip/index.mjs +272 -0
  118. package/libs/tooltip/index.umd.js +2 -0
  119. package/libs/tooltip/package.json +5 -0
  120. package/libs/types/{button → components/button}/index.d.ts +1 -0
  121. package/libs/types/{button → components/button}/src/button.d.ts +1 -1
  122. package/libs/types/{cell → components/cell}/src/cell.d.ts +1 -1
  123. package/libs/types/{dialog → components/dialog}/src/dialog.d.ts +1 -1
  124. package/libs/types/{loading → components/loading}/src/loading.d.ts +1 -1
  125. package/libs/types/{popup → components/popup}/src/popup.d.ts +1 -1
  126. package/libs/types/{row → components/row}/src/row.d.ts +1 -1
  127. package/libs/types/{switch → components/switch}/src/switch.d.ts +1 -1
  128. package/libs/types/{toast → components/toast}/src/toast.d.ts +1 -1
  129. package/libs/types/index.d.ts +27 -27
  130. package/package.json +6 -6
  131. package/libs/component-props.json +0 -1
  132. package/libs/demo/button.json +0 -1
  133. package/libs/demo/cell.json +0 -1
  134. package/libs/demo/checkbox.json +0 -1
  135. package/libs/demo/countdown.json +0 -1
  136. package/libs/demo/dialog.json +0 -1
  137. package/libs/demo/empty.json +0 -1
  138. package/libs/demo/form.json +0 -1
  139. package/libs/demo/icon.json +0 -1
  140. package/libs/demo/input.json +0 -1
  141. package/libs/demo/layout.json +0 -1
  142. package/libs/demo/list.json +0 -1
  143. package/libs/demo/loading.json +0 -1
  144. package/libs/demo/mask.json +0 -1
  145. package/libs/demo/popup.json +0 -1
  146. package/libs/demo/progress.json +0 -1
  147. package/libs/demo/pullrefresh.json +0 -1
  148. package/libs/demo/slider.json +0 -1
  149. package/libs/demo/stepper.json +0 -1
  150. package/libs/demo/style.json +0 -1
  151. package/libs/demo/swipe.json +0 -1
  152. package/libs/demo/switch.json +0 -1
  153. package/libs/demo/tabs.json +0 -1
  154. package/libs/demo/toast.json +0 -1
  155. package/libs/demo/tooltip.json +0 -1
  156. package/libs/index.fa0c1ff.js +0 -2
  157. package/libs/index.fa0c1ff.js.LICENSE.txt +0 -19
  158. package/libs/index.html +0 -1
  159. package/libs/runtime.bfd6297.js +0 -1
  160. package/libs/style.css +0 -2837
  161. package/libs/vendor.025080b.js +0 -2
  162. package/libs/vendor.025080b.js.LICENSE.txt +0 -5
  163. /package/libs/types/{cell → components/cell}/index.d.ts +0 -0
  164. /package/libs/types/{checkbox → components/checkbox}/index.d.ts +0 -0
  165. /package/libs/types/{checkbox → components/checkbox}/src/checkbox.d.ts +0 -0
  166. /package/libs/types/{checkboxGroup → components/checkboxGroup}/index.d.ts +0 -0
  167. /package/libs/types/{checkboxGroup → components/checkboxGroup}/src/checkboxGroup.d.ts +0 -0
  168. /package/libs/types/{checkboxGroup → components/checkboxGroup}/src/constants.d.ts +0 -0
  169. /package/libs/types/{col → components/col}/index.d.ts +0 -0
  170. /package/libs/types/{col → components/col}/src/col.d.ts +0 -0
  171. /package/libs/types/{countdown → components/countdown}/index.d.ts +0 -0
  172. /package/libs/types/{countdown → components/countdown}/src/count-down.d.ts +0 -0
  173. /package/libs/types/{dialog → components/dialog}/index.d.ts +0 -0
  174. /package/libs/types/{dialog → components/dialog}/src/create.d.ts +0 -0
  175. /package/libs/types/{empty → components/empty}/index.d.ts +0 -0
  176. /package/libs/types/{empty → components/empty}/src/empty.d.ts +0 -0
  177. /package/libs/types/{empty → components/empty}/src/utils.d.ts +0 -0
  178. /package/libs/types/{form → components/form}/index.d.ts +0 -0
  179. /package/libs/types/{form → components/form}/src/constants.d.ts +0 -0
  180. /package/libs/types/{form → components/form}/src/form.d.ts +0 -0
  181. /package/libs/types/{formItem → components/formItem}/index.d.ts +0 -0
  182. /package/libs/types/{formItem → components/formItem}/src/formItem.d.ts +0 -0
  183. /package/libs/types/{icon → components/icon}/index.d.ts +0 -0
  184. /package/libs/types/{icon → components/icon}/src/icon.d.ts +0 -0
  185. /package/libs/types/{input → components/input}/index.d.ts +0 -0
  186. /package/libs/types/{input → components/input}/src/input.d.ts +0 -0
  187. /package/libs/types/{list → components/list}/index.d.ts +0 -0
  188. /package/libs/types/{list → components/list}/src/list.d.ts +0 -0
  189. /package/libs/types/{loading → components/loading}/index.d.ts +0 -0
  190. /package/libs/types/{loading → components/loading}/src/create.d.ts +0 -0
  191. /package/libs/types/{loading → components/loading}/src/directive.d.ts +0 -0
  192. /package/libs/types/{mask → components/mask}/index.d.ts +0 -0
  193. /package/libs/types/{mask → components/mask}/src/mask.d.ts +0 -0
  194. /package/libs/types/{popup → components/popup}/index.d.ts +0 -0
  195. /package/libs/types/{progress → components/progress}/index.d.ts +0 -0
  196. /package/libs/types/{progress → components/progress}/src/progress.d.ts +0 -0
  197. /package/libs/types/{pullrefresh → components/pullrefresh}/index.d.ts +0 -0
  198. /package/libs/types/{pullrefresh → components/pullrefresh}/src/pullrefresh.d.ts +0 -0
  199. /package/libs/types/{pullrefresh → components/pullrefresh}/src/utils.d.ts +0 -0
  200. /package/libs/types/{row → components/row}/index.d.ts +0 -0
  201. /package/libs/types/{row → components/row}/src/constants.d.ts +0 -0
  202. /package/libs/types/{slider → components/slider}/index.d.ts +0 -0
  203. /package/libs/types/{slider → components/slider}/src/slider.d.ts +0 -0
  204. /package/libs/types/{stepper → components/stepper}/index.d.ts +0 -0
  205. /package/libs/types/{stepper → components/stepper}/src/stepper.d.ts +0 -0
  206. /package/libs/types/{swipe → components/swipe}/index.d.ts +0 -0
  207. /package/libs/types/{swipe → components/swipe}/src/constants.d.ts +0 -0
  208. /package/libs/types/{swipe → components/swipe}/src/swipe.d.ts +0 -0
  209. /package/libs/types/{swipeItem → components/swipeItem}/index.d.ts +0 -0
  210. /package/libs/types/{swipeItem → components/swipeItem}/src/swipeItem.d.ts +0 -0
  211. /package/libs/types/{switch → components/switch}/index.d.ts +0 -0
  212. /package/libs/types/{tab → components/tab}/index.d.ts +0 -0
  213. /package/libs/types/{tab → components/tab}/src/tab.d.ts +0 -0
  214. /package/libs/types/{tabs → components/tabs}/index.d.ts +0 -0
  215. /package/libs/types/{tabs → components/tabs}/src/constants.d.ts +0 -0
  216. /package/libs/types/{tabs → components/tabs}/src/tabs.d.ts +0 -0
  217. /package/libs/types/{tabs → components/tabs}/src/title.d.ts +0 -0
  218. /package/libs/types/{toast → components/toast}/index.d.ts +0 -0
  219. /package/libs/types/{toast → components/toast}/src/create.d.ts +0 -0
  220. /package/libs/types/{tooltip → components/tooltip}/index.d.ts +0 -0
  221. /package/libs/types/{tooltip → components/tooltip}/src/constants.d.ts +0 -0
  222. /package/libs/types/{tooltip → components/tooltip}/src/direactive.d.ts +0 -0
  223. /package/libs/types/{tooltip → components/tooltip}/src/popper.d.ts +0 -0
  224. /package/libs/types/{tooltip → components/tooltip}/src/tooltip.d.ts +0 -0
@@ -0,0 +1,384 @@
1
+ import { ref as d, reactive as K, defineComponent as P, createVNode as i, computed as S, onMounted as Q, onUpdated as X, nextTick as Z, onUnmounted as ee, createTextVNode as te } from "vue";
2
+ const ne = (e) => (n) => Object.prototype.toString.call(n) === `[object ${e}]`, ae = ne("Number"), L = (e, n) => n ? typeof n == "string" ? ` ${e}--${n}` : Array.isArray(n) ? n.reduce((c, r) => c + L(e, r), "") : Object.keys(n).reduce(
3
+ (c, r) => c + (n[r] ? L(e, r) : ""),
4
+ ""
5
+ ) : "", le = (e) => (n, c) => {
6
+ let r = n, f = c;
7
+ return r && typeof r != "string" && (f = r, r = ""), r = r ? `${e}__${r}` : e, `${r}${L(r, f)}`;
8
+ }, re = () => (e, n) => n ? `${L(`y-${e}`, n)}` : `y-${e}`, ie = {
9
+ "pull-refresh": {
10
+ pulling: "下拉刷新...",
11
+ loosing: "释放刷新...",
12
+ loading: "数据加载中...",
13
+ success: "数据已更新",
14
+ failed: "数据跟新失败,请稍后再试"
15
+ },
16
+ "form-item": {
17
+ validateMessage: "请输入正确内容"
18
+ }
19
+ };
20
+ d("zh-CN");
21
+ K({
22
+ "zh-CN": ie
23
+ });
24
+ const G = (e) => {
25
+ const n = `y-${e}`;
26
+ return [n, le(n), re()];
27
+ }, H = (e) => isNaN(Number(e)) && typeof e == "string" ? e : `${e}px`, oe = (e) => {
28
+ switch (e) {
29
+ case "top":
30
+ return "column-reverse";
31
+ case "bottom":
32
+ return "column";
33
+ case "left":
34
+ return "row-reverse";
35
+ case "right":
36
+ return "row";
37
+ default:
38
+ return "column";
39
+ }
40
+ }, [ue, R] = G("loading"), ce = {
41
+ // Loading icon 的颜色
42
+ color: {
43
+ type: String,
44
+ default: ""
45
+ },
46
+ // 背景色
47
+ bgColor: {
48
+ type: String,
49
+ default: ""
50
+ },
51
+ bgBorderRadius: {
52
+ type: [Number, String],
53
+ default: "16px"
54
+ },
55
+ // 粗细
56
+ thick: {
57
+ type: [Number, String],
58
+ default: 8
59
+ },
60
+ // 方向
61
+ direction: {
62
+ type: String,
63
+ default: "forward"
64
+ },
65
+ // 大小
66
+ size: {
67
+ type: [Number, String],
68
+ default: "24px"
69
+ },
70
+ padding: {
71
+ type: [Number, String],
72
+ default: ""
73
+ },
74
+ // 文案
75
+ text: {
76
+ type: String,
77
+ default: ""
78
+ },
79
+ // 文案位置
80
+ textLocation: {
81
+ type: String,
82
+ default: "bottom"
83
+ },
84
+ // 文案大小
85
+ textSize: {
86
+ type: [Number, String],
87
+ default: ""
88
+ },
89
+ // 文案颜色
90
+ textColor: {
91
+ type: String,
92
+ default: ""
93
+ },
94
+ // 布局位置
95
+ position: {
96
+ type: String,
97
+ default: "relative"
98
+ }
99
+ }, se = /* @__PURE__ */ P({
100
+ name: ue,
101
+ props: ce,
102
+ setup(e, {
103
+ slots: n
104
+ }) {
105
+ return () => {
106
+ var w, B;
107
+ const {
108
+ position: c,
109
+ textLocation: r,
110
+ bgColor: f,
111
+ bgBorderRadius: m,
112
+ size: o,
113
+ padding: x,
114
+ color: v,
115
+ thick: C,
116
+ direction: I,
117
+ text: s,
118
+ textColor: p,
119
+ textSize: l
120
+ } = e, k = ((w = n.default) == null ? void 0 : w.call(n)) || s;
121
+ return i("div", {
122
+ class: R({
123
+ [c]: c !== "relative"
124
+ })
125
+ }, [i("div", {
126
+ class: R("bg", {
127
+ [c]: c !== "relative"
128
+ }),
129
+ style: {
130
+ flexDirection: oe(r),
131
+ backgroundColor: f,
132
+ borderRadius: H(m),
133
+ padding: H(x)
134
+ }
135
+ }, [i("span", {
136
+ class: R("icon-wrapper"),
137
+ style: {
138
+ width: H(o),
139
+ height: H(o)
140
+ }
141
+ }, [((B = n.icon) == null ? void 0 : B.call(n)) || i("svg", {
142
+ class: R("icon", {
143
+ [I]: I
144
+ }),
145
+ viewBox: "25 25 50 50"
146
+ }, [i("circle", {
147
+ class: R("icon-circle"),
148
+ style: {
149
+ stroke: v,
150
+ strokeWidth: H(C)
151
+ },
152
+ cx: "50",
153
+ cy: "50",
154
+ r: "20",
155
+ fill: "none"
156
+ }, null)])]), k && i("span", {
157
+ class: R("text", {
158
+ [r]: r
159
+ }),
160
+ style: {
161
+ color: p,
162
+ fontSize: H(l)
163
+ }
164
+ }, [k])])]);
165
+ };
166
+ }
167
+ }), [de, h] = G("list"), V = /* @__PURE__ */ P({
168
+ name: de,
169
+ props: {
170
+ // 加载中 文案
171
+ loadingText: {
172
+ type: String,
173
+ default: "加载中..."
174
+ },
175
+ // 加载完成 文案
176
+ finishedText: {
177
+ type: String,
178
+ default: "没有更多了~"
179
+ },
180
+ // 加载失败 文案
181
+ errorText: {
182
+ type: String,
183
+ default: "请求失败,点击重新加载"
184
+ },
185
+ // 容器高度
186
+ height: {
187
+ type: [Number, String],
188
+ default: "auto"
189
+ },
190
+ // 唯一键名称
191
+ keyName: {
192
+ type: String,
193
+ default: "_index"
194
+ },
195
+ // 列表数组
196
+ dataSource: {
197
+ type: Array,
198
+ default: () => []
199
+ },
200
+ // 是否在初始化时立即执行滚动位置检查
201
+ immediateCheck: {
202
+ type: Boolean,
203
+ default: !0
204
+ },
205
+ // 滚动条与底部距离小于多少时触发加载
206
+ loadOffset: {
207
+ type: Number,
208
+ default: 300
209
+ },
210
+ // 是否使用虚拟列表
211
+ virtual: {
212
+ type: Boolean,
213
+ default: !1
214
+ },
215
+ // 缓冲区比例
216
+ bufferScale: {
217
+ type: Number,
218
+ default: 1
219
+ },
220
+ // 列表子项预估高度
221
+ itemHeight: {
222
+ type: [String, Number],
223
+ default: "80"
224
+ },
225
+ // 是否是不定高度子项
226
+ dynamicItemHeight: {
227
+ type: Boolean,
228
+ default: !1
229
+ }
230
+ },
231
+ emits: ["load"],
232
+ setup(e, {
233
+ slots: n,
234
+ emit: c,
235
+ expose: r
236
+ }) {
237
+ const f = d(0), m = d(!1), o = d("normal"), x = d(), v = d(), C = d(), I = d([]), s = d(0), p = d(0), l = d([]), k = S(() => ae(e.height) ? `${e.height}px` : e.height), w = S(() => l.value.length ? l.value[l.value.length - 1].bottom : 0), B = S(() => {
238
+ if (e.virtual) {
239
+ const t = s.value - M.value, a = p.value + A.value;
240
+ return _.value.slice(t, a);
241
+ }
242
+ return _.value;
243
+ }), M = S(() => Math.min(s.value, e.bufferScale * $.value)), A = S(() => Math.min(e.dataSource.length - p.value, e.bufferScale * $.value)), $ = S(() => Math.ceil(f.value / parseInt(String(e.itemHeight)))), _ = S(() => e.dataSource.map((t, a) => (t[e.keyName] = a, t))), j = () => m.value ? document.documentElement.scrollTop || document.body.scrollTop : x.value.scrollTop, W = () => m.value ? document.documentElement.scrollHeight : x.value.scrollHeight, E = () => {
244
+ o.value !== "loading" && (o.value = "loading", c("load", (t) => {
245
+ if (o.value === "loading")
246
+ switch (t) {
247
+ case "error":
248
+ o.value = "error";
249
+ break;
250
+ case "finished":
251
+ o.value = "finished", e.virtual && D(), e.virtual && e.dynamicItemHeight && U();
252
+ break;
253
+ default:
254
+ o.value = "normal", e.virtual && (U(), e.dataSource.length < $.value + A.value && E());
255
+ }
256
+ }));
257
+ }, z = () => {
258
+ o.value === "normal" && W() - j() - f.value <= e.loadOffset && E();
259
+ }, D = () => {
260
+ l.value = _.value.map((t, a) => {
261
+ const u = parseInt(String(e.itemHeight));
262
+ return {
263
+ index: a,
264
+ height: u,
265
+ top: a * u,
266
+ bottom: (a + 1) * u
267
+ };
268
+ });
269
+ }, U = () => {
270
+ D();
271
+ for (let t = 1; t < l.value.length; t++)
272
+ l.value[t].top = l.value[t - 1].bottom, l.value[t].bottom = l.value[t].top + l.value[t].height;
273
+ }, Y = (t, a) => {
274
+ let u = 0, N = t.length - 1, g = -1;
275
+ for (; u <= N; ) {
276
+ const y = Math.floor((u + N) / 2), b = t[y].bottom;
277
+ if (b === a)
278
+ return y + 1;
279
+ b < a ? u = y + 1 : b > a && ((g === -1 || g > y) && (g = y), N = y - 1);
280
+ }
281
+ return g;
282
+ }, q = (t) => Y(l.value, t), O = () => {
283
+ if (z(), e.virtual) {
284
+ const t = j();
285
+ F(t);
286
+ }
287
+ }, F = (t) => {
288
+ if (!v.value)
289
+ return;
290
+ const a = t || 0;
291
+ if (e.dynamicItemHeight) {
292
+ s.value = q(a), p.value = s.value + $.value;
293
+ const u = l.value[s.value - M.value].top ? l.value[s.value - M.value].top : 0;
294
+ v.value.style.transform = `translate3d(0, ${u}px, 0)`;
295
+ } else {
296
+ s.value = Math.floor(a / parseInt(String(e.itemHeight))), p.value = s.value + $.value;
297
+ const u = s.value * parseInt(String(e.itemHeight)) - M.value * parseInt(String(e.itemHeight));
298
+ v.value.style.transform = `translate3d(0, ${u}px, 0)`;
299
+ }
300
+ }, J = () => {
301
+ if (!v.value || !C.value)
302
+ return;
303
+ const t = v.value.children;
304
+ t && t.length > 0 && [...t].forEach((a) => {
305
+ if (a instanceof HTMLDivElement) {
306
+ const u = a.getBoundingClientRect(), {
307
+ height: N
308
+ } = u, g = Number(a.dataset.index), b = l.value[g].height - N;
309
+ if (b) {
310
+ l.value[g].bottom -= b, l.value[g].height = N;
311
+ for (let T = g + 1; T < l.value.length; T++)
312
+ l.value[T].top = l.value[T - 1].bottom, l.value[T].bottom -= b;
313
+ }
314
+ }
315
+ });
316
+ };
317
+ return r({
318
+ ...e,
319
+ checkIsScrollToBottom: z,
320
+ loadData: E
321
+ }), Q(() => {
322
+ e.height !== "auto" ? (m.value = !1, f.value = x.value.clientHeight) : e.height === "auto" && (m.value = !0, f.value = document.documentElement.clientHeight, document.addEventListener("scroll", O)), e.virtual && (D(), F()), e.immediateCheck && z();
323
+ }), X(async () => {
324
+ var t, a;
325
+ if (e.virtual && e.dynamicItemHeight) {
326
+ if (await Z(), !((a = (t = v.value) == null ? void 0 : t.children) != null && a.length))
327
+ return;
328
+ J();
329
+ }
330
+ }), ee(() => {
331
+ m.value && document.removeEventListener("scroll", O);
332
+ }), () => i("div", {
333
+ ref: x,
334
+ class: `${h()} ${e.virtual ? h({
335
+ virtual: !0
336
+ }) : ""}`,
337
+ style: {
338
+ height: k.value
339
+ },
340
+ onScroll: O
341
+ }, [e.virtual && i("div", {
342
+ ref: C,
343
+ class: h("phantom"),
344
+ style: {
345
+ height: `${w.value}px`
346
+ }
347
+ }, null), i("div", {
348
+ ref: v,
349
+ class: h("content")
350
+ }, [B.value.map((t) => {
351
+ var a;
352
+ return i("div", {
353
+ ref: I,
354
+ class: h("item"),
355
+ "data-index": t._index
356
+ }, [(a = n.default) == null ? void 0 : a.call(n, {
357
+ item: t
358
+ })]);
359
+ })]), o.value === "loading" && i("div", {
360
+ class: h({
361
+ loading: !0
362
+ })
363
+ }, [n.loading ? n.loading() : i(se, {
364
+ "text-location": "right"
365
+ }, {
366
+ default: () => [te("加载中...")]
367
+ })]), o.value === "finished" && i("div", {
368
+ class: h({
369
+ finished: !0
370
+ })
371
+ }, [e.finishedText]), o.value === "error" && i("div", {
372
+ class: h("error"),
373
+ role: "presentation",
374
+ onClick: E
375
+ }, [e.errorText])]);
376
+ }
377
+ });
378
+ V.install = (e) => {
379
+ const { name: n } = V;
380
+ e.component(n, V);
381
+ };
382
+ export {
383
+ V as default
384
+ };
@@ -0,0 +1,2 @@
1
+ (function(w,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(w=typeof globalThis<"u"?globalThis:w||self,e(w.list={},w.Vue))})(this,function(w,e){"use strict";var p=document.createElement("style");p.textContent=`@charset "UTF-8";body,p,h1,h2,h3,h4,h5,h6,ul,dl,ol,dd,form,figure,blockquote{margin:0}ul,ol{list-style:none;padding:0}a{color:inherit;text-decoration:none;outline:none}em,cite,i{font-style:normal}input,textarea,select{font-family:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;outline:none}img{display:inline-block}p{word-break:break-all}main{display:block}table{border-spacing:0;border-collapse:collapse}body{color:#191919;fill:currentColor;font-size:14px;line-height:1.5715;line-height:calc(1em + 8px);font-family:PingFang SC,sans-serif;-webkit-tap-highlight-color:rgba(0,0,0,.05);-webkit-font-smoothing:antialiased}button{line-height:inherit}button:focus{outline:none}.y-el--clickable{cursor:pointer}.y-el--clickable:active{opacity:.85}.y-el--hairline,.y-el--hairline-top,.y-el--hairline-right,.y-el--hairline-bottom,.y-el--hairline-left{position:relative}.y-el--hairline:after,.y-el--hairline-top:after,.y-el--hairline-right:after,.y-el--hairline-bottom:after,.y-el--hairline-left:after{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;content:" ";pointer-events:none;top:-50%;right:-50%;bottom:-50%;left:-50%;border:0 solid rgba(0,0,0,.08);-webkit-transform:scale(.5);transform:scale(.5)}.y-el--hairline-top:after{border-top-width:1px}.y-el--hairline-right:after{border-right-width:1px}.y-el--hairline-bottom:after{border-bottom-width:1px}.y-el--hairline-left:after{border-left-width:1px}.y-el--hairline:after{border-width:1px}.y-el--ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.y-el--ellipsis-l2{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.y-el--ellipsis-l3{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.y-el--unclickable{overflow:hidden}.y-el--unclickable *{pointer-events:none}@font-face{font-family:Yuewen Font;font-style:normal;font-weight:400;src:url(data:application/octet-stream;base64,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YhshWWO4BABiILAAUFiwQGBZZrABY2AjLiMgIDyKOCMhWS2wPSywABawESNCILAIQyAuRyNHI2EgYLAgYGawAmIgsABQWLBAYFlmsAFjIyAgPIo4LbA+LCMgLkawAiVGsBFDWFAbUllYIDxZLrEuARQrLbA/LCMgLkawAiVGsBFDWFIbUFlYIDxZLrEuARQrLbBALCMgLkawAiVGsBFDWFAbUllYIDxZIyAuRrACJUawEUNYUhtQWVggPFkusS4BFCstsEEssDgrIyAuRrACJUawEUNYUBtSWVggPFkusS4BFCstsEIssDkriiAgPLAEI0KKOCMgLkawAiVGsBFDWFAbUllYIDxZLrEuARQrsARDLrAuKy2wQyywABawBCWwBCYgICBGI0dhsAojQi5HI0cjYbAJQysjIDwgLiM4sS4BFCstsEQssQgEJUKwABawBCWwBCUgLkcjRyNhILAEI0KxCgBCsAlDKyCwYFBYILBAUVizAiADIBuzAiYDGllCQiMgR7AEQ7ACYiCwAFBYsEBgWWawAWNgILABKyCKimEgsAJDYGQjsANDYWRQWLACQ2EbsANDYFmwAyWwAmIgsABQWLBAYFlmsAFjYbACJUZhOCMgPCM4GyEgIEYjR7ABKyNhOCFZsS4BFCstsEUssQA4Ky6xLgEUKy2wRiyxADkrISMgIDywBCNCIzixLgEUK7AEQy6wListsEcssAAVIEewACNCsgABARUUEy6wNCotsEgssAAVIEewACNCsgABARUUEy6wNCotsEkssQABFBOwNSotsEossDcqLbBLLLAAFkUjIC4gRoojYTixLgEUKy2wTCywCCNCsEsrLbBNLLIAAEQrLbBOLLIAAUQrLbBPLLIBAEQrLbBQLLIBAUQrLbBRLLIAAEUrLbBSLLIAAUUrLbBTLLIBAEUrLbBULLIBAUUrLbBVLLMAAABBKy2wViyzAAEAQSstsFcsswEAAEErLbBYLLMBAQBBKy2wWSyzAAABQSstsFosswABAUErLbBbLLMBAAFBKy2wXCyzAQEBQSstsF0ssgAAQystsF4ssgABQystsF8ssgEAQystsGAssgEBQystsGEssgAARistsGIssgABRistsGMssgEARistsGQssgEBRistsGUsswAAAEIrLbBmLLMAAQBCKy2wZyyzAQAAQistsGgsswEBAEIr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) format("truetype")}.y-font--number{font-family:Yuewen Font;speak:none;font-style:normal;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@-webkit-keyframes y-keyframes--slide-bottom-enter{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes y-keyframes--slide-bottom-enter{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes y-keyframes--slide-bottom-leave{to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes y-keyframes--slide-bottom-leave{to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes y-keyframes--slide-top-enter{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes y-keyframes--slide-top-enter{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-webkit-keyframes y-keyframes--slide-top-leave{to{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes y-keyframes--slide-top-leave{to{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-webkit-keyframes y-keyframes--slide-left-enter{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes y-keyframes--slide-left-enter{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes y-keyframes--slide-left-leave{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes y-keyframes--slide-left-leave{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes y-keyframes--slide-right-enter{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes y-keyframes--slide-right-enter{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@-webkit-keyframes y-keyframes--slide-right-leave{to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes y-keyframes--slide-right-leave{to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@-webkit-keyframes y-keyframes--fade-enter{0%{opacity:0}to{opacity:1}}@keyframes y-keyframes--fade-enter{0%{opacity:0}to{opacity:1}}@-webkit-keyframes y-keyframes--fade-leave{0%{opacity:1}to{opacity:0}}@keyframes y-keyframes--fade-leave{0%{opacity:1}to{opacity:0}}@-webkit-keyframes y-keyframes--rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes y-keyframes--rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.y-animation--fade-enter-active{-webkit-animation:.3s y-keyframes--fade-enter both ease-out;animation:.3s y-keyframes--fade-enter both ease-out}.y-animation--fade-leave-active{-webkit-animation:.3s y-keyframes--fade-leave both ease-in;animation:.3s y-keyframes--fade-leave both ease-in}.y-animation--slide-bottom-enter-active{-webkit-animation:.3s y-keyframes--slide-bottom-enter both ease-out;animation:.3s y-keyframes--slide-bottom-enter both ease-out}.y-animation--slide-bottom-leave-active{-webkit-animation:.3s y-keyframes--slide-bottom-leave both ease-in;animation:.3s y-keyframes--slide-bottom-leave both ease-in}.y-animation--slide-top-enter-active{-webkit-animation:.3s y-keyframes--slide-top-enter both ease-out;animation:.3s y-keyframes--slide-top-enter both ease-out}.y-animation--slide-top-leave-active{-webkit-animation:.3s y-keyframes--slide-top-leave both ease-in;animation:.3s y-keyframes--slide-top-leave both ease-in}.y-animation--slide-left-enter-active{-webkit-animation:.3s y-keyframes--slide-left-enter both ease-out;animation:.3s y-keyframes--slide-left-enter both ease-out}.y-animation--slide-left-leave-active{-webkit-animation:.3s y-keyframes--slide-left-leave both ease-in;animation:.3s y-keyframes--slide-left-leave both ease-in}.y-animation--slide-right-enter-active{-webkit-animation:.3s y-keyframes--slide-right-enter both ease-out;animation:.3s y-keyframes--slide-right-enter both ease-out}.y-animation--slide-right-leave-active{-webkit-animation:.3s y-keyframes--slide-right-leave both ease-in;animation:.3s y-keyframes--slide-right-leave both ease-in}:root{--Primary: #68e38b;--Primary_1: #95f0ab;--Primary_2: #f0fff2;--Secondary: #5790df;--Secondary_1: #84b4f5;--Secondary_2: #edf1fc;--Surface: #191919;--Surface_1: #4c4c4c;--Surface_2: #808080;--Surface_3: #adadad;--Surface_4: #ccc;--Surface_5: #e0e0e0;--Surface_6: #ebebeb;--Surface_7: #f5f5f5;--Surface_8: #fff;--Background: #f5f5f5;--Background_1: #fff;--SheetBackground: #f5f5f5;--SheetBackground_1: #fff;--Outline: rgba(0, 0, 0, .08);--Segmentation: rgba(0, 0, 0, .04);--Overlay: rgba(0, 0, 0, .9);--Overlay_1: rgba(0, 0, 0, .6);--Overlay_2: rgba(0, 0, 0, .36);--Success: #40d76f;--Error: #e5353e;--Warn: #ff5e1a;--Warn_1: #ffe1d5;--Click_Active: rgba(0, 0, 0, .05);--Font_Family: PingFang SC, sans-serif;--Font_Family_Number: Yuewen Font}.y-list{overflow:auto;position:relative}.y-list__item{-webkit-box-sizing:border-box;box-sizing:border-box}.y-list--loading,.y-list--finished,.y-list--error{font-size:14px;text-align:center;padding:8px 0}.y-list--error{cursor:pointer}.y-list--virtual .y-list__content{position:absolute;left:0;top:0;right:0}
2
+ `,document.head.appendChild(p);const J=(A=>s=>Object.prototype.toString.call(s)===`[object ${A}]`)("Number"),F=(A,s)=>s?typeof s=="string"?` ${A}--${s}`:Array.isArray(s)?s.reduce((l,i)=>l+F(A,i),""):Object.keys(s).reduce((l,i)=>l+(s[i]?F(A,i):""),""):"",T=A=>(s,l)=>{let i=s,g=l;return i&&typeof i!="string"&&(g=i,i=""),i=i?`${A}__${i}`:A,`${i}${F(i,g)}`},z=()=>(A,s)=>s?`${F(`y-${A}`,s)}`:`y-${A}`,O={"pull-refresh":{pulling:"下拉刷新...",loosing:"释放刷新...",loading:"数据加载中...",success:"数据已更新",failed:"数据跟新失败,请稍后再试"},"form-item":{validateMessage:"请输入正确内容"}};e.ref("zh-CN"),e.reactive({"zh-CN":O});const V=A=>{const s=`y-${A}`;return[s,T(s),z()]},b=A=>isNaN(Number(A))&&typeof A=="string"?A:`${A}px`,P=A=>{switch(A){case"top":return"column-reverse";case"bottom":return"column";case"left":return"row-reverse";case"right":return"row";default:return"column"}},[_,u]=V("loading"),X={color:{type:String,default:""},bgColor:{type:String,default:""},bgBorderRadius:{type:[Number,String],default:"16px"},thick:{type:[Number,String],default:8},direction:{type:String,default:"forward"},size:{type:[Number,String],default:"24px"},padding:{type:[Number,String],default:""},text:{type:String,default:""},textLocation:{type:String,default:"bottom"},textSize:{type:[Number,String],default:""},textColor:{type:String,default:""},position:{type:String,default:"relative"}},q=e.defineComponent({name:_,props:X,setup(A,{slots:s}){return()=>{var S,N;const{position:l,textLocation:i,bgColor:g,bgBorderRadius:d,size:o,padding:I,color:y,thick:Y,direction:D,text:B,textColor:Q,textSize:r}=A,U=((S=s.default)==null?void 0:S.call(s))||B;return e.createVNode("div",{class:u({[l]:l!=="relative"})},[e.createVNode("div",{class:u("bg",{[l]:l!=="relative"}),style:{flexDirection:P(i),backgroundColor:g,borderRadius:b(d),padding:b(I)}},[e.createVNode("span",{class:u("icon-wrapper"),style:{width:b(o),height:b(o)}},[((N=s.icon)==null?void 0:N.call(s))||e.createVNode("svg",{class:u("icon",{[D]:D}),viewBox:"25 25 50 50"},[e.createVNode("circle",{class:u("icon-circle"),style:{stroke:y,strokeWidth:b(Y)},cx:"50",cy:"50",r:"20",fill:"none"},null)])]),U&&e.createVNode("span",{class:u("text",{[i]:i}),style:{color:Q,fontSize:b(r)}},[U])])])}}}),[$,c]=V("list"),k=e.defineComponent({name:$,props:{loadingText:{type:String,default:"加载中..."},finishedText:{type:String,default:"没有更多了~"},errorText:{type:String,default:"请求失败,点击重新加载"},height:{type:[Number,String],default:"auto"},keyName:{type:String,default:"_index"},dataSource:{type:Array,default:()=>[]},immediateCheck:{type:Boolean,default:!0},loadOffset:{type:Number,default:300},virtual:{type:Boolean,default:!1},bufferScale:{type:Number,default:1},itemHeight:{type:[String,Number],default:"80"},dynamicItemHeight:{type:Boolean,default:!1}},emits:["load"],setup(A,{slots:s,emit:l,expose:i}){const g=e.ref(0),d=e.ref(!1),o=e.ref("normal"),I=e.ref(),y=e.ref(),Y=e.ref(),D=e.ref([]),B=e.ref(0),Q=e.ref(0),r=e.ref([]),U=e.computed(()=>J(A.height)?`${A.height}px`:A.height),S=e.computed(()=>r.value.length?r.value[r.value.length-1].bottom:0),N=e.computed(()=>{if(A.virtual){const t=B.value-M.value,a=Q.value+j.value;return x.value.slice(t,a)}return x.value}),M=e.computed(()=>Math.min(B.value,A.bufferScale*h.value)),j=e.computed(()=>Math.min(A.dataSource.length-Q.value,A.bufferScale*h.value)),h=e.computed(()=>Math.ceil(g.value/parseInt(String(A.itemHeight)))),x=e.computed(()=>A.dataSource.map((t,a)=>(t[A.keyName]=a,t))),K=()=>d.value?document.documentElement.scrollTop||document.body.scrollTop:I.value.scrollTop,AA=()=>d.value?document.documentElement.scrollHeight:I.value.scrollHeight,W=()=>{o.value!=="loading"&&(o.value="loading",l("load",t=>{if(o.value==="loading")switch(t){case"error":o.value="error";break;case"finished":o.value="finished",A.virtual&&G(),A.virtual&&A.dynamicItemHeight&&Z();break;default:o.value="normal",A.virtual&&(Z(),A.dataSource.length<h.value+j.value&&W())}}))},v=()=>{o.value==="normal"&&AA()-K()-g.value<=A.loadOffset&&W()},G=()=>{r.value=x.value.map((t,a)=>{const n=parseInt(String(A.itemHeight));return{index:a,height:n,top:a*n,bottom:(a+1)*n}})},Z=()=>{G();for(let t=1;t<r.value.length;t++)r.value[t].top=r.value[t-1].bottom,r.value[t].bottom=r.value[t].top+r.value[t].height},eA=(t,a)=>{let n=0,C=t.length-1,f=-1;for(;n<=C;){const E=Math.floor((n+C)/2),m=t[E].bottom;if(m===a)return E+1;m<a?n=E+1:m>a&&((f===-1||f>E)&&(f=E),C=E-1)}return f},tA=t=>eA(r.value,t),R=()=>{if(v(),A.virtual){const t=K();H(t)}},H=t=>{if(!y.value)return;const a=t||0;if(A.dynamicItemHeight){B.value=tA(a),Q.value=B.value+h.value;const n=r.value[B.value-M.value].top?r.value[B.value-M.value].top:0;y.value.style.transform=`translate3d(0, ${n}px, 0)`}else{B.value=Math.floor(a/parseInt(String(A.itemHeight))),Q.value=B.value+h.value;const n=B.value*parseInt(String(A.itemHeight))-M.value*parseInt(String(A.itemHeight));y.value.style.transform=`translate3d(0, ${n}px, 0)`}},sA=()=>{if(!y.value||!Y.value)return;const t=y.value.children;t&&t.length>0&&[...t].forEach(a=>{if(a instanceof HTMLDivElement){const n=a.getBoundingClientRect(),{height:C}=n,f=Number(a.dataset.index),m=r.value[f].height-C;if(m){r.value[f].bottom-=m,r.value[f].height=C;for(let L=f+1;L<r.value.length;L++)r.value[L].top=r.value[L-1].bottom,r.value[L].bottom-=m}}})};return i({...A,checkIsScrollToBottom:v,loadData:W}),e.onMounted(()=>{A.height!=="auto"?(d.value=!1,g.value=I.value.clientHeight):A.height==="auto"&&(d.value=!0,g.value=document.documentElement.clientHeight,document.addEventListener("scroll",R)),A.virtual&&(G(),H()),A.immediateCheck&&v()}),e.onUpdated(async()=>{var t,a;if(A.virtual&&A.dynamicItemHeight){if(await e.nextTick(),!((a=(t=y.value)==null?void 0:t.children)!=null&&a.length))return;sA()}}),e.onUnmounted(()=>{d.value&&document.removeEventListener("scroll",R)}),()=>e.createVNode("div",{ref:I,class:`${c()} ${A.virtual?c({virtual:!0}):""}`,style:{height:U.value},onScroll:R},[A.virtual&&e.createVNode("div",{ref:Y,class:c("phantom"),style:{height:`${S.value}px`}},null),e.createVNode("div",{ref:y,class:c("content")},[N.value.map(t=>{var a;return e.createVNode("div",{ref:D,class:c("item"),"data-index":t._index},[(a=s.default)==null?void 0:a.call(s,{item:t})])})]),o.value==="loading"&&e.createVNode("div",{class:c({loading:!0})},[s.loading?s.loading():e.createVNode(q,{"text-location":"right"},{default:()=>[e.createTextVNode("加载中...")]})]),o.value==="finished"&&e.createVNode("div",{class:c({finished:!0})},[A.finishedText]),o.value==="error"&&e.createVNode("div",{class:c("error"),role:"presentation",onClick:W},[A.errorText])])}}),rA="",iA="",oA="",nA="",lA="",BA="";k.install=A=>{const{name:s}=k;A.component(s,k)},w.default=k,Object.defineProperties(w,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
@@ -0,0 +1,5 @@
1
+ {
2
+ "name": "y-design-ssr/list",
3
+ "main": "index.umd.js",
4
+ "module": "index.mjs"
5
+ }
@@ -0,0 +1 @@
1
+ @charset "UTF-8";body,p,h1,h2,h3,h4,h5,h6,ul,dl,ol,dd,form,figure,blockquote{margin:0}ul,ol{list-style:none;padding:0}a{color:inherit;text-decoration:none;outline:none}em,cite,i{font-style:normal}input,textarea,select{font-family:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;outline:none}img{display:inline-block}p{word-break:break-all}main{display:block}table{border-spacing:0;border-collapse:collapse}body{color:#191919;fill:currentColor;font-size:14px;line-height:1.5715;line-height:calc(1em + 8px);font-family:PingFang SC,sans-serif;-webkit-tap-highlight-color:rgba(0,0,0,.05);-webkit-font-smoothing:antialiased}button{line-height:inherit}button:focus{outline:none}.y-el--clickable{cursor:pointer}.y-el--clickable:active{opacity:.85}.y-el--hairline,.y-el--hairline-top,.y-el--hairline-right,.y-el--hairline-bottom,.y-el--hairline-left{position:relative}.y-el--hairline:after,.y-el--hairline-top:after,.y-el--hairline-right:after,.y-el--hairline-bottom:after,.y-el--hairline-left:after{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;content:" ";pointer-events:none;top:-50%;right:-50%;bottom:-50%;left:-50%;border:0 solid rgba(0,0,0,.08);-webkit-transform:scale(.5);transform:scale(.5)}.y-el--hairline-top:after{border-top-width:1px}.y-el--hairline-right:after{border-right-width:1px}.y-el--hairline-bottom:after{border-bottom-width:1px}.y-el--hairline-left:after{border-left-width:1px}.y-el--hairline:after{border-width:1px}.y-el--ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.y-el--ellipsis-l2{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.y-el--ellipsis-l3{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.y-el--unclickable{overflow:hidden}.y-el--unclickable *{pointer-events:none}@font-face{font-family:Yuewen Font;font-style:normal;font-weight:400;src:url(data:application/octet-stream;base64,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YhshWWO4BABiILAAUFiwQGBZZrABY2AjLiMgIDyKOCMhWS2wPSywABawESNCILAIQyAuRyNHI2EgYLAgYGawAmIgsABQWLBAYFlmsAFjIyAgPIo4LbA+LCMgLkawAiVGsBFDWFAbUllYIDxZLrEuARQrLbA/LCMgLkawAiVGsBFDWFIbUFlYIDxZLrEuARQrLbBALCMgLkawAiVGsBFDWFAbUllYIDxZIyAuRrACJUawEUNYUhtQWVggPFkusS4BFCstsEEssDgrIyAuRrACJUawEUNYUBtSWVggPFkusS4BFCstsEIssDkriiAgPLAEI0KKOCMgLkawAiVGsBFDWFAbUllYIDxZLrEuARQrsARDLrAuKy2wQyywABawBCWwBCYgICBGI0dhsAojQi5HI0cjYbAJQysjIDwgLiM4sS4BFCstsEQssQgEJUKwABawBCWwBCUgLkcjRyNhILAEI0KxCgBCsAlDKyCwYFBYILBAUVizAiADIBuzAiYDGllCQiMgR7AEQ7ACYiCwAFBYsEBgWWawAWNgILABKyCKimEgsAJDYGQjsANDYWRQWLACQ2EbsANDYFmwAyWwAmIgsABQWLBAYFlmsAFjYbACJUZhOCMgPCM4GyEgIEYjR7ABKyNhOCFZsS4BFCstsEUssQA4Ky6xLgEUKy2wRiyxADkrISMgIDywBCNCIzixLgEUK7AEQy6wListsEcssAAVIEewACNCsgABARUUEy6wNCotsEgssAAVIEewACNCsgABARUUEy6wNCotsEkssQABFBOwNSotsEossDcqLbBLLLAAFkUjIC4gRoojYTixLgEUKy2wTCywCCNCsEsrLbBNLLIAAEQrLbBOLLIAAUQrLbBPLLIBAEQrLbBQLLIBAUQrLbBRLLIAAEUrLbBSLLIAAUUrLbBTLLIBAEUrLbBULLIBAUUrLbBVLLMAAABBKy2wViyzAAEAQSstsFcsswEAAEErLbBYLLMBAQBBKy2wWSyzAAABQSstsFosswABAUErLbBbLLMBAAFBKy2wXCyzAQEBQSstsF0ssgAAQystsF4ssgABQystsF8ssgEAQystsGAssgEBQystsGEssgAARistsGIssgABRistsGMssgEARistsGQssgEBRistsGUsswAAAEIrLbBmLLMAAQBCKy2wZyyzAQAAQistsGgsswEBAEIr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) format("truetype")}.y-font--number{font-family:Yuewen Font;speak:none;font-style:normal;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@-webkit-keyframes y-keyframes--slide-bottom-enter{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes y-keyframes--slide-bottom-enter{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes y-keyframes--slide-bottom-leave{to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes y-keyframes--slide-bottom-leave{to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes y-keyframes--slide-top-enter{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes y-keyframes--slide-top-enter{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-webkit-keyframes y-keyframes--slide-top-leave{to{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes y-keyframes--slide-top-leave{to{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@-webkit-keyframes y-keyframes--slide-left-enter{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes y-keyframes--slide-left-enter{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes y-keyframes--slide-left-leave{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes y-keyframes--slide-left-leave{to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes y-keyframes--slide-right-enter{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes y-keyframes--slide-right-enter{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@-webkit-keyframes y-keyframes--slide-right-leave{to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes y-keyframes--slide-right-leave{to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@-webkit-keyframes y-keyframes--fade-enter{0%{opacity:0}to{opacity:1}}@keyframes y-keyframes--fade-enter{0%{opacity:0}to{opacity:1}}@-webkit-keyframes y-keyframes--fade-leave{0%{opacity:1}to{opacity:0}}@keyframes y-keyframes--fade-leave{0%{opacity:1}to{opacity:0}}@-webkit-keyframes y-keyframes--rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes y-keyframes--rotate{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.y-animation--fade-enter-active{-webkit-animation:.3s y-keyframes--fade-enter both ease-out;animation:.3s y-keyframes--fade-enter both ease-out}.y-animation--fade-leave-active{-webkit-animation:.3s y-keyframes--fade-leave both ease-in;animation:.3s y-keyframes--fade-leave both ease-in}.y-animation--slide-bottom-enter-active{-webkit-animation:.3s y-keyframes--slide-bottom-enter both ease-out;animation:.3s y-keyframes--slide-bottom-enter both ease-out}.y-animation--slide-bottom-leave-active{-webkit-animation:.3s y-keyframes--slide-bottom-leave both ease-in;animation:.3s y-keyframes--slide-bottom-leave both ease-in}.y-animation--slide-top-enter-active{-webkit-animation:.3s y-keyframes--slide-top-enter both ease-out;animation:.3s y-keyframes--slide-top-enter both ease-out}.y-animation--slide-top-leave-active{-webkit-animation:.3s y-keyframes--slide-top-leave both ease-in;animation:.3s y-keyframes--slide-top-leave both ease-in}.y-animation--slide-left-enter-active{-webkit-animation:.3s y-keyframes--slide-left-enter both ease-out;animation:.3s y-keyframes--slide-left-enter both ease-out}.y-animation--slide-left-leave-active{-webkit-animation:.3s y-keyframes--slide-left-leave both ease-in;animation:.3s y-keyframes--slide-left-leave both ease-in}.y-animation--slide-right-enter-active{-webkit-animation:.3s y-keyframes--slide-right-enter both ease-out;animation:.3s y-keyframes--slide-right-enter both ease-out}.y-animation--slide-right-leave-active{-webkit-animation:.3s y-keyframes--slide-right-leave both ease-in;animation:.3s y-keyframes--slide-right-leave both ease-in}:root{--Primary: #68e38b;--Primary_1: #95f0ab;--Primary_2: #f0fff2;--Secondary: #5790df;--Secondary_1: #84b4f5;--Secondary_2: #edf1fc;--Surface: #191919;--Surface_1: #4c4c4c;--Surface_2: #808080;--Surface_3: #adadad;--Surface_4: #ccc;--Surface_5: #e0e0e0;--Surface_6: #ebebeb;--Surface_7: #f5f5f5;--Surface_8: #fff;--Background: #f5f5f5;--Background_1: #fff;--SheetBackground: #f5f5f5;--SheetBackground_1: #fff;--Outline: rgba(0, 0, 0, .08);--Segmentation: rgba(0, 0, 0, .04);--Overlay: rgba(0, 0, 0, .9);--Overlay_1: rgba(0, 0, 0, .6);--Overlay_2: rgba(0, 0, 0, .36);--Success: #40d76f;--Error: #e5353e;--Warn: #ff5e1a;--Warn_1: #ffe1d5;--Click_Active: rgba(0, 0, 0, .05);--Font_Family: PingFang SC, sans-serif;--Font_Family_Number: Yuewen Font}.y-loading{font-weight:500}.y-loading--fixed{position:fixed}.y-loading--absolute{position:absolute}.y-loading--fixed,.y-loading--absolute{z-index:188;width:100%;height:100%;top:0;left:0}.y-loading__bg{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.y-loading__bg--fixed,.y-loading__bg--absolute{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.y-loading__icon-wrapper{display:inline-block;text-align:center}.y-loading__icon--forward{-webkit-animation:qd-loading__icon-circular 1.3s ease-in-out infinite;animation:qd-loading__icon-circular 1.3s ease-in-out infinite}.y-loading__icon--reverse{-webkit-animation:qd-loading__icon-circular--reverse 1.3s ease-in-out infinite;animation:qd-loading__icon-circular--reverse 1.3s ease-in-out infinite}.y-loading__icon{display:block;width:100%;height:100%}.y-loading__icon-circle{stroke:currentColor;stroke-linecap:round}.y-loading__icon-circle--absolute{stroke:#fff}.y-loading__text{white-space:nowrap}.y-loading__text--left{margin-right:8px}.y-loading__text--right{margin-left:8px}.y-loading__text--top{margin-bottom:8px}.y-loading__text--bottom{margin-top:8px}@-webkit-keyframes qd-loading__icon-circular{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:100,150;stroke-dashoffset:-40}to{stroke-dasharray:100,150;stroke-dashoffset:-120}}@keyframes qd-loading__icon-circular{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:100,150;stroke-dashoffset:-40}to{stroke-dasharray:100,150;stroke-dashoffset:-120}}@-webkit-keyframes qd-loading__icon-circular--reverse{0%{stroke-dasharray:100,150;stroke-dashoffset:-120}50%{stroke-dasharray:100,150;stroke-dashoffset:-40}to{stroke-dasharray:1,200;stroke-dashoffset:0}}@keyframes qd-loading__icon-circular--reverse{0%{stroke-dasharray:100,150;stroke-dashoffset:-120}50%{stroke-dasharray:100,150;stroke-dashoffset:-40}to{stroke-dasharray:1,200;stroke-dashoffset:0}}