pixel-flow-vue 1.0.15 → 1.0.17

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.
@@ -1,2 +1,2 @@
1
- .tButton[data-v-0957b8d5]{color:#fff;background-color:#18f;border:none;padding:6px 12px}
1
+ .banner-swipe-container[data-v-53ac4ba7]{border-radius:8px;margin:10px 16px;overflow:hidden;transform:translateY(0)}.banner-skeleton[data-v-53ac4ba7]{height:150px;padding:20px 0}.my-swipe[data-v-53ac4ba7]{color:#fff;text-align:center;background-color:#e5e5e5;height:150px;font-size:20px}.banner-image[data-v-53ac4ba7]{object-fit:cover;width:100%;height:100%;display:block}.tButton[data-v-0957b8d5]{color:#fff;background-color:#18f;border:none;padding:6px 12px}.ad-grid-container[data-v-1efa7c90]{background-color:#fff;border-radius:8px;margin:10px 16px;overflow:hidden}.ad-grid[data-v-1efa7c90]{aspect-ratio:2;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:2px;width:100%;display:grid}.ad-item[data-v-1efa7c90]{background-color:#f7f8fa;position:relative;overflow:hidden}.ad-item.is-large[data-v-1efa7c90]{grid-row:span 2}[data-v-1efa7c90] .van-image{display:block}.hot-sale-container[data-v-27732ea0]{background-color:#fff;border-radius:8px;margin:10px 16px;padding:12px 0}.header[data-v-27732ea0]{padding:0 12px 12px}.title[data-v-27732ea0]{color:#323233;font-size:16px;font-weight:700}.skeleton-padding[data-v-27732ea0]{padding:0 12px}.product-list-wrapper[data-v-27732ea0]{scrollbar-width:none;-ms-overflow-style:none;width:100%;overflow-x:auto}.product-list-wrapper[data-v-27732ea0]::-webkit-scrollbar{display:none}.product-list[data-v-27732ea0]{gap:12px;padding:0 12px;display:flex}.product-item[data-v-27732ea0]{flex:0 0 110px;width:110px}.image-box[data-v-27732ea0]{background-color:#f7f8fa;border-radius:8px;width:110px;height:110px;margin-bottom:8px}.product-info[data-v-27732ea0]{flex-direction:column;justify-content:space-between;height:64px;display:flex}.product-name[data-v-27732ea0]{color:#323233;height:36px;margin-bottom:4px;font-size:13px;line-height:1.4}.product-bottom[data-v-27732ea0]{color:#ee0a24;align-items:baseline;display:flex}.price-symbol[data-v-27732ea0]{margin-right:2px;font-size:12px}.price-value[data-v-27732ea0]{font-size:16px;font-weight:700}
2
2
  /*$vite$:1*/
@@ -1,23 +1,1059 @@
1
- import { createElementBlock as e, openBlock as t } from "vue";
2
- //#region \0plugin-vue:export-helper
3
- var n = (e, t) => {
1
+ import { Fragment as e, Teleport as t, Transition as n, computed as r, createApp as i, createBlock as a, createElementBlock as o, createElementVNode as s, createVNode as c, defineComponent as l, getCurrentInstance as u, inject as d, isRef as f, mergeProps as p, nextTick as ee, normalizeClass as te, onActivated as ne, onBeforeUnmount as re, onDeactivated as m, onMounted as h, onUnmounted as g, openBlock as _, provide as ie, reactive as v, ref as y, renderList as b, resolveComponent as x, toDisplayString as S, unref as C, vShow as ae, watch as w, watchEffect as oe, withCtx as T, withDirectives as se } from "vue";
2
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/utils/basic.mjs
3
+ function ce() {}
4
+ var E = Object.assign, D = typeof window < "u", O = (e) => typeof e == "object" && !!e, k = (e) => e != null, A = (e) => typeof e == "function", le = (e) => O(e) && A(e.then) && A(e.catch), ue = (e) => typeof e == "number" || /^\d+(\.\d+)?$/.test(e), de = () => D ? /ios|iphone|ipad|ipod/.test(navigator.userAgent.toLowerCase()) : !1;
5
+ function fe(e, t) {
6
+ let n = t.split("."), r = e;
7
+ return n.forEach((e) => {
8
+ r = O(r) ? r[e] ?? "" : "";
9
+ }), r;
10
+ }
11
+ function pe(e, t, n) {
12
+ return t.reduce((t, r) => ((!n || e[r] !== void 0) && (t[r] = e[r]), t), {});
13
+ }
14
+ //#endregion
15
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/utils/props.mjs
16
+ var j = [Number, String], M = {
17
+ type: Boolean,
18
+ default: !0
19
+ }, me = (e) => ({
20
+ type: Number,
21
+ default: e
22
+ }), N = (e) => ({
23
+ type: String,
24
+ default: e
25
+ }), P = typeof window < "u";
26
+ function he(e) {
27
+ let t;
28
+ h(() => {
29
+ e(), ee(() => {
30
+ t = !0;
31
+ });
32
+ }), ne(() => {
33
+ t && e();
34
+ });
35
+ }
36
+ function ge(e, t, n = {}) {
37
+ if (!P) return;
38
+ let { target: r = window, passive: i = !1, capture: a = !1 } = n, o = !1, s, c = (n) => {
39
+ if (o) return;
40
+ let r = C(n);
41
+ r && !s && (r.addEventListener(e, t, {
42
+ capture: a,
43
+ passive: i
44
+ }), s = !0);
45
+ }, l = (n) => {
46
+ if (o) return;
47
+ let r = C(n);
48
+ r && s && (r.removeEventListener(e, t, a), s = !1);
49
+ };
50
+ g(() => l(r)), m(() => l(r)), he(() => c(r));
51
+ let u;
52
+ return f(r) && (u = w(r, (e, t) => {
53
+ l(t), c(e);
54
+ })), () => {
55
+ u?.(), l(r), o = !0;
56
+ };
57
+ }
58
+ var F, I;
59
+ function _e() {
60
+ if (!F && (F = y(0), I = y(0), P)) {
61
+ let e = () => {
62
+ F.value = window.innerWidth, I.value = window.innerHeight;
63
+ };
64
+ e(), window.addEventListener("resize", e, { passive: !0 }), window.addEventListener("orientationchange", e, { passive: !0 });
65
+ }
66
+ return {
67
+ width: F,
68
+ height: I
69
+ };
70
+ }
71
+ var ve = /scroll|auto|overlay/i, ye = P ? window : void 0;
72
+ function be(e) {
73
+ return e.tagName !== "HTML" && e.tagName !== "BODY" && e.nodeType === 1;
74
+ }
75
+ function xe(e, t = ye) {
76
+ let n = e;
77
+ for (; n && n !== t && be(n);) {
78
+ let { overflowY: e } = window.getComputedStyle(n);
79
+ if (ve.test(e)) return n;
80
+ n = n.parentNode;
81
+ }
82
+ return t;
83
+ }
84
+ de();
85
+ var Se = (e) => e.stopPropagation();
86
+ function Ce(e, t) {
87
+ (typeof e.cancelable != "boolean" || e.cancelable) && e.preventDefault(), t && Se(e);
88
+ }
89
+ var { width: we, height: Te } = _e();
90
+ //#endregion
91
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/utils/format.mjs
92
+ function L(e) {
93
+ if (k(e)) return ue(e) ? `${e}px` : String(e);
94
+ }
95
+ function Ee(e) {
96
+ if (k(e)) {
97
+ if (Array.isArray(e)) return {
98
+ width: L(e[0]),
99
+ height: L(e[1])
100
+ };
101
+ let t = L(e);
102
+ return {
103
+ width: t,
104
+ height: t
105
+ };
106
+ }
107
+ }
108
+ function De(e) {
109
+ let t = {};
110
+ return e !== void 0 && (t.zIndex = +e), t;
111
+ }
112
+ var Oe = /-(\w)/g, ke = (e) => e.replace(Oe, (e, t) => t.toUpperCase()), Ae = (e) => e.replace(/([A-Z])/g, "-$1").toLowerCase().replace(/^-/, ""), { hasOwnProperty: je } = Object.prototype;
113
+ function Me(e, t, n) {
114
+ let r = t[n];
115
+ k(r) && (!je.call(e, n) || !O(r) ? e[n] = r : e[n] = Ne(Object(e[n]), r));
116
+ }
117
+ function Ne(e, t) {
118
+ return Object.keys(t).forEach((n) => {
119
+ Me(e, t, n);
120
+ }), e;
121
+ }
122
+ //#endregion
123
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/locale/lang/zh-CN.mjs
124
+ var Pe = {
125
+ name: "姓名",
126
+ tel: "电话",
127
+ save: "保存",
128
+ clear: "清空",
129
+ undo: "撤销",
130
+ cancel: "取消",
131
+ confirm: "确认",
132
+ delete: "删除",
133
+ loading: "加载中...",
134
+ noCoupon: "暂无优惠券",
135
+ nameEmpty: "请填写姓名",
136
+ addContact: "添加联系人",
137
+ telInvalid: "请填写正确的电话",
138
+ vanCalendar: {
139
+ end: "结束",
140
+ start: "开始",
141
+ title: "日期选择",
142
+ weekdays: [
143
+ "日",
144
+ "一",
145
+ "二",
146
+ "三",
147
+ "四",
148
+ "五",
149
+ "六"
150
+ ],
151
+ monthTitle: (e, t) => `${e}\u5E74${t}\u6708`,
152
+ rangePrompt: (e) => `\u6700\u591A\u9009\u62E9 ${e} \u5929`
153
+ },
154
+ vanCascader: { select: "请选择" },
155
+ vanPagination: {
156
+ prev: "上一页",
157
+ next: "下一页"
158
+ },
159
+ vanPullRefresh: {
160
+ pulling: "下拉即可刷新...",
161
+ loosing: "释放即可刷新..."
162
+ },
163
+ vanSubmitBar: { label: "合计:" },
164
+ vanCoupon: {
165
+ unlimited: "无门槛",
166
+ discount: (e) => `${e}\u6298`,
167
+ condition: (e) => `\u6EE1${e}\u5143\u53EF\u7528`
168
+ },
169
+ vanCouponCell: {
170
+ title: "优惠券",
171
+ count: (e) => `${e}\u5F20\u53EF\u7528`
172
+ },
173
+ vanCouponList: {
174
+ exchange: "兑换",
175
+ close: "不使用",
176
+ enable: "可用",
177
+ disabled: "不可用",
178
+ placeholder: "输入优惠码"
179
+ },
180
+ vanAddressEdit: {
181
+ area: "地区",
182
+ areaEmpty: "请选择地区",
183
+ addressEmpty: "请填写详细地址",
184
+ addressDetail: "详细地址",
185
+ defaultAddress: "设为默认收货地址"
186
+ },
187
+ vanAddressList: { add: "新增地址" }
188
+ }, Fe = y("zh-CN"), Ie = v({ "zh-CN": Pe }), Le = {
189
+ messages() {
190
+ return Ie[Fe.value];
191
+ },
192
+ use(e, t) {
193
+ Fe.value = e, this.add({ [e]: t });
194
+ },
195
+ add(e = {}) {
196
+ Ne(Ie, e);
197
+ }
198
+ };
199
+ //#endregion
200
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/utils/create.mjs
201
+ function Re(e) {
202
+ let t = ke(e) + ".";
203
+ return (e, ...n) => {
204
+ let r = Le.messages(), i = fe(r, t + e) || fe(r, e);
205
+ return A(i) ? i(...n) : i;
206
+ };
207
+ }
208
+ function R(e, t) {
209
+ return t ? typeof t == "string" ? ` ${e}--${t}` : Array.isArray(t) ? t.reduce((t, n) => t + R(e, n), "") : Object.keys(t).reduce((n, r) => n + (t[r] ? R(e, r) : ""), "") : "";
210
+ }
211
+ function ze(e) {
212
+ return (t, n) => (t && typeof t != "string" && (n = t, t = ""), t = t ? `${e}__${t}` : e, `${t}${R(t, n)}`);
213
+ }
214
+ function z(e) {
215
+ let t = `van-${e}`;
216
+ return [
217
+ t,
218
+ ze(t),
219
+ Re(t)
220
+ ];
221
+ }
222
+ //#endregion
223
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/utils/constant.mjs
224
+ var B = "van-hairline";
225
+ `${B}`, `${B}`, `${B}`, `${B}`, `${B}`, `${B}`, `${B}`;
226
+ var Be = "van-haptics-feedback";
227
+ //#endregion
228
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/utils/interceptor.mjs
229
+ function Ve(e, { args: t = [], done: n, canceled: r, error: i }) {
230
+ if (e) {
231
+ let a = e.apply(null, t);
232
+ le(a) ? a.then((e) => {
233
+ e ? n() : r && r();
234
+ }).catch(i || ce) : a ? n() : r && r();
235
+ } else n();
236
+ }
237
+ //#endregion
238
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/utils/with-install.mjs
239
+ function V(e) {
240
+ return e.install = (t) => {
241
+ let { name: n } = e;
242
+ n && (t.component(n, e), t.component(ke(`-${n}`), e));
243
+ }, e;
244
+ }
245
+ //#endregion
246
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/composables/on-popup-reopen.mjs
247
+ var He = /* @__PURE__ */ Symbol();
248
+ //#endregion
249
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/composables/use-expose.mjs
250
+ function Ue(e) {
251
+ let t = u();
252
+ t && E(t.proxy, e);
253
+ }
254
+ //#endregion
255
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/badge/Badge.mjs
256
+ var [We, Ge] = z("badge"), Ke = V(l({
257
+ name: We,
258
+ props: {
259
+ dot: Boolean,
260
+ max: j,
261
+ tag: N("div"),
262
+ color: String,
263
+ offset: Array,
264
+ content: j,
265
+ showZero: M,
266
+ position: N("top-right")
267
+ },
268
+ setup(e, { slots: t }) {
269
+ let n = () => {
270
+ if (t.content) return !0;
271
+ let { content: n, showZero: r } = e;
272
+ return k(n) && n !== "" && (r || n !== 0 && n !== "0");
273
+ }, i = () => {
274
+ let { dot: r, max: i, content: a } = e;
275
+ if (!r && n()) return t.content ? t.content() : k(i) && ue(a) && +a > +i ? `${i}+` : a;
276
+ }, a = (e) => e.startsWith("-") ? e.replace("-", "") : `-${e}`, o = r(() => {
277
+ let n = { background: e.color };
278
+ if (e.offset) {
279
+ let [r, i] = e.offset, { position: o } = e, [s, c] = o.split("-");
280
+ t.default ? (typeof i == "number" ? n[s] = L(s === "top" ? i : -i) : n[s] = s === "top" ? L(i) : a(i), typeof r == "number" ? n[c] = L(c === "left" ? r : -r) : n[c] = c === "left" ? L(r) : a(r)) : (n.marginTop = L(i), n.marginLeft = L(r));
281
+ }
282
+ return n;
283
+ }), s = () => {
284
+ if (n() || e.dot) return c("div", {
285
+ class: Ge([e.position, {
286
+ dot: e.dot,
287
+ fixed: !!t.default
288
+ }]),
289
+ style: o.value
290
+ }, [i()]);
291
+ };
292
+ return () => {
293
+ if (t.default) {
294
+ let { tag: n } = e;
295
+ return c(n, { class: Ge("wrapper") }, { default: () => [t.default(), s()] });
296
+ }
297
+ return s();
298
+ };
299
+ }
300
+ })), qe = 2e3, Je = () => ++qe, Ye = (e) => {
301
+ qe = e;
302
+ }, [Xe, Ze] = z("config-provider"), Qe = Symbol(Xe), $e = {
303
+ tag: N("div"),
304
+ theme: N("light"),
305
+ zIndex: Number,
306
+ themeVars: Object,
307
+ themeVarsDark: Object,
308
+ themeVarsLight: Object,
309
+ themeVarsScope: N("local"),
310
+ iconPrefix: String
311
+ };
312
+ function et(e) {
313
+ return e.replace(/([a-zA-Z])(\d)/g, "$1-$2");
314
+ }
315
+ function tt(e) {
316
+ let t = {};
317
+ return Object.keys(e).forEach((n) => {
318
+ let r = et(Ae(n));
319
+ t[`--van-${r}`] = e[n];
320
+ }), t;
321
+ }
322
+ function H(e = {}, t = {}) {
323
+ Object.keys(e).forEach((n) => {
324
+ e[n] !== t[n] && document.documentElement.style.setProperty(n, e[n]);
325
+ }), Object.keys(t).forEach((t) => {
326
+ e[t] || document.documentElement.style.removeProperty(t);
327
+ });
328
+ }
329
+ l({
330
+ name: Xe,
331
+ props: $e,
332
+ setup(e, { slots: t }) {
333
+ let n = r(() => tt(E({}, e.themeVars, e.theme === "dark" ? e.themeVarsDark : e.themeVarsLight)));
334
+ if (D) {
335
+ let t = () => {
336
+ document.documentElement.classList.add(`van-theme-${e.theme}`);
337
+ }, r = (t = e.theme) => {
338
+ document.documentElement.classList.remove(`van-theme-${t}`);
339
+ };
340
+ w(() => e.theme, (e, n) => {
341
+ n && r(n), t();
342
+ }, { immediate: !0 }), ne(t), m(r), re(r), w(n, (t, n) => {
343
+ e.themeVarsScope === "global" && H(t, n);
344
+ }), w(() => e.themeVarsScope, (e, t) => {
345
+ t === "global" && H({}, n.value), e === "global" && H(n.value, {});
346
+ }), e.themeVarsScope === "global" && H(n.value, {});
347
+ }
348
+ return ie(Qe, e), oe(() => {
349
+ e.zIndex !== void 0 && Ye(e.zIndex);
350
+ }), () => c(e.tag, {
351
+ class: Ze(),
352
+ style: e.themeVarsScope === "local" ? n.value : void 0
353
+ }, { default: () => [t.default?.call(t)] });
354
+ }
355
+ });
356
+ //#endregion
357
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/icon/Icon.mjs
358
+ var [nt, rt] = z("icon"), it = (e) => e?.includes("/"), at = V(l({
359
+ name: nt,
360
+ props: {
361
+ dot: Boolean,
362
+ tag: N("i"),
363
+ name: String,
364
+ size: j,
365
+ badge: j,
366
+ color: String,
367
+ badgeProps: Object,
368
+ classPrefix: String
369
+ },
370
+ setup(e, { slots: t }) {
371
+ let n = d(Qe, null), i = r(() => e.classPrefix || n?.iconPrefix || rt());
372
+ return () => {
373
+ let { tag: n, dot: r, name: a, size: o, badge: s, color: l } = e, u = it(a);
374
+ return c(Ke, p({
375
+ dot: r,
376
+ tag: n,
377
+ class: [i.value, u ? "" : `${i.value}-${a}`],
378
+ style: {
379
+ color: l,
380
+ fontSize: L(o)
381
+ },
382
+ content: s
383
+ }, e.badgeProps), { default: () => [t.default?.call(t), u && c("img", {
384
+ class: rt("image"),
385
+ src: a
386
+ }, null)] });
387
+ };
388
+ }
389
+ })), [ot, U] = z("loading"), st = Array(12).fill(null).map((e, t) => c("i", { class: U("line", String(t + 1)) }, null)), ct = c("svg", {
390
+ class: U("circular"),
391
+ viewBox: "25 25 50 50"
392
+ }, [c("circle", {
393
+ cx: "50",
394
+ cy: "50",
395
+ r: "20",
396
+ fill: "none"
397
+ }, null)]), lt = V(l({
398
+ name: ot,
399
+ props: {
400
+ size: j,
401
+ type: N("circular"),
402
+ color: String,
403
+ vertical: Boolean,
404
+ textSize: j,
405
+ textColor: String
406
+ },
407
+ setup(e, { slots: t }) {
408
+ let n = r(() => E({ color: e.color }, Ee(e.size))), i = () => {
409
+ let r = e.type === "spinner" ? st : ct;
410
+ return c("span", {
411
+ class: U("spinner", e.type),
412
+ style: n.value
413
+ }, [t.icon ? t.icon() : r]);
414
+ }, a = () => {
415
+ if (t.default) return c("span", {
416
+ class: U("text"),
417
+ style: {
418
+ fontSize: L(e.textSize),
419
+ color: e.textColor ?? e.color
420
+ }
421
+ }, [t.default()]);
422
+ };
423
+ return () => {
424
+ let { type: t, vertical: n } = e;
425
+ return c("div", {
426
+ class: U([t, { vertical: n }]),
427
+ "aria-live": "polite",
428
+ "aria-busy": !0
429
+ }, [i(), a()]);
430
+ };
431
+ }
432
+ })), ut = {
433
+ show: Boolean,
434
+ zIndex: j,
435
+ overlay: M,
436
+ duration: j,
437
+ teleport: [String, Object],
438
+ lockScroll: M,
439
+ lazyRender: M,
440
+ beforeClose: Function,
441
+ overlayProps: Object,
442
+ overlayStyle: Object,
443
+ overlayClass: null,
444
+ transitionAppear: Boolean,
445
+ closeOnClickOverlay: M
446
+ };
447
+ //#endregion
448
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/composables/use-touch.mjs
449
+ function dt(e, t) {
450
+ return e > t ? "horizontal" : t > e ? "vertical" : "";
451
+ }
452
+ function ft() {
453
+ let e = y(0), t = y(0), n = y(0), r = y(0), i = y(0), a = y(0), o = y(""), s = y(!0), c = () => o.value === "vertical", l = () => o.value === "horizontal", u = () => {
454
+ n.value = 0, r.value = 0, i.value = 0, a.value = 0, o.value = "", s.value = !0;
455
+ };
456
+ return {
457
+ move: ((c) => {
458
+ let l = c.touches[0];
459
+ n.value = (l.clientX < 0 ? 0 : l.clientX) - e.value, r.value = l.clientY - t.value, i.value = Math.abs(n.value), a.value = Math.abs(r.value), (!o.value || i.value < 10 && a.value < 10) && (o.value = dt(i.value, a.value)), s.value && (i.value > 5 || a.value > 5) && (s.value = !1);
460
+ }),
461
+ start: ((n) => {
462
+ u(), e.value = n.touches[0].clientX, t.value = n.touches[0].clientY;
463
+ }),
464
+ reset: u,
465
+ startX: e,
466
+ startY: t,
467
+ deltaX: n,
468
+ deltaY: r,
469
+ offsetX: i,
470
+ offsetY: a,
471
+ direction: o,
472
+ isVertical: c,
473
+ isHorizontal: l,
474
+ isTap: s
475
+ };
476
+ }
477
+ //#endregion
478
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/composables/use-lock-scroll.mjs
479
+ var W = 0, pt = "van-overflow-hidden";
480
+ function mt(e, t) {
481
+ let n = ft(), r = (t) => {
482
+ n.move(t);
483
+ let r = n.deltaY.value > 0 ? "10" : "01", { scrollHeight: i, offsetHeight: a, scrollTop: o } = xe(t.target, e.value), s = "11";
484
+ o === 0 ? s = a >= i ? "00" : "01" : o + a >= i && (s = "10"), s !== "11" && n.isVertical() && !(parseInt(s, 2) & parseInt(r, 2)) && Ce(t, !0);
485
+ }, i = () => {
486
+ document.addEventListener("touchstart", n.start), document.addEventListener("touchmove", r, { passive: !1 }), W || document.body.classList.add(pt), W++;
487
+ }, a = () => {
488
+ W && (document.removeEventListener("touchstart", n.start), document.removeEventListener("touchmove", r), W--, W || document.body.classList.remove(pt));
489
+ }, o = () => t() && i(), s = () => t() && a();
490
+ he(o), m(s), re(s), w(t, (e) => {
491
+ e ? i() : a();
492
+ });
493
+ }
494
+ //#endregion
495
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/composables/use-lazy-render.mjs
496
+ function ht(e) {
497
+ let t = y(!1);
498
+ return w(e, (e) => {
499
+ e && (t.value = e);
500
+ }, { immediate: !0 }), (e) => () => t.value ? e() : null;
501
+ }
502
+ //#endregion
503
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/composables/use-scope-id.mjs
504
+ var gt = () => {
505
+ let { scopeId: e } = u()?.vnode || {};
506
+ return e ? { [e]: "" } : null;
507
+ }, [_t, vt] = z("overlay"), yt = V(l({
508
+ name: _t,
509
+ inheritAttrs: !1,
510
+ props: {
511
+ show: Boolean,
512
+ zIndex: j,
513
+ duration: j,
514
+ className: null,
515
+ lockScroll: M,
516
+ lazyRender: M,
517
+ customStyle: Object,
518
+ teleport: [String, Object]
519
+ },
520
+ setup(e, { attrs: r, slots: i }) {
521
+ let a = y(), o = ht(() => e.show || !e.lazyRender), s = (t) => {
522
+ e.lockScroll && Ce(t, !0);
523
+ }, l = o(() => {
524
+ let t = E(De(e.zIndex), e.customStyle);
525
+ return k(e.duration) && (t.animationDuration = `${e.duration}s`), se(c("div", p({
526
+ ref: a,
527
+ style: t,
528
+ class: [vt(), e.className]
529
+ }, r), [i.default?.call(i)]), [[ae, e.show]]);
530
+ });
531
+ return ge("touchmove", s, { target: a }), () => {
532
+ let r = c(n, {
533
+ name: "van-fade",
534
+ appear: !0
535
+ }, { default: l });
536
+ return e.teleport ? c(t, { to: e.teleport }, { default: () => [r] }) : r;
537
+ };
538
+ }
539
+ })), bt = E({}, ut, {
540
+ round: Boolean,
541
+ position: N("center"),
542
+ closeIcon: N("cross"),
543
+ closeable: Boolean,
544
+ transition: String,
545
+ iconPrefix: String,
546
+ closeOnPopstate: Boolean,
547
+ closeIconPosition: N("top-right"),
548
+ destroyOnClose: Boolean,
549
+ safeAreaInsetTop: Boolean,
550
+ safeAreaInsetBottom: Boolean
551
+ }), [xt, St] = z("popup"), Ct = V(l({
552
+ name: xt,
553
+ inheritAttrs: !1,
554
+ props: bt,
555
+ emits: [
556
+ "open",
557
+ "close",
558
+ "opened",
559
+ "closed",
560
+ "keydown",
561
+ "update:show",
562
+ "clickOverlay",
563
+ "clickCloseIcon"
564
+ ],
565
+ setup(i, { emit: a, attrs: o, slots: s }) {
566
+ let l, u, d = y(), f = y(), te = ht(() => i.show || !i.lazyRender), re = r(() => {
567
+ let e = { zIndex: d.value };
568
+ if (k(i.duration)) {
569
+ let t = i.position === "center" ? "animationDuration" : "transitionDuration";
570
+ e[t] = `${i.duration}s`;
571
+ }
572
+ return e;
573
+ }), g = () => {
574
+ l || (l = !0, d.value = i.zIndex === void 0 ? Je() : +i.zIndex, a("open"));
575
+ }, _ = () => {
576
+ l && Ve(i.beforeClose, { done() {
577
+ l = !1, a("close"), a("update:show", !1);
578
+ } });
579
+ }, v = (e) => {
580
+ a("clickOverlay", e), i.closeOnClickOverlay && _();
581
+ }, b = () => {
582
+ if (i.overlay) return c(yt, p(E({
583
+ show: i.show,
584
+ class: i.overlayClass,
585
+ zIndex: d.value,
586
+ duration: i.duration,
587
+ customStyle: i.overlayStyle,
588
+ role: i.closeOnClickOverlay ? "button" : void 0,
589
+ tabindex: i.closeOnClickOverlay ? 0 : void 0
590
+ }, i.overlayProps), gt(), { onClick: v }), { default: s["overlay-content"] });
591
+ }, x = (e) => {
592
+ a("clickCloseIcon", e), _();
593
+ }, S = () => {
594
+ if (i.closeable) return c(at, {
595
+ role: "button",
596
+ tabindex: 0,
597
+ name: i.closeIcon,
598
+ class: [St("close-icon", i.closeIconPosition), Be],
599
+ classPrefix: i.iconPrefix,
600
+ onClick: x
601
+ }, null);
602
+ }, C, oe = () => {
603
+ C && clearTimeout(C), C = setTimeout(() => {
604
+ a("opened");
605
+ });
606
+ }, T = () => a("closed"), ce = (e) => a("keydown", e), D = te(() => {
607
+ let { destroyOnClose: e, round: t, position: n, safeAreaInsetTop: r, safeAreaInsetBottom: a, show: l } = i;
608
+ if (!(!l && e)) return se(c("div", p({
609
+ ref: f,
610
+ style: re.value,
611
+ role: "dialog",
612
+ tabindex: 0,
613
+ class: [St({
614
+ round: t,
615
+ [n]: n
616
+ }), {
617
+ "van-safe-area-top": r,
618
+ "van-safe-area-bottom": a
619
+ }],
620
+ onKeydown: ce
621
+ }, o, gt()), [s.default?.call(s), S()]), [[ae, l]]);
622
+ }), O = () => {
623
+ let { position: e, transition: t, transitionAppear: r } = i, a = e === "center" ? "van-fade" : `van-popup-slide-${e}`;
624
+ return c(n, {
625
+ name: t || a,
626
+ appear: r,
627
+ onAfterEnter: oe,
628
+ onAfterLeave: T
629
+ }, { default: D });
630
+ };
631
+ return w(() => i.show, (e) => {
632
+ e && !l && (g(), o.tabindex === 0 && ee(() => {
633
+ var e;
634
+ (e = f.value) == null || e.focus();
635
+ })), !e && l && (l = !1, a("close"));
636
+ }), Ue({ popupRef: f }), mt(f, () => i.show && i.lockScroll), ge("popstate", () => {
637
+ i.closeOnPopstate && (_(), u = !1);
638
+ }), h(() => {
639
+ i.show && g();
640
+ }), ne(() => {
641
+ u &&= (a("update:show", !0), !1);
642
+ }), m(() => {
643
+ i.show && i.teleport && (_(), u = !0);
644
+ }), ie(He, () => i.show), () => i.teleport ? c(t, { to: i.teleport }, { default: () => [b(), O()] }) : c(e, null, [b(), O()]);
645
+ }
646
+ })), G = 0;
647
+ function wt(e) {
648
+ e ? (G || document.body.classList.add("van-toast--unclickable"), G++) : G && (G--, G || document.body.classList.remove("van-toast--unclickable"));
649
+ }
650
+ //#endregion
651
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/toast/Toast.mjs
652
+ var [Tt, K] = z("toast"), Et = [
653
+ "show",
654
+ "overlay",
655
+ "teleport",
656
+ "transition",
657
+ "overlayClass",
658
+ "overlayStyle",
659
+ "closeOnClickOverlay",
660
+ "zIndex"
661
+ ], Dt = l({
662
+ name: Tt,
663
+ props: {
664
+ icon: String,
665
+ show: Boolean,
666
+ type: N("text"),
667
+ overlay: Boolean,
668
+ message: j,
669
+ iconSize: j,
670
+ duration: me(2e3),
671
+ position: N("middle"),
672
+ teleport: [String, Object],
673
+ wordBreak: String,
674
+ className: null,
675
+ iconPrefix: String,
676
+ transition: N("van-fade"),
677
+ loadingType: String,
678
+ forbidClick: Boolean,
679
+ overlayClass: null,
680
+ overlayStyle: Object,
681
+ closeOnClick: Boolean,
682
+ closeOnClickOverlay: Boolean,
683
+ zIndex: j
684
+ },
685
+ emits: ["update:show"],
686
+ setup(e, { emit: t, slots: n }) {
687
+ let r, i = !1, a = () => {
688
+ let t = e.show && e.forbidClick;
689
+ i !== t && (i = t, wt(i));
690
+ }, o = (e) => t("update:show", e), s = () => {
691
+ e.closeOnClick && o(!1);
692
+ }, l = () => clearTimeout(r), u = () => {
693
+ let { icon: t, type: n, iconSize: r, iconPrefix: i, loadingType: a } = e;
694
+ if (t || n === "success" || n === "fail") return c(at, {
695
+ name: t || n,
696
+ size: r,
697
+ class: K("icon"),
698
+ classPrefix: i
699
+ }, null);
700
+ if (n === "loading") return c(lt, {
701
+ class: K("loading"),
702
+ size: r,
703
+ type: a
704
+ }, null);
705
+ }, d = () => {
706
+ let { type: t, message: r } = e;
707
+ if (n.message) return c("div", { class: K("text") }, [n.message()]);
708
+ if (k(r) && r !== "") return t === "html" ? c("div", {
709
+ key: 0,
710
+ class: K("text"),
711
+ innerHTML: String(r)
712
+ }, null) : c("div", { class: K("text") }, [r]);
713
+ };
714
+ return w(() => [e.show, e.forbidClick], a), w(() => [
715
+ e.show,
716
+ e.type,
717
+ e.message,
718
+ e.duration
719
+ ], () => {
720
+ l(), e.show && e.duration > 0 && (r = setTimeout(() => {
721
+ o(!1);
722
+ }, e.duration));
723
+ }), h(a), g(a), () => c(Ct, p({
724
+ class: [K([
725
+ e.position,
726
+ e.wordBreak === "normal" ? "break-normal" : e.wordBreak,
727
+ { [e.type]: !e.icon }
728
+ ]), e.className],
729
+ lockScroll: !1,
730
+ onClick: s,
731
+ onClosed: l,
732
+ "onUpdate:show": o
733
+ }, pe(e, Et)), { default: () => [u(), d()] });
734
+ }
735
+ });
736
+ //#endregion
737
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/utils/mount-component.mjs
738
+ function Ot() {
739
+ let e = v({ show: !1 }), t = (t) => {
740
+ e.show = t;
741
+ }, n = (n) => {
742
+ E(e, n, { transitionAppear: !0 }), t(!0);
743
+ }, r = () => t(!1);
744
+ return Ue({
745
+ open: n,
746
+ close: r,
747
+ toggle: t
748
+ }), {
749
+ open: n,
750
+ close: r,
751
+ state: e,
752
+ toggle: t
753
+ };
754
+ }
755
+ function kt(e) {
756
+ let t = i(e), n = document.createElement("div");
757
+ return document.body.appendChild(n), {
758
+ instance: t.mount(n),
759
+ unmount() {
760
+ t.unmount(), document.body.removeChild(n);
761
+ }
762
+ };
763
+ }
764
+ //#endregion
765
+ //#region node_modules/.pnpm/vant@4.9.24_vue@3.5.38_typescript@6.0.3_/node_modules/vant/es/toast/function-call.mjs
766
+ var At = {
767
+ icon: "",
768
+ type: "text",
769
+ message: "",
770
+ className: "",
771
+ overlay: !1,
772
+ onClose: void 0,
773
+ onOpened: void 0,
774
+ duration: 2e3,
775
+ teleport: "body",
776
+ iconSize: void 0,
777
+ iconPrefix: void 0,
778
+ position: "middle",
779
+ transition: "van-fade",
780
+ forbidClick: !1,
781
+ loadingType: void 0,
782
+ overlayClass: "",
783
+ overlayStyle: void 0,
784
+ closeOnClick: !1,
785
+ closeOnClickOverlay: !1
786
+ }, q = [], jt = !1, Mt = E({}, At), Nt = /* @__PURE__ */ new Map();
787
+ function Pt(e) {
788
+ return O(e) ? e : { message: e };
789
+ }
790
+ function Ft() {
791
+ let { instance: e, unmount: t } = kt({ setup() {
792
+ let n = y(""), { open: r, state: i, close: a, toggle: o } = Ot(), s = () => {
793
+ jt && (q = q.filter((t) => t !== e), t());
794
+ }, l = () => c(Dt, p(i, {
795
+ onClosed: s,
796
+ "onUpdate:show": o
797
+ }), null);
798
+ return w(n, (e) => {
799
+ i.message = e;
800
+ }), u().render = l, {
801
+ open: r,
802
+ close: a,
803
+ message: n
804
+ };
805
+ } });
806
+ return e;
807
+ }
808
+ function It() {
809
+ if (!q.length || jt) {
810
+ let e = Ft();
811
+ q.push(e);
812
+ }
813
+ return q[q.length - 1];
814
+ }
815
+ function Lt(e = {}) {
816
+ if (!D) return {};
817
+ let t = It(), n = Pt(e);
818
+ return t.open(E({}, Mt, Nt.get(n.type || Mt.type), n)), t;
819
+ }
820
+ var Rt = { class: "banner-swipe-container" }, zt = ["src", "alt"], Bt = /*@__PURE__*/ l({
821
+ __name: "index",
822
+ setup(t) {
823
+ let n = y([
824
+ {
825
+ id: 1,
826
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-1.jpeg",
827
+ title: "示例 Banner 1"
828
+ },
829
+ {
830
+ id: 2,
831
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-2.jpeg",
832
+ title: "示例 Banner 2"
833
+ },
834
+ {
835
+ id: 3,
836
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-3.jpeg",
837
+ title: "示例 Banner 3"
838
+ }
839
+ ]), r = y(!0), i = async () => {
840
+ r.value = !0, n.value = [
841
+ {
842
+ id: 1,
843
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-1.jpeg",
844
+ title: "示例 Banner 1"
845
+ },
846
+ {
847
+ id: 2,
848
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-2.jpeg",
849
+ title: "示例 Banner 2"
850
+ },
851
+ {
852
+ id: 3,
853
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-3.jpeg",
854
+ title: "示例 Banner 3"
855
+ }
856
+ ], r.value = !1;
857
+ }, l = (e) => {
858
+ e.linkUrl ? window.location.href = e.linkUrl : Lt(`点击了: ${e.title || e.id}`);
859
+ };
860
+ return h(() => {
861
+ i();
862
+ }), (t, i) => {
863
+ let u = x("van-swipe-item"), d = x("van-swipe"), f = x("van-skeleton");
864
+ return _(), o("div", Rt, [c(f, {
865
+ row: 3,
866
+ loading: r.value,
867
+ class: "banner-skeleton"
868
+ }, {
869
+ default: T(() => [c(d, {
870
+ class: "my-swipe",
871
+ autoplay: 3e3,
872
+ "indicator-color": "white",
873
+ "lazy-render": ""
874
+ }, {
875
+ default: T(() => [(_(!0), o(e, null, b(n.value, (e) => (_(), a(u, {
876
+ key: e.id,
877
+ onClick: (t) => l(e)
878
+ }, {
879
+ default: T(() => [s("img", {
880
+ src: e.imageUrl,
881
+ alt: e.title,
882
+ class: "banner-image"
883
+ }, null, 8, zt)]),
884
+ _: 2
885
+ }, 1032, ["onClick"]))), 128))]),
886
+ _: 1
887
+ })]),
888
+ _: 1
889
+ }, 8, ["loading"])]);
890
+ };
891
+ }
892
+ }), J = (e, t) => {
4
893
  let n = e.__vccOpts || e;
5
894
  for (let [e, r] of t) n[e] = r;
6
895
  return n;
7
- }, r = {}, i = { class: "tButton" };
8
- function a(n, r) {
9
- return t(), e("button", i, "测试 发布 按钮组件1");
896
+ }, Y = /*#__PURE__*/ J(Bt, [["__scopeId", "data-v-53ac4ba7"]]);
897
+ Y.name = "hx-banner-swipe", Y.install = function(e) {
898
+ e.component("hx-banner-swipe", Y);
899
+ };
900
+ var Vt = Y, Ht = {}, Ut = { class: "tButton" };
901
+ function Wt(e, t) {
902
+ return _(), o("button", Ut, "测试 发布 按钮组件1");
10
903
  }
11
- var o = /*#__PURE__*/ n(r, [["render", a], ["__scopeId", "data-v-0957b8d5"]]);
12
- o.name = "hx-button", o.install = function(e) {
13
- e.component("hx-button", o);
904
+ var X = /*#__PURE__*/ J(Ht, [["render", Wt], ["__scopeId", "data-v-0957b8d5"]]);
905
+ X.name = "hx-button", X.install = function(e) {
906
+ e.component("hx-button", X);
907
+ };
908
+ var Gt = X, Kt = { class: "ad-grid-container" }, qt = { class: "ad-grid" }, Jt = ["onClick"], Z = /*#__PURE__*/ J(/* @__PURE__ */ l({
909
+ __name: "index",
910
+ setup(t) {
911
+ let n = y([]), r = y(!0), i = async () => {
912
+ try {
913
+ r.value = !0, await new Promise((e) => setTimeout(e, 800)), n.value = [
914
+ {
915
+ id: 1,
916
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-1.jpeg",
917
+ title: "大图广告"
918
+ },
919
+ {
920
+ id: 2,
921
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-2.jpeg",
922
+ title: "小图广告1"
923
+ },
924
+ {
925
+ id: 3,
926
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-3.jpeg",
927
+ title: "小图广告2"
928
+ }
929
+ ];
930
+ } catch (e) {
931
+ console.error("Failed to fetch ad data:", e);
932
+ } finally {
933
+ r.value = !1;
934
+ }
935
+ }, a = (e) => {
936
+ e.linkUrl ? window.location.href = e.linkUrl : Lt(`点击了广告: ${e.title || e.id}`);
937
+ };
938
+ return h(() => {
939
+ i();
940
+ }), (t, i) => {
941
+ let l = x("van-loading"), u = x("van-image"), d = x("van-skeleton");
942
+ return _(), o("div", Kt, [c(d, {
943
+ row: 4,
944
+ loading: r.value
945
+ }, {
946
+ default: T(() => [s("div", qt, [(_(!0), o(e, null, b(n.value.slice(0, 3), (e, t) => (_(), o("div", {
947
+ key: e.id,
948
+ class: te(["ad-item", { "is-large": t === 0 }]),
949
+ onClick: (t) => a(e)
950
+ }, [c(u, {
951
+ src: e.imageUrl,
952
+ fit: "cover",
953
+ width: "100%",
954
+ height: "100%",
955
+ "lazy-load": ""
956
+ }, {
957
+ loading: T(() => [c(l, {
958
+ type: "spinner",
959
+ size: "20"
960
+ })]),
961
+ _: 1
962
+ }, 8, ["src"])], 10, Jt))), 128))])]),
963
+ _: 1
964
+ }, 8, ["loading"])]);
965
+ };
966
+ }
967
+ }), [["__scopeId", "data-v-1efa7c90"]]);
968
+ Z.name = "hx-adgrid", Z.install = function(e) {
969
+ e.component("hx-adgrid", Z);
970
+ };
971
+ var Yt = Z, Xt = { class: "hot-sale-container" }, Zt = { class: "header" }, Qt = { class: "title" }, $t = { class: "product-list-wrapper" }, en = { class: "product-list" }, tn = ["onClick"], nn = { class: "image-box" }, rn = { class: "product-info" }, an = { class: "product-name van-multi-ellipsis--l2" }, on = { class: "product-bottom" }, sn = { class: "price-value" }, Q = /*#__PURE__*/ J(/* @__PURE__ */ l({
972
+ __name: "index",
973
+ props: { title: { default: "热卖推荐" } },
974
+ setup(t) {
975
+ let n = y([]), r = y(!0), i = async () => {
976
+ try {
977
+ r.value = !0, n.value = [
978
+ {
979
+ id: 1,
980
+ name: "Apple iPhone 15",
981
+ price: "5999",
982
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-1.jpeg"
983
+ },
984
+ {
985
+ id: 2,
986
+ name: "MacBook Pro 14",
987
+ price: "12999",
988
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-2.jpeg"
989
+ },
990
+ {
991
+ id: 3,
992
+ name: "iPad Air",
993
+ price: "4799",
994
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-3.jpeg"
995
+ },
996
+ {
997
+ id: 4,
998
+ name: "Apple Watch S9",
999
+ price: "2999",
1000
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-4.jpeg"
1001
+ },
1002
+ {
1003
+ id: 5,
1004
+ name: "AirPods Pro",
1005
+ price: "1899",
1006
+ imageUrl: "https://fastly.jsdelivr.net/npm/@vant/assets/apple-5.jpeg"
1007
+ }
1008
+ ];
1009
+ } catch (e) {
1010
+ console.error("Failed to fetch hot sale data:", e);
1011
+ } finally {
1012
+ r.value = !1;
1013
+ }
1014
+ }, a = (e) => {
1015
+ e.linkUrl ? window.location.href = e.linkUrl : Lt(`查看商品: ${e.name}`);
1016
+ };
1017
+ return h(() => {
1018
+ i();
1019
+ }), (i, l) => {
1020
+ let u = x("van-image"), d = x("van-skeleton");
1021
+ return _(), o("div", Xt, [s("div", Zt, [s("span", Qt, S(t.title), 1)]), c(d, {
1022
+ row: 3,
1023
+ loading: r.value,
1024
+ class: "skeleton-padding"
1025
+ }, {
1026
+ default: T(() => [s("div", $t, [s("div", en, [(_(!0), o(e, null, b(n.value, (e) => (_(), o("div", {
1027
+ key: e.id,
1028
+ class: "product-item",
1029
+ onClick: (t) => a(e)
1030
+ }, [s("div", nn, [c(u, {
1031
+ src: e.imageUrl,
1032
+ fit: "cover",
1033
+ width: "100%",
1034
+ height: "100%",
1035
+ radius: "8px",
1036
+ "lazy-load": ""
1037
+ }, null, 8, ["src"])]), s("div", rn, [s("div", an, S(e.name), 1), s("div", on, [l[0] ||= s("span", { class: "price-symbol" }, "¥", -1), s("span", sn, S(e.price), 1)])])], 8, tn))), 128))])])]),
1038
+ _: 1
1039
+ }, 8, ["loading"])]);
1040
+ };
1041
+ }
1042
+ }), [["__scopeId", "data-v-27732ea0"]]);
1043
+ Q.name = "hx-hotSaleList", Q.install = function(e) {
1044
+ e.component("hx-hotSaleList", Q);
14
1045
  };
15
- var s = o, c = [s], l = function(e) {
16
- l.installed || (l.installed = !0, c.map((t) => {
1046
+ var cn = Q, ln = [
1047
+ Vt,
1048
+ Gt,
1049
+ Yt,
1050
+ cn
1051
+ ], $ = function(e) {
1052
+ $.installed || ($.installed = !0, ln.map((t) => {
17
1053
  e.component(t.name, t);
18
1054
  }));
19
1055
  };
20
- typeof window < "u" && window.Vue && l(window.Vue);
21
- var u = { install: l };
1056
+ typeof window < "u" && window.Vue && $(window.Vue);
1057
+ var un = { install: $ };
22
1058
  //#endregion
23
- export { u as default, s as hxButton };
1059
+ export { un as default, Yt as hxAdGrid, Vt as hxBannerSwipe, Gt as hxButton, cn as hxHotSaleList };
@@ -1 +1 @@
1
- (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("vue")):typeof define==`function`&&define.amd?define([`exports`,`vue`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e[`pixel-flow-vue`]={},e.Vue))})(this,function(e,t){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});var n=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},r={},i={class:`tButton`};function a(e,n){return(0,t.openBlock)(),(0,t.createElementBlock)(`button`,i,`测试 发布 按钮组件1`)}var o=n(r,[[`render`,a],[`__scopeId`,`data-v-0957b8d5`]]);o.name=`hx-button`,o.install=function(e){e.component(`hx-button`,o)};var s=o,c=[s],l=function(e){l.installed||(l.installed=!0,c.map(t=>{e.component(t.name,t)}))};typeof window<`u`&&window.Vue&&l(window.Vue),e.default={install:l},e.hxButton=s});
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("vue")):typeof define==`function`&&define.amd?define([`exports`,`vue`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e[`pixel-flow-vue`]={},e.Vue))})(this,function(e,t){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});function n(){}var r=Object.assign,i=typeof window<`u`,a=e=>typeof e==`object`&&!!e,o=e=>e!=null,s=e=>typeof e==`function`,c=e=>a(e)&&s(e.then)&&s(e.catch),l=e=>typeof e==`number`||/^\d+(\.\d+)?$/.test(e),u=()=>i?/ios|iphone|ipad|ipod/.test(navigator.userAgent.toLowerCase()):!1;function d(e,t){let n=t.split(`.`),r=e;return n.forEach(e=>{r=a(r)?r[e]??``:``}),r}function f(e,t,n){return t.reduce((t,r)=>((!n||e[r]!==void 0)&&(t[r]=e[r]),t),{})}var p=[Number,String],m={type:Boolean,default:!0},ee=e=>({type:Number,default:e}),h=e=>({type:String,default:e}),g=typeof window<`u`;function _(e){let n;(0,t.onMounted)(()=>{e(),(0,t.nextTick)(()=>{n=!0})}),(0,t.onActivated)(()=>{n&&e()})}function v(e,n,r={}){if(!g)return;let{target:i=window,passive:a=!1,capture:o=!1}=r,s=!1,c,l=r=>{if(s)return;let i=(0,t.unref)(r);i&&!c&&(i.addEventListener(e,n,{capture:o,passive:a}),c=!0)},u=r=>{if(s)return;let i=(0,t.unref)(r);i&&c&&(i.removeEventListener(e,n,o),c=!1)};(0,t.onUnmounted)(()=>u(i)),(0,t.onDeactivated)(()=>u(i)),_(()=>l(i));let d;return(0,t.isRef)(i)&&(d=(0,t.watch)(i,(e,t)=>{u(t),l(e)})),()=>{d?.(),u(i),s=!0}}var y,b;function x(){if(!y&&(y=(0,t.ref)(0),b=(0,t.ref)(0),g)){let e=()=>{y.value=window.innerWidth,b.value=window.innerHeight};e(),window.addEventListener(`resize`,e,{passive:!0}),window.addEventListener(`orientationchange`,e,{passive:!0})}return{width:y,height:b}}var S=/scroll|auto|overlay/i,C=g?window:void 0;function w(e){return e.tagName!==`HTML`&&e.tagName!==`BODY`&&e.nodeType===1}function te(e,t=C){let n=e;for(;n&&n!==t&&w(n);){let{overflowY:e}=window.getComputedStyle(n);if(S.test(e))return n;n=n.parentNode}return t}u();var ne=e=>e.stopPropagation();function re(e,t){(typeof e.cancelable!=`boolean`||e.cancelable)&&e.preventDefault(),t&&ne(e)}var{width:ie,height:ae}=x();function T(e){if(o(e))return l(e)?`${e}px`:String(e)}function oe(e){if(o(e)){if(Array.isArray(e))return{width:T(e[0]),height:T(e[1])};let t=T(e);return{width:t,height:t}}}function se(e){let t={};return e!==void 0&&(t.zIndex=+e),t}var ce=/-(\w)/g,le=e=>e.replace(ce,(e,t)=>t.toUpperCase()),ue=e=>e.replace(/([A-Z])/g,`-$1`).toLowerCase().replace(/^-/,``),{hasOwnProperty:de}=Object.prototype;function fe(e,t,n){let r=t[n];o(r)&&(!de.call(e,n)||!a(r)?e[n]=r:e[n]=E(Object(e[n]),r))}function E(e,t){return Object.keys(t).forEach(n=>{fe(e,t,n)}),e}var pe={name:`姓名`,tel:`电话`,save:`保存`,clear:`清空`,undo:`撤销`,cancel:`取消`,confirm:`确认`,delete:`删除`,loading:`加载中...`,noCoupon:`暂无优惠券`,nameEmpty:`请填写姓名`,addContact:`添加联系人`,telInvalid:`请填写正确的电话`,vanCalendar:{end:`结束`,start:`开始`,title:`日期选择`,weekdays:[`日`,`一`,`二`,`三`,`四`,`五`,`六`],monthTitle:(e,t)=>`${e}\u5E74${t}\u6708`,rangePrompt:e=>`\u6700\u591A\u9009\u62E9 ${e} \u5929`},vanCascader:{select:`请选择`},vanPagination:{prev:`上一页`,next:`下一页`},vanPullRefresh:{pulling:`下拉即可刷新...`,loosing:`释放即可刷新...`},vanSubmitBar:{label:`合计:`},vanCoupon:{unlimited:`无门槛`,discount:e=>`${e}\u6298`,condition:e=>`\u6EE1${e}\u5143\u53EF\u7528`},vanCouponCell:{title:`优惠券`,count:e=>`${e}\u5F20\u53EF\u7528`},vanCouponList:{exchange:`兑换`,close:`不使用`,enable:`可用`,disabled:`不可用`,placeholder:`输入优惠码`},vanAddressEdit:{area:`地区`,areaEmpty:`请选择地区`,addressEmpty:`请填写详细地址`,addressDetail:`详细地址`,defaultAddress:`设为默认收货地址`},vanAddressList:{add:`新增地址`}},D=(0,t.ref)(`zh-CN`),O=(0,t.reactive)({"zh-CN":pe}),me={messages(){return O[D.value]},use(e,t){D.value=e,this.add({[e]:t})},add(e={}){E(O,e)}};function he(e){let t=le(e)+`.`;return(e,...n)=>{let r=me.messages(),i=d(r,t+e)||d(r,e);return s(i)?i(...n):i}}function k(e,t){return t?typeof t==`string`?` ${e}--${t}`:Array.isArray(t)?t.reduce((t,n)=>t+k(e,n),``):Object.keys(t).reduce((n,r)=>n+(t[r]?k(e,r):``),``):``}function ge(e){return(t,n)=>(t&&typeof t!=`string`&&(n=t,t=``),t=t?`${e}__${t}`:e,`${t}${k(t,n)}`)}function A(e){let t=`van-${e}`;return[t,ge(t),he(t)]}var j=`van-hairline`;`${j}`,`${j}`,`${j}`,`${j}`,`${j}`,`${j}`,`${j}`;var _e=`van-haptics-feedback`;function ve(e,{args:t=[],done:r,canceled:i,error:a}){if(e){let o=e.apply(null,t);c(o)?o.then(e=>{e?r():i&&i()}).catch(a||n):o?r():i&&i()}else r()}function M(e){return e.install=t=>{let{name:n}=e;n&&(t.component(n,e),t.component(le(`-${n}`),e))},e}var ye=Symbol();function N(e){let n=(0,t.getCurrentInstance)();n&&r(n.proxy,e)}var[be,P]=A(`badge`),xe={dot:Boolean,max:p,tag:h(`div`),color:String,offset:Array,content:p,showZero:m,position:h(`top-right`)},Se=M((0,t.defineComponent)({name:be,props:xe,setup(e,{slots:n}){let r=()=>{if(n.content)return!0;let{content:t,showZero:r}=e;return o(t)&&t!==``&&(r||t!==0&&t!==`0`)},i=()=>{let{dot:t,max:i,content:a}=e;if(!t&&r())return n.content?n.content():o(i)&&l(a)&&+a>+i?`${i}+`:a},a=e=>e.startsWith(`-`)?e.replace(`-`,``):`-${e}`,s=(0,t.computed)(()=>{let t={background:e.color};if(e.offset){let[r,i]=e.offset,{position:o}=e,[s,c]=o.split(`-`);n.default?(typeof i==`number`?t[s]=T(s===`top`?i:-i):t[s]=s===`top`?T(i):a(i),typeof r==`number`?t[c]=T(c===`left`?r:-r):t[c]=c===`left`?T(r):a(r)):(t.marginTop=T(i),t.marginLeft=T(r))}return t}),c=()=>{if(r()||e.dot)return(0,t.createVNode)(`div`,{class:P([e.position,{dot:e.dot,fixed:!!n.default}]),style:s.value},[i()])};return()=>{if(n.default){let{tag:r}=e;return(0,t.createVNode)(r,{class:P(`wrapper`)},{default:()=>[n.default(),c()]})}return c()}}})),F=2e3,Ce=()=>++F,we=e=>{F=e},[I,Te]=A(`config-provider`),L=Symbol(I),Ee={tag:h(`div`),theme:h(`light`),zIndex:Number,themeVars:Object,themeVarsDark:Object,themeVarsLight:Object,themeVarsScope:h(`local`),iconPrefix:String};function De(e){return e.replace(/([a-zA-Z])(\d)/g,`$1-$2`)}function Oe(e){let t={};return Object.keys(e).forEach(n=>{let r=De(ue(n));t[`--van-${r}`]=e[n]}),t}function R(e={},t={}){Object.keys(e).forEach(n=>{e[n]!==t[n]&&document.documentElement.style.setProperty(n,e[n])}),Object.keys(t).forEach(t=>{e[t]||document.documentElement.style.removeProperty(t)})}(0,t.defineComponent)({name:I,props:Ee,setup(e,{slots:n}){let a=(0,t.computed)(()=>Oe(r({},e.themeVars,e.theme===`dark`?e.themeVarsDark:e.themeVarsLight)));if(i){let n=()=>{document.documentElement.classList.add(`van-theme-${e.theme}`)},r=(t=e.theme)=>{document.documentElement.classList.remove(`van-theme-${t}`)};(0,t.watch)(()=>e.theme,(e,t)=>{t&&r(t),n()},{immediate:!0}),(0,t.onActivated)(n),(0,t.onDeactivated)(r),(0,t.onBeforeUnmount)(r),(0,t.watch)(a,(t,n)=>{e.themeVarsScope===`global`&&R(t,n)}),(0,t.watch)(()=>e.themeVarsScope,(e,t)=>{t===`global`&&R({},a.value),e===`global`&&R(a.value,{})}),e.themeVarsScope===`global`&&R(a.value,{})}return(0,t.provide)(L,e),(0,t.watchEffect)(()=>{e.zIndex!==void 0&&we(e.zIndex)}),()=>(0,t.createVNode)(e.tag,{class:Te(),style:e.themeVarsScope===`local`?a.value:void 0},{default:()=>[n.default?.call(n)]})}});var[ke,z]=A(`icon`),Ae=e=>e?.includes(`/`),je={dot:Boolean,tag:h(`i`),name:String,size:p,badge:p,color:String,badgeProps:Object,classPrefix:String},B=M((0,t.defineComponent)({name:ke,props:je,setup(e,{slots:n}){let r=(0,t.inject)(L,null),i=(0,t.computed)(()=>e.classPrefix||r?.iconPrefix||z());return()=>{let{tag:r,dot:a,name:o,size:s,badge:c,color:l}=e,u=Ae(o);return(0,t.createVNode)(Se,(0,t.mergeProps)({dot:a,tag:r,class:[i.value,u?``:`${i.value}-${o}`],style:{color:l,fontSize:T(s)},content:c},e.badgeProps),{default:()=>[n.default?.call(n),u&&(0,t.createVNode)(`img`,{class:z(`image`),src:o},null)]})}}})),[Me,V]=A(`loading`),Ne=Array(12).fill(null).map((e,n)=>(0,t.createVNode)(`i`,{class:V(`line`,String(n+1))},null)),Pe=(0,t.createVNode)(`svg`,{class:V(`circular`),viewBox:`25 25 50 50`},[(0,t.createVNode)(`circle`,{cx:`50`,cy:`50`,r:`20`,fill:`none`},null)]),Fe={size:p,type:h(`circular`),color:String,vertical:Boolean,textSize:p,textColor:String},Ie=M((0,t.defineComponent)({name:Me,props:Fe,setup(e,{slots:n}){let i=(0,t.computed)(()=>r({color:e.color},oe(e.size))),a=()=>{let r=e.type===`spinner`?Ne:Pe;return(0,t.createVNode)(`span`,{class:V(`spinner`,e.type),style:i.value},[n.icon?n.icon():r])},o=()=>{if(n.default)return(0,t.createVNode)(`span`,{class:V(`text`),style:{fontSize:T(e.textSize),color:e.textColor??e.color}},[n.default()])};return()=>{let{type:n,vertical:r}=e;return(0,t.createVNode)(`div`,{class:V([n,{vertical:r}]),"aria-live":`polite`,"aria-busy":!0},[a(),o()])}}})),Le={show:Boolean,zIndex:p,overlay:m,duration:p,teleport:[String,Object],lockScroll:m,lazyRender:m,beforeClose:Function,overlayProps:Object,overlayStyle:Object,overlayClass:null,transitionAppear:Boolean,closeOnClickOverlay:m};function Re(e,t){return e>t?`horizontal`:t>e?`vertical`:``}function ze(){let e=(0,t.ref)(0),n=(0,t.ref)(0),r=(0,t.ref)(0),i=(0,t.ref)(0),a=(0,t.ref)(0),o=(0,t.ref)(0),s=(0,t.ref)(``),c=(0,t.ref)(!0),l=()=>s.value===`vertical`,u=()=>s.value===`horizontal`,d=()=>{r.value=0,i.value=0,a.value=0,o.value=0,s.value=``,c.value=!0};return{move:(t=>{let l=t.touches[0];r.value=(l.clientX<0?0:l.clientX)-e.value,i.value=l.clientY-n.value,a.value=Math.abs(r.value),o.value=Math.abs(i.value),(!s.value||a.value<10&&o.value<10)&&(s.value=Re(a.value,o.value)),c.value&&(a.value>5||o.value>5)&&(c.value=!1)}),start:(t=>{d(),e.value=t.touches[0].clientX,n.value=t.touches[0].clientY}),reset:d,startX:e,startY:n,deltaX:r,deltaY:i,offsetX:a,offsetY:o,direction:s,isVertical:l,isHorizontal:u,isTap:c}}var H=0,Be=`van-overflow-hidden`;function Ve(e,n){let r=ze(),i=t=>{r.move(t);let n=r.deltaY.value>0?`10`:`01`,{scrollHeight:i,offsetHeight:a,scrollTop:o}=te(t.target,e.value),s=`11`;o===0?s=a>=i?`00`:`01`:o+a>=i&&(s=`10`),s!==`11`&&r.isVertical()&&!(parseInt(s,2)&parseInt(n,2))&&re(t,!0)},a=()=>{document.addEventListener(`touchstart`,r.start),document.addEventListener(`touchmove`,i,{passive:!1}),H||document.body.classList.add(Be),H++},o=()=>{H&&(document.removeEventListener(`touchstart`,r.start),document.removeEventListener(`touchmove`,i),H--,H||document.body.classList.remove(Be))},s=()=>n()&&a(),c=()=>n()&&o();_(s),(0,t.onDeactivated)(c),(0,t.onBeforeUnmount)(c),(0,t.watch)(n,e=>{e?a():o()})}function He(e){let n=(0,t.ref)(!1);return(0,t.watch)(e,e=>{e&&(n.value=e)},{immediate:!0}),e=>()=>n.value?e():null}var Ue=()=>{let{scopeId:e}=(0,t.getCurrentInstance)()?.vnode||{};return e?{[e]:``}:null},[We,Ge]=A(`overlay`),Ke={show:Boolean,zIndex:p,duration:p,className:null,lockScroll:m,lazyRender:m,customStyle:Object,teleport:[String,Object]},qe=M((0,t.defineComponent)({name:We,inheritAttrs:!1,props:Ke,setup(e,{attrs:n,slots:i}){let a=(0,t.ref)(),s=He(()=>e.show||!e.lazyRender),c=t=>{e.lockScroll&&re(t,!0)},l=s(()=>{let s=r(se(e.zIndex),e.customStyle);return o(e.duration)&&(s.animationDuration=`${e.duration}s`),(0,t.withDirectives)((0,t.createVNode)(`div`,(0,t.mergeProps)({ref:a,style:s,class:[Ge(),e.className]},n),[i.default?.call(i)]),[[t.vShow,e.show]])});return v(`touchmove`,c,{target:a}),()=>{let n=(0,t.createVNode)(t.Transition,{name:`van-fade`,appear:!0},{default:l});return e.teleport?(0,t.createVNode)(t.Teleport,{to:e.teleport},{default:()=>[n]}):n}}})),Je=r({},Le,{round:Boolean,position:h(`center`),closeIcon:h(`cross`),closeable:Boolean,transition:String,iconPrefix:String,closeOnPopstate:Boolean,closeIconPosition:h(`top-right`),destroyOnClose:Boolean,safeAreaInsetTop:Boolean,safeAreaInsetBottom:Boolean}),[Ye,Xe]=A(`popup`),Ze=M((0,t.defineComponent)({name:Ye,inheritAttrs:!1,props:Je,emits:[`open`,`close`,`opened`,`closed`,`keydown`,`update:show`,`clickOverlay`,`clickCloseIcon`],setup(e,{emit:n,attrs:i,slots:a}){let s,c,l=(0,t.ref)(),u=(0,t.ref)(),d=He(()=>e.show||!e.lazyRender),f=(0,t.computed)(()=>{let t={zIndex:l.value};if(o(e.duration)){let n=e.position===`center`?`animationDuration`:`transitionDuration`;t[n]=`${e.duration}s`}return t}),p=()=>{s||(s=!0,l.value=e.zIndex===void 0?Ce():+e.zIndex,n(`open`))},m=()=>{s&&ve(e.beforeClose,{done(){s=!1,n(`close`),n(`update:show`,!1)}})},ee=t=>{n(`clickOverlay`,t),e.closeOnClickOverlay&&m()},h=()=>{if(e.overlay)return(0,t.createVNode)(qe,(0,t.mergeProps)(r({show:e.show,class:e.overlayClass,zIndex:l.value,duration:e.duration,customStyle:e.overlayStyle,role:e.closeOnClickOverlay?`button`:void 0,tabindex:e.closeOnClickOverlay?0:void 0},e.overlayProps),Ue(),{onClick:ee}),{default:a[`overlay-content`]})},g=e=>{n(`clickCloseIcon`,e),m()},_=()=>{if(e.closeable)return(0,t.createVNode)(B,{role:`button`,tabindex:0,name:e.closeIcon,class:[Xe(`close-icon`,e.closeIconPosition),_e],classPrefix:e.iconPrefix,onClick:g},null)},y,b=()=>{y&&clearTimeout(y),y=setTimeout(()=>{n(`opened`)})},x=()=>n(`closed`),S=e=>n(`keydown`,e),C=d(()=>{let{destroyOnClose:n,round:r,position:o,safeAreaInsetTop:s,safeAreaInsetBottom:c,show:l}=e;if(!(!l&&n))return(0,t.withDirectives)((0,t.createVNode)(`div`,(0,t.mergeProps)({ref:u,style:f.value,role:`dialog`,tabindex:0,class:[Xe({round:r,[o]:o}),{"van-safe-area-top":s,"van-safe-area-bottom":c}],onKeydown:S},i,Ue()),[a.default?.call(a),_()]),[[t.vShow,l]])}),w=()=>{let{position:n,transition:r,transitionAppear:i}=e,a=n===`center`?`van-fade`:`van-popup-slide-${n}`;return(0,t.createVNode)(t.Transition,{name:r||a,appear:i,onAfterEnter:b,onAfterLeave:x},{default:C})};return(0,t.watch)(()=>e.show,e=>{e&&!s&&(p(),i.tabindex===0&&(0,t.nextTick)(()=>{var e;(e=u.value)==null||e.focus()})),!e&&s&&(s=!1,n(`close`))}),N({popupRef:u}),Ve(u,()=>e.show&&e.lockScroll),v(`popstate`,()=>{e.closeOnPopstate&&(m(),c=!1)}),(0,t.onMounted)(()=>{e.show&&p()}),(0,t.onActivated)(()=>{c&&=(n(`update:show`,!0),!1)}),(0,t.onDeactivated)(()=>{e.show&&e.teleport&&(m(),c=!0)}),(0,t.provide)(ye,()=>e.show),()=>e.teleport?(0,t.createVNode)(t.Teleport,{to:e.teleport},{default:()=>[h(),w()]}):(0,t.createVNode)(t.Fragment,null,[h(),w()])}})),U=0;function Qe(e){e?(U||document.body.classList.add(`van-toast--unclickable`),U++):U&&(U--,U||document.body.classList.remove(`van-toast--unclickable`))}var[$e,W]=A(`toast`),et=[`show`,`overlay`,`teleport`,`transition`,`overlayClass`,`overlayStyle`,`closeOnClickOverlay`,`zIndex`],tt={icon:String,show:Boolean,type:h(`text`),overlay:Boolean,message:p,iconSize:p,duration:ee(2e3),position:h(`middle`),teleport:[String,Object],wordBreak:String,className:null,iconPrefix:String,transition:h(`van-fade`),loadingType:String,forbidClick:Boolean,overlayClass:null,overlayStyle:Object,closeOnClick:Boolean,closeOnClickOverlay:Boolean,zIndex:p},nt=(0,t.defineComponent)({name:$e,props:tt,emits:[`update:show`],setup(e,{emit:n,slots:r}){let i,a=!1,s=()=>{let t=e.show&&e.forbidClick;a!==t&&(a=t,Qe(a))},c=e=>n(`update:show`,e),l=()=>{e.closeOnClick&&c(!1)},u=()=>clearTimeout(i),d=()=>{let{icon:n,type:r,iconSize:i,iconPrefix:a,loadingType:o}=e;if(n||r===`success`||r===`fail`)return(0,t.createVNode)(B,{name:n||r,size:i,class:W(`icon`),classPrefix:a},null);if(r===`loading`)return(0,t.createVNode)(Ie,{class:W(`loading`),size:i,type:o},null)},p=()=>{let{type:n,message:i}=e;if(r.message)return(0,t.createVNode)(`div`,{class:W(`text`)},[r.message()]);if(o(i)&&i!==``)return n===`html`?(0,t.createVNode)(`div`,{key:0,class:W(`text`),innerHTML:String(i)},null):(0,t.createVNode)(`div`,{class:W(`text`)},[i])};return(0,t.watch)(()=>[e.show,e.forbidClick],s),(0,t.watch)(()=>[e.show,e.type,e.message,e.duration],()=>{u(),e.show&&e.duration>0&&(i=setTimeout(()=>{c(!1)},e.duration))}),(0,t.onMounted)(s),(0,t.onUnmounted)(s),()=>(0,t.createVNode)(Ze,(0,t.mergeProps)({class:[W([e.position,e.wordBreak===`normal`?`break-normal`:e.wordBreak,{[e.type]:!e.icon}]),e.className],lockScroll:!1,onClick:l,onClosed:u,"onUpdate:show":c},f(e,et)),{default:()=>[d(),p()]})}});function rt(){let e=(0,t.reactive)({show:!1}),n=t=>{e.show=t},i=t=>{r(e,t,{transitionAppear:!0}),n(!0)},a=()=>n(!1);return N({open:i,close:a,toggle:n}),{open:i,close:a,state:e,toggle:n}}function it(e){let n=(0,t.createApp)(e),r=document.createElement(`div`);return document.body.appendChild(r),{instance:n.mount(r),unmount(){n.unmount(),document.body.removeChild(r)}}}var at={icon:``,type:`text`,message:``,className:``,overlay:!1,onClose:void 0,onOpened:void 0,duration:2e3,teleport:`body`,iconSize:void 0,iconPrefix:void 0,position:`middle`,transition:`van-fade`,forbidClick:!1,loadingType:void 0,overlayClass:``,overlayStyle:void 0,closeOnClick:!1,closeOnClickOverlay:!1},G=[],ot=!1,st=r({},at),ct=new Map;function lt(e){return a(e)?e:{message:e}}function ut(){let{instance:e,unmount:n}=it({setup(){let r=(0,t.ref)(``),{open:i,state:a,close:o,toggle:s}=rt(),c=()=>{ot&&(G=G.filter(t=>t!==e),n())},l=()=>(0,t.createVNode)(nt,(0,t.mergeProps)(a,{onClosed:c,"onUpdate:show":s}),null);return(0,t.watch)(r,e=>{a.message=e}),(0,t.getCurrentInstance)().render=l,{open:i,close:o,message:r}}});return e}function dt(){if(!G.length||ot){let e=ut();G.push(e)}return G[G.length-1]}function K(e={}){if(!i)return{};let t=dt(),n=lt(e);return t.open(r({},st,ct.get(n.type||st.type),n)),t}var ft={class:`banner-swipe-container`},pt=[`src`,`alt`],mt=(0,t.defineComponent)({__name:`index`,setup(e){let n=(0,t.ref)([{id:1,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-1.jpeg`,title:`示例 Banner 1`},{id:2,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-2.jpeg`,title:`示例 Banner 2`},{id:3,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-3.jpeg`,title:`示例 Banner 3`}]),r=(0,t.ref)(!0),i=async()=>{r.value=!0,n.value=[{id:1,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-1.jpeg`,title:`示例 Banner 1`},{id:2,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-2.jpeg`,title:`示例 Banner 2`},{id:3,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-3.jpeg`,title:`示例 Banner 3`}],r.value=!1},a=e=>{e.linkUrl?window.location.href=e.linkUrl:K(`点击了: ${e.title||e.id}`)};return(0,t.onMounted)(()=>{i()}),(e,i)=>{let o=(0,t.resolveComponent)(`van-swipe-item`),s=(0,t.resolveComponent)(`van-swipe`),c=(0,t.resolveComponent)(`van-skeleton`);return(0,t.openBlock)(),(0,t.createElementBlock)(`div`,ft,[(0,t.createVNode)(c,{row:3,loading:r.value,class:`banner-skeleton`},{default:(0,t.withCtx)(()=>[(0,t.createVNode)(s,{class:`my-swipe`,autoplay:3e3,"indicator-color":`white`,"lazy-render":``},{default:(0,t.withCtx)(()=>[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(n.value,e=>((0,t.openBlock)(),(0,t.createBlock)(o,{key:e.id,onClick:t=>a(e)},{default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`img`,{src:e.imageUrl,alt:e.title,class:`banner-image`},null,8,pt)]),_:2},1032,[`onClick`]))),128))]),_:1})]),_:1},8,[`loading`])])}}}),q=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},J=q(mt,[[`__scopeId`,`data-v-53ac4ba7`]]);J.name=`hx-banner-swipe`,J.install=function(e){e.component(`hx-banner-swipe`,J)};var ht=J,gt={},_t={class:`tButton`};function vt(e,n){return(0,t.openBlock)(),(0,t.createElementBlock)(`button`,_t,`测试 发布 按钮组件1`)}var Y=q(gt,[[`render`,vt],[`__scopeId`,`data-v-0957b8d5`]]);Y.name=`hx-button`,Y.install=function(e){e.component(`hx-button`,Y)};var yt=Y,bt={class:`ad-grid-container`},xt={class:`ad-grid`},St=[`onClick`],X=q((0,t.defineComponent)({__name:`index`,setup(e){let n=(0,t.ref)([]),r=(0,t.ref)(!0),i=async()=>{try{r.value=!0,await new Promise(e=>setTimeout(e,800)),n.value=[{id:1,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-1.jpeg`,title:`大图广告`},{id:2,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-2.jpeg`,title:`小图广告1`},{id:3,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-3.jpeg`,title:`小图广告2`}]}catch(e){console.error(`Failed to fetch ad data:`,e)}finally{r.value=!1}},a=e=>{e.linkUrl?window.location.href=e.linkUrl:K(`点击了广告: ${e.title||e.id}`)};return(0,t.onMounted)(()=>{i()}),(e,i)=>{let o=(0,t.resolveComponent)(`van-loading`),s=(0,t.resolveComponent)(`van-image`),c=(0,t.resolveComponent)(`van-skeleton`);return(0,t.openBlock)(),(0,t.createElementBlock)(`div`,bt,[(0,t.createVNode)(c,{row:4,loading:r.value},{default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,xt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(n.value.slice(0,3),(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e.id,class:(0,t.normalizeClass)([`ad-item`,{"is-large":n===0}]),onClick:t=>a(e)},[(0,t.createVNode)(s,{src:e.imageUrl,fit:`cover`,width:`100%`,height:`100%`,"lazy-load":``},{loading:(0,t.withCtx)(()=>[(0,t.createVNode)(o,{type:`spinner`,size:`20`})]),_:1},8,[`src`])],10,St))),128))])]),_:1},8,[`loading`])])}}}),[[`__scopeId`,`data-v-1efa7c90`]]);X.name=`hx-adgrid`,X.install=function(e){e.component(`hx-adgrid`,X)};var Ct=X,wt={class:`hot-sale-container`},Tt={class:`header`},Et={class:`title`},Dt={class:`product-list-wrapper`},Ot={class:`product-list`},kt=[`onClick`],At={class:`image-box`},jt={class:`product-info`},Mt={class:`product-name van-multi-ellipsis--l2`},Nt={class:`product-bottom`},Pt={class:`price-value`},Z=q((0,t.defineComponent)({__name:`index`,props:{title:{default:`热卖推荐`}},setup(e){let n=(0,t.ref)([]),r=(0,t.ref)(!0),i=async()=>{try{r.value=!0,n.value=[{id:1,name:`Apple iPhone 15`,price:`5999`,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-1.jpeg`},{id:2,name:`MacBook Pro 14`,price:`12999`,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-2.jpeg`},{id:3,name:`iPad Air`,price:`4799`,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-3.jpeg`},{id:4,name:`Apple Watch S9`,price:`2999`,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-4.jpeg`},{id:5,name:`AirPods Pro`,price:`1899`,imageUrl:`https://fastly.jsdelivr.net/npm/@vant/assets/apple-5.jpeg`}]}catch(e){console.error(`Failed to fetch hot sale data:`,e)}finally{r.value=!1}},a=e=>{e.linkUrl?window.location.href=e.linkUrl:K(`查看商品: ${e.name}`)};return(0,t.onMounted)(()=>{i()}),(i,o)=>{let s=(0,t.resolveComponent)(`van-image`),c=(0,t.resolveComponent)(`van-skeleton`);return(0,t.openBlock)(),(0,t.createElementBlock)(`div`,wt,[(0,t.createElementVNode)(`div`,Tt,[(0,t.createElementVNode)(`span`,Et,(0,t.toDisplayString)(e.title),1)]),(0,t.createVNode)(c,{row:3,loading:r.value,class:`skeleton-padding`},{default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,Dt,[(0,t.createElementVNode)(`div`,Ot,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(n.value,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e.id,class:`product-item`,onClick:t=>a(e)},[(0,t.createElementVNode)(`div`,At,[(0,t.createVNode)(s,{src:e.imageUrl,fit:`cover`,width:`100%`,height:`100%`,radius:`8px`,"lazy-load":``},null,8,[`src`])]),(0,t.createElementVNode)(`div`,jt,[(0,t.createElementVNode)(`div`,Mt,(0,t.toDisplayString)(e.name),1),(0,t.createElementVNode)(`div`,Nt,[o[0]||=(0,t.createElementVNode)(`span`,{class:`price-symbol`},`¥`,-1),(0,t.createElementVNode)(`span`,Pt,(0,t.toDisplayString)(e.price),1)])])],8,kt))),128))])])]),_:1},8,[`loading`])])}}}),[[`__scopeId`,`data-v-27732ea0`]]);Z.name=`hx-hotSaleList`,Z.install=function(e){e.component(`hx-hotSaleList`,Z)};var Q=Z,Ft=[ht,yt,Ct,Q],$=function(e){$.installed||($.installed=!0,Ft.map(t=>{e.component(t.name,t)}))};typeof window<`u`&&window.Vue&&$(window.Vue),e.default={install:$},e.hxAdGrid=Ct,e.hxBannerSwipe=ht,e.hxButton=yt,e.hxHotSaleList=Q});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pixel-flow-vue",
3
- "version": "1.0.15",
3
+ "version": "1.0.17",
4
4
  "type": "module",
5
5
  "main": "dist/pixel-flow-vue.umd.js",
6
6
  "module": "dist/pixel-flow-vue.es.js",
@@ -16,7 +16,11 @@
16
16
  },
17
17
  "dependencies": {
18
18
  "sass": "^1.101.0",
19
- "vue": "^3.5.34"
19
+ "unocss": "^66.7.2"
20
+ },
21
+ "peerDependencies": {
22
+ "vant": "^4.0.0 || ^5.0.0",
23
+ "vue": "^3.0.0"
20
24
  },
21
25
  "devDependencies": {
22
26
  "@types/node": "^24.12.3",
@@ -1,7 +1,10 @@
1
1
  import type { App, Plugin } from 'vue'
2
2
  import hxButton from './packages/hx-button/index'
3
+ import hxAdGrid from './packages/hx-adgrid/index'
4
+ import hxBannerSwipe from './packages/hx-banner-swipe/index'
5
+ import hxHotSaleList from './packages/hx-hotsaleList/index'
3
6
 
4
- export { hxButton }
7
+ export { hxButton, hxAdGrid, hxBannerSwipe, hxHotSaleList }
5
8
 
6
9
  declare const _default: {
7
10
  install: (app: App) => void