hisonvue 1.1.21 → 1.1.22

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 (59) hide show
  1. package/dist/{HAccordion-a5UZil7t.js → HAccordion-CKbaRrfY.js} +1 -1
  2. package/dist/{HAccordion-Djhoj_2Q.mjs → HAccordion-CNWAodMp.mjs} +2 -2
  3. package/dist/{HBaggie-CD26mD1p.js → HBaggie-BQYZO1MF.js} +1 -1
  4. package/dist/{HBaggie-YMHv54ny.mjs → HBaggie-C-OS7n2D.mjs} +2 -2
  5. package/dist/{HBanner-DEcDBbAa.js → HBanner-8AQVAGPP.js} +1 -1
  6. package/dist/{HBanner-Glkj36dA.mjs → HBanner-D0ImN6h1.mjs} +2 -2
  7. package/dist/{HButton-zN47uq3g.js → HButton-C1AtcoQd.js} +1 -1
  8. package/dist/{HButton-DlOQpSFM.mjs → HButton-CuoH95_k.mjs} +2 -2
  9. package/dist/{HCalendar-Cr2oVDTO.mjs → HCalendar-CnuUn3Xk.mjs} +1 -1
  10. package/dist/{HCalendar-PxP8M1kE.js → HCalendar-DFXWXkci.js} +1 -1
  11. package/dist/{HCaption-DxOZcWcP.js → HCaption-BaelSNHR.js} +1 -1
  12. package/dist/{HCaption-BbrgZlbJ.mjs → HCaption-Di8ePmqg.mjs} +1 -1
  13. package/dist/{HChart-D217Yxxq.js → HChart-DKfoM5dM.js} +1 -1
  14. package/dist/{HChart-BcslvuI8.mjs → HChart-xM2KDiJi.mjs} +1 -1
  15. package/dist/HDrawer-A3BpOuup.js +1 -0
  16. package/dist/{HDrawer-DlMTX7M_.mjs → HDrawer-Vt4JA6pk.mjs} +163 -163
  17. package/dist/{HDropdown-CvV8k1qQ.mjs → HDropdown-BBEH646p.mjs} +2 -2
  18. package/dist/{HDropdown-BhJOYbaN.js → HDropdown-Dj7h-JPP.js} +1 -1
  19. package/dist/{HFileset-C6dqnLa8.js → HFileset-B9EmgNi1.js} +1 -1
  20. package/dist/{HFileset-x00ZXjyE.mjs → HFileset-oi7P1lcc.mjs} +1 -1
  21. package/dist/{HGap-Do40sUXA.mjs → HGap-Bp1hRvbT.mjs} +1 -1
  22. package/dist/{HGap-BgzODoWp.js → HGap-Dy_H_-in.js} +1 -1
  23. package/dist/{HGrid-Dp7v84g5.mjs → HGrid-Bc13aqjL.mjs} +1 -1
  24. package/dist/{HGrid-CAU32_zq.js → HGrid-DDbU5kIr.js} +1 -1
  25. package/dist/{HImagebox-FYftlSK2.mjs → HImagebox-8Uwvm5U0.mjs} +1 -1
  26. package/dist/{HImagebox-XTSKnoBD.js → HImagebox-BVeQuB4p.js} +1 -1
  27. package/dist/{HInput-DxhtO9q3.js → HInput-DHK28wmp.js} +1 -1
  28. package/dist/{HInput-CInEGmfe.mjs → HInput-DoSKCROI.mjs} +1 -1
  29. package/dist/{HInputGroup-Cou5-12U.mjs → HInputGroup-DSUZqea5.mjs} +1 -1
  30. package/dist/{HInputGroup-DrjZO_7J.js → HInputGroup-gD-E8vgq.js} +1 -1
  31. package/dist/{HLabel-uSniKpDF.js → HLabel-BAbaNhJP.js} +1 -1
  32. package/dist/{HLabel-B4n5-mtx.mjs → HLabel-DQVACpDP.mjs} +2 -2
  33. package/dist/{HLayout-BsPro3dN.mjs → HLayout-BoHgIQcJ.mjs} +1 -1
  34. package/dist/{HLayout-wEq-lzHN.js → HLayout-CgaYkiuH.js} +1 -1
  35. package/dist/{HList-Dko7kLGO.mjs → HList-BQEDGW7_.mjs} +2 -2
  36. package/dist/{HList-DcV0Ssb3.js → HList-BROYxKwn.js} +1 -1
  37. package/dist/{HModal-BkjH2wMJ.js → HModal-DTqm3PfL.js} +1 -1
  38. package/dist/{HModal-D_vWZ5My.mjs → HModal-GpwcBz5c.mjs} +1 -1
  39. package/dist/HNote-BotCfjhk.js +1 -0
  40. package/dist/{HNote-CbfXDxO2.mjs → HNote-Dv8mltb0.mjs} +2 -2
  41. package/dist/{HPagination-Cq2OV1tY.mjs → HPagination-DG0I3Orn.mjs} +2 -2
  42. package/dist/{HPagination-HDTloKdH.js → HPagination-DyqohdbC.js} +1 -1
  43. package/dist/{HParagraph-Bg2lZxZR.js → HParagraph-BheX7M-W.js} +1 -1
  44. package/dist/{HParagraph-BUGeL78g.mjs → HParagraph-dWlO5RLM.mjs} +1 -1
  45. package/dist/{HPopup-3KITyE24.js → HPopup-BcGomDSy.js} +1 -1
  46. package/dist/{HPopup-Lqxe1H-e.mjs → HPopup-BrkB_lUB.mjs} +1 -1
  47. package/dist/{HSpinner-BqVl4t2n.js → HSpinner-CjjGcQJD.js} +1 -1
  48. package/dist/{HSpinner-VJJNUuXg.mjs → HSpinner-D6VNpQLM.mjs} +1 -1
  49. package/dist/{HTable-DzbCLDIn.js → HTable-BdNtBsjD.js} +1 -1
  50. package/dist/{HTable-6O4rYicc.mjs → HTable-D2HYTuO9.mjs} +1 -1
  51. package/dist/hisonvue.cjs.js +1 -1
  52. package/dist/hisonvue.es.js +2 -2
  53. package/dist/{index-Cvhi7T4w.mjs → index-CGr5-mvg.mjs} +1 -1
  54. package/dist/{index-5k-aAQlJ.js → index-DcB16odB.js} +1 -1
  55. package/dist/{setButtonCssEvent-BI-R9EJt.js → setButtonCssEvent-CTLQPvWj.js} +1 -1
  56. package/dist/{setButtonCssEvent-BScAn_gY.mjs → setButtonCssEvent-T2QV1cDz.mjs} +1 -1
  57. package/package.json +1 -1
  58. package/dist/HDrawer-CtMgceI2.js +0 -1
  59. package/dist/HNote-DQr6iUu0.js +0 -1
