@quidgest/chatbot 0.0.9 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,6 +1,68 @@
1
- (function(s,V){typeof exports=="object"&&typeof module<"u"?module.exports=V(require("vue")):typeof define=="function"&&define.amd?define(["vue"],V):(s=typeof globalThis<"u"?globalThis:s||self,s.ChatBotFrontend=V(s.vue))})(this,function(s){"use strict";function V(e,t){return function(){return e.apply(t,arguments)}}const{toString:ut}=Object.prototype,{getPrototypeOf:ie}=Object,X=(e=>t=>{const n=ut.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),x=e=>(e=e.toLowerCase(),t=>X(t)===e),v=e=>t=>typeof t===e,{isArray:G}=Array,W=v("undefined");function dt(e){return e!==null&&!W(e)&&e.constructor!==null&&!W(e.constructor)&&D(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const we=x("ArrayBuffer");function ft(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&we(e.buffer),t}const pt=v("string"),D=v("function"),Ee=v("number"),_=e=>e!==null&&typeof e=="object",mt=e=>e===!0||e===!1,K=e=>{if(X(e)!=="object")return!1;const t=ie(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},ht=x("Date"),gt=x("File"),bt=x("Blob"),At=x("FileList"),yt=e=>_(e)&&D(e.pipe),wt=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||D(e.append)&&((t=X(e))==="formdata"||t==="object"&&D(e.toString)&&e.toString()==="[object FormData]"))},Et=x("URLSearchParams"),[St,Rt,Bt,Nt]=["ReadableStream","Request","Response","Headers"].map(x),Ct=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function J(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let o,r;if(typeof e!="object"&&(e=[e]),G(e))for(o=0,r=e.length;o<r;o++)t.call(null,e[o],o,e);else{const i=n?Object.getOwnPropertyNames(e):Object.keys(e),a=i.length;let l;for(o=0;o<a;o++)l=i[o],t.call(null,e[l],l,e)}}function Se(e,t){t=t.toLowerCase();const n=Object.keys(e);let o=n.length,r;for(;o-- >0;)if(r=n[o],t===r.toLowerCase())return r;return null}const U=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Re=e=>!W(e)&&e!==U;function ae(){const{caseless:e}=Re(this)&&this||{},t={},n=(o,r)=>{const i=e&&Se(t,r)||r;K(t[i])&&K(o)?t[i]=ae(t[i],o):K(o)?t[i]=ae({},o):G(o)?t[i]=o.slice():t[i]=o};for(let o=0,r=arguments.length;o<r;o++)arguments[o]&&J(arguments[o],n);return t}const Tt=(e,t,n,{allOwnKeys:o}={})=>(J(t,(r,i)=>{n&&D(r)?e[i]=V(r,n):e[i]=r},{allOwnKeys:o}),e),Ot=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Dt=(e,t,n,o)=>{e.prototype=Object.create(t.prototype,o),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},kt=(e,t,n,o)=>{let r,i,a;const l={};if(t=t||{},e==null)return t;do{for(r=Object.getOwnPropertyNames(e),i=r.length;i-- >0;)a=r[i],(!o||o(a,e,t))&&!l[a]&&(t[a]=e[a],l[a]=!0);e=n!==!1&&ie(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},xt=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const o=e.indexOf(t,n);return o!==-1&&o===n},Ft=e=>{if(!e)return null;if(G(e))return e;let t=e.length;if(!Ee(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},Lt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&ie(Uint8Array)),It=(e,t)=>{const o=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=o.next())&&!r.done;){const i=r.value;t.call(e,i[0],i[1])}},Pt=(e,t)=>{let n;const o=[];for(;(n=e.exec(t))!==null;)o.push(n);return o},jt=x("HTMLFormElement"),zt=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,o,r){return o.toUpperCase()+r}),Be=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Ut=x("RegExp"),Ne=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),o={};J(n,(r,i)=>{let a;(a=t(r,i,e))!==!1&&(o[i]=a||r)}),Object.defineProperties(e,o)},Mt=e=>{Ne(e,(t,n)=>{if(D(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const o=e[n];if(D(o)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},qt=(e,t)=>{const n={},o=r=>{r.forEach(i=>{n[i]=!0})};return G(e)?o(e):o(String(e).split(t)),n},Vt=()=>{},Gt=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function Ht(e){return!!(e&&D(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const Wt=e=>{const t=new Array(10),n=(o,r)=>{if(_(o)){if(t.indexOf(o)>=0)return;if(!("toJSON"in o)){t[r]=o;const i=G(o)?[]:{};return J(o,(a,l)=>{const d=n(a,r+1);!W(d)&&(i[l]=d)}),t[r]=void 0,i}}return o};return n(e,0)},Jt=x("AsyncFunction"),Qt=e=>e&&(_(e)||D(e))&&D(e.then)&&D(e.catch),Ce=((e,t)=>e?setImmediate:t?((n,o)=>(U.addEventListener("message",({source:r,data:i})=>{r===U&&i===n&&o.length&&o.shift()()},!1),r=>{o.push(r),U.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",D(U.postMessage)),Zt=typeof queueMicrotask<"u"?queueMicrotask.bind(U):typeof process<"u"&&process.nextTick||Ce,c={isArray:G,isArrayBuffer:we,isBuffer:dt,isFormData:wt,isArrayBufferView:ft,isString:pt,isNumber:Ee,isBoolean:mt,isObject:_,isPlainObject:K,isReadableStream:St,isRequest:Rt,isResponse:Bt,isHeaders:Nt,isUndefined:W,isDate:ht,isFile:gt,isBlob:bt,isRegExp:Ut,isFunction:D,isStream:yt,isURLSearchParams:Et,isTypedArray:Lt,isFileList:At,forEach:J,merge:ae,extend:Tt,trim:Ct,stripBOM:Ot,inherits:Dt,toFlatObject:kt,kindOf:X,kindOfTest:x,endsWith:xt,toArray:Ft,forEachEntry:It,matchAll:Pt,isHTMLForm:jt,hasOwnProperty:Be,hasOwnProp:Be,reduceDescriptors:Ne,freezeMethods:Mt,toObjectSet:qt,toCamelCase:zt,noop:Vt,toFiniteNumber:Gt,findKey:Se,global:U,isContextDefined:Re,isSpecCompliantForm:Ht,toJSONObject:Wt,isAsyncFn:Jt,isThenable:Qt,setImmediate:Ce,asap:Zt};function g(e,t,n,o,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),o&&(this.request=o),r&&(this.response=r,this.status=r.status?r.status:null)}c.inherits(g,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:c.toJSONObject(this.config),code:this.code,status:this.status}}});const Te=g.prototype,Oe={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{Oe[e]={value:e}}),Object.defineProperties(g,Oe),Object.defineProperty(Te,"isAxiosError",{value:!0}),g.from=(e,t,n,o,r,i)=>{const a=Object.create(Te);return c.toFlatObject(e,a,function(d){return d!==Error.prototype},l=>l!=="isAxiosError"),g.call(a,e.message,t,n,o,r),a.cause=e,a.name=e.name,i&&Object.assign(a,i),a};const Yt=null;function le(e){return c.isPlainObject(e)||c.isArray(e)}function De(e){return c.endsWith(e,"[]")?e.slice(0,-2):e}function ke(e,t,n){return e?e.concat(t).map(function(r,i){return r=De(r),!n&&i?"["+r+"]":r}).join(n?".":""):t}function Xt(e){return c.isArray(e)&&!e.some(le)}const vt=c.toFlatObject(c,{},null,function(t){return/^is[A-Z]/.test(t)});function $(e,t,n){if(!c.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=c.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(b,h){return!c.isUndefined(h[b])});const o=n.metaTokens,r=n.visitor||f,i=n.dots,a=n.indexes,d=(n.Blob||typeof Blob<"u"&&Blob)&&c.isSpecCompliantForm(t);if(!c.isFunction(r))throw new TypeError("visitor must be a function");function u(m){if(m===null)return"";if(c.isDate(m))return m.toISOString();if(!d&&c.isBlob(m))throw new g("Blob is not supported. Use a Buffer instead.");return c.isArrayBuffer(m)||c.isTypedArray(m)?d&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function f(m,b,h){let E=m;if(m&&!h&&typeof m=="object"){if(c.endsWith(b,"{}"))b=o?b:b.slice(0,-2),m=JSON.stringify(m);else if(c.isArray(m)&&Xt(m)||(c.isFileList(m)||c.endsWith(b,"[]"))&&(E=c.toArray(m)))return b=De(b),E.forEach(function(B,k){!(c.isUndefined(B)||B===null)&&t.append(a===!0?ke([b],k,i):a===null?b:b+"[]",u(B))}),!1}return le(m)?!0:(t.append(ke(h,b,i),u(m)),!1)}const p=[],A=Object.assign(vt,{defaultVisitor:f,convertValue:u,isVisitable:le});function S(m,b){if(!c.isUndefined(m)){if(p.indexOf(m)!==-1)throw Error("Circular reference detected in "+b.join("."));p.push(m),c.forEach(m,function(E,R){(!(c.isUndefined(E)||E===null)&&r.call(t,E,c.isString(R)?R.trim():R,b,A))===!0&&S(E,b?b.concat(R):[R])}),p.pop()}}if(!c.isObject(e))throw new TypeError("data must be an object");return S(e),t}function xe(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(o){return t[o]})}function ce(e,t){this._pairs=[],e&&$(e,this,t)}const Fe=ce.prototype;Fe.append=function(t,n){this._pairs.push([t,n])},Fe.toString=function(t){const n=t?function(o){return t.call(this,o,xe)}:xe;return this._pairs.map(function(r){return n(r[0])+"="+n(r[1])},"").join("&")};function _t(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Le(e,t,n){if(!t)return e;const o=n&&n.encode||_t;c.isFunction(n)&&(n={serialize:n});const r=n&&n.serialize;let i;if(r?i=r(t,n):i=c.isURLSearchParams(t)?t.toString():new ce(t,n).toString(o),i){const a=e.indexOf("#");a!==-1&&(e=e.slice(0,a)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class Ie{constructor(){this.handlers=[]}use(t,n,o){return this.handlers.push({fulfilled:t,rejected:n,synchronous:o?o.synchronous:!1,runWhen:o?o.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){c.forEach(this.handlers,function(o){o!==null&&t(o)})}}const Pe={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Kt={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:ce,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},ue=typeof window<"u"&&typeof document<"u",de=typeof navigator=="object"&&navigator||void 0,$t=ue&&(!de||["ReactNative","NativeScript","NS"].indexOf(de.product)<0),en=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",tn=ue&&window.location.href||"http://localhost",C={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:ue,hasStandardBrowserEnv:$t,hasStandardBrowserWebWorkerEnv:en,navigator:de,origin:tn},Symbol.toStringTag,{value:"Module"})),...Kt};function nn(e,t){return $(e,new C.classes.URLSearchParams,Object.assign({visitor:function(n,o,r,i){return C.isNode&&c.isBuffer(n)?(this.append(o,n.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}function on(e){return c.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function rn(e){const t={},n=Object.keys(e);let o;const r=n.length;let i;for(o=0;o<r;o++)i=n[o],t[i]=e[i];return t}function je(e){function t(n,o,r,i){let a=n[i++];if(a==="__proto__")return!0;const l=Number.isFinite(+a),d=i>=n.length;return a=!a&&c.isArray(r)?r.length:a,d?(c.hasOwnProp(r,a)?r[a]=[r[a],o]:r[a]=o,!l):((!r[a]||!c.isObject(r[a]))&&(r[a]=[]),t(n,o,r[a],i)&&c.isArray(r[a])&&(r[a]=rn(r[a])),!l)}if(c.isFormData(e)&&c.isFunction(e.entries)){const n={};return c.forEachEntry(e,(o,r)=>{t(on(o),r,n,0)}),n}return null}function sn(e,t,n){if(c.isString(e))try{return(t||JSON.parse)(e),c.trim(e)}catch(o){if(o.name!=="SyntaxError")throw o}return(n||JSON.stringify)(e)}const Q={transitional:Pe,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const o=n.getContentType()||"",r=o.indexOf("application/json")>-1,i=c.isObject(t);if(i&&c.isHTMLForm(t)&&(t=new FormData(t)),c.isFormData(t))return r?JSON.stringify(je(t)):t;if(c.isArrayBuffer(t)||c.isBuffer(t)||c.isStream(t)||c.isFile(t)||c.isBlob(t)||c.isReadableStream(t))return t;if(c.isArrayBufferView(t))return t.buffer;if(c.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(i){if(o.indexOf("application/x-www-form-urlencoded")>-1)return nn(t,this.formSerializer).toString();if((l=c.isFileList(t))||o.indexOf("multipart/form-data")>-1){const d=this.env&&this.env.FormData;return $(l?{"files[]":t}:t,d&&new d,this.formSerializer)}}return i||r?(n.setContentType("application/json",!1),sn(t)):t}],transformResponse:[function(t){const n=this.transitional||Q.transitional,o=n&&n.forcedJSONParsing,r=this.responseType==="json";if(c.isResponse(t)||c.isReadableStream(t))return t;if(t&&c.isString(t)&&(o&&!this.responseType||r)){const a=!(n&&n.silentJSONParsing)&&r;try{return JSON.parse(t)}catch(l){if(a)throw l.name==="SyntaxError"?g.from(l,g.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:C.classes.FormData,Blob:C.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};c.forEach(["delete","get","head","post","put","patch"],e=>{Q.headers[e]={}});const an=c.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),ln=e=>{const t={};let n,o,r;return e&&e.split(`
2
- `).forEach(function(a){r=a.indexOf(":"),n=a.substring(0,r).trim().toLowerCase(),o=a.substring(r+1).trim(),!(!n||t[n]&&an[n])&&(n==="set-cookie"?t[n]?t[n].push(o):t[n]=[o]:t[n]=t[n]?t[n]+", "+o:o)}),t},ze=Symbol("internals");function Z(e){return e&&String(e).trim().toLowerCase()}function ee(e){return e===!1||e==null?e:c.isArray(e)?e.map(ee):String(e)}function cn(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let o;for(;o=n.exec(e);)t[o[1]]=o[2];return t}const un=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function fe(e,t,n,o,r){if(c.isFunction(o))return o.call(this,t,n);if(r&&(t=n),!!c.isString(t)){if(c.isString(o))return t.indexOf(o)!==-1;if(c.isRegExp(o))return o.test(t)}}function dn(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,o)=>n.toUpperCase()+o)}function fn(e,t){const n=c.toCamelCase(" "+t);["get","set","has"].forEach(o=>{Object.defineProperty(e,o+n,{value:function(r,i,a){return this[o].call(this,t,r,i,a)},configurable:!0})})}let O=class{constructor(t){t&&this.set(t)}set(t,n,o){const r=this;function i(l,d,u){const f=Z(d);if(!f)throw new Error("header name must be a non-empty string");const p=c.findKey(r,f);(!p||r[p]===void 0||u===!0||u===void 0&&r[p]!==!1)&&(r[p||d]=ee(l))}const a=(l,d)=>c.forEach(l,(u,f)=>i(u,f,d));if(c.isPlainObject(t)||t instanceof this.constructor)a(t,n);else if(c.isString(t)&&(t=t.trim())&&!un(t))a(ln(t),n);else if(c.isHeaders(t))for(const[l,d]of t.entries())i(d,l,o);else t!=null&&i(n,t,o);return this}get(t,n){if(t=Z(t),t){const o=c.findKey(this,t);if(o){const r=this[o];if(!n)return r;if(n===!0)return cn(r);if(c.isFunction(n))return n.call(this,r,o);if(c.isRegExp(n))return n.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=Z(t),t){const o=c.findKey(this,t);return!!(o&&this[o]!==void 0&&(!n||fe(this,this[o],o,n)))}return!1}delete(t,n){const o=this;let r=!1;function i(a){if(a=Z(a),a){const l=c.findKey(o,a);l&&(!n||fe(o,o[l],l,n))&&(delete o[l],r=!0)}}return c.isArray(t)?t.forEach(i):i(t),r}clear(t){const n=Object.keys(this);let o=n.length,r=!1;for(;o--;){const i=n[o];(!t||fe(this,this[i],i,t,!0))&&(delete this[i],r=!0)}return r}normalize(t){const n=this,o={};return c.forEach(this,(r,i)=>{const a=c.findKey(o,i);if(a){n[a]=ee(r),delete n[i];return}const l=t?dn(i):String(i).trim();l!==i&&delete n[i],n[l]=ee(r),o[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return c.forEach(this,(o,r)=>{o!=null&&o!==!1&&(n[r]=t&&c.isArray(o)?o.join(", "):o)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
3
- `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const o=new this(t);return n.forEach(r=>o.set(r)),o}static accessor(t){const o=(this[ze]=this[ze]={accessors:{}}).accessors,r=this.prototype;function i(a){const l=Z(a);o[l]||(fn(r,a),o[l]=!0)}return c.isArray(t)?t.forEach(i):i(t),this}};O.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),c.reduceDescriptors(O.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(o){this[n]=o}}}),c.freezeMethods(O);function pe(e,t){const n=this||Q,o=t||n,r=O.from(o.headers);let i=o.data;return c.forEach(e,function(l){i=l.call(n,i,r.normalize(),t?t.status:void 0)}),r.normalize(),i}function Ue(e){return!!(e&&e.__CANCEL__)}function H(e,t,n){g.call(this,e??"canceled",g.ERR_CANCELED,t,n),this.name="CanceledError"}c.inherits(H,g,{__CANCEL__:!0});function Me(e,t,n){const o=n.config.validateStatus;!n.status||!o||o(n.status)?e(n):t(new g("Request failed with status code "+n.status,[g.ERR_BAD_REQUEST,g.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function pn(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function mn(e,t){e=e||10;const n=new Array(e),o=new Array(e);let r=0,i=0,a;return t=t!==void 0?t:1e3,function(d){const u=Date.now(),f=o[i];a||(a=u),n[r]=d,o[r]=u;let p=i,A=0;for(;p!==r;)A+=n[p++],p=p%e;if(r=(r+1)%e,r===i&&(i=(i+1)%e),u-a<t)return;const S=f&&u-f;return S?Math.round(A*1e3/S):void 0}}function hn(e,t){let n=0,o=1e3/t,r,i;const a=(u,f=Date.now())=>{n=f,r=null,i&&(clearTimeout(i),i=null),e.apply(null,u)};return[(...u)=>{const f=Date.now(),p=f-n;p>=o?a(u,f):(r=u,i||(i=setTimeout(()=>{i=null,a(r)},o-p)))},()=>r&&a(r)]}const te=(e,t,n=3)=>{let o=0;const r=mn(50,250);return hn(i=>{const a=i.loaded,l=i.lengthComputable?i.total:void 0,d=a-o,u=r(d),f=a<=l;o=a;const p={loaded:a,total:l,progress:l?a/l:void 0,bytes:d,rate:u||void 0,estimated:u&&l&&f?(l-a)/u:void 0,event:i,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(p)},n)},qe=(e,t)=>{const n=e!=null;return[o=>t[0]({lengthComputable:n,total:e,loaded:o}),t[1]]},Ve=e=>(...t)=>c.asap(()=>e(...t)),gn=C.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,C.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(C.origin),C.navigator&&/(msie|trident)/i.test(C.navigator.userAgent)):()=>!0,bn=C.hasStandardBrowserEnv?{write(e,t,n,o,r,i){const a=[e+"="+encodeURIComponent(t)];c.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),c.isString(o)&&a.push("path="+o),c.isString(r)&&a.push("domain="+r),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function An(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function yn(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Ge(e,t,n){let o=!An(t);return e&&(o||n==!1)?yn(e,t):t}const He=e=>e instanceof O?{...e}:e;function M(e,t){t=t||{};const n={};function o(u,f,p,A){return c.isPlainObject(u)&&c.isPlainObject(f)?c.merge.call({caseless:A},u,f):c.isPlainObject(f)?c.merge({},f):c.isArray(f)?f.slice():f}function r(u,f,p,A){if(c.isUndefined(f)){if(!c.isUndefined(u))return o(void 0,u,p,A)}else return o(u,f,p,A)}function i(u,f){if(!c.isUndefined(f))return o(void 0,f)}function a(u,f){if(c.isUndefined(f)){if(!c.isUndefined(u))return o(void 0,u)}else return o(void 0,f)}function l(u,f,p){if(p in t)return o(u,f);if(p in e)return o(void 0,u)}const d={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:l,headers:(u,f,p)=>r(He(u),He(f),p,!0)};return c.forEach(Object.keys(Object.assign({},e,t)),function(f){const p=d[f]||r,A=p(e[f],t[f],f);c.isUndefined(A)&&p!==l||(n[f]=A)}),n}const We=e=>{const t=M({},e);let{data:n,withXSRFToken:o,xsrfHeaderName:r,xsrfCookieName:i,headers:a,auth:l}=t;t.headers=a=O.from(a),t.url=Le(Ge(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&a.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let d;if(c.isFormData(n)){if(C.hasStandardBrowserEnv||C.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if((d=a.getContentType())!==!1){const[u,...f]=d?d.split(";").map(p=>p.trim()).filter(Boolean):[];a.setContentType([u||"multipart/form-data",...f].join("; "))}}if(C.hasStandardBrowserEnv&&(o&&c.isFunction(o)&&(o=o(t)),o||o!==!1&&gn(t.url))){const u=r&&i&&bn.read(i);u&&a.set(r,u)}return t},wn=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,o){const r=We(e);let i=r.data;const a=O.from(r.headers).normalize();let{responseType:l,onUploadProgress:d,onDownloadProgress:u}=r,f,p,A,S,m;function b(){S&&S(),m&&m(),r.cancelToken&&r.cancelToken.unsubscribe(f),r.signal&&r.signal.removeEventListener("abort",f)}let h=new XMLHttpRequest;h.open(r.method.toUpperCase(),r.url,!0),h.timeout=r.timeout;function E(){if(!h)return;const B=O.from("getAllResponseHeaders"in h&&h.getAllResponseHeaders()),T={data:!l||l==="text"||l==="json"?h.responseText:h.response,status:h.status,statusText:h.statusText,headers:B,config:e,request:h};Me(function(j){n(j),b()},function(j){o(j),b()},T),h=null}"onloadend"in h?h.onloadend=E:h.onreadystatechange=function(){!h||h.readyState!==4||h.status===0&&!(h.responseURL&&h.responseURL.indexOf("file:")===0)||setTimeout(E)},h.onabort=function(){h&&(o(new g("Request aborted",g.ECONNABORTED,e,h)),h=null)},h.onerror=function(){o(new g("Network Error",g.ERR_NETWORK,e,h)),h=null},h.ontimeout=function(){let k=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const T=r.transitional||Pe;r.timeoutErrorMessage&&(k=r.timeoutErrorMessage),o(new g(k,T.clarifyTimeoutError?g.ETIMEDOUT:g.ECONNABORTED,e,h)),h=null},i===void 0&&a.setContentType(null),"setRequestHeader"in h&&c.forEach(a.toJSON(),function(k,T){h.setRequestHeader(T,k)}),c.isUndefined(r.withCredentials)||(h.withCredentials=!!r.withCredentials),l&&l!=="json"&&(h.responseType=r.responseType),u&&([A,m]=te(u,!0),h.addEventListener("progress",A)),d&&h.upload&&([p,S]=te(d),h.upload.addEventListener("progress",p),h.upload.addEventListener("loadend",S)),(r.cancelToken||r.signal)&&(f=B=>{h&&(o(!B||B.type?new H(null,e,h):B),h.abort(),h=null)},r.cancelToken&&r.cancelToken.subscribe(f),r.signal&&(r.signal.aborted?f():r.signal.addEventListener("abort",f)));const R=pn(r.url);if(R&&C.protocols.indexOf(R)===-1){o(new g("Unsupported protocol "+R+":",g.ERR_BAD_REQUEST,e));return}h.send(i||null)})},En=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let o=new AbortController,r;const i=function(u){if(!r){r=!0,l();const f=u instanceof Error?u:this.reason;o.abort(f instanceof g?f:new H(f instanceof Error?f.message:f))}};let a=t&&setTimeout(()=>{a=null,i(new g(`timeout ${t} of ms exceeded`,g.ETIMEDOUT))},t);const l=()=>{e&&(a&&clearTimeout(a),a=null,e.forEach(u=>{u.unsubscribe?u.unsubscribe(i):u.removeEventListener("abort",i)}),e=null)};e.forEach(u=>u.addEventListener("abort",i));const{signal:d}=o;return d.unsubscribe=()=>c.asap(l),d}},Sn=function*(e,t){let n=e.byteLength;if(n<t){yield e;return}let o=0,r;for(;o<n;)r=o+t,yield e.slice(o,r),o=r},Rn=async function*(e,t){for await(const n of Bn(e))yield*Sn(n,t)},Bn=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:n,value:o}=await t.read();if(n)break;yield o}}finally{await t.cancel()}},Je=(e,t,n,o)=>{const r=Rn(e,t);let i=0,a,l=d=>{a||(a=!0,o&&o(d))};return new ReadableStream({async pull(d){try{const{done:u,value:f}=await r.next();if(u){l(),d.close();return}let p=f.byteLength;if(n){let A=i+=p;n(A)}d.enqueue(new Uint8Array(f))}catch(u){throw l(u),u}},cancel(d){return l(d),r.return()}},{highWaterMark:2})},ne=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",Qe=ne&&typeof ReadableStream=="function",Nn=ne&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),Ze=(e,...t)=>{try{return!!e(...t)}catch{return!1}},Cn=Qe&&Ze(()=>{let e=!1;const t=new Request(C.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),Ye=64*1024,me=Qe&&Ze(()=>c.isReadableStream(new Response("").body)),oe={stream:me&&(e=>e.body)};ne&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!oe[t]&&(oe[t]=c.isFunction(e[t])?n=>n[t]():(n,o)=>{throw new g(`Response type '${t}' is not supported`,g.ERR_NOT_SUPPORT,o)})})})(new Response);const Tn=async e=>{if(e==null)return 0;if(c.isBlob(e))return e.size;if(c.isSpecCompliantForm(e))return(await new Request(C.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(c.isArrayBufferView(e)||c.isArrayBuffer(e))return e.byteLength;if(c.isURLSearchParams(e)&&(e=e+""),c.isString(e))return(await Nn(e)).byteLength},On=async(e,t)=>{const n=c.toFiniteNumber(e.getContentLength());return n??Tn(t)},he={http:Yt,xhr:wn,fetch:ne&&(async e=>{let{url:t,method:n,data:o,signal:r,cancelToken:i,timeout:a,onDownloadProgress:l,onUploadProgress:d,responseType:u,headers:f,withCredentials:p="same-origin",fetchOptions:A}=We(e);u=u?(u+"").toLowerCase():"text";let S=En([r,i&&i.toAbortSignal()],a),m;const b=S&&S.unsubscribe&&(()=>{S.unsubscribe()});let h;try{if(d&&Cn&&n!=="get"&&n!=="head"&&(h=await On(f,o))!==0){let T=new Request(t,{method:"POST",body:o,duplex:"half"}),L;if(c.isFormData(o)&&(L=T.headers.get("content-type"))&&f.setContentType(L),T.body){const[j,y]=qe(h,te(Ve(d)));o=Je(T.body,Ye,j,y)}}c.isString(p)||(p=p?"include":"omit");const E="credentials"in Request.prototype;m=new Request(t,{...A,signal:S,method:n.toUpperCase(),headers:f.normalize().toJSON(),body:o,duplex:"half",credentials:E?p:void 0});let R=await fetch(m);const B=me&&(u==="stream"||u==="response");if(me&&(l||B&&b)){const T={};["status","statusText","headers"].forEach(N=>{T[N]=R[N]});const L=c.toFiniteNumber(R.headers.get("content-length")),[j,y]=l&&qe(L,te(Ve(l),!0))||[];R=new Response(Je(R.body,Ye,j,()=>{y&&y(),b&&b()}),T)}u=u||"text";let k=await oe[c.findKey(oe,u)||"text"](R,e);return!B&&b&&b(),await new Promise((T,L)=>{Me(T,L,{data:k,headers:O.from(R.headers),status:R.status,statusText:R.statusText,config:e,request:m})})}catch(E){throw b&&b(),E&&E.name==="TypeError"&&/fetch/i.test(E.message)?Object.assign(new g("Network Error",g.ERR_NETWORK,e,m),{cause:E.cause||E}):g.from(E,E&&E.code,e,m)}})};c.forEach(he,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Xe=e=>`- ${e}`,Dn=e=>c.isFunction(e)||e===null||e===!1,ve={getAdapter:e=>{e=c.isArray(e)?e:[e];const{length:t}=e;let n,o;const r={};for(let i=0;i<t;i++){n=e[i];let a;if(o=n,!Dn(n)&&(o=he[(a=String(n)).toLowerCase()],o===void 0))throw new g(`Unknown adapter '${a}'`);if(o)break;r[a||"#"+i]=o}if(!o){const i=Object.entries(r).map(([l,d])=>`adapter ${l} `+(d===!1?"is not supported by the environment":"is not available in the build"));let a=t?i.length>1?`since :
4
- `+i.map(Xe).join(`
5
- `):" "+Xe(i[0]):"as no adapter specified";throw new g("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return o},adapters:he};function ge(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new H(null,e)}function _e(e){return ge(e),e.headers=O.from(e.headers),e.data=pe.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),ve.getAdapter(e.adapter||Q.adapter)(e).then(function(o){return ge(e),o.data=pe.call(e,e.transformResponse,o),o.headers=O.from(o.headers),o},function(o){return Ue(o)||(ge(e),o&&o.response&&(o.response.data=pe.call(e,e.transformResponse,o.response),o.response.headers=O.from(o.response.headers))),Promise.reject(o)})}const Ke="1.8.4",re={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{re[e]=function(o){return typeof o===e||"a"+(t<1?"n ":" ")+e}});const $e={};re.transitional=function(t,n,o){function r(i,a){return"[Axios v"+Ke+"] Transitional option '"+i+"'"+a+(o?". "+o:"")}return(i,a,l)=>{if(t===!1)throw new g(r(a," has been removed"+(n?" in "+n:"")),g.ERR_DEPRECATED);return n&&!$e[a]&&($e[a]=!0,console.warn(r(a," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(i,a,l):!0}},re.spelling=function(t){return(n,o)=>(console.warn(`${o} is likely a misspelling of ${t}`),!0)};function kn(e,t,n){if(typeof e!="object")throw new g("options must be an object",g.ERR_BAD_OPTION_VALUE);const o=Object.keys(e);let r=o.length;for(;r-- >0;){const i=o[r],a=t[i];if(a){const l=e[i],d=l===void 0||a(l,i,e);if(d!==!0)throw new g("option "+i+" must be "+d,g.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new g("Unknown option "+i,g.ERR_BAD_OPTION)}}const se={assertOptions:kn,validators:re},F=se.validators;let q=class{constructor(t){this.defaults=t,this.interceptors={request:new Ie,response:new Ie}}async request(t,n){try{return await this._request(t,n)}catch(o){if(o instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const i=r.stack?r.stack.replace(/^.+\n/,""):"";try{o.stack?i&&!String(o.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(o.stack+=`
6
- `+i):o.stack=i}catch{}}throw o}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=M(this.defaults,n);const{transitional:o,paramsSerializer:r,headers:i}=n;o!==void 0&&se.assertOptions(o,{silentJSONParsing:F.transitional(F.boolean),forcedJSONParsing:F.transitional(F.boolean),clarifyTimeoutError:F.transitional(F.boolean)},!1),r!=null&&(c.isFunction(r)?n.paramsSerializer={serialize:r}:se.assertOptions(r,{encode:F.function,serialize:F.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),se.assertOptions(n,{baseUrl:F.spelling("baseURL"),withXsrfToken:F.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let a=i&&c.merge(i.common,i[n.method]);i&&c.forEach(["delete","get","head","post","put","patch","common"],m=>{delete i[m]}),n.headers=O.concat(a,i);const l=[];let d=!0;this.interceptors.request.forEach(function(b){typeof b.runWhen=="function"&&b.runWhen(n)===!1||(d=d&&b.synchronous,l.unshift(b.fulfilled,b.rejected))});const u=[];this.interceptors.response.forEach(function(b){u.push(b.fulfilled,b.rejected)});let f,p=0,A;if(!d){const m=[_e.bind(this),void 0];for(m.unshift.apply(m,l),m.push.apply(m,u),A=m.length,f=Promise.resolve(n);p<A;)f=f.then(m[p++],m[p++]);return f}A=l.length;let S=n;for(p=0;p<A;){const m=l[p++],b=l[p++];try{S=m(S)}catch(h){b.call(this,h);break}}try{f=_e.call(this,S)}catch(m){return Promise.reject(m)}for(p=0,A=u.length;p<A;)f=f.then(u[p++],u[p++]);return f}getUri(t){t=M(this.defaults,t);const n=Ge(t.baseURL,t.url,t.allowAbsoluteUrls);return Le(n,t.params,t.paramsSerializer)}};c.forEach(["delete","get","head","options"],function(t){q.prototype[t]=function(n,o){return this.request(M(o||{},{method:t,url:n,data:(o||{}).data}))}}),c.forEach(["post","put","patch"],function(t){function n(o){return function(i,a,l){return this.request(M(l||{},{method:t,headers:o?{"Content-Type":"multipart/form-data"}:{},url:i,data:a}))}}q.prototype[t]=n(),q.prototype[t+"Form"]=n(!0)});let xn=class ct{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(i){n=i});const o=this;this.promise.then(r=>{if(!o._listeners)return;let i=o._listeners.length;for(;i-- >0;)o._listeners[i](r);o._listeners=null}),this.promise.then=r=>{let i;const a=new Promise(l=>{o.subscribe(l),i=l}).then(r);return a.cancel=function(){o.unsubscribe(i)},a},t(function(i,a,l){o.reason||(o.reason=new H(i,a,l),n(o.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=o=>{t.abort(o)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new ct(function(r){t=r}),cancel:t}}};function Fn(e){return function(n){return e.apply(null,n)}}function Ln(e){return c.isObject(e)&&e.isAxiosError===!0}const be={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(be).forEach(([e,t])=>{be[t]=e});function et(e){const t=new q(e),n=V(q.prototype.request,t);return c.extend(n,q.prototype,t,{allOwnKeys:!0}),c.extend(n,t,null,{allOwnKeys:!0}),n.create=function(r){return et(M(e,r))},n}const w=et(Q);w.Axios=q,w.CanceledError=H,w.CancelToken=xn,w.isCancel=Ue,w.VERSION=Ke,w.toFormData=$,w.AxiosError=g,w.Cancel=w.CanceledError,w.all=function(t){return Promise.all(t)},w.spread=Fn,w.isAxiosError=Ln,w.mergeConfig=M,w.AxiosHeaders=O,w.formToJSON=e=>je(c.isHTMLForm(e)?new FormData(e):e),w.getAdapter=ve.getAdapter,w.HttpStatusCode=be,w.default=w;const{Axios:Yo,AxiosError:Xo,CanceledError:vo,isCancel:_o,CancelToken:Ko,VERSION:$o,all:er,Cancel:tr,isAxiosError:nr,spread:or,toFormData:rr,AxiosHeaders:sr,HttpStatusCode:ir,formToJSON:ar,getAdapter:lr,mergeConfig:cr}=w;function In(e){return e==null?!0:typeof e=="string"||Array.isArray(e)?e.length===0:typeof e=="object"?Object.keys(e).length===0:!1}function tt(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function nt(e={},t={}){const n={};for(const o in e)n[o]=e[o];for(const o in t){const r=e[o],i=t[o];if(tt(r)&&tt(i)){n[o]=nt(r,i);continue}n[o]=i}return n}const Pn="q-defaults";function jn(){var e,t;const n=s.getCurrentInstance();if(!n)throw new Error("[Quidgest UI] useDefaults must be called from inside a setup function");const o=n.type.name??n.type.__name;if(!o)throw new Error("[Quidgest UI] Could not determine component name");const r=zn(),i=(e=r.value)==null?void 0:e.Global,a=(t=r.value)==null?void 0:t[o];return s.computed(()=>nt(i,a))}function zn(){const e=s.inject(Pn,void 0);if(!e)throw new Error("[Quidgest UI] Could not find defaults instance");return e}function Un(e){return e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/([0-9])([a-zA-Z])/g,"$1 $2").replace(/([a-zA-Z])([0-9])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").trim().split(/\s+/)}function Mn(e){return Un(e).join("-").toLowerCase()}function qn(e,t){var n;const o=Mn(t);return o?typeof((n=e.props)==null?void 0:n[o])<"u":!1}function P(e){const t=e,n=t.setup;return n&&(t.setup=(o,r)=>{const i=jn();if(In(i.value))return n(o,r);const a=s.getCurrentInstance();if(a===null)return n(o,r);const l=new Proxy(o,{get(d,u){var f;const p=Reflect.get(d,u),A=(f=i.value)==null?void 0:f[u];return typeof u=="string"&&!qn(a.vnode,u)?A??p:p}});return n(l,r)}),e}const Vn=["id"],Gn=P(s.defineComponent({__name:"QSpinnerLoader",props:{id:{},class:{},size:{default:48}},setup(e){const t=e,n=s.computed(()=>({"font-size":t.size!==48?`${t.size}px`:void 0}));return(o,r)=>(s.openBlock(),s.createElementBlock("div",{id:t.id,class:s.normalizeClass(["q-spinner-loader",t.class]),style:s.normalizeStyle(n.value)},null,14,Vn))}})),Hn=["id","disabled"],Wn={key:0,class:"q-btn__spinner"},Jn={class:"q-btn__content"},ot=P(s.defineComponent({__name:"QButton",props:{id:{},class:{},active:{type:Boolean},bStyle:{default:"secondary"},label:{},disabled:{type:Boolean},iconOnRight:{type:Boolean},borderless:{type:Boolean},elevated:{type:Boolean},block:{type:Boolean},loading:{type:Boolean},size:{default:"regular"}},emits:["click"],setup(e,{emit:t}){const n=e,o=t,r=s.computed(()=>n.disabled||n.loading);function i(l){r.value||o("click",l)}const a=s.computed(()=>{const l=n.size!=="regular"?`q-btn--${n.size}`:void 0;return["q-btn",`q-btn--${n.bStyle}`,l,{"q-btn--active":n.active,"q-btn--borderless":n.borderless,"q-btn--elevated":n.elevated,"q-btn--block":n.block,"q-btn--loading":n.loading},n.class]});return(l,d)=>(s.openBlock(),s.createElementBlock("button",{id:n.id,type:"button",class:s.normalizeClass(a.value),disabled:r.value,onClick:s.withModifiers(i,["stop","prevent"])},[l.loading?(s.openBlock(),s.createElementBlock("div",Wn,[s.createVNode(s.unref(Gn),{size:20})])):s.createCommentVNode("v-if",!0),s.createElementVNode("span",Jn,[l.iconOnRight?(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createTextVNode(s.toDisplayString(n.label),1)],64)):s.createCommentVNode("v-if",!0),s.renderSlot(l.$slots,"default"),l.iconOnRight?s.createCommentVNode("v-if",!0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[s.createTextVNode(s.toDisplayString(n.label),1)],64))])],10,Hn))}})),Qn=s.defineComponent({__name:"QIcon",props:{id:{},class:{},icon:{},size:{},type:{default:"svg"}},setup(e){const t=e,n=s.computed(()=>{switch(t.type){case"svg":return oo;case"font":return to;case"img":return no;default:return}});return(o,r)=>(s.openBlock(),s.createBlock(s.resolveDynamicComponent(n.value),{id:t.id,class:s.normalizeClass(t.class),icon:t.icon,size:t.size},null,8,["id","class","icon","size"]))}}),Zn=["id"],Yn=s.defineComponent({__name:"QIconFont",props:{id:{},class:{},icon:{},size:{},library:{default:""},variant:{}},setup(e){const t=e,n=s.computed(()=>t.variant?`${t.library}-${t.variant}`:t.library),o=s.computed(()=>t.library&&t.icon?`${t.library}-${t.icon}`:t.icon),r=s.computed(()=>({"font-size":t.size!==void 0?`${t.size}px`:void 0}));return(i,a)=>(s.openBlock(),s.createElementBlock("i",{id:t.id,class:s.normalizeClass(["q-icon","q-icon__font",n.value,o.value,t.class]),style:s.normalizeStyle(r.value)},null,14,Zn))}}),Xn=["id","src"],vn=s.defineComponent({__name:"QIconImg",props:{id:{},class:{},icon:{},size:{}},setup(e){const t=e,n=s.computed(()=>({"font-size":t.size!==void 0?`${t.size}px`:void 0}));return(o,r)=>(s.openBlock(),s.createElementBlock("img",{id:t.id,src:t.icon,class:s.normalizeClass(["q-icon","q-icon__img",t.class]),style:s.normalizeStyle(n.value)},null,14,Xn))}}),Y={},_n=s.defineComponent({name:"InlineSvg",inheritAttrs:!1,props:{src:{type:String,required:!0},symbol:{type:String,default:""},title:{type:String,default:""},transformSource:{type:Function,default:void 0},keepDuringLoading:{type:Boolean,default:!0}},emits:{loaded:e=>typeof e=="object",unloaded:()=>!0,error:e=>typeof e=="object"},data(){return{svgElSource:null}},watch:{src(e){this.getSource(e)}},async mounted(){await this.getSource(this.src)},methods:{copySvgAttrs(e,t){const n=t.attributes;if(n)for(const o of n)e[o.name]=o.value},copyComponentAttrs(e,t){for(const[n,o]of Object.entries(t))o!==!1&&o!==null&&o!==void 0&&(e[n]=o)},getSvgContent(e){return this.symbol&&(e=e.getElementById(this.symbol),!e)?null:(this.transformSource&&(e=e.cloneNode(!0),e=this.transformSource(e)),this.title&&(this.transformSource||(e=e.cloneNode(!0)),Kn(e,this.title)),e)},async getSource(e){try{Y[e]||(Y[e]=$n(this.download(e))),this.svgElSource&&Y[e].getIsPending()&&!this.keepDuringLoading&&(this.svgElSource=null,this.$emit("unloaded"));const t=await Y[e];this.svgElSource=t,await this.$nextTick(),this.$emit("loaded",this.$el)}catch(t){this.svgElSource&&(this.svgElSource=null,this.$emit("unloaded")),delete Y[e],this.$emit("error",t)}},async download(e){const t=await fetch(e);if(!t.ok)throw new Error("Error loading SVG");const n=await t.text(),o=new DOMParser().parseFromString(n,"text/xml").getElementsByTagName("svg")[0];if(!o)throw new Error("Loaded file is not a valid SVG");return o}},render(){if(!this.svgElSource)return null;const e=this.getSvgContent(this.svgElSource);if(!e)return s.h("div",this.$attrs);const t={};return this.copySvgAttrs(t,this.svgElSource),this.copySvgAttrs(t,e),this.copyComponentAttrs(t,this.$attrs),t.innerHTML=e.innerHTML,s.h("svg",t)},expose:[]});function Kn(e,t){const n=e.getElementsByTagName("title");if(n.length)n[0].textContent=t;else{const o=document.createElementNS("http://www.w3.org/2000/svg","title");o.textContent=t,e.insertBefore(o,e.firstChild)}}function $n(e){if(e.getIsPending)return e;let t=!0;const n=e.then(o=>(t=!1,o),o=>{throw t=!1,o});return n.getIsPending=()=>t,n}const eo=s.defineComponent({__name:"QIconSvg",props:{id:{},class:{},icon:{},size:{},bundle:{default:""}},emits:["loaded","unloaded"],setup(e,{emit:t}){const n=e,o=t,r=s.computed(()=>({"font-size":n.size!==void 0?`${n.size}px`:void 0}));function i(l){o("loaded",l)}function a(){o("unloaded")}return(l,d)=>(s.openBlock(),s.createBlock(s.unref(_n),{id:n.id,class:s.normalizeClass(["q-icon","q-icon__svg",n.class]),src:n.bundle,symbol:n.icon,style:s.normalizeStyle(r.value),onLoaded:i,onUnloaded:a},null,8,["id","class","src","symbol","style"]))}}),Ae=P(Qn),to=P(Yn),no=P(vn),oo=P(eo);let ro=0;function so(e){return s.unref(e)||`uid-${++ro}`}const io=["id"],ao=["for"],rt=P(s.defineComponent({inheritAttrs:!1,__name:"QLabel",props:{id:{},class:{},label:{},for:{}},setup(e){const t=e;return(n,o)=>(s.openBlock(),s.createElementBlock("div",{id:t.id,class:s.normalizeClass(["q-label",t.class])},[s.renderSlot(n.$slots,"prepend"),s.createElementVNode("label",s.mergeProps({for:t.for},n.$attrs),s.toDisplayString(t.label),17,ao),s.renderSlot(n.$slots,"append")],10,io))}})),lo=["id"],co={key:0,class:"q-field__prepend"},uo={key:1,class:"q-field__append"},fo={key:1,class:"q-field__extras"},po=P(s.defineComponent({inheritAttrs:!1,__name:"QField",props:{id:{},class:{},label:{},for:{},size:{default:"medium"},readonly:{type:Boolean},disabled:{type:Boolean},required:{type:Boolean},invalid:{type:Boolean}},setup(e,{expose:t}){const n=e,o=s.ref(null),r=s.computed(()=>n.required&&!n.readonly&&!n.disabled),i=s.computed(()=>["q-field",`q-field--${n.size}`,{"q-field--readonly":n.readonly,"q-field--disabled":n.disabled,"q-field--required":r.value,"q-field--invalid":n.invalid},n.class]);return t({fieldRef:o}),(a,l)=>(s.openBlock(),s.createElementBlock("div",{id:n.id,class:s.normalizeClass(i.value)},[n.label?(s.openBlock(),s.createBlock(s.unref(rt),{key:0,class:"q-field__label",label:n.label,for:n.for},{prepend:s.withCtx(()=>[s.renderSlot(a.$slots,"label.prepend")]),append:s.withCtx(()=>[s.renderSlot(a.$slots,"label.append")]),_:3},8,["label","for"])):s.createCommentVNode("v-if",!0),s.renderSlot(a.$slots,"control",{},()=>[s.createElementVNode("div",s.mergeProps({ref_key:"fieldRef",ref:o,class:"q-field__control"},a.$attrs),[a.$slots.prepend?(s.openBlock(),s.createElementBlock("div",co,[s.renderSlot(a.$slots,"prepend")])):s.createCommentVNode("v-if",!0),s.renderSlot(a.$slots,"default"),a.$slots.append?(s.openBlock(),s.createElementBlock("div",uo,[s.renderSlot(a.$slots,"append")])):s.createCommentVNode("v-if",!0)],16)]),a.$slots.extras?(s.openBlock(),s.createElementBlock("div",fo,[s.renderSlot(a.$slots,"extras")])):s.createCommentVNode("v-if",!0)],10,lo))}}));function mo(e){return s.getCurrentScope()?(s.onScopeDispose(e),!0):!1}const ho=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const go=()=>{};function st(...e){if(e.length!==1)return s.toRef(...e);const t=e[0];return typeof t=="function"?s.readonly(s.customRef(()=>({get:t,set:go}))):s.ref(t)}const ye=ho?window:void 0;function it(e){var t;const n=s.toValue(e);return(t=n==null?void 0:n.$el)!=null?t:n}function bo(){const e=s.shallowRef(!1),t=s.getCurrentInstance();return t&&s.onMounted(()=>{e.value=!0},t),e}function Ao(e){const t=bo();return s.computed(()=>(t.value,!!e()))}function yo(e,t,n={}){const{window:o=ye,...r}=n;let i;const a=Ao(()=>o&&"ResizeObserver"in o),l=()=>{i&&(i.disconnect(),i=void 0)},d=s.computed(()=>{const p=s.toValue(e);return Array.isArray(p)?p.map(A=>it(A)):[it(p)]}),u=s.watch(d,p=>{if(l(),a.value&&o){i=new ResizeObserver(t);for(const A of p)A&&i.observe(A,r)}},{immediate:!0,flush:"post"}),f=()=>{l(),u()};return mo(f),{isSupported:a,stop:f}}function wo(e=ye,t){e&&typeof e.requestAnimationFrame=="function"?e.requestAnimationFrame(t):t()}function Eo(e={}){var t,n;const{window:o=ye}=e,r=st(e==null?void 0:e.element),i=st((t=e==null?void 0:e.input)!=null?t:""),a=(n=e==null?void 0:e.styleProp)!=null?n:"height",l=s.shallowRef(1),d=s.shallowRef(0);function u(){var f;if(!r.value)return;let p="";r.value.style[a]="1px",l.value=(f=r.value)==null?void 0:f.scrollHeight;const A=s.toValue(e==null?void 0:e.styleTarget);A?A.style[a]=`${l.value}px`:p=`${l.value}px`,r.value.style[a]=p}return s.watch([i,r],()=>s.nextTick(u),{immediate:!0}),s.watch(l,()=>{var f;return(f=e==null?void 0:e.onResize)==null?void 0:f.call(e)}),yo(r,([{contentRect:f}])=>{d.value!==f.width&&wo(o,()=>{d.value=f.width,u()})}),e!=null&&e.watch&&s.watch(e.watch,u,{immediate:!0,deep:!0}),{textarea:r,input:i,triggerResize:u}}const So=["id","required","placeholder","readonly","disabled","maxlength","rows","cols","resize","wrap"],Ro=P(s.defineComponent({inheritAttrs:!1,__name:"QTextArea",props:s.mergeModels({id:{},class:{},label:{},for:{},size:{},readonly:{type:Boolean},disabled:{type:Boolean},required:{type:Boolean},invalid:{type:Boolean},placeholder:{},maxLength:{},rows:{default:3},cols:{},resize:{default:"vertical"},wrap:{default:"soft"},autosize:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=e,n=s.useModel(e,"modelValue"),o=so(t.id),r=s.computed(()=>t.readonly||t.disabled?void 0:t.placeholder),i=s.computed(()=>({input:t.autosize?l:null})),a=s.ref(),{triggerResize:l}=Eo({element:s.computed(()=>t.autosize?a.value:void 0),styleProp:"minHeight"}),d=s.computed({get:()=>n.value,set:u=>{n.value=t.maxLength?u==null?void 0:u.slice(0,t.maxLength):u}});return(u,f)=>(s.openBlock(),s.createBlock(s.unref(po),{class:s.normalizeClass(["q-text-area",t.class]),for:s.unref(o),label:t.label,size:t.size,readonly:t.readonly,disabled:t.disabled,required:t.required},s.createSlots({"label.prepend":s.withCtx(()=>[s.renderSlot(u.$slots,"label.prepend")]),"label.append":s.withCtx(()=>[s.renderSlot(u.$slots,"label.append")]),default:s.withCtx(()=>[s.withDirectives(s.createElementVNode("textarea",s.mergeProps({id:s.unref(o),ref_key:"textareaRef",ref:a,"onUpdate:modelValue":f[0]||(f[0]=p=>d.value=p),class:"q-text-area__input",required:t.required,placeholder:r.value,readonly:t.readonly,disabled:t.disabled,maxlength:t.maxLength,rows:t.rows,cols:t.cols,resize:t.resize,wrap:t.wrap},u.$attrs,s.toHandlers(i.value,!0)),null,16,So),[[s.vModelText,d.value]])]),_:2},[u.$slots.prepend?{name:"prepend",fn:s.withCtx(()=>[s.renderSlot(u.$slots,"prepend")]),key:"0"}:void 0,u.$slots.append?{name:"append",fn:s.withCtx(()=>[s.renderSlot(u.$slots,"append")]),key:"1"}:void 0,u.$slots.extras?{name:"extras",fn:s.withCtx(()=>[s.renderSlot(u.$slots,"extras")]),key:"2"}:void 0]),1032,["class","for","label","size","readonly","disabled","required"]))}})),Bo={class:"pulsing-dots"},No=s.defineComponent({__name:"PulseDots",setup(e){const t=[1,2,3];return(n,o)=>(s.openBlock(),s.createElementBlock("div",Bo,[(s.openBlock(),s.createElementBlock(s.Fragment,null,s.renderList(t,(r,i)=>s.createElementVNode("span",{key:i,class:"dot",style:s.normalizeStyle({animationDelay:i*.2+"s"})}," • ",4)),64))]))}}),Co={class:"q-chatbot__message-container"},To={class:"q-chatbot__message-wrapper"},Oo={class:"q-chatbot__message"},Do=["innerHTML"],ko={key:1,class:"q-chatbot__text"},xo={class:"q-chatbot__sender"},Fo=s.defineComponent({__name:"CBMessage",props:{sender:{default:"user"},message:{},date:{default:()=>new Date},loading:{type:Boolean},dateFormat:{},userImage:{default:void 0},chatbotImage:{}},setup(e){const t=e,n=s.computed(()=>t.sender==="bot"?"GenioBot":"You"),o=s.computed(()=>t.dateFormat?a(t.date,t.dateFormat):t.date.toLocaleString()),r=s.computed(()=>`${n.value} ${o.value}`),i=s.computed(()=>t.sender==="bot"?t.chatbotImage:t.userImage);function a(l,d){const u=l.getDate().toString().padStart(2,"0"),f=(l.getMonth()+1).toString().padStart(2,"0"),p=l.getFullYear().toString().padStart(2,"0"),A=l.getHours().toString().padStart(2,"0"),S=l.getMinutes().toString().padStart(2,"0"),m=l.getSeconds().toString().padStart(2,"0");return d.replace("dd",u).replace("MM",f).replace("yyyy",p).replace("HH",A).replace("mm",S).replace("ss",m)}return(l,d)=>(s.openBlock(),s.createElementBlock("div",Co,[s.createVNode(s.unref(Ae),{type:"img",icon:i.value,alt:"Sender Image",class:"q-chatbot__profile"},null,8,["icon"]),s.createElementVNode("div",To,[s.createElementVNode("div",Oo,[l.loading?(s.openBlock(),s.createBlock(No,{key:0})):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[t.sender==="bot"?(s.openBlock(),s.createElementBlock("div",{key:0,class:"q-chatbot__text",innerHTML:t.message},null,8,Do)):(s.openBlock(),s.createElementBlock("div",ko,s.toDisplayString(t.message),1))],64))]),s.createElementVNode("div",xo,s.toDisplayString(r.value),1)])]))}}),Lo="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjAtMDUtMjFUMTg6MTk6NDErMDE6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjAtMDUtMjFUMTg6MTk6NDErMDE6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIwLTA1LTIxVDE4OjE5OjQxKzAxOjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4NmI5YWQxZC0yOTk4LTQ2ZjYtYjliYS01NTBlNzgwOGQ5MWUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODZiOWFkMWQtMjk5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",Io="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAYAAAA5ZDbSAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF2GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOS0xMS0yOVQxMDoyNDo1N1oiIHhtcDpNb2RpZnlEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpiN2ViMDM0NC1hN2UzLTI3NGItODgwNi00ZjMxMzRiNDUwNDEiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2ODJkMGU1OC1kZmQyLTZkNDEtOGIwNy01ZWUxNjU4MWY2ZWEiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0N2I2NzcxYy1kZmY0LTJkNGItYjJmNC00ZGJiNmQ3MjRmYzAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjQ3YjY3NzFjLWRmZjQtMmQ0Yi1iMmY0LTRkYmI2ZDcyNGZjMCIgc3RFdnQ6d2hlbj0iMjAxOS0xMS0yOVQxMDoyNDo1N1oiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMS4wIChXaW5kb3dzKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6YjdlYjAzNDQtYTdlMy0yNzRiLTg4MDYtNGYzMTM0YjQ1MDQxIiBzdEV2dDp3aGVuPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pm5CcJ8AAAudSURBVHja7Z17sBTFFYe/WYiCYNZalKirgzImEuShFRgM11eiJSpEiC9UCEg0GEl8JGLUaGLUGIyJMcZnLExMJegFi1Ipc41EU5ThERp8oIAx0j4aF5WH60YJV0TIH93gBXZxZ3d2tmd3flVbdWvr7nbP+bZ7us+cPsehAeR6/v7AAOAQoDdwELAv0MO8ugO77/CxD4GNwFpgDfAOsBJYAfwHeEVJoeJuGyeGMLsARwFDgRZgEJCpUXNrgUXmNQdYoKRoTwCHD9UFRgLDgWOBLnXqSjswD5gFPBqHEe5YDLUnMBoYAwyxtJuLgGnANCXF2gRweWCPBy4ERgGfi8lMuNGM6nuUFP9IAO8MtTNwNjAZGBjzdc3zwG+AViXFpqYG7Hq+Y6bhnwMejSUJ3AD8RUmxuekAu55/EjAFOJzG1svAZCVFW1MAdj2/F3Ab8E2aS23AZUqKVxsSsLnPXg5cB3SlObXRTNu/jOr+7EQEtw/wgMXbnaj1LHCekmJprRvqFAHcC4DH0O7DRFr7A+enM9m1hXxucSxHsOv53YDfG0dFotKaDnxHSfFBbACbhdRjDbCnjUrLgRFKitfD/uJUDeC2ACKBG0h9gUWu5x9tNWDX878B/B3omTALrB7AU67nh7p97BQi3PHAg8BuCauqeJyZzmRXFvK5F6wB7Hr+hcDUWkz5TSgHGJnOZFeHscLuFALcMQauk7AJVcPTmaws5HMv1g2w6/lnmGk5Gbm10ah0Jru8kM8tj3ybZFbLT1G/6Ipytx+LgNeAVcAG835X42zoDQw2q1hb1Q6coKSYFxlg1/MPARYAe1tokCVoB8tMJcXqMq+nJ3A6OtDAxu3dOuBIJcWKmgN2Pb87sNDCX70ELgXalBRbKvzhOsApwO3Y93x6OTBESfFhzQAbA0wHzrTs4u8Hvh9WxKOJ3LwTON+y63wYGB3kBxxokZXOZCcBV1h20VcrKX5UyOdCe/xWyOc2FfK5WelM9iPgBIuu9TBgdSGfWxQ6YNfz+wIzgc4WXfAUJcX1tfryQj43N53J7g4cbdE1H5/OZB8p5HNryvnnVJlwO5vtkE0r5qeBayNo51rApkjJLsCDhkk4gLEv2rEd/Yit5sFspo0LTJu2aKBhUv0U7Xq+ZxZWNsUo36WkaI2qsUI+9346k90HONIiG7SkM9nWQj6Xr3YE34VdMVRb0EF7Ues207Yt6mrYVD5Fm9DWYZatmucoKd6MulHT5hzLbDHMMAoO2PX8FHAL9mlWk7ZdSrcYVoFH8Digv4UXNK9J2y6l/oZV+YBdz+8U0RakEr3UpG3vcitnmJU9gs/EzrNC79TzALZp+10L7eJRwn2cKjJ6HeAqS3+pa5I+lNRVht1njuBjsTcicrMFffjEUtsMNOw+E/BEEsVVE3cJ2PX8vdEPvhPFU6cbhiVH8LdIwl7jrN0Mw5KARyc2ir1GFwVsUhUlxzvjryGG5U4j+LTENg2j04oBPjmxS8Po5O0Au56/R7E9VKLY6ljDdNsI/io7J+tMFF/tbphuA9yS2KTh1JIAbiLAg2LSaRuiOuOSAmoQgGOSaedi0ul2YI9Kj6ZUKxM5sYH4ePuyKXSmdGI0guvZ3wHEy5U7IIU+QhknjbTBgRAT9U4Bbsw6fZHJwRX19Lwn+nhpnOSmgANj1ul9gV/Uod1fEb/sQQfGcQQDXOJ6/iURjt4fx3D0bhvB+8V0n3e76/mjIoB7BnBTTG20X4p4p/bdK4I2usfYPl1TQDcSNaq6JYCbAHDnxA4Nq85JArMGVwK4CQC3J2ZoWLWngPWJHRpW61PoNHmJGlPrEsBNAPjtxA4Nq7dTwBuJHRpWb6aA1xM7NKxeSwEr4thx4HvoBG211nT0uduXY2inV+MWdLcMXdxxppIi0pP2Jj3CMHR6i7icAsk6pvNrsDN7+1a9bMDOqGex5Q6wjwN+ZjnotUqKfba6Kp+ztJMSOAfop6RotQEugJJijpLiOOBrwHxLbfccfOqLti3B1zvAJKCPTWBLgG4BRqFT7tukeR0Bz7WkUwXgGsBTUtwTVRHlEEA/ho6Z/jaw0pJuzQVTs8EcNXyP+p0wbEfXSJiipHgvzvsS1/O7mtnnanQ9wnroIyCjpPif06FjTwInRtyRLcCfgJ8oKd5qpA2o6/l7AVcCP6jDwJmtpBjWcYoGaIu4E08DRygpJjQaXDNtv6+kuBroA8yIuPltLDuOYBeIIg/zcuAKJUUbTSTX84eik4r7ETTXS0mhthvB5o2FNWx0NXARMLDZ4Br7zkeXBBgL1HLGWrgV7o5TNMBDNVpA3QwcoqS4Ny4r4xpB3qKkmAZ8CbiOT2sphqntGDo7TCM9za8rrAIcM4ArlRRvkKjYtH0A+szT2SF95cfAAR1rNjpFGp1B9aXrlqBLzc1NMJZ9f76b6rP8PqykOKvjG8WiKu+pspE7gcEJ3MD358HGdtVoJ3ZOiV/UCxX+mlqVFOckyKoazQ9VOGUvUVIcvuObpeKiK6m2shn7ClfGUVdQWeLzosxSu1gcyYANLGpEh0Udpuu30FXLg0iWcqakSjSyCbgxYCP/TvCEpqC2vLHU9nNXR1f+TLBHYD0SLqEpiC2XG1YEAmyewQa5p45wPf+8hE3Vi6zzgBEBPjJ5V8/LnTIa/Cu6rn05Wg8MUlIk03VlcPsAiyn/zHabkmL4rv6hnNOFl6KfL5ajbsCj5lFZomBw9wIeDQD3I8OGqgArKVYAQcqoHwq0liq1lqgo3E5Aq7FdubresKHaEQzaX/psgMaHAXcXq8SVaCe4DtpNGaSM77OGCaEANkvwcQQ7SzwRmJIg/ExNIVgxsnZgXLlP5cqeRgv53Jp0Jrsu4ArvqHQmu6mQz/0z4Vh09F4D/DTgxy5WUjxR7j8Huk8W8rnF6Uy2L3BYgI99PZ3Jdi3kc08lSLeDe3MFcGcoKQIVDnUq6Fh34F8BIQPcB0yK+siJpQuquwleI3IZcKSS4sOaAjad7A0IgnuvZgNnKSkKTQo3jfYZB41eXQf4SorXgrZZUZYd09AogidwORFYYDb0zejEmF8B3HZgVCVwKwZsIM8FxhD80daXgcWu549tIrhj0R6qvgE/uhkYU03whBNC58cDD1T48QeBS5QU6xoUbA/gd8C5FX7FBCXFA9X0oWpvUyGfW5LOZFcDwyv4eH9gfDqTVYV8blmDwT0LeBxToKoCTVJSTK22H06IFzQBmFrFtP80cJmSYmnMwfYDfgscX+FXbAYuUFL8MYz+OCFf3AizSqw0B/UnwP3ATR2Dt2MC1kWfjDy/iplxg9llPB5Wv5waXOhQ4BGqq2/wMfAH4FYlxauWg/0icDn66Gg18eSrgdOUFKGe1XZqdNG9gFlUX+NoC/A34A7gSVsOgpsCWcOAi4GTQrDji8CpSorQz4Y5NTRCd+Bes5UKQ2+bVfdDwHP1qH7mev5X0CklziW8WhfTgO8G9VDVHXAHo0w0i44wa0PkzMh+ApirpHi3Rn3/AnAUuuDySUA2xK/fYBaV99XS/k5Ev/w+6IPetTo6+TraP74MnZHnFWClkuK/Zfbv8+j6UYcaR8xh6JOAB9eovwIYH0VoU2QP5F3P7wxMRj9BiarSSzuwCvjA/L3VtdrFvPYE9ie6qqYb0Omgfh3VKcvIIy5czz8YfQbnFJpLbegDeZGmjqxbSI3r+ScCtwL9GhzsS+jQ1tn1aLxuNRvMBR8OTCD4MZk4SJprO6JecOs6govcn88GfggcEXOwz5uZaboN2Qysi3p0Pf8Y40A4lfgUY96IduzcoaR4xqaOWRvW6nr+3sZJcg4wxNJuLjSOl2lKirU2djAWccvGkX+6cTYcE+G2pti26xnjZJkZhwcisQtMN6kCW4Ch5jUYyNSoufeMU2IBOtxmnpJiQ5zs1RAnD0xS837orHIHAb2MAyODDgzcs8j9fKNxgKwzIFehE8G9gT6fu1RJsSrutvk/GdqIAV0smzEAAAAASUVORK5CYII=",Po={class:"q-chatbot"},jo={class:"q-chatbot__content"},zo={class:"q-chatbot__tools"},Uo={class:"q-chatbot__footer-container"},Mo={class:"q-chatbot__input"},qo={class:"q-chatbot__send-container"};return s.defineComponent({name:"ChatBot",__name:"ChatBot",props:{apiEndpoint:{default:"http://localhost:3000"},texts:{default:()=>({chatbotTitle:"ChatBot",sendMessage:"Send message",clearChat:"Clear chat",inputLabel:"What can I help with?",initialMessage:"Howdy! I am GenioBot 👋, Quidgest's personal AI assistant! How can I help you?",initialAgentMessage:"Just a temporary message while we are working on the agent mode",loginError:"Uh oh, I could not authenticate with the Quidgest API endpoint 😓",botIsSick:"*cough cough* GenioBot is not feeling alright 🥴️🤒, looks like something failed!"})},username:{},projectPath:{},userImage:{default:Io},chatbotImage:{default:Lo},dateFormat:{},mode:{default:"chat"}},setup(e){const t=s.ref([]),n=s.ref(1),o=s.ref(""),r=s.ref(!1),i=s.ref(!1),a=s.ref(null),l=s.ref(!0),d=e;s.onMounted(()=>{A(),s.nextTick(()=>{var y;(y=a.value)==null||y.addEventListener("scroll",B)})});const u=s.computed(()=>i.value||r.value),f=s.computed(()=>({"q-chatbot__footer-disabled":u.value}));function p(y){i.value=y}function A(){w.post(d.apiEndpoint+"/auth/login",{username:d.username,password:"test"}).then(y=>{if(y.status!==200||!y.data.success){p(!0),m(d.texts.loginError),console.log(`Unsuccessful login, endpoint gave status ${y.status}`);return}S()}).catch(y=>{p(!0),m(d.texts.loginError),console.log("Error during login: "+y)})}function S(){w.post(d.apiEndpoint+"/prompt/load",{username:d.username,project:d.projectPath}).then(y=>{if(y.status!==200||!y.data.success){p(!0),m(d.texts.loginError),console.log(`Unsuccessful load, endpoint gave status ${y.status}`);return}h(),y.data.history.forEach(N=>{m(N.content,N.type==="ai"?"bot":"user")})}).catch(y=>{p(!0),m(d.texts.loginError),console.log("Error loading chat data: "+y)})}function m(y,N="bot"){t.value.push({id:n.value++,message:y,date:new Date,sender:N}),s.nextTick(()=>{l.value&&R()})}function b(){return t.value.find(y=>y.id===n.value-1)}function h(){const y=d.mode==="chat"?d.texts.initialMessage:d.texts.initialAgentMessage;m(y)}function E(){t.value=[],o.value="",r.value=!1,p(!1),l.value=!0}function R(){s.nextTick(()=>{a.value&&a.value.scrollTo({top:a.value.scrollHeight,behavior:"smooth"})})}function B(){if(a.value){const{scrollTop:N,clientHeight:I,scrollHeight:z}=a.value;N+I>=z-20?l.value=!0:l.value=!1}}function k(){o.value.trim().length===0||r.value||i.value||(m(o.value,"user"),R(),T(o.value),o.value="")}function T(y){m("","bot");let N=b();const I={message:y,project:d.projectPath,user:d.username};r.value=!0,w({url:d.apiEndpoint+"/prompt/message",method:"POST",data:I,onDownloadProgress:z=>{var at,lt;const Vo=(at=z.event)==null?void 0:at.currentTarget.response;((lt=z.event)==null?void 0:lt.currentTarget.status)===200&&(N&&(N.message=Vo),l.value&&R())}}).then(({data:z})=>{N&&(N.message=z)}).catch(z=>{m(d.texts.botIsSick),p(!0),console.log(z)}).finally(()=>{r.value=!1})}function L(){w.post(d.apiEndpoint+"/prompt/clear",{username:d.username,project:d.projectPath}).then(y=>{if(y.status!==200||!y.data.success){p(!0),m(d.texts.loginError),console.log(`Unsuccessful clear, endpoint gave status ${y.status}`);return}E(),h()}).catch(y=>{p(!0),m(d.texts.loginError),console.log("Error clearing chat: "+y)})}function j(y){const N=["q-chatbot__messages-wrapper"];return y==="user"&&N.push("q-chatbot__messages-wrapper_right"),N}return s.watch(()=>d.apiEndpoint,()=>{E(),A()}),(y,N)=>(s.openBlock(),s.createElementBlock("div",Po,[s.createElementVNode("div",jo,[s.createElementVNode("div",zo,[s.createVNode(s.unref(ot),{title:d.texts.clearChat,"b-style":"secondary",disabled:i.value,borderless:"",onClick:L},{default:s.withCtx(()=>[s.createVNode(s.unref(Ae),{icon:"bin"})]),_:1},8,["title","disabled"])]),s.createElementVNode("div",{ref_key:"messagesContainer",ref:a,class:"q-chatbot__messages-container",onScroll:B},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(t.value,I=>(s.openBlock(),s.createElementBlock("div",{key:I.id,class:s.normalizeClass(j(I.sender))},[s.createVNode(s.unref(Fo),s.mergeProps({ref_for:!0},I,{"date-format":d.dateFormat,"user-image":d.userImage,"chatbot-image":d.chatbotImage,loading:r.value&&!I.message}),null,16,["date-format","user-image","chatbot-image","loading"])],2))),128))],544),s.createElementVNode("div",Uo,[s.createVNode(s.unref(rt),{label:d.texts.inputLabel},null,8,["label"]),s.createElementVNode("div",{class:s.normalizeClass(["q-chatbot__footer",f.value])},[s.createElementVNode("div",Mo,[s.createVNode(s.unref(Ro),{modelValue:o.value,"onUpdate:modelValue":N[0]||(N[0]=I=>o.value=I),size:"block",autosize:"",resize:"none",rows:2,disabled:u.value,onKeyup:s.withKeys(k,["enter"])},null,8,["modelValue","disabled"])]),s.createElementVNode("div",qo,[s.createVNode(s.unref(ot),{title:d.texts.sendMessage,"b-style":"primary",class:"q-chatbot__send",disabled:u.value,readonly:u.value,loading:r.value,onClick:k},{default:s.withCtx(()=>[s.createVNode(s.unref(Ae),{icon:"send"})]),_:1},8,["title","disabled","readonly","loading"])])],2)])])]))}})});
1
+ (function(r,X){typeof exports=="object"&&typeof module<"u"?module.exports=X(require("vue")):typeof define=="function"&&define.amd?define(["vue"],X):(r=typeof globalThis<"u"?globalThis:r||self,r.ChatBotFrontend=X(r.vue))})(this,function(r){"use strict";function X(e,t){return function(){return e.apply(t,arguments)}}const{toString:Vt}=Object.prototype,{getPrototypeOf:Se}=Object,de=(e=>t=>{const n=Vt.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),j=e=>(e=e.toLowerCase(),t=>de(t)===e),ue=e=>t=>typeof t===e,{isArray:K}=Array,oe=ue("undefined");function jt(e){return e!==null&&!oe(e)&&e.constructor!==null&&!oe(e.constructor)&&P(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const _e=j("ArrayBuffer");function zt(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&_e(e.buffer),t}const qt=ue("string"),P=ue("function"),Ge=ue("number"),fe=e=>e!==null&&typeof e=="object",Ht=e=>e===!0||e===!1,pe=e=>{if(de(e)!=="object")return!1;const t=Se(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},_t=j("Date"),Gt=j("File"),Wt=j("Blob"),vt=j("FileList"),Jt=e=>fe(e)&&P(e.pipe),Qt=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||P(e.append)&&((t=de(e))==="formdata"||t==="object"&&P(e.toString)&&e.toString()==="[object FormData]"))},Zt=j("URLSearchParams"),[Yt,$t,Xt,Kt]=["ReadableStream","Request","Response","Headers"].map(j),en=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function re(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let o,s;if(typeof e!="object"&&(e=[e]),K(e))for(o=0,s=e.length;o<s;o++)t.call(null,e[o],o,e);else{const i=n?Object.getOwnPropertyNames(e):Object.keys(e),a=i.length;let l;for(o=0;o<a;o++)l=i[o],t.call(null,e[l],l,e)}}function We(e,t){t=t.toLowerCase();const n=Object.keys(e);let o=n.length,s;for(;o-- >0;)if(s=n[o],t===s.toLowerCase())return s;return null}const Q=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,ve=e=>!oe(e)&&e!==Q;function Be(){const{caseless:e}=ve(this)&&this||{},t={},n=(o,s)=>{const i=e&&We(t,s)||s;pe(t[i])&&pe(o)?t[i]=Be(t[i],o):pe(o)?t[i]=Be({},o):K(o)?t[i]=o.slice():t[i]=o};for(let o=0,s=arguments.length;o<s;o++)arguments[o]&&re(arguments[o],n);return t}const tn=(e,t,n,{allOwnKeys:o}={})=>(re(t,(s,i)=>{n&&P(s)?e[i]=X(s,n):e[i]=s},{allOwnKeys:o}),e),nn=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),on=(e,t,n,o)=>{e.prototype=Object.create(t.prototype,o),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},rn=(e,t,n,o)=>{let s,i,a;const l={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),i=s.length;i-- >0;)a=s[i],(!o||o(a,e,t))&&!l[a]&&(t[a]=e[a],l[a]=!0);e=n!==!1&&Se(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},sn=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const o=e.indexOf(t,n);return o!==-1&&o===n},an=e=>{if(!e)return null;if(K(e))return e;let t=e.length;if(!Ge(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},ln=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Se(Uint8Array)),cn=(e,t)=>{const o=(e&&e[Symbol.iterator]).call(e);let s;for(;(s=o.next())&&!s.done;){const i=s.value;t.call(e,i[0],i[1])}},dn=(e,t)=>{let n;const o=[];for(;(n=e.exec(t))!==null;)o.push(n);return o},un=j("HTMLFormElement"),fn=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,o,s){return o.toUpperCase()+s}),Je=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),pn=j("RegExp"),Qe=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),o={};re(n,(s,i)=>{let a;(a=t(s,i,e))!==!1&&(o[i]=a||s)}),Object.defineProperties(e,o)},mn=e=>{Qe(e,(t,n)=>{if(P(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const o=e[n];if(P(o)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},hn=(e,t)=>{const n={},o=s=>{s.forEach(i=>{n[i]=!0})};return K(e)?o(e):o(String(e).split(t)),n},gn=()=>{},bn=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function yn(e){return!!(e&&P(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const wn=e=>{const t=new Array(10),n=(o,s)=>{if(fe(o)){if(t.indexOf(o)>=0)return;if(!("toJSON"in o)){t[s]=o;const i=K(o)?[]:{};return re(o,(a,l)=>{const f=n(a,s+1);!oe(f)&&(i[l]=f)}),t[s]=void 0,i}}return o};return n(e,0)},An=j("AsyncFunction"),En=e=>e&&(fe(e)||P(e))&&P(e.then)&&P(e.catch),Ze=((e,t)=>e?setImmediate:t?((n,o)=>(Q.addEventListener("message",({source:s,data:i})=>{s===Q&&i===n&&o.length&&o.shift()()},!1),s=>{o.push(s),Q.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",P(Q.postMessage)),Sn=typeof queueMicrotask<"u"?queueMicrotask.bind(Q):typeof process<"u"&&process.nextTick||Ze,c={isArray:K,isArrayBuffer:_e,isBuffer:jt,isFormData:Qt,isArrayBufferView:zt,isString:qt,isNumber:Ge,isBoolean:Ht,isObject:fe,isPlainObject:pe,isReadableStream:Yt,isRequest:$t,isResponse:Xt,isHeaders:Kt,isUndefined:oe,isDate:_t,isFile:Gt,isBlob:Wt,isRegExp:pn,isFunction:P,isStream:Jt,isURLSearchParams:Zt,isTypedArray:ln,isFileList:vt,forEach:re,merge:Be,extend:tn,trim:en,stripBOM:nn,inherits:on,toFlatObject:rn,kindOf:de,kindOfTest:j,endsWith:sn,toArray:an,forEachEntry:cn,matchAll:dn,isHTMLForm:un,hasOwnProperty:Je,hasOwnProp:Je,reduceDescriptors:Qe,freezeMethods:mn,toObjectSet:hn,toCamelCase:fn,noop:gn,toFiniteNumber:bn,findKey:We,global:Q,isContextDefined:ve,isSpecCompliantForm:yn,toJSONObject:wn,isAsyncFn:An,isThenable:En,setImmediate:Ze,asap:Sn};function E(e,t,n,o,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),o&&(this.request=o),s&&(this.response=s,this.status=s.status?s.status:null)}c.inherits(E,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:c.toJSONObject(this.config),code:this.code,status:this.status}}});const Ye=E.prototype,$e={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{$e[e]={value:e}}),Object.defineProperties(E,$e),Object.defineProperty(Ye,"isAxiosError",{value:!0}),E.from=(e,t,n,o,s,i)=>{const a=Object.create(Ye);return c.toFlatObject(e,a,function(f){return f!==Error.prototype},l=>l!=="isAxiosError"),E.call(a,e.message,t,n,o,s),a.cause=e,a.name=e.name,i&&Object.assign(a,i),a};const Bn=null;function ke(e){return c.isPlainObject(e)||c.isArray(e)}function Xe(e){return c.endsWith(e,"[]")?e.slice(0,-2):e}function Ke(e,t,n){return e?e.concat(t).map(function(s,i){return s=Xe(s),!n&&i?"["+s+"]":s}).join(n?".":""):t}function kn(e){return c.isArray(e)&&!e.some(ke)}const Cn=c.toFlatObject(c,{},null,function(t){return/^is[A-Z]/.test(t)});function me(e,t,n){if(!c.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=c.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(b,h){return!c.isUndefined(h[b])});const o=n.metaTokens,s=n.visitor||u,i=n.dots,a=n.indexes,f=(n.Blob||typeof Blob<"u"&&Blob)&&c.isSpecCompliantForm(t);if(!c.isFunction(s))throw new TypeError("visitor must be a function");function d(g){if(g===null)return"";if(c.isDate(g))return g.toISOString();if(!f&&c.isBlob(g))throw new E("Blob is not supported. Use a Buffer instead.");return c.isArrayBuffer(g)||c.isTypedArray(g)?f&&typeof Blob=="function"?new Blob([g]):Buffer.from(g):g}function u(g,b,h){let S=g;if(g&&!h&&typeof g=="object"){if(c.endsWith(b,"{}"))b=o?b:b.slice(0,-2),g=JSON.stringify(g);else if(c.isArray(g)&&kn(g)||(c.isFileList(g)||c.endsWith(b,"[]"))&&(S=c.toArray(g)))return b=Xe(b),S.forEach(function(w,R){!(c.isUndefined(w)||w===null)&&t.append(a===!0?Ke([b],R,i):a===null?b:b+"[]",d(w))}),!1}return ke(g)?!0:(t.append(Ke(h,b,i),d(g)),!1)}const p=[],y=Object.assign(Cn,{defaultVisitor:u,convertValue:d,isVisitable:ke});function m(g,b){if(!c.isUndefined(g)){if(p.indexOf(g)!==-1)throw Error("Circular reference detected in "+b.join("."));p.push(g),c.forEach(g,function(S,C){(!(c.isUndefined(S)||S===null)&&s.call(t,S,c.isString(C)?C.trim():C,b,y))===!0&&m(S,b?b.concat(C):[C])}),p.pop()}}if(!c.isObject(e))throw new TypeError("data must be an object");return m(e),t}function et(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(o){return t[o]})}function Ce(e,t){this._pairs=[],e&&me(e,this,t)}const tt=Ce.prototype;tt.append=function(t,n){this._pairs.push([t,n])},tt.toString=function(t){const n=t?function(o){return t.call(this,o,et)}:et;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function Rn(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function nt(e,t,n){if(!t)return e;const o=n&&n.encode||Rn;c.isFunction(n)&&(n={serialize:n});const s=n&&n.serialize;let i;if(s?i=s(t,n):i=c.isURLSearchParams(t)?t.toString():new Ce(t,n).toString(o),i){const a=e.indexOf("#");a!==-1&&(e=e.slice(0,a)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class ot{constructor(){this.handlers=[]}use(t,n,o){return this.handlers.push({fulfilled:t,rejected:n,synchronous:o?o.synchronous:!1,runWhen:o?o.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){c.forEach(this.handlers,function(o){o!==null&&t(o)})}}const rt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},xn={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:Ce,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},Re=typeof window<"u"&&typeof document<"u",xe=typeof navigator=="object"&&navigator||void 0,Nn=Re&&(!xe||["ReactNative","NativeScript","NS"].indexOf(xe.product)<0),Tn=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Dn=Re&&window.location.href||"http://localhost",I={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Re,hasStandardBrowserEnv:Nn,hasStandardBrowserWebWorkerEnv:Tn,navigator:xe,origin:Dn},Symbol.toStringTag,{value:"Module"})),...xn};function On(e,t){return me(e,new I.classes.URLSearchParams,Object.assign({visitor:function(n,o,s,i){return I.isNode&&c.isBuffer(n)?(this.append(o,n.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}function In(e){return c.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Ln(e){const t={},n=Object.keys(e);let o;const s=n.length;let i;for(o=0;o<s;o++)i=n[o],t[i]=e[i];return t}function st(e){function t(n,o,s,i){let a=n[i++];if(a==="__proto__")return!0;const l=Number.isFinite(+a),f=i>=n.length;return a=!a&&c.isArray(s)?s.length:a,f?(c.hasOwnProp(s,a)?s[a]=[s[a],o]:s[a]=o,!l):((!s[a]||!c.isObject(s[a]))&&(s[a]=[]),t(n,o,s[a],i)&&c.isArray(s[a])&&(s[a]=Ln(s[a])),!l)}if(c.isFormData(e)&&c.isFunction(e.entries)){const n={};return c.forEachEntry(e,(o,s)=>{t(In(o),s,n,0)}),n}return null}function Un(e,t,n){if(c.isString(e))try{return(t||JSON.parse)(e),c.trim(e)}catch(o){if(o.name!=="SyntaxError")throw o}return(n||JSON.stringify)(e)}const se={transitional:rt,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const o=n.getContentType()||"",s=o.indexOf("application/json")>-1,i=c.isObject(t);if(i&&c.isHTMLForm(t)&&(t=new FormData(t)),c.isFormData(t))return s?JSON.stringify(st(t)):t;if(c.isArrayBuffer(t)||c.isBuffer(t)||c.isStream(t)||c.isFile(t)||c.isBlob(t)||c.isReadableStream(t))return t;if(c.isArrayBufferView(t))return t.buffer;if(c.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(i){if(o.indexOf("application/x-www-form-urlencoded")>-1)return On(t,this.formSerializer).toString();if((l=c.isFileList(t))||o.indexOf("multipart/form-data")>-1){const f=this.env&&this.env.FormData;return me(l?{"files[]":t}:t,f&&new f,this.formSerializer)}}return i||s?(n.setContentType("application/json",!1),Un(t)):t}],transformResponse:[function(t){const n=this.transitional||se.transitional,o=n&&n.forcedJSONParsing,s=this.responseType==="json";if(c.isResponse(t)||c.isReadableStream(t))return t;if(t&&c.isString(t)&&(o&&!this.responseType||s)){const a=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(l){if(a)throw l.name==="SyntaxError"?E.from(l,E.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:I.classes.FormData,Blob:I.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};c.forEach(["delete","get","head","post","put","patch"],e=>{se.headers[e]={}});const Fn=c.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Pn=e=>{const t={};let n,o,s;return e&&e.split(`
2
+ `).forEach(function(a){s=a.indexOf(":"),n=a.substring(0,s).trim().toLowerCase(),o=a.substring(s+1).trim(),!(!n||t[n]&&Fn[n])&&(n==="set-cookie"?t[n]?t[n].push(o):t[n]=[o]:t[n]=t[n]?t[n]+", "+o:o)}),t},it=Symbol("internals");function ie(e){return e&&String(e).trim().toLowerCase()}function he(e){return e===!1||e==null?e:c.isArray(e)?e.map(he):String(e)}function Mn(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let o;for(;o=n.exec(e);)t[o[1]]=o[2];return t}const Vn=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Ne(e,t,n,o,s){if(c.isFunction(o))return o.call(this,t,n);if(s&&(t=n),!!c.isString(t)){if(c.isString(o))return t.indexOf(o)!==-1;if(c.isRegExp(o))return o.test(t)}}function jn(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,o)=>n.toUpperCase()+o)}function zn(e,t){const n=c.toCamelCase(" "+t);["get","set","has"].forEach(o=>{Object.defineProperty(e,o+n,{value:function(s,i,a){return this[o].call(this,t,s,i,a)},configurable:!0})})}let U=class{constructor(t){t&&this.set(t)}set(t,n,o){const s=this;function i(l,f,d){const u=ie(f);if(!u)throw new Error("header name must be a non-empty string");const p=c.findKey(s,u);(!p||s[p]===void 0||d===!0||d===void 0&&s[p]!==!1)&&(s[p||f]=he(l))}const a=(l,f)=>c.forEach(l,(d,u)=>i(d,u,f));if(c.isPlainObject(t)||t instanceof this.constructor)a(t,n);else if(c.isString(t)&&(t=t.trim())&&!Vn(t))a(Pn(t),n);else if(c.isHeaders(t))for(const[l,f]of t.entries())i(f,l,o);else t!=null&&i(n,t,o);return this}get(t,n){if(t=ie(t),t){const o=c.findKey(this,t);if(o){const s=this[o];if(!n)return s;if(n===!0)return Mn(s);if(c.isFunction(n))return n.call(this,s,o);if(c.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=ie(t),t){const o=c.findKey(this,t);return!!(o&&this[o]!==void 0&&(!n||Ne(this,this[o],o,n)))}return!1}delete(t,n){const o=this;let s=!1;function i(a){if(a=ie(a),a){const l=c.findKey(o,a);l&&(!n||Ne(o,o[l],l,n))&&(delete o[l],s=!0)}}return c.isArray(t)?t.forEach(i):i(t),s}clear(t){const n=Object.keys(this);let o=n.length,s=!1;for(;o--;){const i=n[o];(!t||Ne(this,this[i],i,t,!0))&&(delete this[i],s=!0)}return s}normalize(t){const n=this,o={};return c.forEach(this,(s,i)=>{const a=c.findKey(o,i);if(a){n[a]=he(s),delete n[i];return}const l=t?jn(i):String(i).trim();l!==i&&delete n[i],n[l]=he(s),o[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return c.forEach(this,(o,s)=>{o!=null&&o!==!1&&(n[s]=t&&c.isArray(o)?o.join(", "):o)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
3
+ `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const o=new this(t);return n.forEach(s=>o.set(s)),o}static accessor(t){const o=(this[it]=this[it]={accessors:{}}).accessors,s=this.prototype;function i(a){const l=ie(a);o[l]||(zn(s,a),o[l]=!0)}return c.isArray(t)?t.forEach(i):i(t),this}};U.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),c.reduceDescriptors(U.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(o){this[n]=o}}}),c.freezeMethods(U);function Te(e,t){const n=this||se,o=t||n,s=U.from(o.headers);let i=o.data;return c.forEach(e,function(l){i=l.call(n,i,s.normalize(),t?t.status:void 0)}),s.normalize(),i}function at(e){return!!(e&&e.__CANCEL__)}function ee(e,t,n){E.call(this,e??"canceled",E.ERR_CANCELED,t,n),this.name="CanceledError"}c.inherits(ee,E,{__CANCEL__:!0});function lt(e,t,n){const o=n.config.validateStatus;!n.status||!o||o(n.status)?e(n):t(new E("Request failed with status code "+n.status,[E.ERR_BAD_REQUEST,E.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function qn(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Hn(e,t){e=e||10;const n=new Array(e),o=new Array(e);let s=0,i=0,a;return t=t!==void 0?t:1e3,function(f){const d=Date.now(),u=o[i];a||(a=d),n[s]=f,o[s]=d;let p=i,y=0;for(;p!==s;)y+=n[p++],p=p%e;if(s=(s+1)%e,s===i&&(i=(i+1)%e),d-a<t)return;const m=u&&d-u;return m?Math.round(y*1e3/m):void 0}}function _n(e,t){let n=0,o=1e3/t,s,i;const a=(d,u=Date.now())=>{n=u,s=null,i&&(clearTimeout(i),i=null),e.apply(null,d)};return[(...d)=>{const u=Date.now(),p=u-n;p>=o?a(d,u):(s=d,i||(i=setTimeout(()=>{i=null,a(s)},o-p)))},()=>s&&a(s)]}const ge=(e,t,n=3)=>{let o=0;const s=Hn(50,250);return _n(i=>{const a=i.loaded,l=i.lengthComputable?i.total:void 0,f=a-o,d=s(f),u=a<=l;o=a;const p={loaded:a,total:l,progress:l?a/l:void 0,bytes:f,rate:d||void 0,estimated:d&&l&&u?(l-a)/d:void 0,event:i,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(p)},n)},ct=(e,t)=>{const n=e!=null;return[o=>t[0]({lengthComputable:n,total:e,loaded:o}),t[1]]},dt=e=>(...t)=>c.asap(()=>e(...t)),Gn=I.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,I.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(I.origin),I.navigator&&/(msie|trident)/i.test(I.navigator.userAgent)):()=>!0,Wn=I.hasStandardBrowserEnv?{write(e,t,n,o,s,i){const a=[e+"="+encodeURIComponent(t)];c.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),c.isString(o)&&a.push("path="+o),c.isString(s)&&a.push("domain="+s),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function vn(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Jn(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function ut(e,t,n){let o=!vn(t);return e&&(o||n==!1)?Jn(e,t):t}const ft=e=>e instanceof U?{...e}:e;function Z(e,t){t=t||{};const n={};function o(d,u,p,y){return c.isPlainObject(d)&&c.isPlainObject(u)?c.merge.call({caseless:y},d,u):c.isPlainObject(u)?c.merge({},u):c.isArray(u)?u.slice():u}function s(d,u,p,y){if(c.isUndefined(u)){if(!c.isUndefined(d))return o(void 0,d,p,y)}else return o(d,u,p,y)}function i(d,u){if(!c.isUndefined(u))return o(void 0,u)}function a(d,u){if(c.isUndefined(u)){if(!c.isUndefined(d))return o(void 0,d)}else return o(void 0,u)}function l(d,u,p){if(p in t)return o(d,u);if(p in e)return o(void 0,d)}const f={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:l,headers:(d,u,p)=>s(ft(d),ft(u),p,!0)};return c.forEach(Object.keys(Object.assign({},e,t)),function(u){const p=f[u]||s,y=p(e[u],t[u],u);c.isUndefined(y)&&p!==l||(n[u]=y)}),n}const pt=e=>{const t=Z({},e);let{data:n,withXSRFToken:o,xsrfHeaderName:s,xsrfCookieName:i,headers:a,auth:l}=t;t.headers=a=U.from(a),t.url=nt(ut(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&a.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let f;if(c.isFormData(n)){if(I.hasStandardBrowserEnv||I.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if((f=a.getContentType())!==!1){const[d,...u]=f?f.split(";").map(p=>p.trim()).filter(Boolean):[];a.setContentType([d||"multipart/form-data",...u].join("; "))}}if(I.hasStandardBrowserEnv&&(o&&c.isFunction(o)&&(o=o(t)),o||o!==!1&&Gn(t.url))){const d=s&&i&&Wn.read(i);d&&a.set(s,d)}return t},Qn=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,o){const s=pt(e);let i=s.data;const a=U.from(s.headers).normalize();let{responseType:l,onUploadProgress:f,onDownloadProgress:d}=s,u,p,y,m,g;function b(){m&&m(),g&&g(),s.cancelToken&&s.cancelToken.unsubscribe(u),s.signal&&s.signal.removeEventListener("abort",u)}let h=new XMLHttpRequest;h.open(s.method.toUpperCase(),s.url,!0),h.timeout=s.timeout;function S(){if(!h)return;const w=U.from("getAllResponseHeaders"in h&&h.getAllResponseHeaders()),x={data:!l||l==="text"||l==="json"?h.responseText:h.response,status:h.status,statusText:h.statusText,headers:w,config:e,request:h};lt(function(L){n(L),b()},function(L){o(L),b()},x),h=null}"onloadend"in h?h.onloadend=S:h.onreadystatechange=function(){!h||h.readyState!==4||h.status===0&&!(h.responseURL&&h.responseURL.indexOf("file:")===0)||setTimeout(S)},h.onabort=function(){h&&(o(new E("Request aborted",E.ECONNABORTED,e,h)),h=null)},h.onerror=function(){o(new E("Network Error",E.ERR_NETWORK,e,h)),h=null},h.ontimeout=function(){let R=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const x=s.transitional||rt;s.timeoutErrorMessage&&(R=s.timeoutErrorMessage),o(new E(R,x.clarifyTimeoutError?E.ETIMEDOUT:E.ECONNABORTED,e,h)),h=null},i===void 0&&a.setContentType(null),"setRequestHeader"in h&&c.forEach(a.toJSON(),function(R,x){h.setRequestHeader(x,R)}),c.isUndefined(s.withCredentials)||(h.withCredentials=!!s.withCredentials),l&&l!=="json"&&(h.responseType=s.responseType),d&&([y,g]=ge(d,!0),h.addEventListener("progress",y)),f&&h.upload&&([p,m]=ge(f),h.upload.addEventListener("progress",p),h.upload.addEventListener("loadend",m)),(s.cancelToken||s.signal)&&(u=w=>{h&&(o(!w||w.type?new ee(null,e,h):w),h.abort(),h=null)},s.cancelToken&&s.cancelToken.subscribe(u),s.signal&&(s.signal.aborted?u():s.signal.addEventListener("abort",u)));const C=qn(s.url);if(C&&I.protocols.indexOf(C)===-1){o(new E("Unsupported protocol "+C+":",E.ERR_BAD_REQUEST,e));return}h.send(i||null)})},Zn=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let o=new AbortController,s;const i=function(d){if(!s){s=!0,l();const u=d instanceof Error?d:this.reason;o.abort(u instanceof E?u:new ee(u instanceof Error?u.message:u))}};let a=t&&setTimeout(()=>{a=null,i(new E(`timeout ${t} of ms exceeded`,E.ETIMEDOUT))},t);const l=()=>{e&&(a&&clearTimeout(a),a=null,e.forEach(d=>{d.unsubscribe?d.unsubscribe(i):d.removeEventListener("abort",i)}),e=null)};e.forEach(d=>d.addEventListener("abort",i));const{signal:f}=o;return f.unsubscribe=()=>c.asap(l),f}},Yn=function*(e,t){let n=e.byteLength;if(n<t){yield e;return}let o=0,s;for(;o<n;)s=o+t,yield e.slice(o,s),o=s},$n=async function*(e,t){for await(const n of Xn(e))yield*Yn(n,t)},Xn=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:n,value:o}=await t.read();if(n)break;yield o}}finally{await t.cancel()}},mt=(e,t,n,o)=>{const s=$n(e,t);let i=0,a,l=f=>{a||(a=!0,o&&o(f))};return new ReadableStream({async pull(f){try{const{done:d,value:u}=await s.next();if(d){l(),f.close();return}let p=u.byteLength;if(n){let y=i+=p;n(y)}f.enqueue(new Uint8Array(u))}catch(d){throw l(d),d}},cancel(f){return l(f),s.return()}},{highWaterMark:2})},be=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",ht=be&&typeof ReadableStream=="function",Kn=be&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),gt=(e,...t)=>{try{return!!e(...t)}catch{return!1}},eo=ht&&gt(()=>{let e=!1;const t=new Request(I.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),bt=64*1024,De=ht&&gt(()=>c.isReadableStream(new Response("").body)),ye={stream:De&&(e=>e.body)};be&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!ye[t]&&(ye[t]=c.isFunction(e[t])?n=>n[t]():(n,o)=>{throw new E(`Response type '${t}' is not supported`,E.ERR_NOT_SUPPORT,o)})})})(new Response);const to=async e=>{if(e==null)return 0;if(c.isBlob(e))return e.size;if(c.isSpecCompliantForm(e))return(await new Request(I.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(c.isArrayBufferView(e)||c.isArrayBuffer(e))return e.byteLength;if(c.isURLSearchParams(e)&&(e=e+""),c.isString(e))return(await Kn(e)).byteLength},no=async(e,t)=>{const n=c.toFiniteNumber(e.getContentLength());return n??to(t)},Oe={http:Bn,xhr:Qn,fetch:be&&(async e=>{let{url:t,method:n,data:o,signal:s,cancelToken:i,timeout:a,onDownloadProgress:l,onUploadProgress:f,responseType:d,headers:u,withCredentials:p="same-origin",fetchOptions:y}=pt(e);d=d?(d+"").toLowerCase():"text";let m=Zn([s,i&&i.toAbortSignal()],a),g;const b=m&&m.unsubscribe&&(()=>{m.unsubscribe()});let h;try{if(f&&eo&&n!=="get"&&n!=="head"&&(h=await no(u,o))!==0){let x=new Request(t,{method:"POST",body:o,duplex:"half"}),N;if(c.isFormData(o)&&(N=x.headers.get("content-type"))&&u.setContentType(N),x.body){const[L,z]=ct(h,ge(dt(f)));o=mt(x.body,bt,L,z)}}c.isString(p)||(p=p?"include":"omit");const S="credentials"in Request.prototype;g=new Request(t,{...y,signal:m,method:n.toUpperCase(),headers:u.normalize().toJSON(),body:o,duplex:"half",credentials:S?p:void 0});let C=await fetch(g);const w=De&&(d==="stream"||d==="response");if(De&&(l||w&&b)){const x={};["status","statusText","headers"].forEach(_=>{x[_]=C[_]});const N=c.toFiniteNumber(C.headers.get("content-length")),[L,z]=l&&ct(N,ge(dt(l),!0))||[];C=new Response(mt(C.body,bt,L,()=>{z&&z(),b&&b()}),x)}d=d||"text";let R=await ye[c.findKey(ye,d)||"text"](C,e);return!w&&b&&b(),await new Promise((x,N)=>{lt(x,N,{data:R,headers:U.from(C.headers),status:C.status,statusText:C.statusText,config:e,request:g})})}catch(S){throw b&&b(),S&&S.name==="TypeError"&&/fetch/i.test(S.message)?Object.assign(new E("Network Error",E.ERR_NETWORK,e,g),{cause:S.cause||S}):E.from(S,S&&S.code,e,g)}})};c.forEach(Oe,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const yt=e=>`- ${e}`,oo=e=>c.isFunction(e)||e===null||e===!1,wt={getAdapter:e=>{e=c.isArray(e)?e:[e];const{length:t}=e;let n,o;const s={};for(let i=0;i<t;i++){n=e[i];let a;if(o=n,!oo(n)&&(o=Oe[(a=String(n)).toLowerCase()],o===void 0))throw new E(`Unknown adapter '${a}'`);if(o)break;s[a||"#"+i]=o}if(!o){const i=Object.entries(s).map(([l,f])=>`adapter ${l} `+(f===!1?"is not supported by the environment":"is not available in the build"));let a=t?i.length>1?`since :
4
+ `+i.map(yt).join(`
5
+ `):" "+yt(i[0]):"as no adapter specified";throw new E("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return o},adapters:Oe};function Ie(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new ee(null,e)}function At(e){return Ie(e),e.headers=U.from(e.headers),e.data=Te.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),wt.getAdapter(e.adapter||se.adapter)(e).then(function(o){return Ie(e),o.data=Te.call(e,e.transformResponse,o),o.headers=U.from(o.headers),o},function(o){return at(o)||(Ie(e),o&&o.response&&(o.response.data=Te.call(e,e.transformResponse,o.response),o.response.headers=U.from(o.response.headers))),Promise.reject(o)})}const Et="1.8.4",we={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{we[e]=function(o){return typeof o===e||"a"+(t<1?"n ":" ")+e}});const St={};we.transitional=function(t,n,o){function s(i,a){return"[Axios v"+Et+"] Transitional option '"+i+"'"+a+(o?". "+o:"")}return(i,a,l)=>{if(t===!1)throw new E(s(a," has been removed"+(n?" in "+n:"")),E.ERR_DEPRECATED);return n&&!St[a]&&(St[a]=!0,console.warn(s(a," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(i,a,l):!0}},we.spelling=function(t){return(n,o)=>(console.warn(`${o} is likely a misspelling of ${t}`),!0)};function ro(e,t,n){if(typeof e!="object")throw new E("options must be an object",E.ERR_BAD_OPTION_VALUE);const o=Object.keys(e);let s=o.length;for(;s-- >0;){const i=o[s],a=t[i];if(a){const l=e[i],f=l===void 0||a(l,i,e);if(f!==!0)throw new E("option "+i+" must be "+f,E.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new E("Unknown option "+i,E.ERR_BAD_OPTION)}}const Ae={assertOptions:ro,validators:we},q=Ae.validators;let Y=class{constructor(t){this.defaults=t,this.interceptors={request:new ot,response:new ot}}async request(t,n){try{return await this._request(t,n)}catch(o){if(o instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const i=s.stack?s.stack.replace(/^.+\n/,""):"";try{o.stack?i&&!String(o.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(o.stack+=`
6
+ `+i):o.stack=i}catch{}}throw o}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Z(this.defaults,n);const{transitional:o,paramsSerializer:s,headers:i}=n;o!==void 0&&Ae.assertOptions(o,{silentJSONParsing:q.transitional(q.boolean),forcedJSONParsing:q.transitional(q.boolean),clarifyTimeoutError:q.transitional(q.boolean)},!1),s!=null&&(c.isFunction(s)?n.paramsSerializer={serialize:s}:Ae.assertOptions(s,{encode:q.function,serialize:q.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),Ae.assertOptions(n,{baseUrl:q.spelling("baseURL"),withXsrfToken:q.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let a=i&&c.merge(i.common,i[n.method]);i&&c.forEach(["delete","get","head","post","put","patch","common"],g=>{delete i[g]}),n.headers=U.concat(a,i);const l=[];let f=!0;this.interceptors.request.forEach(function(b){typeof b.runWhen=="function"&&b.runWhen(n)===!1||(f=f&&b.synchronous,l.unshift(b.fulfilled,b.rejected))});const d=[];this.interceptors.response.forEach(function(b){d.push(b.fulfilled,b.rejected)});let u,p=0,y;if(!f){const g=[At.bind(this),void 0];for(g.unshift.apply(g,l),g.push.apply(g,d),y=g.length,u=Promise.resolve(n);p<y;)u=u.then(g[p++],g[p++]);return u}y=l.length;let m=n;for(p=0;p<y;){const g=l[p++],b=l[p++];try{m=g(m)}catch(h){b.call(this,h);break}}try{u=At.call(this,m)}catch(g){return Promise.reject(g)}for(p=0,y=d.length;p<y;)u=u.then(d[p++],d[p++]);return u}getUri(t){t=Z(this.defaults,t);const n=ut(t.baseURL,t.url,t.allowAbsoluteUrls);return nt(n,t.params,t.paramsSerializer)}};c.forEach(["delete","get","head","options"],function(t){Y.prototype[t]=function(n,o){return this.request(Z(o||{},{method:t,url:n,data:(o||{}).data}))}}),c.forEach(["post","put","patch"],function(t){function n(o){return function(i,a,l){return this.request(Z(l||{},{method:t,headers:o?{"Content-Type":"multipart/form-data"}:{},url:i,data:a}))}}Y.prototype[t]=n(),Y.prototype[t+"Form"]=n(!0)});let so=class Mt{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(i){n=i});const o=this;this.promise.then(s=>{if(!o._listeners)return;let i=o._listeners.length;for(;i-- >0;)o._listeners[i](s);o._listeners=null}),this.promise.then=s=>{let i;const a=new Promise(l=>{o.subscribe(l),i=l}).then(s);return a.cancel=function(){o.unsubscribe(i)},a},t(function(i,a,l){o.reason||(o.reason=new ee(i,a,l),n(o.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=o=>{t.abort(o)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Mt(function(s){t=s}),cancel:t}}};function io(e){return function(n){return e.apply(null,n)}}function ao(e){return c.isObject(e)&&e.isAxiosError===!0}const Le={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Le).forEach(([e,t])=>{Le[t]=e});function Bt(e){const t=new Y(e),n=X(Y.prototype.request,t);return c.extend(n,Y.prototype,t,{allOwnKeys:!0}),c.extend(n,t,null,{allOwnKeys:!0}),n.create=function(s){return Bt(Z(e,s))},n}const T=Bt(se);T.Axios=Y,T.CanceledError=ee,T.CancelToken=so,T.isCancel=at,T.VERSION=Et,T.toFormData=me,T.AxiosError=E,T.Cancel=T.CanceledError,T.all=function(t){return Promise.all(t)},T.spread=io,T.isAxiosError=ao,T.mergeConfig=Z,T.AxiosHeaders=U,T.formToJSON=e=>st(c.isHTMLForm(e)?new FormData(e):e),T.getAdapter=wt.getAdapter,T.HttpStatusCode=Le,T.default=T;const{Axios:Os,AxiosError:Is,CanceledError:Ls,isCancel:Us,CancelToken:Fs,VERSION:Ps,all:Ms,Cancel:Vs,isAxiosError:js,spread:zs,toFormData:qs,AxiosHeaders:Hs,HttpStatusCode:_s,formToJSON:Gs,getAdapter:Ws,mergeConfig:vs}=T;function lo(e){return e==null?!0:typeof e=="string"||Array.isArray(e)?e.length===0:typeof e=="object"?Object.keys(e).length===0:!1}function kt(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Ct(e={},t={}){const n={};for(const o in e)n[o]=e[o];for(const o in t){const s=e[o],i=t[o];if(kt(s)&&kt(i)){n[o]=Ct(s,i);continue}n[o]=i}return n}const co="q-defaults";function uo(){var e,t;const n=r.getCurrentInstance();if(!n)throw new Error("[Quidgest UI] useDefaults must be called from inside a setup function");const o=n.type.name??n.type.__name;if(!o)throw new Error("[Quidgest UI] Could not determine component name");const s=fo(),i=(e=s.value)==null?void 0:e.Global,a=(t=s.value)==null?void 0:t[o];return r.computed(()=>Ct(i,a))}function fo(){const e=r.inject(co,void 0);if(!e)throw new Error("[Quidgest UI] Could not find defaults instance");return e}function po(e){return e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/([0-9])([a-zA-Z])/g,"$1 $2").replace(/([a-zA-Z])([0-9])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").trim().split(/\s+/)}function mo(e){return po(e).join("-").toLowerCase()}function ho(e,t){var n;const o=mo(t);return o?typeof((n=e.props)==null?void 0:n[o])<"u":!1}function F(e){const t=e,n=t.setup;return n&&(t.setup=(o,s)=>{const i=uo();if(lo(i.value))return n(o,s);const a=r.getCurrentInstance();if(a===null)return n(o,s);const l=new Proxy(o,{get(f,d){var u;const p=Reflect.get(f,d),y=(u=i.value)==null?void 0:u[d];return typeof d=="string"&&!ho(a.vnode,d)?y??p:p}});return n(l,s)}),e}const go=["id"],bo=F(r.defineComponent({__name:"QSpinnerLoader",props:{id:{},class:{},size:{default:48}},setup(e){const t=e,n=r.computed(()=>({"font-size":t.size!==48?`${t.size}px`:void 0}));return(o,s)=>(r.openBlock(),r.createElementBlock("div",{id:t.id,class:r.normalizeClass(["q-spinner-loader",t.class]),style:r.normalizeStyle(n.value)},null,14,go))}})),yo=["id","disabled"],wo={key:0,class:"q-btn__spinner"},Ao={class:"q-btn__content"},H=F(r.defineComponent({__name:"QButton",props:{id:{},class:{},active:{type:Boolean},bStyle:{default:"secondary"},label:{},disabled:{type:Boolean},iconOnRight:{type:Boolean},borderless:{type:Boolean},elevated:{type:Boolean},block:{type:Boolean},loading:{type:Boolean},size:{default:"regular"}},emits:["click"],setup(e,{emit:t}){const n=e,o=t,s=r.computed(()=>n.disabled||n.loading);function i(l){s.value||o("click",l)}const a=r.computed(()=>{const l=n.size!=="regular"?`q-btn--${n.size}`:void 0;return["q-btn",`q-btn--${n.bStyle}`,l,{"q-btn--active":n.active,"q-btn--borderless":n.borderless,"q-btn--elevated":n.elevated,"q-btn--block":n.block,"q-btn--loading":n.loading},n.class]});return(l,f)=>(r.openBlock(),r.createElementBlock("button",{id:n.id,type:"button",class:r.normalizeClass(a.value),disabled:s.value,onClick:r.withModifiers(i,["stop","prevent"])},[l.loading?(r.openBlock(),r.createElementBlock("div",wo,[r.createVNode(r.unref(bo),{size:20})])):r.createCommentVNode("v-if",!0),r.createElementVNode("span",Ao,[l.iconOnRight?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(n.label),1)],64)):r.createCommentVNode("v-if",!0),r.renderSlot(l.$slots,"default"),l.iconOnRight?r.createCommentVNode("v-if",!0):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(r.toDisplayString(n.label),1)],64))])],10,yo))}}));function Eo(e,t=!1){return t?/^#[a-fA-F0-9]{6}$/.test(e):/^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/.test(e)}function So(e){const t=e.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);if(t){const n=parseInt(t[1],10),o=parseInt(t[2],10),s=parseInt(t[3],10);return{r:n,g:o,b:s}}}function Bo(e){if(Eo(e)){e.length===4&&(e="#"+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);const t=parseInt(e.slice(1,3),16),n=parseInt(e.slice(3,5),16),o=parseInt(e.slice(5,7),16);return{r:t,g:n,b:o}}else{const t=So(e);if(t)return t}throw new Error("Invalid color format")}function ko(e,t){const n=Rt(e),o=t/100;return n.l=n.l-o*n.l,Ro(n)}function Co(e){const t=e.r.toString(16).padStart(2,"0"),n=e.g.toString(16).padStart(2,"0"),o=e.b.toString(16).padStart(2,"0");return`#${t}${n}${o}`}function Rt(e){const t=e.r/255,n=e.g/255,o=e.b/255,s=Math.max(t,n,o),i=Math.min(t,n,o);let a=0,l;const f=(s+i)/2;if(s===i)a=l=0;else{const d=s-i;switch(l=f>.5?d/(2-s-i):d/(s+i),s){case t:a=(n-o)/d+(n<o?6:0);break;case n:a=(o-t)/d+2;break;case o:a=(t-n)/d+4;break}a/=6}return{h:Math.round(a*360),s:Math.round(l*100),l:Math.round(f*100)}}function Ro(e){const t=e.h/360,n=e.s/100,o=e.l/100;let s,i,a;if(n===0)s=i=a=o;else{const l=o<.5?o*(1+n):o+n-o*n,f=2*o-l;s=Ue(f,l,t+1/3),i=Ue(f,l,t),a=Ue(f,l,t-1/3)}return{r:Math.round(s*255),g:Math.round(i*255),b:Math.round(a*255)}}function Ue(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function xo(e){return e>50?"#000":"#fff"}const No=Symbol.for("q-theme");function xt(){const e=r.inject(No);if(!e)throw new Error("[Quidgest UI] Could not find theme instance");return e}function To(e,t){const n=new Set(["primary","info","success","warning","danger","highlight"]),o=r.computed(()=>n.has(r.unref(e)??"")),s=r.computed(()=>{const i=r.unref(e);if(!i)return;let a=i;const l=xt();if(o.value){const m=i;a=l.current.value.scheme[m]??i}let f;try{if(f=Bo(a),!f)return}catch(m){console.error("Failed to parse color:",m);return}const d=Rt(f),u=xo(d.l),p=Co(ko(f,25)),y=r.unref(t);return{backgroundColor:a,color:y==="tonal"||y==="outlined"?a:u,hoverColor:y==="tonal"||y==="outlined"?u:void 0,hoverBackgroundColor:y!=="tonal"&&y!=="outlined"?p:void 0}});return{isUtilityColor:o,style:s}}const Do=r.defineComponent({__name:"QIcon",props:{id:{},class:{},icon:{},type:{default:"svg"},size:{},color:{}},setup(e){const t=e,n=r.computed(()=>{switch(t.type){case"svg":return qo;case"font":return jo;case"img":return zo;default:return}}),o=To(r.toRef(t,"color"),"bold"),s=r.computed(()=>{var i;return{"font-size":t.size!==void 0?`${t.size}px`:void 0,color:t.color!==void 0&&t.color!=="primary"?(i=o.style.value)==null?void 0:i.backgroundColor:void 0}});return(i,a)=>(r.openBlock(),r.createBlock(r.resolveDynamicComponent(n.value),{id:t.id,class:r.normalizeClass(t.class),icon:t.icon,style:r.normalizeStyle(s.value)},null,8,["id","class","icon","style"]))}}),Oo=["id"],Io=r.defineComponent({__name:"QIconFont",props:{id:{},class:{},icon:{},library:{default:""},variant:{}},setup(e){const t=e,n=r.computed(()=>t.variant?`${t.library}-${t.variant}`:t.library),o=r.computed(()=>t.library&&t.icon?`${t.library}-${t.icon}`:t.icon);return(s,i)=>(r.openBlock(),r.createElementBlock("i",{id:t.id,class:r.normalizeClass(["q-icon","q-icon__font",n.value,o.value,t.class])},null,10,Oo))}}),Lo=["id","src"],Uo=r.defineComponent({__name:"QIconImg",props:{id:{},class:{},icon:{}},setup(e){const t=e;return(n,o)=>(r.openBlock(),r.createElementBlock("img",{id:t.id,src:t.icon,class:r.normalizeClass(["q-icon","q-icon__img",t.class])},null,10,Lo))}}),ae={},Fo=r.defineComponent({name:"InlineSvg",inheritAttrs:!1,props:{src:{type:String,required:!0},symbol:{type:String,default:""},title:{type:String,default:""},transformSource:{type:Function,default:void 0},keepDuringLoading:{type:Boolean,default:!0}},emits:{loaded:e=>typeof e=="object",unloaded:()=>!0,error:e=>typeof e=="object"},data(){return{svgElSource:null}},watch:{src(e){this.getSource(e)}},async mounted(){await this.getSource(this.src)},methods:{copySvgAttrs(e,t){const n=t.attributes;if(n)for(const o of n)e[o.name]=o.value},copyComponentAttrs(e,t){for(const[n,o]of Object.entries(t))o!==!1&&o!==null&&o!==void 0&&(e[n]=o)},getSvgContent(e){return this.symbol&&(e=e.getElementById(this.symbol),!e)?null:(this.transformSource&&(e=e.cloneNode(!0),e=this.transformSource(e)),this.title&&(this.transformSource||(e=e.cloneNode(!0)),Po(e,this.title)),e)},async getSource(e){try{ae[e]||(ae[e]=Mo(this.download(e))),this.svgElSource&&ae[e].getIsPending()&&!this.keepDuringLoading&&(this.svgElSource=null,this.$emit("unloaded"));const t=await ae[e];this.svgElSource=t,await this.$nextTick(),this.$emit("loaded",this.$el)}catch(t){this.svgElSource&&(this.svgElSource=null,this.$emit("unloaded")),delete ae[e],this.$emit("error",t)}},async download(e){const t=await fetch(e);if(!t.ok)throw new Error("Error loading SVG");const n=await t.text(),o=new DOMParser().parseFromString(n,"text/xml").getElementsByTagName("svg")[0];if(!o)throw new Error("Loaded file is not a valid SVG");return o}},render(){if(!this.svgElSource)return null;const e=this.getSvgContent(this.svgElSource);if(!e)return r.h("div",this.$attrs);const t={};return this.copySvgAttrs(t,this.svgElSource),this.copySvgAttrs(t,e),this.copyComponentAttrs(t,this.$attrs),t.innerHTML=e.innerHTML,r.h("svg",t)},expose:[]});function Po(e,t){const n=e.getElementsByTagName("title");if(n.length)n[0].textContent=t;else{const o=document.createElementNS("http://www.w3.org/2000/svg","title");o.textContent=t,e.insertBefore(o,e.firstChild)}}function Mo(e){if(e.getIsPending)return e;let t=!0;const n=e.then(o=>(t=!1,o),o=>{throw t=!1,o});return n.getIsPending=()=>t,n}const Vo=r.defineComponent({__name:"QIconSvg",props:{id:{},class:{},icon:{},bundle:{default:""}},emits:["loaded","unloaded"],setup(e,{emit:t}){const n=e,o=t;function s(a){o("loaded",a)}function i(){o("unloaded")}return(a,l)=>(r.openBlock(),r.createBlock(r.unref(Fo),{id:n.id,class:r.normalizeClass(["q-icon","q-icon__svg",n.class]),src:n.bundle,symbol:n.icon,onLoaded:s,onUnloaded:i},null,8,["id","class","src","symbol"]))}}),G=F(Do),jo=F(Io),zo=F(Uo),qo=F(Vo);let Ho=0;function Nt(e){return r.unref(e)||`uid-${++Ho}`}const _o=["id"],Go=["for"],Tt=F(r.defineComponent({inheritAttrs:!1,__name:"QLabel",props:{id:{},class:{},label:{},for:{}},setup(e){const t=e;return(n,o)=>(r.openBlock(),r.createElementBlock("div",{id:t.id,class:r.normalizeClass(["q-label",t.class])},[r.renderSlot(n.$slots,"prepend"),r.createElementVNode("label",r.mergeProps({for:t.for},n.$attrs),r.toDisplayString(t.label),17,Go),r.renderSlot(n.$slots,"append")],10,_o))}})),Wo=["id"],vo={key:0,class:"q-field__prepend"},Jo={key:1,class:"q-field__append"},Qo={key:1,class:"q-field__extras"},Dt=F(r.defineComponent({inheritAttrs:!1,__name:"QField",props:{id:{},class:{},label:{},for:{},size:{default:"medium"},readonly:{type:Boolean},disabled:{type:Boolean},required:{type:Boolean},invalid:{type:Boolean}},setup(e,{expose:t}){const n=e,o=r.ref(null),s=r.computed(()=>n.required&&!n.readonly&&!n.disabled),i=r.computed(()=>["q-field",`q-field--${n.size}`,{"q-field--readonly":n.readonly,"q-field--disabled":n.disabled,"q-field--required":s.value,"q-field--invalid":n.invalid},n.class]);return t({fieldRef:o}),(a,l)=>(r.openBlock(),r.createElementBlock("div",{id:n.id,class:r.normalizeClass(i.value)},[n.label?(r.openBlock(),r.createBlock(r.unref(Tt),{key:0,class:"q-field__label",label:n.label,for:n.for},{prepend:r.withCtx(()=>[r.renderSlot(a.$slots,"label.prepend")]),append:r.withCtx(()=>[r.renderSlot(a.$slots,"label.append")]),_:3},8,["label","for"])):r.createCommentVNode("v-if",!0),r.renderSlot(a.$slots,"control",{},()=>[r.createElementVNode("div",r.mergeProps({ref_key:"fieldRef",ref:o,class:"q-field__control"},a.$attrs),[a.$slots.prepend?(r.openBlock(),r.createElementBlock("div",vo,[r.renderSlot(a.$slots,"prepend")])):r.createCommentVNode("v-if",!0),r.renderSlot(a.$slots,"default"),a.$slots.append?(r.openBlock(),r.createElementBlock("div",Jo,[r.renderSlot(a.$slots,"append")])):r.createCommentVNode("v-if",!0)],16)]),a.$slots.extras?(r.openBlock(),r.createElementBlock("div",Qo,[r.renderSlot(a.$slots,"extras")])):r.createCommentVNode("v-if",!0)],10,Wo))}})),Zo={clearValue:"Clear value"},Yo={clear:{icon:"close"}},$o=F(r.defineComponent({__name:"QClearButton",props:{id:{},class:{},icons:{default:()=>Yo},texts:{default:()=>Zo}},emits:["click"],setup(e,{emit:t}){const n=e,o=t;function s(i){o("click",i)}return(i,a)=>(r.openBlock(),r.createBlock(r.unref(H),{id:n.id,class:r.normalizeClass(["q-clear-btn",n.class]),"aria-label":n.texts.clearValue,"b-style":"plain",borderless:"",tabindex:"-1",onClick:s},{default:r.withCtx(()=>[r.createVNode(r.unref(G),r.normalizeProps(r.guardReactiveProps(n.icons.clear)),null,16)]),_:1},8,["id","class","aria-label"]))}})),Xo=["id","type","required","placeholder","readonly","disabled"],Ko=F(r.defineComponent({inheritAttrs:!1,__name:"QTextField",props:r.mergeModels({id:{},class:{},label:{},for:{},size:{},readonly:{type:Boolean},disabled:{type:Boolean},required:{type:Boolean},invalid:{type:Boolean},placeholder:{},clearable:{type:Boolean},type:{default:"text"},texts:{}},{modelValue:{},modelModifiers:{}}),emits:r.mergeModels(["click:clear"],["update:modelValue"]),setup(e,{expose:t,emit:n}){const o=e,s=n,i=r.useModel(e,"modelValue"),a=Nt(o.id),l=r.ref(null),f=r.ref(null),d=r.computed(()=>o.readonly||o.disabled?void 0:o.placeholder),u=r.computed(()=>o.clearable&&!o.readonly&&!o.disabled),p=r.computed(()=>u.value&&i.value);function y(m){u.value&&(i.value="",s("click:clear",m))}return t({fieldRef:r.computed(()=>{var m;return(m=l.value)==null?void 0:m.fieldRef}),inputRef:f}),(m,g)=>(r.openBlock(),r.createBlock(r.unref(Dt),{ref_key:"fieldRef",ref:l,class:r.normalizeClass(["q-text-field",o.class]),for:r.unref(a),label:o.label,size:o.size,readonly:o.readonly,disabled:o.disabled,required:o.required,invalid:o.invalid},r.createSlots({"label.prepend":r.withCtx(()=>[r.renderSlot(m.$slots,"label.prepend")]),"label.append":r.withCtx(()=>[r.renderSlot(m.$slots,"label.append")]),default:r.withCtx(()=>[r.withDirectives(r.createElementVNode("input",r.mergeProps({id:r.unref(a),ref_key:"inputRef",ref:f,"onUpdate:modelValue":g[0]||(g[0]=b=>i.value=b),class:"q-text-field__input",type:o.type,required:o.required,placeholder:d.value,readonly:o.readonly,disabled:o.disabled},m.$attrs),null,16,Xo),[[r.vModelDynamic,i.value]])]),_:2},[m.$slots.prepend?{name:"prepend",fn:r.withCtx(()=>[r.renderSlot(m.$slots,"prepend")]),key:"0"}:void 0,m.$slots.append||p.value?{name:"append",fn:r.withCtx(()=>[r.renderSlot(m.$slots,"append"),p.value?(r.openBlock(),r.createBlock(r.unref($o),{key:0,"data-testid":"q-text-field__clear-button",texts:o.texts,onClick:y},null,8,["texts"])):r.createCommentVNode("v-if",!0)]),key:"1"}:void 0,m.$slots.extras?{name:"extras",fn:r.withCtx(()=>[r.renderSlot(m.$slots,"extras")]),key:"2"}:void 0]),1032,["class","for","label","size","readonly","disabled","required","invalid"]))}})),te="data-scroll-locked",Fe="right-scroll-bar-position",Pe="width-before-scroll-bar",er="with-scroll-bars-hidden",tr="--removed-body-scroll-bar-size",nr={left:0,top:0,right:0,gap:0},Me=e=>parseInt(e||"",10)||0,or=e=>{const t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],o=t[e==="padding"?"paddingTop":"marginTop"],s=t[e==="padding"?"paddingRight":"marginRight"];return[Me(n),Me(o),Me(s)]},rr=(e="margin")=>{if(typeof window>"u")return nr;const t=or(e),n=document.documentElement.clientWidth,o=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,o-n+t[2]-t[0])}};function sr(){return document?document.createElement("style"):null}function ir(e,t){e.appendChild(document.createTextNode(t))}function ar(e){(document.head||document.getElementsByTagName("head")[0]).appendChild(e)}const lr=()=>{let e=0,t=null;return{add:n=>{e===0&&(t=sr())&&(ir(t,n),ar(t)),e++},remove:()=>{var n;e--,!e&&t&&((n=t.parentNode)==null||n.removeChild(t),t=null)}}},cr=F(r.defineComponent({__name:"QRemoveScrollBar",props:{noRelative:{type:Boolean},noImportant:{type:Boolean},gapMode:{default:"margin"}},setup(e){const t=e,n=lr(),o=()=>{const i=parseInt(document.body.getAttribute(te)||"0",10);return isFinite(i)?i:0},s=({left:i,top:a,right:l,gap:f},d,u="margin",p)=>`
7
+ .${er} {
8
+ overflow: hidden ${p};
9
+ padding-right: ${f}px ${p};
10
+ }
11
+ body[${te}] {
12
+ overflow: hidden ${p};
13
+ overscroll-behavior: contain;
14
+ ${[d&&`position: relative ${p};`,u==="margin"&&`
15
+ padding-left: ${i}px;
16
+ padding-top: ${a}px;
17
+ padding-right: ${l}px;
18
+ margin-left:0;
19
+ margin-top:0;
20
+ margin-right: ${f}px ${p};
21
+ `,u==="padding"&&`padding-right: ${f}px ${p};`].filter(Boolean).join("")}
22
+ }
23
+
24
+ .${Fe} {
25
+ right: ${f}px ${p};
26
+ }
27
+
28
+ .${Pe} {
29
+ margin-right: ${f}px ${p};
30
+ }
31
+
32
+ .${Fe} .${Fe} {
33
+ right: 0 ${p};
34
+ }
35
+
36
+ .${Pe} .${Pe} {
37
+ margin-right: 0 ${p};
38
+ }
39
+
40
+ body[${te}] {
41
+ ${tr}: ${f}px;
42
+ }
43
+ `;return r.onMounted(()=>{document.body.setAttribute(te,(o()+1).toString());const i=rr(t.gapMode);n.add(s(i,!t.noRelative,t.gapMode,t.noImportant?"":"!important"))}),r.onUnmounted(()=>{const i=o()-1;i<=0?document.body.removeAttribute(te):document.body.setAttribute(te,i.toString()),n.remove()}),(i,a)=>r.renderSlot(i.$slots,"default")}}));function dr(e,t,n,o){const s=(o==null?void 0:o.offset)??0,i=(o==null?void 0:o.crossOffset)??0,a=(o==null?void 0:o.placement)??"bottom",l=e.getBoundingClientRect(),f=t.getBoundingClientRect(),d=n==null?void 0:n.getBoundingClientRect(),u=ur(l,f,a,s),p=gr(l,f,u),y=pr(p,u,s),m=mr(y,u,i),g=fr(m,f,u);let b;if(o!=null&&o.arrow){if(!d)throw new Error("[Quidgest UI] The arrow element must exist to compute its position");b=hr(g,l,f,d,u)}return{overlayCoords:g,arrowCoords:b,placement:u}}function ur(e,t,n,o){const s=Ot(e,t,n,o);if(It(s)){const i=ne(n),a={top:"bottom",bottom:"top",left:"right",right:"left"}[i],l=Ot(e,t,a,o);if(It(l))return n;const f=wr(n);return f?`${a}-${f}`:a}return n}function fr(e,t,n){const o=Ee(n),s=(a,l,f)=>Math.min(Math.max(a,l),f),i={...e};return o==="x"?i.x=s(e.x,8,window.innerWidth-t.width-8):i.y=s(e.y,8,window.innerHeight-t.height-8),i}function pr(e,t,n){const o=ne(t);return{x:e.x+(o==="left"?-n:o==="right"?n:0),y:e.y+(o==="top"?-n:o==="bottom"?n:0)}}function mr(e,t,n){const o=ne(t);return{x:e.x+(o==="top"||o==="bottom"?n:0),y:e.y+(o==="right"||o==="left"?n:0)}}function hr(e,t,n,o,s){if(Ee(s)==="y"){const i=t.top+t.height/2,a=e.y+n.height/2,l=a-i,f=n.height/2-l-o.height/2+2;if(f>0&&f<n.height-o.height)return{y:f}}else{const i=t.left+t.width/2,a=e.x+n.width/2,l=a-i,f=n.width/2-l-o.width/2+2;if(f>0&&f<n.width-o.width)return{x:f}}}function gr(e,t,n){const[o,s]=n.split("-"),i=e.x+e.width/2-t.width/2,a=e.y+e.height/2-t.height/2;let l;switch(o){case"top":l={x:i,y:e.y-t.height};break;case"bottom":l={x:i,y:e.y+e.height};break;case"left":l={x:e.x-t.width,y:a};break;case"right":l={x:e.x+e.width,y:a};break;default:throw new Error(`[Quidgest UI] Invalid placement value: ${n}`)}if(!s)return l;const f=Ee(n)==="y"?"height":"width",d=Ee(n),u=e[f]/2-t[f]/2;switch(s){case"start":l[d]-=u;break;case"end":l[d]+=u;break;default:throw new Error(`[Quidgest UI] Invalid alignment value: ${s}`)}return l}function Ot(e,t,n,o){const s=ne(n);let i=0;switch(s){case"top":i=e.top-(t.height+o);break;case"bottom":i=window.innerHeight-e.bottom-(t.height+o);break;case"left":i=e.left-(t.width+o);break;case"right":i=window.innerWidth-e.right-(t.width+o);break;default:throw new Error(`[Quidgest UI] Invalid side value: ${s}`)}return i}function br(e){return e==="x"?"y":"x"}function yr(e){const t=ne(e);return["left","right"].includes(t)?"x":"y"}function Ee(e){return br(yr(e))}function ne(e){const[t]=e.split("-");return t}function wr(e){const[,t]=e.split("-");return t}function It(e){return e<0}function Ar(e){return typeof e=="string"?document.querySelector(e):e}const Er=["id"],Sr=["role"],Br=F(r.defineComponent({inheritAttrs:!1,__name:"QOverlay",props:r.mergeModels({id:{},class:{},anchor:{},appearance:{default:"regular"},arrow:{type:Boolean},attach:{default:"body"},inline:{type:Boolean},backdropBlur:{type:Boolean},backdropClass:{},delay:{default:500},nonModal:{type:Boolean},scrollLock:{type:Boolean},offset:{default:8},crossOffset:{default:0},persistent:{type:Boolean},placement:{default:"right"},spy:{type:Boolean},transition:{default:"fade"},trigger:{default:"click"},width:{default:"auto"}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:r.mergeModels(["enter","leave"],["update:modelValue"]),setup(e,{emit:t}){const n=e,o=t,s=r.useModel(e,"modelValue"),{class:i}=xt(),a=r.computed(()=>["q-overlay",`q-overlay--${ne(u.placement)}`,i.value,{"q-overlay--independent":l.value,"q-overlay--inverted":n.appearance==="inverted"},n.class]),l=r.computed(()=>n.anchor===void 0),f=r.computed(()=>(s.value||u.animating)&&!n.nonModal),d=r.computed(()=>(s.value||u.animating)&&n.scrollLock),u=r.reactive({animating:!1,top:0,left:0,width:0,placement:n.placement}),p=r.reactive({top:void 0,left:void 0,hidden:!0}),y=r.computed(()=>u.top!==0&&u.left!==0);r.watch(s,()=>u.animating=!0);const m=r.computed(()=>{if(l.value)return;const B=v(),ce=n.width==="anchor",V=ce?B==null?void 0:B.getBoundingClientRect().width:void 0;return{top:`${u.top}px`,left:`${u.left}px`,width:V!==void 0?`${V}px`:void 0}}),g=r.computed(()=>{if(n.arrow)return{top:p.top!==void 0?`${p.top}px`:void 0,left:p.left!==void 0?`${p.left}px`:void 0,opacity:p.hidden?0:1}}),b=r.ref(null),h=r.ref(null);function S(){const B=v();if(!B||!h.value)return;const ce={placement:n.placement,width:n.width,offset:n.offset,crossOffset:n.crossOffset,arrow:n.arrow},V=dr(B,h.value,(b==null?void 0:b.value)??void 0,ce);u.left=V.overlayCoords.x,u.top=V.overlayCoords.y,u.placement=V.placement,p.hidden=V.arrowCoords===void 0,V.arrowCoords&&(p.top=V.arrowCoords.y,p.left=V.arrowCoords.x)}r.watch(()=>n.placement,()=>r.nextTick(S));let C;function w(){x(0)}function R(){x(n.delay)}function x(B){C&&L(),C=window.setTimeout(()=>{s.value=!0},B)}function N(){if(C&&L(),s.value=!1,n.anchor&&n.trigger==="click"){const B=v();B==null||B.focus()}}function L(){clearTimeout(C),C=void 0}r.watch(y,()=>r.nextTick(z));function z(){o("enter")}let _;function le(){window.clearTimeout(_),_=window.setTimeout(()=>u.animating=!1,200),o("leave")}function v(){return n.anchor?Ar(n.anchor):null}let $;function ze(){const B=v();if(B)switch($=new MutationObserver(S),$.observe(B,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),n.trigger){case"click":B.addEventListener("click",w);break;case"hover":B.addEventListener("mouseenter",R),B.addEventListener("mouseleave",N),B.addEventListener("focusin",w),B.addEventListener("focusout",N);break}}function qe(){const B=v();if(B)switch($==null||$.disconnect(),n.trigger){case"click":B.removeEventListener("click",w);break;case"hover":B.removeEventListener("mouseenter",R),B.removeEventListener("mouseleave",N),B.removeEventListener("focusin",w),B.removeEventListener("focusout",N);break}}function He(){window.addEventListener("resize",S),n.scrollLock||window.addEventListener("scroll",S)}function A(){window.removeEventListener("resize",S),n.scrollLock||window.removeEventListener("scroll",S)}let k;function D(){v()?(S(),k=window.setTimeout(D,100)):N()}function J(){l.value||(He(),n.spy?D():S()),(l.value||n.trigger==="click")&&r.nextTick(()=>{var B;return(B=h.value)==null?void 0:B.focus()})}function M(){l.value||A(),n.spy&&(clearTimeout(k),k=void 0),u.top=0,u.left=0}function W(){n.persistent||N()}return r.onMounted(()=>{r.nextTick(ze)}),r.onBeforeUnmount(()=>{qe(),M()}),r.watch(s,B=>{r.nextTick(()=>B?J():M())},{immediate:!0}),(B,ce)=>(r.openBlock(),r.createElementBlock(r.Fragment,null,[(r.openBlock(),r.createBlock(r.Teleport,{disabled:!s.value&&!u.animating||n.inline,to:n.attach},[f.value?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass([n.backdropClass,"q-overlay__underlay",{"q-overlay__underlay--blur":n.backdropBlur}])},null,2)):r.createCommentVNode("v-if",!0),r.createVNode(r.Transition,{name:n.transition,appear:"",onLeave:le},{default:r.withCtx(()=>[s.value?(r.openBlock(),r.createElementBlock("div",{key:0,id:n.id,class:r.normalizeClass(a.value),style:r.normalizeStyle(m.value)},[r.createElementVNode("div",r.mergeProps({ref_key:"overlayRef",ref:h,class:"q-overlay__content",tabindex:"-1",role:f.value?"dialog":void 0},B.$attrs,{onKeydown:r.withKeys(W,["escape"]),onBlur:W}),[n.arrow?(r.openBlock(),r.createElementBlock("div",{key:0,ref_key:"arrowRef",ref:b,role:"presentation",class:"q-overlay__arrow",style:r.normalizeStyle(g.value)},null,4)):r.createCommentVNode("v-if",!0),r.renderSlot(B.$slots,"default")],16,Sr)],14,Er)):r.createCommentVNode("v-if",!0)]),_:3},8,["name"])],8,["disabled","to"])),d.value?(r.openBlock(),r.createBlock(r.unref(cr),{key:0})):r.createCommentVNode("v-if",!0)],64))}})),kr=[{id:"button",icon:{icon:"check"},props:{bStyle:"primary",label:"Ok"}}],Cr={icon:"check-circle-outline"},Rr={close:{icon:"close"}},xr={class:"q-dialog__header"},Nr={class:"q-dialog__header-title"},Tr={class:"q-dialog__body"},Dr={key:0,class:"q-dialog__body-icon"},Or={class:"q-dialog__body-text"},Ir=["innerHTML"],Lr={key:1},Ur={class:"q-dialog__body-actions"},Fr=F(r.defineComponent({__name:"QDialog",props:r.mergeModels({id:{},class:{},title:{},text:{},icon:{default:()=>Cr},buttons:{default:()=>kr},attach:{default:"body"},inline:{type:Boolean},backdropBlur:{type:Boolean,default:!0},dismissible:{type:Boolean},html:{type:Boolean,default:!0},icons:{default:()=>Rr}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=e,n=r.useModel(e,"modelValue");function o(){n.value=!1}function s(i){var a;(a=i.action)==null||a.call(i),o()}return(i,a)=>(r.openBlock(),r.createBlock(r.unref(Br),{id:t.id,"model-value":n.value,inline:t.inline,attach:t.attach,"backdrop-blur":t.backdropBlur,"backdrop-class":"q-dialog__underlay","scroll-lock":"",persistent:""},{default:r.withCtx(()=>[r.createElementVNode("div",{class:r.normalizeClass(["q-dialog",t.class])},[r.createElementVNode("div",xr,[r.createElementVNode("span",Nr,r.toDisplayString(t.title),1),t.dismissible?(r.openBlock(),r.createBlock(r.unref(H),{key:0,"b-style":"tertiary",onClick:o},{default:r.withCtx(()=>[r.createVNode(r.unref(G),r.normalizeProps(r.guardReactiveProps(t.icons.close)),null,16)]),_:1})):r.createCommentVNode("v-if",!0)]),r.renderSlot(i.$slots,"body.content",{},()=>[r.createElementVNode("div",Tr,[r.renderSlot(i.$slots,"body.icon",{},()=>[t.icon?(r.openBlock(),r.createElementBlock("span",Dr,[r.createVNode(r.unref(G),r.normalizeProps(r.guardReactiveProps(t.icon)),null,16)])):r.createCommentVNode("v-if",!0)]),r.createElementVNode("div",Or,[t.html?(r.openBlock(),r.createElementBlock("span",{key:0,innerHTML:t.text},null,8,Ir)):(r.openBlock(),r.createElementBlock("span",Lr,r.toDisplayString(t.text),1))]),r.renderSlot(i.$slots,"body.append")])]),r.createElementVNode("div",Ur,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.buttons,l=>(r.openBlock(),r.createBlock(r.unref(H),r.mergeProps({ref_for:!0},l.props,{key:l.id,onClick:()=>s(l)}),{default:r.withCtx(()=>[l.icon?(r.openBlock(),r.createBlock(r.unref(G),r.mergeProps({key:0,ref_for:!0},l.icon),null,16)):r.createCommentVNode("v-if",!0)]),_:2},1040,["onClick"]))),128))])],2)]),_:3},8,["id","model-value","inline","attach","backdrop-blur"]))}}));function Pr(e){return r.getCurrentScope()?(r.onScopeDispose(e),!0):!1}const Mr=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Vr=()=>{};function Lt(...e){if(e.length!==1)return r.toRef(...e);const t=e[0];return typeof t=="function"?r.readonly(r.customRef(()=>({get:t,set:Vr}))):r.ref(t)}const Ve=Mr?window:void 0;function Ut(e){var t;const n=r.toValue(e);return(t=n==null?void 0:n.$el)!=null?t:n}function jr(){const e=r.shallowRef(!1),t=r.getCurrentInstance();return t&&r.onMounted(()=>{e.value=!0},t),e}function zr(e){const t=jr();return r.computed(()=>(t.value,!!e()))}function qr(e,t,n={}){const{window:o=Ve,...s}=n;let i;const a=zr(()=>o&&"ResizeObserver"in o),l=()=>{i&&(i.disconnect(),i=void 0)},f=r.computed(()=>{const p=r.toValue(e);return Array.isArray(p)?p.map(y=>Ut(y)):[Ut(p)]}),d=r.watch(f,p=>{if(l(),a.value&&o){i=new ResizeObserver(t);for(const y of p)y&&i.observe(y,s)}},{immediate:!0,flush:"post"}),u=()=>{l(),d()};return Pr(u),{isSupported:a,stop:u}}function Hr(e=Ve,t){e&&typeof e.requestAnimationFrame=="function"?e.requestAnimationFrame(t):t()}function _r(e={}){var t,n;const{window:o=Ve}=e,s=Lt(e==null?void 0:e.element),i=Lt((t=e==null?void 0:e.input)!=null?t:""),a=(n=e==null?void 0:e.styleProp)!=null?n:"height",l=r.shallowRef(1),f=r.shallowRef(0);function d(){var u;if(!s.value)return;let p="";s.value.style[a]="1px",l.value=(u=s.value)==null?void 0:u.scrollHeight;const y=r.toValue(e==null?void 0:e.styleTarget);y?y.style[a]=`${l.value}px`:p=`${l.value}px`,s.value.style[a]=p}return r.watch([i,s],()=>r.nextTick(d),{immediate:!0}),r.watch(l,()=>{var u;return(u=e==null?void 0:e.onResize)==null?void 0:u.call(e)}),qr(s,([{contentRect:u}])=>{f.value!==u.width&&Hr(o,()=>{f.value=u.width,d()})}),e!=null&&e.watch&&r.watch(e.watch,d,{immediate:!0,deep:!0}),{textarea:s,input:i,triggerResize:d}}const Gr=["id","required","placeholder","readonly","disabled","maxlength","rows","cols","resize","wrap"],Wr=F(r.defineComponent({inheritAttrs:!1,__name:"QTextArea",props:r.mergeModels({id:{},class:{},label:{},for:{},size:{},readonly:{type:Boolean},disabled:{type:Boolean},required:{type:Boolean},invalid:{type:Boolean},placeholder:{},maxLength:{},rows:{default:3},cols:{},resize:{default:"vertical"},wrap:{default:"soft"},autosize:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=e,n=r.useModel(e,"modelValue"),o=Nt(t.id),s=r.computed(()=>t.readonly||t.disabled?void 0:t.placeholder),i=r.computed(()=>({input:t.autosize?l:null})),a=r.ref(),{triggerResize:l}=_r({element:r.computed(()=>t.autosize?a.value:void 0),styleProp:"minHeight"}),f=r.computed({get:()=>n.value,set:d=>{n.value=t.maxLength?d==null?void 0:d.slice(0,t.maxLength):d}});return(d,u)=>(r.openBlock(),r.createBlock(r.unref(Dt),{class:r.normalizeClass(["q-text-area",t.class]),for:r.unref(o),label:t.label,size:t.size,readonly:t.readonly,disabled:t.disabled,required:t.required},r.createSlots({"label.prepend":r.withCtx(()=>[r.renderSlot(d.$slots,"label.prepend")]),"label.append":r.withCtx(()=>[r.renderSlot(d.$slots,"label.append")]),default:r.withCtx(()=>[r.withDirectives(r.createElementVNode("textarea",r.mergeProps({id:r.unref(o),ref_key:"textareaRef",ref:a,"onUpdate:modelValue":u[0]||(u[0]=p=>f.value=p),class:"q-text-area__input",required:t.required,placeholder:s.value,readonly:t.readonly,disabled:t.disabled,maxlength:t.maxLength,rows:t.rows,cols:t.cols,resize:t.resize,wrap:t.wrap},d.$attrs,r.toHandlers(i.value,!0)),null,16,Gr),[[r.vModelText,f.value]])]),_:2},[d.$slots.prepend?{name:"prepend",fn:r.withCtx(()=>[r.renderSlot(d.$slots,"prepend")]),key:"0"}:void 0,d.$slots.append?{name:"append",fn:r.withCtx(()=>[r.renderSlot(d.$slots,"append")]),key:"1"}:void 0,d.$slots.extras?{name:"extras",fn:r.withCtx(()=>[r.renderSlot(d.$slots,"extras")]),key:"2"}:void 0]),1032,["class","for","label","size","readonly","disabled","required"]))}})),vr={class:"pulsing-dots"},Jr=r.defineComponent({__name:"PulseDots",setup(e){const t=[1,2,3];return(n,o)=>(r.openBlock(),r.createElementBlock("div",vr,[(r.openBlock(),r.createElementBlock(r.Fragment,null,r.renderList(t,(s,i)=>r.createElementVNode("span",{key:i,class:"dot",style:r.normalizeStyle({animationDelay:i*.2+"s"})}," • ",4)),64))]))}}),Qr=`<svg
44
+ id="Layer_1"
45
+ class="q-icon q-icon__svg"
46
+ xmlns="http://www.w3.org/2000/svg"
47
+ viewBox="0 0 21.7 19.73">
48
+ <path
49
+ fill="currentColor"
50
+ d="M21.7,8.88c0-1.09-.89-1.97-1.97-1.97h-6.23l.95-4.51c.02-.1.03-.21.03-.32,0-.4-.17-.78-.43-1.05l-1.05-1.04-6.49,6.49c-.36.36-.58.86-.58,1.4v9.86c0,1.09.88,1.97,1.97,1.97h8.88c.82,0,1.52-.49,1.82-1.2l2.98-6.95c.09-.23.14-.46.14-.72v-1.97M0,19.73h3.95V7.89H0v11.84Z" />
51
+ </svg>
52
+ `,Zr=`<svg
53
+ id="Layer_1"
54
+ class="q-icon q-icon__svg"
55
+ xmlns="http://www.w3.org/2000/svg"
56
+ viewBox="0 0 21.86 19.87">
57
+ <path
58
+ fill="currentColor"
59
+ d="M17.89,11.92h3.97V0h-3.97M13.91,0H4.97c-.82,0-1.53.5-1.83,1.21L.14,8.22c-.09.23-.14.47-.14.73v1.99c0,1.1.89,1.99,1.99,1.99h6.27l-.94,4.54c-.02.1-.03.2-.03.31,0,.42.17.78.44,1.05l1.05,1.05,6.54-6.55c.37-.36.59-.85.59-1.4V1.99c0-1.1-.89-1.99-1.99-1.99Z" />
60
+ </svg>
61
+ `,Yr=`<svg
62
+ xmlns="http://www.w3.org/2000/svg"
63
+ viewBox="0 0 24 24">
64
+ <path
65
+ fill="currentColor"
66
+ d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z" />
67
+ </svg>
68
+ `,$r={class:"q-chatbot__message-container"},Xr={class:"q-chatbot__message-wrapper"},Kr={key:0,class:"q-chatbot__image-preview"},es=["src","alt"],ts={class:"q-chatbot__message"},ns=["innerHTML"],os={key:1,class:"q-chatbot__text"},rs={key:1,class:"q-chatbot__feedback-buttons"},ss=["innerHTML"],is=["innerHTML"],as=["innerHTML"],ls={class:"q-chatbot__sender"},cs=((e,t)=>{const n=e.__vccOpts||e;for(const[o,s]of t)n[o]=s;return n})(r.defineComponent({__name:"CBMessage",props:{sender:{default:"user"},message:{},date:{default:()=>new Date},loading:{type:Boolean},dateFormat:{},imagePreviewUrl:{},texts:{default:()=>({commentDialogTitle:"Would you like to add a comment?",commentPlaceholder:"Type your comment here (optional)...",goodResponse:"Good response",badResponse:"Bad response",copyResponse:"Copy response",submitButton:"Submit",cancelButton:"Cancel",senderImage:"Sender Image",imagePreview:"Image preview"})},apiEndpoint:{},sessionID:{},userImage:{default:void 0},chatbotImage:{},isWelcomeMessage:{type:Boolean}},setup(e){const t=Qr,n=Zr,o=Yr,s=e,i=r.ref(!1),a=r.ref(""),l=r.ref(null),f=[{id:"confirm-btn",action:h,props:{label:s.texts.submitButton,"b-style":"primary"}},{id:"cancel-btn",props:{label:s.texts.cancelButton,"b-style":"danger"}}],d=r.computed(()=>s.sender==="bot"?"GenioBot":"You"),u=r.computed(()=>s.sender==="bot"&&!Object.values(s.texts||{}).includes(s.message||"")&&!s.isWelcomeMessage),p=r.computed(()=>s.dateFormat?g(s.date,s.dateFormat):s.date.toLocaleString()),y=r.computed(()=>`${d.value} ${p.value}`),m=r.computed(()=>s.sender==="bot"?s.chatbotImage:s.userImage);function g(w,R){const x=w.getDate().toString().padStart(2,"0"),N=(w.getMonth()+1).toString().padStart(2,"0"),L=w.getFullYear().toString().padStart(2,"0"),z=w.getHours().toString().padStart(2,"0"),_=w.getMinutes().toString().padStart(2,"0"),le=w.getSeconds().toString().padStart(2,"0");return R.replace("dd",x).replace("MM",N).replace("yyyy",L).replace("HH",z).replace("mm",_).replace("ss",le)}function b(w){i.value=!0,a.value="",l.value=w}function h(){l.value!=null&&S(l.value,a.value)}function S(w,R){T.post(s.apiEndpoint+"/prompt/feedback",{messageSessionID:s.sessionID,feedbackValue:w,feedbackComment:R}).catch(x=>{console.error("Error sending message feedback: ",x)})}function C(){s.message&&navigator.clipboard.writeText(s.message).then(()=>{console.log("Message copied to clipboard")}).catch(w=>{console.error("Failed to copy message to clipboard: ",w)})}return(w,R)=>{const x=r.resolveComponent("q-button-group");return r.openBlock(),r.createElementBlock("div",$r,[r.createVNode(r.unref(G),{type:"img",icon:m.value,alt:s.texts.senderImage,class:"q-chatbot__profile"},null,8,["icon","alt"]),r.createElementVNode("div",Xr,[s.imagePreviewUrl&&s.imagePreviewUrl.length>0?(r.openBlock(),r.createElementBlock("div",Kr,[r.createElementVNode("img",{src:s.imagePreviewUrl,alt:s.texts.imagePreview},null,8,es)])):r.createCommentVNode("",!0),r.createElementVNode("div",ts,[w.loading?(r.openBlock(),r.createBlock(Jr,{key:0})):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[s.sender==="bot"?(r.openBlock(),r.createElementBlock("div",{key:0,class:"q-chatbot__text",innerHTML:s.message},null,8,ns)):(r.openBlock(),r.createElementBlock("div",os,r.toDisplayString(s.message),1))],64))]),r.createVNode(r.unref(Fr),{modelValue:i.value,"onUpdate:modelValue":R[1]||(R[1]=N=>i.value=N),buttons:f,text:s.texts.commentDialogTitle},{"body.append":r.withCtx(()=>[r.createVNode(r.unref(Ko),{modelValue:a.value,"onUpdate:modelValue":R[0]||(R[0]=N=>a.value=N),maxLength:150,size:"large",placeholder:s.texts.commentPlaceholder},null,8,["modelValue","placeholder"])]),_:1},8,["modelValue","text"]),u.value?(r.openBlock(),r.createElementBlock("div",rs,[r.createVNode(x,null,{default:r.withCtx(()=>[r.createVNode(r.unref(H),{title:s.texts.goodResponse,borderless:"",disabled:w.loading,"b-style":"secondary",onClick:R[2]||(R[2]=N=>b(1))},{default:r.withCtx(()=>[r.createElementVNode("span",{innerHTML:r.unref(t),class:"svg-icon"},null,8,ss)]),_:1},8,["title","disabled"]),r.createVNode(r.unref(H),{title:s.texts.badResponse,borderless:"",disabled:w.loading,"b-style":"secondary",onClick:R[3]||(R[3]=N=>b(0))},{default:r.withCtx(()=>[r.createElementVNode("span",{innerHTML:r.unref(n),class:"svg-icon"},null,8,is)]),_:1},8,["title","disabled"]),r.createVNode(r.unref(H),{title:s.texts.copyResponse,borderless:"",disabled:w.loading,"b-style":"secondary",onClick:C},{default:r.withCtx(()=>[r.createElementVNode("span",{innerHTML:r.unref(o),class:"svg-icon"},null,8,as)]),_:1},8,["title","disabled"])]),_:1})])):r.createCommentVNode("",!0),r.createElementVNode("div",ls,r.toDisplayString(y.value),1)])])}}}),[["__scopeId","data-v-695796d5"]]),O=[];for(let e=0;e<256;++e)O.push((e+256).toString(16).slice(1));function ds(e,t=0){return(O[e[t+0]]+O[e[t+1]]+O[e[t+2]]+O[e[t+3]]+"-"+O[e[t+4]]+O[e[t+5]]+"-"+O[e[t+6]]+O[e[t+7]]+"-"+O[e[t+8]]+O[e[t+9]]+"-"+O[e[t+10]]+O[e[t+11]]+O[e[t+12]]+O[e[t+13]]+O[e[t+14]]+O[e[t+15]]).toLowerCase()}let je;const us=new Uint8Array(16);function fs(){if(!je){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");je=crypto.getRandomValues.bind(crypto)}return je(us)}const Ft={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function ps(e,t,n){var s;if(Ft.randomUUID&&!e)return Ft.randomUUID();e=e||{};const o=e.random??((s=e.rng)==null?void 0:s.call(e))??fs();if(o.length<16)throw new Error("Random bytes length must be >= 16");return o[6]=o[6]&15|64,o[8]=o[8]&63|128,ds(o)}const ms="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFIGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjAtMDUtMjFUMTg6MTk6NDErMDE6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjAtMDUtMjFUMTg6MTk6NDErMDE6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIwLTA1LTIxVDE4OjE5OjQxKzAxOjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4NmI5YWQxZC0yOTk4LTQ2ZjYtYjliYS01NTBlNzgwOGQ5MWUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODZiOWFkMWQtMjk5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",hs="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAYAAAA5ZDbSAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF2GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOS0xMS0yOVQxMDoyNDo1N1oiIHhtcDpNb2RpZnlEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpiN2ViMDM0NC1hN2UzLTI3NGItODgwNi00ZjMxMzRiNDUwNDEiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2ODJkMGU1OC1kZmQyLTZkNDEtOGIwNy01ZWUxNjU4MWY2ZWEiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0N2I2NzcxYy1kZmY0LTJkNGItYjJmNC00ZGJiNmQ3MjRmYzAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjQ3YjY3NzFjLWRmZjQtMmQ0Yi1iMmY0LTRkYmI2ZDcyNGZjMCIgc3RFdnQ6d2hlbj0iMjAxOS0xMS0yOVQxMDoyNDo1N1oiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMS4wIChXaW5kb3dzKSIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6YjdlYjAzNDQtYTdlMy0yNzRiLTg4MDYtNGYzMTM0YjQ1MDQxIiBzdEV2dDp3aGVuPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pm5CcJ8AAAudSURBVHja7Z17sBTFFYe/WYiCYNZalKirgzImEuShFRgM11eiJSpEiC9UCEg0GEl8JGLUaGLUGIyJMcZnLExMJegFi1Ipc41EU5ThERp8oIAx0j4aF5WH60YJV0TIH93gBXZxZ3d2tmd3flVbdWvr7nbP+bZ7us+cPsehAeR6/v7AAOAQoDdwELAv0MO8ugO77/CxD4GNwFpgDfAOsBJYAfwHeEVJoeJuGyeGMLsARwFDgRZgEJCpUXNrgUXmNQdYoKRoTwCHD9UFRgLDgWOBLnXqSjswD5gFPBqHEe5YDLUnMBoYAwyxtJuLgGnANCXF2gRweWCPBy4ERgGfi8lMuNGM6nuUFP9IAO8MtTNwNjAZGBjzdc3zwG+AViXFpqYG7Hq+Y6bhnwMejSUJ3AD8RUmxuekAu55/EjAFOJzG1svAZCVFW1MAdj2/F3Ab8E2aS23AZUqKVxsSsLnPXg5cB3SlObXRTNu/jOr+7EQEtw/wgMXbnaj1LHCekmJprRvqFAHcC4DH0O7DRFr7A+enM9m1hXxucSxHsOv53YDfG0dFotKaDnxHSfFBbACbhdRjDbCnjUrLgRFKitfD/uJUDeC2ACKBG0h9gUWu5x9tNWDX878B/B3omTALrB7AU67nh7p97BQi3PHAg8BuCauqeJyZzmRXFvK5F6wB7Hr+hcDUWkz5TSgHGJnOZFeHscLuFALcMQauk7AJVcPTmaws5HMv1g2w6/lnmGk5Gbm10ah0Jru8kM8tj3ybZFbLT1G/6Ipytx+LgNeAVcAG835X42zoDQw2q1hb1Q6coKSYFxlg1/MPARYAe1tokCVoB8tMJcXqMq+nJ3A6OtDAxu3dOuBIJcWKmgN2Pb87sNDCX70ELgXalBRbKvzhOsApwO3Y93x6OTBESfFhzQAbA0wHzrTs4u8Hvh9WxKOJ3LwTON+y63wYGB3kBxxokZXOZCcBV1h20VcrKX5UyOdCe/xWyOc2FfK5WelM9iPgBIuu9TBgdSGfWxQ6YNfz+wIzgc4WXfAUJcX1tfryQj43N53J7g4cbdE1H5/OZB8p5HNryvnnVJlwO5vtkE0r5qeBayNo51rApkjJLsCDhkk4gLEv2rEd/Yit5sFspo0LTJu2aKBhUv0U7Xq+ZxZWNsUo36WkaI2qsUI+9346k90HONIiG7SkM9nWQj6Xr3YE34VdMVRb0EF7Ues207Yt6mrYVD5Fm9DWYZatmucoKd6MulHT5hzLbDHMMAoO2PX8FHAL9mlWk7ZdSrcYVoFH8Digv4UXNK9J2y6l/oZV+YBdz+8U0RakEr3UpG3vcitnmJU9gs/EzrNC79TzALZp+10L7eJRwn2cKjJ6HeAqS3+pa5I+lNRVht1njuBjsTcicrMFffjEUtsMNOw+E/BEEsVVE3cJ2PX8vdEPvhPFU6cbhiVH8LdIwl7jrN0Mw5KARyc2ir1GFwVsUhUlxzvjryGG5U4j+LTENg2j04oBPjmxS8Po5O0Au56/R7E9VKLY6ljDdNsI/io7J+tMFF/tbphuA9yS2KTh1JIAbiLAg2LSaRuiOuOSAmoQgGOSaedi0ul2YI9Kj6ZUKxM5sYH4ePuyKXSmdGI0guvZ3wHEy5U7IIU+QhknjbTBgRAT9U4Bbsw6fZHJwRX19Lwn+nhpnOSmgANj1ul9gV/Uod1fEb/sQQfGcQQDXOJ6/iURjt4fx3D0bhvB+8V0n3e76/mjIoB7BnBTTG20X4p4p/bdK4I2usfYPl1TQDcSNaq6JYCbAHDnxA4Nq85JArMGVwK4CQC3J2ZoWLWngPWJHRpW61PoNHmJGlPrEsBNAPjtxA4Nq7dTwBuJHRpWb6aA1xM7NKxeSwEr4thx4HvoBG211nT0uduXY2inV+MWdLcMXdxxppIi0pP2Jj3CMHR6i7icAsk6pvNrsDN7+1a9bMDOqGex5Q6wjwN+ZjnotUqKfba6Kp+ztJMSOAfop6RotQEugJJijpLiOOBrwHxLbfccfOqLti3B1zvAJKCPTWBLgG4BRqFT7tukeR0Bz7WkUwXgGsBTUtwTVRHlEEA/ho6Z/jaw0pJuzQVTs8EcNXyP+p0wbEfXSJiipHgvzvsS1/O7mtnnanQ9wnroIyCjpPif06FjTwInRtyRLcCfgJ8oKd5qpA2o6/l7AVcCP6jDwJmtpBjWcYoGaIu4E08DRygpJjQaXDNtv6+kuBroA8yIuPltLDuOYBeIIg/zcuAKJUUbTSTX84eik4r7ETTXS0mhthvB5o2FNWx0NXARMLDZ4Br7zkeXBBgL1HLGWrgV7o5TNMBDNVpA3QwcoqS4Ny4r4xpB3qKkmAZ8CbiOT2sphqntGDo7TCM9za8rrAIcM4ArlRRvkKjYtH0A+szT2SF95cfAAR1rNjpFGp1B9aXrlqBLzc1NMJZ9f76b6rP8PqykOKvjG8WiKu+pspE7gcEJ3MD358HGdtVoJ3ZOiV/UCxX+mlqVFOckyKoazQ9VOGUvUVIcvuObpeKiK6m2shn7ClfGUVdQWeLzosxSu1gcyYANLGpEh0Udpuu30FXLg0iWcqakSjSyCbgxYCP/TvCEpqC2vLHU9nNXR1f+TLBHYD0SLqEpiC2XG1YEAmyewQa5p45wPf+8hE3Vi6zzgBEBPjJ5V8/LnTIa/Cu6rn05Wg8MUlIk03VlcPsAiyn/zHabkmL4rv6hnNOFl6KfL5ajbsCj5lFZomBw9wIeDQD3I8OGqgArKVYAQcqoHwq0liq1lqgo3E5Aq7FdubresKHaEQzaX/psgMaHAXcXq8SVaCe4DtpNGaSM77OGCaEANkvwcQQ7SzwRmJIg/ExNIVgxsnZgXLlP5cqeRgv53Jp0Jrsu4ArvqHQmu6mQz/0z4Vh09F4D/DTgxy5WUjxR7j8Huk8W8rnF6Uy2L3BYgI99PZ3Jdi3kc08lSLeDe3MFcGcoKQIVDnUq6Fh34F8BIQPcB0yK+siJpQuquwleI3IZcKSS4sOaAjad7A0IgnuvZgNnKSkKTQo3jfYZB41eXQf4SorXgrZZUZYd09AogidwORFYYDb0zejEmF8B3HZgVCVwKwZsIM8FxhD80daXgcWu549tIrhj0R6qvgE/uhkYU03whBNC58cDD1T48QeBS5QU6xoUbA/gd8C5FX7FBCXFA9X0oWpvUyGfW5LOZFcDwyv4eH9gfDqTVYV8blmDwT0LeBxToKoCTVJSTK22H06IFzQBmFrFtP80cJmSYmnMwfYDfgscX+FXbAYuUFL8MYz+OCFf3AizSqw0B/UnwP3ATR2Dt2MC1kWfjDy/iplxg9llPB5Wv5waXOhQ4BGqq2/wMfAH4FYlxauWg/0icDn66Gg18eSrgdOUFKGe1XZqdNG9gFlUX+NoC/A34A7gSVsOgpsCWcOAi4GTQrDji8CpSorQz4Y5NTRCd+Bes5UKQ2+bVfdDwHP1qH7mev5X0CklziW8WhfTgO8G9VDVHXAHo0w0i44wa0PkzMh+ApirpHi3Rn3/AnAUuuDySUA2xK/fYBaV99XS/k5Ev/w+6IPetTo6+TraP74MnZHnFWClkuK/Zfbv8+j6UYcaR8xh6JOAB9eovwIYH0VoU2QP5F3P7wxMRj9BiarSSzuwCvjA/L3VtdrFvPYE9ie6qqYb0Omgfh3VKcvIIy5czz8YfQbnFJpLbegDeZGmjqxbSI3r+ScCtwL9GhzsS+jQ1tn1aLxuNRvMBR8OTCD4MZk4SJprO6JecOs6govcn88GfggcEXOwz5uZaboN2Qysi3p0Pf8Y40A4lfgUY96IduzcoaR4xqaOWRvW6nr+3sZJcg4wxNJuLjSOl2lKirU2djAWccvGkX+6cTYcE+G2pti26xnjZJkZhwcisQtMN6kCW4Ch5jUYyNSoufeMU2IBOtxmnpJiQ5zs1RAnD0xS837orHIHAb2MAyODDgzcs8j9fKNxgKwzIFehE8G9gT6fu1RJsSrutvk/GdqIAV0smzEAAAAASUVORK5CYII=",gs={class:"q-chatbot"},bs={class:"q-chatbot__content"},ys={class:"q-chatbot__tools"},ws={key:0,class:"q-chatbot__image-preview"},As=["src"],Es={class:"q-chatbot__footer-container"},Ss={class:"q-chatbot__input"},Bs={class:"q-chatbot__send-container"},ks=["accept"];return r.defineComponent({name:"ChatBot",__name:"ChatBot",props:{apiEndpoint:{default:"http://localhost:3000"},controllerEndpoint:{},texts:{default:()=>({chatbotTitle:"ChatBot",sendMessage:"Send message",clearChat:"Clear chat",inputLabel:"What can I help with?",imageUpload:"Upload Image",imageUploadQButton:"Upload Image",goodResponse:"Good response",badResponse:"Bad response",initialMessage:"Howdy! I am GenioBot 👋, Quidgest's personal AI assistant! How can I help you?",initialAgentMessage:"Just a temporary message while we are working on the agent mode",loginError:"Uh oh, I could not authenticate with the Quidgest API endpoint 😓",botIsSick:"*cough cough* GenioBot is not feeling alright 🥴️🤒, looks like something failed!"})},username:{},projectPath:{},userImage:{default:hs},chatbotImage:{default:ms},dateFormat:{},mode:{default:"chat"}},setup(e){const t=r.ref([]),n=r.ref(1),o=r.ref(""),s=r.ref(!1),i=r.ref(!1),a=r.ref(null),l=r.ref(!0),f=r.ref(null),d=r.ref(null),u=r.computed(()=>".png, .jpeg, .jpg, .svg, .webp"),p=r.ref(!1),y=r.computed(()=>o.value.trim().length===0||s.value||i.value),m=e;r.onMounted(()=>{S(),r.nextTick(()=>{var A;(A=a.value)==null||A.addEventListener("scroll",z)})});const g=r.computed(()=>i.value||s.value),b=r.computed(()=>({"q-chatbot__footer-disabled":g.value}));function h(A){i.value=A}function S(){T.post(m.apiEndpoint+"/auth/login",{username:m.username,password:"test"}).then(A=>{if(A.status!==200||!A.data.success){h(!0),w(m.texts.loginError),console.log(`Unsuccessful login, endpoint gave status ${A.status}`);return}C()}).catch(A=>{h(!0),w(m.texts.loginError),console.log("Error during login: "+A)})}function C(){T.post(m.apiEndpoint+"/prompt/load",{username:m.username,project:m.projectPath}).then(A=>{if(A.status!==200||!A.data.success){h(!0),w(m.texts.loginError),console.log(`Unsuccessful load, endpoint gave status ${A.status}`);return}x(),A.data.history.forEach(k=>{const D=k.imageUrl?m.controllerEndpoint+k.imageUrl:void 0;w(k.content,k.type==="ai"?"bot":"user",D,k.sessionID)})}).catch(A=>{h(!0),w(m.texts.loginError),console.log("Error loading chat data: "+A)})}function w(A,k="bot",D=null,J,M){t.value.push({id:n.value++,message:A,date:new Date,sender:k,imagePreviewUrl:D??void 0,sessionID:J||ps(),isWelcomeMessage:M??!1}),r.nextTick(()=>{l.value&&L()})}function R(){return t.value.find(A=>A.id===n.value-1)}function x(){const A=m.mode==="chat"?m.texts.initialMessage:m.texts.initialAgentMessage;w(A,"bot",null,void 0,!0)}function N(){t.value=[],o.value="",s.value=!1,h(!1),l.value=!0}function L(){r.nextTick(()=>{a.value&&a.value.scrollTo({top:a.value.scrollHeight,behavior:"smooth"})})}function z(){if(a.value){const{scrollTop:k,clientHeight:D,scrollHeight:J}=a.value;k+D>=J-20?l.value=!0:l.value=!1}}function _(){d.value="",f.value&&(f.value.value=""),p.value=!1}function le(){var A;(A=f.value)==null||A.click()}function v(A){const k=A.target;f.value=k,k.files&&k.files[0]&&(d.value=URL.createObjectURL(k.files[0]),p.value=!0)}function $(){var A,k;o.value.trim().length===0||s.value||i.value||(w(o.value,"user",d.value),L(),ze(o.value,(k=(A=f.value)==null?void 0:A.files)==null?void 0:k[0]),_(),o.value="")}function ze(A,k){w("","bot");let D=R();const J=(D==null?void 0:D.sessionID)||"";let M=null;k?(M=new FormData,M.append("message",A),M.append("project",m.projectPath),M.append("user",m.username),M.append("image",k),M.append("sessionID",J)):M={message:A,project:m.projectPath,user:m.username,sessionID:J},s.value=!0,T({url:m.apiEndpoint+"/prompt/message",method:"POST",data:M,onDownloadProgress:W=>{var V,Pt;const B=(V=W.event)==null?void 0:V.currentTarget.response;((Pt=W.event)==null?void 0:Pt.currentTarget.status)===200&&(D&&(D.message=B),l.value&&L())}}).then(({data:W})=>{D&&(D.message=W)}).catch(W=>{w(m.texts.botIsSick),h(!0),console.log(W)}).finally(()=>{s.value=!1})}function qe(){T.post(m.apiEndpoint+"/prompt/clear",{username:m.username,project:m.projectPath}).then(A=>{if(A.status!==200||!A.data.success){h(!0),w(m.texts.loginError),console.log(`Unsuccessful clear, endpoint gave status ${A.status}`);return}N(),x()}).catch(A=>{h(!0),w(m.texts.loginError),console.log("Error clearing chat: "+A)})}function He(A){const k=["q-chatbot__messages-wrapper"];return A==="user"&&k.push("q-chatbot__messages-wrapper_right"),k}return r.watch(()=>m.apiEndpoint,()=>{N(),S()}),(A,k)=>(r.openBlock(),r.createElementBlock("div",gs,[r.createElementVNode("div",bs,[r.createElementVNode("div",ys,[r.createVNode(r.unref(H),{title:m.texts.clearChat,"b-style":"secondary",disabled:i.value,borderless:"",onClick:qe},{default:r.withCtx(()=>[r.createVNode(r.unref(G),{icon:"bin"})]),_:1},8,["title","disabled"])]),r.createElementVNode("div",{ref_key:"messagesContainer",ref:a,class:"q-chatbot__messages-container",onScroll:z},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.value,D=>(r.openBlock(),r.createElementBlock("div",{key:D.id,class:r.normalizeClass(He(D.sender))},[r.createVNode(r.unref(cs),r.mergeProps({ref_for:!0},D,{"date-format":m.dateFormat,"user-image":m.userImage,"chatbot-image":m.chatbotImage,loading:s.value&&!D.message,imagePreviewUrl:D.imagePreviewUrl,apiEndpoint:m.apiEndpoint,sessionID:D.sessionID}),null,16,["date-format","user-image","chatbot-image","loading","imagePreviewUrl","apiEndpoint","sessionID"])],2))),128))],544),d.value?(r.openBlock(),r.createElementBlock("div",ws,[r.createElementVNode("img",{src:d.value,alt:"Image preview"},null,8,As),r.createVNode(r.unref(H),{class:"q-chatbot__remove-image","b-style":"secondary",flat:"",round:"",onClick:_},{default:r.withCtx(()=>[r.createVNode(r.unref(G),{icon:"bin"})]),_:1})])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Es,[r.createVNode(r.unref(Tt),{label:m.texts.inputLabel},null,8,["label"]),r.createElementVNode("div",{class:r.normalizeClass(["q-chatbot__footer",b.value])},[r.createElementVNode("div",Ss,[r.createVNode(r.unref(Wr),{modelValue:o.value,"onUpdate:modelValue":k[0]||(k[0]=D=>o.value=D),size:"block",autosize:"",resize:"none",rows:2,disabled:g.value,onKeyup:r.withKeys($,["enter"])},null,8,["modelValue","disabled"])]),r.createElementVNode("div",Bs,[r.createVNode(r.unref(H),{title:m.texts.imageUpload,"b-style":"primary",class:"q-chatbot__upload",disabled:i.value||s.value||p.value,onClick:le},{default:r.withCtx(()=>[r.createVNode(r.unref(G),{icon:"upload"})]),_:1},8,["title","disabled"]),r.createElementVNode("input",{id:"image-upload",type:"file",ref_key:"imageInput",ref:f,onChange:v,accept:u.value,class:"hidden-input",style:{display:"none"}},null,40,ks),k[1]||(k[1]=r.createElementVNode("div",{class:"spacer"},null,-1)),r.createVNode(r.unref(H),{title:m.texts.sendMessage,"b-style":"primary",class:"q-chatbot__send",disabled:y.value,readonly:g.value,loading:s.value,onClick:$},{default:r.withCtx(()=>[r.createVNode(r.unref(G),{icon:"send"})]),_:1},8,["title","disabled","readonly","loading"])])],2)])]))}})});