@wpic/ui 0.9.15 → 0.9.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.
package/dist/wpic-ui.js CHANGED
@@ -1,5 +1,5 @@
1
- import { defineComponent as X, openBlock as e, createBlock as O, resolveDynamicComponent as B1, normalizeClass as g, withCtx as s1, createElementVNode as i, createCommentVNode as h, renderSlot as Q, createElementBlock as t, createVNode as L, unref as m, Fragment as I, renderList as c1, toDisplayString as v, useModel as G1, useSlots as q2, computed as y, ref as H, watch as M1, onBeforeUnmount as s2, mergeProps as X1, createTextVNode as m1, withDirectives as T1, normalizeStyle as h1, vModelDynamic as b0, mergeModels as _1, vModelCheckbox as J0, withModifiers as f1, onMounted as H2, withKeys as M2, inject as Q2, provide as g2, isRef as X0, nextTick as H1, Teleport as U1, vShow as G0, Transition as w2, getCurrentInstance as g0, vModelText as l2, useAttrs as _0, TransitionGroup as n3, useCssVars as e3, vModelSelect as c3, onUnmounted as t3, createStaticVNode as A1 } from "vue";
2
- import { Loader2 as a2, Calendar as z0, DollarSign as i3, X as $1, Check as Y1, Search as P2, ChevronUp as C0, ChevronDown as D1, ChevronsUpDown as J2, ChevronRight as j1, ChevronLeft as z2, Download as l3, Minimize as a3, Expand as o3, CalendarDays as T2, FolderSymlink as s3, Minimize2 as r3, Maximize2 as p3, Plus as y2, Trash2 as d3, Folder as w0, MoreHorizontal as w3, Bot as u3, Paperclip as K2, ThumbsUp as h3, ThumbsDown as m3, Copy as v3, Pencil as f3, MessageSquarePlus as b3, Square as g3, ArrowUp as z3, CircleAlert as C3, CircleCheck as k3, ShieldAlert as x3, Lightbulb as y3, PanelLeftOpen as M3, PanelLeftClose as V3, AlertTriangle as L3, Tag as F2, Clock as B3, RefreshCw as $3 } from "lucide-vue-next";
1
+ import { defineComponent as X, openBlock as e, createBlock as O, resolveDynamicComponent as B1, normalizeClass as g, withCtx as s1, createElementVNode as i, createCommentVNode as h, renderSlot as Q, createElementBlock as t, createVNode as L, unref as m, Fragment as I, renderList as c1, toDisplayString as v, useModel as G1, useSlots as q2, computed as y, ref as H, watch as M1, onBeforeUnmount as s2, mergeProps as U1, createTextVNode as m1, withDirectives as T1, normalizeStyle as h1, vModelDynamic as b0, mergeModels as _1, vModelCheckbox as J0, withModifiers as f1, onMounted as H2, withKeys as M2, inject as Q2, provide as g2, isRef as X0, nextTick as H1, Teleport as Y1, vShow as G0, Transition as w2, getCurrentInstance as g0, vModelText as l2, useAttrs as _0, TransitionGroup as n3, useCssVars as e3, vModelSelect as c3, onUnmounted as t3, createStaticVNode as A1 } from "vue";
2
+ import { Loader2 as a2, Calendar as z0, DollarSign as i3, X as $1, Check as q1, Search as P2, ChevronUp as C0, ChevronDown as D1, ChevronsUpDown as J2, ChevronRight as j1, ChevronLeft as z2, Download as l3, Minimize as a3, Expand as o3, CalendarDays as T2, FolderSymlink as s3, Minimize2 as r3, Maximize2 as p3, Plus as y2, Trash2 as d3, Folder as w0, MoreHorizontal as w3, Bot as u3, Paperclip as K2, ThumbsUp as h3, ThumbsDown as m3, Copy as v3, Pencil as f3, MessageSquarePlus as b3, Square as g3, ArrowUp as z3, CircleAlert as C3, CircleCheck as k3, ShieldAlert as x3, Lightbulb as y3, PanelLeftOpen as M3, PanelLeftClose as V3, AlertTriangle as L3, Tag as F2, Clock as B3, RefreshCw as $3 } from "lucide-vue-next";
3
3
  import { offset as u2, autoPlacement as A3, flip as h2, shift as m2, size as X2, useFloating as v2, autoUpdate as f2, arrow as S3 } from "@floating-ui/vue";
4
4
  import { defineStore as F3 } from "pinia";
5
5
  import { useEditor as H3, EditorContent as P3 } from "@tiptap/vue-3";
