pgo-ui 1.0.25 → 1.0.26

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.
@@ -0,0 +1,4 @@
1
+ import { _ as f } from "./index-Dn1_KgRu.js";
2
+ export {
3
+ f as default
4
+ };
@@ -454,7 +454,7 @@ const Xv = { class: "flex-1" }, Jv = ["innerHTML"], Zv = {
454
454
  let i = null, u = 0, c = o.timeout, f = !1, p = 0, d = 0, h = 0;
455
455
  o.icon, o.icon || G(o.variant);
456
456
  function m(L) {
457
- return L == null ? "" : typeof L == "string" ? L : typeof L == "number" || typeof L == "boolean" ? String(L) : Array.isArray(L) ? L.map((re) => typeof re == "string" ? `<span>${re}</span>` : typeof re == "object" && re !== null ? Object.entries(re).map(([P, H]) => `<span><b>${P}:</b> ${H}</span>`).join(" ") : `<span>${String(re)}</span>`).join(" ") : typeof L == "object" ? Object.entries(L).map(([re, P]) => Array.isArray(P) ? P.map((H) => `<span><b>${re}:</b> ${H}</span>`).join(" ") : `<span><b>${re}:</b> ${P}</span>`).join(" ") : String(L);
457
+ return L == null ? "" : typeof L == "string" ? L : typeof L == "number" || typeof L == "boolean" ? String(L) : Array.isArray(L) ? L.map((re) => typeof re == "string" ? `<span>${re}</span>` : typeof re == "object" && re !== null ? Object.entries(re).map(([P, H]) => `<span><b>${P}:</b> ${H}</span>`).join(" ") : `<span>${String(re)}</span>`).join(" ") : typeof L == "object" ? Object.entries(L).map(([re, P]) => Array.isArray(P) ? P.map((H) => `<p><b>${re}:</b> ${H}</p>`).join("") : `<p><b>${re}:</b> ${P}</p>`).join("") : String(L);
458
458
  }
459
459
  function v() {
460
460
  o.timeout !== 0 && (g(), u = Date.now(), i = window.setTimeout(() => {
@@ -581,7 +581,7 @@ const Xv = { class: "flex-1" }, Jv = ["innerHTML"], Zv = {
581
581
  y("div", Xv, [
582
582
  y("div", {
583
583
  class: "text-sm leading-tight",
584
- innerHTML: w(o).message
584
+ innerHTML: m(w(o).message)
585
585
  }, null, 8, Jv),
586
586
  w(o).actions?.length ? (x(), A("div", Zv, [
587
587
  (x(!0), A(Te, null, De(w(o).actions, (P, H) => (x(), A("button", {
@@ -17177,7 +17177,7 @@ return (${ye});`)();
17177
17177
  }
17178
17178
  }, W = O(() => {
17179
17179
  const P = {}, H = new Set(c.form.fields.map((se) => se.inputType?.toLowerCase()));
17180
- return (H.has("search") || H.has("inputsearch")) && (P.search = $e(() => Promise.resolve().then(() => yf)), P.searchbox = $e(() => Promise.resolve().then(() => yf))), H.has("select") && (P.select = $e(() => Promise.resolve().then(() => vc))), H.has("textarea") && (P.textarea = $e(() => Promise.resolve().then(() => lh))), (H.has("textfield") || H.has("text") || H.has("string")) && (P.textfield = $e(() => Promise.resolve().then(() => uo)), P.text = $e(() => Promise.resolve().then(() => uo)), P.string = $e(() => Promise.resolve().then(() => uo))), (H.has("datepicker") || H.has("date")) && (P.datepicker = $e(() => Promise.resolve().then(() => ss)), P.date = $e(() => Promise.resolve().then(() => ss))), H.has("chipgroup") && (P.chipgroup = $e(() => Promise.resolve().then(() => mm))), H.has("checkbox") && (P.checkbox = $e(() => Promise.resolve().then(() => W0))), H.has("radio") && (P.radio = $e(() => import("./Radio-BleGzxaE.js"))), (H.has("numberfield") || H.has("number")) && (P.numberfield = $e(() => Promise.resolve().then(() => mf)), P.number = $e(() => Promise.resolve().then(() => mf))), (H.has("file") || H.has("filefield")) && (P.file = $e(() => Promise.resolve().then(() => ff)), P.filefield = $e(() => Promise.resolve().then(() => ff))), P;
17180
+ return (H.has("search") || H.has("inputsearch")) && (P.search = $e(() => Promise.resolve().then(() => yf)), P.searchbox = $e(() => Promise.resolve().then(() => yf))), H.has("select") && (P.select = $e(() => Promise.resolve().then(() => vc))), H.has("textarea") && (P.textarea = $e(() => Promise.resolve().then(() => lh))), (H.has("textfield") || H.has("text") || H.has("string")) && (P.textfield = $e(() => Promise.resolve().then(() => uo)), P.text = $e(() => Promise.resolve().then(() => uo)), P.string = $e(() => Promise.resolve().then(() => uo))), (H.has("datepicker") || H.has("date")) && (P.datepicker = $e(() => Promise.resolve().then(() => ss)), P.date = $e(() => Promise.resolve().then(() => ss))), H.has("chipgroup") && (P.chipgroup = $e(() => Promise.resolve().then(() => mm))), H.has("checkbox") && (P.checkbox = $e(() => Promise.resolve().then(() => W0))), H.has("radio") && (P.radio = $e(() => import("./Radio-5R-9AZMK.js"))), (H.has("numberfield") || H.has("number")) && (P.numberfield = $e(() => Promise.resolve().then(() => mf)), P.number = $e(() => Promise.resolve().then(() => mf))), (H.has("file") || H.has("filefield")) && (P.file = $e(() => Promise.resolve().then(() => ff)), P.filefield = $e(() => Promise.resolve().then(() => ff))), P;
17181
17181
  }), j = (P) => {
17182
17182
  const H = P?.toLowerCase() || "textfield";
17183
17183
  return W.value[H] || W.value.textfield;
package/dist/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import { a as o, A as r, B as t, b as i, c as n, d as l, e as m, C as p, f as d, g as T, h as c, i as u, j as x, D as C, k as b, l as h, m as w, n as D, o as B, E as F, p as P, q as g, r as I, s as S, t as v, L as A, u as N, v as R, M as f, w as k, N as y, x as M, y as E, z as L, F as V, G, S as H, H as O, I as U, J as j, T as q, K as z, O as J, P as K, Q, R as W, U as X, V as Y, W as Z, X as $, Y as _, Z as aa, $ as sa, a0 as ea, a1 as oa, a2 as ra, a3 as ta, a4 as ia } from "./index-CVFETMBS.js";
1
+ import { a as o, A as r, B as t, b as i, c as n, d as l, e as m, C as p, f as d, g as T, h as c, i as u, j as x, D as C, k as b, l as h, m as w, n as D, o as B, E as F, p as P, q as g, r as I, s as S, t as v, L as A, u as N, v as R, M as f, w as k, N as y, x as M, y as E, z as L, F as V, G, S as H, H as O, I as U, J as j, T as q, K as z, O as J, P as K, Q, R as W, U as X, V as Y, W as Z, X as $, Y as _, Z as aa, $ as sa, a0 as ea, a1 as oa, a2 as ra, a3 as ta, a4 as ia } from "./index-Dn1_KgRu.js";
2
2
  import "vue";
3
3
  export {
4
4
  o as AppBar,
package/dist/index.umd.js CHANGED
@@ -1,4 +1,4 @@
1
- (function(ge,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router"],e):(ge=typeof globalThis<"u"?globalThis:ge||self,e(ge.PgoUi={},ge.Vue,ge.VueRouter))})(this,(function(ge,e,T0){"use strict";const H0={default:{light:{color:{text:"#0b0b0b",textSecondary:"#6b7280",background:"#ffffff",surface:"#f7f7f8",surfaceElevated:"#f9fafb",primary:"#950050",primaryContainer:"#f9fafb",primaryText:"#ffffff",secondary:"#64748b",secondaryText:"#ffffff",muted:"#6b7280",border:"rgba(0,0,0,0.06)",borderLight:"rgba(0,0,0,0.04)",borderHeavy:"rgba(0,0,0,0.12)",divider:"rgba(0,0,0,0.08)",overlay:"rgba(0,0,0,0.5)",success:"#10b981",warning:"#f59e0b",error:"#ef4444",info:"#3b82f6",focus:"#950050",shadow:"#000000",disable:"#9ca3af"},radius:{sm:"4px",md:"8px",lg:"12px",xl:"16px",full:"9999px"},shadow:{sm:"0 1px 3px rgba(2,6,23,0.06)",md:"0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24)",lg:"0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06)",xl:"0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05)"},elevation:{0:"none",1:"0 1px 3px rgba(2,6,23,0.06)",2:"0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24)",3:"0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06)",4:"0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05)"}},dark:{color:{text:"#e6eef8",textSecondary:"#9aa4b2",background:"#0b1220",surface:"#0f1724",surfaceElevated:"#1a2332",primary:"#3b82f6",primaryText:"#061225",secondary:"#64748b",secondaryText:"#f1f5f9",muted:"#9aa4b2",border:"rgba(255,255,255,0.08)",borderLight:"rgba(255,255,255,0.05)",borderHeavy:"rgba(255,255,255,0.12)",divider:"rgba(255,255,255,0.1)",overlay:"rgba(0,0,0,0.7)",success:"#10b981",warning:"#f59e0b",error:"#ef4444",info:"#3b82f6",focus:"#3b82f6",shadow:"#000000",disable:"#4b5563"},radius:{sm:"4px",md:"8px",lg:"12px",xl:"16px",full:"9999px"},shadow:{sm:"0 1px 4px rgba(2,6,23,0.6)",md:"0 4px 6px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.1)",lg:"0 10px 15px rgba(0, 0, 0, 0.3), 0 4px 6px rgba(0, 0, 0, 0.2)",xl:"0 20px 25px rgba(0, 0, 0, 0.4), 0 10px 10px rgba(0, 0, 0, 0.3)"},elevation:{0:"none",1:"0 1px 4px rgba(2,6,23,0.6)",2:"0 4px 6px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.1)",3:"0 10px 15px rgba(0, 0, 0, 0.3), 0 4px 6px rgba(0, 0, 0, 0.2)",4:"0 20px 25px rgba(0, 0, 0, 0.4), 0 10px 10px rgba(0, 0, 0, 0.3)"}}},classic:{light:{color:{text:"#1b1b18",textSecondary:"#7a6e6e",background:"#fffdf6",surface:"#fff7e6",surfaceElevated:"#fffdf6",primary:"#9b4dca",primaryText:"#ffffff",secondary:"#8b7355",secondaryText:"#ffffff",muted:"#7a6e6e",border:"rgba(27,27,24,0.08)",borderLight:"rgba(27,27,24,0.05)",borderHeavy:"rgba(27,27,24,0.12)",divider:"rgba(27,27,24,0.1)",overlay:"rgba(27,27,24,0.4)",success:"#10b981",warning:"#f59e0b",error:"#ef4444",info:"#3b82f6",focus:"#950050"},radius:{sm:"3px",md:"6px",lg:"10px",xl:"14px",full:"9999px"},shadow:{sm:"0 1px 2px rgba(0,0,0,0.04)",md:"0 2px 4px rgba(0,0,0,0.06)",lg:"0 4px 6px rgba(0,0,0,0.08)",xl:"0 10px 15px rgba(0,0,0,0.1)"},elevation:{0:"none",1:"0 1px 2px rgba(0,0,0,0.04)",2:"0 2px 4px rgba(0,0,0,0.06)",3:"0 4px 6px rgba(0,0,0,0.08)",4:"0 10px 15px rgba(0,0,0,0.1)"}},dark:{color:{text:"#f6f3ee",textSecondary:"#a8a09a",background:"#11100f",surface:"#191817",surfaceElevated:"#242220",primary:"#b083e8",primaryText:"#0f0b10",secondary:"#9b8b7d",secondaryText:"#f6f3ee",muted:"#a8a09a",border:"rgba(246,243,238,0.08)",borderLight:"rgba(246,243,238,0.05)",borderHeavy:"rgba(246,243,238,0.12)",divider:"rgba(246,243,238,0.1)",overlay:"rgba(17,16,15,0.7)",success:"#10b981",warning:"#f59e0b",error:"#ef4444",info:"#3b82f6",focus:"#9b4dca"},radius:{sm:"3px",md:"6px",lg:"10px",xl:"14px",full:"9999px"},shadow:{sm:"0 1px 3px rgba(0,0,0,0.6)",md:"0 2px 6px rgba(0,0,0,0.7)",lg:"0 4px 10px rgba(0,0,0,0.8)",xl:"0 10px 20px rgba(0,0,0,0.9)"},elevation:{0:"none",1:"0 1px 3px rgba(0,0,0,0.6)",2:"0 2px 6px rgba(0,0,0,0.7)",3:"0 4px 10px rgba(0,0,0,0.8)",4:"0 10px 20px rgba(0,0,0,0.9)"}}},sap:{light:{color:{text:"#1d1d1f",background:"#f4f7f6",surface:"#ffffff",primary:"#006c8e",primaryText:"#ffffff",secondary:"#7d8a91",muted:"#7d8a91",success:"#4CAF50",error:"#F44336",warning:"#FF9800",info:"#2196F3"},radius:{sm:"4px",md:"8px",lg:"12px"},shadow:{sm:"0 1px 4px rgba(0, 0, 0, 0.1)",md:"0 4px 6px rgba(0, 0, 0, 0.1)",lg:"0 10px 20px rgba(0, 0, 0, 0.15)"}}}},Bi="vts:theme",D0=typeof window<"u"&&window.matchMedia?window.matchMedia("(prefers-color-scheme: dark)"):null;function bi(n,t=""){const r={};for(const o in n){const a=n[o],l=t?`${t}-${o}`:o;a&&typeof a=="object"?Object.assign(r,bi(a,l)):r[l]=a}return r}function Ei({themes:n=H0,defaultTheme:t="default",defaultVariant:r="system"}={}){const o=e.reactive({theme:t,variant:r});function a(c){return c==="system"?D0&&D0.matches?"dark":"light":c}function l(c,s){const d=n?.[c]?.[s];if(!d){console.warn(`[vts] No tokens for ${c}/${s}`);return}document.documentElement.setAttribute("data-theme",`${c}--${s}`);const u=bi(d);Object.entries(u).forEach(([f,m])=>{if(m==null)return;const h=`--vts-${f}`;if(document.documentElement.style.setProperty(h,String(m)),/^[a-z][a-zA-Z0-9]+-/.test(f)){const g=f.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();document.documentElement.style.setProperty(`--${g}`,`var(--vts-${f})`)}})}function i(c,s=r,{persist:d=!0}={}){if(!n[c])throw new Error(`[vts] Unknown theme "${c}"`);o.theme=c,o.variant=s;const u=a(s);if(l(c,u),d)try{localStorage.setItem(Bi,JSON.stringify({theme:c,variant:s}))}catch{}}return(function(){try{const s=JSON.parse(localStorage.getItem(Bi)||"null");s?.theme?i(s.theme,s.variant??r,{persist:!1}):i(t,r,{persist:!1})}catch{i(t,r,{persist:!1})}D0&&D0.addEventListener("change",()=>{if(o.variant==="system"){const s=a("system");l(o.theme,s)}})})(),{install(c){c.provide("vts-theme",e.readonly(o)),c.config.globalProperties.$vts={get theme(){return o.theme},get variant(){return o.variant},setTheme:i}},setTheme:i,state:e.readonly(o),themes:n,resolveVariant:a}}function Yu(){const n=e.inject("vts-theme");if(!n)throw new Error("[vts] theme plugin not installed. Did you call app.use(plugin)?");return n}const Gu={class:"flex-1"},Qu=["innerHTML"],Ku={key:0,class:"mt-2 flex gap-2"},Xu=["onClick"],Ju=["innerHTML"],e3=e.defineComponent({__name:"SnackBar",props:{item:{}},emits:["close"],setup(n,{emit:t}){const r=n,o=t,a=r.item,l=e.ref(!0),i=e.ref(!1),c=e.ref(null);let s=null,d=0,u=a.timeout,f=!1,m=0,h=0,g=0;a.icon,a.icon||O(a.variant);function p(S){return S==null?"":typeof S=="string"?S:typeof S=="number"||typeof S=="boolean"?String(S):Array.isArray(S)?S.map(Y=>typeof Y=="string"?`<span>${Y}</span>`:typeof Y=="object"&&Y!==null?Object.entries(Y).map(([V,I])=>`<span><b>${V}:</b> ${I}</span>`).join(" "):`<span>${String(Y)}</span>`).join(" "):typeof S=="object"?Object.entries(S).map(([Y,V])=>Array.isArray(V)?V.map(I=>`<span><b>${Y}:</b> ${I}</span>`).join(" "):`<span><b>${Y}:</b> ${V}</span>`).join(" "):String(S)}function k(){a.timeout!==0&&(w(),d=Date.now(),s=window.setTimeout(()=>{A()},u))}function w(){s&&(clearTimeout(s),s=null)}function x(){if(a.pauseOnHover&&(i.value=!0,s)){w();const S=Date.now()-d;u=Math.max(0,u-S)}}function y(){a.pauseOnHover&&i.value&&(i.value=!1,k())}function v(){a.closeOnClick&&A()}function b(S){if(S.onClick)try{S.onClick(a.meta)}catch(Y){console.warn(Y)}}function A(){l.value=!1,setTimeout(()=>{o("close",a.id),a.onClose&&a.onClose()},180)}function B(S){f=!0,c.value?.setPointerCapture(S.pointerId),m=S.clientX}function E(S){f&&(h=S.clientX,g=h-m,c.value&&(c.value.style.transform=`translateX(${g}px)`))}function Z(S){f&&(f=!1,c.value?.releasePointerCapture(S.pointerId),Math.abs(g)>80?(c.value&&(c.value.style.transition="transform .16s ease, opacity .16s ease"),c.value.style.transform=`translateX(${g>0?1e3:-1e3}px)`,c.value.style.opacity="0",setTimeout(()=>A(),160)):c.value&&(c.value.style.transition="transform .12s ease",c.value.style.transform=""),g=0)}function D(){f=!1,g=0}const H=e.ref("ltr"),N=e.computed(()=>H.value==="ltr"?"fixed left-4 top-4":"fixed right-4 top-4");function z(){const S=window?.globalrtl;if(typeof S=="string"){const V=S.toLowerCase();if(V==="ltr"||V==="rtl")return V}return(document.documentElement.getAttribute("dir")||"ltr").toLowerCase()==="rtl"?"rtl":"ltr"}let $=null;e.onMounted(()=>{u=a.timeout,a.timeout>0&&k(),H.value=z(),$=new MutationObserver(()=>{H.value=z()}),$.observe(document.documentElement,{attributes:!0,attributeFilter:["dir"]})}),e.onBeforeUnmount(()=>{w(),$&&($.disconnect(),$=null)});function O(S){const Y={success:`
1
+ (function(ge,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router"],e):(ge=typeof globalThis<"u"?globalThis:ge||self,e(ge.PgoUi={},ge.Vue,ge.VueRouter))})(this,(function(ge,e,T0){"use strict";const H0={default:{light:{color:{text:"#0b0b0b",textSecondary:"#6b7280",background:"#ffffff",surface:"#f7f7f8",surfaceElevated:"#f9fafb",primary:"#950050",primaryContainer:"#f9fafb",primaryText:"#ffffff",secondary:"#64748b",secondaryText:"#ffffff",muted:"#6b7280",border:"rgba(0,0,0,0.06)",borderLight:"rgba(0,0,0,0.04)",borderHeavy:"rgba(0,0,0,0.12)",divider:"rgba(0,0,0,0.08)",overlay:"rgba(0,0,0,0.5)",success:"#10b981",warning:"#f59e0b",error:"#ef4444",info:"#3b82f6",focus:"#950050",shadow:"#000000",disable:"#9ca3af"},radius:{sm:"4px",md:"8px",lg:"12px",xl:"16px",full:"9999px"},shadow:{sm:"0 1px 3px rgba(2,6,23,0.06)",md:"0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24)",lg:"0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06)",xl:"0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05)"},elevation:{0:"none",1:"0 1px 3px rgba(2,6,23,0.06)",2:"0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24)",3:"0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06)",4:"0 10px 15px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05)"}},dark:{color:{text:"#e6eef8",textSecondary:"#9aa4b2",background:"#0b1220",surface:"#0f1724",surfaceElevated:"#1a2332",primary:"#3b82f6",primaryText:"#061225",secondary:"#64748b",secondaryText:"#f1f5f9",muted:"#9aa4b2",border:"rgba(255,255,255,0.08)",borderLight:"rgba(255,255,255,0.05)",borderHeavy:"rgba(255,255,255,0.12)",divider:"rgba(255,255,255,0.1)",overlay:"rgba(0,0,0,0.7)",success:"#10b981",warning:"#f59e0b",error:"#ef4444",info:"#3b82f6",focus:"#3b82f6",shadow:"#000000",disable:"#4b5563"},radius:{sm:"4px",md:"8px",lg:"12px",xl:"16px",full:"9999px"},shadow:{sm:"0 1px 4px rgba(2,6,23,0.6)",md:"0 4px 6px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.1)",lg:"0 10px 15px rgba(0, 0, 0, 0.3), 0 4px 6px rgba(0, 0, 0, 0.2)",xl:"0 20px 25px rgba(0, 0, 0, 0.4), 0 10px 10px rgba(0, 0, 0, 0.3)"},elevation:{0:"none",1:"0 1px 4px rgba(2,6,23,0.6)",2:"0 4px 6px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.1)",3:"0 10px 15px rgba(0, 0, 0, 0.3), 0 4px 6px rgba(0, 0, 0, 0.2)",4:"0 20px 25px rgba(0, 0, 0, 0.4), 0 10px 10px rgba(0, 0, 0, 0.3)"}}},classic:{light:{color:{text:"#1b1b18",textSecondary:"#7a6e6e",background:"#fffdf6",surface:"#fff7e6",surfaceElevated:"#fffdf6",primary:"#9b4dca",primaryText:"#ffffff",secondary:"#8b7355",secondaryText:"#ffffff",muted:"#7a6e6e",border:"rgba(27,27,24,0.08)",borderLight:"rgba(27,27,24,0.05)",borderHeavy:"rgba(27,27,24,0.12)",divider:"rgba(27,27,24,0.1)",overlay:"rgba(27,27,24,0.4)",success:"#10b981",warning:"#f59e0b",error:"#ef4444",info:"#3b82f6",focus:"#950050"},radius:{sm:"3px",md:"6px",lg:"10px",xl:"14px",full:"9999px"},shadow:{sm:"0 1px 2px rgba(0,0,0,0.04)",md:"0 2px 4px rgba(0,0,0,0.06)",lg:"0 4px 6px rgba(0,0,0,0.08)",xl:"0 10px 15px rgba(0,0,0,0.1)"},elevation:{0:"none",1:"0 1px 2px rgba(0,0,0,0.04)",2:"0 2px 4px rgba(0,0,0,0.06)",3:"0 4px 6px rgba(0,0,0,0.08)",4:"0 10px 15px rgba(0,0,0,0.1)"}},dark:{color:{text:"#f6f3ee",textSecondary:"#a8a09a",background:"#11100f",surface:"#191817",surfaceElevated:"#242220",primary:"#b083e8",primaryText:"#0f0b10",secondary:"#9b8b7d",secondaryText:"#f6f3ee",muted:"#a8a09a",border:"rgba(246,243,238,0.08)",borderLight:"rgba(246,243,238,0.05)",borderHeavy:"rgba(246,243,238,0.12)",divider:"rgba(246,243,238,0.1)",overlay:"rgba(17,16,15,0.7)",success:"#10b981",warning:"#f59e0b",error:"#ef4444",info:"#3b82f6",focus:"#9b4dca"},radius:{sm:"3px",md:"6px",lg:"10px",xl:"14px",full:"9999px"},shadow:{sm:"0 1px 3px rgba(0,0,0,0.6)",md:"0 2px 6px rgba(0,0,0,0.7)",lg:"0 4px 10px rgba(0,0,0,0.8)",xl:"0 10px 20px rgba(0,0,0,0.9)"},elevation:{0:"none",1:"0 1px 3px rgba(0,0,0,0.6)",2:"0 2px 6px rgba(0,0,0,0.7)",3:"0 4px 10px rgba(0,0,0,0.8)",4:"0 10px 20px rgba(0,0,0,0.9)"}}},sap:{light:{color:{text:"#1d1d1f",background:"#f4f7f6",surface:"#ffffff",primary:"#006c8e",primaryText:"#ffffff",secondary:"#7d8a91",muted:"#7d8a91",success:"#4CAF50",error:"#F44336",warning:"#FF9800",info:"#2196F3"},radius:{sm:"4px",md:"8px",lg:"12px"},shadow:{sm:"0 1px 4px rgba(0, 0, 0, 0.1)",md:"0 4px 6px rgba(0, 0, 0, 0.1)",lg:"0 10px 20px rgba(0, 0, 0, 0.15)"}}}},Bi="vts:theme",D0=typeof window<"u"&&window.matchMedia?window.matchMedia("(prefers-color-scheme: dark)"):null;function bi(n,t=""){const r={};for(const o in n){const a=n[o],l=t?`${t}-${o}`:o;a&&typeof a=="object"?Object.assign(r,bi(a,l)):r[l]=a}return r}function Ei({themes:n=H0,defaultTheme:t="default",defaultVariant:r="system"}={}){const o=e.reactive({theme:t,variant:r});function a(c){return c==="system"?D0&&D0.matches?"dark":"light":c}function l(c,s){const d=n?.[c]?.[s];if(!d){console.warn(`[vts] No tokens for ${c}/${s}`);return}document.documentElement.setAttribute("data-theme",`${c}--${s}`);const u=bi(d);Object.entries(u).forEach(([f,m])=>{if(m==null)return;const h=`--vts-${f}`;if(document.documentElement.style.setProperty(h,String(m)),/^[a-z][a-zA-Z0-9]+-/.test(f)){const g=f.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();document.documentElement.style.setProperty(`--${g}`,`var(--vts-${f})`)}})}function i(c,s=r,{persist:d=!0}={}){if(!n[c])throw new Error(`[vts] Unknown theme "${c}"`);o.theme=c,o.variant=s;const u=a(s);if(l(c,u),d)try{localStorage.setItem(Bi,JSON.stringify({theme:c,variant:s}))}catch{}}return(function(){try{const s=JSON.parse(localStorage.getItem(Bi)||"null");s?.theme?i(s.theme,s.variant??r,{persist:!1}):i(t,r,{persist:!1})}catch{i(t,r,{persist:!1})}D0&&D0.addEventListener("change",()=>{if(o.variant==="system"){const s=a("system");l(o.theme,s)}})})(),{install(c){c.provide("vts-theme",e.readonly(o)),c.config.globalProperties.$vts={get theme(){return o.theme},get variant(){return o.variant},setTheme:i}},setTheme:i,state:e.readonly(o),themes:n,resolveVariant:a}}function Yu(){const n=e.inject("vts-theme");if(!n)throw new Error("[vts] theme plugin not installed. Did you call app.use(plugin)?");return n}const Gu={class:"flex-1"},Qu=["innerHTML"],Ku={key:0,class:"mt-2 flex gap-2"},Xu=["onClick"],Ju=["innerHTML"],e3=e.defineComponent({__name:"SnackBar",props:{item:{}},emits:["close"],setup(n,{emit:t}){const r=n,o=t,a=r.item,l=e.ref(!0),i=e.ref(!1),c=e.ref(null);let s=null,d=0,u=a.timeout,f=!1,m=0,h=0,g=0;a.icon,a.icon||O(a.variant);function p(S){return S==null?"":typeof S=="string"?S:typeof S=="number"||typeof S=="boolean"?String(S):Array.isArray(S)?S.map(Y=>typeof Y=="string"?`<span>${Y}</span>`:typeof Y=="object"&&Y!==null?Object.entries(Y).map(([V,I])=>`<span><b>${V}:</b> ${I}</span>`).join(" "):`<span>${String(Y)}</span>`).join(" "):typeof S=="object"?Object.entries(S).map(([Y,V])=>Array.isArray(V)?V.map(I=>`<p><b>${Y}:</b> ${I}</p>`).join(""):`<p><b>${Y}:</b> ${V}</p>`).join(""):String(S)}function k(){a.timeout!==0&&(w(),d=Date.now(),s=window.setTimeout(()=>{A()},u))}function w(){s&&(clearTimeout(s),s=null)}function x(){if(a.pauseOnHover&&(i.value=!0,s)){w();const S=Date.now()-d;u=Math.max(0,u-S)}}function y(){a.pauseOnHover&&i.value&&(i.value=!1,k())}function v(){a.closeOnClick&&A()}function b(S){if(S.onClick)try{S.onClick(a.meta)}catch(Y){console.warn(Y)}}function A(){l.value=!1,setTimeout(()=>{o("close",a.id),a.onClose&&a.onClose()},180)}function B(S){f=!0,c.value?.setPointerCapture(S.pointerId),m=S.clientX}function E(S){f&&(h=S.clientX,g=h-m,c.value&&(c.value.style.transform=`translateX(${g}px)`))}function Z(S){f&&(f=!1,c.value?.releasePointerCapture(S.pointerId),Math.abs(g)>80?(c.value&&(c.value.style.transition="transform .16s ease, opacity .16s ease"),c.value.style.transform=`translateX(${g>0?1e3:-1e3}px)`,c.value.style.opacity="0",setTimeout(()=>A(),160)):c.value&&(c.value.style.transition="transform .12s ease",c.value.style.transform=""),g=0)}function D(){f=!1,g=0}const H=e.ref("ltr"),N=e.computed(()=>H.value==="ltr"?"fixed left-4 top-4":"fixed right-4 top-4");function z(){const S=window?.globalrtl;if(typeof S=="string"){const V=S.toLowerCase();if(V==="ltr"||V==="rtl")return V}return(document.documentElement.getAttribute("dir")||"ltr").toLowerCase()==="rtl"?"rtl":"ltr"}let $=null;e.onMounted(()=>{u=a.timeout,a.timeout>0&&k(),H.value=z(),$=new MutationObserver(()=>{H.value=z()}),$.observe(document.documentElement,{attributes:!0,attributeFilter:["dir"]})}),e.onBeforeUnmount(()=>{w(),$&&($.disconnect(),$=null)});function O(S){const Y={success:`
2
2
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="w-5 h-5">
3
3
  <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 00-1.414-1.414L8 11.172 5.707 8.879a1 1 0 00-1.414 1.414l3 3a1 1 0 001.414 0l8-8z" clip-rule="evenodd"/>
4
4
  </svg>
@@ -18,7 +18,7 @@
18
18
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="w-5 h-5">
19
19
  <path d="M2 5a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H4a2 2 0 01-2-2V5z"/>
20
20
  </svg>
21
- `};return Y[S]||Y.default}const G=(()=>{switch(a.variant){case"success":return"bg-green-50 text-green-800 border border-green-100";case"error":return"bg-red-50 text-red-800 border border-red-100";case"warning":return"bg-yellow-50 text-yellow-800 border border-yellow-100";case"info":return"bg-blue-50 text-blue-800 border border-blue-100";default:return"bg-white text-slate-800 border border-slate-100"}})();return(S,Y)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["max-w-lg min-w-[200px] shadow-lg rounded-md px-4 py-3 flex items-start gap-3 cursor-pointer select-none",[e.unref(G),N.value]]),role:"status",onMouseenter:x,onMouseleave:y,onClick:v,ref_key:"root",ref:c,onPointerdownPassive:B,onPointermovePassive:E,onPointerupPassive:Z,onPointercancelPassive:D},[e.createElementVNode("div",Gu,[e.createElementVNode("div",{class:"text-sm leading-tight",innerHTML:e.unref(a).message},null,8,Qu),e.unref(a).actions?.length?(e.openBlock(),e.createElementBlock("div",Ku,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(a).actions,(V,I)=>(e.openBlock(),e.createElementBlock("button",{key:I,onClick:e.withModifiers(Q=>b(V),["stop"]),class:"text-sm font-medium underline"},[e.createElementVNode("span",{innerHTML:p(V.label)},null,8,Ju)],8,Xu))),128))])):e.createCommentVNode("",!0)]),(e.openBlock(),e.createElementBlock("button",{key:0,onClick:e.withModifiers(A,["stop"]),class:"ml-3 flex-none"},[...Y[0]||(Y[0]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",viewBox:"0 0 20 20",fill:"currentColor"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1)])]))],34)),[[e.vShow,l.value]])}}),t3={"aria-hidden":"false"},n3=e.defineComponent({__name:"SnackBarContainer",props:{state:{},config:{}},setup(n){const t=n,r=["top-left","top-center","top-right","bottom-left","bottom-center","bottom-right"];function o(i){const c={"top-left":"fixed top-4 left-4 z-[9999] flex flex-col items-start space-y-2","top-center":"fixed top-4 left-1/2 transform -translate-x-1/2 z-[9999] flex flex-col items-center space-y-2","top-right":"fixed top-4 right-4 z-[9999] flex flex-col items-end space-y-2","bottom-left":"fixed bottom-4 left-4 z-[9999] flex flex-col-reverse items-start space-y-2","bottom-center":"fixed bottom-4 left-1/2 transform -translate-x-1/2 z-[9999] flex flex-col-reverse items-center space-y-2","bottom-right":"fixed bottom-4 right-4 z-[9999] flex flex-col-reverse items-end space-y-2"};return c[i]||c["bottom-left"]}function a(i){return t.state.active.filter(c=>c.position===i)}function l(i){const c=new CustomEvent("snackbar-close",{detail:{id:i}});window.dispatchEvent(c)}return(i,c)=>(e.openBlock(),e.createElementBlock("div",t3,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(r,s=>e.createElementVNode("div",{key:s,class:e.normalizeClass(o(s))},[e.createVNode(e.TransitionGroup,{name:"snack-list",tag:"div"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a(s),d=>(e.openBlock(),e.createBlock(e3,{key:d.id,item:d,onClose:l},null,8,["item"]))),128))]),_:2},1024)],2)),64))]))}}),r3={position:"bottom-center",timeout:4e3,transition:"slide-up",mode:"stack",pauseOnHover:!0,closeOnClick:!0,rtl:!1};function o3(n,t={}){const r={...r3,...t},o=e.reactive({active:[],queue:[]});function a(){return Math.random().toString(36).slice(2,9)}function l(p){const k=p.id??a(),w={id:k,message:p.message||"",variant:p.variant||"default",timeout:typeof p.timeout=="number"?p.timeout:r.timeout,actions:p.actions||[],position:p.position||r.position,transition:p.transition||r.transition,closeOnClick:p.closeOnClick??r.closeOnClick,pauseOnHover:p.pauseOnHover??r.pauseOnHover,mode:p.mode||r.mode,onClose:p.onClose??(()=>{}),color:p.color,icon:p.icon,rtl:p.rtl??r.rtl,meta:p.meta??null};return w.mode==="queue"&&o.active.length>0?o.queue.push(w):o.active.push(w),k}function i(p){if(!p)return;const k=o.active.findIndex(w=>w.id===p);if(k>=0)if(o.active.splice(k,1),o.queue.length>0){const w=o.queue.shift();o.active.push(w)}else{const w=o.queue.findIndex(x=>x.id===p);w>=0&&o.queue.splice(w,1)}}function c(){o.active.splice(0),o.queue.splice(0)}function s(p,k={}){const w=typeof p=="string"?{message:p,...k}:p;return l({...w,variant:"success"})}function d(p,k={}){const w=typeof p=="string"?{message:p,...k}:p;return l({...w,variant:"error"})}function u(p,k={}){const w=typeof p=="string"?{message:p,...k}:p;return l({...w,variant:"info"})}function f(p,k={}){const w=typeof p=="string"?{message:p,...k}:p;return l({...w,variant:"warning"})}const m={state:e.readonly(o),show:l,success:s,error:d,info:u,warning:f,close:i,clear:c,config:r};n.provide("snackbar",m),n.config.globalProperties.$snackbar=m,window.__snackbar_api__=m,window.addEventListener("snackbar-close",p=>{const k=p.detail?.id;k&&m.close(k)});const h=document.createElement("div");document.body.appendChild(h),e.createApp(n3,{state:o,config:r}).mount(h)}const Vi={required:n=>!!n||{en:"This field is required.",dv:"ފުރަންޖެހޭ"},email:n=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(n)||"Invalid email address.",min:n=>t=>t&&t.length>=n||`Minimum length is ${n} characters.`,max:n=>t=>t&&t.length<=n||`Maximum length is ${n} characters.`,numeric:n=>!isNaN(parseFloat(n))&&isFinite(n)||"This field must be a number.",nid:n=>t=>n==="mv"?/^A\d{6}$/.test(t)||"NID must start with A followed by 6 digits for Maldives":!0,customPattern:(n,t,r="Invalid format.")=>o=>n()?new RegExp(t).test(o)||r:!0},a3={install(n){n.config.globalProperties.$rules=Vi,n.provide("validationRules",Vi)}},$e=e.ref(!0),Ci={en:{buttons:{submit:"Submit",create:"Create",cancel:"Cancel",save:"Save",add:"Add",ok:"OK",print:"Print",download:"Download",yes:"Yes",no:"No",delete:"Delete",edit:"Edit",close:"Close",search:"Search",confirm:"Confirm"},placeholders:{search:"Search...",select:"Select an option"},labels:{name:"Name",email:"Email",password:"Password"},pagination:{itemsPerPage:"Items per page:",jumpToPage:"Jump to page:",of:"of",next:"Next",previous:"Previous",page:"Page"}},dv:{buttons:{submit:"ސަބްމިޓް",create:"ކުރިއޭޓް",cancel:"ކެންސަލް",add:"އެޑް",save:"ސޭވް",ok:"އޯކޭ",print:"ޕްރިންޓް",download:"ޑައިންލޯޑް",yes:"ރަގަނޅު",no:"ނޫން",delete:"ޑިލިޓް",edit:"އެޑިޓް",close:"ކްލޯސް",search:"ހޯދާ",confirm:"ޔަގީން"},placeholders:{search:"ހޯދާ...",select:"އޮޕްޝަން"},labels:{name:"ނަން",email:"އީމެއިލް",password:"ޕާސްވަޑް"},pagination:{itemsPerPage:"ކޮންމެ ސަފުހާއަކަށް:",jumpToPage:"ސަފުހާއަށް ދާން:",of:"ގެ",next:"ކުރިޔަން",previous:"ފަހަތަށް",page:"ސަފުހާ"}}},Ol=e.ref(localStorage.getItem("language")||"dv"),Mo=()=>{const n=(o,a="")=>{const l=a||Ol.value,i=o.split(".");let c=Ci[l];for(const s of i)c=c?.[s];return c||o},t=o=>{Ci[o]&&(Ol.value=o,localStorage.setItem("language",o),document.documentElement.lang=o)},r=e.computed(()=>Ol.value);return{t:n,setLanguage:t,language:r}},{language:Mi}=Mo(),Ao={xs:"vts-text-caption vts-pl-2 vts-pr-2 vts-pt-1 vts-pb-1",sm:"vts-text-body-2 vts-pl-3 vts-pr-3 vts-pt-2 vts-pb-2",md:"vts-text-body-1 vts-pl-4 vts-pr-4 vts-pt-2 vts-pb-2",lg:"vts-text-body-1 vts-pl-5 vts-pr-5 vts-pt-3 vts-pb-3",xl:"vts-text-body-1 vts-pl-6 vts-pr-6 vts-pt-4 vts-pb-4"},Vn={xs:15,sm:16,md:18,lg:20,xl:24},Ln={none:"vts-rounded-none",sm:"vts-rounded-sm",md:"vts-rounded-md",lg:"vts-rounded-lg",xl:"vts-rounded-xl","2xl":"vts-rounded-2xl","3xl":"vts-rounded-3xl",full:"vts-rounded-pill"},Fr={primary:{contained:"vts-bg-primary vts-text-on-primary vts-transition-colors vts-hover-bg-primary",outlined:"border vts-border-primary vts-text-primary bg-transparent transition-colors vts-hover-bg-surface",text:"vts-text-primary vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"vts-bg-border-light vts-text-primary vts-transition-colors vts-hover-bg-surface"},success:{contained:"vts-bg-success vts-text-on-success vts-transition-colors vts-hover-bg-success",outlined:"vts-border vts-border-color vts-text-success vts-bg-transparent vts-transition-colors vts-hover-bg-surface",text:"vts-text-success vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"vts-bg-border-light vts-text-success vts-transition-colors vts-hover-bg-surface"},danger:{contained:"vts-bg-error vts-text-on-error vts-transition-colors vts-hover-bg-error",outlined:"vts-border vts-border-color vts-text-error vts-bg-transparent vts-transition-colors vts-hover-bg-surface",text:"vts-text-error vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"vts-bg-border-light vts-text-error vts-transition-colors vts-hover-bg-surface"},warning:{contained:"vts-bg-warning vts-text-on-warning vts-transition-colors vts-hover-bg-warning",outlined:"vts-border vts-border-color vts-text-warning vts-bg-transparent vts-transition-colors vts-hover-bg-surface",text:"vts-text-warning vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"vts-bg-border-light vts-text-warning vts-transition-colors vts-hover-bg-surface"},info:{contained:"vts-bg-info vts-text-on-info vts-transition-colors vts-hover-bg-info",outlined:"vts-border vts-border-color vts-text-info vts-bg-transparent vts-transition-colors vts-hover-bg-surface",text:"vts-text-info vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"bg-blue-50 vts-text-info vts-transition-colors hover:bg-blue-100"},gray:{contained:"bg-gray-200 text-gray-700 vts-transition-colors hover:bg-gray-300",outlined:"vts-border vts-border-color vts-text-secondary vts-bg-transparent vts-transition-colors vts-hover-bg-surface",text:"vts-text-secondary vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"vts-bg-border-light vts-text-secondary vts-transition-colors vts-hover-bg-surface"},disable:{contained:"vts-bg-disabled vts-text-on-disabled vts-transition-colors",outlined:"vts-border vts-border-color vts-text-disabled vts-bg-transparent vts-transition-colors",text:"vts-text-disabled vts-bg-transparent vts-transition-colors",tonal:"vts-bg-border-light vts-text-disabled vts-transition-colors"},none:{contained:"",outlined:"",text:"",tonal:""}},l3={none:"",xs:"vts-h-6",sm:"vts-h-8",md:"vts-h-10",lg:"vts-h-12",xl:"vts-h-14"},We=(n,t,r=null)=>{const o=e.computed(()=>{let l="";return t!=""?l=t:l=Mi.value,l==="en"?"en":"dv"});if(typeof n=="string"&&n!=="")return n;if(!n||typeof n!="object")return"";const a=o.value==="dv"?"dv":"en";return r?n[a]?.[r]??n.en?.[r]??"":n[a]??n.en??""},Ur={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6",7:"grid-cols-7",8:"grid-cols-8",9:"grid-cols-9",10:"grid-cols-10",11:"grid-cols-11",12:"grid-cols-12"},Wr={1:"col-span-1",2:"col-span-2",3:"col-span-3",4:"col-span-4",5:"col-span-5",6:"col-span-6",7:"col-span-7",8:"col-span-8",9:"col-span-9",10:"col-span-10",11:"col-span-11",12:"col-span-12"},No={defaults:Mi.value=="en"?"text-left":"text-right",left:"text-left",center:"text-center",right:"text-right"},i3={none:"rotate-0",0:"",45:"rotate-45",90:"rotate-90",135:"rotate-135",180:"rotate-180",225:"rotate-225",270:"rotate-270",315:"rotate-315","-315":"rotate-315","-270":"rotate-270","-225":"rotate-225","-180":"rotate-180","-135":"rotate-135","-90":"rotate-90","-45":"rotate-45"};function c3(n,t,r){try{return(...o)=>{try{const a={...r,response:o[0],item:o[0]},l=Object.keys(a).filter(u=>u!=="this").map(u=>`const ${u} = context.${u};`).join(`
21
+ `};return Y[S]||Y.default}const G=(()=>{switch(a.variant){case"success":return"bg-green-50 text-green-800 border border-green-100";case"error":return"bg-red-50 text-red-800 border border-red-100";case"warning":return"bg-yellow-50 text-yellow-800 border border-yellow-100";case"info":return"bg-blue-50 text-blue-800 border border-blue-100";default:return"bg-white text-slate-800 border border-slate-100"}})();return(S,Y)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["max-w-lg min-w-[200px] shadow-lg rounded-md px-4 py-3 flex items-start gap-3 cursor-pointer select-none",[e.unref(G),N.value]]),role:"status",onMouseenter:x,onMouseleave:y,onClick:v,ref_key:"root",ref:c,onPointerdownPassive:B,onPointermovePassive:E,onPointerupPassive:Z,onPointercancelPassive:D},[e.createElementVNode("div",Gu,[e.createElementVNode("div",{class:"text-sm leading-tight",innerHTML:p(e.unref(a).message)},null,8,Qu),e.unref(a).actions?.length?(e.openBlock(),e.createElementBlock("div",Ku,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(a).actions,(V,I)=>(e.openBlock(),e.createElementBlock("button",{key:I,onClick:e.withModifiers(Q=>b(V),["stop"]),class:"text-sm font-medium underline"},[e.createElementVNode("span",{innerHTML:p(V.label)},null,8,Ju)],8,Xu))),128))])):e.createCommentVNode("",!0)]),(e.openBlock(),e.createElementBlock("button",{key:0,onClick:e.withModifiers(A,["stop"]),class:"ml-3 flex-none"},[...Y[0]||(Y[0]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",class:"w-4 h-4",viewBox:"0 0 20 20",fill:"currentColor"},[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z","clip-rule":"evenodd"})],-1)])]))],34)),[[e.vShow,l.value]])}}),t3={"aria-hidden":"false"},n3=e.defineComponent({__name:"SnackBarContainer",props:{state:{},config:{}},setup(n){const t=n,r=["top-left","top-center","top-right","bottom-left","bottom-center","bottom-right"];function o(i){const c={"top-left":"fixed top-4 left-4 z-[9999] flex flex-col items-start space-y-2","top-center":"fixed top-4 left-1/2 transform -translate-x-1/2 z-[9999] flex flex-col items-center space-y-2","top-right":"fixed top-4 right-4 z-[9999] flex flex-col items-end space-y-2","bottom-left":"fixed bottom-4 left-4 z-[9999] flex flex-col-reverse items-start space-y-2","bottom-center":"fixed bottom-4 left-1/2 transform -translate-x-1/2 z-[9999] flex flex-col-reverse items-center space-y-2","bottom-right":"fixed bottom-4 right-4 z-[9999] flex flex-col-reverse items-end space-y-2"};return c[i]||c["bottom-left"]}function a(i){return t.state.active.filter(c=>c.position===i)}function l(i){const c=new CustomEvent("snackbar-close",{detail:{id:i}});window.dispatchEvent(c)}return(i,c)=>(e.openBlock(),e.createElementBlock("div",t3,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(r,s=>e.createElementVNode("div",{key:s,class:e.normalizeClass(o(s))},[e.createVNode(e.TransitionGroup,{name:"snack-list",tag:"div"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a(s),d=>(e.openBlock(),e.createBlock(e3,{key:d.id,item:d,onClose:l},null,8,["item"]))),128))]),_:2},1024)],2)),64))]))}}),r3={position:"bottom-center",timeout:4e3,transition:"slide-up",mode:"stack",pauseOnHover:!0,closeOnClick:!0,rtl:!1};function o3(n,t={}){const r={...r3,...t},o=e.reactive({active:[],queue:[]});function a(){return Math.random().toString(36).slice(2,9)}function l(p){const k=p.id??a(),w={id:k,message:p.message||"",variant:p.variant||"default",timeout:typeof p.timeout=="number"?p.timeout:r.timeout,actions:p.actions||[],position:p.position||r.position,transition:p.transition||r.transition,closeOnClick:p.closeOnClick??r.closeOnClick,pauseOnHover:p.pauseOnHover??r.pauseOnHover,mode:p.mode||r.mode,onClose:p.onClose??(()=>{}),color:p.color,icon:p.icon,rtl:p.rtl??r.rtl,meta:p.meta??null};return w.mode==="queue"&&o.active.length>0?o.queue.push(w):o.active.push(w),k}function i(p){if(!p)return;const k=o.active.findIndex(w=>w.id===p);if(k>=0)if(o.active.splice(k,1),o.queue.length>0){const w=o.queue.shift();o.active.push(w)}else{const w=o.queue.findIndex(x=>x.id===p);w>=0&&o.queue.splice(w,1)}}function c(){o.active.splice(0),o.queue.splice(0)}function s(p,k={}){const w=typeof p=="string"?{message:p,...k}:p;return l({...w,variant:"success"})}function d(p,k={}){const w=typeof p=="string"?{message:p,...k}:p;return l({...w,variant:"error"})}function u(p,k={}){const w=typeof p=="string"?{message:p,...k}:p;return l({...w,variant:"info"})}function f(p,k={}){const w=typeof p=="string"?{message:p,...k}:p;return l({...w,variant:"warning"})}const m={state:e.readonly(o),show:l,success:s,error:d,info:u,warning:f,close:i,clear:c,config:r};n.provide("snackbar",m),n.config.globalProperties.$snackbar=m,window.__snackbar_api__=m,window.addEventListener("snackbar-close",p=>{const k=p.detail?.id;k&&m.close(k)});const h=document.createElement("div");document.body.appendChild(h),e.createApp(n3,{state:o,config:r}).mount(h)}const Vi={required:n=>!!n||{en:"This field is required.",dv:"ފުރަންޖެހޭ"},email:n=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(n)||"Invalid email address.",min:n=>t=>t&&t.length>=n||`Minimum length is ${n} characters.`,max:n=>t=>t&&t.length<=n||`Maximum length is ${n} characters.`,numeric:n=>!isNaN(parseFloat(n))&&isFinite(n)||"This field must be a number.",nid:n=>t=>n==="mv"?/^A\d{6}$/.test(t)||"NID must start with A followed by 6 digits for Maldives":!0,customPattern:(n,t,r="Invalid format.")=>o=>n()?new RegExp(t).test(o)||r:!0},a3={install(n){n.config.globalProperties.$rules=Vi,n.provide("validationRules",Vi)}},$e=e.ref(!0),Ci={en:{buttons:{submit:"Submit",create:"Create",cancel:"Cancel",save:"Save",add:"Add",ok:"OK",print:"Print",download:"Download",yes:"Yes",no:"No",delete:"Delete",edit:"Edit",close:"Close",search:"Search",confirm:"Confirm"},placeholders:{search:"Search...",select:"Select an option"},labels:{name:"Name",email:"Email",password:"Password"},pagination:{itemsPerPage:"Items per page:",jumpToPage:"Jump to page:",of:"of",next:"Next",previous:"Previous",page:"Page"}},dv:{buttons:{submit:"ސަބްމިޓް",create:"ކުރިއޭޓް",cancel:"ކެންސަލް",add:"އެޑް",save:"ސޭވް",ok:"އޯކޭ",print:"ޕްރިންޓް",download:"ޑައިންލޯޑް",yes:"ރަގަނޅު",no:"ނޫން",delete:"ޑިލިޓް",edit:"އެޑިޓް",close:"ކްލޯސް",search:"ހޯދާ",confirm:"ޔަގީން"},placeholders:{search:"ހޯދާ...",select:"އޮޕްޝަން"},labels:{name:"ނަން",email:"އީމެއިލް",password:"ޕާސްވަޑް"},pagination:{itemsPerPage:"ކޮންމެ ސަފުހާއަކަށް:",jumpToPage:"ސަފުހާއަށް ދާން:",of:"ގެ",next:"ކުރިޔަން",previous:"ފަހަތަށް",page:"ސަފުހާ"}}},Ol=e.ref(localStorage.getItem("language")||"dv"),Mo=()=>{const n=(o,a="")=>{const l=a||Ol.value,i=o.split(".");let c=Ci[l];for(const s of i)c=c?.[s];return c||o},t=o=>{Ci[o]&&(Ol.value=o,localStorage.setItem("language",o),document.documentElement.lang=o)},r=e.computed(()=>Ol.value);return{t:n,setLanguage:t,language:r}},{language:Mi}=Mo(),Ao={xs:"vts-text-caption vts-pl-2 vts-pr-2 vts-pt-1 vts-pb-1",sm:"vts-text-body-2 vts-pl-3 vts-pr-3 vts-pt-2 vts-pb-2",md:"vts-text-body-1 vts-pl-4 vts-pr-4 vts-pt-2 vts-pb-2",lg:"vts-text-body-1 vts-pl-5 vts-pr-5 vts-pt-3 vts-pb-3",xl:"vts-text-body-1 vts-pl-6 vts-pr-6 vts-pt-4 vts-pb-4"},Vn={xs:15,sm:16,md:18,lg:20,xl:24},Ln={none:"vts-rounded-none",sm:"vts-rounded-sm",md:"vts-rounded-md",lg:"vts-rounded-lg",xl:"vts-rounded-xl","2xl":"vts-rounded-2xl","3xl":"vts-rounded-3xl",full:"vts-rounded-pill"},Fr={primary:{contained:"vts-bg-primary vts-text-on-primary vts-transition-colors vts-hover-bg-primary",outlined:"border vts-border-primary vts-text-primary bg-transparent transition-colors vts-hover-bg-surface",text:"vts-text-primary vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"vts-bg-border-light vts-text-primary vts-transition-colors vts-hover-bg-surface"},success:{contained:"vts-bg-success vts-text-on-success vts-transition-colors vts-hover-bg-success",outlined:"vts-border vts-border-color vts-text-success vts-bg-transparent vts-transition-colors vts-hover-bg-surface",text:"vts-text-success vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"vts-bg-border-light vts-text-success vts-transition-colors vts-hover-bg-surface"},danger:{contained:"vts-bg-error vts-text-on-error vts-transition-colors vts-hover-bg-error",outlined:"vts-border vts-border-color vts-text-error vts-bg-transparent vts-transition-colors vts-hover-bg-surface",text:"vts-text-error vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"vts-bg-border-light vts-text-error vts-transition-colors vts-hover-bg-surface"},warning:{contained:"vts-bg-warning vts-text-on-warning vts-transition-colors vts-hover-bg-warning",outlined:"vts-border vts-border-color vts-text-warning vts-bg-transparent vts-transition-colors vts-hover-bg-surface",text:"vts-text-warning vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"vts-bg-border-light vts-text-warning vts-transition-colors vts-hover-bg-surface"},info:{contained:"vts-bg-info vts-text-on-info vts-transition-colors vts-hover-bg-info",outlined:"vts-border vts-border-color vts-text-info vts-bg-transparent vts-transition-colors vts-hover-bg-surface",text:"vts-text-info vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"bg-blue-50 vts-text-info vts-transition-colors hover:bg-blue-100"},gray:{contained:"bg-gray-200 text-gray-700 vts-transition-colors hover:bg-gray-300",outlined:"vts-border vts-border-color vts-text-secondary vts-bg-transparent vts-transition-colors vts-hover-bg-surface",text:"vts-text-secondary vts-bg-transparent vts-transition-colors vts-hover-bg-surface",tonal:"vts-bg-border-light vts-text-secondary vts-transition-colors vts-hover-bg-surface"},disable:{contained:"vts-bg-disabled vts-text-on-disabled vts-transition-colors",outlined:"vts-border vts-border-color vts-text-disabled vts-bg-transparent vts-transition-colors",text:"vts-text-disabled vts-bg-transparent vts-transition-colors",tonal:"vts-bg-border-light vts-text-disabled vts-transition-colors"},none:{contained:"",outlined:"",text:"",tonal:""}},l3={none:"",xs:"vts-h-6",sm:"vts-h-8",md:"vts-h-10",lg:"vts-h-12",xl:"vts-h-14"},We=(n,t,r=null)=>{const o=e.computed(()=>{let l="";return t!=""?l=t:l=Mi.value,l==="en"?"en":"dv"});if(typeof n=="string"&&n!=="")return n;if(!n||typeof n!="object")return"";const a=o.value==="dv"?"dv":"en";return r?n[a]?.[r]??n.en?.[r]??"":n[a]??n.en??""},Ur={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6",7:"grid-cols-7",8:"grid-cols-8",9:"grid-cols-9",10:"grid-cols-10",11:"grid-cols-11",12:"grid-cols-12"},Wr={1:"col-span-1",2:"col-span-2",3:"col-span-3",4:"col-span-4",5:"col-span-5",6:"col-span-6",7:"col-span-7",8:"col-span-8",9:"col-span-9",10:"col-span-10",11:"col-span-11",12:"col-span-12"},No={defaults:Mi.value=="en"?"text-left":"text-right",left:"text-left",center:"text-center",right:"text-right"},i3={none:"rotate-0",0:"",45:"rotate-45",90:"rotate-90",135:"rotate-135",180:"rotate-180",225:"rotate-225",270:"rotate-270",315:"rotate-315","-315":"rotate-315","-270":"rotate-270","-225":"rotate-225","-180":"rotate-180","-135":"rotate-135","-90":"rotate-90","-45":"rotate-45"};function c3(n,t,r){try{return(...o)=>{try{const a={...r,response:o[0],item:o[0]},l=Object.keys(a).filter(u=>u!=="this").map(u=>`const ${u} = context.${u};`).join(`
22
22
  `),i="const thisObj = context.this;",c=t.replace(/this\./g,"thisObj."),s=`
23
23
  ${l}
24
24
  ${i}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pgo-ui",
3
- "version": "1.0.25",
3
+ "version": "1.0.26",
4
4
  "description": "A Vue 3 component library with PGO design system",
5
5
  "private": false,
6
6
  "type": "module",
@@ -14,7 +14,7 @@
14
14
  @pointercancel.passive="onPointerCancel"
15
15
  >
16
16
  <div class="flex-1">
17
- <div class="text-sm leading-tight" v-html="item.message"></div>
17
+ <div class="text-sm leading-tight" v-html="formatLabel(item.message)"></div>
18
18
  <div v-if="item.actions?.length" class="mt-2 flex gap-2">
19
19
  <button v-for="(a, i) in item.actions" :key="i" @click.stop="onActionClick(a)" class="text-sm font-medium underline">
20
20
  <span v-html="formatLabel(a.label)"></span>
@@ -63,7 +63,7 @@
63
63
  const iconComponent = item.icon || defaultIconFor(item.variant)
64
64
  const showClose = true
65
65
 
66
- function formatLabel(label: any): string {
66
+ function formatLabel(label: any): string {
67
67
  if (label === null || label === undefined) return ''
68
68
 
69
69
  if (typeof label === 'string') return label
@@ -73,7 +73,7 @@
73
73
  // Array of strings or objects
74
74
  if (Array.isArray(label)) {
75
75
  return label
76
- .map(l => {
76
+ .map((l: any) => {
77
77
  if (typeof l === 'string') return `<span>${l}</span>`
78
78
  if (typeof l === 'object' && l !== null) {
79
79
  return Object.entries(l)
@@ -82,19 +82,19 @@
82
82
  }
83
83
  return `<span>${String(l)}</span>`
84
84
  })
85
- .join(' ')
85
+ .join(' ') // <-- this was missing before
86
86
  }
87
87
 
88
- // Plain object
88
+ // Plain object: { field: 'msg' } or { field: ['msg1', 'msg2'] }
89
89
  if (typeof label === 'object') {
90
90
  return Object.entries(label)
91
91
  .map(([k, v]) => {
92
92
  if (Array.isArray(v)) {
93
- return v.map(err => `<span><b>${k}:</b> ${err}</span>`).join(' ')
93
+ return v.map((err: any) => `<p><b>${k}:</b> ${err}</p>`).join('')
94
94
  }
95
- return `<span><b>${k}:</b> ${v}</span>`
95
+ return `<p><b>${k}:</b> ${v}</p>`
96
96
  })
97
- .join(' ')
97
+ .join('') // <-- this was missing before
98
98
  }
99
99
 
100
100
  return String(label)
@@ -9,11 +9,11 @@ export function useSnackBar() {
9
9
  }
10
10
 
11
11
  return api as {
12
- show: (o: SnackOptions) => string
13
- success: (m: string | SnackOptions, o?: Partial<SnackOptions>) => string
14
- error: (m: string | SnackOptions, o?: Partial<SnackOptions>) => string
15
- info: (m: string | SnackOptions, o?: Partial<SnackOptions>) => string
16
- warning: (m: string | SnackOptions, o?: Partial<SnackOptions>) => string
12
+ show: (o: SnackOptions) => any
13
+ success: (m: string | SnackOptions, o?: Partial<SnackOptions>) => any
14
+ error: (m: string | SnackOptions, o?: Partial<SnackOptions>) => any
15
+ info: (m: string | SnackOptions, o?: Partial<SnackOptions>) => any
16
+ warning: (m: string | SnackOptions, o?: Partial<SnackOptions>) => any
17
17
  close: (id?: string) => void
18
18
  clear: () => void
19
19
  state: any
@@ -1,4 +1,9 @@
1
- /* Toolbar */
1
+ ,
2
+ /* ******************************************** */,
3
+ /* **** Dataset Required for ui components **** */,
4
+ /* ******************************************** */,
5
+
6
+ /* Toolbar */,
2
7
  {
3
8
  "component": "toolbar",
4
9
  "title": "CForm",
@@ -19,7 +24,7 @@
19
24
  }
20
25
  ]
21
26
 
22
- }
27
+ },
23
28
 
24
29
  /* FilterSection */
25
30
  {
@@ -1,4 +0,0 @@
1
- import { _ as f } from "./index-CVFETMBS.js";
2
- export {
3
- f as default
4
- };