@smuzi/logger-ui 0.0.4 → 0.0.6
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/build/handlers.js +6 -59
- package/build/index.d.ts +0 -1
- package/build/index.js +0 -1
- package/build/ui/app.js +1 -1
- package/build/ui/index.html +4 -0
- package/package.json +3 -3
package/build/handlers.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { readFile } from "node:fs/promises";
|
|
2
2
|
import { asObject, asString, HttpResponse, ResponseHttpHeaders, Some } from "@smuzi/std";
|
|
3
|
-
import {
|
|
3
|
+
import { logIdFromPath, logRetryAction as loggerLogRetryAction, logsQueryAction as loggerLogsQueryAction, } from "@smuzi/logger";
|
|
4
4
|
// Resolves to <package>/build/ui both from src/ (workspace) and from build/ (published).
|
|
5
5
|
const UI_DIR = new URL("../build/ui/", import.meta.url);
|
|
6
6
|
export var UiAsset;
|
|
@@ -44,6 +44,9 @@ async function htmlPageResponse(file, base_path) {
|
|
|
44
44
|
}
|
|
45
45
|
return textResponse(html.replaceAll("{{base}}", escapeHtmlAttribute(base_path)), "text/html; charset=utf-8");
|
|
46
46
|
}
|
|
47
|
+
function unauthorizedResponse() {
|
|
48
|
+
return HttpResponse.asJson({ error: "Unauthorized" }, 401);
|
|
49
|
+
}
|
|
47
50
|
function authErrorResponse(message) {
|
|
48
51
|
return HttpResponse.asJson({ error: message }, 500);
|
|
49
52
|
}
|
|
@@ -108,64 +111,8 @@ export function uiAssetAction(asset) {
|
|
|
108
111
|
};
|
|
109
112
|
}
|
|
110
113
|
export function logsQueryAction(auth, reader) {
|
|
111
|
-
return authenticated(auth,
|
|
112
|
-
const body = await context.request.body();
|
|
113
|
-
if (body.isErr()) {
|
|
114
|
-
return HttpResponse.asJson({ error: "Unable to read request body" }, 400);
|
|
115
|
-
}
|
|
116
|
-
const query = parseLogsQuery(body.unwrap());
|
|
117
|
-
if (query.isErr()) {
|
|
118
|
-
return HttpResponse.asJson({ error: query.unsafeSource() }, 422);
|
|
119
|
-
}
|
|
120
|
-
const page = await reader.queryGroups(query.unwrap());
|
|
121
|
-
return page.match({
|
|
122
|
-
Ok: (value) => HttpResponse.asJson(value),
|
|
123
|
-
Err: (error) => HttpResponse.asJson({ error: error.message }, 500),
|
|
124
|
-
});
|
|
125
|
-
}, () => HttpResponse.asJson({ error: "Unauthorized" }, 401));
|
|
126
|
-
}
|
|
127
|
-
function pathParam(context, name) {
|
|
128
|
-
return context.pathParams.get(name);
|
|
114
|
+
return authenticated(auth, loggerLogsQueryAction(reader), unauthorizedResponse);
|
|
129
115
|
}
|
|
130
116
|
export function logRetryAction(auth, reader, http_client) {
|
|
131
|
-
return authenticated(auth,
|
|
132
|
-
const id = Number(pathParam(context, "id").someOr(""));
|
|
133
|
-
if (!Number.isInteger(id) || id <= 0) {
|
|
134
|
-
return HttpResponse.asJson({ error: "Invalid log id" }, 400);
|
|
135
|
-
}
|
|
136
|
-
const found = await reader.getById(id);
|
|
137
|
-
if (found.isErr()) {
|
|
138
|
-
return HttpResponse.asJson({ error: found.unsafeSource().message }, 500);
|
|
139
|
-
}
|
|
140
|
-
const log = found.unwrap();
|
|
141
|
-
if (log.isNone()) {
|
|
142
|
-
return HttpResponse.asJson({ error: "Log not found" }, 404);
|
|
143
|
-
}
|
|
144
|
-
const retry = log.unwrap().retry;
|
|
145
|
-
if (retry === null) {
|
|
146
|
-
return HttpResponse.asJson({ error: "Log has no retry configuration" }, 422);
|
|
147
|
-
}
|
|
148
|
-
// Resends the original message as-is (raw string body, no wrapping). Uses plain
|
|
149
|
-
// fetch, so this goes out over HTTP/1 by default (no HTTP/2 dispatcher configured).
|
|
150
|
-
const response = await http_client.post(retry.url, {
|
|
151
|
-
body: Some(log.unwrap().message),
|
|
152
|
-
rawResponse: true,
|
|
153
|
-
});
|
|
154
|
-
const retries_count = await reader.incrementRetryCount(id);
|
|
155
|
-
const retries_count_value = retries_count.okOr(log.unwrap().retries_count);
|
|
156
|
-
return response.match({
|
|
157
|
-
Ok: (ok_response) => HttpResponse.asJson({
|
|
158
|
-
status: ok_response.status,
|
|
159
|
-
body: ok_response.body.someOr(""),
|
|
160
|
-
retries_count: retries_count_value,
|
|
161
|
-
}),
|
|
162
|
-
Err: (error) => error instanceof HttpResponse
|
|
163
|
-
? HttpResponse.asJson({
|
|
164
|
-
status: error.status,
|
|
165
|
-
body: error.body.someOr(""),
|
|
166
|
-
retries_count: retries_count_value,
|
|
167
|
-
})
|
|
168
|
-
: HttpResponse.asJson({ error: "Retry request failed: " + String(error) }, 502),
|
|
169
|
-
});
|
|
170
|
-
}, () => HttpResponse.asJson({ error: "Unauthorized" }, 401));
|
|
117
|
+
return authenticated(auth, loggerLogRetryAction(reader, http_client, logIdFromPath), unauthorizedResponse);
|
|
171
118
|
}
|
package/build/index.d.ts
CHANGED
package/build/index.js
CHANGED
package/build/ui/app.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
${r?'Expression: "'+r+`"
|
|
4
4
|
|
|
5
|
-
`:""}`,t),setTimeout(()=>{throw e},0)}var te=!0;function gr(e){let t=te;te=!1;let r=e();return te=t,r}function H(e,t,r={}){let n;return x(e,t)(i=>n=i,r),n}function x(...e){return yr(...e)}var yr=()=>{};function Wn(e){yr=e}var vr;function zn(e){vr=e}function Un(e,t){let r={};ge(r,e);let n=[r,...V(e)],i=typeof t=="function"?Gn(n,t):Zn(n,t,e);return Vn.bind(null,e,t,i)}function Gn(e,t){return(r=()=>{},{scope:n={},params:i=[],context:s}={})=>{if(!te){ye(r,t,q([n,...e]),i);return}let o=t.apply(q([n,...e]),i);ye(r,o)}}var Ue={};function Yn(e,t){if(Ue[e])return Ue[e];let r=Object.getPrototypeOf(async function(){}).constructor,n=/^[\n\s]*if.*\(.*\)/.test(e.trim())||/^(let|const)\s/.test(e.trim())?`(async()=>{ ${e} })()`:e,s=(()=>{try{let o=new r(["__self","scope"],`with (scope) { __self.result = ${n} }; __self.finished = true; return __self.result;`);return Object.defineProperty(o,"name",{value:`[Alpine] ${e}`}),o}catch(o){return re(o,t,e),Promise.resolve()}})();return Ue[e]=s,s}function Zn(e,t,r){let n=Yn(t,r);return(i=()=>{},{scope:s={},params:o=[],context:a}={})=>{n.result=void 0,n.finished=!1;let u=q([s,...e]);if(typeof n=="function"){let l=n.call(a,n,u).catch(c=>re(c,r,t));n.finished?(ye(i,n.result,u,o,r),n.result=void 0):l.then(c=>{ye(i,c,u,o,r)}).catch(c=>re(c,r,t)).finally(()=>n.result=void 0)}}}function ye(e,t,r,n,i){if(te&&typeof t=="function"){let s=t.apply(r,n);s instanceof Promise?s.then(o=>ye(e,o,r,n)).catch(o=>re(o,i,t)):e(s)}else typeof t=="object"&&t instanceof Promise?t.then(s=>e(s)):e(t)}function Xn(...e){return vr(...e)}function Qn(e,t,r={}){let n={};ge(n,e);let i=[n,...V(e)],s=q([r.scope??{},...i]),o=r.params??[];if(t.includes("await")){let a=Object.getPrototypeOf(async function(){}).constructor,u=/^[\n\s]*if.*\(.*\)/.test(t.trim())||/^(let|const)\s/.test(t.trim())?`(async()=>{ ${t} })()`:t;return new a(["scope"],`with (scope) { let __result = ${u}; return __result }`).call(r.context,s)}else{let a=/^[\n\s]*if.*\(.*\)/.test(t.trim())||/^(let|const)\s/.test(t.trim())?`(()=>{ ${t} })()`:t,l=new Function(["scope"],`with (scope) { let __result = ${a}; return __result }`).call(r.context,s);return typeof l=="function"&&te?l.apply(s,o):l}}var Mt="x-";function se(e=""){return Mt+e}function ei(e){Mt=e}var Le={};function v(e,t){return Le[e]=t,{before(r){if(!Le[r]){console.warn(String.raw`Cannot find directive \`${r}\`. \`${e}\` will use the default order of execution`);return}let n=B.indexOf(r);B.splice(n>=0?n:B.indexOf("DEFAULT"),0,e)}}}function ti(e){return Object.keys(Le).includes(e)}function Be(e,t,r){if(t=Array.from(t),e._x_virtualDirectives){let s=Object.entries(e._x_virtualDirectives).map(([a,u])=>({name:a,value:u})),o=mr(s);s=s.map(a=>o.find(u=>u.name===a.name)?{name:`x-bind:${a.name}`,value:`"${a.value}"`}:a),t=t.concat(s)}let n={};return t.map(Er((s,o)=>n[s]=o)).filter(Or).map(ii(n,r)).sort(si).map(s=>ni(e,s))}function mr(e){return Array.from(e).map(Er()).filter(t=>!Or(t))}var at=!1,ce=new Map,br=Symbol();function ri(e){at=!0;let t=Symbol();br=t,ce.set(t,[]);let r=()=>{for(;ce.get(t).length;)ce.get(t).shift()();ce.delete(t)},n=()=>{at=!1,r()};e(r),n()}function xr(e){let t=[],r=a=>t.push(a),[n,i]=Pn(e);return t.push(i),[{Alpine:oe,effect:n,cleanup:r,evaluateLater:x.bind(x,e),evaluate:H.bind(H,e)},()=>t.forEach(a=>a())]}function ni(e,t){let r=()=>{},n=Le[t.type]||r,[i,s]=xr(e);ur(e,t.original,s);let o=()=>{e._x_ignore||e._x_ignoreSelf||(n.inline&&n.inline(e,t,i),n=n.bind(n,e,t,i),at?ce.get(br).push(n):n())};return o.runCleanups=s,o}var wr=(e,t)=>({name:r,value:n})=>(r.startsWith(e)&&(r=r.replace(e,t)),{name:r,value:n}),Sr=e=>e;function Er(e=()=>{}){return({name:t,value:r})=>{let{name:n,value:i}=Ar.reduce((s,o)=>o(s),{name:t,value:r});return n!==t&&e(n,t),{name:n,value:i}}}var Ar=[];function Ct(e){Ar.push(e)}function Or({name:e}){return Tr().test(e)}var Tr=()=>new RegExp(`^${Mt}([^:^.]+)\\b`);function ii(e,t){return({name:r,value:n})=>{r===n&&(n="");let i=r.match(Tr()),s=r.match(/:([a-zA-Z0-9\-_:]+)/),o=r.match(/\.[^.\]]+(?=[^\]]*$)/g)||[],a=t||e[r]||r;return{type:i?i[1]:null,value:s?s[1]:null,modifiers:o.map(u=>u.replace(".","")),expression:n,original:a}}}var ut="DEFAULT",B=["ignore","ref","id","data","anchor","bind","init","for","model","modelable","transition","show","if",ut,"teleport"];function si(e,t){let r=B.indexOf(e.type)===-1?ut:e.type,n=B.indexOf(t.type)===-1?ut:t.type;return B.indexOf(r)-B.indexOf(n)}function K(e,t){if(typeof ShadowRoot=="function"&&e instanceof ShadowRoot){Array.from(e.children).forEach(i=>K(i,t));return}let r=!1;if(t(e,()=>r=!0),r)return;let n=e.firstElementChild;for(;n;)K(n,t,!1),n=n.nextElementSibling}var N=!1;function L(e,t=()=>{}){return(...r)=>N?t(...r):e(...r)}function oi(e){return(...t)=>N&&e(...t)}var Mr=[];function Ee(e){Mr.push(e)}function ai(e,t){Mr.forEach(r=>r(e,t)),N=!0,Cr(()=>{R(t,(r,n)=>{n(r,()=>{})})}),N=!1}var lt=!1;function ui(e,t){t._x_dataStack||(t._x_dataStack=e._x_dataStack),N=!0,lt=!0,Cr(()=>{li(t)}),N=!1,lt=!1}function li(e){let t=!1;R(e,(n,i)=>{K(n,(s,o)=>{if(t&&_i(s))return o();t=!0,i(s,o)})})}function Cr(e){let t=Y;qt((r,n)=>{let i=t(r);return ie(i),()=>{}}),e(),qt(t)}var He=0;function ci(e,t){let r=e._x_deferInit;r||(r=e._x_deferInit={pending:0,ownsIgnore:!e._x_ignore,queuedAttributes:new Map},r.ownsIgnore&&(e._x_ignore=!0),He++),r.pending++,Promise.resolve(t).catch(n=>{try{re(n,e)}catch(i){setTimeout(()=>{throw i},0)}}).then(()=>fi(e,r))}function fi(e,t){t.pending--,!(t.pending>0)&&(Nn(),!(t.pending>0)&&e._x_deferInit===t&&(delete e._x_deferInit,t.ownsIgnore&&delete e._x_ignore,He--,e.isConnected&&(pi(t),R(e))))}function di(e,t){if(He===0)return!1;let r=S(e,n=>n._x_deferInit);return r?(Rr(r._x_deferInit,e,t.map(({name:n})=>n)),!0):!1}function Rr(e,t,r){let n=e.queuedAttributes.get(t);(!n||n.marker!==t._x_marker)&&(n={marker:t._x_marker,names:new Set},e.queuedAttributes.set(t,n)),r.forEach(i=>n.names.add(i))}function pi(e){e.queuedAttributes.forEach((t,r)=>{if(!r.isConnected||!r._x_marker||r._x_marker!==t.marker)return;let n=S(r,s=>s._x_deferInit);if(n){Rr(n._x_deferInit,r,Array.from(t.names));return}let i=Array.from(t.names).filter(s=>r.hasAttribute(s)).map(s=>({name:s,value:r.getAttribute(s)}));i.length!==0&&Be(r,i).forEach(s=>s())})}Ee((e,t)=>{He!==0&&(!e||e.nodeType!==1||!t||t.nodeType!==1||S(e,r=>r._x_deferInit)&&(t._x_ignore=!0))});function fe(e,t,r={},n={}){return e.dispatchEvent(new CustomEvent(t,{detail:r,bubbles:!0,composed:!0,cancelable:!0,...n}))}function C(e,...t){console.warn(`Alpine Warning: ${e}`,...t)}var Kt=!1;function hi(){Kt&&C("Alpine has already been initialized on this page. Calling Alpine.start() more than once can cause problems."),Kt=!0,document.body||C("Unable to initialize. Trying to load Alpine before `<body>` is available. Did you forget to add `defer` in Alpine's `<script>` tag?"),fe(document,"alpine:init"),fe(document,"alpine:initializing"),At(),$n(t=>R(t,K)),St(t=>Z(t)),ar((t,r)=>{di(t,r)||Be(t,r).forEach(n=>n())});let e=t=>!Je(t.parentElement,!0);Array.from(document.querySelectorAll($r().join(","))).filter(e).forEach(t=>{R(t)}),fe(document,"alpine:initialized"),setTimeout(()=>{vi()})}var Rt=[],Pr=[];function jr(){return Rt.map(e=>e())}function $r(){return Rt.concat(Pr).map(e=>e())}function Lr(e){Rt.push(e)}function Dr(e){Pr.push(e)}function Je(e,t=!1){return S(e,r=>{if((t?$r():jr()).some(i=>r.matches(i)))return!0})}function S(e,t){if(e){if(t(e))return e;if(e._x_teleportBack)return S(e._x_teleportBack,t);if(e.parentNode instanceof ShadowRoot)return S(e.parentNode.host,t);if(e.parentElement)return S(e.parentElement,t)}}function _i(e){return jr().some(t=>e.matches(t))}var Nr=[];function gi(e){Nr.push(e)}var yi=1;function R(e,t=K,r=()=>{}){S(e,n=>n._x_ignore)||ri(()=>{t(e,(n,i)=>{n._x_marker||(r(n,i),Nr.forEach(s=>s(n,i)),Be(n,n.attributes).forEach(s=>s()),n._x_ignore||(n._x_marker=yi++),n._x_ignore&&i())})})}function Z(e,t=K){t(e,r=>{Ln(r),lr(r),delete r._x_marker})}function vi(){[["ui","dialog",["[x-dialog], [x-popover]"]],["anchor","anchor",["[x-anchor]"]],["sort","sort",["[x-sort]"]]].forEach(([t,r,n])=>{ti(r)||n.some(i=>{if(document.querySelector(i))return C(`found "${i}", but missing ${t} plugin`),!0})})}var ct=[],Pt=!1;function jt(e=()=>{}){return queueMicrotask(()=>{Pt||setTimeout(()=>{ft()})}),new Promise(t=>{ct.push(()=>{e(),t()})})}function ft(){for(Pt=!1;ct.length;)ct.shift()()}function mi(){Pt=!0}function $t(e,t){return Array.isArray(t)?Wt(e,t.join(" ")):typeof t=="object"&&t!==null?bi(e,t):typeof t=="function"?$t(e,t()):Wt(e,t)}function dt(e){return e.split(/\s/).filter(Boolean)}function Wt(e,t){let r=i=>dt(i).filter(s=>!e.classList.contains(s)).filter(Boolean),n=i=>(e.classList.add(...i),()=>{e.classList.remove(...i)});return t=t===!0?t="":t||"",n(r(t))}function bi(e,t){let r=Object.entries(t).flatMap(([o,a])=>a?dt(o):!1).filter(Boolean),n=Object.entries(t).flatMap(([o,a])=>a?!1:dt(o)).filter(Boolean),i=[],s=[];return n.forEach(o=>{e.classList.contains(o)&&(e.classList.remove(o),s.push(o))}),r.forEach(o=>{e.classList.contains(o)||(e.classList.add(o),i.push(o))}),()=>{s.forEach(o=>e.classList.add(o)),i.forEach(o=>e.classList.remove(o))}}function Ve(e,t){return typeof t=="object"&&t!==null?xi(e,t):wi(e,t)}function xi(e,t){let r={};return Object.entries(t).forEach(([n,i])=>{r[n]=e.style[n],n.startsWith("--")||(n=Si(n)),e.style.setProperty(n,i)}),setTimeout(()=>{e.style.length===0&&e.removeAttribute("style")}),()=>{Ve(e,r)}}function wi(e,t){let r=e.getAttribute("style",t);return e.setAttribute("style",t),()=>{e.setAttribute("style",r||"")}}function Si(e){return e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function pt(e,t=()=>{}){let r=!1;return function(){r?t.apply(this,arguments):(r=!0,e.apply(this,arguments))}}v("transition",(e,{value:t,modifiers:r,expression:n},{evaluate:i})=>{typeof n=="function"&&(n=i(n)),n!==!1&&(!n||typeof n=="boolean"?Ai(e,r,t):Ei(e,n,t))});function Ei(e,t,r){Ir(e,$t,""),{enter:i=>{e._x_transition.enter.during=i},"enter-start":i=>{e._x_transition.enter.start=i},"enter-end":i=>{e._x_transition.enter.end=i},leave:i=>{e._x_transition.leave.during=i},"leave-start":i=>{e._x_transition.leave.start=i},"leave-end":i=>{e._x_transition.leave.end=i}}[r](t)}function Ai(e,t,r){Ir(e,Ve);let n=!t.includes("in")&&!t.includes("out")&&!r,i=n||t.includes("in")||["enter"].includes(r),s=n||t.includes("out")||["leave"].includes(r);t.includes("in")&&!n&&(t=t.filter((b,X)=>X<t.indexOf("out"))),t.includes("out")&&!n&&(t=t.filter((b,X)=>X>t.indexOf("out")));let o=!t.includes("opacity")&&!t.includes("scale"),a=o||t.includes("opacity"),u=o||t.includes("scale"),l=a?0:1,c=u?ue(t,"scale",95)/100:1,f=ue(t,"delay",0)/1e3,p=ue(t,"origin","center"),g="opacity, transform",A=ue(t,"duration",150)/1e3,d=ue(t,"duration",75)/1e3,m="cubic-bezier(0.4, 0.0, 0.2, 1)";i&&(e._x_transition.enter.during={transformOrigin:p,transitionDelay:`${f}s`,transitionProperty:g,transitionDuration:`${A}s`,transitionTimingFunction:m},e._x_transition.enter.start={opacity:l,transform:`scale(${c})`},e._x_transition.enter.end={opacity:1,transform:"scale(1)"}),s&&(e._x_transition.leave.during={transformOrigin:p,transitionDelay:`${f}s`,transitionProperty:g,transitionDuration:`${d}s`,transitionTimingFunction:m},e._x_transition.leave.start={opacity:1,transform:"scale(1)"},e._x_transition.leave.end={opacity:l,transform:`scale(${c})`})}function Ir(e,t,r={}){e._x_transition||(e._x_transition={enter:{during:r,start:r,end:r},leave:{during:r,start:r,end:r},in(n=()=>{},i=()=>{}){ht(e,t,{during:this.enter.during,start:this.enter.start,end:this.enter.end},n,i)},out(n=()=>{},i=()=>{}){ht(e,t,{during:this.leave.during,start:this.leave.start,end:this.leave.end},n,i)}})}window.Element.prototype._x_toggleAndCascadeWithTransitions=function(e,t,r,n){let i=document.visibilityState==="visible"?requestAnimationFrame:setTimeout,s=()=>i(r);if(t){e._x_transition&&(e._x_transition.enter||e._x_transition.leave)?e._x_transition.enter&&(Object.entries(e._x_transition.enter.during).length||Object.entries(e._x_transition.enter.start).length||Object.entries(e._x_transition.enter.end).length)?e._x_transition.in(r):s():e._x_transition?e._x_transition.in(r):s();return}e._x_hidePromise=e._x_transition?new Promise((o,a)=>{e._x_transition.out(()=>{},()=>o(n)),e._x_transitioning&&e._x_transitioning.beforeCancel(()=>a({isFromCancelledTransition:!0}))}):Promise.resolve(n),queueMicrotask(()=>{let o=kr(e);o?(o._x_hideChildren||(o._x_hideChildren=[]),o._x_hideChildren.push(e)):i(()=>{let a=u=>{let l=Promise.all([u._x_hidePromise,...(u._x_hideChildren||[]).map(a)]).then(([c])=>c?.());return delete u._x_hidePromise,delete u._x_hideChildren,l};a(e).catch(u=>{if(!u.isFromCancelledTransition)throw u})})})};function kr(e){let t=e.parentNode;if(t)return t._x_hidePromise?t:kr(t)}function ht(e,t,{during:r,start:n,end:i}={},s=()=>{},o=()=>{}){if(e._x_transitioning&&e._x_transitioning.cancel(),Object.keys(r).length===0&&Object.keys(n).length===0&&Object.keys(i).length===0){s(),o();return}let a,u,l;Oi(e,{start(){a=t(e,n)},during(){u=t(e,r)},before:s,end(){a(),l=t(e,i)},after:o,cleanup(){u(),l()}})}function Oi(e,t){let r,n,i,s=pt(()=>{y(()=>{r=!0,n||t.before(),i||(t.end(),ft()),t.after(),e.isConnected&&t.cleanup(),delete e._x_transitioning})});e._x_transitioning={beforeCancels:[],beforeCancel(o){this.beforeCancels.push(o)},cancel:pt(function(){for(;this.beforeCancels.length;)this.beforeCancels.shift()();s()}),finish:s},y(()=>{t.start(),t.during()}),mi(),requestAnimationFrame(()=>{if(r)return;let o=Number(getComputedStyle(e).transitionDuration.replace(/,.*/,"").replace("s",""))*1e3,a=Number(getComputedStyle(e).transitionDelay.replace(/,.*/,"").replace("s",""))*1e3;o===0&&(o=Number(getComputedStyle(e).animationDuration.replace("s",""))*1e3),y(()=>{t.before()}),n=!0,requestAnimationFrame(()=>{r||(y(()=>{t.end()}),ft(),setTimeout(e._x_transitioning.finish,o+a),i=!0)})})}function ue(e,t,r){if(e.indexOf(t)===-1)return r;let n=e[e.indexOf(t)+1];if(!n||t==="scale"&&isNaN(n))return r;if(t==="duration"||t==="delay"){let i=n.match(/([0-9]+)ms/);if(i)return i[1]}return t==="origin"&&["top","right","left","center","bottom"].includes(e[e.indexOf(t)+2])?[n,e[e.indexOf(t)+2]].join(" "):n}function Fr(e,t,r,n=[]){switch(e._x_bindings||(e._x_bindings=ne({})),e._x_bindings[t]=r,t=n.includes("camel")?Li(t):t,t){case"value":Ti(e,r);break;case"style":Ci(e,r);break;case"class":Mi(e,r);break;case"selected":case"checked":Ri(e,t,r);break;default:Lt(e,t,r);break}}function Ti(e,t){if(Dt(e))e.attributes.value===void 0&&(e.value=t);else if(De(e))Number.isInteger(t)?e.value=t:!Array.isArray(t)&&typeof t!="boolean"&&![null,void 0].includes(t)?e.value=String(t):Array.isArray(t)?e.checked=t.some(r=>Di(r,e.value)):e.checked=!!t;else if(e.tagName==="SELECT")$i(e,t);else if(e.tagName==="OPTION")Lt(e,"value",t);else{if(e.value===t&&(typeof t!="object"||t===null))return;e.value=t===void 0?"":t}}function Mi(e,t){e._x_undoAddedClasses&&e._x_undoAddedClasses(),e._x_undoAddedClasses=$t(e,t)}function Ci(e,t){e._x_undoAddedStyles&&e._x_undoAddedStyles(),e._x_undoAddedStyles=Ve(e,t)}function Ri(e,t,r){Lt(e,t,r),ji(e,t,r)}function Lt(e,t,r){[null,void 0,!1].includes(r)&&Ii(t)?e.removeAttribute(t):(Br(t)&&(r=t),ki(r)&&(r=JSON.stringify(r)),Pi(e,t,r))}function Pi(e,t,r){e.getAttribute(t)!=r&&e.setAttribute(t,r)}function ji(e,t,r){e[t]!==r&&(e[t]=r)}function $i(e,t){let r=[].concat(t).map(n=>n+"");Array.from(e.options).forEach(n=>{n.selected=r.includes(n.value)})}function Li(e){return e.toLowerCase().replace(/-(\w)/g,(t,r)=>r.toUpperCase())}function Di(e,t){return e==t}function Pe(e){return[1,"1","true","on","yes",!0].includes(e)?!0:[0,"0","false","off","no",!1].includes(e)?!1:e?!!e:null}var Ni=new Set(["allowfullscreen","async","autofocus","autoplay","checked","controls","default","defer","disabled","formnovalidate","inert","ismap","itemscope","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","selected","shadowrootclonable","shadowrootdelegatesfocus","shadowrootserializable"]);function Br(e){return Ni.has(e)}function Ii(e){return!["aria-pressed","aria-checked","aria-expanded","aria-selected"].includes(e)}function ki(e){return typeof e=="object"&&e!==null}function Fi(e,t,r){return e._x_bindings&&e._x_bindings[t]!==void 0?e._x_bindings[t]:Hr(e,t,r)}function Bi(e,t,r,n=!0){if(e._x_bindings&&e._x_bindings[t]!==void 0)return e._x_bindings[t];if(e._x_inlineBindings&&e._x_inlineBindings[t]!==void 0){let i=e._x_inlineBindings[t];return i.extract=n,gr(()=>H(e,i.expression))}return Hr(e,t,r)}function Hr(e,t,r){let n=e.getAttribute(t);return n===null?typeof r=="function"?r():r:n===""?!0:Br(t)?!![t,"true"].includes(n):n}function De(e){return e.type==="checkbox"||e.localName==="ui-checkbox"||e.localName==="ui-switch"}function Dt(e){return e.type==="radio"||e.localName==="ui-radio"}function Jr(e,t){let r;return function(){let n=this,i=arguments,s=function(){r=null,e.apply(n,i)};clearTimeout(r),r=setTimeout(s,t)}}function Vr(e,t){let r;return function(){let n=this,i=arguments;r||(e.apply(n,i),r=!0,setTimeout(()=>r=!1,t))}}function qr({get:e,set:t},{get:r,set:n}){let i=!0,s,o,a=Y(()=>{let u=e(),l=r();if(i)n(Ge(u)),i=!1;else{let c=JSON.stringify(u),f=JSON.stringify(l);c!==s?n(Ge(u)):c!==f&&t(Ge(l))}s=JSON.stringify(e()),o=JSON.stringify(r())});return()=>{wt(a),ie(a)}}function Ge(e){return typeof e=="object"?JSON.parse(JSON.stringify(e)):e}function Hi(e){(Array.isArray(e)?e:[e]).forEach(r=>r(oe))}var j={},zt=!1;function Ji(e,t){if(zt||(j=ne(j),zt=!0),t===void 0)return j[e];j[e]=t,typeof t=="object"&&t!==null&&t._x_interceptor?j[e]=t.initialize(j,e,e,()=>{}):Tt(j[e]),typeof t=="object"&&t!==null&&t.hasOwnProperty("init")&&typeof t.init=="function"&&j[e].init()}function Vi(){return j}var Kr={};function qi(e,t){let r=typeof t!="function"?()=>t:t;return e instanceof Element?Wr(e,r()):(Kr[e]=r,()=>{})}function Ki(e){return Object.entries(Kr).forEach(([t,r])=>{Object.defineProperty(e,t,{get(){return(...n)=>r(...n)}})}),e}function Wr(e,t,r){let n=[];for(;n.length;)n.pop()();let i=Object.entries(t).map(([o,a])=>({name:o,value:a})),s=mr(i);return i=i.map(o=>s.find(a=>a.name===o.name)?{name:`x-bind:${o.name}`,value:`"${o.value}"`}:o),Be(e,i,r).map(o=>{n.push(o.runCleanups),o()}),()=>{for(;n.length;)n.pop()()}}var zr={};function Wi(e,t){zr[e]=t}function zi(e,t){return Object.entries(zr).forEach(([r,n])=>{Object.defineProperty(e,r,{get(){return(...i)=>n.bind(t)(...i)},enumerable:!1})}),e}var Ui={get reactive(){return ne},get release(){return ie},get effect(){return Y},get raw(){return rr},get transaction(){return jn},version:"3.17.4",flushAndStopDeferringMutations:kn,dontAutoEvaluateFunctions:gr,disableEffectScheduling:Cn,startObservingMutations:At,stopObservingMutations:cr,setReactivityEngine:Rn,onAttributeRemoved:ur,onAttributesAdded:ar,closestDataStack:V,skipDuringClone:L,onlyDuringClone:oi,addRootSelector:Lr,addInitSelector:Dr,setErrorHandler:qn,interceptClone:Ee,addScopeToNode:Se,deferMutations:In,mapAttributes:Ct,evaluateLater:x,interceptInit:gi,initInterceptors:Tt,injectMagics:ge,setEvaluator:Wn,setRawEvaluator:zn,mergeProxies:q,extractProp:Bi,findClosest:S,onElRemoved:St,closestRoot:Je,destroyTree:Z,interceptor:pr,transition:ht,setStyles:Ve,mutateDom:y,deferInit:ci,directive:v,entangle:qr,throttle:Vr,debounce:Jr,evaluate:H,evaluateRaw:Xn,initTree:R,nextTick:jt,prefixed:se,prefix:ei,plugin:Hi,magic:T,store:Ji,start:hi,clone:ui,cloneNode:ai,bound:Fi,$data:fr,watch:nr,walk:K,data:Wi,bind:qi},oe=Ui;function Ur(e){let t=Object.create(null);for(let r of e.split(","))t[r]=1;return r=>r in t}var eo=Object.freeze({}),to=Object.freeze([]),ve=Object.assign,Gi=Object.prototype.hasOwnProperty,_t=(e,t)=>Gi.call(e,t),me=Array.isArray,de=e=>Gr(e)==="[object Map]",Yi=e=>typeof e=="string",Ae=e=>typeof e=="symbol",be=e=>e!==null&&typeof e=="object",Zi=Object.prototype.toString,Gr=e=>Zi.call(e),Yr=e=>Gr(e).slice(8,-1),Nt=e=>Yi(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,qe=e=>{let t=Object.create(null);return r=>t[r]||(t[r]=e(r))},Xi=/-\w/g,ro=qe(e=>e.replace(Xi,t=>t.slice(1).toUpperCase())),Qi=/\B([A-Z])/g,no=qe(e=>e.replace(Qi,"-$1").toLowerCase()),Zr=qe(e=>e.charAt(0).toUpperCase()+e.slice(1)),io=qe(e=>e?`on${Zr(e)}`:""),F=(e,t)=>!Object.is(e,t),es="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",so=Ur(es+",async,autofocus,autoplay,controls,default,defer,disabled,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected");function W(e,...t){console.warn(`[Vue warn] ${e}`,...t)}var Ye,h,Ze=new WeakSet,Ut=class{constructor(e){this.fn=e,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,Ye&&(Ye.active?Ye.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Ze.has(this)&&(Ze.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||ts(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,Gt(this),Qr(this);let e=h,t=O;h=this,O=!0;try{return this.fn()}finally{h!==this&&W("Active effect was not restored correctly - this is likely a Vue internal bug."),en(this),h=e,O=t,this.flags&=-3}}stop(){if(this.flags&1){for(let e=this.deps;e;e=e.nextDep)Ft(e);this.deps=this.depsTail=void 0,Gt(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Ze.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){gt(this)&&this.run()}get dirty(){return gt(this)}},Xr=0,pe,he;function ts(e,t=!1){if(e.flags|=8,t){e.next=he,he=e;return}e.next=pe,pe=e}function It(){Xr++}function kt(){if(--Xr>0)return;if(he){let t=he;for(he=void 0;t;){let r=t.next;t.next=void 0,t.flags&=-9,t=r}}let e;for(;pe;){let t=pe;for(pe=void 0;t;){let r=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=r}}if(e)throw e}function Qr(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function en(e){let t,r=e.depsTail,n=r;for(;n;){let i=n.prevDep;n.version===-1?(n===r&&(r=i),Ft(n),ns(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=i}e.deps=t,e.depsTail=r}function gt(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(rs(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function rs(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Ne)||(e.globalVersion=Ne,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!gt(e))))return;e.flags|=2;let t=e.dep,r=h,n=O;h=e,O=!0;try{Qr(e);let i=e.fn(e._value);(t.version===0||F(i,e._value))&&(e.flags|=128,e._value=i,t.version++)}catch(i){throw t.version++,i}finally{h=r,O=n,en(e),e.flags&=-3}}function Ft(e,t=!1){let{dep:r,prevSub:n,nextSub:i}=e;if(n&&(n.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=n,e.nextSub=void 0),r.subsHead===e&&(r.subsHead=i),r.subs===e&&(r.subs=n,!n&&r.computed)){r.computed.flags&=-5;for(let s=r.computed.deps;s;s=s.nextDep)Ft(s,!0)}!t&&!--r.sc&&r.map&&r.map.delete(r.key)}function ns(e){let{prevDep:t,nextDep:r}=e;t&&(t.nextDep=r,e.prevDep=void 0),r&&(r.prevDep=t,e.nextDep=void 0)}function is(e,t){e.effect instanceof Ut&&(e=e.effect.fn);let r=new Ut(e);t&&ve(r,t);try{r.run()}catch(i){throw r.stop(),i}let n=r.run.bind(r);return n.effect=r,n}function ss(e){e.effect.stop()}var O=!0,tn=[];function os(){tn.push(O),O=!1}function as(){let e=tn.pop();O=e===void 0?!0:e}function Gt(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let r=h;h=void 0;try{t()}finally{h=r}}}var Ne=0,us=class{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},ls=class{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0,this.subsHead=void 0}track(e){if(!h||!O||h===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==h)t=this.activeLink=new us(h,this),h.deps?(t.prevDep=h.depsTail,h.depsTail.nextDep=t,h.depsTail=t):h.deps=h.depsTail=t,rn(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){let r=t.nextDep;r.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=r),t.prevDep=h.depsTail,t.nextDep=void 0,h.depsTail.nextDep=t,h.depsTail=t,h.deps===t&&(h.deps=r)}return h.onTrack&&h.onTrack(ve({effect:h},e)),t}trigger(e){this.version++,Ne++,this.notify(e)}notify(e){It();try{for(let t=this.subsHead;t;t=t.nextSub)t.sub.onTrigger&&!(t.sub.flags&8)&&t.sub.onTrigger(ve({effect:t.sub},e));for(let t=this.subs;t;t=t.prevSub)t.sub.notify()&&t.sub.dep.notify()}finally{kt()}}};function rn(e){if(e.dep.sc++,e.sub.flags&4){let t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)rn(n)}let r=e.dep.subs;r!==e&&(e.prevSub=r,r&&(r.nextSub=e)),e.dep.subsHead===void 0&&(e.dep.subsHead=e),e.dep.subs=e}}var yt=new WeakMap,J=Symbol("Object iterate"),vt=Symbol("Map keys iterate"),xe=Symbol("Array iterate");function w(e,t,r){if(O&&h){let n=yt.get(e);n||yt.set(e,n=new Map);let i=n.get(r);i||(n.set(r,i=new ls),i.map=n,i.key=r),i.track({target:e,type:t,key:r})}}function D(e,t,r,n,i,s){let o=yt.get(e);if(!o){Ne++;return}let a=u=>{u&&u.trigger({target:e,type:t,key:r,newValue:n,oldValue:i,oldTarget:s})};if(It(),t==="clear")o.forEach(a);else{let u=me(e),l=u&&Nt(r);if(u&&r==="length"){let c=Number(n);o.forEach((f,p)=>{(p==="length"||p===xe||!Ae(p)&&p>=c)&&a(f)})}else switch((r!==void 0||o.has(void 0))&&a(o.get(r)),l&&a(o.get(xe)),t){case"add":u?l&&a(o.get("length")):(a(o.get(J)),de(e)&&a(o.get(vt)));break;case"delete":u||(a(o.get(J)),de(e)&&a(o.get(vt)));break;case"set":de(e)&&a(o.get(J));break}}kt()}function Q(e){let t=_(e);return t===e?t:(w(t,"iterate",xe),U(e)?t:t.map(G))}function Bt(e){return w(e=_(e),"iterate",xe),e}function M(e,t){return z(e)?cn(e)?we(G(t)):we(t):G(t)}var cs={__proto__:null,[Symbol.iterator](){return Xe(this,Symbol.iterator,e=>M(this,e))},concat(...e){return Q(this).concat(...e.map(t=>me(t)?Q(t):t))},entries(){return Xe(this,"entries",e=>(e[1]=M(this,e[1]),e))},every(e,t){return P(this,"every",e,t,void 0,arguments)},filter(e,t){return P(this,"filter",e,t,r=>r.map(n=>M(this,n)),arguments)},find(e,t){return P(this,"find",e,t,r=>M(this,r),arguments)},findIndex(e,t){return P(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return P(this,"findLast",e,t,r=>M(this,r),arguments)},findLastIndex(e,t){return P(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return P(this,"forEach",e,t,void 0,arguments)},includes(...e){return Qe(this,"includes",e)},indexOf(...e){return Qe(this,"indexOf",e)},join(e){return Q(this).join(e)},lastIndexOf(...e){return Qe(this,"lastIndexOf",e)},map(e,t){return P(this,"map",e,t,void 0,arguments)},pop(){return le(this,"pop")},push(...e){return le(this,"push",e)},reduce(e,...t){return Yt(this,"reduce",e,t)},reduceRight(e,...t){return Yt(this,"reduceRight",e,t)},shift(){return le(this,"shift")},some(e,t){return P(this,"some",e,t,void 0,arguments)},splice(...e){return le(this,"splice",e)},toReversed(){return Q(this).toReversed()},toSorted(e){return Q(this).toSorted(e)},toSpliced(...e){return Q(this).toSpliced(...e)},unshift(...e){return le(this,"unshift",e)},values(){return Xe(this,"values",e=>M(this,e))}};function Xe(e,t,r){let n=Bt(e),i=n[t]();return n!==e&&!U(e)&&(i._next=i.next,i.next=()=>{let s=i._next();return s.done||(s.value=r(s.value)),s}),i}var fs=Array.prototype;function P(e,t,r,n,i,s){let o=Bt(e),a=o!==e&&!U(e),u=o[t];if(u!==fs[t]){let f=u.apply(e,s);return a?G(f):f}let l=r;o!==e&&(a?l=function(f,p){return r.call(this,M(e,f),p,e)}:r.length>2&&(l=function(f,p){return r.call(this,f,p,e)}));let c=u.call(o,l,n);return a&&i?i(c):c}function Yt(e,t,r,n){let i=Bt(e),s=i!==e&&!U(e),o=r,a=!1;i!==e&&(s?(a=n.length===0,o=function(l,c,f){return a&&(a=!1,l=M(e,l)),r.call(this,l,M(e,c),f,e)}):r.length>3&&(o=function(l,c,f){return r.call(this,l,c,f,e)}));let u=i[t](o,...n);return a?M(e,u):u}function Qe(e,t,r){let n=_(e);w(n,"iterate",xe);let i=n[t](...r);return(i===-1||i===!1)&&As(r[0])?(r[0]=_(r[0]),n[t](...r)):i}function le(e,t,r=[]){os(),It();let n=_(e)[t].apply(e,r);return kt(),as(),n}var ds=Ur("__proto__,__v_isRef,__isVue"),nn=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Ae));function ps(e){Ae(e)||(e=String(e));let t=_(this);return w(t,"has",e),t.hasOwnProperty(e)}var sn=class{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,r){if(t==="__v_skip")return e.__v_skip;let n=this._isReadonly,i=this._isShallow;if(t==="__v_isReactive")return!n;if(t==="__v_isReadonly")return n;if(t==="__v_isShallow")return i;if(t==="__v_raw")return r===(n?i?Ss:un:i?ws:an).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(r)?e:void 0;let s=me(e);if(!n){let a;if(s&&(a=cs[t]))return a;if(t==="hasOwnProperty")return ps}let o=Reflect.get(e,t,_e(e)?e:r);if((Ae(t)?nn.has(t):ds(t))||(n||w(e,"get",t),i))return o;if(_e(o)){let a=s&&Nt(t)?o:o.value;return n&&be(a)?bt(a):a}return be(o)?n?bt(o):Ht(o):o}},hs=class extends sn{constructor(e=!1){super(!1,e)}set(e,t,r,n){let i=e[t],s=me(e)&&Nt(t);if(!this._isShallow){let u=z(i);if(!U(r)&&!z(r)&&(i=_(i),r=_(r)),!s&&_e(i)&&!_e(r))return u?(W(`Set operation on key "${String(t)}" failed: target is readonly.`,e[t]),!0):(i.value=r,!0)}let o=s?Number(t)<e.length:_t(e,t),a=Reflect.set(e,t,r,_e(e)?e:n);return e===_(n)&&a&&(o?F(r,i)&&D(e,"set",t,r,i):D(e,"add",t,r)),a}deleteProperty(e,t){let r=_t(e,t),n=e[t],i=Reflect.deleteProperty(e,t);return i&&r&&D(e,"delete",t,void 0,n),i}has(e,t){let r=Reflect.has(e,t);return(!Ae(t)||!nn.has(t))&&w(e,"has",t),r}ownKeys(e){return w(e,"iterate",me(e)?"length":J),Reflect.ownKeys(e)}},_s=class extends sn{constructor(e=!1){super(!0,e)}set(e,t){return W(`Set operation on key "${String(t)}" failed: target is readonly.`,e),!0}deleteProperty(e,t){return W(`Delete operation on key "${String(t)}" failed: target is readonly.`,e),!0}},gs=new hs,ys=new _s,mt=e=>e,Me=e=>Reflect.getPrototypeOf(e);function vs(e,t,r){return function(...n){let i=this.__v_raw,s=_(i),o=de(s),a=e==="entries"||e===Symbol.iterator&&o,u=e==="keys"&&o,l=i[e](...n),c=r?mt:t?we:G;return!t&&w(s,"iterate",u?vt:J),ve(Object.create(l),{next(){let{value:f,done:p}=l.next();return p?{value:f,done:p}:{value:a?[c(f[0]),c(f[1])]:c(f),done:p}}})}}function Ce(e){return function(...t){{let r=t[0]?`on key "${t[0]}" `:"";W(`${Zr(e)} operation ${r}failed: target is readonly.`,_(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function ms(e,t){let r={get(i){let s=this.__v_raw,o=_(s),a=_(i);e||(F(i,a)&&w(o,"get",i),w(o,"get",a));let{has:u}=Me(o),l=t?mt:e?we:G;if(u.call(o,i))return l(s.get(i));if(u.call(o,a))return l(s.get(a));s!==o&&s.get(i)},get size(){let i=this.__v_raw;return!e&&w(_(i),"iterate",J),i.size},has(i){let s=this.__v_raw,o=_(s),a=_(i);return e||(F(i,a)&&w(o,"has",i),w(o,"has",a)),i===a?s.has(i):s.has(i)||s.has(a)},forEach(i,s){let o=this,a=o.__v_raw,u=_(a),l=t?mt:e?we:G;return!e&&w(u,"iterate",J),a.forEach((c,f)=>i.call(s,l(c),l(f),o))}};return ve(r,e?{add:Ce("add"),set:Ce("set"),delete:Ce("delete"),clear:Ce("clear")}:{add(i){let s=_(this),o=Me(s),a=_(i),u=!t&&!U(i)&&!z(i)?a:i;return o.has.call(s,u)||F(i,u)&&o.has.call(s,i)||F(a,u)&&o.has.call(s,a)||(s.add(u),D(s,"add",u,u)),this},set(i,s){!t&&!U(s)&&!z(s)&&(s=_(s));let o=_(this),{has:a,get:u}=Me(o),l=a.call(o,i);l?Zt(o,a,i):(i=_(i),l=a.call(o,i));let c=u.call(o,i);return o.set(i,s),l?F(s,c)&&D(o,"set",i,s,c):D(o,"add",i,s),this},delete(i){let s=_(this),{has:o,get:a}=Me(s),u=o.call(s,i);u?Zt(s,o,i):(i=_(i),u=o.call(s,i));let l=a?a.call(s,i):void 0,c=s.delete(i);return u&&D(s,"delete",i,void 0,l),c},clear(){let i=_(this),s=i.size!==0,o=de(i)?new Map(i):new Set(i),a=i.clear();return s&&D(i,"clear",void 0,void 0,o),a}}),["keys","values","entries",Symbol.iterator].forEach(i=>{r[i]=vs(i,e,t)}),r}function on(e,t){let r=ms(e,t);return(n,i,s)=>i==="__v_isReactive"?!e:i==="__v_isReadonly"?e:i==="__v_raw"?n:Reflect.get(_t(r,i)&&i in n?r:n,i,s)}var bs={get:on(!1,!1)},xs={get:on(!0,!1)};function Zt(e,t,r){let n=_(r);if(n!==r&&t.call(e,n)){let i=Yr(e);W(`Reactive ${i} contains both the raw and reactive versions of the same object${i==="Map"?" as keys":""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`)}}var an=new WeakMap,ws=new WeakMap,un=new WeakMap,Ss=new WeakMap;function Es(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Ht(e){return z(e)?e:ln(e,!1,gs,bs,an)}function bt(e){return ln(e,!0,ys,xs,un)}function ln(e,t,r,n,i){if(!be(e))return W(`value cannot be made ${t?"readonly":"reactive"}: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;let s=i.get(e);if(s)return s;let o=Es(Yr(e));if(o===0)return e;let a=new Proxy(e,o===2?n:r);return i.set(e,a),a}function cn(e){return z(e)?cn(e.__v_raw):!!(e&&e.__v_isReactive)}function z(e){return!!(e&&e.__v_isReadonly)}function U(e){return!!(e&&e.__v_isShallow)}function As(e){return e?!!e.__v_raw:!1}function _(e){let t=e&&e.__v_raw;return t?_(t):e}var G=e=>be(e)?Ht(e):e,we=e=>be(e)?bt(e):e;function _e(e){return e?e.__v_isRef===!0:!1}T("nextTick",()=>jt);T("dispatch",e=>fe.bind(fe,e));T("watch",(e,{evaluateLater:t,cleanup:r})=>(n,i)=>{let s=t(n),a=nr(()=>{let u;return s(l=>u=l),u},i);r(a)});T("store",Vi);T("data",e=>fr(e));T("root",e=>Je(e));T("refs",e=>(e._x_refs_proxy||(e._x_refs_proxy=q(Os(e))),e._x_refs_proxy));function Os(e){let t=[];return S(e,r=>{r._x_refs&&t.push(r._x_refs)}),t}var et={};function fn(e){return et[e]||(et[e]=0),++et[e]}function Ts(e,t){return S(e,r=>{if(r._x_ids&&r._x_ids[t])return!0})}function Ms(e,t){e._x_ids||(e._x_ids={}),e._x_ids[t]||(e._x_ids[t]=fn(t))}T("id",(e,{cleanup:t})=>(r,n=null)=>{let i=`${r}${n?`-${n}`:""}`;return Cs(e,i,t,()=>{let s=Ts(e,r),o=s?s._x_ids[r]:fn(r);return n?`${r}-${o}-${n}`:`${r}-${o}`})});Ee((e,t)=>{e._x_id&&(t._x_id=e._x_id)});function Cs(e,t,r,n){if(e._x_id||(e._x_id={}),e._x_id[t])return e._x_id[t];let i=n();return e._x_id[t]=i,r(()=>{delete e._x_id[t]}),i}T("el",e=>e);dn("Focus","focus","focus");dn("Persist","persist","persist");function dn(e,t,r){T(t,n=>C(`You can't use [$${t}] without first installing the "${e}" plugin here: https://alpinejs.dev/plugins/${r}`,n))}v("modelable",(e,{expression:t},{effect:r,evaluateLater:n,cleanup:i})=>{let s=n(t),o=()=>{let c;return s(f=>c=f),c},a=n(`${t} = __placeholder`),u=c=>a(()=>{},{scope:{__placeholder:c}}),l=o();u(l),queueMicrotask(()=>{if(!e._x_model)return;e._x_removeModelListeners.default();let c=e._x_model.get,f=e._x_model.setWithModifiers,p=qr({get(){return c()},set(g){f(g)}},{get(){return o()},set(g){u(g)}});i(p)})});v("teleport",(e,{modifiers:t,expression:r},{cleanup:n})=>{e.tagName.toLowerCase()!=="template"&&C("x-teleport can only be used on a <template> tag",e);let i=Xt(r),s=e.content.cloneNode(!0).firstElementChild;e._x_teleport=s,s._x_teleportBack=e,e.setAttribute("data-teleport-template",!0),s.setAttribute("data-teleport-target",!0),e._x_forwardEvents&&e._x_forwardEvents.forEach(a=>{s.addEventListener(a,u=>{u.stopPropagation(),e.dispatchEvent(new u.constructor(u.type,u))})}),Se(s,{},e);let o=(a,u,l)=>{l.includes("prepend")?u.parentNode.insertBefore(a,u):l.includes("append")?u.parentNode.insertBefore(a,u.nextSibling):u.appendChild(a)};y(()=>{L(()=>{o(s,i,t),R(s)})()}),e._x_teleportPutBack=()=>{let a=Xt(r);y(()=>{o(e._x_teleport,a,t)})},n(()=>y(()=>{s.remove(),Z(s)}))});var Rs=document.createElement("div");function Xt(e){let t=L(()=>document.querySelector(e),()=>Rs)();return t||C(`Cannot find x-teleport element for selector: "${e}"`),t}var pn=()=>{};pn.inline=(e,{modifiers:t},{cleanup:r})=>{t.includes("self")?e._x_ignoreSelf=!0:e._x_ignore=!0,r(()=>{t.includes("self")?delete e._x_ignoreSelf:delete e._x_ignore})};v("ignore",pn);v("effect",L((e,{expression:t},{effect:r})=>{r(x(e,t))}));function ee(e,t,r,n){let i=e,s=u=>n(u),o={},a=(u,l)=>c=>l(u,c);return r.includes("dot")&&(t=Ps(t)),r.includes("camel")&&(t=js(t)),r.includes("capture")&&(o.capture=!0),r.includes("window")&&(i=window),r.includes("document")&&(i=document),r.includes("passive")&&(o.passive=r[r.indexOf("passive")+1]!=="false"),s=hn(r,s),r.includes("prevent")&&(s=a(s,(u,l)=>{l.preventDefault(),u(l)})),r.includes("stop")&&(s=a(s,(u,l)=>{l.stopPropagation(),u(l)})),r.includes("once")&&(s=a(s,(u,l)=>{u(l),i.removeEventListener(t,s,o)})),(r.includes("away")||r.includes("outside"))&&(i=document,s=a(s,(u,l)=>{e.contains(l.target)||l.target.isConnected!==!1&&(e.offsetWidth<1&&e.offsetHeight<1||e._x_isShown!==!1&&u(l))})),r.includes("self")&&(s=a(s,(u,l)=>{l.target===e&&u(l)})),t==="submit"&&(s=a(s,(u,l)=>{l.target._x_pendingModelUpdates&&l.target._x_pendingModelUpdates.forEach(c=>c()),u(l)})),(Ls(t)||_n(t))&&(s=a(s,(u,l)=>{Ns(l,r)||u(l)})),i.addEventListener(t,s,o),()=>{i.removeEventListener(t,s,o)}}function hn(e,t){if(e.includes("debounce")){let r=e[e.indexOf("debounce")+1]||"invalid-wait",n=Ie(r.split("ms")[0])?Number(r.split("ms")[0]):250;t=Jr(t,n)}if(e.includes("throttle")){let r=e[e.indexOf("throttle")+1]||"invalid-wait",n=Ie(r.split("ms")[0])?Number(r.split("ms")[0]):250;t=Vr(t,n)}return t}function Ps(e){return e.replace(/-/g,".")}function js(e){return e.toLowerCase().replace(/-(\w)/g,(t,r)=>r.toUpperCase())}function Ie(e){return!Array.isArray(e)&&!isNaN(e)}function $s(e){return[" ","_"].includes(e)?e:e.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[_\s]/,"-").toLowerCase()}function Ls(e){return["keydown","keyup"].includes(e)}function _n(e){return["contextmenu","click","mouse"].some(t=>e.includes(t))}var Ds=["window","document","prevent","stop","once","capture","self","away","outside","passive","dot","camel","preserve-scroll","blur","change","lazy","number","boolean","trim","fill","unintrusive","parent"];function Ns(e,t){let r=t.filter((s,o)=>s==="false"&&t[o-1]==="passive"?!1:!Ds.includes(s));if(r.includes("debounce")){let s=r.indexOf("debounce");r.splice(s,Ie((r[s+1]||"invalid-wait").split("ms")[0])?2:1)}if(r.includes("throttle")){let s=r.indexOf("throttle");r.splice(s,Ie((r[s+1]||"invalid-wait").split("ms")[0])?2:1)}if(r.length===0||r.length===1&&Qt(e.key).includes(r[0]))return!1;let i=["ctrl","shift","alt","meta","cmd","super"].filter(s=>r.includes(s));return r=r.filter(s=>!i.includes(s)),!(i.length>0&&i.filter(o=>((o==="cmd"||o==="super")&&(o="meta"),e[`${o}Key`])).length===i.length&&(_n(e.type)||Qt(e.key).includes(r[0])))}function Qt(e){if(!e)return[];e=$s(e);let t={ctrl:"control",slash:"/",space:" ",spacebar:" ",cmd:"meta",esc:"escape",up:"arrow-up",down:"arrow-down",left:"arrow-left",right:"arrow-right",period:".",comma:",",equal:"=",minus:"-",underscore:"_"};return t[e]=e,Object.keys(t).map(r=>{if(t[r]===e)return r}).filter(r=>r)}v("model",(e,{modifiers:t,expression:r},{effect:n,cleanup:i})=>{let s=e;t.includes("parent")&&(s=S(e,d=>d!==e));let o=x(s,r),a;typeof r=="string"?a=x(s,`${r} = __placeholder`):typeof r=="function"&&typeof r()=="string"?a=x(s,`${r()} = __placeholder`):a=()=>{};let u=()=>{let d;return o(m=>d=m),er(d)?d.get():d},l=d=>{let m;o(b=>m=b),er(m)?m.set(d):a(()=>{},{scope:{__placeholder:d}})};typeof r=="string"&&e.type==="radio"&&y(()=>{e.hasAttribute("name")||e.setAttribute("name",r)});let c=t.includes("change")||t.includes("lazy"),f=t.includes("blur"),p=t.includes("enter"),g=c||f||p,A;if(N)A=()=>{};else if(g){let d=[],m=b=>l(Re(e,t,b,u()));if(c&&d.push(ee(e,"change",t,m)),f&&(d.push(ee(e,"blur",t,m)),e.form)){let b=e.form,X=()=>m({target:e});b._x_pendingModelUpdates||(b._x_pendingModelUpdates=[]),b._x_pendingModelUpdates.push(X),i(()=>{b._x_pendingModelUpdates&&b._x_pendingModelUpdates.splice(b._x_pendingModelUpdates.indexOf(X),1)})}p&&d.push(ee(e,"keydown",t,b=>{b.key==="Enter"&&m(b)})),A=()=>d.forEach(b=>b())}else{let d=e.tagName.toLowerCase()==="select"||["checkbox","radio"].includes(e.type)?"change":"input";A=ee(e,d,t,m=>{l(Re(e,t,m,u()))})}if(t.includes("fill")&&([void 0,null,""].includes(u())||De(e)&&Array.isArray(u())||e.tagName.toLowerCase()==="select"&&e.multiple)&&l(Re(e,t,{target:e},u())),e._x_removeModelListeners||(e._x_removeModelListeners={}),e._x_removeModelListeners.default=A,i(()=>e._x_removeModelListeners.default()),e.form){let d=ee(e.form,"reset",[],m=>{jt(()=>e._x_model&&e._x_model.set(Re(e,t,{target:e},u())))});i(()=>d())}if(e._x_model={get(){return u()},set(d){l(d)},setWithModifiers:hn(t,l)},e._x_forceModelUpdate=d=>{d===void 0&&typeof r=="string"&&r.match(/\./)&&(d=""),y(()=>{De(e)?Array.isArray(d)?e.checked=d.some(m=>m==e.value):e.checked=!!d:Dt(e)?typeof d=="boolean"?e.checked=Pe(e.value)===d:e.checked=e.value==d:Fr(e,"value",d)})},e.tagName==="SELECT"){let d=new MutationObserver(()=>{e._x_forceModelUpdate(u())});d.observe(e,{childList:!0}),i(()=>d.disconnect())}n(()=>{let d=u();t.includes("unintrusive")&&document.activeElement.isSameNode(e)||e._x_forceModelUpdate(d)})});function Re(e,t,r,n){return y(()=>{if(r instanceof CustomEvent&&r.detail!==void 0)return r.detail!==null&&r.detail!==void 0?r.detail:r.target.value;if(De(e))if(Array.isArray(n)){let i=null;return t.includes("number")?i=tt(r.target.value):t.includes("boolean")?i=Pe(r.target.value):i=r.target.value,r.target.checked?n.includes(i)?n:n.concat([i]):n.filter(s=>!Is(s,i))}else return r.target.checked;else{if(e.tagName.toLowerCase()==="select"&&e.multiple)return t.includes("number")?Array.from(r.target.selectedOptions).map(i=>{let s=i.value||i.text;return tt(s)}):t.includes("boolean")?Array.from(r.target.selectedOptions).map(i=>{let s=i.value||i.text;return Pe(s)}):Array.from(r.target.selectedOptions).map(i=>i.value||i.text);{let i;return Dt(e)?r.target.checked?i=r.target.value:i=n:i=r.target.value,t.includes("number")?tt(i):t.includes("boolean")?Pe(i):t.includes("trim")?i.trim():i}}})}function tt(e){let t=e?parseFloat(e):null;return ks(t)?t:e}function Is(e,t){return e==t}function ks(e){return!Array.isArray(e)&&!isNaN(e)}function er(e){return e!==null&&typeof e=="object"&&typeof e.get=="function"&&typeof e.set=="function"}v("cloak",e=>queueMicrotask(()=>y(()=>e.removeAttribute(se("cloak")))));Dr(()=>`[${se("init")}]`);v("init",L((e,{expression:t},{evaluate:r})=>typeof t=="string"?!!t.trim()&&r(t,{},!1):r(t,{},!1)));v("text",(e,{expression:t},{effect:r,evaluateLater:n})=>{let i=n(t);r(()=>{i(s=>{y(()=>{e.textContent=s})})})});v("html",(e,{expression:t},{effect:r,evaluateLater:n})=>{let i=n(t);r(()=>{i(s=>{y(()=>{Array.from(e.children).forEach(o=>Z(o)),e.innerHTML=s??"",e._x_ignoreSelf=!0,R(e),delete e._x_ignoreSelf})})},{priority:"structural"})});Ct(wr(":",Sr(se("bind:"))));var gn=(e,{value:t,modifiers:r,expression:n,original:i},{effect:s,cleanup:o})=>{if(!t){let u={};Ki(u),x(e,n)(c=>{Wr(e,c,i)},{scope:u});return}if(t==="key")return Fs(e,n);if(e._x_inlineBindings&&e._x_inlineBindings[t]&&e._x_inlineBindings[t].extract)return;let a=x(e,n);s(()=>a(u=>{u===void 0&&typeof n=="string"&&n.match(/\./)&&(u=""),y(()=>Fr(e,t,u,r))})),o(()=>{e._x_undoAddedClasses&&e._x_undoAddedClasses(),e._x_undoAddedStyles&&e._x_undoAddedStyles()})};gn.inline=(e,{value:t,modifiers:r,expression:n})=>{t&&(e._x_inlineBindings||(e._x_inlineBindings={}),e._x_inlineBindings[t]={expression:n,extract:!1})};v("bind",gn);function Fs(e,t){e._x_keyExpression=t}Lr(()=>`[${se("data")}]`);var I=Symbol();v("data",(e,{expression:t},{cleanup:r})=>{if(Hs(e))return;let n=e[I];if(n?.expression===t)return;t=t===""?"{}":t;let i={};ge(i,e);let s={};zi(s,i);let o=H(e,t,{scope:s});(o===void 0||o===!0)&&(o={}),ge(o,e);let a;if(n?.reactiveData){a=n.reactiveData,Bs(a,o);let l={expression:t};e[I]=l,queueMicrotask(()=>{e[I]===l&&delete e[I]})}else a=ne(o);Tt(a,r);let u=Se(e,a);L(()=>{a.init&&H(e,a.init)})(),r(()=>{a.destroy&&H(e,a.destroy),u();let l={reactiveData:a};e[I]=l,queueMicrotask(()=>{e[I]===l&&delete e[I]})})});function Bs(e,t){Object.keys(t).forEach(r=>{let n=Object.getOwnPropertyDescriptor(t,r),i=Object.getOwnPropertyDescriptor(e,r);n.get||n.set||i?.get||i?.set?(i&&delete e[r],i||(e[r]=void 0),n.get||n.set?Object.defineProperty(e,r,n):e[r]=t[r]):e[r]=t[r]}),Object.keys(e).filter(r=>!Object.prototype.hasOwnProperty.call(t,r)).forEach(r=>delete e[r])}Ee((e,t)=>{e._x_dataStack&&(t._x_dataStack=e._x_dataStack,t.setAttribute("data-has-alpine-state",!0))});function Hs(e){return N?lt?!0:e.hasAttribute("data-has-alpine-state"):!1}v("show",(e,{modifiers:t,expression:r},{effect:n})=>{let i=x(e,r);e._x_doHide||(e._x_doHide=()=>{y(()=>{e.style.setProperty("display","none",t.includes("important")?"important":void 0)})}),e._x_doShow||(e._x_doShow=()=>{y(()=>{e.style.length===1&&e.style.display==="none"?e.removeAttribute("style"):e.style.removeProperty("display")})});let s=()=>{e._x_doHide(),e._x_isShown=!1},o=()=>{e._x_doShow(),e._x_isShown=!0},a=()=>setTimeout(o),u=pt(f=>f?o():s(),f=>{typeof e._x_toggleAndCascadeWithTransitions=="function"?e._x_toggleAndCascadeWithTransitions(e,f,o,s):f?a():s()}),l,c=!0;n(()=>i(f=>{!c&&f===l||(t.includes("immediate")&&(f?a():s()),u(f),l=f,c=!1)}))});v("for",L((e,{expression:t},{effect:r,cleanup:n})=>{let i=qs(t),s=x(e,i.items),o=x(e,e._x_keyExpression||"index");e._x_lookup=new Map,r(()=>Vs(e,i,s,o),{priority:"structural"}),n(()=>{e._x_lookup.forEach(a=>y(()=>{Z(a),a.remove()})),delete e._x_lookup,delete e._x_lastRenderedEl})}));function Js(e){return t=>{Object.entries(t).forEach(([r,n])=>{e[r]=n})}}function Vs(e,t,r,n){r(i=>{Ws(i)&&(i=Array.from({length:i},(l,c)=>c+1)),i==null&&(i=[]),i instanceof Set&&(i=Array.from(i)),i instanceof Map&&(i=Array.from(i));let s=e._x_lookup,o=new Map;e._x_lookup=o;let a=zs(i),u=Object.entries(i).map(([l,c])=>{a||(l=parseInt(l));let f=Ks(t,c,l,i),p;return n(g=>{typeof g=="object"&&C("x-for key cannot be an object, it must be a string or an integer",e),s.has(g)&&(o.set(g,s.get(g)),s.delete(g)),p=g},{scope:{index:l,...f}}),[p,f]});y(()=>{s.forEach(f=>{Z(f),f.remove()});let l=new Set,c=e;u.forEach(([f,p])=>{if(o.has(f)){let d=o.get(f);d._x_refreshXForScope(p),c.nextElementSibling!==d&&(c.nextElementSibling&&d.replaceWith(c.nextElementSibling),c.after(d)),c=d,d._x_currentIfEl&&(d.nextElementSibling!==d._x_currentIfEl&&c.after(d._x_currentIfEl),c=d._x_currentIfEl);return}e.content.children.length>1&&C("x-for templates require a single root element, additional elements will be ignored.",e);let g=document.importNode(e.content,!0).firstElementChild,A=ne(p);Se(g,A,e),g._x_refreshXForScope=Js(A),o.set(f,g),l.add(g),c.after(g),c=g}),l.forEach(f=>R(f)),c!==e?e._x_lastRenderedEl=c:delete e._x_lastRenderedEl})})}function qs(e){let t=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,r=/^\s*\(|\)\s*$/g,n=/([\s\S]*?)\b(?:in|of)\b([\s\S]*)/,i=e.match(n);if(!i)return;let s={};s.items=i[2].trim();let o=i[1].replace(r,"").trim(),a=o.match(t);return a?(s.item=o.replace(t,"").trim(),s.index=a[1].trim(),a[2]&&(s.collection=a[2].trim())):s.item=o,s}function Ks(e,t,r,n){let i={};return/^\[.*\]$/.test(e.item)&&Array.isArray(t)?e.item.replace("[","").replace("]","").split(",").map(o=>o.trim()).forEach((o,a)=>{i[o]=t[a]}):/^\{.*\}$/.test(e.item)&&!Array.isArray(t)&&typeof t=="object"?e.item.replace("{","").replace("}","").split(",").map(o=>o.trim()).forEach(o=>{i[o]=t[o]}):i[e.item]=t,e.index&&(i[e.index]=r),e.collection&&(i[e.collection]=n),i}function Ws(e){return typeof e!="object"&&!isNaN(e)}function zs(e){return typeof e=="object"&&!Array.isArray(e)}function yn(){}yn.inline=(e,{expression:t},{cleanup:r})=>{let n=Je(e);n&&(n._x_refs||(n._x_refs={}),n._x_refs[t]=e,r(()=>delete n._x_refs[t]))};v("ref",yn);v("if",L((e,{expression:t},{effect:r,cleanup:n})=>{e.tagName.toLowerCase()!=="template"&&C("x-if can only be used on a <template> tag",e);let i=x(e,t),s=()=>{if(e._x_currentIfEl)return e._x_currentIfEl;let a=e.content.cloneNode(!0).firstElementChild;return Se(a,{},e),y(()=>{e.after(a),R(a)}),e._x_currentIfEl=a,e._x_lastRenderedEl=a,e._x_undoIf=()=>{y(()=>{Z(a),a.remove()}),delete e._x_currentIfEl,delete e._x_lastRenderedEl},a},o=()=>{e._x_undoIf&&(e._x_undoIf(),delete e._x_undoIf)};r(()=>i(a=>{a?s():o()}),{priority:"structural"}),n(()=>e._x_undoIf&&e._x_undoIf())}));v("id",(e,{expression:t},{evaluate:r})=>{r(t).forEach(i=>Ms(e,i))});Ee((e,t)=>{e._x_ids&&(t._x_ids=e._x_ids)});Ct(wr("@",Sr(se("on:"))));v("on",L((e,{value:t,modifiers:r,expression:n},{cleanup:i})=>{let s=n?x(e,n):()=>{};e.tagName.toLowerCase()==="template"&&(e._x_forwardEvents||(e._x_forwardEvents=[]),e._x_forwardEvents.includes(t)||e._x_forwardEvents.push(t));let o=ee(e,t,r,a=>{s(()=>{},{scope:{$event:a},params:[a]})});i(()=>o())}));Ke("Collapse","collapse","collapse");Ke("Intersect","intersect","intersect");Ke("Focus","trap","focus");Ke("Mask","mask","mask");function Ke(e,t,r){v(t,n=>C(`You can't use [x-${t}] without first installing the "${e}" plugin here: https://alpinejs.dev/plugins/${r}`,n))}oe.setEvaluator(Un);oe.setRawEvaluator(Qn);oe.setReactivityEngine({reactive:Ht,effect:(e,t={})=>{let r;return r=is(e,{scheduler:()=>{r&&(t.scheduler?t.scheduler(r):r())}}),r},release:ss,raw:_});var Us=oe,We=Us;var Gs={200:{name:"info",badge:"bg-sky-100 text-sky-800 ring-sky-200"},400:{name:"error",badge:"bg-rose-100 text-rose-800 ring-rose-200"}},mn="bg-slate-100 text-slate-700 ring-slate-200",Ys=50;function vn(e){return Gs[e]??{name:String(e),badge:mn}}function ae(e,t=2){return String(e).padStart(t,"0")}async function Jt(e){try{let t=await e.json();if(typeof t=="object"&&t!==null&&"error"in t&&typeof t.error=="string")return t.error}catch{}return`Request failed: ${e.status} ${e.statusText}`}var Zs="json",Te=class{constructor(t){this.source=t}source};function Xs(e){try{return{value:JSON.parse(e,(r,n,i)=>typeof n=="number"?new Te(i?.source??String(n)):n)}}catch{return null}}function E(e,t,r){let n=document.createElement(e);return n.className=t,r!==void 0&&(n.textContent=r),n}function Qs(e){return e===null?E("span","json-null","null"):e instanceof Te?E("span","json-number",e.source):typeof e=="boolean"?E("span","json-boolean",String(e)):E("span","json-string",JSON.stringify(e))}function bn(e,t,r){let n=r?"":",",i=e===null?[]:[E("span","json-key",JSON.stringify(e)),document.createTextNode(": ")];if(t===null||typeof t!="object"||t instanceof Te){let p=E("div","json-row");return p.append(...i,Qs(t),n),p}let s=Array.isArray(t),o=s?t.map(p=>[null,p]):Object.entries(t),a=s?"[":"{",u=s?"]":"}";if(o.length===0){let p=E("div","json-row");return p.append(...i,a+u+n),p}let l=document.createElement("details");l.className="json-node",l.open=!0;let c=E("summary","json-row");c.append(...i,a,E("span","json-preview",` \u2026 ${u}${n}`),E("span","json-count",`${o.length} ${s?"items":"keys"}`));let f=E("div","json-children");return o.forEach(([p,g],A)=>f.append(bn(p,g,A===o.length-1))),l.append(c,f,E("div","json-row",u+n)),l}var Oe=0;We.data("logsViewer",()=>({api_url:"api/logs",logout_url:"api/logout",login_url:"login",trace_id:"",message:"",tags:[],tag_modal_open:!1,tag_draft:[],groups:[],total:0,limit:Ys,offset:0,loading:!1,error_message:"",expanded:{},retrying_id:null,retry_modal_open:!1,retry_modal_status:null,retry_modal_body:"",init(){this.api_url=this.$root.dataset.api??this.api_url,this.logout_url=this.$root.dataset.logout??this.logout_url,this.login_url=this.$root.dataset.login??this.login_url,this.load()},async load(){let e=++Oe;this.loading=!0,this.error_message="";let t=this.trace_id.trim(),r=this.message.trim();try{let n=await fetch(this.api_url,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({trace_id:t===""?void 0:t,message:r===""?void 0:r,tags:this.tags,limit:this.limit,offset:this.offset})});if(e!==Oe)return;if(n.status===401){window.location.href=this.login_url;return}if(!n.ok){this.error_message=await Jt(n);return}let i=await n.json();if(e!==Oe)return;this.groups=i.groups,this.total=i.total,this.expanded={},(t!==""||i.groups.length===1)&&i.groups.forEach(s=>this.expanded[this.groupKey(s)]=!0)}catch(n){e===Oe&&(this.error_message=n instanceof Error?n.message:String(n))}finally{e===Oe&&(this.loading=!1)}},async logout(){try{await fetch(this.logout_url,{method:"POST"})}finally{window.location.href=this.login_url}},search(){this.offset=0,this.load()},hasTag(e,t){return this.tags.some(r=>r.key===e&&r.value===t)},openTagModal(){this.tag_draft=this.tags.length>0?this.tags.map(e=>({...e})):[{key:"",value:""}],this.tag_modal_open=!0},closeTagModal(){this.tag_modal_open=!1},addDraftTag(){this.tag_draft.push({key:"",value:""})},removeDraftTag(e){this.tag_draft.splice(e,1)},applyTagModal(){this.tags=this.tag_draft.map(e=>({key:e.key.trim(),value:e.value.trim()})).filter(e=>e.key!==""),this.tag_modal_open=!1,this.search()},removeTag(e){this.tags.splice(e,1),this.search()},filterByTag(e,t){let r=String(t);this.hasTag(e,r)||(this.tags.push({key:e,value:r}),this.search())},filterByTrace(e){e!==null&&(this.trace_id=e,this.search())},async retryLog(e){if(!(e.retry===null||this.retrying_id!==null)){this.retrying_id=e.id;try{let t=await fetch(`${this.api_url}/${e.id}/retry`,{method:"POST"});if(t.status===401){window.location.href=this.login_url;return}if(!t.ok){this.openRetryModal(null,await Jt(t));return}let r=await t.json();e.retries_count=r.retries_count,this.openRetryModal(r.status,r.body)}catch(t){this.openRetryModal(null,t instanceof Error?t.message:String(t))}finally{this.retrying_id=null}}},openRetryModal(e,t){this.retry_modal_open=!0,this.retry_modal_status=e,this.retry_modal_body=t},closeRetryModal(){this.retry_modal_open=!1},retryStatusClass(e){return e===null?mn:e>=200&&e<300?"bg-emerald-100 text-emerald-800 ring-emerald-200":e>=300&&e<400?"bg-sky-100 text-sky-800 ring-sky-200":e>=400&&e<500?"bg-amber-100 text-amber-800 ring-amber-200":"bg-rose-100 text-rose-800 ring-rose-200"},clearFilters(){this.trace_id="",this.message="",this.tags=[],this.search()},hasFilters(){return this.trace_id.trim()!==""||this.message.trim()!==""||this.tags.length>0},hasPrevPage(){return this.offset>0},hasNextPage(){return this.offset+this.groups.length<this.total},prevPage(){this.offset=Math.max(0,this.offset-this.limit),this.load()},nextPage(){this.offset+=this.limit,this.load()},pageRange(){return this.groups.length===0?"0":`${this.offset+1}\u2013${this.offset+this.groups.length}`},groupKey(e){return e.trace_id!==null?"trace:"+e.trace_id:"log:"+(e.logs[0]?.id??"")},isExpanded(e){return this.expanded[this.groupKey(e)]===!0},toggle(e){let t=this.groupKey(e);this.expanded[t]=!this.expanded[t]},summary(e){return e.logs[0]?.message??""},levelName(e){return vn(e).name},levelBadge(e){return vn(e).badge},tagEntries(e){return Object.entries(e).map(([t,r])=>({key:t,value:r}))},formatTime(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:`${ae(t.getHours())}:${ae(t.getMinutes())}:${ae(t.getSeconds())}.${ae(t.getMilliseconds(),3)}`},formatDate(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:`${t.getFullYear()}-${ae(t.getMonth()+1)}-${ae(t.getDate())} ${this.formatTime(e)}`},formatDuration(e){let t=new Date(e.finished_at).getTime()-new Date(e.started_at).getTime();return!Number.isFinite(t)||t<=0?"":t<1e3?`${t} ms`:`${(t/1e3).toFixed(2)} s`},formatMessage(e){let t=e.trim();if(!t.startsWith("{")&&!t.startsWith("["))return e;try{return JSON.stringify(JSON.parse(t),null,2)}catch{return e}},isJsonMessage(e){return e.content_type===Zs},renderJsonMessage(e,t){let r=Xs(t);if(r===null){e.textContent=t;return}e.replaceChildren(bn(null,r.value,!0))}}));We.data("loginForm",()=>({api_url:"api/login",home_url:"./",email:"",password:"",loading:!1,error_message:"",init(){this.api_url=this.$root.dataset.api??this.api_url,this.home_url=this.$root.dataset.home??this.home_url},async submit(){this.loading=!0,this.error_message="";try{let e=await fetch(this.api_url,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({email:this.email,password:this.password})});if(!e.ok){this.error_message=await Jt(e);return}window.location.href=this.home_url}catch(e){this.error_message=e instanceof Error?e.message:String(e)}finally{this.loading=!1}}}));We.start();})();
|
|
5
|
+
`:""}`,t),setTimeout(()=>{throw e},0)}var te=!0;function gr(e){let t=te;te=!1;let r=e();return te=t,r}function H(e,t,r={}){let n;return x(e,t)(i=>n=i,r),n}function x(...e){return yr(...e)}var yr=()=>{};function Wn(e){yr=e}var mr;function zn(e){mr=e}function Un(e,t){let r={};ge(r,e);let n=[r,...V(e)],i=typeof t=="function"?Gn(n,t):Zn(n,t,e);return Vn.bind(null,e,t,i)}function Gn(e,t){return(r=()=>{},{scope:n={},params:i=[],context:s}={})=>{if(!te){ye(r,t,q([n,...e]),i);return}let o=t.apply(q([n,...e]),i);ye(r,o)}}var Ue={};function Yn(e,t){if(Ue[e])return Ue[e];let r=Object.getPrototypeOf(async function(){}).constructor,n=/^[\n\s]*if.*\(.*\)/.test(e.trim())||/^(let|const)\s/.test(e.trim())?`(async()=>{ ${e} })()`:e,s=(()=>{try{let o=new r(["__self","scope"],`with (scope) { __self.result = ${n} }; __self.finished = true; return __self.result;`);return Object.defineProperty(o,"name",{value:`[Alpine] ${e}`}),o}catch(o){return re(o,t,e),Promise.resolve()}})();return Ue[e]=s,s}function Zn(e,t,r){let n=Yn(t,r);return(i=()=>{},{scope:s={},params:o=[],context:a}={})=>{n.result=void 0,n.finished=!1;let u=q([s,...e]);if(typeof n=="function"){let l=n.call(a,n,u).catch(c=>re(c,r,t));n.finished?(ye(i,n.result,u,o,r),n.result=void 0):l.then(c=>{ye(i,c,u,o,r)}).catch(c=>re(c,r,t)).finally(()=>n.result=void 0)}}}function ye(e,t,r,n,i){if(te&&typeof t=="function"){let s=t.apply(r,n);s instanceof Promise?s.then(o=>ye(e,o,r,n)).catch(o=>re(o,i,t)):e(s)}else typeof t=="object"&&t instanceof Promise?t.then(s=>e(s)):e(t)}function Xn(...e){return mr(...e)}function Qn(e,t,r={}){let n={};ge(n,e);let i=[n,...V(e)],s=q([r.scope??{},...i]),o=r.params??[];if(t.includes("await")){let a=Object.getPrototypeOf(async function(){}).constructor,u=/^[\n\s]*if.*\(.*\)/.test(t.trim())||/^(let|const)\s/.test(t.trim())?`(async()=>{ ${t} })()`:t;return new a(["scope"],`with (scope) { let __result = ${u}; return __result }`).call(r.context,s)}else{let a=/^[\n\s]*if.*\(.*\)/.test(t.trim())||/^(let|const)\s/.test(t.trim())?`(()=>{ ${t} })()`:t,l=new Function(["scope"],`with (scope) { let __result = ${a}; return __result }`).call(r.context,s);return typeof l=="function"&&te?l.apply(s,o):l}}var Mt="x-";function se(e=""){return Mt+e}function ei(e){Mt=e}var Le={};function m(e,t){return Le[e]=t,{before(r){if(!Le[r]){console.warn(String.raw`Cannot find directive \`${r}\`. \`${e}\` will use the default order of execution`);return}let n=B.indexOf(r);B.splice(n>=0?n:B.indexOf("DEFAULT"),0,e)}}}function ti(e){return Object.keys(Le).includes(e)}function Be(e,t,r){if(t=Array.from(t),e._x_virtualDirectives){let s=Object.entries(e._x_virtualDirectives).map(([a,u])=>({name:a,value:u})),o=vr(s);s=s.map(a=>o.find(u=>u.name===a.name)?{name:`x-bind:${a.name}`,value:`"${a.value}"`}:a),t=t.concat(s)}let n={};return t.map(Er((s,o)=>n[s]=o)).filter(Or).map(ii(n,r)).sort(si).map(s=>ni(e,s))}function vr(e){return Array.from(e).map(Er()).filter(t=>!Or(t))}var at=!1,ce=new Map,br=Symbol();function ri(e){at=!0;let t=Symbol();br=t,ce.set(t,[]);let r=()=>{for(;ce.get(t).length;)ce.get(t).shift()();ce.delete(t)},n=()=>{at=!1,r()};e(r),n()}function xr(e){let t=[],r=a=>t.push(a),[n,i]=Pn(e);return t.push(i),[{Alpine:oe,effect:n,cleanup:r,evaluateLater:x.bind(x,e),evaluate:H.bind(H,e)},()=>t.forEach(a=>a())]}function ni(e,t){let r=()=>{},n=Le[t.type]||r,[i,s]=xr(e);ur(e,t.original,s);let o=()=>{e._x_ignore||e._x_ignoreSelf||(n.inline&&n.inline(e,t,i),n=n.bind(n,e,t,i),at?ce.get(br).push(n):n())};return o.runCleanups=s,o}var wr=(e,t)=>({name:r,value:n})=>(r.startsWith(e)&&(r=r.replace(e,t)),{name:r,value:n}),Sr=e=>e;function Er(e=()=>{}){return({name:t,value:r})=>{let{name:n,value:i}=Ar.reduce((s,o)=>o(s),{name:t,value:r});return n!==t&&e(n,t),{name:n,value:i}}}var Ar=[];function Ct(e){Ar.push(e)}function Or({name:e}){return Tr().test(e)}var Tr=()=>new RegExp(`^${Mt}([^:^.]+)\\b`);function ii(e,t){return({name:r,value:n})=>{r===n&&(n="");let i=r.match(Tr()),s=r.match(/:([a-zA-Z0-9\-_:]+)/),o=r.match(/\.[^.\]]+(?=[^\]]*$)/g)||[],a=t||e[r]||r;return{type:i?i[1]:null,value:s?s[1]:null,modifiers:o.map(u=>u.replace(".","")),expression:n,original:a}}}var ut="DEFAULT",B=["ignore","ref","id","data","anchor","bind","init","for","model","modelable","transition","show","if",ut,"teleport"];function si(e,t){let r=B.indexOf(e.type)===-1?ut:e.type,n=B.indexOf(t.type)===-1?ut:t.type;return B.indexOf(r)-B.indexOf(n)}function K(e,t){if(typeof ShadowRoot=="function"&&e instanceof ShadowRoot){Array.from(e.children).forEach(i=>K(i,t));return}let r=!1;if(t(e,()=>r=!0),r)return;let n=e.firstElementChild;for(;n;)K(n,t,!1),n=n.nextElementSibling}var N=!1;function L(e,t=()=>{}){return(...r)=>N?t(...r):e(...r)}function oi(e){return(...t)=>N&&e(...t)}var Mr=[];function Ee(e){Mr.push(e)}function ai(e,t){Mr.forEach(r=>r(e,t)),N=!0,Cr(()=>{R(t,(r,n)=>{n(r,()=>{})})}),N=!1}var lt=!1;function ui(e,t){t._x_dataStack||(t._x_dataStack=e._x_dataStack),N=!0,lt=!0,Cr(()=>{li(t)}),N=!1,lt=!1}function li(e){let t=!1;R(e,(n,i)=>{K(n,(s,o)=>{if(t&&_i(s))return o();t=!0,i(s,o)})})}function Cr(e){let t=Y;qt((r,n)=>{let i=t(r);return ie(i),()=>{}}),e(),qt(t)}var He=0;function ci(e,t){let r=e._x_deferInit;r||(r=e._x_deferInit={pending:0,ownsIgnore:!e._x_ignore,queuedAttributes:new Map},r.ownsIgnore&&(e._x_ignore=!0),He++),r.pending++,Promise.resolve(t).catch(n=>{try{re(n,e)}catch(i){setTimeout(()=>{throw i},0)}}).then(()=>fi(e,r))}function fi(e,t){t.pending--,!(t.pending>0)&&(Nn(),!(t.pending>0)&&e._x_deferInit===t&&(delete e._x_deferInit,t.ownsIgnore&&delete e._x_ignore,He--,e.isConnected&&(pi(t),R(e))))}function di(e,t){if(He===0)return!1;let r=S(e,n=>n._x_deferInit);return r?(Rr(r._x_deferInit,e,t.map(({name:n})=>n)),!0):!1}function Rr(e,t,r){let n=e.queuedAttributes.get(t);(!n||n.marker!==t._x_marker)&&(n={marker:t._x_marker,names:new Set},e.queuedAttributes.set(t,n)),r.forEach(i=>n.names.add(i))}function pi(e){e.queuedAttributes.forEach((t,r)=>{if(!r.isConnected||!r._x_marker||r._x_marker!==t.marker)return;let n=S(r,s=>s._x_deferInit);if(n){Rr(n._x_deferInit,r,Array.from(t.names));return}let i=Array.from(t.names).filter(s=>r.hasAttribute(s)).map(s=>({name:s,value:r.getAttribute(s)}));i.length!==0&&Be(r,i).forEach(s=>s())})}Ee((e,t)=>{He!==0&&(!e||e.nodeType!==1||!t||t.nodeType!==1||S(e,r=>r._x_deferInit)&&(t._x_ignore=!0))});function fe(e,t,r={},n={}){return e.dispatchEvent(new CustomEvent(t,{detail:r,bubbles:!0,composed:!0,cancelable:!0,...n}))}function C(e,...t){console.warn(`Alpine Warning: ${e}`,...t)}var Kt=!1;function hi(){Kt&&C("Alpine has already been initialized on this page. Calling Alpine.start() more than once can cause problems."),Kt=!0,document.body||C("Unable to initialize. Trying to load Alpine before `<body>` is available. Did you forget to add `defer` in Alpine's `<script>` tag?"),fe(document,"alpine:init"),fe(document,"alpine:initializing"),At(),$n(t=>R(t,K)),St(t=>Z(t)),ar((t,r)=>{di(t,r)||Be(t,r).forEach(n=>n())});let e=t=>!Je(t.parentElement,!0);Array.from(document.querySelectorAll($r().join(","))).filter(e).forEach(t=>{R(t)}),fe(document,"alpine:initialized"),setTimeout(()=>{mi()})}var Rt=[],Pr=[];function jr(){return Rt.map(e=>e())}function $r(){return Rt.concat(Pr).map(e=>e())}function Lr(e){Rt.push(e)}function Dr(e){Pr.push(e)}function Je(e,t=!1){return S(e,r=>{if((t?$r():jr()).some(i=>r.matches(i)))return!0})}function S(e,t){if(e){if(t(e))return e;if(e._x_teleportBack)return S(e._x_teleportBack,t);if(e.parentNode instanceof ShadowRoot)return S(e.parentNode.host,t);if(e.parentElement)return S(e.parentElement,t)}}function _i(e){return jr().some(t=>e.matches(t))}var Nr=[];function gi(e){Nr.push(e)}var yi=1;function R(e,t=K,r=()=>{}){S(e,n=>n._x_ignore)||ri(()=>{t(e,(n,i)=>{n._x_marker||(r(n,i),Nr.forEach(s=>s(n,i)),Be(n,n.attributes).forEach(s=>s()),n._x_ignore||(n._x_marker=yi++),n._x_ignore&&i())})})}function Z(e,t=K){t(e,r=>{Ln(r),lr(r),delete r._x_marker})}function mi(){[["ui","dialog",["[x-dialog], [x-popover]"]],["anchor","anchor",["[x-anchor]"]],["sort","sort",["[x-sort]"]]].forEach(([t,r,n])=>{ti(r)||n.some(i=>{if(document.querySelector(i))return C(`found "${i}", but missing ${t} plugin`),!0})})}var ct=[],Pt=!1;function jt(e=()=>{}){return queueMicrotask(()=>{Pt||setTimeout(()=>{ft()})}),new Promise(t=>{ct.push(()=>{e(),t()})})}function ft(){for(Pt=!1;ct.length;)ct.shift()()}function vi(){Pt=!0}function $t(e,t){return Array.isArray(t)?Wt(e,t.join(" ")):typeof t=="object"&&t!==null?bi(e,t):typeof t=="function"?$t(e,t()):Wt(e,t)}function dt(e){return e.split(/\s/).filter(Boolean)}function Wt(e,t){let r=i=>dt(i).filter(s=>!e.classList.contains(s)).filter(Boolean),n=i=>(e.classList.add(...i),()=>{e.classList.remove(...i)});return t=t===!0?t="":t||"",n(r(t))}function bi(e,t){let r=Object.entries(t).flatMap(([o,a])=>a?dt(o):!1).filter(Boolean),n=Object.entries(t).flatMap(([o,a])=>a?!1:dt(o)).filter(Boolean),i=[],s=[];return n.forEach(o=>{e.classList.contains(o)&&(e.classList.remove(o),s.push(o))}),r.forEach(o=>{e.classList.contains(o)||(e.classList.add(o),i.push(o))}),()=>{s.forEach(o=>e.classList.add(o)),i.forEach(o=>e.classList.remove(o))}}function Ve(e,t){return typeof t=="object"&&t!==null?xi(e,t):wi(e,t)}function xi(e,t){let r={};return Object.entries(t).forEach(([n,i])=>{r[n]=e.style[n],n.startsWith("--")||(n=Si(n)),e.style.setProperty(n,i)}),setTimeout(()=>{e.style.length===0&&e.removeAttribute("style")}),()=>{Ve(e,r)}}function wi(e,t){let r=e.getAttribute("style",t);return e.setAttribute("style",t),()=>{e.setAttribute("style",r||"")}}function Si(e){return e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function pt(e,t=()=>{}){let r=!1;return function(){r?t.apply(this,arguments):(r=!0,e.apply(this,arguments))}}m("transition",(e,{value:t,modifiers:r,expression:n},{evaluate:i})=>{typeof n=="function"&&(n=i(n)),n!==!1&&(!n||typeof n=="boolean"?Ai(e,r,t):Ei(e,n,t))});function Ei(e,t,r){Ir(e,$t,""),{enter:i=>{e._x_transition.enter.during=i},"enter-start":i=>{e._x_transition.enter.start=i},"enter-end":i=>{e._x_transition.enter.end=i},leave:i=>{e._x_transition.leave.during=i},"leave-start":i=>{e._x_transition.leave.start=i},"leave-end":i=>{e._x_transition.leave.end=i}}[r](t)}function Ai(e,t,r){Ir(e,Ve);let n=!t.includes("in")&&!t.includes("out")&&!r,i=n||t.includes("in")||["enter"].includes(r),s=n||t.includes("out")||["leave"].includes(r);t.includes("in")&&!n&&(t=t.filter((b,X)=>X<t.indexOf("out"))),t.includes("out")&&!n&&(t=t.filter((b,X)=>X>t.indexOf("out")));let o=!t.includes("opacity")&&!t.includes("scale"),a=o||t.includes("opacity"),u=o||t.includes("scale"),l=a?0:1,c=u?ue(t,"scale",95)/100:1,f=ue(t,"delay",0)/1e3,p=ue(t,"origin","center"),g="opacity, transform",A=ue(t,"duration",150)/1e3,d=ue(t,"duration",75)/1e3,v="cubic-bezier(0.4, 0.0, 0.2, 1)";i&&(e._x_transition.enter.during={transformOrigin:p,transitionDelay:`${f}s`,transitionProperty:g,transitionDuration:`${A}s`,transitionTimingFunction:v},e._x_transition.enter.start={opacity:l,transform:`scale(${c})`},e._x_transition.enter.end={opacity:1,transform:"scale(1)"}),s&&(e._x_transition.leave.during={transformOrigin:p,transitionDelay:`${f}s`,transitionProperty:g,transitionDuration:`${d}s`,transitionTimingFunction:v},e._x_transition.leave.start={opacity:1,transform:"scale(1)"},e._x_transition.leave.end={opacity:l,transform:`scale(${c})`})}function Ir(e,t,r={}){e._x_transition||(e._x_transition={enter:{during:r,start:r,end:r},leave:{during:r,start:r,end:r},in(n=()=>{},i=()=>{}){ht(e,t,{during:this.enter.during,start:this.enter.start,end:this.enter.end},n,i)},out(n=()=>{},i=()=>{}){ht(e,t,{during:this.leave.during,start:this.leave.start,end:this.leave.end},n,i)}})}window.Element.prototype._x_toggleAndCascadeWithTransitions=function(e,t,r,n){let i=document.visibilityState==="visible"?requestAnimationFrame:setTimeout,s=()=>i(r);if(t){e._x_transition&&(e._x_transition.enter||e._x_transition.leave)?e._x_transition.enter&&(Object.entries(e._x_transition.enter.during).length||Object.entries(e._x_transition.enter.start).length||Object.entries(e._x_transition.enter.end).length)?e._x_transition.in(r):s():e._x_transition?e._x_transition.in(r):s();return}e._x_hidePromise=e._x_transition?new Promise((o,a)=>{e._x_transition.out(()=>{},()=>o(n)),e._x_transitioning&&e._x_transitioning.beforeCancel(()=>a({isFromCancelledTransition:!0}))}):Promise.resolve(n),queueMicrotask(()=>{let o=kr(e);o?(o._x_hideChildren||(o._x_hideChildren=[]),o._x_hideChildren.push(e)):i(()=>{let a=u=>{let l=Promise.all([u._x_hidePromise,...(u._x_hideChildren||[]).map(a)]).then(([c])=>c?.());return delete u._x_hidePromise,delete u._x_hideChildren,l};a(e).catch(u=>{if(!u.isFromCancelledTransition)throw u})})})};function kr(e){let t=e.parentNode;if(t)return t._x_hidePromise?t:kr(t)}function ht(e,t,{during:r,start:n,end:i}={},s=()=>{},o=()=>{}){if(e._x_transitioning&&e._x_transitioning.cancel(),Object.keys(r).length===0&&Object.keys(n).length===0&&Object.keys(i).length===0){s(),o();return}let a,u,l;Oi(e,{start(){a=t(e,n)},during(){u=t(e,r)},before:s,end(){a(),l=t(e,i)},after:o,cleanup(){u(),l()}})}function Oi(e,t){let r,n,i,s=pt(()=>{y(()=>{r=!0,n||t.before(),i||(t.end(),ft()),t.after(),e.isConnected&&t.cleanup(),delete e._x_transitioning})});e._x_transitioning={beforeCancels:[],beforeCancel(o){this.beforeCancels.push(o)},cancel:pt(function(){for(;this.beforeCancels.length;)this.beforeCancels.shift()();s()}),finish:s},y(()=>{t.start(),t.during()}),vi(),requestAnimationFrame(()=>{if(r)return;let o=Number(getComputedStyle(e).transitionDuration.replace(/,.*/,"").replace("s",""))*1e3,a=Number(getComputedStyle(e).transitionDelay.replace(/,.*/,"").replace("s",""))*1e3;o===0&&(o=Number(getComputedStyle(e).animationDuration.replace("s",""))*1e3),y(()=>{t.before()}),n=!0,requestAnimationFrame(()=>{r||(y(()=>{t.end()}),ft(),setTimeout(e._x_transitioning.finish,o+a),i=!0)})})}function ue(e,t,r){if(e.indexOf(t)===-1)return r;let n=e[e.indexOf(t)+1];if(!n||t==="scale"&&isNaN(n))return r;if(t==="duration"||t==="delay"){let i=n.match(/([0-9]+)ms/);if(i)return i[1]}return t==="origin"&&["top","right","left","center","bottom"].includes(e[e.indexOf(t)+2])?[n,e[e.indexOf(t)+2]].join(" "):n}function Fr(e,t,r,n=[]){switch(e._x_bindings||(e._x_bindings=ne({})),e._x_bindings[t]=r,t=n.includes("camel")?Li(t):t,t){case"value":Ti(e,r);break;case"style":Ci(e,r);break;case"class":Mi(e,r);break;case"selected":case"checked":Ri(e,t,r);break;default:Lt(e,t,r);break}}function Ti(e,t){if(Dt(e))e.attributes.value===void 0&&(e.value=t);else if(De(e))Number.isInteger(t)?e.value=t:!Array.isArray(t)&&typeof t!="boolean"&&![null,void 0].includes(t)?e.value=String(t):Array.isArray(t)?e.checked=t.some(r=>Di(r,e.value)):e.checked=!!t;else if(e.tagName==="SELECT")$i(e,t);else if(e.tagName==="OPTION")Lt(e,"value",t);else{if(e.value===t&&(typeof t!="object"||t===null))return;e.value=t===void 0?"":t}}function Mi(e,t){e._x_undoAddedClasses&&e._x_undoAddedClasses(),e._x_undoAddedClasses=$t(e,t)}function Ci(e,t){e._x_undoAddedStyles&&e._x_undoAddedStyles(),e._x_undoAddedStyles=Ve(e,t)}function Ri(e,t,r){Lt(e,t,r),ji(e,t,r)}function Lt(e,t,r){[null,void 0,!1].includes(r)&&Ii(t)?e.removeAttribute(t):(Br(t)&&(r=t),ki(r)&&(r=JSON.stringify(r)),Pi(e,t,r))}function Pi(e,t,r){e.getAttribute(t)!=r&&e.setAttribute(t,r)}function ji(e,t,r){e[t]!==r&&(e[t]=r)}function $i(e,t){let r=[].concat(t).map(n=>n+"");Array.from(e.options).forEach(n=>{n.selected=r.includes(n.value)})}function Li(e){return e.toLowerCase().replace(/-(\w)/g,(t,r)=>r.toUpperCase())}function Di(e,t){return e==t}function Pe(e){return[1,"1","true","on","yes",!0].includes(e)?!0:[0,"0","false","off","no",!1].includes(e)?!1:e?!!e:null}var Ni=new Set(["allowfullscreen","async","autofocus","autoplay","checked","controls","default","defer","disabled","formnovalidate","inert","ismap","itemscope","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","selected","shadowrootclonable","shadowrootdelegatesfocus","shadowrootserializable"]);function Br(e){return Ni.has(e)}function Ii(e){return!["aria-pressed","aria-checked","aria-expanded","aria-selected"].includes(e)}function ki(e){return typeof e=="object"&&e!==null}function Fi(e,t,r){return e._x_bindings&&e._x_bindings[t]!==void 0?e._x_bindings[t]:Hr(e,t,r)}function Bi(e,t,r,n=!0){if(e._x_bindings&&e._x_bindings[t]!==void 0)return e._x_bindings[t];if(e._x_inlineBindings&&e._x_inlineBindings[t]!==void 0){let i=e._x_inlineBindings[t];return i.extract=n,gr(()=>H(e,i.expression))}return Hr(e,t,r)}function Hr(e,t,r){let n=e.getAttribute(t);return n===null?typeof r=="function"?r():r:n===""?!0:Br(t)?!![t,"true"].includes(n):n}function De(e){return e.type==="checkbox"||e.localName==="ui-checkbox"||e.localName==="ui-switch"}function Dt(e){return e.type==="radio"||e.localName==="ui-radio"}function Jr(e,t){let r;return function(){let n=this,i=arguments,s=function(){r=null,e.apply(n,i)};clearTimeout(r),r=setTimeout(s,t)}}function Vr(e,t){let r;return function(){let n=this,i=arguments;r||(e.apply(n,i),r=!0,setTimeout(()=>r=!1,t))}}function qr({get:e,set:t},{get:r,set:n}){let i=!0,s,o,a=Y(()=>{let u=e(),l=r();if(i)n(Ge(u)),i=!1;else{let c=JSON.stringify(u),f=JSON.stringify(l);c!==s?n(Ge(u)):c!==f&&t(Ge(l))}s=JSON.stringify(e()),o=JSON.stringify(r())});return()=>{wt(a),ie(a)}}function Ge(e){return typeof e=="object"?JSON.parse(JSON.stringify(e)):e}function Hi(e){(Array.isArray(e)?e:[e]).forEach(r=>r(oe))}var j={},zt=!1;function Ji(e,t){if(zt||(j=ne(j),zt=!0),t===void 0)return j[e];j[e]=t,typeof t=="object"&&t!==null&&t._x_interceptor?j[e]=t.initialize(j,e,e,()=>{}):Tt(j[e]),typeof t=="object"&&t!==null&&t.hasOwnProperty("init")&&typeof t.init=="function"&&j[e].init()}function Vi(){return j}var Kr={};function qi(e,t){let r=typeof t!="function"?()=>t:t;return e instanceof Element?Wr(e,r()):(Kr[e]=r,()=>{})}function Ki(e){return Object.entries(Kr).forEach(([t,r])=>{Object.defineProperty(e,t,{get(){return(...n)=>r(...n)}})}),e}function Wr(e,t,r){let n=[];for(;n.length;)n.pop()();let i=Object.entries(t).map(([o,a])=>({name:o,value:a})),s=vr(i);return i=i.map(o=>s.find(a=>a.name===o.name)?{name:`x-bind:${o.name}`,value:`"${o.value}"`}:o),Be(e,i,r).map(o=>{n.push(o.runCleanups),o()}),()=>{for(;n.length;)n.pop()()}}var zr={};function Wi(e,t){zr[e]=t}function zi(e,t){return Object.entries(zr).forEach(([r,n])=>{Object.defineProperty(e,r,{get(){return(...i)=>n.bind(t)(...i)},enumerable:!1})}),e}var Ui={get reactive(){return ne},get release(){return ie},get effect(){return Y},get raw(){return rr},get transaction(){return jn},version:"3.17.4",flushAndStopDeferringMutations:kn,dontAutoEvaluateFunctions:gr,disableEffectScheduling:Cn,startObservingMutations:At,stopObservingMutations:cr,setReactivityEngine:Rn,onAttributeRemoved:ur,onAttributesAdded:ar,closestDataStack:V,skipDuringClone:L,onlyDuringClone:oi,addRootSelector:Lr,addInitSelector:Dr,setErrorHandler:qn,interceptClone:Ee,addScopeToNode:Se,deferMutations:In,mapAttributes:Ct,evaluateLater:x,interceptInit:gi,initInterceptors:Tt,injectMagics:ge,setEvaluator:Wn,setRawEvaluator:zn,mergeProxies:q,extractProp:Bi,findClosest:S,onElRemoved:St,closestRoot:Je,destroyTree:Z,interceptor:pr,transition:ht,setStyles:Ve,mutateDom:y,deferInit:ci,directive:m,entangle:qr,throttle:Vr,debounce:Jr,evaluate:H,evaluateRaw:Xn,initTree:R,nextTick:jt,prefixed:se,prefix:ei,plugin:Hi,magic:T,store:Ji,start:hi,clone:ui,cloneNode:ai,bound:Fi,$data:fr,watch:nr,walk:K,data:Wi,bind:qi},oe=Ui;function Ur(e){let t=Object.create(null);for(let r of e.split(","))t[r]=1;return r=>r in t}var eo=Object.freeze({}),to=Object.freeze([]),me=Object.assign,Gi=Object.prototype.hasOwnProperty,_t=(e,t)=>Gi.call(e,t),ve=Array.isArray,de=e=>Gr(e)==="[object Map]",Yi=e=>typeof e=="string",Ae=e=>typeof e=="symbol",be=e=>e!==null&&typeof e=="object",Zi=Object.prototype.toString,Gr=e=>Zi.call(e),Yr=e=>Gr(e).slice(8,-1),Nt=e=>Yi(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,qe=e=>{let t=Object.create(null);return r=>t[r]||(t[r]=e(r))},Xi=/-\w/g,ro=qe(e=>e.replace(Xi,t=>t.slice(1).toUpperCase())),Qi=/\B([A-Z])/g,no=qe(e=>e.replace(Qi,"-$1").toLowerCase()),Zr=qe(e=>e.charAt(0).toUpperCase()+e.slice(1)),io=qe(e=>e?`on${Zr(e)}`:""),F=(e,t)=>!Object.is(e,t),es="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",so=Ur(es+",async,autofocus,autoplay,controls,default,defer,disabled,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected");function W(e,...t){console.warn(`[Vue warn] ${e}`,...t)}var Ye,h,Ze=new WeakSet,Ut=class{constructor(e){this.fn=e,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,Ye&&(Ye.active?Ye.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Ze.has(this)&&(Ze.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||ts(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,Gt(this),Qr(this);let e=h,t=O;h=this,O=!0;try{return this.fn()}finally{h!==this&&W("Active effect was not restored correctly - this is likely a Vue internal bug."),en(this),h=e,O=t,this.flags&=-3}}stop(){if(this.flags&1){for(let e=this.deps;e;e=e.nextDep)Ft(e);this.deps=this.depsTail=void 0,Gt(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Ze.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){gt(this)&&this.run()}get dirty(){return gt(this)}},Xr=0,pe,he;function ts(e,t=!1){if(e.flags|=8,t){e.next=he,he=e;return}e.next=pe,pe=e}function It(){Xr++}function kt(){if(--Xr>0)return;if(he){let t=he;for(he=void 0;t;){let r=t.next;t.next=void 0,t.flags&=-9,t=r}}let e;for(;pe;){let t=pe;for(pe=void 0;t;){let r=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=r}}if(e)throw e}function Qr(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function en(e){let t,r=e.depsTail,n=r;for(;n;){let i=n.prevDep;n.version===-1?(n===r&&(r=i),Ft(n),ns(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=i}e.deps=t,e.depsTail=r}function gt(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(rs(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function rs(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Ne)||(e.globalVersion=Ne,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!gt(e))))return;e.flags|=2;let t=e.dep,r=h,n=O;h=e,O=!0;try{Qr(e);let i=e.fn(e._value);(t.version===0||F(i,e._value))&&(e.flags|=128,e._value=i,t.version++)}catch(i){throw t.version++,i}finally{h=r,O=n,en(e),e.flags&=-3}}function Ft(e,t=!1){let{dep:r,prevSub:n,nextSub:i}=e;if(n&&(n.nextSub=i,e.prevSub=void 0),i&&(i.prevSub=n,e.nextSub=void 0),r.subsHead===e&&(r.subsHead=i),r.subs===e&&(r.subs=n,!n&&r.computed)){r.computed.flags&=-5;for(let s=r.computed.deps;s;s=s.nextDep)Ft(s,!0)}!t&&!--r.sc&&r.map&&r.map.delete(r.key)}function ns(e){let{prevDep:t,nextDep:r}=e;t&&(t.nextDep=r,e.prevDep=void 0),r&&(r.prevDep=t,e.nextDep=void 0)}function is(e,t){e.effect instanceof Ut&&(e=e.effect.fn);let r=new Ut(e);t&&me(r,t);try{r.run()}catch(i){throw r.stop(),i}let n=r.run.bind(r);return n.effect=r,n}function ss(e){e.effect.stop()}var O=!0,tn=[];function os(){tn.push(O),O=!1}function as(){let e=tn.pop();O=e===void 0?!0:e}function Gt(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let r=h;h=void 0;try{t()}finally{h=r}}}var Ne=0,us=class{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},ls=class{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0,this.subsHead=void 0}track(e){if(!h||!O||h===this.computed)return;let t=this.activeLink;if(t===void 0||t.sub!==h)t=this.activeLink=new us(h,this),h.deps?(t.prevDep=h.depsTail,h.depsTail.nextDep=t,h.depsTail=t):h.deps=h.depsTail=t,rn(t);else if(t.version===-1&&(t.version=this.version,t.nextDep)){let r=t.nextDep;r.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=r),t.prevDep=h.depsTail,t.nextDep=void 0,h.depsTail.nextDep=t,h.depsTail=t,h.deps===t&&(h.deps=r)}return h.onTrack&&h.onTrack(me({effect:h},e)),t}trigger(e){this.version++,Ne++,this.notify(e)}notify(e){It();try{for(let t=this.subsHead;t;t=t.nextSub)t.sub.onTrigger&&!(t.sub.flags&8)&&t.sub.onTrigger(me({effect:t.sub},e));for(let t=this.subs;t;t=t.prevSub)t.sub.notify()&&t.sub.dep.notify()}finally{kt()}}};function rn(e){if(e.dep.sc++,e.sub.flags&4){let t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)rn(n)}let r=e.dep.subs;r!==e&&(e.prevSub=r,r&&(r.nextSub=e)),e.dep.subsHead===void 0&&(e.dep.subsHead=e),e.dep.subs=e}}var yt=new WeakMap,J=Symbol("Object iterate"),mt=Symbol("Map keys iterate"),xe=Symbol("Array iterate");function w(e,t,r){if(O&&h){let n=yt.get(e);n||yt.set(e,n=new Map);let i=n.get(r);i||(n.set(r,i=new ls),i.map=n,i.key=r),i.track({target:e,type:t,key:r})}}function D(e,t,r,n,i,s){let o=yt.get(e);if(!o){Ne++;return}let a=u=>{u&&u.trigger({target:e,type:t,key:r,newValue:n,oldValue:i,oldTarget:s})};if(It(),t==="clear")o.forEach(a);else{let u=ve(e),l=u&&Nt(r);if(u&&r==="length"){let c=Number(n);o.forEach((f,p)=>{(p==="length"||p===xe||!Ae(p)&&p>=c)&&a(f)})}else switch((r!==void 0||o.has(void 0))&&a(o.get(r)),l&&a(o.get(xe)),t){case"add":u?l&&a(o.get("length")):(a(o.get(J)),de(e)&&a(o.get(mt)));break;case"delete":u||(a(o.get(J)),de(e)&&a(o.get(mt)));break;case"set":de(e)&&a(o.get(J));break}}kt()}function Q(e){let t=_(e);return t===e?t:(w(t,"iterate",xe),U(e)?t:t.map(G))}function Bt(e){return w(e=_(e),"iterate",xe),e}function M(e,t){return z(e)?cn(e)?we(G(t)):we(t):G(t)}var cs={__proto__:null,[Symbol.iterator](){return Xe(this,Symbol.iterator,e=>M(this,e))},concat(...e){return Q(this).concat(...e.map(t=>ve(t)?Q(t):t))},entries(){return Xe(this,"entries",e=>(e[1]=M(this,e[1]),e))},every(e,t){return P(this,"every",e,t,void 0,arguments)},filter(e,t){return P(this,"filter",e,t,r=>r.map(n=>M(this,n)),arguments)},find(e,t){return P(this,"find",e,t,r=>M(this,r),arguments)},findIndex(e,t){return P(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return P(this,"findLast",e,t,r=>M(this,r),arguments)},findLastIndex(e,t){return P(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return P(this,"forEach",e,t,void 0,arguments)},includes(...e){return Qe(this,"includes",e)},indexOf(...e){return Qe(this,"indexOf",e)},join(e){return Q(this).join(e)},lastIndexOf(...e){return Qe(this,"lastIndexOf",e)},map(e,t){return P(this,"map",e,t,void 0,arguments)},pop(){return le(this,"pop")},push(...e){return le(this,"push",e)},reduce(e,...t){return Yt(this,"reduce",e,t)},reduceRight(e,...t){return Yt(this,"reduceRight",e,t)},shift(){return le(this,"shift")},some(e,t){return P(this,"some",e,t,void 0,arguments)},splice(...e){return le(this,"splice",e)},toReversed(){return Q(this).toReversed()},toSorted(e){return Q(this).toSorted(e)},toSpliced(...e){return Q(this).toSpliced(...e)},unshift(...e){return le(this,"unshift",e)},values(){return Xe(this,"values",e=>M(this,e))}};function Xe(e,t,r){let n=Bt(e),i=n[t]();return n!==e&&!U(e)&&(i._next=i.next,i.next=()=>{let s=i._next();return s.done||(s.value=r(s.value)),s}),i}var fs=Array.prototype;function P(e,t,r,n,i,s){let o=Bt(e),a=o!==e&&!U(e),u=o[t];if(u!==fs[t]){let f=u.apply(e,s);return a?G(f):f}let l=r;o!==e&&(a?l=function(f,p){return r.call(this,M(e,f),p,e)}:r.length>2&&(l=function(f,p){return r.call(this,f,p,e)}));let c=u.call(o,l,n);return a&&i?i(c):c}function Yt(e,t,r,n){let i=Bt(e),s=i!==e&&!U(e),o=r,a=!1;i!==e&&(s?(a=n.length===0,o=function(l,c,f){return a&&(a=!1,l=M(e,l)),r.call(this,l,M(e,c),f,e)}):r.length>3&&(o=function(l,c,f){return r.call(this,l,c,f,e)}));let u=i[t](o,...n);return a?M(e,u):u}function Qe(e,t,r){let n=_(e);w(n,"iterate",xe);let i=n[t](...r);return(i===-1||i===!1)&&As(r[0])?(r[0]=_(r[0]),n[t](...r)):i}function le(e,t,r=[]){os(),It();let n=_(e)[t].apply(e,r);return kt(),as(),n}var ds=Ur("__proto__,__v_isRef,__isVue"),nn=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Ae));function ps(e){Ae(e)||(e=String(e));let t=_(this);return w(t,"has",e),t.hasOwnProperty(e)}var sn=class{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,r){if(t==="__v_skip")return e.__v_skip;let n=this._isReadonly,i=this._isShallow;if(t==="__v_isReactive")return!n;if(t==="__v_isReadonly")return n;if(t==="__v_isShallow")return i;if(t==="__v_raw")return r===(n?i?Ss:un:i?ws:an).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(r)?e:void 0;let s=ve(e);if(!n){let a;if(s&&(a=cs[t]))return a;if(t==="hasOwnProperty")return ps}let o=Reflect.get(e,t,_e(e)?e:r);if((Ae(t)?nn.has(t):ds(t))||(n||w(e,"get",t),i))return o;if(_e(o)){let a=s&&Nt(t)?o:o.value;return n&&be(a)?bt(a):a}return be(o)?n?bt(o):Ht(o):o}},hs=class extends sn{constructor(e=!1){super(!1,e)}set(e,t,r,n){let i=e[t],s=ve(e)&&Nt(t);if(!this._isShallow){let u=z(i);if(!U(r)&&!z(r)&&(i=_(i),r=_(r)),!s&&_e(i)&&!_e(r))return u?(W(`Set operation on key "${String(t)}" failed: target is readonly.`,e[t]),!0):(i.value=r,!0)}let o=s?Number(t)<e.length:_t(e,t),a=Reflect.set(e,t,r,_e(e)?e:n);return e===_(n)&&a&&(o?F(r,i)&&D(e,"set",t,r,i):D(e,"add",t,r)),a}deleteProperty(e,t){let r=_t(e,t),n=e[t],i=Reflect.deleteProperty(e,t);return i&&r&&D(e,"delete",t,void 0,n),i}has(e,t){let r=Reflect.has(e,t);return(!Ae(t)||!nn.has(t))&&w(e,"has",t),r}ownKeys(e){return w(e,"iterate",ve(e)?"length":J),Reflect.ownKeys(e)}},_s=class extends sn{constructor(e=!1){super(!0,e)}set(e,t){return W(`Set operation on key "${String(t)}" failed: target is readonly.`,e),!0}deleteProperty(e,t){return W(`Delete operation on key "${String(t)}" failed: target is readonly.`,e),!0}},gs=new hs,ys=new _s,vt=e=>e,Me=e=>Reflect.getPrototypeOf(e);function ms(e,t,r){return function(...n){let i=this.__v_raw,s=_(i),o=de(s),a=e==="entries"||e===Symbol.iterator&&o,u=e==="keys"&&o,l=i[e](...n),c=r?vt:t?we:G;return!t&&w(s,"iterate",u?mt:J),me(Object.create(l),{next(){let{value:f,done:p}=l.next();return p?{value:f,done:p}:{value:a?[c(f[0]),c(f[1])]:c(f),done:p}}})}}function Ce(e){return function(...t){{let r=t[0]?`on key "${t[0]}" `:"";W(`${Zr(e)} operation ${r}failed: target is readonly.`,_(this))}return e==="delete"?!1:e==="clear"?void 0:this}}function vs(e,t){let r={get(i){let s=this.__v_raw,o=_(s),a=_(i);e||(F(i,a)&&w(o,"get",i),w(o,"get",a));let{has:u}=Me(o),l=t?vt:e?we:G;if(u.call(o,i))return l(s.get(i));if(u.call(o,a))return l(s.get(a));s!==o&&s.get(i)},get size(){let i=this.__v_raw;return!e&&w(_(i),"iterate",J),i.size},has(i){let s=this.__v_raw,o=_(s),a=_(i);return e||(F(i,a)&&w(o,"has",i),w(o,"has",a)),i===a?s.has(i):s.has(i)||s.has(a)},forEach(i,s){let o=this,a=o.__v_raw,u=_(a),l=t?vt:e?we:G;return!e&&w(u,"iterate",J),a.forEach((c,f)=>i.call(s,l(c),l(f),o))}};return me(r,e?{add:Ce("add"),set:Ce("set"),delete:Ce("delete"),clear:Ce("clear")}:{add(i){let s=_(this),o=Me(s),a=_(i),u=!t&&!U(i)&&!z(i)?a:i;return o.has.call(s,u)||F(i,u)&&o.has.call(s,i)||F(a,u)&&o.has.call(s,a)||(s.add(u),D(s,"add",u,u)),this},set(i,s){!t&&!U(s)&&!z(s)&&(s=_(s));let o=_(this),{has:a,get:u}=Me(o),l=a.call(o,i);l?Zt(o,a,i):(i=_(i),l=a.call(o,i));let c=u.call(o,i);return o.set(i,s),l?F(s,c)&&D(o,"set",i,s,c):D(o,"add",i,s),this},delete(i){let s=_(this),{has:o,get:a}=Me(s),u=o.call(s,i);u?Zt(s,o,i):(i=_(i),u=o.call(s,i));let l=a?a.call(s,i):void 0,c=s.delete(i);return u&&D(s,"delete",i,void 0,l),c},clear(){let i=_(this),s=i.size!==0,o=de(i)?new Map(i):new Set(i),a=i.clear();return s&&D(i,"clear",void 0,void 0,o),a}}),["keys","values","entries",Symbol.iterator].forEach(i=>{r[i]=ms(i,e,t)}),r}function on(e,t){let r=vs(e,t);return(n,i,s)=>i==="__v_isReactive"?!e:i==="__v_isReadonly"?e:i==="__v_raw"?n:Reflect.get(_t(r,i)&&i in n?r:n,i,s)}var bs={get:on(!1,!1)},xs={get:on(!0,!1)};function Zt(e,t,r){let n=_(r);if(n!==r&&t.call(e,n)){let i=Yr(e);W(`Reactive ${i} contains both the raw and reactive versions of the same object${i==="Map"?" as keys":""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`)}}var an=new WeakMap,ws=new WeakMap,un=new WeakMap,Ss=new WeakMap;function Es(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Ht(e){return z(e)?e:ln(e,!1,gs,bs,an)}function bt(e){return ln(e,!0,ys,xs,un)}function ln(e,t,r,n,i){if(!be(e))return W(`value cannot be made ${t?"readonly":"reactive"}: ${String(e)}`),e;if(e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;let s=i.get(e);if(s)return s;let o=Es(Yr(e));if(o===0)return e;let a=new Proxy(e,o===2?n:r);return i.set(e,a),a}function cn(e){return z(e)?cn(e.__v_raw):!!(e&&e.__v_isReactive)}function z(e){return!!(e&&e.__v_isReadonly)}function U(e){return!!(e&&e.__v_isShallow)}function As(e){return e?!!e.__v_raw:!1}function _(e){let t=e&&e.__v_raw;return t?_(t):e}var G=e=>be(e)?Ht(e):e,we=e=>be(e)?bt(e):e;function _e(e){return e?e.__v_isRef===!0:!1}T("nextTick",()=>jt);T("dispatch",e=>fe.bind(fe,e));T("watch",(e,{evaluateLater:t,cleanup:r})=>(n,i)=>{let s=t(n),a=nr(()=>{let u;return s(l=>u=l),u},i);r(a)});T("store",Vi);T("data",e=>fr(e));T("root",e=>Je(e));T("refs",e=>(e._x_refs_proxy||(e._x_refs_proxy=q(Os(e))),e._x_refs_proxy));function Os(e){let t=[];return S(e,r=>{r._x_refs&&t.push(r._x_refs)}),t}var et={};function fn(e){return et[e]||(et[e]=0),++et[e]}function Ts(e,t){return S(e,r=>{if(r._x_ids&&r._x_ids[t])return!0})}function Ms(e,t){e._x_ids||(e._x_ids={}),e._x_ids[t]||(e._x_ids[t]=fn(t))}T("id",(e,{cleanup:t})=>(r,n=null)=>{let i=`${r}${n?`-${n}`:""}`;return Cs(e,i,t,()=>{let s=Ts(e,r),o=s?s._x_ids[r]:fn(r);return n?`${r}-${o}-${n}`:`${r}-${o}`})});Ee((e,t)=>{e._x_id&&(t._x_id=e._x_id)});function Cs(e,t,r,n){if(e._x_id||(e._x_id={}),e._x_id[t])return e._x_id[t];let i=n();return e._x_id[t]=i,r(()=>{delete e._x_id[t]}),i}T("el",e=>e);dn("Focus","focus","focus");dn("Persist","persist","persist");function dn(e,t,r){T(t,n=>C(`You can't use [$${t}] without first installing the "${e}" plugin here: https://alpinejs.dev/plugins/${r}`,n))}m("modelable",(e,{expression:t},{effect:r,evaluateLater:n,cleanup:i})=>{let s=n(t),o=()=>{let c;return s(f=>c=f),c},a=n(`${t} = __placeholder`),u=c=>a(()=>{},{scope:{__placeholder:c}}),l=o();u(l),queueMicrotask(()=>{if(!e._x_model)return;e._x_removeModelListeners.default();let c=e._x_model.get,f=e._x_model.setWithModifiers,p=qr({get(){return c()},set(g){f(g)}},{get(){return o()},set(g){u(g)}});i(p)})});m("teleport",(e,{modifiers:t,expression:r},{cleanup:n})=>{e.tagName.toLowerCase()!=="template"&&C("x-teleport can only be used on a <template> tag",e);let i=Xt(r),s=e.content.cloneNode(!0).firstElementChild;e._x_teleport=s,s._x_teleportBack=e,e.setAttribute("data-teleport-template",!0),s.setAttribute("data-teleport-target",!0),e._x_forwardEvents&&e._x_forwardEvents.forEach(a=>{s.addEventListener(a,u=>{u.stopPropagation(),e.dispatchEvent(new u.constructor(u.type,u))})}),Se(s,{},e);let o=(a,u,l)=>{l.includes("prepend")?u.parentNode.insertBefore(a,u):l.includes("append")?u.parentNode.insertBefore(a,u.nextSibling):u.appendChild(a)};y(()=>{L(()=>{o(s,i,t),R(s)})()}),e._x_teleportPutBack=()=>{let a=Xt(r);y(()=>{o(e._x_teleport,a,t)})},n(()=>y(()=>{s.remove(),Z(s)}))});var Rs=document.createElement("div");function Xt(e){let t=L(()=>document.querySelector(e),()=>Rs)();return t||C(`Cannot find x-teleport element for selector: "${e}"`),t}var pn=()=>{};pn.inline=(e,{modifiers:t},{cleanup:r})=>{t.includes("self")?e._x_ignoreSelf=!0:e._x_ignore=!0,r(()=>{t.includes("self")?delete e._x_ignoreSelf:delete e._x_ignore})};m("ignore",pn);m("effect",L((e,{expression:t},{effect:r})=>{r(x(e,t))}));function ee(e,t,r,n){let i=e,s=u=>n(u),o={},a=(u,l)=>c=>l(u,c);return r.includes("dot")&&(t=Ps(t)),r.includes("camel")&&(t=js(t)),r.includes("capture")&&(o.capture=!0),r.includes("window")&&(i=window),r.includes("document")&&(i=document),r.includes("passive")&&(o.passive=r[r.indexOf("passive")+1]!=="false"),s=hn(r,s),r.includes("prevent")&&(s=a(s,(u,l)=>{l.preventDefault(),u(l)})),r.includes("stop")&&(s=a(s,(u,l)=>{l.stopPropagation(),u(l)})),r.includes("once")&&(s=a(s,(u,l)=>{u(l),i.removeEventListener(t,s,o)})),(r.includes("away")||r.includes("outside"))&&(i=document,s=a(s,(u,l)=>{e.contains(l.target)||l.target.isConnected!==!1&&(e.offsetWidth<1&&e.offsetHeight<1||e._x_isShown!==!1&&u(l))})),r.includes("self")&&(s=a(s,(u,l)=>{l.target===e&&u(l)})),t==="submit"&&(s=a(s,(u,l)=>{l.target._x_pendingModelUpdates&&l.target._x_pendingModelUpdates.forEach(c=>c()),u(l)})),(Ls(t)||_n(t))&&(s=a(s,(u,l)=>{Ns(l,r)||u(l)})),i.addEventListener(t,s,o),()=>{i.removeEventListener(t,s,o)}}function hn(e,t){if(e.includes("debounce")){let r=e[e.indexOf("debounce")+1]||"invalid-wait",n=Ie(r.split("ms")[0])?Number(r.split("ms")[0]):250;t=Jr(t,n)}if(e.includes("throttle")){let r=e[e.indexOf("throttle")+1]||"invalid-wait",n=Ie(r.split("ms")[0])?Number(r.split("ms")[0]):250;t=Vr(t,n)}return t}function Ps(e){return e.replace(/-/g,".")}function js(e){return e.toLowerCase().replace(/-(\w)/g,(t,r)=>r.toUpperCase())}function Ie(e){return!Array.isArray(e)&&!isNaN(e)}function $s(e){return[" ","_"].includes(e)?e:e.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[_\s]/,"-").toLowerCase()}function Ls(e){return["keydown","keyup"].includes(e)}function _n(e){return["contextmenu","click","mouse"].some(t=>e.includes(t))}var Ds=["window","document","prevent","stop","once","capture","self","away","outside","passive","dot","camel","preserve-scroll","blur","change","lazy","number","boolean","trim","fill","unintrusive","parent"];function Ns(e,t){let r=t.filter((s,o)=>s==="false"&&t[o-1]==="passive"?!1:!Ds.includes(s));if(r.includes("debounce")){let s=r.indexOf("debounce");r.splice(s,Ie((r[s+1]||"invalid-wait").split("ms")[0])?2:1)}if(r.includes("throttle")){let s=r.indexOf("throttle");r.splice(s,Ie((r[s+1]||"invalid-wait").split("ms")[0])?2:1)}if(r.length===0||r.length===1&&Qt(e.key).includes(r[0]))return!1;let i=["ctrl","shift","alt","meta","cmd","super"].filter(s=>r.includes(s));return r=r.filter(s=>!i.includes(s)),!(i.length>0&&i.filter(o=>((o==="cmd"||o==="super")&&(o="meta"),e[`${o}Key`])).length===i.length&&(_n(e.type)||Qt(e.key).includes(r[0])))}function Qt(e){if(!e)return[];e=$s(e);let t={ctrl:"control",slash:"/",space:" ",spacebar:" ",cmd:"meta",esc:"escape",up:"arrow-up",down:"arrow-down",left:"arrow-left",right:"arrow-right",period:".",comma:",",equal:"=",minus:"-",underscore:"_"};return t[e]=e,Object.keys(t).map(r=>{if(t[r]===e)return r}).filter(r=>r)}m("model",(e,{modifiers:t,expression:r},{effect:n,cleanup:i})=>{let s=e;t.includes("parent")&&(s=S(e,d=>d!==e));let o=x(s,r),a;typeof r=="string"?a=x(s,`${r} = __placeholder`):typeof r=="function"&&typeof r()=="string"?a=x(s,`${r()} = __placeholder`):a=()=>{};let u=()=>{let d;return o(v=>d=v),er(d)?d.get():d},l=d=>{let v;o(b=>v=b),er(v)?v.set(d):a(()=>{},{scope:{__placeholder:d}})};typeof r=="string"&&e.type==="radio"&&y(()=>{e.hasAttribute("name")||e.setAttribute("name",r)});let c=t.includes("change")||t.includes("lazy"),f=t.includes("blur"),p=t.includes("enter"),g=c||f||p,A;if(N)A=()=>{};else if(g){let d=[],v=b=>l(Re(e,t,b,u()));if(c&&d.push(ee(e,"change",t,v)),f&&(d.push(ee(e,"blur",t,v)),e.form)){let b=e.form,X=()=>v({target:e});b._x_pendingModelUpdates||(b._x_pendingModelUpdates=[]),b._x_pendingModelUpdates.push(X),i(()=>{b._x_pendingModelUpdates&&b._x_pendingModelUpdates.splice(b._x_pendingModelUpdates.indexOf(X),1)})}p&&d.push(ee(e,"keydown",t,b=>{b.key==="Enter"&&v(b)})),A=()=>d.forEach(b=>b())}else{let d=e.tagName.toLowerCase()==="select"||["checkbox","radio"].includes(e.type)?"change":"input";A=ee(e,d,t,v=>{l(Re(e,t,v,u()))})}if(t.includes("fill")&&([void 0,null,""].includes(u())||De(e)&&Array.isArray(u())||e.tagName.toLowerCase()==="select"&&e.multiple)&&l(Re(e,t,{target:e},u())),e._x_removeModelListeners||(e._x_removeModelListeners={}),e._x_removeModelListeners.default=A,i(()=>e._x_removeModelListeners.default()),e.form){let d=ee(e.form,"reset",[],v=>{jt(()=>e._x_model&&e._x_model.set(Re(e,t,{target:e},u())))});i(()=>d())}if(e._x_model={get(){return u()},set(d){l(d)},setWithModifiers:hn(t,l)},e._x_forceModelUpdate=d=>{d===void 0&&typeof r=="string"&&r.match(/\./)&&(d=""),y(()=>{De(e)?Array.isArray(d)?e.checked=d.some(v=>v==e.value):e.checked=!!d:Dt(e)?typeof d=="boolean"?e.checked=Pe(e.value)===d:e.checked=e.value==d:Fr(e,"value",d)})},e.tagName==="SELECT"){let d=new MutationObserver(()=>{e._x_forceModelUpdate(u())});d.observe(e,{childList:!0}),i(()=>d.disconnect())}n(()=>{let d=u();t.includes("unintrusive")&&document.activeElement.isSameNode(e)||e._x_forceModelUpdate(d)})});function Re(e,t,r,n){return y(()=>{if(r instanceof CustomEvent&&r.detail!==void 0)return r.detail!==null&&r.detail!==void 0?r.detail:r.target.value;if(De(e))if(Array.isArray(n)){let i=null;return t.includes("number")?i=tt(r.target.value):t.includes("boolean")?i=Pe(r.target.value):i=r.target.value,r.target.checked?n.includes(i)?n:n.concat([i]):n.filter(s=>!Is(s,i))}else return r.target.checked;else{if(e.tagName.toLowerCase()==="select"&&e.multiple)return t.includes("number")?Array.from(r.target.selectedOptions).map(i=>{let s=i.value||i.text;return tt(s)}):t.includes("boolean")?Array.from(r.target.selectedOptions).map(i=>{let s=i.value||i.text;return Pe(s)}):Array.from(r.target.selectedOptions).map(i=>i.value||i.text);{let i;return Dt(e)?r.target.checked?i=r.target.value:i=n:i=r.target.value,t.includes("number")?tt(i):t.includes("boolean")?Pe(i):t.includes("trim")?i.trim():i}}})}function tt(e){let t=e?parseFloat(e):null;return ks(t)?t:e}function Is(e,t){return e==t}function ks(e){return!Array.isArray(e)&&!isNaN(e)}function er(e){return e!==null&&typeof e=="object"&&typeof e.get=="function"&&typeof e.set=="function"}m("cloak",e=>queueMicrotask(()=>y(()=>e.removeAttribute(se("cloak")))));Dr(()=>`[${se("init")}]`);m("init",L((e,{expression:t},{evaluate:r})=>typeof t=="string"?!!t.trim()&&r(t,{},!1):r(t,{},!1)));m("text",(e,{expression:t},{effect:r,evaluateLater:n})=>{let i=n(t);r(()=>{i(s=>{y(()=>{e.textContent=s})})})});m("html",(e,{expression:t},{effect:r,evaluateLater:n})=>{let i=n(t);r(()=>{i(s=>{y(()=>{Array.from(e.children).forEach(o=>Z(o)),e.innerHTML=s??"",e._x_ignoreSelf=!0,R(e),delete e._x_ignoreSelf})})},{priority:"structural"})});Ct(wr(":",Sr(se("bind:"))));var gn=(e,{value:t,modifiers:r,expression:n,original:i},{effect:s,cleanup:o})=>{if(!t){let u={};Ki(u),x(e,n)(c=>{Wr(e,c,i)},{scope:u});return}if(t==="key")return Fs(e,n);if(e._x_inlineBindings&&e._x_inlineBindings[t]&&e._x_inlineBindings[t].extract)return;let a=x(e,n);s(()=>a(u=>{u===void 0&&typeof n=="string"&&n.match(/\./)&&(u=""),y(()=>Fr(e,t,u,r))})),o(()=>{e._x_undoAddedClasses&&e._x_undoAddedClasses(),e._x_undoAddedStyles&&e._x_undoAddedStyles()})};gn.inline=(e,{value:t,modifiers:r,expression:n})=>{t&&(e._x_inlineBindings||(e._x_inlineBindings={}),e._x_inlineBindings[t]={expression:n,extract:!1})};m("bind",gn);function Fs(e,t){e._x_keyExpression=t}Lr(()=>`[${se("data")}]`);var I=Symbol();m("data",(e,{expression:t},{cleanup:r})=>{if(Hs(e))return;let n=e[I];if(n?.expression===t)return;t=t===""?"{}":t;let i={};ge(i,e);let s={};zi(s,i);let o=H(e,t,{scope:s});(o===void 0||o===!0)&&(o={}),ge(o,e);let a;if(n?.reactiveData){a=n.reactiveData,Bs(a,o);let l={expression:t};e[I]=l,queueMicrotask(()=>{e[I]===l&&delete e[I]})}else a=ne(o);Tt(a,r);let u=Se(e,a);L(()=>{a.init&&H(e,a.init)})(),r(()=>{a.destroy&&H(e,a.destroy),u();let l={reactiveData:a};e[I]=l,queueMicrotask(()=>{e[I]===l&&delete e[I]})})});function Bs(e,t){Object.keys(t).forEach(r=>{let n=Object.getOwnPropertyDescriptor(t,r),i=Object.getOwnPropertyDescriptor(e,r);n.get||n.set||i?.get||i?.set?(i&&delete e[r],i||(e[r]=void 0),n.get||n.set?Object.defineProperty(e,r,n):e[r]=t[r]):e[r]=t[r]}),Object.keys(e).filter(r=>!Object.prototype.hasOwnProperty.call(t,r)).forEach(r=>delete e[r])}Ee((e,t)=>{e._x_dataStack&&(t._x_dataStack=e._x_dataStack,t.setAttribute("data-has-alpine-state",!0))});function Hs(e){return N?lt?!0:e.hasAttribute("data-has-alpine-state"):!1}m("show",(e,{modifiers:t,expression:r},{effect:n})=>{let i=x(e,r);e._x_doHide||(e._x_doHide=()=>{y(()=>{e.style.setProperty("display","none",t.includes("important")?"important":void 0)})}),e._x_doShow||(e._x_doShow=()=>{y(()=>{e.style.length===1&&e.style.display==="none"?e.removeAttribute("style"):e.style.removeProperty("display")})});let s=()=>{e._x_doHide(),e._x_isShown=!1},o=()=>{e._x_doShow(),e._x_isShown=!0},a=()=>setTimeout(o),u=pt(f=>f?o():s(),f=>{typeof e._x_toggleAndCascadeWithTransitions=="function"?e._x_toggleAndCascadeWithTransitions(e,f,o,s):f?a():s()}),l,c=!0;n(()=>i(f=>{!c&&f===l||(t.includes("immediate")&&(f?a():s()),u(f),l=f,c=!1)}))});m("for",L((e,{expression:t},{effect:r,cleanup:n})=>{let i=qs(t),s=x(e,i.items),o=x(e,e._x_keyExpression||"index");e._x_lookup=new Map,r(()=>Vs(e,i,s,o),{priority:"structural"}),n(()=>{e._x_lookup.forEach(a=>y(()=>{Z(a),a.remove()})),delete e._x_lookup,delete e._x_lastRenderedEl})}));function Js(e){return t=>{Object.entries(t).forEach(([r,n])=>{e[r]=n})}}function Vs(e,t,r,n){r(i=>{Ws(i)&&(i=Array.from({length:i},(l,c)=>c+1)),i==null&&(i=[]),i instanceof Set&&(i=Array.from(i)),i instanceof Map&&(i=Array.from(i));let s=e._x_lookup,o=new Map;e._x_lookup=o;let a=zs(i),u=Object.entries(i).map(([l,c])=>{a||(l=parseInt(l));let f=Ks(t,c,l,i),p;return n(g=>{typeof g=="object"&&C("x-for key cannot be an object, it must be a string or an integer",e),s.has(g)&&(o.set(g,s.get(g)),s.delete(g)),p=g},{scope:{index:l,...f}}),[p,f]});y(()=>{s.forEach(f=>{Z(f),f.remove()});let l=new Set,c=e;u.forEach(([f,p])=>{if(o.has(f)){let d=o.get(f);d._x_refreshXForScope(p),c.nextElementSibling!==d&&(c.nextElementSibling&&d.replaceWith(c.nextElementSibling),c.after(d)),c=d,d._x_currentIfEl&&(d.nextElementSibling!==d._x_currentIfEl&&c.after(d._x_currentIfEl),c=d._x_currentIfEl);return}e.content.children.length>1&&C("x-for templates require a single root element, additional elements will be ignored.",e);let g=document.importNode(e.content,!0).firstElementChild,A=ne(p);Se(g,A,e),g._x_refreshXForScope=Js(A),o.set(f,g),l.add(g),c.after(g),c=g}),l.forEach(f=>R(f)),c!==e?e._x_lastRenderedEl=c:delete e._x_lastRenderedEl})})}function qs(e){let t=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,r=/^\s*\(|\)\s*$/g,n=/([\s\S]*?)\b(?:in|of)\b([\s\S]*)/,i=e.match(n);if(!i)return;let s={};s.items=i[2].trim();let o=i[1].replace(r,"").trim(),a=o.match(t);return a?(s.item=o.replace(t,"").trim(),s.index=a[1].trim(),a[2]&&(s.collection=a[2].trim())):s.item=o,s}function Ks(e,t,r,n){let i={};return/^\[.*\]$/.test(e.item)&&Array.isArray(t)?e.item.replace("[","").replace("]","").split(",").map(o=>o.trim()).forEach((o,a)=>{i[o]=t[a]}):/^\{.*\}$/.test(e.item)&&!Array.isArray(t)&&typeof t=="object"?e.item.replace("{","").replace("}","").split(",").map(o=>o.trim()).forEach(o=>{i[o]=t[o]}):i[e.item]=t,e.index&&(i[e.index]=r),e.collection&&(i[e.collection]=n),i}function Ws(e){return typeof e!="object"&&!isNaN(e)}function zs(e){return typeof e=="object"&&!Array.isArray(e)}function yn(){}yn.inline=(e,{expression:t},{cleanup:r})=>{let n=Je(e);n&&(n._x_refs||(n._x_refs={}),n._x_refs[t]=e,r(()=>delete n._x_refs[t]))};m("ref",yn);m("if",L((e,{expression:t},{effect:r,cleanup:n})=>{e.tagName.toLowerCase()!=="template"&&C("x-if can only be used on a <template> tag",e);let i=x(e,t),s=()=>{if(e._x_currentIfEl)return e._x_currentIfEl;let a=e.content.cloneNode(!0).firstElementChild;return Se(a,{},e),y(()=>{e.after(a),R(a)}),e._x_currentIfEl=a,e._x_lastRenderedEl=a,e._x_undoIf=()=>{y(()=>{Z(a),a.remove()}),delete e._x_currentIfEl,delete e._x_lastRenderedEl},a},o=()=>{e._x_undoIf&&(e._x_undoIf(),delete e._x_undoIf)};r(()=>i(a=>{a?s():o()}),{priority:"structural"}),n(()=>e._x_undoIf&&e._x_undoIf())}));m("id",(e,{expression:t},{evaluate:r})=>{r(t).forEach(i=>Ms(e,i))});Ee((e,t)=>{e._x_ids&&(t._x_ids=e._x_ids)});Ct(wr("@",Sr(se("on:"))));m("on",L((e,{value:t,modifiers:r,expression:n},{cleanup:i})=>{let s=n?x(e,n):()=>{};e.tagName.toLowerCase()==="template"&&(e._x_forwardEvents||(e._x_forwardEvents=[]),e._x_forwardEvents.includes(t)||e._x_forwardEvents.push(t));let o=ee(e,t,r,a=>{s(()=>{},{scope:{$event:a},params:[a]})});i(()=>o())}));Ke("Collapse","collapse","collapse");Ke("Intersect","intersect","intersect");Ke("Focus","trap","focus");Ke("Mask","mask","mask");function Ke(e,t,r){m(t,n=>C(`You can't use [x-${t}] without first installing the "${e}" plugin here: https://alpinejs.dev/plugins/${r}`,n))}oe.setEvaluator(Un);oe.setRawEvaluator(Qn);oe.setReactivityEngine({reactive:Ht,effect:(e,t={})=>{let r;return r=is(e,{scheduler:()=>{r&&(t.scheduler?t.scheduler(r):r())}}),r},release:ss,raw:_});var Us=oe,We=Us;var Gs={200:{name:"info",badge:"bg-sky-100 text-sky-800 ring-sky-200"},400:{name:"error",badge:"bg-rose-100 text-rose-800 ring-rose-200"}},vn="bg-slate-100 text-slate-700 ring-slate-200",Ys=50;function mn(e){return Gs[e]??{name:String(e),badge:vn}}function ae(e,t=2){return String(e).padStart(t,"0")}async function Jt(e){try{let t=await e.json();if(typeof t=="object"&&t!==null&&"error"in t&&typeof t.error=="string")return t.error}catch{}return`Request failed: ${e.status} ${e.statusText}`}var Zs="json",Te=class{constructor(t){this.source=t}source};function Xs(e){try{return{value:JSON.parse(e,(r,n,i)=>typeof n=="number"?new Te(i?.source??String(n)):n)}}catch{return null}}function E(e,t,r){let n=document.createElement(e);return n.className=t,r!==void 0&&(n.textContent=r),n}function Qs(e){return e===null?E("span","json-null","null"):e instanceof Te?E("span","json-number",e.source):typeof e=="boolean"?E("span","json-boolean",String(e)):E("span","json-string",JSON.stringify(e))}function bn(e,t,r){let n=r?"":",",i=e===null?[]:[E("span","json-key",JSON.stringify(e)),document.createTextNode(": ")];if(t===null||typeof t!="object"||t instanceof Te){let p=E("div","json-row");return p.append(...i,Qs(t),n),p}let s=Array.isArray(t),o=s?t.map(p=>[null,p]):Object.entries(t),a=s?"[":"{",u=s?"]":"}";if(o.length===0){let p=E("div","json-row");return p.append(...i,a+u+n),p}let l=document.createElement("details");l.className="json-node",l.open=!0;let c=E("summary","json-row");c.append(...i,a,E("span","json-preview",` \u2026 ${u}${n}`),E("span","json-count",`${o.length} ${s?"items":"keys"}`));let f=E("div","json-children");return o.forEach(([p,g],A)=>f.append(bn(p,g,A===o.length-1))),l.append(c,f,E("div","json-row",u+n)),l}var Oe=0;We.data("logsViewer",()=>({api_url:"api/logs",logout_url:"api/logout",login_url:"login",trace_id:"",message:"",tags:[],tag_modal_open:!1,tag_draft:[],groups:[],total:0,limit:Ys,offset:0,loading:!1,error_message:"",expanded:{},retrying_id:null,retry_modal_open:!1,retry_modal_status:null,retry_modal_body:"",init(){this.api_url=this.$root.dataset.api??this.api_url,this.logout_url=this.$root.dataset.logout??this.logout_url,this.login_url=this.$root.dataset.login??this.login_url,this.load()},async load(){let e=++Oe;this.loading=!0,this.error_message="";let t=this.trace_id.trim(),r=this.message.trim();try{let n=await fetch(this.api_url,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({trace_id:t===""?void 0:t,message:r===""?void 0:r,tags:this.tags,limit:this.limit,offset:this.offset})});if(e!==Oe)return;if(n.status===401){window.location.href=this.login_url;return}if(!n.ok){this.error_message=await Jt(n);return}let i=await n.json();if(e!==Oe)return;this.groups=i.groups,this.total=i.total,this.expanded={},(t!==""||i.groups.length===1)&&i.groups.forEach(s=>this.expanded[this.groupKey(s)]=!0)}catch(n){e===Oe&&(this.error_message=n instanceof Error?n.message:String(n))}finally{e===Oe&&(this.loading=!1)}},async logout(){try{await fetch(this.logout_url,{method:"POST"})}finally{window.location.href=this.login_url}},search(){this.offset=0,this.load()},hasTag(e,t){return this.tags.some(r=>r.key===e&&r.value===t)},openTagModal(){this.tag_draft=this.tags.length>0?this.tags.map(e=>({...e})):[{key:"",value:""}],this.tag_modal_open=!0},closeTagModal(){this.tag_modal_open=!1},addDraftTag(){this.tag_draft.push({key:"",value:""})},removeDraftTag(e){this.tag_draft.splice(e,1)},applyTagModal(){this.tags=this.tag_draft.map(e=>({key:e.key.trim(),value:e.value.trim()})).filter(e=>e.key!==""),this.tag_modal_open=!1,this.search()},removeTag(e){this.tags.splice(e,1),this.search()},filterByTag(e,t){let r=String(t);this.hasTag(e,r)||(this.tags.push({key:e,value:r}),this.search())},filterByTrace(e){e!==null&&(this.trace_id=e,this.search())},async retryLog(e){if(!(e.retry===null||this.retrying_id!==null)){this.retrying_id=e.id;try{let t=await fetch(`${this.api_url}/${e.id}/retry`,{method:"POST"});if(t.status===401){window.location.href=this.login_url;return}if(!t.ok){this.openRetryModal(null,await Jt(t));return}let r=await t.json();e.retries_count=r.retries_count,this.openRetryModal(r.status,r.body)}catch(t){this.openRetryModal(null,t instanceof Error?t.message:String(t))}finally{this.retrying_id=null}}},openRetryModal(e,t){this.retry_modal_open=!0,this.retry_modal_status=e,this.retry_modal_body=t},closeRetryModal(){this.retry_modal_open=!1},retryStatusClass(e){return e===null?vn:e>=200&&e<300?"bg-emerald-100 text-emerald-800 ring-emerald-200":e>=300&&e<400?"bg-sky-100 text-sky-800 ring-sky-200":e>=400&&e<500?"bg-amber-100 text-amber-800 ring-amber-200":"bg-rose-100 text-rose-800 ring-rose-200"},clearFilters(){this.trace_id="",this.message="",this.tags=[],this.search()},hasFilters(){return this.trace_id.trim()!==""||this.message.trim()!==""||this.tags.length>0},hasPrevPage(){return this.offset>0},hasNextPage(){return this.offset+this.groups.length<this.total},prevPage(){this.offset=Math.max(0,this.offset-this.limit),this.load()},nextPage(){this.offset+=this.limit,this.load()},pageRange(){return this.groups.length===0?"0":`${this.offset+1}\u2013${this.offset+this.groups.length}`},groupKey(e){return e.trace_id!==null?"trace:"+e.trace_id:"log:"+(e.logs[0]?.id??"")},isExpanded(e){return this.expanded[this.groupKey(e)]===!0},toggle(e){let t=this.groupKey(e);this.expanded[t]=!this.expanded[t]},summary(e){return e.logs[0]?.message??""},levelName(e){return mn(e).name},levelBadge(e){return mn(e).badge},tagEntries(e){return Object.entries(e).map(([t,r])=>({key:t,value:r}))},formatTime(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:`${ae(t.getHours())}:${ae(t.getMinutes())}:${ae(t.getSeconds())}.${ae(t.getMilliseconds(),3)}`},formatDate(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:`${t.getFullYear()}-${ae(t.getMonth()+1)}-${ae(t.getDate())} ${this.formatTime(e)}`},formatDuration(e){let t=new Date(e.finished_at).getTime()-new Date(e.started_at).getTime();return!Number.isFinite(t)||t<=0?"":t<1e3?`${t} ms`:`${(t/1e3).toFixed(2)} s`},formatMessage(e){let t=e.trim();if(!t.startsWith("{")&&!t.startsWith("["))return e;try{return JSON.stringify(JSON.parse(t),null,2)}catch{return e}},async copyText(e,t){let r=e.textContent??"";try{await navigator.clipboard.writeText(t),e.textContent="Copied!"}catch{e.textContent="Copy failed"}setTimeout(()=>{e.textContent=r},1500)},isJsonMessage(e){return e.content_type===Zs},renderJsonMessage(e,t){let r=Xs(t);if(r===null){e.textContent=t;return}e.replaceChildren(bn(null,r.value,!0))}}));We.data("loginForm",()=>({api_url:"api/login",home_url:"./",email:"",password:"",loading:!1,error_message:"",init(){this.api_url=this.$root.dataset.api??this.api_url,this.home_url=this.$root.dataset.home??this.home_url},async submit(){this.loading=!0,this.error_message="";try{let e=await fetch(this.api_url,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({email:this.email,password:this.password})});if(!e.ok){this.error_message=await Jt(e);return}window.location.href=this.home_url}catch(e){this.error_message=e instanceof Error?e.message:String(e)}finally{this.loading=!1}}}));We.start();})();
|
|
6
6
|
/*! Bundled license information:
|
|
7
7
|
|
|
8
8
|
alpinejs/dist/module.esm.js:
|
package/build/ui/index.html
CHANGED
|
@@ -213,6 +213,8 @@
|
|
|
213
213
|
</button>
|
|
214
214
|
</template>
|
|
215
215
|
</div>
|
|
216
|
+
<button type="button" @click.stop="copyText($el, log.message)"
|
|
217
|
+
class="rounded border border-slate-300 bg-white px-1.5 py-0.5 text-[11px] text-slate-600 hover:bg-slate-100">Copy message</button>
|
|
216
218
|
<template x-if="isJsonMessage(log)">
|
|
217
219
|
<div class="json-tree" x-effect="renderJsonMessage($el, log.message)"></div>
|
|
218
220
|
</template>
|
|
@@ -224,6 +226,8 @@
|
|
|
224
226
|
<summary class="cursor-pointer select-none text-xs text-slate-500 hover:text-slate-800">
|
|
225
227
|
Stack trace
|
|
226
228
|
</summary>
|
|
229
|
+
<button type="button" @click.stop="copyText($el, log.stack_trace ?? '')"
|
|
230
|
+
class="mt-1 rounded border border-slate-300 bg-white px-1.5 py-0.5 text-[11px] text-slate-600 hover:bg-slate-100">Copy stack trace</button>
|
|
227
231
|
<pre class="mt-1 whitespace-pre-wrap break-words font-mono text-xs text-rose-800"
|
|
228
232
|
x-text="log.stack_trace"></pre>
|
|
229
233
|
</details>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smuzi/logger-ui",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.6",
|
|
4
4
|
"description": "Web UI for browsing logs",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"types": "./build/index.d.ts",
|
|
@@ -40,8 +40,8 @@
|
|
|
40
40
|
"@smuzi/database": "^0.0.15",
|
|
41
41
|
"@smuzi/http-client": "^0.0.13",
|
|
42
42
|
"@smuzi/http-server": "^0.0.14",
|
|
43
|
-
"@smuzi/logger": "^0.0.
|
|
44
|
-
"@smuzi/std": "^0.2.
|
|
43
|
+
"@smuzi/logger": "^0.0.9",
|
|
44
|
+
"@smuzi/std": "^0.2.16"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
47
|
"@smuzi/console": "^0.0.12",
|