@@ -168,7 +168,7 @@ const D3 = {
168
168
  z.id = x, z.textContent = "input.winput-number::-webkit-outer-spin-button, input.winput-number::-webkit-inner-spin-button { display: none; } input.winput-number { -moz-appearance: textfield; }", document.head.appendChild(z);
169
169
  }
170
170
  }
171
- return (M, x) => (e(), t("div", X1(M.$attrs, { class: "wpic:w-full" }), [
171
+ return (M, x) => (e(), t("div", U1(M.$attrs, { class: "wpic:w-full" }), [
172
172
  c.label ? (e(), O(k0, {
173
173
  key: 0,
174
174
  required: c.required
@@ -268,7 +268,7 @@ const D3 = {
268
268
  w.value ? "wpic:border-zinc-900 wpic:bg-zinc-900 wpic:text-white wpic:dark:border-zinc-100 wpic:dark:bg-zinc-100 wpic:dark:text-zinc-950" : "wpic:border-zinc-300 wpic:bg-white wpic:text-transparent wpic:shadow-sm wpic:hover:border-zinc-400 wpic:dark:border-zinc-700 wpic:dark:bg-zinc-900 wpic:dark:hover:border-zinc-500"
269
269
  ]])
270
270
  }, [
271
- L(m(Y1), {
271
+ L(m(q1), {
272
272
  size: 11,
273
273
  "stroke-width": "2.6"
274
274
  })
@@ -827,11 +827,11 @@ const D3 = {
827
827
  if (!$.value || !W.value) return;
828
828
  const S = $.value, U = W.value, K = Math.min(S.row, U.row), d1 = Math.max(S.row, U.row), o1 = Math.min(S.cell, U.cell), R = Math.max(S.cell, U.cell), Y = /* @__PURE__ */ new Set(), _ = D.value[S.row], C1 = _?.cells[S.cell];
829
829
  for (let E1 = K; E1 <= d1; E1++) {
830
- const q1 = D.value[E1];
831
- if (q1)
830
+ const Q1 = D.value[E1];
831
+ if (Q1)
832
832
  for (let e2 = o1; e2 <= R; e2++) {
833
- const Q1 = q1.cells[e2];
834
- Q1?.editable && (Y.add(J(q1, Q1)), p("cell-change", { rowKey: q1.key, cellKey: Q1.key, value: S.value, row: q1, cell: Q1 }));
833
+ const J1 = Q1.cells[e2];
834
+ J1?.editable && (Y.add(J(Q1, J1)), p("cell-change", { rowKey: Q1.key, cellKey: J1.key, value: S.value, row: Q1, cell: J1 }));
835
835
  }
836
836
  }
837
837
  $.value = null, W.value = null, x.value = _ && C1 ? { cells: Y, source: J(_, C1) } : null;
@@ -1231,7 +1231,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
1231
1231
  transformOrigin: Z.value,
1232
1232
  zIndex: c.zIndex
1233
1233
  }));
1234
- return (F, t1) => (e(), O(U1, {
1234
+ return (F, t1) => (e(), O(Y1, {
1235
1235
  to: "body",
1236
1236
  class: "wpic-popover"
1237
1237
  }, [
@@ -1575,7 +1575,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
1575
1575
  const d = r.content.trim();
1576
1576
  return d === "Generating image..." || R(d);
1577
1577
  }
1578
- function q1(r) {
1578
+ function Q1(r) {
1579
1579
  return r.replace(/\[PROMPT\]([\s\S]*?)\[\/PROMPT\]/gi, "$1").replace(/\[SETTING\s+[^\]]*\]([\s\S]*?)\[\/SETTING\]/gi, "$1").replace(/\[TASK(?:\s+[^\]]*)?\]([\s\S]*?)\[\/TASK\]/gi, "").replace(/^\s*\[TASK(?:\s+[^\]]*)?\]\s*$/gim, "");
1580
1580
  }
1581
1581
  function e2(r) {
@@ -1585,7 +1585,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
1585
1585
  ).filter(Boolean).join(`
1586
1586
  `);
1587
1587
  }
1588
- function Q1(r) {
1588
+ function J1(r) {
1589
1589
  if (r.role !== "assistant" || r.streaming || r.error) return null;
1590
1590
  const d = U(r.content), u = P1(r.content), V = S(r.content);
1591
1591
  return !d && !u && !V ? null : { prompt: d, taskType: V, settings: u };
@@ -1725,7 +1725,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
1725
1725
  function H0(r, d, u) {
1726
1726
  const V = F0(r, d, u);
1727
1727
  if (V !== d) return V;
1728
- const C = Q1(u), A = v1(r);
1728
+ const C = J1(u), A = v1(r);
1729
1729
  if (!C && !A.length) return d;
1730
1730
  const n1 = /(?:prompt\s+(?:modifi[eé]|am[eé]lior[eé]|propos[eé])|prompt)\s*:/i;
1731
1731
  if (C?.prompt && n1.test(r))
@@ -1736,10 +1736,10 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
1736
1736
  for (const x1 of A)
1737
1737
  u1 = u1.replace(R1(x1.label), c2(x1.label, "setting", "model", x1.value));
1738
1738
  if (!C?.settings) return u1;
1739
- const k1 = (x1, W1, J1) => {
1740
- if (J1 == null) return;
1739
+ const k1 = (x1, W1, X1) => {
1740
+ if (X1 == null) return;
1741
1741
  const N1 = r.match(x1);
1742
- N1?.[1] && (u1 = u1.replace(R1(N1[1]), c2(N1[1], "setting", W1, J1)));
1742
+ N1?.[1] && (u1 = u1.replace(R1(N1[1]), c2(N1[1], "setting", W1, X1)));
1743
1743
  };
1744
1744
  if ((l1.includes("format") || l1.includes("aspect") || l1.includes("ratio")) && k1(/\b(\d{1,2}:\d{1,2})\b/, "aspect", C.settings.aspect), (l1.includes("résolution") || l1.includes("resolution")) && k1(/\b([1248]K)\b/i, "resolution", C.settings.resolution), (l1.includes("durée") || l1.includes("duration")) && k1(/\b(\d{1,3})\s*(?:s|sec|secondes?|seconds?)\b/i, "duration", C.settings.duration), l1.includes("fps") && k1(/\b(\d{1,3})\s*fps\b/i, "fps", C.settings.fps), C.settings.format) {
1745
1745
  const x1 = r.match(/\b(jpe?g|png|webp)\b/i)?.[1];
@@ -1748,7 +1748,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
1748
1748
  return u1;
1749
1749
  }
1750
1750
  function k2(r, d) {
1751
- const u = q1(r);
1751
+ const u = Q1(r);
1752
1752
  let V = R1(u);
1753
1753
  return d?.role === "assistant" && !d.streaming && !d.error && (V = H0(u, V, d)), V = V.replace(/`([^`]+)`/g, "<code>$1</code>").replace(/\*\*([^*]+)\*\*/g, "<strong>$1</strong>").replace(/__([^_]+)__/g, "<strong>$1</strong>").replace(/\*([^*]+)\*/g, "<em>$1</em>").replace(/_([^_]+)_/g, "<em>$1</em>").replace(/\[([^\]]+)\]\(((?:https?:\/\/|\/(?!\/))[^)\s]+)\)/g, (C, A, n1) => {
1754
1754
  const u1 = /^https?:\/\//.test(n1) ? ' target="_blank" rel="noopener noreferrer"' : "";
@@ -1765,7 +1765,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
1765
1765
  return `${F1}
1766
1766
 
1767
1767
  [[WPIC_CHAT_APPLY_PROMPT_${S2}]]`;
1768
- }), V = q1(u).replace(/\r\n/g, `
1768
+ }), V = Q1(u).replace(/\r\n/g, `
1769
1769
  `).split(`
1770
1770
  `), C = [];
1771
1771
  let A = !1, n1 = [], l1 = !1, u1 = !1;
@@ -1776,7 +1776,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
1776
1776
  }, W1 = () => {
1777
1777
  A && (C.push(`<pre><code>${R1(n1.join(`
1778
1778
  `))}</code></pre>`), n1 = [], A = !1);
1779
- }, J1 = (L1) => {
1779
+ }, X1 = (L1) => {
1780
1780
  const F1 = L1.trim().replace(/^\|/, "").replace(/\|$/, "").split("|").map((S1) => S1.trim());
1781
1781
  return F1.length > 1 && F1.every((S1) => /^:?-{3,}:?$/.test(S1));
1782
1782
  }, N1 = (L1) => L1.trim().replace(/^\|/, "").replace(/\|$/, "").split("|").map((F1) => F1.trim());
@@ -1801,7 +1801,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
1801
1801
  x1(), k1();
1802
1802
  continue;
1803
1803
  }
1804
- if (!u1 && S1.includes("|") && V[L1 + 1] && J1(V[L1 + 1])) {
1804
+ if (!u1 && S1.includes("|") && V[L1 + 1] && X1(V[L1 + 1])) {
1805
1805
  k1();
1806
1806
  const K1 = N1(S1);
1807
1807
  C.push('<div class="wpic-chat-table-wrap"><table><thead><tr>'), C.push(K1.map((O2) => `<th>${k2(O2, r)}</th>`).join("")), C.push("</tr></thead><tbody>"), u1 = !0, L1 += 1;
@@ -1830,7 +1830,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
1830
1830
  x1(), k1(), C.push(`<p>${k2(S1, r)}</p>`);
1831
1831
  }
1832
1832
  W1(), x1(), k1();
1833
- const i2 = E2(r).find((L1) => L1.type === "apply_all" && !L1.exactText), O1 = Q1(r);
1833
+ const i2 = E2(r).find((L1) => L1.type === "apply_all" && !L1.exactText), O1 = J1(r);
1834
1834
  if (!(r.role === "assistant" && o1(r.content))) {
1835
1835
  if (i2)
1836
1836
  C.push(`<p class="wpic-chat-actions-end">${e0(i2, c.applyAllLabel)}</p>`);
@@ -1908,7 +1908,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
1908
1908
  const u = d.target instanceof Element ? d.target.closest("[data-wpic-chat-action]") : null;
1909
1909
  if (u) {
1910
1910
  d.preventDefault(), d.stopPropagation();
1911
- const A = u.dataset.wpicChatAction, n1 = Q1(r);
1911
+ const A = u.dataset.wpicChatAction, n1 = J1(r);
1912
1912
  if (A === "metadata") {
1913
1913
  const l1 = u.dataset.wpicChatActionId, u1 = l1 ? A0(r, l1) : null;
1914
1914
  u1 && B2(r, u1);
@@ -2061,9 +2061,9 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
2061
2061
  if (!u) return;
2062
2062
  a1.value = !0;
2063
2063
  const V = r.clientX, C = r.clientY, A = u.width, n1 = u.height, l1 = u.left, u1 = u.top, k1 = (W1) => {
2064
- const J1 = W1.clientX - V, N1 = W1.clientY - C;
2064
+ const X1 = W1.clientX - V, N1 = W1.clientY - C;
2065
2065
  let i2 = A, O1 = n1, L1 = l1, F1 = u1;
2066
- d.includes("e") && (i2 = Math.max(c.minWidth, A + J1)), d.includes("s") && (O1 = Math.max(c.minHeight, n1 + N1)), d.includes("w") && (i2 = Math.max(c.minWidth, A - J1), L1 = l1 + (A - i2)), d.includes("n") && (O1 = Math.max(c.minHeight, n1 - N1), F1 = Math.max(c.topOffset, u1 + (n1 - O1))), s("update:width", Math.min(i2, window.innerWidth)), s("update:height", Math.min(O1, window.innerHeight - c.topOffset)), c.docked || (s("update:x", Math.max(0, L1)), s("update:y", Math.max(c.topOffset, F1)));
2066
+ d.includes("e") && (i2 = Math.max(c.minWidth, A + X1)), d.includes("s") && (O1 = Math.max(c.minHeight, n1 + N1)), d.includes("w") && (i2 = Math.max(c.minWidth, A - X1), L1 = l1 + (A - i2)), d.includes("n") && (O1 = Math.max(c.minHeight, n1 - N1), F1 = Math.max(c.topOffset, u1 + (n1 - O1))), s("update:width", Math.min(i2, window.innerWidth)), s("update:height", Math.min(O1, window.innerHeight - c.topOffset)), c.docked || (s("update:x", Math.max(0, L1)), s("update:y", Math.max(c.topOffset, F1)));
2067
2067
  }, x1 = () => {
2068
2068
  a1.value = !1, document.removeEventListener("mousemove", k1), document.removeEventListener("mouseup", x1);
2069
2069
  };
@@ -2086,7 +2086,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
2086
2086
  x2(), H1(t1), document.addEventListener("pointerdown", i0, !0);
2087
2087
  }), s2(() => {
2088
2088
  F?.disconnect(), z && window.clearTimeout(z), r2(), document.removeEventListener("pointerdown", i0, !0);
2089
- }), (r, d) => (e(), O(U1, { to: "body" }, [
2089
+ }), (r, d) => (e(), O(Y1, { to: "body" }, [
2090
2090
  L(w2, {
2091
2091
  "enter-active-class": "wpic:transition-opacity wpic:duration-150",
2092
2092
  "enter-from-class": "wpic:opacity-0",
@@ -2396,7 +2396,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
2396
2396
  ]),
2397
2397
  _: 1
2398
2398
  }),
2399
- (e(), O(U1, { to: "body" }, [
2399
+ (e(), O(Y1, { to: "body" }, [
2400
2400
  q.value === `loose-${u.id}` ? (e(), t("div", {
2401
2401
  key: 0,
2402
2402
  style: h1(D.value),
@@ -2578,7 +2578,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
2578
2578
  title: n.copyLabel,
2579
2579
  onClick: (C) => U0(u.content, j2(u, V))
2580
2580
  }, [
2581
- (e(), O(B1(a.value === j2(u, V) ? m(Y1) : m(v3)), { size: 14 }))
2581
+ (e(), O(B1(a.value === j2(u, V) ? m(q1) : m(v3)), { size: 14 }))
2582
2582
  ], 8, q4),
2583
2583
  u.role === "user" ? (e(), t("button", {
2584
2584
  key: 1,
@@ -3132,7 +3132,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
3132
3132
  key: 0,
3133
3133
  class: g(Z(E.value) ? "wpic:flex wpic:items-center wpic:justify-center wpic:w-3.5 wpic:h-3.5 wpic:rounded wpic:shrink-0 wpic:border wpic:border-indigo-500 wpic:bg-indigo-500" : "wpic:flex wpic:items-center wpic:justify-center wpic:w-3.5 wpic:h-3.5 wpic:rounded wpic:shrink-0 wpic:border wpic:border-zinc-300 wpic:dark:border-zinc-600 wpic:bg-transparent")
3134
3134
  }, [
3135
- Z(E.value) ? (e(), O(m(Y1), {
3135
+ Z(E.value) ? (e(), O(m(q1), {
3136
3136
  key: 0,
3137
3137
  size: 9,
3138
3138
  style: { color: "white" },
@@ -3272,7 +3272,7 @@ const I5 = ["data-wpic-theme"], n2 = /* @__PURE__ */ X({
3272
3272
  class: "wpic:shrink-0 wpic:text-zinc-400"
3273
3273
  })) : h("", !0),
3274
3274
  i("span", D6, v(o.label), 1),
3275
- n.modelValue === o.value ? (e(), O(m(Y1), {
3275
+ n.modelValue === o.value ? (e(), O(m(q1), {
3276
3276
  key: 2,
3277
3277
  size: 13,
3278
3278
  class: "wpic:shrink-0 wpic:text-indigo-500"
@@ -3367,7 +3367,7 @@ const R6 = {
3367
3367
  return M1(() => [c.disabled, c.checkable, c.editable], () => {
3368
3368
  (c.disabled || c.checkable || !c.editable) && (f.value = !1);
3369
3369
  }), (M, x) => (e(), t(I, null, [
3370
- (e(), O(B1(b.value && !n.removable ? "button" : "span"), X1({
3370
+ (e(), O(B1(b.value && !n.removable ? "button" : "span"), U1({
3371
3371
  ref_key: "anchorRef",
3372
3372
  ref: l
3373
3373
  }, { ...k.value ? {} : a.value, ...b.value && !n.removable ? P.value : {} }, {
@@ -3383,7 +3383,7 @@ const R6 = {
3383
3383
  onClick: x[2] || (x[2] = (z) => !n.removable && W())
3384
3384
  }), {
3385
3385
  default: s1(() => [
3386
- (e(), O(B1(k.value ? "button" : "span"), X1(k.value ? { ...a.value, ...P.value } : {}, {
3386
+ (e(), O(B1(k.value ? "button" : "span"), U1(k.value ? { ...a.value, ...P.value } : {}, {
3387
3387
  class: k.value ? "wpic:inline-flex wpic:items-center wpic:gap-1.5 wpic:bg-transparent wpic:p-0 wpic:[font:inherit] wpic:cursor-pointer wpic:disabled:cursor-not-allowed wpic:focus-visible:outline-2 wpic:focus-visible:outline-offset-2 wpic:focus-visible:outline-current" : "wpic:contents",
3388
3388
  onClick: x[0] || (x[0] = (z) => k.value && W())
3389
3389
  }), {
@@ -3665,6 +3665,7 @@ const R6 = {
3665
3665
  title: {},
3666
3666
  subtitle: {},
3667
3667
  size: {},
3668
+ bodyScroll: { type: Boolean, default: !0 },
3668
3669
  zIndex: {},
3669
3670
  hideClose: { type: Boolean },
3670
3671
  noPadding: { type: Boolean },
@@ -3674,11 +3675,11 @@ const R6 = {
3674
3675
  emits: ["close"],
3675
3676
  setup(n, { emit: w }) {
3676
3677
  const c = V2(), s = w, p = H(!1);
3677
- return g2("wpic-pagination-url-sync", !1), (l, o) => (e(), O(U1, { to: "body" }, [
3678
+ return g2("wpic-pagination-url-sync", !1), (l, o) => (e(), O(Y1, { to: "body" }, [
3678
3679
  i("div", {
3679
3680
  style: h1(m(c)?.variables),
3680
3681
  "data-wpic-theme": m(c)?.mode,
3681
- class: g([{ "wpic-theme": m(c), dark: m(c)?.mode === "dark" }, "wpic-modal-overlay wpic:flex wpic:items-center wpic:justify-center wpic:bg-black/50 wpic:backdrop-blur-sm wpic:px-4", n.zIndex]),
3682
+ class: g([{ "wpic-theme": m(c), dark: m(c)?.mode === "dark" }, "wpic-modal-overlay wpic:flex wpic:items-center wpic:justify-center wpic:bg-black/50 wpic:backdrop-blur-sm", n.size === "screen" ? "wpic:px-3" : "wpic:px-4", n.zIndex]),
3682
3683
  onMousedown: o[2] || (o[2] = f1((f) => p.value = !0, ["self"])),
3683
3684
  onMouseup: o[3] || (o[3] = f1((f) => p.value && s("close"), ["self"]))
3684
3685
  }, [
@@ -3691,7 +3692,7 @@ const R6 = {
3691
3692
  class: g([
3692
3693
  "wpic-modal-panel wpic:w-full wpic:mx-auto wpic:flex wpic:flex-col",
3693
3694
  n.frameless ? "wpic-modal-panel--frameless" : "wpic:bg-white wpic:dark:bg-zinc-900 wpic:rounded-xl wpic:border wpic:border-zinc-200 wpic:dark:border-zinc-800 wpic:shadow-2xl",
3694
- n.size === "sm" ? "wpic-modal-sm" : n.size === "lg" ? "wpic-modal-lg" : n.size === "xl" ? "wpic-modal-xl" : n.size === "2xl" ? "wpic-modal-2xl" : n.size === "full" ? "wpic-modal-full" : "wpic-modal-md"
3695
+ n.size === "screen" ? "wpic-modal-screen" : n.size === "sm" ? "wpic-modal-sm" : n.size === "lg" ? "wpic-modal-lg" : n.size === "xl" ? "wpic-modal-xl" : n.size === "2xl" ? "wpic-modal-2xl" : n.size === "full" ? "wpic-modal-full" : "wpic-modal-md"
3695
3696
  ])
3696
3697
  }, [
3697
3698
  n.title || l.$slots.header || !n.hideClose ? (e(), t("div", z9, [
@@ -3712,7 +3713,7 @@ const R6 = {
3712
3713
  ]))
3713
3714
  ])) : h("", !0),
3714
3715
  i("div", {
3715
- class: g(["wpic:flex-1 wpic:overflow-y-auto", n.noPadding ? "" : "wpic:px-5 wpic:py-4"])
3716
+ class: g(["wpic:flex-1 wpic:min-h-0", n.bodyScroll === !1 ? "wpic:overflow-hidden" : "wpic:overflow-y-auto", n.noPadding ? "" : "wpic:px-5 wpic:py-4"])
3716
3717
  }, [
3717
3718
  Q(l.$slots, "default")
3718
3719
  ], 2),
@@ -3741,7 +3742,7 @@ const R6 = {
3741
3742
  emits: ["close"],
3742
3743
  setup(n, { emit: w }) {
3743
3744
  const c = w;
3744
- return g2("wpic-pagination-url-sync", !1), (s, p) => (e(), O(U1, { to: "body" }, [
3745
+ return g2("wpic-pagination-url-sync", !1), (s, p) => (e(), O(Y1, { to: "body" }, [
3745
3746
  i("div", {
3746
3747
  class: g(["wpic:flex wpic:items-center wpic:justify-center wpic:bg-black/50 wpic:backdrop-blur-sm wpic:px-4", n.zIndex ?? "wpic:z-[60]"]),
3747
3748
  style: { position: "fixed", top: "0", left: "0", right: "0", bottom: "0", width: "100vw", height: "100vh" },
@@ -3819,7 +3820,7 @@ const R6 = {
3819
3820
  __name: "ToastContainer",
3820
3821
  setup(n) {
3821
3822
  const w = M9();
3822
- return (c, s) => (e(), O(U1, { to: "body" }, [
3823
+ return (c, s) => (e(), O(Y1, { to: "body" }, [
3823
3824
  i("div", V9, [
3824
3825
  L(n3, {
3825
3826
  tag: "div",
@@ -4009,7 +4010,7 @@ const R6 = {
4009
4010
  }, [
4010
4011
  i("span", K9, v(f + 1), 1),
4011
4012
  i("span", U9, v(o.label), 1),
4012
- o.completed ? (e(), O(m(Y1), {
4013
+ o.completed ? (e(), O(m(q1), {
4013
4014
  key: 0,
4014
4015
  size: 17,
4015
4016
  class: "wpic:shrink-0 wpic:text-indigo-500",
@@ -4086,7 +4087,7 @@ const vi = /* @__PURE__ */ I1(t7, [["render", l7]]), a7 = ["placeholder", "rows"
4086
4087
  emits: ["update:modelValue"],
4087
4088
  setup(n) {
4088
4089
  const w = G1(n, "modelValue");
4089
- return (c, s) => T1((e(), t("textarea", X1({
4090
+ return (c, s) => T1((e(), t("textarea", U1({
4090
4091
  "onUpdate:modelValue": s[0] || (s[0] = (p) => w.value = p),
4091
4092
  placeholder: n.placeholder ?? "",
4092
4093
  rows: n.rows ?? 4
@@ -4112,7 +4113,7 @@ const vi = /* @__PURE__ */ I1(t7, [["render", l7]]), a7 = ["placeholder", "rows"
4112
4113
  emits: ["update:modelValue"],
4113
4114
  setup(n) {
4114
4115
  const w = G1(n, "modelValue");
4115
- return (c, s) => T1((e(), t("input", X1({
4116
+ return (c, s) => T1((e(), t("input", U1({
4116
4117
  "onUpdate:modelValue": s[0] || (s[0] = (p) => w.value = p),
4117
4118
  type: n.type ?? "text",
4118
4119
  placeholder: n.placeholder ?? ""
@@ -4142,7 +4143,7 @@ const vi = /* @__PURE__ */ I1(t7, [["render", l7]]), a7 = ["placeholder", "rows"
4142
4143
  emits: ["update:modelValue"],
4143
4144
  setup(n) {
4144
4145
  const w = G1(n, "modelValue");
4145
- return (c, s) => T1((e(), t("select", X1({
4146
+ return (c, s) => T1((e(), t("select", U1({
4146
4147
  "onUpdate:modelValue": s[0] || (s[0] = (p) => w.value = p)
4147
4148
  }, c.$attrs, {
4148
4149
  class: [
@@ -4452,7 +4453,7 @@ const xi = /* @__PURE__ */ I1(P7, [["render", T7]]), yi = /* @__PURE__ */ X({
4452
4453
  emits: ["confirm", "cancel"],
4453
4454
  setup(n, { emit: w }) {
4454
4455
  const c = w;
4455
- return g2("wpic-pagination-url-sync", !1), (s, p) => (e(), O(U1, { to: "body" }, [
4456
+ return g2("wpic-pagination-url-sync", !1), (s, p) => (e(), O(Y1, { to: "body" }, [
4456
4457
  i("div", {
4457
4458
  class: "wpic:fixed wpic:inset-0 wpic:flex wpic:items-center wpic:justify-center wpic:bg-black/60 wpic:backdrop-blur-sm",
4458
4459
  style: { "z-index": "100010" },
@@ -4587,7 +4588,7 @@ const Bi = /* @__PURE__ */ X({
4587
4588
  function b() {
4588
4589
  s("update:modelValue", !1);
4589
4590
  }
4590
- return (k, a) => (e(), O(U1, {
4591
+ return (k, a) => (e(), O(Y1, {
4591
4592
  to: "body",
4592
4593
  class: "wpic-slide-panel"
4593
4594
  }, [
@@ -5056,7 +5057,7 @@ const Q7 = { class: "wpic-tag-input" }, J7 = {
5056
5057
  class: "wpic:p-0.5 wpic:text-zinc-400 wpic:dark:text-zinc-500 wpic:hover:text-green-500 wpic:transition",
5057
5058
  onClick: (C1) => o1(_)
5058
5059
  }, [
5059
- L(m(Y1), { size: 12 })
5060
+ L(m(q1), { size: 12 })
5060
5061
  ], 8, g8),
5061
5062
  i("button", {
5062
5063
  class: "wpic:p-0.5 wpic:text-zinc-400 wpic:dark:text-zinc-500 wpic:hover:text-gray-900 wpic:dark:hover:text-white wpic:transition",
@@ -5386,6 +5387,7 @@ const Q7 = { class: "wpic-tag-input" }, J7 = {
5386
5387
  ]));
5387
5388
  }
5388
5389
  }), W8 = ["data-wpic-theme"], D8 = /* @__PURE__ */ X({
5390
+ inheritAttrs: !1,
5389
5391
  __name: "WTooltip",
5390
5392
  props: {
5391
5393
  content: {},
@@ -5422,20 +5424,21 @@ const Q7 = { class: "wpic-tag-input" }, J7 = {
5422
5424
  return s2(M), M1(() => w.disabled, (x) => {
5423
5425
  x && M();
5424
5426
  }), (x, z) => (e(), t(I, null, [
5425
- i("span", {
5427
+ i("span", U1({
5426
5428
  ref_key: "reference",
5427
- ref: s,
5428
- class: g(["wpic-tooltip", w.inline === !1 ? void 0 : "wpic:inline-flex"]),
5429
+ ref: s
5430
+ }, x.$attrs, {
5431
+ class: ["wpic-tooltip", w.inline === !1 ? "wpic:block" : "wpic:inline-flex"],
5429
5432
  onMouseenter: W,
5430
5433
  onMouseleave: M,
5431
5434
  onClickCapture: M,
5432
5435
  onFocusin: W,
5433
5436
  onFocusout: M,
5434
5437
  onKeydown: M2(M, ["esc"])
5435
- }, [
5438
+ }), [
5436
5439
  Q(x.$slots, "default")
5437
- ], 34),
5438
- (e(), O(U1, { to: "body" }, [
5440
+ ], 16),
5441
+ (e(), O(Y1, { to: "body" }, [
5439
5442
  L(w2, {
5440
5443
  "enter-active-class": "wpic:transition-opacity wpic:duration-150 wpic:ease-out",
5441
5444
  "enter-from-class": "wpic:opacity-0",
@@ -5786,7 +5789,7 @@ const Q7 = { class: "wpic-tag-input" }, J7 = {
5786
5789
  key: 2,
5787
5790
  class: g(["wpic-pill-indicator", n.multiple ? "wpic:rounded-[4px]" : "wpic:rounded-full", s(k.value) ? "wpic-pill-indicator--active" : "wpic-pill-indicator--idle"])
5788
5791
  }, [
5789
- n.multiple && s(k.value) ? (e(), O(m(Y1), {
5792
+ n.multiple && s(k.value) ? (e(), O(m(q1), {
5790
5793
  key: 0,
5791
5794
  size: 10,
5792
5795
  "stroke-width": "2.8"
@@ -5821,7 +5824,7 @@ const Q7 = { class: "wpic-tag-input" }, J7 = {
5821
5824
  key: 2,
5822
5825
  class: g(["wpic-pill-indicator", n.multiple ? "wpic:rounded-[4px]" : "wpic:rounded-full", s(k.value) ? "wpic-pill-indicator--active" : "wpic-pill-indicator--idle"])
5823
5826
  }, [
5824
- n.multiple && s(k.value) ? (e(), O(m(Y1), {
5827
+ n.multiple && s(k.value) ? (e(), O(m(q1), {
5825
5828
  key: 0,
5826
5829
  size: 10,
5827
5830
  "stroke-width": "2.8"
@@ -5945,7 +5948,7 @@ const Q7 = { class: "wpic-tag-input" }, J7 = {
5945
5948
  class: "wpic:w-full wpic:h-full wpic:object-cover"
5946
5949
  }, null, 8, bn),
5947
5950
  n.selected ? (e(), t("div", gn, [
5948
- L(m(Y1), {
5951
+ L(m(q1), {
5949
5952
  size: 20,
5950
5953
  class: "wpic:text-white wpic:drop-shadow"
5951
5954
  })
@@ -6170,7 +6173,7 @@ const Q7 = { class: "wpic-tag-input" }, J7 = {
6170
6173
  class: "wpic:shrink-0 wpic:text-base",
6171
6174
  style: h1({ width: z.width ?? "150px" })
6172
6175
  }, [
6173
- L(Y2, X1({ ref_for: !0 }, n.selectLabels, {
6176
+ L(Y2, U1({ ref_for: !0 }, n.selectLabels, {
6174
6177
  "model-value": o(z.modelKey),
6175
6178
  options: z.options,
6176
6179
  placeholder: z.placeholder,
@@ -6202,7 +6205,7 @@ const Q7 = { class: "wpic-tag-input" }, J7 = {
6202
6205
  "onUpdate:modelValue": (a1) => a(z.modelKey, a1)
6203
6206
  }, null, 8, ["model-value", "options", "size", "multiple", "grouped", "class", "onUpdate:modelValue"]),
6204
6207
  z.responsive === "select" ? (e(), t("div", Fn, [
6205
- L(Y2, X1({ ref_for: !0 }, n.selectLabels, {
6208
+ L(Y2, U1({ ref_for: !0 }, n.selectLabels, {
6206
6209
  "model-value": o(z.modelKey),
6207
6210
  options: z.options,
6208
6211
  clearable: !1,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wpic/ui",
3
- "version": "0.9.15",
3
+ "version": "0.9.17",
4
4
  "type": "module",
5
5
  "description": "WPIC shared Vue 3 component library",
6
6
  "publishConfig": {