@@ -1,8 +1,8 @@
1
- import { defineComponent as Ve, ref as n, computed as r, onMounted as Pe, onBeforeUnmount as He, watch as a, unref as j, nextTick as A, resolveComponent as Re, createElementBlock as se, openBlock as ne, normalizeClass as R, createCommentVNode as Y, createElementVNode as ae, normalizeStyle as F, renderSlot as D, createVNode as De, createSlots as Ne, withCtx as ie } from "vue";
2
- import { g as We, u as qe, j as Ue, t as re, e as Xe, b as ue, h as $, r as Ze, c as Me, d as je } from "./index-Cvhi7T4w.mjs";
3
- import { a as Ye, r as Fe } from "./scrollManager-BGnq4wyt.mjs";
4
- import { _ as Ge } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
5
- const Je = ["top", "bottom", "left", "right"], Ke = {
1
+ import { defineComponent as Ee, ref as a, computed as u, onMounted as ze, onBeforeUnmount as Ve, watch as i, unref as M, nextTick as T, resolveComponent as Pe, createElementBlock as oe, openBlock as se, normalizeClass as R, createCommentVNode as j, createElementVNode as ne, normalizeStyle as Y, renderSlot as D, createVNode as He, createSlots as Re, withCtx as ae } from "vue";
2
+ import { g as De, u as Ne, j as We, t as ie, e as qe, b as re, h as A, r as Ue, c as Xe, d as Ze } from "./index-CGr5-mvg.mjs";
3
+ import { a as Me, r as je } from "./scrollManager-BGnq4wyt.mjs";
4
+ import { _ as Ye } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
5
+ const Fe = ["top", "bottom", "left", "right"], Ge = {
6
6
  /**
7
7
  * Unique identifier for the drawer instance.
8
8
  * - Retrieve runtime methods via `hison.component.getDrawer(id)`
@@ -53,7 +53,7 @@ const Je = ["top", "bottom", "left", "right"], Ke = {
53
53
  position: {
54
54
  type: String,
55
55
  default: "bottom",
56
- validator: (t) => Je.includes(t)
56
+ validator: (t) => Fe.includes(t)
57
57
  },
58
58
  /**
59
59
  * Drawer width in pixels.
@@ -126,33 +126,33 @@ const Je = ["top", "bottom", "left", "right"], Ke = {
126
126
  * - Default: chosen internally by `position` if not provided
127
127
  */
128
128
  leaveAnimationClass: { type: String, required: !1 }
129
- }, Qe = Ve({
129
+ }, Je = Ee({
130
130
  name: "HDrawer",
131
- props: Ke,
131
+ props: Ge,
132
132
  inheritAttrs: !1,
133
133
  emits: ["mounted", "responsive-change", "open", "close"],
134
- setup(t, { emit: f, slots: ce }) {
135
- const u = t.id || We(), I = `hdrawer:${u}`, N = qe(), W = n(null), y = n(null), k = n(t.visible), c = n(t.visible), g = n(t.zIndex ?? 1100), b = n(t.border), S = n(t.showOverlay), L = n(t.closeClickOverlay), p = n(t.scrollLock), o = n(t.position), v = n(t.width ?? null), d = n(t.height ?? null), O = n(t.closeButtonVisible), ve = r(() => b.value), de = r(() => b.value ? "filled" : "empty"), q = n(t.closeButtonText || "X"), U = n(t.closeButtonTitle || "Close"), T = n(t.swipeClose), E = {
134
+ setup(t, { emit: y }) {
135
+ const c = t.id || De(), $ = `hdrawer:${c}`, N = Ne(), F = a(null), w = a(null), n = a(t.visible), g = a(t.zIndex ?? 1100), b = a(t.border), k = a(t.showOverlay), S = a(t.closeClickOverlay), p = a(t.scrollLock), o = a(t.position), v = a(t.width ?? null), d = a(t.height ?? null), L = a(t.closeButtonVisible), ue = u(() => b.value), ce = u(() => b.value ? "filled" : "empty"), W = a(t.closeButtonText || "X"), q = a(t.closeButtonTitle || "Close"), O = a(t.swipeClose), I = {
136
136
  top: "hison-drawer-enter-top",
137
137
  bottom: "hison-drawer-enter-bottom",
138
138
  left: "hison-drawer-enter-left",
139
139
  right: "hison-drawer-enter-right"
140
- }, z = {
140
+ }, E = {
141
141
  top: "hison-drawer-leave-top",
142
142
  bottom: "hison-drawer-leave-bottom",
143
143
  left: "hison-drawer-leave-left",
144
144
  right: "hison-drawer-leave-right"
145
- }, h = n(t.enterAnimationClass || E[o.value]), m = n(t.leaveAnimationClass || z[o.value]), fe = r(() => "hison-bg-empty"), ye = r(() => b.value ? "hison-border" : ""), he = r(() => k.value ? "" : "hison-display-none"), V = n([]), X = () => {
145
+ }, h = a(t.enterAnimationClass || I[o.value]), m = a(t.leaveAnimationClass || E[o.value]), ve = u(() => "hison-bg-empty"), de = u(() => b.value ? "hison-border" : ""), fe = u(() => n.value ? "" : "hison-display-none"), z = a([]), U = () => {
146
146
  var e;
147
- V.value = Xe(re(t.class) || "", N.value), ue(V.value, "size", ((e = $.componentStyle) == null ? void 0 : e.size) || "m"), ue(V.value, "color", "primary");
148
- }, me = r(() => [
149
- ...Ue(re(t.class) || "", "color")
150
- ]), we = r(() => c.value && S.value), be = r(() => {
147
+ z.value = qe(ie(t.class) || "", N.value), re(z.value, "size", ((e = A.componentStyle) == null ? void 0 : e.size) || "m"), re(z.value, "color", "primary");
148
+ }, ye = u(() => [
149
+ ...We(ie(t.class) || "", "color")
150
+ ]), he = u(() => n.value && k.value), me = u(() => {
151
151
  const l = { zIndex: (g.value ?? 1100) - 1 }, s = t.overlayStyle;
152
152
  return s ? Array.isArray(s) ? [{ ...l }, ...s] : typeof s == "string" ? [l, s] : { ...l, ...s } : l;
153
- }), Ce = () => {
154
- L.value && w();
155
- }, ge = r(() => {
153
+ }), we = () => {
154
+ S.value && f();
155
+ }, be = u(() => {
156
156
  const e = { zIndex: g.value, position: "fixed", inset: "auto" };
157
157
  switch (e.left = "", e.right = "", e.top = "", e.bottom = "", o.value) {
158
158
  case "top":
@@ -169,128 +169,128 @@ const Je = ["top", "bottom", "left", "right"], Ke = {
169
169
  break;
170
170
  }
171
171
  return e;
172
- }), pe = r(() => {
172
+ }), Ce = u(() => {
173
173
  const e = {};
174
174
  return o.value === "top" || o.value === "bottom" ? (e.width = "100vw", d.value != null && (e.height = `${d.value}px`), v.value != null && (e.width = `${v.value}px`)) : (e.height = "100vh", v.value != null && (e.width = `${v.value}px`), d.value != null && (e.height = `${d.value}px`)), e;
175
- }), P = () => {
176
- p.value && Ye(u);
177
- }, H = () => {
178
- p.value && Fe(u);
175
+ }), V = () => {
176
+ p.value && Me(c);
177
+ }, P = () => {
178
+ p.value && je(c);
179
179
  }, G = async () => {
180
- const e = y.value;
180
+ const e = w.value;
181
181
  !e || !h.value || (e.classList.remove(m.value), e.offsetWidth, e.classList.add(h.value));
182
- }, Be = async () => {
183
- const e = y.value;
182
+ }, ge = async () => {
183
+ const e = w.value;
184
184
  !e || !m.value || (e.classList.remove(h.value), e.offsetWidth, e.classList.add(m.value), await new Promise((l) => setTimeout(l, 200)));
185
- }, J = async () => {
186
- c.value || (c.value = !0, P(), await A(), G(), f("open", j(B)));
187
- }, w = async () => {
188
- if (c.value)
185
+ }, H = async () => {
186
+ n.value || (n.value = !0, V(), await T(), G(), y("open", M(B)));
187
+ }, f = async () => {
188
+ if (n.value)
189
189
  try {
190
- await Be();
190
+ await ge();
191
191
  } finally {
192
- c.value = !1, H(), f("close", j(B));
192
+ n.value = !1, P(), y("close", M(B));
193
193
  }
194
- }, ke = async () => c.value ? w() : J(), Se = () => w();
195
- let Z = !1, K = 0, Q = 0;
196
- const x = 40, Le = (e) => {
197
- T.value && (Z = !0, K = e.clientX, Q = e.clientY, window.addEventListener("pointerup", Oe, { once: !0, capture: !0 }));
198
- }, Oe = (e) => {
199
- if (!Z) return;
200
- Z = !1;
201
- const l = e.clientX - K, s = e.clientY - Q, i = Math.abs(l), C = Math.abs(s);
202
- (o.value === "top" && C > i && s > x || o.value === "bottom" && C > i && s < -40 || o.value === "left" && i > C && l < -40 || o.value === "right" && i > C && l > x) && w();
203
- }, Te = 200, Ae = "ease";
204
- function _(e, l, s, i, C = Te, Ee = Ae) {
205
- return new Promise((ze) => {
206
- e.style.transition = "none", e.style[l] = `${s}px`, e.offsetWidth, e.style.transition = `${l} ${C}ms ${Ee}`, e.style[l] = `${i}px`;
207
- const M = () => {
208
- e.removeEventListener("transitionend", M), e.style.transition = "", ze();
194
+ }, pe = async () => n.value ? f() : H(), Be = () => f();
195
+ let X = !1, J = 0, K = 0;
196
+ const Q = 40, ke = (e) => {
197
+ O.value && (X = !0, J = e.clientX, K = e.clientY, window.addEventListener("pointerup", Se, { once: !0, capture: !0 }));
198
+ }, Se = (e) => {
199
+ if (!X) return;
200
+ X = !1;
201
+ const l = e.clientX - J, s = e.clientY - K, r = Math.abs(l), C = Math.abs(s);
202
+ (o.value === "top" && C > r && s > Q || o.value === "bottom" && C > r && s < -40 || o.value === "left" && r > C && l < -40 || o.value === "right" && r > C && l > Q) && f();
203
+ }, Le = 200, Oe = "ease";
204
+ function x(e, l, s, r, C = Le, $e = Oe) {
205
+ return new Promise((Ie) => {
206
+ e.style.transition = "none", e.style[l] = `${s}px`, e.offsetWidth, e.style.transition = `${l} ${C}ms ${$e}`, e.style[l] = `${r}px`;
207
+ const Z = () => {
208
+ e.removeEventListener("transitionend", Z), e.style.transition = "", Ie();
209
209
  };
210
- e.addEventListener("transitionend", M), setTimeout(M, C + 50);
210
+ e.addEventListener("transitionend", Z), setTimeout(Z, C + 50);
211
211
  });
212
212
  }
213
- const $e = r(() => o.value === "left" || o.value === "right"), Ie = r(() => o.value === "top" || o.value === "bottom");
214
- async function ee(e, l = !0) {
215
- const s = y.value;
213
+ const Te = u(() => o.value === "left" || o.value === "right"), Ae = u(() => o.value === "top" || o.value === "bottom");
214
+ async function _(e, l = !0) {
215
+ const s = w.value;
216
216
  if (!s) {
217
217
  v.value = e;
218
218
  return;
219
219
  }
220
- const i = s.getBoundingClientRect().width;
221
- if ((e ?? i) === i) {
220
+ const r = s.getBoundingClientRect().width;
221
+ if ((e ?? r) === r) {
222
222
  v.value = e;
223
223
  return;
224
224
  }
225
- if (!l || e == null || !$e.value) {
225
+ if (!l || e == null || !Te.value) {
226
226
  v.value = e;
227
227
  return;
228
228
  }
229
- v.value = e, await A(), await _(s, "width", i, e);
229
+ v.value = e, await T(), await x(s, "width", r, e);
230
230
  }
231
- async function te(e, l = !0) {
232
- const s = y.value;
231
+ async function ee(e, l = !0) {
232
+ const s = w.value;
233
233
  if (!s) {
234
234
  d.value = e;
235
235
  return;
236
236
  }
237
- const i = s.getBoundingClientRect().height;
238
- if ((e ?? i) === i) {
237
+ const r = s.getBoundingClientRect().height;
238
+ if ((e ?? r) === r) {
239
239
  d.value = e;
240
240
  return;
241
241
  }
242
- if (!l || e == null || !Ie.value) {
242
+ if (!l || e == null || !Ae.value) {
243
243
  d.value = e;
244
244
  return;
245
245
  }
246
- d.value = e, await A(), await _(s, "height", i, e);
246
+ d.value = e, await T(), await x(s, "height", r, e);
247
247
  }
248
- const B = n(null), le = () => {
249
- $.component.drawerList[u] && $.component.drawerList[u].isHisonvueComponent && console.warn(`[Hisonvue] The drawer ID is at risk of being duplicated. ${u}`), Ze(I, () => {
250
- oe(), A(le);
251
- }), X(), c.value && (P(), A(G)), B.value = {
248
+ const B = a(null), te = () => {
249
+ A.component.drawerList[c] && A.component.drawerList[c].isHisonvueComponent && console.warn(`[Hisonvue] The drawer ID is at risk of being duplicated. ${c}`), Ue($, () => {
250
+ le(), T(te);
251
+ }), U(), n.value && (V(), T(G)), B.value = {
252
252
  isHisonvueComponent: !0,
253
- getId: () => u,
253
+ getId: () => c,
254
254
  getType: () => "drawer",
255
- isVisible: () => k.value,
256
- isOpen: () => c.value,
257
- open: J,
258
- close: w,
259
- toggle: ke,
260
- setVisible: (e) => {
261
- k.value = !!e;
262
- },
255
+ isVisible: () => n.value,
256
+ // API 유지용: isOpen visible alias
257
+ isOpen: () => n.value,
258
+ open: H,
259
+ close: f,
260
+ toggle: pe,
261
+ // setVisible도 open/close로 위임 (HModal과 동일)
262
+ setVisible: (e) => e ? H() : f(),
263
263
  getZIndex: () => g.value,
264
264
  setZIndex: (e) => {
265
265
  g.value = e;
266
266
  },
267
267
  getPosition: () => o.value,
268
268
  setPosition: (e) => {
269
- o.value = e, t.enterAnimationClass || (h.value = E[o.value]), t.leaveAnimationClass || (m.value = z[o.value]);
269
+ o.value = e, t.enterAnimationClass || (h.value = I[o.value]), t.leaveAnimationClass || (m.value = E[o.value]);
270
270
  },
271
271
  getWidth: () => v.value,
272
- setWidth: (e, l = !0) => ee(e, l),
272
+ setWidth: (e, l = !0) => _(e, l),
273
273
  getHeight: () => d.value,
274
- setHeight: (e, l = !0) => te(e, l),
275
- isSwipeCloseEnabled: () => T.value,
274
+ setHeight: (e, l = !0) => ee(e, l),
275
+ isSwipeCloseEnabled: () => O.value,
276
276
  setSwipeCloseEnabled: (e) => {
277
- T.value = e;
277
+ O.value = e;
278
278
  },
279
- isCloseButtonVisible: () => O.value,
279
+ isCloseButtonVisible: () => L.value,
280
280
  setCloseButtonVisible: (e) => {
281
- O.value = e;
281
+ L.value = e;
282
282
  },
283
- isOverlayShown: () => S.value,
283
+ isOverlayShown: () => k.value,
284
284
  setOverlayShown: (e) => {
285
- S.value = e;
285
+ k.value = e;
286
286
  },
287
- isCloseClickOverlay: () => L.value,
287
+ isCloseClickOverlay: () => S.value,
288
288
  setCloseClickOverlay: (e) => {
289
- L.value = e;
289
+ S.value = e;
290
290
  },
291
291
  isScrollLocked: () => p.value,
292
292
  setScrollLock: (e) => {
293
- p.value = e, c.value && (e ? P() : H());
293
+ p.value = e, n.value && (e ? V() : P());
294
294
  },
295
295
  isBorder: () => b.value,
296
296
  setBorder: (e) => {
@@ -300,106 +300,106 @@ const Je = ["top", "bottom", "left", "right"], Ke = {
300
300
  setAnimationClasses: (e) => {
301
301
  "enter" in e && (h.value = e.enter || ""), "leave" in e && (m.value = e.leave || "");
302
302
  },
303
- reload: () => Me(I)
304
- }, $.component.drawerList[u] = B.value, f("mounted", B.value);
305
- }, oe = () => {
306
- je(I), delete $.component.drawerList[u], c.value && H();
303
+ reload: () => Xe($)
304
+ }, A.component.drawerList[c] = B.value, y("mounted", B.value);
305
+ }, le = () => {
306
+ Ze($), delete A.component.drawerList[c], n.value && P();
307
307
  };
308
- return Pe(le), He(oe), a(N, (e) => {
309
- X(), f("responsive-change", e);
310
- }), a(() => t.visible, (e) => {
308
+ return ze(te), Ve(le), i(N, (e) => {
309
+ U(), y("responsive-change", e);
310
+ }), i(() => t.visible, (e) => {
311
311
  const l = !!e;
312
- l !== k.value && (k.value = l);
313
- }), a(() => t.zIndex, (e) => {
312
+ l && !n.value ? H() : !l && n.value && f();
313
+ }), i(() => t.zIndex, (e) => {
314
314
  const l = Number(e);
315
315
  Number.isFinite(l) && l !== g.value && (g.value = l);
316
- }), a(() => t.border, (e) => {
316
+ }), i(() => t.border, (e) => {
317
317
  const l = !!e;
318
318
  l !== b.value && (b.value = l);
319
- }), a(() => t.showOverlay, (e) => {
319
+ }), i(() => t.showOverlay, (e) => {
320
320
  const l = !!e;
321
- l !== S.value && (S.value = l);
322
- }), a(() => t.closeClickOverlay, (e) => {
321
+ l !== k.value && (k.value = l);
322
+ }), i(() => t.closeClickOverlay, (e) => {
323
323
  const l = !!e;
324
- l !== L.value && (L.value = l);
325
- }), a(() => t.scrollLock, (e) => {
324
+ l !== S.value && (S.value = l);
325
+ }), i(() => t.scrollLock, (e) => {
326
326
  const l = !!e;
327
- l !== p.value && (p.value = l, c.value && (l ? P() : H()));
328
- }), a(() => t.position, (e) => {
329
- e && e !== o.value && (o.value = e, t.enterAnimationClass || (h.value = E[o.value]), t.leaveAnimationClass || (m.value = z[o.value]));
330
- }), a(() => t.width, (e) => {
327
+ l !== p.value && (p.value = l, n.value && (l ? V() : P()));
328
+ }), i(() => t.position, (e) => {
329
+ e && e !== o.value && (o.value = e, t.enterAnimationClass || (h.value = I[o.value]), t.leaveAnimationClass || (m.value = E[o.value]));
330
+ }), i(() => t.width, (e) => {
331
331
  const l = e == null ? null : Number(e);
332
- l !== v.value && ee(l, !1);
333
- }), a(() => t.height, (e) => {
332
+ l !== v.value && _(l, !1);
333
+ }), i(() => t.height, (e) => {
334
334
  const l = e == null ? null : Number(e);
335
- l !== d.value && te(l, !1);
336
- }), a(() => t.closeButtonVisible, (e) => {
335
+ l !== d.value && ee(l, !1);
336
+ }), i(() => t.closeButtonVisible, (e) => {
337
337
  const l = !!e;
338
- l !== O.value && (O.value = l);
339
- }), a(() => t.closeButtonText, (e) => {
338
+ l !== L.value && (L.value = l);
339
+ }), i(() => t.closeButtonText, (e) => {
340
340
  const l = e ?? "X";
341
- l !== q.value && (q.value = l);
342
- }), a(() => t.closeButtonTitle, (e) => {
341
+ l !== W.value && (W.value = l);
342
+ }), i(() => t.closeButtonTitle, (e) => {
343
343
  const l = e ?? "Close";
344
- l !== U.value && (U.value = l);
345
- }), a(() => t.swipeClose, (e) => {
344
+ l !== q.value && (q.value = l);
345
+ }), i(() => t.swipeClose, (e) => {
346
346
  const l = !!e;
347
- l !== T.value && (T.value = l);
348
- }), a(() => t.enterAnimationClass, (e) => {
349
- const l = e || E[o.value];
347
+ l !== O.value && (O.value = l);
348
+ }), i(() => t.enterAnimationClass, (e) => {
349
+ const l = e || I[o.value];
350
350
  l !== h.value && (h.value = l);
351
- }), a(() => t.leaveAnimationClass, (e) => {
352
- const l = e || z[o.value];
351
+ }), i(() => t.leaveAnimationClass, (e) => {
352
+ const l = e || E[o.value];
353
353
  l !== m.value && (m.value = l);
354
- }), a(() => t.class, () => X()), {
355
- id: u,
354
+ }), i(() => t.class, () => U()), {
355
+ id: c,
356
356
  props: t,
357
- wrapperRef: W,
358
- drawerRef: y,
357
+ wrapperRef: F,
358
+ drawerRef: w,
359
359
  position: o,
360
- visibleClass: he,
361
- responsiveClassList: V,
362
- childClassList: me,
363
- borderClass: ye,
364
- backgroundTypeClass: fe,
365
- wrapperStyle: ge,
366
- overlayStyleWithZ: be,
367
- isOverlayVisible: we,
368
- sizeStyle: pe,
369
- closeButtonVisible: O,
370
- closeButtonBorder: ve,
371
- closeButtonBackgroundType: de,
372
- closeButtonText: q,
373
- closeButtonTitle: U,
374
- onOverlayClick: Ce,
375
- onClickClose: Se,
376
- onSwipePointerDown: Le,
377
- drawerMethods: r(() => j(B))
360
+ visibleClass: fe,
361
+ responsiveClassList: z,
362
+ childClassList: ye,
363
+ borderClass: de,
364
+ backgroundTypeClass: ve,
365
+ wrapperStyle: be,
366
+ overlayStyleWithZ: me,
367
+ isOverlayVisible: he,
368
+ sizeStyle: Ce,
369
+ closeButtonVisible: L,
370
+ closeButtonBorder: ue,
371
+ closeButtonBackgroundType: ce,
372
+ closeButtonText: W,
373
+ closeButtonTitle: q,
374
+ onOverlayClick: we,
375
+ onClickClose: Be,
376
+ onSwipePointerDown: ke,
377
+ drawerMethods: u(() => M(B))
378
378
  };
379
379
  }
380
380
  });
381
- function xe(t, f, ce, u, I, N) {
382
- const W = Re("HButton");
383
- return ne(), se("div", {
381
+ function Ke(t, y, c, $, N, F) {
382
+ const w = Pe("HButton");
383
+ return se(), oe("div", {
384
384
  class: R(["hison-layer-host", t.visibleClass])
385
385
  }, [
386
- t.isOverlayVisible ? (ne(), se("div", {
386
+ t.isOverlayVisible ? (se(), oe("div", {
387
387
  key: 0,
388
388
  class: "hison-drawer-overlay",
389
- style: F(t.overlayStyleWithZ),
390
- onClick: f[0] || (f[0] = (...y) => t.onOverlayClick && t.onOverlayClick(...y))
391
- }, null, 4)) : Y("", !0),
392
- ae("div", {
389
+ style: Y(t.overlayStyleWithZ),
390
+ onClick: y[0] || (y[0] = (...n) => t.onOverlayClick && t.onOverlayClick(...n))
391
+ }, null, 4)) : j("", !0),
392
+ ne("div", {
393
393
  ref: "wrapperRef",
394
394
  class: R(["hison-drawer-wrapper", `hison-pos-${t.position}`, ...t.responsiveClassList]),
395
- style: F(t.wrapperStyle)
395
+ style: Y(t.wrapperStyle)
396
396
  }, [
397
- ae("div", {
397
+ ne("div", {
398
398
  ref: "drawerRef",
399
399
  class: R(["hison-drawer", t.borderClass, t.backgroundTypeClass]),
400
- style: F([t.sizeStyle, t.props.style]),
400
+ style: Y([t.sizeStyle, t.props.style]),
401
401
  role: "dialog",
402
- onPointerdown: f[1] || (f[1] = (...y) => t.onSwipePointerDown && t.onSwipePointerDown(...y))
402
+ onPointerdown: y[1] || (y[1] = (...n) => t.onSwipePointerDown && t.onSwipePointerDown(...n))
403
403
  }, [
404
404
  t.closeButtonVisible ? D(t.$slots, "close-button", {
405
405
  key: 0,
@@ -407,7 +407,7 @@ function xe(t, f, ce, u, I, N) {
407
407
  text: t.closeButtonText,
408
408
  title: t.closeButtonTitle || "Close"
409
409
  }, () => [
410
- De(W, {
410
+ He(w, {
411
411
  id: `hison_drawer_close_${t.id}`,
412
412
  class: R(["hison-drawer-close-btn", "hison-pos-right", "hison-pos-top", "hison-size-s", ...t.childClassList]),
413
413
  text: t.closeButtonText,
@@ -415,27 +415,27 @@ function xe(t, f, ce, u, I, N) {
415
415
  border: t.closeButtonBorder,
416
416
  "background-type": t.closeButtonBackgroundType,
417
417
  onClick: t.onClickClose
418
- }, Ne({
419
- default: ie(() => [
420
- t.$slots["close-label"] ? D(t.$slots, "close-label", { key: 0 }) : Y("", !0)
418
+ }, Re({
419
+ default: ae(() => [
420
+ t.$slots["close-label"] ? D(t.$slots, "close-label", { key: 0 }) : j("", !0)
421
421
  ]),
422
422
  _: 2
423
423
  }, [
424
424
  t.$slots["close-icon"] ? {
425
425
  name: "icon",
426
- fn: ie(() => [
426
+ fn: ae(() => [
427
427
  D(t.$slots, "close-icon")
428
428
  ]),
429
429
  key: "0"
430
430
  } : void 0
431
431
  ]), 1032, ["id", "class", "text", "title", "border", "background-type", "onClick"])
432
- ]) : Y("", !0),
432
+ ]) : j("", !0),
433
433
  D(t.$slots, "default")
434
434
  ], 38)
435
435
  ], 6)
436
436
  ], 2);
437
437
  }
438
- const ot = /* @__PURE__ */ Ge(Qe, [["render", xe]]);
438
+ const tt = /* @__PURE__ */ Ye(Je, [["render", Ke]]);
439
439
  export {
440
- ot as default
440
+ tt as default
441
441
  };
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as Ee, ref as o, computed as v, onMounted as Oe, onBeforeUnmount as Me, watch as i, nextTick as c, unref as ae, createElementBlock as j, openBlock as U, normalizeStyle as $, normalizeClass as P, createElementVNode as A, withKeys as ie, withModifiers as se, renderSlot as Te, toDisplayString as ue, createCommentVNode as xe, Fragment as Le, renderList as De } from "vue";
2
- import { T as He, w as b, D as ke, x as Ve, E as Re, y as Z, g as $e, u as ze, e as Be, t as Fe, b as re, h as N, r as qe, c as je, d as Ue } from "./index-Cvhi7T4w.mjs";
3
- import { a as Pe, r as Ge } from "./setButtonCssEvent-BScAn_gY.mjs";
2
+ import { T as He, w as b, D as ke, x as Ve, E as Re, y as Z, g as $e, u as ze, e as Be, t as Fe, b as re, h as N, r as qe, c as je, d as Ue } from "./index-CGr5-mvg.mjs";
3
+ import { a as Pe, r as Ge } from "./setButtonCssEvent-T2QV1cDz.mjs";
4
4
  import { _ as Ye } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
5
5
  const Ke = {
6
6
  /**
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),o=require("./index-5k-aAQlJ.js"),X=require("./setButtonCssEvent-BI-R9EJt.js"),ve=require("./_plugin-vue_export-helper-BHFhmbuH.js"),ge={id:{type:String,required:!1},class:{type:[String,Array,Object],required:!1},style:{type:[String,Object,Array],required:!1},toggleStyle:{type:[String,Object,Array],required:!1},menuStyle:{type:[String,Object,Array],required:!1},itemStyle:{type:[String,Object,Array],required:!1},visible:{type:Boolean,default:!0},editMode:{type:String,default:o.EditMode.editable,validator:n=>o.EDIT_MODE_VALUES.includes(n)},placeholder:{type:String,default:""},trigger:{type:String,default:o.DropdownTrigger.click,validator:n=>o.DROPDOWN_TRIGGER_VALUES.includes(n)},modelValue:{type:Object,required:!0},maxHeight:{type:Number,default:240,validator:n=>Number.isFinite(n)&&n>=0},closeOnSelect:{type:Boolean,default:!0},textAlign:{type:String,default:o.TextAlign.left,validator:n=>o.TEXT_ALIGN_VALUES.includes(n)},animate:{type:Boolean,default:!0},duration:{type:Number,default:500,validator:n=>Number.isFinite(n)&&n>=0},easing:{type:String,default:"ease"},tabIndex:{type:[Number,String],default:null,validator:n=>n===null||n===""||!isNaN(+n)&&isFinite(+n)},zIndex:{type:Number,default:1050}},fe=t.defineComponent({name:"HDropdown",props:ge,inheritAttrs:!1,emits:["mounted","responsive-change","open","close","toggle-click","item-click","change","update:modelValue"],setup(n,{emit:i}){var K,Y;const g=n.id||o.getUUID(),V=`hdropdown:${g}`,s=t.ref(null),p=t.ref(null),a=o.useDevice(),r=t.ref(!1),c=t.ref(((K=n.modelValue)==null?void 0:K.options)??[]),d=t.ref(((Y=n.modelValue)==null?void 0:Y.value)??null),y=t.ref(!!n.visible),b=t.ref(n.editMode),S=t.computed(()=>b.value===o.EditMode.disable),C=t.computed(()=>b.value===o.EditMode.readonly),L=t.ref(n.placeholder||""),T=t.ref(n.trigger),x=t.ref(n.textAlign??o.TextAlign.left),Z=t.computed(()=>({textAlign:x.value})),E=t.ref(n.animate??!0),A=t.ref(n.duration??500),N=t.ref(n.easing??"ease"),k=t.ref(n.tabIndex!==null&&n.tabIndex!==""?Number(n.tabIndex):null),I=t.ref(n.zIndex??1100),J=t.computed(()=>({"--hdd-duration":`${A.value}ms`,"--hdd-easing":N.value})),Q=t.computed(()=>y.value?"":"hison-display-none"),_=t.computed(()=>S.value?"hison-disable":""),ee=t.computed(()=>C.value?"hison-readonly":""),z=t.ref([]),D=()=>{z.value=o.extractResponsiveClasses(o.toClassString(n.class)||"",a.value),o.addComponentNameToClass(z.value,"size",o.hisonCloser.componentStyle.size),o.addComponentNameToClass(z.value,"color","primary")},F=t.computed(()=>{const e=c.value.find(l=>l.value===d.value);return(e==null?void 0:e.label)??""}),h=t.ref(n.maxHeight??240),te=t.computed(()=>({maxHeight:`${h.value}px`,overflowY:"auto"})),M=t.ref(n.closeOnSelect??!0),ne=t.computed(()=>{const e=c.value.findIndex(l=>l.value===d.value);return e>=0?`opt-${e}`:void 0}),j=t.ref({}),w=t.ref(!0),B=0,le=120;function oe(){if(!p.value)return 0;const e=p.value.querySelector(".hison-dropdown-panel-inner");return e&&e.scrollHeight||0}function u(){if(!r.value||!s.value)return;const e=s.value.getBoundingClientRect(),l=window.innerHeight,v=e.width,m=e.left,W=l-e.bottom,se=e.top;w.value=W>=le;const re=oe(),ue=w.value?W-B:se-B,q=Math.max(0,Math.min(re||h.value,h.value,ue)),de=w.value?e.bottom+B:e.top-q-B,ce=getComputedStyle(s.value).fontSize||"inherit";j.value={position:"fixed",left:`${m}px`,top:`${de}px`,width:`${v}px`,height:w.value?"auto":`${q}px`,maxHeight:`${q}px`,overflowY:"auto",zIndex:String(I.value),fontSize:ce,transformOrigin:w.value?"top center":"bottom center"}}function H(){r.value&&u()}const U=e=>{if(!r.value)return;const l=e.target,v=!!s.value&&!!l&&s.value.contains(l),m=!!p.value&&!!l&&p.value.contains(l);!v&&!m&&O()},R=e=>{S.value||C.value||!y.value||r.value||(r.value=!0,t.nextTick(()=>{u(),requestAnimationFrame(()=>u())}),i("open",e??null,f.value))},O=e=>{var m;if(!r.value)return;const l=document.activeElement,v=p.value;v&&l&&v.contains(l)&&((m=s.value)==null||m.focus()),r.value=!1,i("close",e??null,f.value)},$=e=>r.value?O(e):R(e),ie=e=>{T.value==="click"&&(S.value||C.value||(i("toggle-click",e,f.value),$(e)))},ae=(e,l)=>{if(e.disabled||S.value||C.value)return;l&&i("item-click",l,f.value,e);const v=d.value;if(e.value!==v){d.value=e.value;const m={value:d.value,options:t.unref(c)};i("update:modelValue",m),i("change",v,d.value,f.value)}M.value&&O(l)},f=t.ref(null),P=()=>{o.hisonCloser.component.dropdownList[g]&&o.hisonCloser.component.dropdownList[g].isHisonvueComponent&&console.warn(`[Hisonvue] The dropdown ID is at risk of being duplicated. ${g}`),o.registerReloadable(V,()=>{G(),t.nextTick(P)}),s.value&&X.addButtonCssEvent(s.value),D(),f.value={isHisonvueComponent:!0,getId:()=>g,getType:()=>"dropdown",isVisible:()=>y.value,setVisible:e=>{y.value=e},getEditMode:()=>b.value,setEditMode:e=>{b.value=e},isOpen:()=>r.value,open:R,close:O,toggle:$,getValue:()=>d.value,setValue:e=>{d.value=e},getText:()=>F.value,getOptions:()=>t.unref(c),setOptions:e=>{c.value=Array.isArray(e)?e:[]},setTriggerType:e=>{T.value=e},getMaxHeight:()=>h.value,setMaxHeight:e=>{const l=Number(e);!Number.isFinite(l)||l<0||(h.value=l,t.nextTick(u))},isCloseOnSelect:()=>M.value,setCloseOnSelect:e=>{M.value=!!e},getTextAlign:()=>x.value,setTextAlign:e=>{(e===o.TextAlign.left||e===o.TextAlign.center||e===o.TextAlign.right)&&(x.value=e,t.nextTick(u))},getAnimate:()=>E.value,setAnimate:e=>{E.value=!!e},getDuration:()=>A.value,setDuration:e=>{const l=Number(e);Number.isFinite(l)&&l>=0&&(A.value=l)},getEasing:()=>N.value,setEasing:e=>{typeof e=="string"&&(N.value=e)},getTabIndex:()=>k.value,setTabIndex:e=>{k.value=e!=null?Number(e):null},getZIndex:()=>I.value,setZIndex:e=>{I.value=e},focus:()=>{var e;(e=s.value)==null||e.focus()},reload:()=>o.reloadHisonComponent(V)},o.hisonCloser.component.dropdownList[g]=f.value,document.addEventListener("mousedown",U),window.addEventListener("scroll",H,!0),window.addEventListener("resize",H),t.nextTick(u),i("mounted",f.value)},G=()=>{var e;o.unregisterReloadable(V);try{document.removeEventListener("mousedown",U)}catch{}try{window.removeEventListener("scroll",H,!0)}catch{}try{window.removeEventListener("resize",H)}catch{}s.value&&X.removeButtonCssEvent(s.value),(e=o.hisonCloser.component)!=null&&e.dropdownList&&delete o.hisonCloser.component.dropdownList[g]};return t.onMounted(P),t.onBeforeUnmount(G),t.watch(()=>n.modelValue,e=>{!e||typeof e!="object"||(Array.isArray(e.options)&&(c.value=e.options),d.value=e.value,t.nextTick(u))},{deep:!0}),t.watch(a,e=>{D(),i("responsive-change",e),t.nextTick(u)}),t.watch(()=>n.visible,e=>{!!e!==y.value&&(y.value=!!e)}),t.watch(()=>n.editMode,e=>{e&&e!==b.value&&(b.value=e)}),t.watch(()=>n.placeholder,e=>{const l=e??"";l!==L.value&&(L.value=l)}),t.watch(()=>n.trigger,e=>{e&&e!==T.value&&(T.value=e)}),t.watch(()=>n.textAlign,e=>{(e===o.TextAlign.left||e===o.TextAlign.center||e===o.TextAlign.right)&&e!==x.value&&(x.value=e,t.nextTick(u))}),t.watch(()=>n.animate,e=>{const l=!!e;l!==E.value&&(E.value=l)}),t.watch(()=>n.duration,e=>{const l=Number(e);Number.isFinite(l)&&l>=0&&l!==A.value&&(A.value=l)}),t.watch(()=>n.easing,e=>{const l=typeof e=="string"?e:"ease";l!==N.value&&(N.value=l)}),t.watch(()=>n.tabIndex,e=>{const l=e===null||e===""?null:Number(e);l!==k.value&&(k.value=l)}),t.watch(()=>n.maxHeight,e=>{const l=Number(e);Number.isFinite(l)&&l>=0&&l!==h.value&&(h.value=l,t.nextTick(u))}),t.watch(()=>n.closeOnSelect,e=>{const l=!!e;l!==M.value&&(M.value=l)}),t.watch(()=>n.class,()=>{D(),t.nextTick(u)}),t.watch(()=>n.zIndex,e=>{const l=Number(e);Number.isFinite(l)&&l!==I.value&&(I.value=l)}),{toggleRef:s,menuRef:p,props:n,isDisabled:S,isReadonly:C,visibleClass:Q,disableClass:_,readonlyClass:ee,responsiveClassList:z,isOpen:r,trigger:T,selectedValue:d,selectedLabel:F,placeholder:L,activeDescId:ne,menuInlineStyle:te,options:c,animate:E,rootInlineStyle:J,tabIndex:k,fixedMenuStyle:j,openBelow:w,onToggleClick:ie,onSelect:ae,textAlignStyle:Z,open:R,close:O,toggle:$}}}),me=["aria-expanded","aria-disabled","tabindex"],pe={class:"hison-dropdown-label"},he=["aria-activedescendant","inert"],ye={class:"hison-dropdown-panel"},be=["aria-selected","onClick"],we={key:0,class:"hison-dropdown-empty"};function Se(n,i,g,V,s,p){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["hison-dropdown",...n.responsiveClassList,n.visibleClass,n.disableClass,n.readonlyClass,n.isOpen?"hison-open":"",n.animate?"":"hison-no-anim"]),style:t.normalizeStyle([n.rootInlineStyle,n.props.style]),onMouseenter:i[3]||(i[3]=a=>n.trigger==="hover"?n.open(a):null),onMouseleave:i[4]||(i[4]=a=>n.trigger==="hover"?n.close(a):null)},[t.createElementVNode("div",{ref:"toggleRef",class:t.normalizeClass(["hison-dropdown-toggle",[n.isDisabled?"hison-disable":"",n.isReadonly?"hison-readonly":""]]),"aria-expanded":n.isOpen,role:"combobox","aria-disabled":n.isDisabled||n.isReadonly?"true":"false",tabindex:n.tabIndex??void 0,style:t.normalizeStyle([n.textAlignStyle,n.props.toggleStyle]),onClick:i[0]||(i[0]=a=>n.onToggleClick(a)),onKeydown:[i[1]||(i[1]=t.withKeys(t.withModifiers(a=>n.onToggleClick(a),["prevent"]),["enter"])),i[2]||(i[2]=t.withKeys(t.withModifiers(a=>n.onToggleClick(a),["prevent"]),["space"]))]},[t.createElementVNode("span",pe,t.toDisplayString(n.selectedLabel||n.placeholder),1),t.renderSlot(n.$slots,"caret",{},()=>[i[5]||(i[5]=t.createElementVNode("span",{class:"hison-dropdown-caret"},"▾",-1))])],46,me),t.createElementVNode("div",{ref:"menuRef",class:t.normalizeClass(["hison-dropdown-menu hison-dropdown-menu-fixed",[n.isOpen?"hison-open":"",n.openBelow?"hison-open-below":"hison-open-above"]]),style:t.normalizeStyle([n.fixedMenuStyle,n.textAlignStyle,n.props.menuStyle]),role:"listbox","aria-activedescendant":n.activeDescId,inert:!n.isOpen||void 0},[t.createElementVNode("div",ye,[t.createElementVNode("div",{class:"hison-dropdown-panel-inner",style:t.normalizeStyle(n.menuInlineStyle)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.options,(a,r)=>(t.openBlock(),t.createElementBlock("div",{key:`opt-${r}`,class:t.normalizeClass(["hison-dropdown-item",[a.disabled?"hison-disable":"",a.value===n.selectedValue?"hison-selected":""]]),style:t.normalizeStyle(n.props.itemStyle),role:"option","aria-selected":a.value===n.selectedValue?"true":"false",onClick:c=>n.onSelect(a,c)},t.toDisplayString(a.label),15,be))),128)),n.options.length===0?(t.openBlock(),t.createElementBlock("div",we,"No options")):t.createCommentVNode("",!0)],4)])],14,he)],38)}const Ce=ve._export_sfc(fe,[["render",Se]]);exports.default=Ce;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),o=require("./index-DcB16odB.js"),X=require("./setButtonCssEvent-CTLQPvWj.js"),ve=require("./_plugin-vue_export-helper-BHFhmbuH.js"),ge={id:{type:String,required:!1},class:{type:[String,Array,Object],required:!1},style:{type:[String,Object,Array],required:!1},toggleStyle:{type:[String,Object,Array],required:!1},menuStyle:{type:[String,Object,Array],required:!1},itemStyle:{type:[String,Object,Array],required:!1},visible:{type:Boolean,default:!0},editMode:{type:String,default:o.EditMode.editable,validator:n=>o.EDIT_MODE_VALUES.includes(n)},placeholder:{type:String,default:""},trigger:{type:String,default:o.DropdownTrigger.click,validator:n=>o.DROPDOWN_TRIGGER_VALUES.includes(n)},modelValue:{type:Object,required:!0},maxHeight:{type:Number,default:240,validator:n=>Number.isFinite(n)&&n>=0},closeOnSelect:{type:Boolean,default:!0},textAlign:{type:String,default:o.TextAlign.left,validator:n=>o.TEXT_ALIGN_VALUES.includes(n)},animate:{type:Boolean,default:!0},duration:{type:Number,default:500,validator:n=>Number.isFinite(n)&&n>=0},easing:{type:String,default:"ease"},tabIndex:{type:[Number,String],default:null,validator:n=>n===null||n===""||!isNaN(+n)&&isFinite(+n)},zIndex:{type:Number,default:1050}},fe=t.defineComponent({name:"HDropdown",props:ge,inheritAttrs:!1,emits:["mounted","responsive-change","open","close","toggle-click","item-click","change","update:modelValue"],setup(n,{emit:i}){var K,Y;const g=n.id||o.getUUID(),V=`hdropdown:${g}`,s=t.ref(null),p=t.ref(null),a=o.useDevice(),r=t.ref(!1),c=t.ref(((K=n.modelValue)==null?void 0:K.options)??[]),d=t.ref(((Y=n.modelValue)==null?void 0:Y.value)??null),y=t.ref(!!n.visible),b=t.ref(n.editMode),S=t.computed(()=>b.value===o.EditMode.disable),C=t.computed(()=>b.value===o.EditMode.readonly),L=t.ref(n.placeholder||""),T=t.ref(n.trigger),x=t.ref(n.textAlign??o.TextAlign.left),Z=t.computed(()=>({textAlign:x.value})),E=t.ref(n.animate??!0),A=t.ref(n.duration??500),N=t.ref(n.easing??"ease"),k=t.ref(n.tabIndex!==null&&n.tabIndex!==""?Number(n.tabIndex):null),I=t.ref(n.zIndex??1100),J=t.computed(()=>({"--hdd-duration":`${A.value}ms`,"--hdd-easing":N.value})),Q=t.computed(()=>y.value?"":"hison-display-none"),_=t.computed(()=>S.value?"hison-disable":""),ee=t.computed(()=>C.value?"hison-readonly":""),z=t.ref([]),D=()=>{z.value=o.extractResponsiveClasses(o.toClassString(n.class)||"",a.value),o.addComponentNameToClass(z.value,"size",o.hisonCloser.componentStyle.size),o.addComponentNameToClass(z.value,"color","primary")},F=t.computed(()=>{const e=c.value.find(l=>l.value===d.value);return(e==null?void 0:e.label)??""}),h=t.ref(n.maxHeight??240),te=t.computed(()=>({maxHeight:`${h.value}px`,overflowY:"auto"})),M=t.ref(n.closeOnSelect??!0),ne=t.computed(()=>{const e=c.value.findIndex(l=>l.value===d.value);return e>=0?`opt-${e}`:void 0}),j=t.ref({}),w=t.ref(!0),B=0,le=120;function oe(){if(!p.value)return 0;const e=p.value.querySelector(".hison-dropdown-panel-inner");return e&&e.scrollHeight||0}function u(){if(!r.value||!s.value)return;const e=s.value.getBoundingClientRect(),l=window.innerHeight,v=e.width,m=e.left,W=l-e.bottom,se=e.top;w.value=W>=le;const re=oe(),ue=w.value?W-B:se-B,q=Math.max(0,Math.min(re||h.value,h.value,ue)),de=w.value?e.bottom+B:e.top-q-B,ce=getComputedStyle(s.value).fontSize||"inherit";j.value={position:"fixed",left:`${m}px`,top:`${de}px`,width:`${v}px`,height:w.value?"auto":`${q}px`,maxHeight:`${q}px`,overflowY:"auto",zIndex:String(I.value),fontSize:ce,transformOrigin:w.value?"top center":"bottom center"}}function H(){r.value&&u()}const U=e=>{if(!r.value)return;const l=e.target,v=!!s.value&&!!l&&s.value.contains(l),m=!!p.value&&!!l&&p.value.contains(l);!v&&!m&&O()},R=e=>{S.value||C.value||!y.value||r.value||(r.value=!0,t.nextTick(()=>{u(),requestAnimationFrame(()=>u())}),i("open",e??null,f.value))},O=e=>{var m;if(!r.value)return;const l=document.activeElement,v=p.value;v&&l&&v.contains(l)&&((m=s.value)==null||m.focus()),r.value=!1,i("close",e??null,f.value)},$=e=>r.value?O(e):R(e),ie=e=>{T.value==="click"&&(S.value||C.value||(i("toggle-click",e,f.value),$(e)))},ae=(e,l)=>{if(e.disabled||S.value||C.value)return;l&&i("item-click",l,f.value,e);const v=d.value;if(e.value!==v){d.value=e.value;const m={value:d.value,options:t.unref(c)};i("update:modelValue",m),i("change",v,d.value,f.value)}M.value&&O(l)},f=t.ref(null),P=()=>{o.hisonCloser.component.dropdownList[g]&&o.hisonCloser.component.dropdownList[g].isHisonvueComponent&&console.warn(`[Hisonvue] The dropdown ID is at risk of being duplicated. ${g}`),o.registerReloadable(V,()=>{G(),t.nextTick(P)}),s.value&&X.addButtonCssEvent(s.value),D(),f.value={isHisonvueComponent:!0,getId:()=>g,getType:()=>"dropdown",isVisible:()=>y.value,setVisible:e=>{y.value=e},getEditMode:()=>b.value,setEditMode:e=>{b.value=e},isOpen:()=>r.value,open:R,close:O,toggle:$,getValue:()=>d.value,setValue:e=>{d.value=e},getText:()=>F.value,getOptions:()=>t.unref(c),setOptions:e=>{c.value=Array.isArray(e)?e:[]},setTriggerType:e=>{T.value=e},getMaxHeight:()=>h.value,setMaxHeight:e=>{const l=Number(e);!Number.isFinite(l)||l<0||(h.value=l,t.nextTick(u))},isCloseOnSelect:()=>M.value,setCloseOnSelect:e=>{M.value=!!e},getTextAlign:()=>x.value,setTextAlign:e=>{(e===o.TextAlign.left||e===o.TextAlign.center||e===o.TextAlign.right)&&(x.value=e,t.nextTick(u))},getAnimate:()=>E.value,setAnimate:e=>{E.value=!!e},getDuration:()=>A.value,setDuration:e=>{const l=Number(e);Number.isFinite(l)&&l>=0&&(A.value=l)},getEasing:()=>N.value,setEasing:e=>{typeof e=="string"&&(N.value=e)},getTabIndex:()=>k.value,setTabIndex:e=>{k.value=e!=null?Number(e):null},getZIndex:()=>I.value,setZIndex:e=>{I.value=e},focus:()=>{var e;(e=s.value)==null||e.focus()},reload:()=>o.reloadHisonComponent(V)},o.hisonCloser.component.dropdownList[g]=f.value,document.addEventListener("mousedown",U),window.addEventListener("scroll",H,!0),window.addEventListener("resize",H),t.nextTick(u),i("mounted",f.value)},G=()=>{var e;o.unregisterReloadable(V);try{document.removeEventListener("mousedown",U)}catch{}try{window.removeEventListener("scroll",H,!0)}catch{}try{window.removeEventListener("resize",H)}catch{}s.value&&X.removeButtonCssEvent(s.value),(e=o.hisonCloser.component)!=null&&e.dropdownList&&delete o.hisonCloser.component.dropdownList[g]};return t.onMounted(P),t.onBeforeUnmount(G),t.watch(()=>n.modelValue,e=>{!e||typeof e!="object"||(Array.isArray(e.options)&&(c.value=e.options),d.value=e.value,t.nextTick(u))},{deep:!0}),t.watch(a,e=>{D(),i("responsive-change",e),t.nextTick(u)}),t.watch(()=>n.visible,e=>{!!e!==y.value&&(y.value=!!e)}),t.watch(()=>n.editMode,e=>{e&&e!==b.value&&(b.value=e)}),t.watch(()=>n.placeholder,e=>{const l=e??"";l!==L.value&&(L.value=l)}),t.watch(()=>n.trigger,e=>{e&&e!==T.value&&(T.value=e)}),t.watch(()=>n.textAlign,e=>{(e===o.TextAlign.left||e===o.TextAlign.center||e===o.TextAlign.right)&&e!==x.value&&(x.value=e,t.nextTick(u))}),t.watch(()=>n.animate,e=>{const l=!!e;l!==E.value&&(E.value=l)}),t.watch(()=>n.duration,e=>{const l=Number(e);Number.isFinite(l)&&l>=0&&l!==A.value&&(A.value=l)}),t.watch(()=>n.easing,e=>{const l=typeof e=="string"?e:"ease";l!==N.value&&(N.value=l)}),t.watch(()=>n.tabIndex,e=>{const l=e===null||e===""?null:Number(e);l!==k.value&&(k.value=l)}),t.watch(()=>n.maxHeight,e=>{const l=Number(e);Number.isFinite(l)&&l>=0&&l!==h.value&&(h.value=l,t.nextTick(u))}),t.watch(()=>n.closeOnSelect,e=>{const l=!!e;l!==M.value&&(M.value=l)}),t.watch(()=>n.class,()=>{D(),t.nextTick(u)}),t.watch(()=>n.zIndex,e=>{const l=Number(e);Number.isFinite(l)&&l!==I.value&&(I.value=l)}),{toggleRef:s,menuRef:p,props:n,isDisabled:S,isReadonly:C,visibleClass:Q,disableClass:_,readonlyClass:ee,responsiveClassList:z,isOpen:r,trigger:T,selectedValue:d,selectedLabel:F,placeholder:L,activeDescId:ne,menuInlineStyle:te,options:c,animate:E,rootInlineStyle:J,tabIndex:k,fixedMenuStyle:j,openBelow:w,onToggleClick:ie,onSelect:ae,textAlignStyle:Z,open:R,close:O,toggle:$}}}),me=["aria-expanded","aria-disabled","tabindex"],pe={class:"hison-dropdown-label"},he=["aria-activedescendant","inert"],ye={class:"hison-dropdown-panel"},be=["aria-selected","onClick"],we={key:0,class:"hison-dropdown-empty"};function Se(n,i,g,V,s,p){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["hison-dropdown",...n.responsiveClassList,n.visibleClass,n.disableClass,n.readonlyClass,n.isOpen?"hison-open":"",n.animate?"":"hison-no-anim"]),style:t.normalizeStyle([n.rootInlineStyle,n.props.style]),onMouseenter:i[3]||(i[3]=a=>n.trigger==="hover"?n.open(a):null),onMouseleave:i[4]||(i[4]=a=>n.trigger==="hover"?n.close(a):null)},[t.createElementVNode("div",{ref:"toggleRef",class:t.normalizeClass(["hison-dropdown-toggle",[n.isDisabled?"hison-disable":"",n.isReadonly?"hison-readonly":""]]),"aria-expanded":n.isOpen,role:"combobox","aria-disabled":n.isDisabled||n.isReadonly?"true":"false",tabindex:n.tabIndex??void 0,style:t.normalizeStyle([n.textAlignStyle,n.props.toggleStyle]),onClick:i[0]||(i[0]=a=>n.onToggleClick(a)),onKeydown:[i[1]||(i[1]=t.withKeys(t.withModifiers(a=>n.onToggleClick(a),["prevent"]),["enter"])),i[2]||(i[2]=t.withKeys(t.withModifiers(a=>n.onToggleClick(a),["prevent"]),["space"]))]},[t.createElementVNode("span",pe,t.toDisplayString(n.selectedLabel||n.placeholder),1),t.renderSlot(n.$slots,"caret",{},()=>[i[5]||(i[5]=t.createElementVNode("span",{class:"hison-dropdown-caret"},"▾",-1))])],46,me),t.createElementVNode("div",{ref:"menuRef",class:t.normalizeClass(["hison-dropdown-menu hison-dropdown-menu-fixed",[n.isOpen?"hison-open":"",n.openBelow?"hison-open-below":"hison-open-above"]]),style:t.normalizeStyle([n.fixedMenuStyle,n.textAlignStyle,n.props.menuStyle]),role:"listbox","aria-activedescendant":n.activeDescId,inert:!n.isOpen||void 0},[t.createElementVNode("div",ye,[t.createElementVNode("div",{class:"hison-dropdown-panel-inner",style:t.normalizeStyle(n.menuInlineStyle)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.options,(a,r)=>(t.openBlock(),t.createElementBlock("div",{key:`opt-${r}`,class:t.normalizeClass(["hison-dropdown-item",[a.disabled?"hison-disable":"",a.value===n.selectedValue?"hison-selected":""]]),style:t.normalizeStyle(n.props.itemStyle),role:"option","aria-selected":a.value===n.selectedValue?"true":"false",onClick:c=>n.onSelect(a,c)},t.toDisplayString(a.label),15,be))),128)),n.options.length===0?(t.openBlock(),t.createElementBlock("div",we,"No options")):t.createCommentVNode("",!0)],4)])],14,he)],38)}const Ce=ve._export_sfc(fe,[["render",Se]]);exports.default=Ce;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("vue"),i=require("./index-5k-aAQlJ.js"),re=require("./_plugin-vue_export-helper-BHFhmbuH.js"),ce={id:{type:String,required:!1},class:{type:[String,Array,Object],required:!1},style:{type:[String,Object,Array],required:!1},visible:{type:Boolean,default:!0},editMode:{type:String,default:i.EditMode.editable,validator:t=>i.EDIT_MODE_VALUES.includes(t)},modelValue:{type:Array,default:()=>[]},attId:{type:String,default:""},addButtonText:{type:String,default:"Add"},removeButtonText:{type:String,default:"x"},placeholder:{type:String,default:"There are no files."},enableDrop:{type:Boolean,default:!0},downloadHandler:{type:Function,default:void 0},multiCols:{type:Boolean,default:!1},multiple:{type:Boolean,default:!0},allowedTypes:{type:[String,Array],default:void 0,validator:t=>t===void 0||typeof t=="string"||Array.isArray(t)&&t.every(o=>typeof o=="string")},disallowedTypes:{type:[String,Array],default:void 0,validator:t=>t===void 0||typeof t=="string"||Array.isArray(t)&&t.every(o=>typeof o=="string")},maxFileSize:{type:Number,default:1/0,validator:t=>Number.isFinite(t)&&t>=0||t===1/0},maxTotalFileSize:{type:Number,default:1/0,validator:t=>Number.isFinite(t)&&t>=0||t===1/0},maxFileCount:{type:Number,default:0,validator:t=>Number.isInteger(t)&&t>=0},onDisallowedType:{type:Function,default:void 0},onMaxFileSizeExceeded:{type:Function,default:void 0},onMaxTotalSizeExceeded:{type:Function,default:void 0},tabIndex:{type:[Number,String],default:null,validator:t=>t===null||t===""||!isNaN(+t)&&isFinite(+t)}},fe=l.defineComponent({name:"HFileset",props:ce,emits:["mounted","responsive-change","update:modelValue","add","remove","focus","blur","download","change"],setup(t,{emit:o}){const F=l.ref(null),n=l.ref([...t.modelValue]),m=l.ref(null),c=t.id?t.id:i.getUUID(),N=`hbutton:${c}`,s=l.ref(t.visible),d=l.ref(t.editMode),B=l.computed(()=>d.value===i.EditMode.disable),X=l.computed(()=>d.value===i.EditMode.readonly),Y=l.computed(()=>d.value!==i.EditMode.editable?`hison-fileset-${d.value}`:""),Z=l.computed(()=>s.value?"":"hison-display-none"),j=l.ref(t.attId||""),E=l.ref(t.addButtonText||""),x=l.ref(t.removeButtonText||""),A=l.ref(t.placeholder??""),R=l.ref(!1),M=l.ref(t.enableDrop),$=l.ref(typeof t.downloadHandler=="function"?t.downloadHandler:void 0),O=l.ref(t.multiCols??!1),h=l.ref(t.multiple??!1),H=l.ref(!1),_=l.computed(()=>{if(y.value.length===0)return"";const e=new Set(w.value.map(u=>u.toLowerCase())),a=y.value.filter(u=>!e.has(u.toLowerCase()));return a.length>0?a.join(","):void 0}),y=l.ref(Array.isArray(t.allowedTypes)?t.allowedTypes:t.allowedTypes?t.allowedTypes.split(","):[]),w=l.ref(Array.isArray(t.disallowedTypes)?t.disallowedTypes:t.disallowedTypes?t.disallowedTypes.split(","):[]),b=l.ref(t.maxFileSize??i.hison.getMaxFilesetSize()),C=l.ref(t.maxTotalFileSize??i.hison.getMaxFilesetTotalSize()),D=l.ref(t.maxFileCount),g=l.ref(typeof t.onDisallowedType=="function"?t.onDisallowedType:void 0),z=l.ref(typeof t.onMaxFileSizeExceeded=="function"?t.onMaxFileSizeExceeded:void 0),k=l.ref(typeof t.onMaxTotalSizeExceeded=="function"?t.onMaxTotalSizeExceeded:void 0),L=l.ref(t.tabIndex!==null&&t.tabIndex!==""?Number(t.tabIndex):null),U=i.useDevice(),I=l.ref([]),P=()=>{I.value=i.extractResponsiveClasses(i.toClassString(t.class)||"",U.value),i.getIndexSpecificClassNameFromClassList(I.value,"col")===-1&&I.value.push("hison-col-12"),i.addComponentNameToClass(I.value,"size",i.hisonCloser.componentStyle.size),i.addComponentNameToClass(I.value,"color","primary")},ee=l.computed(()=>{const e=[];return e.push(...i.extractPrefixedClasses(i.toClassString(t.class)||"","size")),e.push(...i.extractPrefixedClasses(i.toClassString(t.class)||"","color")),e}),te=()=>{var e;(e=F.value)==null||e.click()},le=e=>{var r,S,f;const a=e.type,u="."+((r=e.name.split(".").pop())==null?void 0:r.toLowerCase());return y.value.length>0&&!y.value.some(T=>T===a||T===u)?(console.warn(`File type not in allowedTypes: ${a} / ${u}`),(S=g.value)==null||S.call(g,e,y.value,null),!1):w.value.length>0&&w.value.some(T=>T===a||T===u)?(console.warn(`File type is in disallowedTypes: ${a} / ${u}`),(f=g.value)==null||f.call(g,e,null,w.value),!1):!0},ae=e=>{var a;return typeof b.value=="number"&&Number.isFinite(b.value)&&e.size>b.value?(console.warn(`File too large: ${e.name}
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("vue"),i=require("./index-DcB16odB.js"),re=require("./_plugin-vue_export-helper-BHFhmbuH.js"),ce={id:{type:String,required:!1},class:{type:[String,Array,Object],required:!1},style:{type:[String,Object,Array],required:!1},visible:{type:Boolean,default:!0},editMode:{type:String,default:i.EditMode.editable,validator:t=>i.EDIT_MODE_VALUES.includes(t)},modelValue:{type:Array,default:()=>[]},attId:{type:String,default:""},addButtonText:{type:String,default:"Add"},removeButtonText:{type:String,default:"x"},placeholder:{type:String,default:"There are no files."},enableDrop:{type:Boolean,default:!0},downloadHandler:{type:Function,default:void 0},multiCols:{type:Boolean,default:!1},multiple:{type:Boolean,default:!0},allowedTypes:{type:[String,Array],default:void 0,validator:t=>t===void 0||typeof t=="string"||Array.isArray(t)&&t.every(o=>typeof o=="string")},disallowedTypes:{type:[String,Array],default:void 0,validator:t=>t===void 0||typeof t=="string"||Array.isArray(t)&&t.every(o=>typeof o=="string")},maxFileSize:{type:Number,default:1/0,validator:t=>Number.isFinite(t)&&t>=0||t===1/0},maxTotalFileSize:{type:Number,default:1/0,validator:t=>Number.isFinite(t)&&t>=0||t===1/0},maxFileCount:{type:Number,default:0,validator:t=>Number.isInteger(t)&&t>=0},onDisallowedType:{type:Function,default:void 0},onMaxFileSizeExceeded:{type:Function,default:void 0},onMaxTotalSizeExceeded:{type:Function,default:void 0},tabIndex:{type:[Number,String],default:null,validator:t=>t===null||t===""||!isNaN(+t)&&isFinite(+t)}},fe=l.defineComponent({name:"HFileset",props:ce,emits:["mounted","responsive-change","update:modelValue","add","remove","focus","blur","download","change"],setup(t,{emit:o}){const F=l.ref(null),n=l.ref([...t.modelValue]),m=l.ref(null),c=t.id?t.id:i.getUUID(),N=`hbutton:${c}`,s=l.ref(t.visible),d=l.ref(t.editMode),B=l.computed(()=>d.value===i.EditMode.disable),X=l.computed(()=>d.value===i.EditMode.readonly),Y=l.computed(()=>d.value!==i.EditMode.editable?`hison-fileset-${d.value}`:""),Z=l.computed(()=>s.value?"":"hison-display-none"),j=l.ref(t.attId||""),E=l.ref(t.addButtonText||""),x=l.ref(t.removeButtonText||""),A=l.ref(t.placeholder??""),R=l.ref(!1),M=l.ref(t.enableDrop),$=l.ref(typeof t.downloadHandler=="function"?t.downloadHandler:void 0),O=l.ref(t.multiCols??!1),h=l.ref(t.multiple??!1),H=l.ref(!1),_=l.computed(()=>{if(y.value.length===0)return"";const e=new Set(w.value.map(u=>u.toLowerCase())),a=y.value.filter(u=>!e.has(u.toLowerCase()));return a.length>0?a.join(","):void 0}),y=l.ref(Array.isArray(t.allowedTypes)?t.allowedTypes:t.allowedTypes?t.allowedTypes.split(","):[]),w=l.ref(Array.isArray(t.disallowedTypes)?t.disallowedTypes:t.disallowedTypes?t.disallowedTypes.split(","):[]),b=l.ref(t.maxFileSize??i.hison.getMaxFilesetSize()),C=l.ref(t.maxTotalFileSize??i.hison.getMaxFilesetTotalSize()),D=l.ref(t.maxFileCount),g=l.ref(typeof t.onDisallowedType=="function"?t.onDisallowedType:void 0),z=l.ref(typeof t.onMaxFileSizeExceeded=="function"?t.onMaxFileSizeExceeded:void 0),k=l.ref(typeof t.onMaxTotalSizeExceeded=="function"?t.onMaxTotalSizeExceeded:void 0),L=l.ref(t.tabIndex!==null&&t.tabIndex!==""?Number(t.tabIndex):null),U=i.useDevice(),I=l.ref([]),P=()=>{I.value=i.extractResponsiveClasses(i.toClassString(t.class)||"",U.value),i.getIndexSpecificClassNameFromClassList(I.value,"col")===-1&&I.value.push("hison-col-12"),i.addComponentNameToClass(I.value,"size",i.hisonCloser.componentStyle.size),i.addComponentNameToClass(I.value,"color","primary")},ee=l.computed(()=>{const e=[];return e.push(...i.extractPrefixedClasses(i.toClassString(t.class)||"","size")),e.push(...i.extractPrefixedClasses(i.toClassString(t.class)||"","color")),e}),te=()=>{var e;(e=F.value)==null||e.click()},le=e=>{var r,S,f;const a=e.type,u="."+((r=e.name.split(".").pop())==null?void 0:r.toLowerCase());return y.value.length>0&&!y.value.some(T=>T===a||T===u)?(console.warn(`File type not in allowedTypes: ${a} / ${u}`),(S=g.value)==null||S.call(g,e,y.value,null),!1):w.value.length>0&&w.value.some(T=>T===a||T===u)?(console.warn(`File type is in disallowedTypes: ${a} / ${u}`),(f=g.value)==null||f.call(g,e,null,w.value),!1):!0},ae=e=>{var a;return typeof b.value=="number"&&Number.isFinite(b.value)&&e.size>b.value?(console.warn(`File too large: ${e.name}
2
2
  Max size: ${b.value} Byte`),(a=z.value)==null||a.call(z,e,e.size,b.value),!1):!0},q=e=>{var S;let a=e.filter(f=>ae(f)&&le(f));!h.value&&a.length>1&&(a=[a[0]]);let u=!1;const r=[];for(const f of a){let V=n.value.filter(v=>!v.isDeleted),T=V.length;const Q=V.reduce((v,p)=>v+(p.fileSize??0),0)+f.size;if(C.value>0&&Q>C.value){(S=k.value)==null||S.call(k,f,Q,C.value),console.warn("Total file size exceeds limit.");break}if(!h.value){for(const v of V)if(v.isNew){const p=n.value.indexOf(v);p!==-1&&n.value.splice(p,1)}else v.isDeleted=!0;u=!0}if(h.value&&D.value>0&&T>=D.value){const v=n.value.findIndex(p=>!p.isDeleted);if(v!==-1){const p=n.value[v];p.isNew?n.value.splice(v,1):p.isDeleted=!0,u=!0}else{console.warn("No replaceable file found for maxFileCount overflow.");break}}const W={fileName:f.name,fileSize:f.size,extension:f.name.split(".").pop(),file:f,isNew:!0};n.value.push(W),u=!0,r.push(W)}u&&(H.value=!0,o("update:modelValue",[...n.value]),r.length&&o("add",i.hison.utils.deepCopyObject(r),m.value),o("change",i.hison.utils.deepCopyObject(n.value),m.value))},ie=e=>{if(d.value!==i.EditMode.editable)return;const a=n.value[e];a.fileId?a.isDeleted=!0:n.value.splice(e,1),H.value=!0,o("update:modelValue",[...n.value]),o("remove",i.hison.utils.deepCopyObject(a),e,m.value),o("change",i.hison.utils.deepCopyObject(n.value),m.value)},oe=e=>{if(d.value!==i.EditMode.editable)return;const a=e.target.files;!a||a.length===0||(q(Array.from(a)),l.nextTick(()=>{F.value&&(F.value.value="")}))},ne=l.computed(()=>n.value.filter(e=>!e.isDeleted)),se=e=>{if(o("download",i.hison.utils.deepCopyObject(e),m.value),$.value){$.value(e);return}let a="",u=e.fileName||"download";if(e.file){const S=new Blob([e.file],{type:e.file.type});a=URL.createObjectURL(S)}else if(e.filePath)a=e.filePath;else{console.warn("Download failed: no filePath or file object.");return}const r=document.createElement("a");r.href=a,r.download=u,r.click(),e.file&&URL.revokeObjectURL(a)},ue=e=>{!M.value||d.value!==i.EditMode.editable||(R.value=!0)},de=e=>{var a;R.value=!1,!(!M.value||d.value!==i.EditMode.editable)&&(a=e.dataTransfer)!=null&&a.files&&q(Array.from(e.dataTransfer.files))},J=e=>{if(!e||!e.getIsDataModel||!e.getIsDataModel()||e.getRowCount()===0)return;const a=e.getRows();n.value=[...a]},G=()=>{i.hisonCloser.component.filesetList[c]&&i.hisonCloser.component.filesetList[c].isHisonvueComponent&&console.warn(`[Hisonvue] The fileset ID is at risk of being duplicated. ${c}`),i.registerReloadable(N,()=>{K(),l.nextTick(G)}),F.value&&(P(),m.value={isHisonvueComponent:!0,getId:()=>c,getType:()=>"fileset",isVisible:()=>s.value,setVisible:e=>{s.value=e},getEditMode:()=>d.value,setEditMode:e=>{var a;d.value=e,(a=i.hisonCloser.component.buttonList[`hison_fileset_add_button_${c}`])==null||a.setDisable(B.value)},getValue:()=>i.hison.utils.deepCopyObject(n.value),setValue:e=>{n.value=i.hison.utils.deepCopyObject([...e])},getDataModel:()=>n.value.length>0?new i.hison.data.DataModel(n.value):null,setDataModel:e=>{J(e)},load:e=>{e&&e.getIsDataModel&&e.getIsDataModel()?J(e):n.value=i.hison.utils.deepCopyObject([...e])},getAttId:()=>j.value,setAttId:e=>{j.value=e},getAddButtonText:()=>E.value,setAddButtonText:e=>{E.value=e},getRemoveButtonText:()=>x.value,setRemoveButtonText:e=>{x.value=e},isEnableDrop:()=>M.value,setEnableDrop:e=>{M.value=e},setDownloadHandler:e=>{$.value=e},isMultiCols:()=>O.value,setMultiCols:e=>{O.value=e},isMultiple:()=>h.value,setMultiple:e=>{h.value=e},getPlaceholder:()=>A.value,setPlaceholder:e=>{A.value=e},getAllowedTypes:()=>y.value,setAllowedTypes:e=>{y.value=e},getDisallowedTypes:()=>w.value,setDisallowedTypes:e=>{w.value=e},getMaxFileSize:()=>b.value,setMaxFileSize:e=>{b.value=e},getMaxTotalFileSize:()=>C.value,setMaxTotalFileSize:e=>{C.value=e},getMaxFileCount:()=>D.value,setMaxFileCount:e=>{D.value=e},setOnDisallowedType:e=>{g.value=e},setOnMaxFileSizeExceeded:e=>{z.value=e},setOnMaxTotalSizeExceeded:e=>{k.value=e},isModified:()=>H.value,setModified:e=>{H.value=e},getTabIndex:()=>L.value,setTabIndex:e=>{L.value=e!=null?Number(e):null},focus:()=>{var e;(e=i.hisonCloser.component.buttonList[`hison_fileset_add_button_${c}`])==null||e.focus()},reload:()=>i.reloadHisonComponent(N)},i.hisonCloser.component.filesetList[c]=m.value,o("mounted",m.value))},K=()=>{i.unregisterReloadable(N),delete i.hisonCloser.component.filesetList[c]};return l.onMounted(G),l.onBeforeUnmount(K),l.watch(()=>t.modelValue,e=>{JSON.stringify(e)!==JSON.stringify(n.value)&&(n.value=[...e])},{deep:!0}),l.watch(U,e=>{P(),o("responsive-change",e)}),l.watch(()=>t.visible,e=>{const a=!!e;a!==s.value&&(s.value=a)}),l.watch(()=>t.editMode,e=>{e&&e!==d.value&&(d.value=e,l.nextTick(()=>{var a;return(a=i.hisonCloser.component.buttonList[`hison_fileset_add_button_${c}`])==null?void 0:a.setDisable(B.value)}))}),l.watch(()=>t.attId,e=>{const a=e??"";a!==j.value&&(j.value=a)}),l.watch(()=>t.addButtonText,e=>{const a=e??"";a!==E.value&&(E.value=a)}),l.watch(()=>t.removeButtonText,e=>{const a=e??"";a!==x.value&&(x.value=a)}),l.watch(()=>t.placeholder,e=>{const a=e??"";a!==A.value&&(A.value=a)}),l.watch(()=>t.enableDrop,e=>{const a=!!e;a!==M.value&&(M.value=a)}),l.watch(()=>t.downloadHandler,e=>{const a=typeof e=="function"?e:void 0;a!==$.value&&($.value=a)}),l.watch(()=>t.multiCols,e=>{const a=!!e;a!==O.value&&(O.value=a)}),l.watch(()=>t.multiple,e=>{const a=!!e;a!==h.value&&(h.value=a)}),l.watch(()=>t.allowedTypes,e=>{const u=(Array.isArray(e)?e:typeof e=="string"?e.split(","):[]).map(r=>String(r).trim()).filter(Boolean);JSON.stringify(u)!==JSON.stringify(y.value)&&(y.value=u)}),l.watch(()=>t.disallowedTypes,e=>{const u=(Array.isArray(e)?e:typeof e=="string"?e.split(","):[]).map(r=>String(r).trim()).filter(Boolean);JSON.stringify(u)!==JSON.stringify(w.value)&&(w.value=u)}),l.watch(()=>t.maxFileSize,e=>{const a=e===1/0?1/0:Number(e);(Number.isFinite(a)||a===1/0)&&a!==b.value&&(b.value=a)}),l.watch(()=>t.maxTotalFileSize,e=>{const a=e===1/0?1/0:Number(e);(Number.isFinite(a)||a===1/0)&&a!==C.value&&(C.value=a)}),l.watch(()=>t.maxFileCount,e=>{const a=Number(e);Number.isInteger(a)&&a>=0&&a!==D.value&&(D.value=a)}),l.watch(()=>t.onDisallowedType,e=>{const a=typeof e=="function"?e:void 0;a!==g.value&&(g.value=a)}),l.watch(()=>t.onMaxFileSizeExceeded,e=>{const a=typeof e=="function"?e:void 0;a!==z.value&&(z.value=a)}),l.watch(()=>t.onMaxTotalSizeExceeded,e=>{const a=typeof e=="function"?e:void 0;a!==k.value&&(k.value=a)}),l.watch(()=>t.tabIndex,e=>{const a=e===null||e===""?null:Number(e);a!==L.value&&(L.value=a)}),l.watch(()=>t.class,()=>{P()}),{fileInputRef:F,id:c,props:t,visibleFiles:ne,filesetMethods:m,responsiveClassList:I,buttonClassList:ee,visibleClass:Z,editModeClass:Y,disable:B,readonly:X,addButtonText:E,removeButtonText:x,placeholder:A,isDragging:R,multiCols:O,multiple:h,accept:_,tabIndex:L,openFileDialog:te,removeFile:ie,onFileChange:oe,downloadFile:se,handleDragEnter:ue,handleDrop:de}}}),ve={key:0,class:"file-placeholder"},me=["onClick"],ye=["disabled","onClick"],be={class:"hison-fileset-remove-text"},ge={key:0,class:"add-btn-container"},pe={key:1,class:"hison-fileset-add-text"},he=["id","accept","multiple"];function we(t,o,F,n,m,c){const N=l.resolveComponent("HButton");return l.openBlock(),l.createElementBlock("div",{class:l.normalizeClass(["hison-wrapper",...t.responsiveClassList,t.visibleClass])},[l.createElementVNode("div",{class:l.normalizeClass(["hison-fileset",t.editModeClass]),style:l.normalizeStyle(t.props.style)},[l.createElementVNode("div",{class:l.normalizeClass(["file-list-wrapper",{"drag-over":t.isDragging}]),onDragover:o[0]||(o[0]=l.withModifiers(()=>{},["prevent"])),onDragenter:o[1]||(o[1]=l.withModifiers((...s)=>t.handleDragEnter&&t.handleDragEnter(...s),["prevent"])),onDragleave:o[2]||(o[2]=l.withModifiers(s=>t.isDragging=!1,["prevent"])),onDrop:o[3]||(o[3]=l.withModifiers((...s)=>t.handleDrop&&t.handleDrop(...s),["prevent"]))},[l.createElementVNode("div",{class:l.normalizeClass(["file-list",{"multi-cols":t.multiCols}])},[t.visibleFiles.length===0&&t.placeholder?(l.openBlock(),l.createElementBlock("div",ve,l.toDisplayString(t.placeholder),1)):(l.openBlock(!0),l.createElementBlock(l.Fragment,{key:1},l.renderList(t.visibleFiles,(s,d)=>(l.openBlock(),l.createElementBlock("div",{key:d,class:"file-item"},[l.renderSlot(t.$slots,"file-icon",{file:s}),l.createElementVNode("span",{class:l.normalizeClass(["file-name",{clickable:s.file||s.filePath}]),onClick:B=>t.downloadFile(s)},l.toDisplayString(s.fileName),11,me),t.readonly?l.createCommentVNode("",!0):(l.openBlock(),l.createElementBlock(l.Fragment,{key:0},[t.$slots["remove-button"]?l.renderSlot(t.$slots,"remove-button",{key:0,file:s,index:d,remove:()=>t.removeFile(d),disable:t.disable}):(l.openBlock(),l.createElementBlock("button",{key:1,class:l.normalizeClass(["delete-btn",{"hison-disable":t.disable}]),disabled:t.disable,onClick:B=>t.removeFile(d)},[l.createElementVNode("span",be,l.toDisplayString(t.removeButtonText),1)],10,ye))],64))]))),128))],2)],34),t.readonly?l.createCommentVNode("",!0):(l.openBlock(),l.createElementBlock("div",ge,[l.createVNode(N,{onClick:t.openFileDialog,onFocus:o[4]||(o[4]=s=>t.$emit("focus",t.filesetMethods)),onBlur:o[5]||(o[5]=s=>t.$emit("blur",t.filesetMethods)),id:`hison_fileset_add_button_${t.id}`,disable:t.disable,class:l.normalizeClass([...t.buttonClassList]),tabindex:t.tabIndex??void 0},{default:l.withCtx(()=>[t.$slots["add-button"]?l.renderSlot(t.$slots,"add-button",{key:0,add:t.openFileDialog}):(l.openBlock(),l.createElementBlock("span",pe,l.toDisplayString(t.addButtonText),1))]),_:3},8,["onClick","id","disable","class","tabindex"])])),l.createElementVNode("input",{id:`hison_fileset_${t.id}`,ref:"fileInputRef",type:"file",accept:t.accept||void 0,multiple:t.multiple,hidden:"",onChange:o[6]||(o[6]=(...s)=>t.onFileChange&&t.onFileChange(...s))},null,40,he)],6)],2)}const Ce=re._export_sfc(fe,[["render",we]]);exports.default=Ce;
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as Me, ref as i, computed as N, onMounted as ze, onBeforeUnmount as Ne, watch as o, nextTick as _, resolveComponent as xe, createElementBlock as F, openBlock as T, normalizeClass as x, createElementVNode as O, normalizeStyle as $e, createCommentVNode as de, withModifiers as W, toDisplayString as X, Fragment as re, renderList as Ae, renderSlot as ee, createVNode as ke, withCtx as Be } from "vue";
2
- import { E as Ee, y as D, g as Le, l as y, u as Oe, j as ve, t as le, h as S, e as je, a as Re, b as fe, r as He, c as Ve, d as Pe } from "./index-Cvhi7T4w.mjs";
2
+ import { E as Ee, y as D, g as Le, l as y, u as Oe, j as ve, t as le, h as S, e as je, a as Re, b as fe, r as He, c as Ve, d as Pe } from "./index-CGr5-mvg.mjs";
3
3
  import { _ as Ue } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
4
4
  const Je = {
5
5
  /**