@quidgest/chatbot 0.5.3 → 0.5.4
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/components/ChatBot/ChatBot.vue.d.ts +2 -0
- package/dist/components/ChatBot/__tests__/ChatBot.spec.d.ts +1 -0
- package/dist/components/ChatBot/types.d.ts +2 -1
- package/dist/components/ChatBotMessage/ChatBotMessage.vue.d.ts +3 -1
- package/dist/components/FieldPreview/FieldPreview.vue.d.ts +2 -0
- package/dist/composables/useChatApi.d.ts +1 -1
- package/dist/composables/useChatMessages.d.ts +1 -0
- package/dist/composables/useTexts.d.ts +4 -0
- package/dist/index.js +15 -15
- package/dist/index.mjs +1597 -2209
- package/dist/style.css +1 -1
- package/package.json +2 -2
- package/src/components/ChatBot/ChatBot.vue +57 -60
- package/src/components/ChatBot/__tests__/ChatBot.spec.ts +52 -0
- package/src/components/ChatBot/__tests__/__snapshots__/ChatBot.spec.ts.snap +39 -0
- package/src/components/ChatBot/types.ts +2 -1
- package/src/components/ChatBotMessage/ChatBotMessage.vue +5 -3
- package/src/components/ChatBotMessage/ChatBotMessageButtons.vue +1 -0
- package/src/components/ChatBotMessage/__tests__/ChatBotMessage.spec.ts +7 -3
- package/src/components/ChatBotMessage/__tests__/ChatBotMessageButtons.spec.ts +4 -4
- package/src/components/ChatToolBar/ChatToolBar.vue +2 -1
- package/src/components/ChatToolBar/__tests__/ChatToolBar.spec.ts +38 -18
- package/src/components/FieldPreview/FieldPreview.vue +31 -9
- package/src/components/FieldPreview/__tests__/__snapshots__/FieldPreview.spec.ts.snap +4 -10
- package/src/components/FieldPreview/field-preview.scss +4 -0
- package/src/components/MarkdownRender/MarkdownRender.vue +1 -0
- package/src/composables/__tests__/useChatMessages.spec.ts +14 -1
- package/src/composables/useChatApi.ts +57 -53
- package/src/composables/useChatMessages.ts +6 -1
- package/src/composables/useTexts.ts +4 -0
- package/src/test/setup.ts +5 -0
package/dist/index.js
CHANGED
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
(function(e,Y){typeof exports=="object"&&typeof module<"u"?module.exports=Y(require("vue"),require("axios"),require("markdown-it")):typeof define=="function"&&define.amd?define(["vue","axios","markdown-it"],Y):(e=typeof globalThis<"u"?globalThis:e||self,e.ChatBotFrontend=Y(e.vue,e.axios,e.MarkdownIt))})(this,function(e,Y,mt){"use strict";function he(t){return t==null?!0:typeof t=="string"||Array.isArray(t)?t.length===0:typeof t=="object"?Object.keys(t).length===0:!1}function De(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function ye(t={},o={}){const n={},a=new Set([...Object.keys(t),...Object.keys(o)]);for(const r of a){if(r==="__proto__"||r==="constructor"||r==="prototype")continue;const l=t[r],i=o[r];De(l)&&De(i)?n[r]=ye(l,i):n[r]=i!==void 0?i:l}return n}const Ie="q-defaults";function gt(){var t,o;const n=e.getCurrentInstance();if(!n)throw new Error("[Quidgest UI] useDefaults must be called from inside a setup function");const a=n.type.name??n.type.__name;if(!a)throw new Error("[Quidgest UI] Could not determine component name");const r=Ve(),l=(t=r.value)==null?void 0:t.Global,i=(o=r.value)==null?void 0:o[a];return e.computed(()=>ye(l,i))}function bt(t){if(he(t))return;const o=Ve(),n=e.ref(t),a=e.computed(()=>he(n.value)?o.value:ye(o.value,n.value));e.provide(Ie,a)}function Ve(){const t=e.inject(Ie,void 0);if(!t)throw new Error("[Quidgest UI] Could not find defaults instance");return t}const qe=Symbol.for("q-group");function ht(t){const o={active:e.ref(e.unref(t.multiple)?Array.isArray(e.unref(t.active))?e.unref(t.active):e.unref(t.active)!==void 0?[e.unref(t.active)]:[]:e.unref(t.active)),multiple:e.computed(()=>e.unref(t.multiple)||!1),required:e.computed(()=>e.unref(t.required)||!1)};return e.isRef(t.active)&&e.watch(t.active,n=>{o.active.value=n}),e.watch(()=>o.multiple.value,n=>{n&&o.active.value?o.active.value=[o.active.value]:n?o.active.value=[]:Array.isArray(o.active.value)&&o.active.value.length===1?o.active.value=o.active.value[0]:o.active.value=void 0}),e.provide(qe,o),o}function yt(t){const o=e.inject(qe,void 0);if(!o)return;const n=e.computed(()=>{var a;const r=e.unref(t);return Array.isArray(o.active.value)?(a=o.active.value)==null?void 0:a.includes(r):o.active.value===r});return{isActive:n,toggle:()=>{var a,r,l;const i=e.unref(t);Array.isArray(o.active.value)?n.value?(!((a=o.required)!=null&&a.value)||o.active.value.length>1)&&(o.active.value=(r=o.active.value)==null?void 0:r.filter(s=>s!==i)):o.active.value.push(i):o.active.value!==i?o.active.value=i:(l=o.required)!=null&&l.value||(o.active.value=void 0)}}}const Re={chevron:{icon:"chevron-down"}},kt=["id"],wt=e.defineComponent({__name:"QSpinnerLoader",props:{id:{},class:{},size:{default:48}},setup(t){const o=t,n=e.computed(()=>({"font-size":o.size!==48?`${o.size}px`:void 0}));return(a,r)=>(e.openBlock(),e.createElementBlock("div",{id:o.id,class:e.normalizeClass(["q-spinner-loader",o.class]),style:e.normalizeStyle(n.value)},null,14,kt))}});function Bt(t){return t.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 _t(t){return Bt(t).join("-").toLowerCase()}function xt(t,o){var n;const a=_t(o);return a?typeof((n=t.props)==null?void 0:n[a])<"u":!1}function P(t){const o=t,n=o.setup;return n&&(o.setup=(a,r)=>{const l=gt();if(he(l.value))return n(a,r);const i=e.getCurrentInstance();if(i===null)return n(a,r);const s=new Proxy(a,{get(u,d){var p;const c=Reflect.get(u,d),m=(p=l.value)==null?void 0:p[d];return typeof d=="string"&&!xt(i.vnode,d)?m??c:c}});return n(s,r)}),t}const Me=P(wt);function Ct(t,o=!1){return o?/^#[a-fA-F0-9]{6}$/.test(t):/^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/.test(t)}function Et(t){const o=t.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);if(o){const n=parseInt(o[1],10),a=parseInt(o[2],10),r=parseInt(o[3],10);return{r:n,g:a,b:r}}}function vt(t){if(Ct(t)){t.length===4&&(t="#"+t[1]+t[1]+t[2]+t[2]+t[3]+t[3]);const o=parseInt(t.slice(1,3),16),n=parseInt(t.slice(3,5),16),a=parseInt(t.slice(5,7),16);return{r:o,g:n,b:a}}else{const o=Et(t);if(o)return o}throw new Error("Invalid color format")}function $t(t,o){const n=Te(t),a=o/100;return n.l=n.l-a*n.l,Nt(n)}function St(t){const o=t.r.toString(16).padStart(2,"0"),n=t.g.toString(16).padStart(2,"0"),a=t.b.toString(16).padStart(2,"0");return`#${o}${n}${a}`}function Le(t){return`${t.r} ${t.g} ${t.b}`}function Te(t){const o=t.r/255,n=t.g/255,a=t.b/255,r=Math.max(o,n,a),l=Math.min(o,n,a);let i=0,s;const u=(r+l)/2;if(r===l)i=s=0;else{const d=r-l;switch(s=u>.5?d/(2-r-l):d/(r+l),r){case o:i=(n-a)/d+(n<a?6:0);break;case n:i=(a-o)/d+2;break;case a:i=(o-n)/d+4;break}i/=6}return{h:Math.round(i*360),s:Math.round(s*100),l:Math.round(u*100)}}function Nt(t){const o=t.h/360,n=t.s/100,a=t.l/100;let r,l,i;if(n===0)r=l=i=a;else{const s=a<.5?a*(1+n):a+n-a*n,u=2*a-s;r=ke(u,s,o+1/3),l=ke(u,s,o),i=ke(u,s,o-1/3)}return{r:Math.round(r*255),g:Math.round(l*255),b:Math.round(i*255)}}function ke(t,o,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+(o-t)*6*n:n<1/2?o:n<2/3?t+(o-t)*(2/3-n)*6:t}function At(t){return t>50?"#000":"#fff"}const Dt=Symbol.for("q-theme");function Fe(){const t=e.inject(Dt);if(!t)throw new Error("[Quidgest UI] Could not find theme instance");return t}function Pe(t){const o=e.computed(()=>e.unref(t)),n=e.computed(()=>o.value?!It(o.value):!1),a=e.computed(()=>{const r=o.value;if(!r)return;let l=r;const i=Fe();if(n.value){const m=r;l=i.current.value.scheme[m]??r}let s;try{if(s=vt(l),!s)return}catch(m){console.error("Failed to parse color:",m);return}const u=Te(s),d=At(u.l),p=$t(s,25),c=St(p);return{mainColor:l,mainColorRgb:Le(s),onMainColor:d,hoverColor:c,hoverColorRgb:Le(p),onHoverColor:d}});return{isUtilityColor:n,style:a}}function It(t){return t.startsWith("#")||t.startsWith("rgb")||t.startsWith("hsl")}const Vt=["id","disabled"],qt={key:0,class:"q-button__spinner"},Rt={class:"q-button__content"},j=P(e.defineComponent({__name:"QButton",props:{id:{},class:{},label:{},variant:{default:"outlined"},color:{default:"primary"},disabled:{type:Boolean},borderless:{type:Boolean},elevated:{type:Boolean},block:{type:Boolean},loading:{type:Boolean},size:{default:"regular"},iconPos:{default:"start"},pill:{type:Boolean}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>n.disabled||n.loading);function l(p){r.value||a("click",p)}const{isUtilityColor:i,style:s}=Pe(e.toRef(n,"color")),u=e.computed(()=>{const p=i.value?`q-button--${n.color}`:void 0,c=n.size!=="regular"?`q-button--${n.size}`:void 0,m=n.iconPos!=="start"?`q-button--icon-${n.iconPos}`:void 0;return["q-button",`q-button--${n.variant}`,p,c,m,{"q-button--borderless":n.borderless,"q-button--elevated":n.elevated,"q-button--block":n.block,"q-button--loading":n.loading,"q-button--pill":n.pill},n.class]}),d=e.computed(()=>{var p,c,m,_,B,v;if(!i.value)return{"--q-button-main-color":(p=s.value)==null?void 0:p.mainColor,"--q-button-main-color-rgb":(c=s.value)==null?void 0:c.mainColorRgb,"--q-button-on-main-color":(m=s.value)==null?void 0:m.onMainColor,"--q-button-hover-color":(_=s.value)==null?void 0:_.hoverColor,"--q-button-hover-color-rgb":(B=s.value)==null?void 0:B.hoverColorRgb,"--q-button-on-hover-color":(v=s.value)==null?void 0:v.onHoverColor}});return(p,c)=>(e.openBlock(),e.createElementBlock("button",{id:n.id,type:"button",class:e.normalizeClass(u.value),disabled:r.value,style:e.normalizeStyle(d.value),onClick:e.withModifiers(l,["stop","prevent"])},[n.loading?(e.openBlock(),e.createElementBlock("div",qt,[e.createVNode(e.unref(Me))])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",Rt,[e.renderSlot(p.$slots,"default"),e.createTextVNode(" "+e.toDisplayString(n.label),1)])],14,Vt))}})),Mt=e.defineComponent({__name:"QIcon",props:{id:{},class:{},icon:{},type:{default:"svg"},size:{},color:{}},setup(t){const o=t,n=e.computed(()=>{switch(o.type){case"svg":return Ht;case"font":return Gt;case"img":return Qt;default:return}}),{style:a}=Pe(e.toRef(o,"color")),r=e.computed(()=>{var l;return{"font-size":o.size!==void 0?`${o.size}px`:void 0,color:o.color!==void 0&&o.color!=="primary"?(l=a.value)==null?void 0:l.mainColor:void 0}});return(l,i)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{id:o.id,class:e.normalizeClass(o.class),icon:o.icon,style:e.normalizeStyle(r.value)},null,8,["id","class","icon","style"]))}}),Lt=["id"],Tt=e.defineComponent({__name:"QIconFont",props:{id:{},class:{},icon:{},library:{default:""},variant:{}},setup(t){const o=t,n=e.computed(()=>o.variant?`${o.library}-${o.variant}`:o.library),a=e.computed(()=>o.library&&o.icon?`${o.library}-${o.icon}`:o.icon);return(r,l)=>(e.openBlock(),e.createElementBlock("i",{id:o.id,class:e.normalizeClass(["q-icon","q-icon__font",n.value,a.value,o.class])},null,10,Lt))}}),Ft=["id","src"],Pt=e.defineComponent({__name:"QIconImg",props:{id:{},class:{},icon:{}},setup(t){const o=t;return(n,a)=>(e.openBlock(),e.createElementBlock("img",{id:o.id,src:o.icon,class:e.normalizeClass(["q-icon","q-icon__img",o.class])},null,10,Ft))}}),oe={},Ot=e.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:t=>typeof t=="object",unloaded:()=>!0,error:t=>typeof t=="object"},data(){return{svgElSource:null}},watch:{src(t){this.getSource(t)}},async mounted(){await this.getSource(this.src)},methods:{copySvgAttrs(t,o){const n=o.attributes;if(n)for(const a of n)t[a.name]=a.value},copyComponentAttrs(t,o){for(const[n,a]of Object.entries(o))a!==!1&&a!==null&&a!==void 0&&(t[n]=a)},getSvgContent(t){return this.symbol&&(t=t.getElementById(this.symbol),!t)?null:(this.transformSource&&(t=t.cloneNode(!0),t=this.transformSource(t)),this.title&&(this.transformSource||(t=t.cloneNode(!0)),zt(t,this.title)),t)},async getSource(t){try{oe[t]||(oe[t]=Ut(this.download(t))),this.svgElSource&&oe[t].getIsPending()&&!this.keepDuringLoading&&(this.svgElSource=null,this.$emit("unloaded"));const o=await oe[t];this.svgElSource=o,await this.$nextTick(),this.$emit("loaded",this.$el)}catch(o){this.svgElSource&&(this.svgElSource=null,this.$emit("unloaded")),delete oe[t],this.$emit("error",o)}},async download(t){const o=await fetch(t);if(!o.ok)throw new Error("Error loading SVG");const n=await o.text(),a=new DOMParser().parseFromString(n,"text/xml").getElementsByTagName("svg")[0];if(!a)throw new Error("Loaded file is not a valid SVG");return a}},render(){if(!this.svgElSource)return null;const t=this.getSvgContent(this.svgElSource);if(!t)return e.h("div",this.$attrs);const o={};return this.copySvgAttrs(o,this.svgElSource),this.copySvgAttrs(o,t),this.copyComponentAttrs(o,this.$attrs),o.innerHTML=t.innerHTML,e.h("svg",o)},expose:[]});function zt(t,o){const n=t.getElementsByTagName("title");if(n.length)n[0].textContent=o;else{const a=document.createElementNS("http://www.w3.org/2000/svg","title");a.textContent=o,t.insertBefore(a,t.firstChild)}}function Ut(t){if(t.getIsPending)return t;let o=!0;const n=t.then(a=>(o=!1,a),a=>{throw o=!1,a});return n.getIsPending=()=>o,n}const jt=e.defineComponent({__name:"QIconSvg",props:{id:{},class:{},icon:{},bundle:{default:""}},emits:["loaded","unloaded"],setup(t,{emit:o}){const n=t,a=o;function r(i){a("loaded",i)}function l(){a("unloaded")}return(i,s)=>(e.openBlock(),e.createBlock(e.unref(Ot),{id:n.id,class:e.normalizeClass(["q-icon","q-icon__svg",n.class]),src:n.bundle,symbol:n.icon,onLoaded:r,onUnloaded:l},null,8,["id","class","src","symbol"]))}}),z=P(Mt),Gt=P(Tt),Qt=P(Pt),Ht=P(jt),Wt=P(e.defineComponent({__name:"QChevron",props:e.mergeModels({id:{},class:{},icons:{default:()=>Re}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const o=t,n=e.useModel(t,"modelValue"),a=e.computed(()=>["q-chevron",{"q-chevron--expanded":n.value},o.class]);return(r,l)=>(e.openBlock(),e.createBlock(e.unref(z),e.mergeProps({id:o.id,class:a.value},o.icons.chevron),null,16,["id","class"]))}}));let Zt=0;function ae(t){return e.unref(t)||`uid-${++Zt}`}const Jt=["id"],Oe=P(e.defineComponent({__name:"QButtonGroup",props:{id:{},class:{},disabled:{type:Boolean},borderless:{type:Boolean},elevated:{type:Boolean}},setup(t){const o=t;return bt({QButton:{disabled:e.toRef(o,"disabled"),borderless:e.toRef(o,"borderless")}}),(n,a)=>(e.openBlock(),e.createElementBlock("div",{id:o.id,class:e.normalizeClass(["q-button-group",{"q-button-group--elevated":o.elevated},o.class]),role:"group"},[e.renderSlot(n.$slots,"default")],10,Jt))}})),Yt=["id"],Xt=["for"],ze=P(e.defineComponent({inheritAttrs:!1,__name:"QLabel",props:{id:{},class:{},label:{},for:{},required:{type:Boolean}},setup(t){const o=t,n=e.computed(()=>["q-label",{"q-label--required":o.required},o.class]);return(a,r)=>(e.openBlock(),e.createElementBlock("div",{id:o.id,class:e.normalizeClass(n.value)},[e.renderSlot(a.$slots,"prepend"),e.createElementVNode("label",e.mergeProps({for:o.for},a.$attrs),[e.renderSlot(a.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(o.label),1)])],16,Xt),e.renderSlot(a.$slots,"append")],10,Yt))}})),Kt=["id"],en={key:0,class:"q-field__prepend"},tn={key:1,class:"q-field__append"},nn={key:1,class:"q-field__extras"},we=P(e.defineComponent({inheritAttrs:!1,__name:"QField",props:{id:{},class:{},label:{},for:{},required:{type:Boolean},size:{default:"medium"},readonly:{type:Boolean},disabled:{type:Boolean},invalid:{type:Boolean}},setup(t,{expose:o}){const n=t,a=e.useTemplateRef("field"),r=e.computed(()=>n.required&&!n.readonly&&!n.disabled),l=e.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 o({fieldRef:a}),(i,s)=>(e.openBlock(),e.createElementBlock("div",{id:n.id,class:e.normalizeClass(l.value)},[n.label?(e.openBlock(),e.createBlock(e.unref(ze),{key:0,class:"q-field__label",label:n.label,for:n.for,required:n.required},{prepend:e.withCtx(()=>[e.renderSlot(i.$slots,"label.prepend")]),append:e.withCtx(()=>[e.renderSlot(i.$slots,"label.append")]),_:3},8,["label","for","required"])):e.createCommentVNode("v-if",!0),e.renderSlot(i.$slots,"control",{},()=>[e.createElementVNode("div",e.mergeProps({ref:"field",class:"q-field__control"},i.$attrs),[i.$slots.prepend?(e.openBlock(),e.createElementBlock("div",en,[e.renderSlot(i.$slots,"prepend")])):e.createCommentVNode("v-if",!0),e.renderSlot(i.$slots,"default"),i.$slots.append?(e.openBlock(),e.createElementBlock("div",tn,[e.renderSlot(i.$slots,"append")])):e.createCommentVNode("v-if",!0)],16)]),i.$slots.extras?(e.openBlock(),e.createElementBlock("div",nn,[e.renderSlot(i.$slots,"extras")])):e.createCommentVNode("v-if",!0)],10,Kt))}})),Ue={clearValue:"Clear value"},je={clear:{icon:"close"}},Ge=P(e.defineComponent({__name:"QClearButton",props:{id:{},class:{},icons:{default:()=>je},texts:{default:()=>Ue}},emits:["click"],setup(t,{emit:o}){const n=t,a=o;function r(l){a("click",l)}return(l,i)=>(e.openBlock(),e.createBlock(e.unref(j),{id:n.id,class:e.normalizeClass(["q-clear-btn",n.class]),"aria-label":n.texts.clearValue,variant:"ghost",color:"neutral",borderless:"",tabindex:"-1",onClick:r},{default:e.withCtx(()=>[e.createVNode(e.unref(z),e.normalizeProps(e.guardReactiveProps(n.icons.clear)),null,16)]),_:1},8,["id","class","aria-label"]))}})),on=["id","type","maxlength","required","placeholder","readonly","disabled"],an=P(e.defineComponent({inheritAttrs:!1,__name:"QTextField",props:e.mergeModels({id:{},class:{},label:{},for:{},required:{type:Boolean},size:{},readonly:{type:Boolean},disabled:{type:Boolean},invalid:{type:Boolean},placeholder:{},maxLength:{},clearable:{type:Boolean},type:{default:"text"},texts:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["click:clear"],["update:modelValue"]),setup(t,{expose:o,emit:n}){const a=t,r=n,l=e.useModel(t,"modelValue"),i=e.computed({get:()=>l.value,set:B=>{const v=a.maxLength;l.value=v?B==null?void 0:B.slice(0,v):B}});e.watch(l,B=>i.value=B,{immediate:!0});const s=ae(a.id),u=e.ref(null),d=e.ref(null),p=e.computed(()=>a.readonly||a.disabled?void 0:a.placeholder),c=e.computed(()=>a.clearable&&!a.readonly&&!a.disabled),m=e.computed(()=>c.value&&l.value);function _(B){c.value&&(l.value="",r("click:clear",B))}return o({fieldRef:e.computed(()=>{var B;return(B=u.value)==null?void 0:B.fieldRef}),inputRef:d}),(B,v)=>(e.openBlock(),e.createBlock(e.unref(we),{ref_key:"fieldRef",ref:u,class:e.normalizeClass(["q-text-field",a.class]),for:e.unref(s),label:a.label,size:a.size,readonly:a.readonly,disabled:a.disabled,required:a.required,invalid:a.invalid},e.createSlots({"label.prepend":e.withCtx(()=>[e.renderSlot(B.$slots,"label.prepend")]),"label.append":e.withCtx(()=>[e.renderSlot(B.$slots,"label.append")]),default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("input",e.mergeProps({id:e.unref(s),ref_key:"inputRef",ref:d,"onUpdate:modelValue":v[0]||(v[0]=S=>i.value=S),class:"q-text-field__input",type:a.type,maxlength:a.maxLength,required:a.required,placeholder:p.value,readonly:a.readonly,disabled:a.disabled},B.$attrs),null,16,on),[[e.vModelDynamic,i.value]])]),_:2},[B.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>[e.renderSlot(B.$slots,"prepend")]),key:"0"}:void 0,B.$slots.append||m.value?{name:"append",fn:e.withCtx(()=>[e.renderSlot(B.$slots,"append"),m.value?(e.openBlock(),e.createBlock(e.unref(Ge),{key:0,"data-testid":"q-text-field__clear-button",texts:a.texts,onClick:_},null,8,["texts"])):e.createCommentVNode("v-if",!0)]),key:"1"}:void 0,B.$slots.extras?{name:"extras",fn:e.withCtx(()=>[e.renderSlot(B.$slots,"extras")]),key:"2"}:void 0]),1032,["class","for","label","size","readonly","disabled","required","invalid"]))}})),ln=e.defineComponent({__name:"QList",props:e.mergeModels({id:{},class:{},highlighted:{},items:{},groups:{default:()=>[]},itemValue:{default:"key"},itemLabel:{default:"label"},disabled:{type:Boolean},selectable:{type:Boolean},multiple:{type:Boolean},required:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["click"],["update:modelValue"]),setup(t,{expose:o,emit:n}){const a=t,r=n,l=e.useModel(t,"modelValue"),i=e.ref(!1),s=e.computed(()=>u.value.length>1?"div":"ul"),u=e.computed(()=>a.groups.length?a.groups.filter(b=>{var x;return(x=a.items)==null?void 0:x.some(w=>w.group===b.id)}):[{id:"",title:""}]),{active:d}=ht({active:l,required:e.toRef(a,"required"),multiple:e.toRef(a,"multiple")}),p=e.ref(null),c=e.ref(null);function m(b){r("click",b)}function _(){i.value=!0}function B(){i.value=!1}function v(b){var x;if(!a.items||(x=p.value)!=null&&x.contains(b.relatedTarget))return;let w;l.value?w=a.items.findIndex(y=>y[a.itemValue]===l.value):w=k();const h=i.value;D(w,h)}const S=e.ref("");let T;function q(b){var x;switch(window.clearTimeout(T),["ArrowDown","ArrowUp","Home","End"].includes(b.key)&&b.preventDefault(),b.key){case"ArrowDown":I("next");break;case"ArrowUp":I("prev");break;case"Home":I("first");break;case"End":I("last");break}if(/^[a-z]$/i.test(b.key)){S.value+=b.key.toLowerCase();const w=((x=a.items)==null?void 0:x.length)||0;for(let h=0;h<w;h++)if(a.items[h][a.itemLabel].toLowerCase().startsWith(S.value)){D(h);break}b.preventDefault(),b.stopPropagation()}T=window.setTimeout(function(){S.value=""},500)}function I(b){switch(b){case"next":case"prev":D(f(b));break;case"first":D(k());break;case"last":D(V());break}}function D(b,x=!1){var w;(w=R()[b])==null||w.focus({preventScroll:x})}function R(){var b;const x=(b=p.value)==null?void 0:b.querySelectorAll("li");return x?Array.from(x):[]}function E(b){return R()[b]}function M(){return R().indexOf(document.activeElement)}function k(){const b=R(),x=b.find(w=>C(w));return x?b.indexOf(x):-1}function V(){const b=R(),x=[...b].reverse().find(w=>C(w));return x?b.indexOf(x):-1}function F(b,x,w){return x==="prev"&&b<=0||x==="next"&&b===w.length-1}function f(b){const x=M();return g(x,b)}function g(b,x){const w=R();if(F(b,x,w))return b;let h=b+(x==="next"?1:-1);for(;!C(w[h]);){if(F(h,x,w))return b;h+=x==="next"?1:-1}return h}function C(b){return b.tabIndex===-2}function A(b){var x;return b?(x=a.items)==null?void 0:x.filter(w=>w.group===b):a.items}return e.watch(d,b=>{l.value=b},{deep:!0}),o({getItem:E,getAdjacentItemIndex:g,getFirstFocusableItemIndex:k,getLastFocusableItemIndex:V}),(b,x)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.value),{id:a.id,ref_key:"listRef",ref:p,class:e.normalizeClass(["q-list",{"q-list--disabled":a.disabled},a.class]),role:"listbox",tabindex:a.disabled?-1:0,onFocus:v,onMousedown:_,onMouseup:B,onKeydown:q},{default:e.withCtx(()=>[e.renderSlot(b.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(w,h)=>(e.openBlock(),e.createBlock(e.unref(kn),{id:w.id,key:w.id,title:u.value.length===1?void 0:w.title},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A(w.id),(y,N)=>(e.openBlock(),e.createBlock(e.unref(yn),{key:y[a.itemValue],ref_for:!0,ref_key:"listItemsRef",ref:c,value:y[a.itemValue],label:y[a.itemLabel],description:y.description,icon:y.icon,disabled:a.disabled||w.disabled||y.disabled,highlighted:a.highlighted===y[a.itemValue],selectable:a.selectable||a.multiple||y.selectable,onClick:()=>m(y[a.itemValue])},{append:e.withCtx(()=>{var O,L;return[e.renderSlot(b.$slots,"item.append",{item:y,element:(L=(O=c.value)==null?void 0:O[N+h*u.value.length])==null?void 0:L.$el})]}),default:e.withCtx(()=>{var O,L;return[e.renderSlot(b.$slots,"item",{item:y,element:(L=(O=c.value)==null?void 0:O[N+h*u.value.length])==null?void 0:L.$el})]}),_:2},1032,["value","label","description","icon","disabled","highlighted","selectable","onClick"]))),128))]),_:2},1032,["id","title"]))),128))])]),_:3},40,["id","class","tabindex"]))}}),rn={check:{icon:"check"},description:{icon:"information-outline"}},sn=["id","data-key","tabindex","aria-label","aria-selected"],cn={class:"q-list-item__container"},dn={class:"q-list-item__content"},un={key:0,class:"q-list-item__description"},pn={key:0,class:"q-list-item__check-container"},fn=e.defineComponent({__name:"QListItem",props:e.mergeModels({value:{},label:{},icon:{},selectable:{type:Boolean},highlighted:{type:Boolean},disabled:{type:Boolean},description:{},icons:{default:()=>rn}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:e.mergeModels(["click"],["update:modelValue"]),setup(t,{emit:o}){const n=t,a=o,r=e.useModel(t,"modelValue"),l=ae(),i=yt(n.value);if(!i)throw new Error("QListItem: Failed to retrieve group item. Ensure the component is used within a QList context.");function s(){n.disabled||(a("click"),n.selectable&&(i==null||i.toggle()))}function u(d){d.key==="Tab"&&s(),(d.key==="Enter"||d.key===" ")&&(d.preventDefault(),d.stopPropagation(),s())}return e.watch(i.isActive,d=>{r.value=d},{immediate:!0}),(d,p)=>(e.openBlock(),e.createElementBlock("li",{id:e.unref(l),"data-key":n.value,role:"option",tabindex:n.disabled?void 0:-2,class:e.normalizeClass(["q-list-item",{"q-list-item--selected":r.value,"q-list-item--selectable":n.selectable,"q-list-item--disabled":n.disabled,"q-list-item--highlighted":n.highlighted}]),"aria-label":n.label,"aria-selected":n.disabled?void 0:r.value,onKeydown:u,onClick:e.withModifiers(s,["stop","prevent"])},[e.renderSlot(d.$slots,"prepend"),e.createElementVNode("div",cn,[e.createElementVNode("div",dn,[e.renderSlot(d.$slots,"default",{},()=>[n.icon?(e.openBlock(),e.createBlock(e.unref(z),e.normalizeProps(e.mergeProps({key:0},n.icon)),null,16)):e.createCommentVNode("v-if",!0),e.createTextVNode(" "+e.toDisplayString(n.label),1)])]),n.description?(e.openBlock(),e.createElementBlock("div",un,[e.createVNode(e.unref(z),e.normalizeProps(e.guardReactiveProps(n.icons.description)),null,16),e.createElementVNode("span",null,e.toDisplayString(n.description),1)])):e.createCommentVNode("v-if",!0)]),e.renderSlot(d.$slots,"append"),n.selectable?(e.openBlock(),e.createElementBlock("div",pn,[r.value?(e.openBlock(),e.createBlock(e.unref(z),e.mergeProps({key:0},n.icons.check,{class:"q-list-item__check"}),null,16)):e.createCommentVNode("v-if",!0)])):e.createCommentVNode("v-if",!0)],42,sn))}}),mn=["data-key","aria-labelledby"],gn=["id"],bn=e.defineComponent({__name:"QListItemGroup",props:{id:{},title:{}},setup(t){const o=t,n=ae();return(a,r)=>(e.openBlock(),e.createElementBlock("ul",{class:"q-list-item-group",role:"group","data-key":o.id,"aria-labelledby":o.title?e.unref(n):void 0},[o.title?(e.openBlock(),e.createElementBlock("li",{key:0,id:e.unref(n),class:"q-list-item-group__title",role:"presentation"},e.toDisplayString(o.title),9,gn)):e.createCommentVNode("v-if",!0),e.renderSlot(a.$slots,"default")],8,mn))}}),hn=P(ln),yn=P(fn),kn=P(bn),wn=Symbol("DismissibleLayer");function Bn(t){const o=e.inject(wn);if(!o)throw new Error("useDismissibleLayerStackItem must be used within a dismissible layer stack context.");return{register:()=>o.register(t),unregister:()=>o.unregister(t),isTop:()=>o.isTop(t)}}const _n={ref:"layer"},xn=P(e.defineComponent({__name:"QDismissibleLayer",emits:["escape-key-down","pointer-down-outside","focus-outside","interact-outside","dismiss"],setup(t,{emit:o}){const n=o,a=e.useTemplateRef("layer"),r=e.useId(),l=Bn(r);let i=[];function s(c){c.key==="Escape"&&l!=null&&l.isTop()&&(n("escape-key-down",c),c.defaultPrevented||n("dismiss",c))}function u(c){if(!a.value)return;const m=c.target;if(!a.value.contains(m)&&l!=null&&l.isTop()){const _=new CustomEvent("focus-outside",{bubbles:!1,cancelable:!0,detail:{originalEvent:c}});n("focus-outside",_),n("interact-outside",_),_.defaultPrevented||n("dismiss",_)}}function d(c){if(!a.value||!(l!=null&&l.isTop()))return;const m=c.target;if(!a.value.contains(m)){const _=new CustomEvent("pointer-down-outside",{bubbles:!1,cancelable:!0,detail:{originalEvent:c}});n("pointer-down-outside",_),n("interact-outside",_),_.defaultPrevented||n("dismiss",_)}}function p(){["mousedown","touchstart"].forEach(c=>{document.addEventListener(c,d,{passive:!0,capture:!0}),i.push(()=>{document.removeEventListener(c,d,{capture:!0})})})}return e.onMounted(()=>{l==null||l.register(),document.addEventListener("keydown",s),i.push(()=>{document.removeEventListener("keydown",s)}),document.addEventListener("focusin",u),i.push(()=>{document.removeEventListener("focusin",u)}),p()}),e.onUnmounted(()=>{l==null||l.unregister(),i.forEach(c=>c()),i=[]}),(c,m)=>(e.openBlock(),e.createElementBlock("div",_n,[e.renderSlot(c.$slots,"default")],512))}}));function Cn(t){return e.getCurrentScope()?(e.onScopeDispose(t),!0):!1}const En=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const vn=()=>{};function Qe(...t){if(t.length!==1)return e.toRef(...t);const o=t[0];return typeof o=="function"?e.readonly(e.customRef(()=>({get:o,set:vn}))):e.ref(o)}const Be=En?window:void 0;function _e(t){var o;const n=e.toValue(t);return(o=n==null?void 0:n.$el)!=null?o:n}function $n(){const t=e.shallowRef(!1),o=e.getCurrentInstance();return o&&e.onMounted(()=>{t.value=!0},o),t}function Sn(t){const o=$n();return e.computed(()=>(o.value,!!t()))}function Nn(t,o,n={}){const{window:a=Be,...r}=n;let l;const i=Sn(()=>a&&"ResizeObserver"in a),s=()=>{l&&(l.disconnect(),l=void 0)},u=e.computed(()=>{const c=e.toValue(t);return Array.isArray(c)?c.map(m=>_e(m)):[_e(c)]}),d=e.watch(u,c=>{if(s(),i.value&&a){l=new ResizeObserver(o);for(const m of c)m&&l.observe(m,r)}},{immediate:!0,flush:"post"}),p=()=>{s(),d()};return Cn(p),{isSupported:i,stop:p}}function An(t=Be,o){t&&typeof t.requestAnimationFrame=="function"?t.requestAnimationFrame(o):o()}function Dn(t={}){var o,n;const{window:a=Be}=t,r=Qe(t==null?void 0:t.element),l=Qe((o=t==null?void 0:t.input)!=null?o:""),i=(n=t==null?void 0:t.styleProp)!=null?n:"height",s=e.shallowRef(1),u=e.shallowRef(0);function d(){var p;if(!r.value)return;let c="";r.value.style[i]="1px",s.value=(p=r.value)==null?void 0:p.scrollHeight;const m=e.toValue(t==null?void 0:t.styleTarget);m?m.style[i]=`${s.value}px`:c=`${s.value}px`,r.value.style[i]=c}return e.watch([l,r],()=>e.nextTick(d),{immediate:!0}),e.watch(s,()=>{var p;return(p=t==null?void 0:t.onResize)==null?void 0:p.call(t)}),Nn(r,([{contentRect:p}])=>{u.value!==p.width&&An(a,()=>{u.value=p.width,d()})}),t!=null&&t.watch&&e.watch(t.watch,d,{immediate:!0,deep:!0}),{textarea:r,input:l,triggerResize:d}}/*!
|
|
1
|
+
(function(e,K){typeof exports=="object"&&typeof module<"u"?module.exports=K(require("vue"),require("axios"),require("markdown-it")):typeof define=="function"&&define.amd?define(["vue","axios","markdown-it"],K):(e=typeof globalThis<"u"?globalThis:e||self,e.ChatBotFrontend=K(e.vue,e.axios,e.MarkdownIt))})(this,function(e,K,st){"use strict";function he(t){return t==null?!0:typeof t=="string"||Array.isArray(t)?t.length===0:typeof t=="object"?Object.keys(t).length===0:!1}function Ae(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function ye(t={},o={}){const n={},a=new Set([...Object.keys(t),...Object.keys(o)]);for(const l of a){if(l==="__proto__"||l==="constructor"||l==="prototype")continue;const r=t[l],i=o[l];Ae(r)&&Ae(i)?n[l]=ye(r,i):n[l]=i!==void 0?i:r}return n}const Ie="q-defaults";function ct(){var t,o;const n=e.getCurrentInstance();if(!n)throw new Error("[Quidgest UI] useDefaults must be called from inside a setup function");const a=n.type.name??n.type.__name;if(!a)throw new Error("[Quidgest UI] Could not determine component name");const l=De(),r=(t=l.value)==null?void 0:t.Global,i=(o=l.value)==null?void 0:o[a];return e.computed(()=>ye(r,i))}function dt(t){if(he(t))return;const o=De(),n=e.ref(t),a=e.computed(()=>he(n.value)?o.value:ye(o.value,n.value));e.provide(Ie,a)}function De(){const t=e.inject(Ie,void 0);if(!t)throw new Error("[Quidgest UI] Could not find defaults instance");return t}const ut=["id"],pt=e.defineComponent({__name:"QSpinnerLoader",props:{id:{},class:{},size:{default:48}},setup(t){const o=t,n=e.computed(()=>({"font-size":o.size!==48?`${o.size}px`:void 0}));return(a,l)=>(e.openBlock(),e.createElementBlock("div",{id:o.id,class:e.normalizeClass(["q-spinner-loader",o.class]),style:e.normalizeStyle(n.value)},null,14,ut))}});function ft(t){return t.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 mt(t){return ft(t).join("-").toLowerCase()}function gt(t,o){var n;const a=mt(o);return a?typeof((n=t.props)==null?void 0:n[a])<"u":!1}function T(t){const o=t,n=o.setup;return n&&(o.setup=(a,l)=>{const r=ct();if(he(r.value))return n(a,l);const i=e.getCurrentInstance();if(i===null)return n(a,l);const s=new Proxy(a,{get(u,d){var f;const c=Reflect.get(u,d),m=(f=r.value)==null?void 0:f[d];return typeof d=="string"&&!gt(i.vnode,d)?m??c:c}});return n(s,l)}),t}const bt=T(pt);function ht(t,o=!1){return o?/^#[a-fA-F0-9]{6}$/.test(t):/^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/.test(t)}function yt(t){const o=t.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);if(o){const n=parseInt(o[1],10),a=parseInt(o[2],10),l=parseInt(o[3],10);return{r:n,g:a,b:l}}}function wt(t){if(ht(t)){t.length===4&&(t="#"+t[1]+t[1]+t[2]+t[2]+t[3]+t[3]);const o=parseInt(t.slice(1,3),16),n=parseInt(t.slice(3,5),16),a=parseInt(t.slice(5,7),16);return{r:o,g:n,b:a}}else{const o=yt(t);if(o)return o}throw new Error("Invalid color format")}function kt(t,o){const n=Re(t),a=o/100;return n.l=n.l-a*n.l,_t(n)}function Bt(t){const o=t.r.toString(16).padStart(2,"0"),n=t.g.toString(16).padStart(2,"0"),a=t.b.toString(16).padStart(2,"0");return`#${o}${n}${a}`}function Ve(t){return`${t.r} ${t.g} ${t.b}`}function Re(t){const o=t.r/255,n=t.g/255,a=t.b/255,l=Math.max(o,n,a),r=Math.min(o,n,a);let i=0,s;const u=(l+r)/2;if(l===r)i=s=0;else{const d=l-r;switch(s=u>.5?d/(2-l-r):d/(l+r),l){case o:i=(n-a)/d+(n<a?6:0);break;case n:i=(a-o)/d+2;break;case a:i=(o-n)/d+4;break}i/=6}return{h:Math.round(i*360),s:Math.round(s*100),l:Math.round(u*100)}}function _t(t){const o=t.h/360,n=t.s/100,a=t.l/100;let l,r,i;if(n===0)l=r=i=a;else{const s=a<.5?a*(1+n):a+n-a*n,u=2*a-s;l=we(u,s,o+1/3),r=we(u,s,o),i=we(u,s,o-1/3)}return{r:Math.round(l*255),g:Math.round(r*255),b:Math.round(i*255)}}function we(t,o,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+(o-t)*6*n:n<1/2?o:n<2/3?t+(o-t)*(2/3-n)*6:t}function Ct(t){return t>50?"#000":"#fff"}const xt=Symbol.for("q-theme");function Me(){const t=e.inject(xt);if(!t)throw new Error("[Quidgest UI] Could not find theme instance");return t}function Le(t){const o=e.computed(()=>e.unref(t)),n=e.computed(()=>o.value?!Et(o.value):!1),a=e.computed(()=>{const l=o.value;if(!l)return;let r=l;const i=Me();if(n.value){const m=l;r=i.current.value.scheme[m]??l}let s;try{if(s=wt(r),!s)return}catch(m){console.error("Failed to parse color:",m);return}const u=Re(s),d=Ct(u.l),f=kt(s,25),c=Bt(f);return{mainColor:r,mainColorRgb:Ve(s),onMainColor:d,hoverColor:c,hoverColorRgb:Ve(f),onHoverColor:d}});return{isUtilityColor:n,style:a}}function Et(t){return t.startsWith("#")||t.startsWith("rgb")||t.startsWith("hsl")}const vt=["id","disabled"],St={key:0,class:"q-button__spinner"},$t={class:"q-button__content"},j=T(e.defineComponent({__name:"QButton",props:{id:{},class:{},label:{},variant:{default:"outlined"},color:{default:"primary"},disabled:{type:Boolean},borderless:{type:Boolean},elevated:{type:Boolean},block:{type:Boolean},loading:{type:Boolean},size:{default:"regular"},iconPos:{default:"start"},pill:{type:Boolean}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,l=e.computed(()=>n.disabled||n.loading);function r(f){l.value||a("click",f)}const{isUtilityColor:i,style:s}=Le(e.toRef(n,"color")),u=e.computed(()=>{const f=i.value?`q-button--${n.color}`:void 0,c=n.size!=="regular"?`q-button--${n.size}`:void 0,m=n.iconPos!=="start"?`q-button--icon-${n.iconPos}`:void 0;return["q-button",`q-button--${n.variant}`,f,c,m,{"q-button--borderless":n.borderless,"q-button--elevated":n.elevated,"q-button--block":n.block,"q-button--loading":n.loading,"q-button--pill":n.pill},n.class]}),d=e.computed(()=>{var f,c,m,h,b,w;if(!i.value)return{"--q-button-main-color":(f=s.value)==null?void 0:f.mainColor,"--q-button-main-color-rgb":(c=s.value)==null?void 0:c.mainColorRgb,"--q-button-on-main-color":(m=s.value)==null?void 0:m.onMainColor,"--q-button-hover-color":(h=s.value)==null?void 0:h.hoverColor,"--q-button-hover-color-rgb":(b=s.value)==null?void 0:b.hoverColorRgb,"--q-button-on-hover-color":(w=s.value)==null?void 0:w.onHoverColor}});return(f,c)=>(e.openBlock(),e.createElementBlock("button",{id:n.id,type:"button",class:e.normalizeClass(u.value),disabled:l.value,style:e.normalizeStyle(d.value),onClick:e.withModifiers(r,["stop","prevent"])},[n.loading?(e.openBlock(),e.createElementBlock("div",St,[e.createVNode(e.unref(bt))])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",$t,[e.renderSlot(f.$slots,"default"),e.createTextVNode(" "+e.toDisplayString(n.label),1)])],14,vt))}})),Nt=e.defineComponent({__name:"QIcon",props:{id:{},class:{},icon:{},type:{default:"svg"},size:{},color:{}},setup(t){const o=t,n=e.computed(()=>{switch(o.type){case"svg":return Pt;case"font":return Tt;case"img":return Ft;default:return}}),{style:a}=Le(e.toRef(o,"color")),l=e.computed(()=>{var r;return{"font-size":o.size!==void 0?`${o.size}px`:void 0,color:o.color!==void 0&&o.color!=="primary"?(r=a.value)==null?void 0:r.mainColor:void 0}});return(r,i)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{id:o.id,class:e.normalizeClass(o.class),icon:o.icon,style:e.normalizeStyle(l.value)},null,8,["id","class","icon","style"]))}}),At=["id"],It=e.defineComponent({__name:"QIconFont",props:{id:{},class:{},icon:{},library:{default:""},variant:{}},setup(t){const o=t,n=e.computed(()=>o.variant?`${o.library}-${o.variant}`:o.library),a=e.computed(()=>o.library&&o.icon?`${o.library}-${o.icon}`:o.icon);return(l,r)=>(e.openBlock(),e.createElementBlock("i",{id:o.id,class:e.normalizeClass(["q-icon","q-icon__font",n.value,a.value,o.class])},null,10,At))}}),Dt=["id","src"],Vt=e.defineComponent({__name:"QIconImg",props:{id:{},class:{},icon:{}},setup(t){const o=t;return(n,a)=>(e.openBlock(),e.createElementBlock("img",{id:o.id,src:o.icon,class:e.normalizeClass(["q-icon","q-icon__img",o.class])},null,10,Dt))}}),ae={},Rt=e.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:t=>typeof t=="object",unloaded:()=>!0,error:t=>typeof t=="object"},data(){return{svgElSource:null}},watch:{src(t){this.getSource(t)}},async mounted(){await this.getSource(this.src)},methods:{copySvgAttrs(t,o){const n=o.attributes;if(n)for(const a of n)t[a.name]=a.value},copyComponentAttrs(t,o){for(const[n,a]of Object.entries(o))a!==!1&&a!==null&&a!==void 0&&(t[n]=a)},getSvgContent(t){return this.symbol&&(t=t.getElementById(this.symbol),!t)?null:(this.transformSource&&(t=t.cloneNode(!0),t=this.transformSource(t)),this.title&&(this.transformSource||(t=t.cloneNode(!0)),Mt(t,this.title)),t)},async getSource(t){try{ae[t]||(ae[t]=Lt(this.download(t))),this.svgElSource&&ae[t].getIsPending()&&!this.keepDuringLoading&&(this.svgElSource=null,this.$emit("unloaded"));const o=await ae[t];this.svgElSource=o,await this.$nextTick(),this.$emit("loaded",this.$el)}catch(o){this.svgElSource&&(this.svgElSource=null,this.$emit("unloaded")),delete ae[t],this.$emit("error",o)}},async download(t){const o=await fetch(t);if(!o.ok)throw new Error("Error loading SVG");const n=await o.text(),a=new DOMParser().parseFromString(n,"text/xml").getElementsByTagName("svg")[0];if(!a)throw new Error("Loaded file is not a valid SVG");return a}},render(){if(!this.svgElSource)return null;const t=this.getSvgContent(this.svgElSource);if(!t)return e.h("div",this.$attrs);const o={};return this.copySvgAttrs(o,this.svgElSource),this.copySvgAttrs(o,t),this.copyComponentAttrs(o,this.$attrs),o.innerHTML=t.innerHTML,e.h("svg",o)},expose:[]});function Mt(t,o){const n=t.getElementsByTagName("title");if(n.length)n[0].textContent=o;else{const a=document.createElementNS("http://www.w3.org/2000/svg","title");a.textContent=o,t.insertBefore(a,t.firstChild)}}function Lt(t){if(t.getIsPending)return t;let o=!0;const n=t.then(a=>(o=!1,a),a=>{throw o=!1,a});return n.getIsPending=()=>o,n}const qt=e.defineComponent({__name:"QIconSvg",props:{id:{},class:{},icon:{},bundle:{default:""}},emits:["loaded","unloaded"],setup(t,{emit:o}){const n=t,a=o;function l(i){a("loaded",i)}function r(){a("unloaded")}return(i,s)=>(e.openBlock(),e.createBlock(e.unref(Rt),{id:n.id,class:e.normalizeClass(["q-icon","q-icon__svg",n.class]),src:n.bundle,symbol:n.icon,onLoaded:l,onUnloaded:r},null,8,["id","class","src","symbol"]))}}),F=T(Nt),Tt=T(It),Ft=T(Vt),Pt=T(qt);let Ot=0;function ke(t){return e.unref(t)||`uid-${++Ot}`}const Ut=["id"],qe=T(e.defineComponent({__name:"QButtonGroup",props:{id:{},class:{},disabled:{type:Boolean},borderless:{type:Boolean},elevated:{type:Boolean}},setup(t){const o=t;return dt({QButton:{disabled:e.toRef(o,"disabled"),borderless:e.toRef(o,"borderless")}}),(n,a)=>(e.openBlock(),e.createElementBlock("div",{id:o.id,class:e.normalizeClass(["q-button-group",{"q-button-group--elevated":o.elevated},o.class]),role:"group"},[e.renderSlot(n.$slots,"default")],10,Ut))}})),zt=["id"],jt=["for"],Te=T(e.defineComponent({inheritAttrs:!1,__name:"QLabel",props:{id:{},class:{},label:{},for:{},required:{type:Boolean}},setup(t){const o=t,n=e.computed(()=>["q-label",{"q-label--required":o.required},o.class]);return(a,l)=>(e.openBlock(),e.createElementBlock("div",{id:o.id,class:e.normalizeClass(n.value)},[e.renderSlot(a.$slots,"prepend"),e.createElementVNode("label",e.mergeProps({for:o.for},a.$attrs),[e.renderSlot(a.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(o.label),1)])],16,jt),e.renderSlot(a.$slots,"append")],10,zt))}})),Gt=["id"],Ht={key:0,class:"q-field__prepend"},Qt={key:1,class:"q-field__append"},Zt={key:1,class:"q-field__extras"},Fe=T(e.defineComponent({inheritAttrs:!1,__name:"QField",props:{id:{},class:{},label:{},for:{},required:{type:Boolean},size:{default:"medium"},readonly:{type:Boolean},disabled:{type:Boolean},invalid:{type:Boolean}},setup(t,{expose:o}){const n=t,a=e.useTemplateRef("field"),l=e.computed(()=>n.required&&!n.readonly&&!n.disabled),r=e.computed(()=>["q-field",`q-field--${n.size}`,{"q-field--readonly":n.readonly,"q-field--disabled":n.disabled,"q-field--required":l.value,"q-field--invalid":n.invalid},n.class]);return o({fieldRef:a}),(i,s)=>(e.openBlock(),e.createElementBlock("div",{id:n.id,class:e.normalizeClass(r.value)},[n.label?(e.openBlock(),e.createBlock(e.unref(Te),{key:0,class:"q-field__label",label:n.label,for:n.for,required:n.required},{prepend:e.withCtx(()=>[e.renderSlot(i.$slots,"label.prepend")]),append:e.withCtx(()=>[e.renderSlot(i.$slots,"label.append")]),_:3},8,["label","for","required"])):e.createCommentVNode("v-if",!0),e.renderSlot(i.$slots,"control",{},()=>[e.createElementVNode("div",e.mergeProps({ref:"field",class:"q-field__control"},i.$attrs),[i.$slots.prepend?(e.openBlock(),e.createElementBlock("div",Ht,[e.renderSlot(i.$slots,"prepend")])):e.createCommentVNode("v-if",!0),e.renderSlot(i.$slots,"default"),i.$slots.append?(e.openBlock(),e.createElementBlock("div",Qt,[e.renderSlot(i.$slots,"append")])):e.createCommentVNode("v-if",!0)],16)]),i.$slots.extras?(e.openBlock(),e.createElementBlock("div",Zt,[e.renderSlot(i.$slots,"extras")])):e.createCommentVNode("v-if",!0)],10,Gt))}})),Jt={clearValue:"Clear value"},Wt={clear:{icon:"close"}},Yt=T(e.defineComponent({__name:"QClearButton",props:{id:{},class:{},icons:{default:()=>Wt},texts:{default:()=>Jt}},emits:["click"],setup(t,{emit:o}){const n=t,a=o;function l(r){a("click",r)}return(r,i)=>(e.openBlock(),e.createBlock(e.unref(j),{id:n.id,class:e.normalizeClass(["q-clear-btn",n.class]),"aria-label":n.texts.clearValue,variant:"ghost",color:"neutral",borderless:"",tabindex:"-1",onClick:l},{default:e.withCtx(()=>[e.createVNode(e.unref(F),e.normalizeProps(e.guardReactiveProps(n.icons.clear)),null,16)]),_:1},8,["id","class","aria-label"]))}})),Xt=["id","type","maxlength","required","placeholder","readonly","disabled"],Pe=T(e.defineComponent({inheritAttrs:!1,__name:"QTextField",props:e.mergeModels({id:{},class:{},label:{},for:{},required:{type:Boolean},size:{},readonly:{type:Boolean},disabled:{type:Boolean},invalid:{type:Boolean},placeholder:{},maxLength:{},clearable:{type:Boolean},type:{default:"text"},texts:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["click:clear"],["update:modelValue"]),setup(t,{expose:o,emit:n}){const a=t,l=n,r=e.useModel(t,"modelValue"),i=e.computed({get:()=>r.value,set:b=>{const w=a.maxLength;r.value=w?b==null?void 0:b.slice(0,w):b}});e.watch(r,b=>i.value=b,{immediate:!0});const s=ke(a.id),u=e.ref(null),d=e.ref(null),f=e.computed(()=>a.readonly||a.disabled?void 0:a.placeholder),c=e.computed(()=>a.clearable&&!a.readonly&&!a.disabled),m=e.computed(()=>c.value&&r.value);function h(b){c.value&&(r.value="",l("click:clear",b))}return o({fieldRef:e.computed(()=>{var b;return(b=u.value)==null?void 0:b.fieldRef}),inputRef:d}),(b,w)=>(e.openBlock(),e.createBlock(e.unref(Fe),{ref_key:"fieldRef",ref:u,class:e.normalizeClass(["q-text-field",a.class]),for:e.unref(s),label:a.label,size:a.size,readonly:a.readonly,disabled:a.disabled,required:a.required,invalid:a.invalid},e.createSlots({"label.prepend":e.withCtx(()=>[e.renderSlot(b.$slots,"label.prepend")]),"label.append":e.withCtx(()=>[e.renderSlot(b.$slots,"label.append")]),default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("input",e.mergeProps({id:e.unref(s),ref_key:"inputRef",ref:d,"onUpdate:modelValue":w[0]||(w[0]=v=>i.value=v),class:"q-text-field__input",type:a.type,maxlength:a.maxLength,required:a.required,placeholder:f.value,readonly:a.readonly,disabled:a.disabled},b.$attrs),null,16,Xt),[[e.vModelDynamic,i.value]])]),_:2},[b.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>[e.renderSlot(b.$slots,"prepend")]),key:"0"}:void 0,b.$slots.append||m.value?{name:"append",fn:e.withCtx(()=>[e.renderSlot(b.$slots,"append"),m.value?(e.openBlock(),e.createBlock(e.unref(Yt),{key:0,"data-testid":"q-text-field__clear-button",texts:a.texts,onClick:h},null,8,["texts"])):e.createCommentVNode("v-if",!0)]),key:"1"}:void 0,b.$slots.extras?{name:"extras",fn:e.withCtx(()=>[e.renderSlot(b.$slots,"extras")]),key:"2"}:void 0]),1032,["class","for","label","size","readonly","disabled","required","invalid"]))}})),Kt=Symbol("DismissibleLayer");function en(t){const o=e.inject(Kt);if(!o)throw new Error("useDismissibleLayerStackItem must be used within a dismissible layer stack context.");return{register:()=>o.register(t),unregister:()=>o.unregister(t),isTop:()=>o.isTop(t)}}const tn={ref:"layer"},nn=T(e.defineComponent({__name:"QDismissibleLayer",emits:["escape-key-down","pointer-down-outside","focus-outside","interact-outside","dismiss"],setup(t,{emit:o}){const n=o,a=e.useTemplateRef("layer"),l=e.useId(),r=en(l);let i=[];function s(c){c.key==="Escape"&&r!=null&&r.isTop()&&(n("escape-key-down",c),c.defaultPrevented||n("dismiss",c))}function u(c){if(!a.value)return;const m=c.target;if(!a.value.contains(m)&&r!=null&&r.isTop()){const h=new CustomEvent("focus-outside",{bubbles:!1,cancelable:!0,detail:{originalEvent:c}});n("focus-outside",h),n("interact-outside",h),h.defaultPrevented||n("dismiss",h)}}function d(c){if(!a.value||!(r!=null&&r.isTop()))return;const m=c.target;if(!a.value.contains(m)){const h=new CustomEvent("pointer-down-outside",{bubbles:!1,cancelable:!0,detail:{originalEvent:c}});n("pointer-down-outside",h),n("interact-outside",h),h.defaultPrevented||n("dismiss",h)}}function f(){["mousedown","touchstart"].forEach(c=>{document.addEventListener(c,d,{passive:!0,capture:!0}),i.push(()=>{document.removeEventListener(c,d,{capture:!0})})})}return e.onMounted(()=>{r==null||r.register(),document.addEventListener("keydown",s),i.push(()=>{document.removeEventListener("keydown",s)}),document.addEventListener("focusin",u),i.push(()=>{document.removeEventListener("focusin",u)}),f()}),e.onUnmounted(()=>{r==null||r.unregister(),i.forEach(c=>c()),i=[]}),(c,m)=>(e.openBlock(),e.createElementBlock("div",tn,[e.renderSlot(c.$slots,"default")],512))}}));function on(t){return e.getCurrentScope()?(e.onScopeDispose(t),!0):!1}const an=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const rn=()=>{};function Oe(...t){if(t.length!==1)return e.toRef(...t);const o=t[0];return typeof o=="function"?e.readonly(e.customRef(()=>({get:o,set:rn}))):e.ref(o)}const Be=an?window:void 0;function _e(t){var o;const n=e.toValue(t);return(o=n==null?void 0:n.$el)!=null?o:n}function ln(){const t=e.shallowRef(!1),o=e.getCurrentInstance();return o&&e.onMounted(()=>{t.value=!0},o),t}function sn(t){const o=ln();return e.computed(()=>(o.value,!!t()))}function cn(t,o,n={}){const{window:a=Be,...l}=n;let r;const i=sn(()=>a&&"ResizeObserver"in a),s=()=>{r&&(r.disconnect(),r=void 0)},u=e.computed(()=>{const c=e.toValue(t);return Array.isArray(c)?c.map(m=>_e(m)):[_e(c)]}),d=e.watch(u,c=>{if(s(),i.value&&a){r=new ResizeObserver(o);for(const m of c)m&&r.observe(m,l)}},{immediate:!0,flush:"post"}),f=()=>{s(),d()};return on(f),{isSupported:i,stop:f}}function dn(t=Be,o){t&&typeof t.requestAnimationFrame=="function"?t.requestAnimationFrame(o):o()}function un(t={}){var o,n;const{window:a=Be}=t,l=Oe(t==null?void 0:t.element),r=Oe((o=t==null?void 0:t.input)!=null?o:""),i=(n=t==null?void 0:t.styleProp)!=null?n:"height",s=e.shallowRef(1),u=e.shallowRef(0);function d(){var f;if(!l.value)return;let c="";l.value.style[i]="1px",s.value=(f=l.value)==null?void 0:f.scrollHeight;const m=e.toValue(t==null?void 0:t.styleTarget);m?m.style[i]=`${s.value}px`:c=`${s.value}px`,l.value.style[i]=c}return e.watch([r,l],()=>e.nextTick(d),{immediate:!0}),e.watch(s,()=>{var f;return(f=t==null?void 0:t.onResize)==null?void 0:f.call(t)}),cn(l,([{contentRect:f}])=>{u.value!==f.width&&dn(a,()=>{u.value=f.width,d()})}),t!=null&&t.watch&&e.watch(t.watch,d,{immediate:!0,deep:!0}),{textarea:l,input:r,triggerResize:d}}/*!
|
|
2
2
|
* tabbable 6.2.0
|
|
3
3
|
* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
|
|
4
|
-
*/var
|
|
4
|
+
*/var Ue=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],se=Ue.join(","),ze=typeof Element>"u",Z=ze?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,ce=!ze&&Element.prototype.getRootNode?function(t){var o;return t==null||(o=t.getRootNode)===null||o===void 0?void 0:o.call(t)}:function(t){return t==null?void 0:t.ownerDocument},de=function t(o,n){var a;n===void 0&&(n=!0);var l=o==null||(a=o.getAttribute)===null||a===void 0?void 0:a.call(o,"inert"),r=l===""||l==="true",i=r||n&&o&&t(o.parentNode);return i},pn=function(t){var o,n=t==null||(o=t.getAttribute)===null||o===void 0?void 0:o.call(t,"contenteditable");return n===""||n==="true"},je=function(t,o,n){if(de(t))return[];var a=Array.prototype.slice.apply(t.querySelectorAll(se));return o&&Z.call(t,se)&&a.unshift(t),a=a.filter(n),a},Ge=function t(o,n,a){for(var l=[],r=Array.from(o);r.length;){var i=r.shift();if(!de(i,!1))if(i.tagName==="SLOT"){var s=i.assignedElements(),u=s.length?s:i.children,d=t(u,!0,a);a.flatten?l.push.apply(l,d):l.push({scopeParent:i,candidates:d})}else{var f=Z.call(i,se);f&&a.filter(i)&&(n||!o.includes(i))&&l.push(i);var c=i.shadowRoot||typeof a.getShadowRoot=="function"&&a.getShadowRoot(i),m=!de(c,!1)&&(!a.shadowRootFilter||a.shadowRootFilter(i));if(c&&m){var h=t(c===!0?i.children:c.children,!0,a);a.flatten?l.push.apply(l,h):l.push({scopeParent:i,candidates:h})}else r.unshift.apply(r,i.children)}}return l},He=function(t){return!isNaN(parseInt(t.getAttribute("tabindex"),10))},J=function(t){if(!t)throw new Error("No node provided");return t.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(t.tagName)||pn(t))&&!He(t)?0:t.tabIndex},fn=function(t,o){var n=J(t);return n<0&&o&&!He(t)?0:n},mn=function(t,o){return t.tabIndex===o.tabIndex?t.documentOrder-o.documentOrder:t.tabIndex-o.tabIndex},Qe=function(t){return t.tagName==="INPUT"},gn=function(t){return Qe(t)&&t.type==="hidden"},bn=function(t){var o=t.tagName==="DETAILS"&&Array.prototype.slice.apply(t.children).some(function(n){return n.tagName==="SUMMARY"});return o},hn=function(t,o){for(var n=0;n<t.length;n++)if(t[n].checked&&t[n].form===o)return t[n]},yn=function(t){if(!t.name)return!0;var o=t.form||ce(t),n=function(r){return o.querySelectorAll('input[type="radio"][name="'+r+'"]')},a;if(typeof window<"u"&&typeof window.CSS<"u"&&typeof window.CSS.escape=="function")a=n(window.CSS.escape(t.name));else try{a=n(t.name)}catch(r){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",r.message),!1}var l=hn(a,t.form);return!l||l===t},wn=function(t){return Qe(t)&&t.type==="radio"},kn=function(t){return wn(t)&&!yn(t)},Bn=function(t){var o,n=t&&ce(t),a=(o=n)===null||o===void 0?void 0:o.host,l=!1;if(n&&n!==t){var r,i,s;for(l=!!((r=a)!==null&&r!==void 0&&(i=r.ownerDocument)!==null&&i!==void 0&&i.contains(a)||t!=null&&(s=t.ownerDocument)!==null&&s!==void 0&&s.contains(t));!l&&a;){var u,d,f;n=ce(a),a=(u=n)===null||u===void 0?void 0:u.host,l=!!((d=a)!==null&&d!==void 0&&(f=d.ownerDocument)!==null&&f!==void 0&&f.contains(a))}}return l},Ze=function(t){var o=t.getBoundingClientRect(),n=o.width,a=o.height;return n===0&&a===0},_n=function(t,o){var n=o.displayCheck,a=o.getShadowRoot;if(getComputedStyle(t).visibility==="hidden")return!0;var l=Z.call(t,"details>summary:first-of-type"),r=l?t.parentElement:t;if(Z.call(r,"details:not([open]) *"))return!0;if(!n||n==="full"||n==="legacy-full"){if(typeof a=="function"){for(var i=t;t;){var s=t.parentElement,u=ce(t);if(s&&!s.shadowRoot&&a(s)===!0)return Ze(t);t.assignedSlot?t=t.assignedSlot:!s&&u!==t.ownerDocument?t=u.host:t=s}t=i}if(Bn(t))return!t.getClientRects().length;if(n!=="legacy-full")return!0}else if(n==="non-zero-area")return Ze(t);return!1},Cn=function(t){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(t.tagName))for(var o=t.parentElement;o;){if(o.tagName==="FIELDSET"&&o.disabled){for(var n=0;n<o.children.length;n++){var a=o.children.item(n);if(a.tagName==="LEGEND")return Z.call(o,"fieldset[disabled] *")?!0:!a.contains(t)}return!0}o=o.parentElement}return!1},ue=function(t,o){return!(o.disabled||de(o)||gn(o)||_n(o,t)||bn(o)||Cn(o))},Ce=function(t,o){return!(kn(o)||J(o)<0||!ue(t,o))},xn=function(t){var o=parseInt(t.getAttribute("tabindex"),10);return!!(isNaN(o)||o>=0)},En=function t(o){var n=[],a=[];return o.forEach(function(l,r){var i=!!l.scopeParent,s=i?l.scopeParent:l,u=fn(s,i),d=i?t(l.candidates):s;u===0?i?n.push.apply(n,d):n.push(s):a.push({documentOrder:r,tabIndex:u,item:l,isScope:i,content:d})}),a.sort(mn).reduce(function(l,r){return r.isScope?l.push.apply(l,r.content):l.push(r.content),l},[]).concat(n)},vn=function(t,o){o=o||{};var n;return o.getShadowRoot?n=Ge([t],o.includeContainer,{filter:Ce.bind(null,o),flatten:!1,getShadowRoot:o.getShadowRoot,shadowRootFilter:xn}):n=je(t,o.includeContainer,Ce.bind(null,o)),En(n)},Sn=function(t,o){o=o||{};var n;return o.getShadowRoot?n=Ge([t],o.includeContainer,{filter:ue.bind(null,o),flatten:!0,getShadowRoot:o.getShadowRoot}):n=je(t,o.includeContainer,ue.bind(null,o)),n},ee=function(t,o){if(o=o||{},!t)throw new Error("No node provided");return Z.call(t,se)===!1?!1:Ce(o,t)},$n=Ue.concat("iframe").join(","),xe=function(t,o){if(o=o||{},!t)throw new Error("No node provided");return Z.call(t,$n)===!1?!1:ue(o,t)};/*!
|
|
5
5
|
* focus-trap 7.6.4
|
|
6
6
|
* @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE
|
|
7
|
-
*/function Ee(t,o){(o==null||o>t.length)&&(o=t.length);for(var n=0,a=Array(o);n<o;n++)a[n]=t[n];return a}function
|
|
8
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function et(t,o){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);o&&(a=a.filter(function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable})),n.push.apply(n,a)}return n}function tt(t){for(var o=1;o<arguments.length;o++){var n=arguments[o]!=null?arguments[o]:{};o%2?et(Object(n),!0).forEach(function(a){Jn(t,a,n[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):et(Object(n)).forEach(function(a){Object.defineProperty(t,a,Object.getOwnPropertyDescriptor(n,a))})}return t}function Kn(t){return Zn(t)||Yn(t)||no(t)||Xn()}function eo(t,o){if(typeof t!="object"||!t)return t;var n=t[Symbol.toPrimitive];if(n!==void 0){var a=n.call(t,o);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(o==="string"?String:Number)(t)}function to(t){var o=eo(t,"string");return typeof o=="symbol"?o:o+""}function no(t,o){if(t){if(typeof t=="string")return Ee(t,o);var n={}.toString.call(t).slice(8,-1);return n==="Object"&&t.constructor&&(n=t.constructor.name),n==="Map"||n==="Set"?Array.from(t):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ee(t,o):void 0}}var nt={activateTrap:function(t,o){if(t.length>0){var n=t[t.length-1];n!==o&&n._setPausedState(!0)}var a=t.indexOf(o);a===-1||t.splice(a,1),t.push(o)},deactivateTrap:function(t,o){var n=t.indexOf(o);n!==-1&&t.splice(n,1),t.length>0&&!t[t.length-1]._isManuallyPaused()&&t[t.length-1]._setPausedState(!1)}},oo=function(t){return t.tagName&&t.tagName.toLowerCase()==="input"&&typeof t.select=="function"},ao=function(t){return(t==null?void 0:t.key)==="Escape"||(t==null?void 0:t.key)==="Esc"||(t==null?void 0:t.keyCode)===27},le=function(t){return(t==null?void 0:t.key)==="Tab"||(t==null?void 0:t.keyCode)===9},lo=function(t){return le(t)&&!t.shiftKey},ro=function(t){return le(t)&&t.shiftKey},ot=function(t){return setTimeout(t,0)},re=function(t){for(var o=arguments.length,n=new Array(o>1?o-1:0),a=1;a<o;a++)n[a-1]=arguments[a];return typeof t=="function"?t.apply(void 0,n):t},fe=function(t){return t.target.shadowRoot&&typeof t.composedPath=="function"?t.composedPath()[0]:t.target},io=[],so=function(t,o){var n=(o==null?void 0:o.document)||document,a=(o==null?void 0:o.trapStack)||io,r=tt({returnFocusOnDeactivate:!0,escapeDeactivates:!0,delayInitialFocus:!0,isKeyForward:lo,isKeyBackward:ro},o),l={containers:[],containerGroups:[],tabbableGroups:[],nodeFocusedBeforeActivation:null,mostRecentlyFocusedNode:null,active:!1,paused:!1,manuallyPaused:!1,delayInitialFocusTimer:void 0,recentNavEvent:void 0},i,s=function(f,g,C){return f&&f[g]!==void 0?f[g]:r[C||g]},u=function(f,g){var C=typeof(g==null?void 0:g.composedPath)=="function"?g.composedPath():void 0;return l.containerGroups.findIndex(function(A){var b=A.container,x=A.tabbableNodes;return b.contains(f)||(C==null?void 0:C.includes(b))||x.find(function(w){return w===f})})},d=function(f){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},C=g.hasFallback,A=C===void 0?!1:C,b=g.params,x=b===void 0?[]:b,w=r[f];if(typeof w=="function"&&(w=w.apply(void 0,Kn(x))),w===!0&&(w=void 0),!w){if(w===void 0||w===!1)return w;throw new Error("`".concat(f,"` was specified but was not a node, or did not return a node"))}var h=w;if(typeof w=="string"){try{h=n.querySelector(w)}catch(y){throw new Error("`".concat(f,'` appears to be an invalid selector; error="').concat(y.message,'"'))}if(!h&&!A)throw new Error("`".concat(f,"` as selector refers to no known node"))}return h},p=function(){var f=d("initialFocus",{hasFallback:!0});if(f===!1)return!1;if(f===void 0||f&&!Ce(f,r.tabbableOptions))if(u(n.activeElement)>=0)f=n.activeElement;else{var g=l.tabbableGroups[0],C=g&&g.firstTabbableNode;f=C||d("fallbackFocus")}else f===null&&(f=d("fallbackFocus"));if(!f)throw new Error("Your focus-trap needs to have at least one focusable element");return f},c=function(){if(l.containerGroups=l.containers.map(function(f){var g=Qn(f,r.tabbableOptions),C=Hn(f,r.tabbableOptions),A=g.length>0?g[0]:void 0,b=g.length>0?g[g.length-1]:void 0,x=C.find(function(y){return X(y)}),w=C.slice().reverse().find(function(y){return X(y)}),h=!!g.find(function(y){return H(y)>0});return{container:f,tabbableNodes:g,focusableNodes:C,posTabIndexesFound:h,firstTabbableNode:A,lastTabbableNode:b,firstDomTabbableNode:x,lastDomTabbableNode:w,nextTabbableNode:function(y){var N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,O=g.indexOf(y);return O<0?N?C.slice(C.indexOf(y)+1).find(function(L){return X(L)}):C.slice(0,C.indexOf(y)).reverse().find(function(L){return X(L)}):g[O+(N?1:-1)]}}}),l.tabbableGroups=l.containerGroups.filter(function(f){return f.tabbableNodes.length>0}),l.tabbableGroups.length<=0&&!d("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(l.containerGroups.find(function(f){return f.posTabIndexesFound})&&l.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},m=function(f){var g=f.activeElement;if(g)return g.shadowRoot&&g.shadowRoot.activeElement!==null?m(g.shadowRoot):g},_=function(f){if(f!==!1&&f!==m(document)){if(!f||!f.focus){_(p());return}f.focus({preventScroll:!!r.preventScroll}),l.mostRecentlyFocusedNode=f,oo(f)&&f.select()}},B=function(f){var g=d("setReturnFocus",{params:[f]});return g||(g===!1?!1:f)},v=function(f){var g=f.target,C=f.event,A=f.isBackward,b=A===void 0?!1:A;g=g||fe(C),c();var x=null;if(l.tabbableGroups.length>0){var w=u(g,C),h=w>=0?l.containerGroups[w]:void 0;if(w<0)b?x=l.tabbableGroups[l.tabbableGroups.length-1].lastTabbableNode:x=l.tabbableGroups[0].firstTabbableNode;else if(b){var y=l.tabbableGroups.findIndex(function(ne){var se=ne.firstTabbableNode;return g===se});if(y<0&&(h.container===g||Ce(g,r.tabbableOptions)&&!X(g,r.tabbableOptions)&&!h.nextTabbableNode(g,!1))&&(y=w),y>=0){var N=y===0?l.tabbableGroups.length-1:y-1,O=l.tabbableGroups[N];x=H(g)>=0?O.lastTabbableNode:O.lastDomTabbableNode}else le(C)||(x=h.nextTabbableNode(g,!1))}else{var L=l.tabbableGroups.findIndex(function(ne){var se=ne.lastTabbableNode;return g===se});if(L<0&&(h.container===g||Ce(g,r.tabbableOptions)&&!X(g,r.tabbableOptions)&&!h.nextTabbableNode(g))&&(L=w),L>=0){var Z=L===l.tabbableGroups.length-1?0:L+1,te=l.tabbableGroups[Z];x=H(g)>=0?te.firstTabbableNode:te.firstDomTabbableNode}else le(C)||(x=h.nextTabbableNode(g))}}else x=d("fallbackFocus");return x},S=function(f){var g=fe(f);if(!(u(g,f)>=0)){if(re(r.clickOutsideDeactivates,f)){i.deactivate({returnFocus:r.returnFocusOnDeactivate});return}re(r.allowOutsideClick,f)||f.preventDefault()}},T=function(f){var g=fe(f),C=u(g,f)>=0;if(C||g instanceof Document)C&&(l.mostRecentlyFocusedNode=g);else{f.stopImmediatePropagation();var A,b=!0;if(l.mostRecentlyFocusedNode)if(H(l.mostRecentlyFocusedNode)>0){var x=u(l.mostRecentlyFocusedNode),w=l.containerGroups[x].tabbableNodes;if(w.length>0){var h=w.findIndex(function(y){return y===l.mostRecentlyFocusedNode});h>=0&&(r.isKeyForward(l.recentNavEvent)?h+1<w.length&&(A=w[h+1],b=!1):h-1>=0&&(A=w[h-1],b=!1))}}else l.containerGroups.some(function(y){return y.tabbableNodes.some(function(N){return H(N)>0})})||(b=!1);else b=!1;b&&(A=v({target:l.mostRecentlyFocusedNode,isBackward:r.isKeyBackward(l.recentNavEvent)})),_(A||l.mostRecentlyFocusedNode||p())}l.recentNavEvent=void 0},q=function(f){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;l.recentNavEvent=f;var C=v({event:f,isBackward:g});C&&(le(f)&&f.preventDefault(),_(C))},I=function(f){(r.isKeyForward(f)||r.isKeyBackward(f))&&q(f,r.isKeyBackward(f))},D=function(f){ao(f)&&re(r.escapeDeactivates,f)!==!1&&(f.preventDefault(),i.deactivate())},R=function(f){var g=fe(f);u(g,f)>=0||re(r.clickOutsideDeactivates,f)||re(r.allowOutsideClick,f)||(f.preventDefault(),f.stopImmediatePropagation())},E=function(){if(l.active)return nt.activateTrap(a,i),l.delayInitialFocusTimer=r.delayInitialFocus?ot(function(){_(p())}):_(p()),n.addEventListener("focusin",T,!0),n.addEventListener("mousedown",S,{capture:!0,passive:!1}),n.addEventListener("touchstart",S,{capture:!0,passive:!1}),n.addEventListener("click",R,{capture:!0,passive:!1}),n.addEventListener("keydown",I,{capture:!0,passive:!1}),n.addEventListener("keydown",D),i},M=function(){if(l.active)return n.removeEventListener("focusin",T,!0),n.removeEventListener("mousedown",S,!0),n.removeEventListener("touchstart",S,!0),n.removeEventListener("click",R,!0),n.removeEventListener("keydown",I,!0),n.removeEventListener("keydown",D),i},k=function(f){var g=f.some(function(C){var A=Array.from(C.removedNodes);return A.some(function(b){return b===l.mostRecentlyFocusedNode})});g&&_(p())},V=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(k):void 0,F=function(){V&&(V.disconnect(),l.active&&!l.paused&&l.containers.map(function(f){V.observe(f,{subtree:!0,childList:!0})}))};return i={get active(){return l.active},get paused(){return l.paused},activate:function(f){if(l.active)return this;var g=s(f,"onActivate"),C=s(f,"onPostActivate"),A=s(f,"checkCanFocusTrap");A||c(),l.active=!0,l.paused=!1,l.nodeFocusedBeforeActivation=n.activeElement,g==null||g();var b=function(){A&&c(),E(),F(),C==null||C()};return A?(A(l.containers.concat()).then(b,b),this):(b(),this)},deactivate:function(f){if(!l.active)return this;var g=tt({onDeactivate:r.onDeactivate,onPostDeactivate:r.onPostDeactivate,checkCanReturnFocus:r.checkCanReturnFocus},f);clearTimeout(l.delayInitialFocusTimer),l.delayInitialFocusTimer=void 0,M(),l.active=!1,l.paused=!1,F(),nt.deactivateTrap(a,i);var C=s(g,"onDeactivate"),A=s(g,"onPostDeactivate"),b=s(g,"checkCanReturnFocus"),x=s(g,"returnFocus","returnFocusOnDeactivate");C==null||C();var w=function(){ot(function(){x&&_(B(l.nodeFocusedBeforeActivation)),A==null||A()})};return x&&b?(b(B(l.nodeFocusedBeforeActivation)).then(w,w),this):(w(),this)},pause:function(f){return l.active?(l.manuallyPaused=!0,this._setPausedState(!0,f)):this},unpause:function(f){return l.active?(l.manuallyPaused=!1,a[a.length-1]!==this?this:this._setPausedState(!1,f)):this},updateContainerElements:function(f){var g=[].concat(f).filter(Boolean);return l.containers=g.map(function(C){return typeof C=="string"?n.querySelector(C):C}),l.active&&c(),F(),this}},Object.defineProperties(i,{_isManuallyPaused:{value:function(){return l.manuallyPaused}},_setPausedState:{value:function(f,g){if(l.paused===f)return this;if(l.paused=f,f){var C=s(g,"onPause"),A=s(g,"onPostPause");C==null||C(),M(),F(),A==null||A()}else{var b=s(g,"onUnpause"),x=s(g,"onPostUnpause");b==null||b(),c(),E(),F(),x==null||x()}return this}}}),i.updateContainerElements(t),i};const co=e.defineComponent({name:"UseFocusTrap",props:["as","options"],setup(t,{slots:o}){let n;const a=e.ref(),r=()=>n&&n.activate(),l=()=>n&&n.deactivate();return e.watch(()=>_e(a),i=>{i&&(n=so(i,t.options||{}),r())},{flush:"post"}),e.onScopeDispose(()=>l()),()=>{if(o.default)return e.h(t.as||"div",{ref:a},o.default())}}}),uo=P(e.defineComponent({__name:"QFocusTrap",props:e.mergeModels({options:{},as:{}},{disabled:{type:Boolean},disabledModifiers:{}}),emits:["update:disabled"],setup(t){const o=t,n=e.useModel(t,"disabled");return(a,r)=>n.value?e.renderSlot(a.$slots,"default",{key:0}):(e.openBlock(),e.createBlock(e.unref(co),e.normalizeProps(e.mergeProps({key:1},o)),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default")]),_:3},16))}})),K="data-scroll-locked",ve="right-scroll-bar-position",$e="width-before-scroll-bar",po="with-scroll-bars-hidden",fo="--removed-body-scroll-bar-size",mo={left:0,top:0,right:0,gap:0},Se=t=>parseInt(t||"",10)||0,go=t=>{const o=window.getComputedStyle(document.body),n=o[t==="padding"?"paddingLeft":"marginLeft"],a=o[t==="padding"?"paddingTop":"marginTop"],r=o[t==="padding"?"paddingRight":"marginRight"];return[Se(n),Se(a),Se(r)]},bo=(t="margin")=>{if(typeof window>"u")return mo;const o=go(t),n=document.documentElement.clientWidth,a=window.innerWidth;return{left:o[0],top:o[1],right:o[2],gap:Math.max(0,a-n+o[2]-o[0])}};function ho(){return document?document.createElement("style"):null}function yo(t,o){t.appendChild(document.createTextNode(o))}function ko(t){(document.head||document.getElementsByTagName("head")[0]).appendChild(t)}const wo=()=>{let t=0,o=null;return{add:n=>{t===0&&(o=ho())&&(yo(o,n),ko(o)),t++},remove:()=>{var n;t--,!t&&o&&((n=o.parentNode)==null||n.removeChild(o),o=null)}}},Bo=P(e.defineComponent({__name:"QRemoveScrollBar",props:{noRelative:{type:Boolean},noImportant:{type:Boolean},gapMode:{default:"margin"}},setup(t){const o=t,n=wo(),a=()=>{const l=parseInt(document.body.getAttribute(K)||"0",10);return isFinite(l)?l:0},r=({left:l,top:i,right:s,gap:u},d,p="margin",c)=>`
|
|
9
|
-
.${
|
|
7
|
+
*/function Ee(t,o){(o==null||o>t.length)&&(o=t.length);for(var n=0,a=Array(o);n<o;n++)a[n]=t[n];return a}function Nn(t){if(Array.isArray(t))return Ee(t)}function An(t,o,n){return(o=Mn(o))in t?Object.defineProperty(t,o,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[o]=n,t}function In(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function Dn(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
8
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Je(t,o){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);o&&(a=a.filter(function(l){return Object.getOwnPropertyDescriptor(t,l).enumerable})),n.push.apply(n,a)}return n}function We(t){for(var o=1;o<arguments.length;o++){var n=arguments[o]!=null?arguments[o]:{};o%2?Je(Object(n),!0).forEach(function(a){An(t,a,n[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Je(Object(n)).forEach(function(a){Object.defineProperty(t,a,Object.getOwnPropertyDescriptor(n,a))})}return t}function Vn(t){return Nn(t)||In(t)||Ln(t)||Dn()}function Rn(t,o){if(typeof t!="object"||!t)return t;var n=t[Symbol.toPrimitive];if(n!==void 0){var a=n.call(t,o);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(o==="string"?String:Number)(t)}function Mn(t){var o=Rn(t,"string");return typeof o=="symbol"?o:o+""}function Ln(t,o){if(t){if(typeof t=="string")return Ee(t,o);var n={}.toString.call(t).slice(8,-1);return n==="Object"&&t.constructor&&(n=t.constructor.name),n==="Map"||n==="Set"?Array.from(t):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ee(t,o):void 0}}var Ye={activateTrap:function(t,o){if(t.length>0){var n=t[t.length-1];n!==o&&n._setPausedState(!0)}var a=t.indexOf(o);a===-1||t.splice(a,1),t.push(o)},deactivateTrap:function(t,o){var n=t.indexOf(o);n!==-1&&t.splice(n,1),t.length>0&&!t[t.length-1]._isManuallyPaused()&&t[t.length-1]._setPausedState(!1)}},qn=function(t){return t.tagName&&t.tagName.toLowerCase()==="input"&&typeof t.select=="function"},Tn=function(t){return(t==null?void 0:t.key)==="Escape"||(t==null?void 0:t.key)==="Esc"||(t==null?void 0:t.keyCode)===27},re=function(t){return(t==null?void 0:t.key)==="Tab"||(t==null?void 0:t.keyCode)===9},Fn=function(t){return re(t)&&!t.shiftKey},Pn=function(t){return re(t)&&t.shiftKey},Xe=function(t){return setTimeout(t,0)},le=function(t){for(var o=arguments.length,n=new Array(o>1?o-1:0),a=1;a<o;a++)n[a-1]=arguments[a];return typeof t=="function"?t.apply(void 0,n):t},pe=function(t){return t.target.shadowRoot&&typeof t.composedPath=="function"?t.composedPath()[0]:t.target},On=[],Un=function(t,o){var n=(o==null?void 0:o.document)||document,a=(o==null?void 0:o.trapStack)||On,l=We({returnFocusOnDeactivate:!0,escapeDeactivates:!0,delayInitialFocus:!0,isKeyForward:Fn,isKeyBackward:Pn},o),r={containers:[],containerGroups:[],tabbableGroups:[],nodeFocusedBeforeActivation:null,mostRecentlyFocusedNode:null,active:!1,paused:!1,manuallyPaused:!1,delayInitialFocusTimer:void 0,recentNavEvent:void 0},i,s=function(p,g,k){return p&&p[g]!==void 0?p[g]:l[k||g]},u=function(p,g){var k=typeof(g==null?void 0:g.composedPath)=="function"?g.composedPath():void 0;return r.containerGroups.findIndex(function(S){var x=S.container,A=S.tabbableNodes;return x.contains(p)||(k==null?void 0:k.includes(x))||A.find(function(E){return E===p})})},d=function(p){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},k=g.hasFallback,S=k===void 0?!1:k,x=g.params,A=x===void 0?[]:x,E=l[p];if(typeof E=="function"&&(E=E.apply(void 0,Vn(A))),E===!0&&(E=void 0),!E){if(E===void 0||E===!1)return E;throw new Error("`".concat(p,"` was specified but was not a node, or did not return a node"))}var q=E;if(typeof E=="string"){try{q=n.querySelector(E)}catch(y){throw new Error("`".concat(p,'` appears to be an invalid selector; error="').concat(y.message,'"'))}if(!q&&!S)throw new Error("`".concat(p,"` as selector refers to no known node"))}return q},f=function(){var p=d("initialFocus",{hasFallback:!0});if(p===!1)return!1;if(p===void 0||p&&!xe(p,l.tabbableOptions))if(u(n.activeElement)>=0)p=n.activeElement;else{var g=r.tabbableGroups[0],k=g&&g.firstTabbableNode;p=k||d("fallbackFocus")}else p===null&&(p=d("fallbackFocus"));if(!p)throw new Error("Your focus-trap needs to have at least one focusable element");return p},c=function(){if(r.containerGroups=r.containers.map(function(p){var g=vn(p,l.tabbableOptions),k=Sn(p,l.tabbableOptions),S=g.length>0?g[0]:void 0,x=g.length>0?g[g.length-1]:void 0,A=k.find(function(y){return ee(y)}),E=k.slice().reverse().find(function(y){return ee(y)}),q=!!g.find(function(y){return J(y)>0});return{container:p,tabbableNodes:g,focusableNodes:k,posTabIndexesFound:q,firstTabbableNode:S,lastTabbableNode:x,firstDomTabbableNode:A,lastDomTabbableNode:E,nextTabbableNode:function(y){var B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,$=g.indexOf(y);return $<0?B?k.slice(k.indexOf(y)+1).find(function(N){return ee(N)}):k.slice(0,k.indexOf(y)).reverse().find(function(N){return ee(N)}):g[$+(B?1:-1)]}}}),r.tabbableGroups=r.containerGroups.filter(function(p){return p.tabbableNodes.length>0}),r.tabbableGroups.length<=0&&!d("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(r.containerGroups.find(function(p){return p.posTabIndexesFound})&&r.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},m=function(p){var g=p.activeElement;if(g)return g.shadowRoot&&g.shadowRoot.activeElement!==null?m(g.shadowRoot):g},h=function(p){if(p!==!1&&p!==m(document)){if(!p||!p.focus){h(f());return}p.focus({preventScroll:!!l.preventScroll}),r.mostRecentlyFocusedNode=p,qn(p)&&p.select()}},b=function(p){var g=d("setReturnFocus",{params:[p]});return g||(g===!1?!1:p)},w=function(p){var g=p.target,k=p.event,S=p.isBackward,x=S===void 0?!1:S;g=g||pe(k),c();var A=null;if(r.tabbableGroups.length>0){var E=u(g,k),q=E>=0?r.containerGroups[E]:void 0;if(E<0)x?A=r.tabbableGroups[r.tabbableGroups.length-1].lastTabbableNode:A=r.tabbableGroups[0].firstTabbableNode;else if(x){var y=r.tabbableGroups.findIndex(function(oe){var ie=oe.firstTabbableNode;return g===ie});if(y<0&&(q.container===g||xe(g,l.tabbableOptions)&&!ee(g,l.tabbableOptions)&&!q.nextTabbableNode(g,!1))&&(y=E),y>=0){var B=y===0?r.tabbableGroups.length-1:y-1,$=r.tabbableGroups[B];A=J(g)>=0?$.lastTabbableNode:$.lastDomTabbableNode}else re(k)||(A=q.nextTabbableNode(g,!1))}else{var N=r.tabbableGroups.findIndex(function(oe){var ie=oe.lastTabbableNode;return g===ie});if(N<0&&(q.container===g||xe(g,l.tabbableOptions)&&!ee(g,l.tabbableOptions)&&!q.nextTabbableNode(g))&&(N=E),N>=0){var G=N===r.tabbableGroups.length-1?0:N+1,Q=r.tabbableGroups[G];A=J(g)>=0?Q.firstTabbableNode:Q.firstDomTabbableNode}else re(k)||(A=q.nextTabbableNode(g))}}else A=d("fallbackFocus");return A},v=function(p){var g=pe(p);if(!(u(g,p)>=0)){if(le(l.clickOutsideDeactivates,p)){i.deactivate({returnFocus:l.returnFocusOnDeactivate});return}le(l.allowOutsideClick,p)||p.preventDefault()}},P=function(p){var g=pe(p),k=u(g,p)>=0;if(k||g instanceof Document)k&&(r.mostRecentlyFocusedNode=g);else{p.stopImmediatePropagation();var S,x=!0;if(r.mostRecentlyFocusedNode)if(J(r.mostRecentlyFocusedNode)>0){var A=u(r.mostRecentlyFocusedNode),E=r.containerGroups[A].tabbableNodes;if(E.length>0){var q=E.findIndex(function(y){return y===r.mostRecentlyFocusedNode});q>=0&&(l.isKeyForward(r.recentNavEvent)?q+1<E.length&&(S=E[q+1],x=!1):q-1>=0&&(S=E[q-1],x=!1))}}else r.containerGroups.some(function(y){return y.tabbableNodes.some(function(B){return J(B)>0})})||(x=!1);else x=!1;x&&(S=w({target:r.mostRecentlyFocusedNode,isBackward:l.isKeyBackward(r.recentNavEvent)})),h(S||r.mostRecentlyFocusedNode||f())}r.recentNavEvent=void 0},D=function(p){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;r.recentNavEvent=p;var k=w({event:p,isBackward:g});k&&(re(p)&&p.preventDefault(),h(k))},V=function(p){(l.isKeyForward(p)||l.isKeyBackward(p))&&D(p,l.isKeyBackward(p))},R=function(p){Tn(p)&&le(l.escapeDeactivates,p)!==!1&&(p.preventDefault(),i.deactivate())},M=function(p){var g=pe(p);u(g,p)>=0||le(l.clickOutsideDeactivates,p)||le(l.allowOutsideClick,p)||(p.preventDefault(),p.stopImmediatePropagation())},_=function(){if(r.active)return Ye.activateTrap(a,i),r.delayInitialFocusTimer=l.delayInitialFocus?Xe(function(){h(f())}):h(f()),n.addEventListener("focusin",P,!0),n.addEventListener("mousedown",v,{capture:!0,passive:!1}),n.addEventListener("touchstart",v,{capture:!0,passive:!1}),n.addEventListener("click",M,{capture:!0,passive:!1}),n.addEventListener("keydown",V,{capture:!0,passive:!1}),n.addEventListener("keydown",R),i},L=function(){if(r.active)return n.removeEventListener("focusin",P,!0),n.removeEventListener("mousedown",v,!0),n.removeEventListener("touchstart",v,!0),n.removeEventListener("click",M,!0),n.removeEventListener("keydown",V,!0),n.removeEventListener("keydown",R),i},I=function(p){var g=p.some(function(k){var S=Array.from(k.removedNodes);return S.some(function(x){return x===r.mostRecentlyFocusedNode})});g&&h(f())},U=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(I):void 0,z=function(){U&&(U.disconnect(),r.active&&!r.paused&&r.containers.map(function(p){U.observe(p,{subtree:!0,childList:!0})}))};return i={get active(){return r.active},get paused(){return r.paused},activate:function(p){if(r.active)return this;var g=s(p,"onActivate"),k=s(p,"onPostActivate"),S=s(p,"checkCanFocusTrap");S||c(),r.active=!0,r.paused=!1,r.nodeFocusedBeforeActivation=n.activeElement,g==null||g();var x=function(){S&&c(),_(),z(),k==null||k()};return S?(S(r.containers.concat()).then(x,x),this):(x(),this)},deactivate:function(p){if(!r.active)return this;var g=We({onDeactivate:l.onDeactivate,onPostDeactivate:l.onPostDeactivate,checkCanReturnFocus:l.checkCanReturnFocus},p);clearTimeout(r.delayInitialFocusTimer),r.delayInitialFocusTimer=void 0,L(),r.active=!1,r.paused=!1,z(),Ye.deactivateTrap(a,i);var k=s(g,"onDeactivate"),S=s(g,"onPostDeactivate"),x=s(g,"checkCanReturnFocus"),A=s(g,"returnFocus","returnFocusOnDeactivate");k==null||k();var E=function(){Xe(function(){A&&h(b(r.nodeFocusedBeforeActivation)),S==null||S()})};return A&&x?(x(b(r.nodeFocusedBeforeActivation)).then(E,E),this):(E(),this)},pause:function(p){return r.active?(r.manuallyPaused=!0,this._setPausedState(!0,p)):this},unpause:function(p){return r.active?(r.manuallyPaused=!1,a[a.length-1]!==this?this:this._setPausedState(!1,p)):this},updateContainerElements:function(p){var g=[].concat(p).filter(Boolean);return r.containers=g.map(function(k){return typeof k=="string"?n.querySelector(k):k}),r.active&&c(),z(),this}},Object.defineProperties(i,{_isManuallyPaused:{value:function(){return r.manuallyPaused}},_setPausedState:{value:function(p,g){if(r.paused===p)return this;if(r.paused=p,p){var k=s(g,"onPause"),S=s(g,"onPostPause");k==null||k(),L(),z(),S==null||S()}else{var x=s(g,"onUnpause"),A=s(g,"onPostUnpause");x==null||x(),c(),_(),z(),A==null||A()}return this}}}),i.updateContainerElements(t),i};const zn=e.defineComponent({name:"UseFocusTrap",props:["as","options"],setup(t,{slots:o}){let n;const a=e.ref(),l=()=>n&&n.activate(),r=()=>n&&n.deactivate();return e.watch(()=>_e(a),i=>{i&&(n=Un(i,t.options||{}),l())},{flush:"post"}),e.onScopeDispose(()=>r()),()=>{if(o.default)return e.h(t.as||"div",{ref:a},o.default())}}}),jn=T(e.defineComponent({__name:"QFocusTrap",props:e.mergeModels({options:{},as:{}},{disabled:{type:Boolean},disabledModifiers:{}}),emits:["update:disabled"],setup(t){const o=t,n=e.useModel(t,"disabled");return(a,l)=>n.value?e.renderSlot(a.$slots,"default",{key:0}):(e.openBlock(),e.createBlock(e.unref(zn),e.normalizeProps(e.mergeProps({key:1},o)),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default")]),_:3},16))}})),te="data-scroll-locked",ve="right-scroll-bar-position",Se="width-before-scroll-bar",Gn="with-scroll-bars-hidden",Hn="--removed-body-scroll-bar-size",Qn={left:0,top:0,right:0,gap:0},$e=t=>parseInt(t||"",10)||0,Zn=t=>{const o=window.getComputedStyle(document.body),n=o[t==="padding"?"paddingLeft":"marginLeft"],a=o[t==="padding"?"paddingTop":"marginTop"],l=o[t==="padding"?"paddingRight":"marginRight"];return[$e(n),$e(a),$e(l)]},Jn=(t="margin")=>{if(typeof window>"u")return Qn;const o=Zn(t),n=document.documentElement.clientWidth,a=window.innerWidth;return{left:o[0],top:o[1],right:o[2],gap:Math.max(0,a-n+o[2]-o[0])}};function Wn(){return document?document.createElement("style"):null}function Yn(t,o){t.appendChild(document.createTextNode(o))}function Xn(t){(document.head||document.getElementsByTagName("head")[0]).appendChild(t)}const Kn=()=>{let t=0,o=null;return{add:n=>{t===0&&(o=Wn())&&(Yn(o,n),Xn(o)),t++},remove:()=>{var n;t--,!t&&o&&((n=o.parentNode)==null||n.removeChild(o),o=null)}}},eo=T(e.defineComponent({__name:"QRemoveScrollBar",props:{noRelative:{type:Boolean},noImportant:{type:Boolean},gapMode:{default:"margin"}},setup(t){const o=t,n=Kn(),a=()=>{const r=parseInt(document.body.getAttribute(te)||"0",10);return isFinite(r)?r:0},l=({left:r,top:i,right:s,gap:u},d,f="margin",c)=>`
|
|
9
|
+
.${Gn} {
|
|
10
10
|
overflow: hidden ${c};
|
|
11
11
|
padding-right: ${u}px ${c};
|
|
12
12
|
}
|
|
13
|
-
body[${
|
|
13
|
+
body[${te}] {
|
|
14
14
|
overflow: hidden ${c};
|
|
15
15
|
overscroll-behavior: contain;
|
|
16
|
-
${[d&&`position: relative ${c};`,
|
|
17
|
-
padding-left: ${
|
|
16
|
+
${[d&&`position: relative ${c};`,f==="margin"&&`
|
|
17
|
+
padding-left: ${r}px;
|
|
18
18
|
padding-top: ${i}px;
|
|
19
19
|
padding-right: ${s}px;
|
|
20
20
|
margin-left:0;
|
|
21
21
|
margin-top:0;
|
|
22
22
|
margin-right: ${u}px ${c};
|
|
23
|
-
`,
|
|
23
|
+
`,f==="padding"&&`padding-right: ${u}px ${c};`].filter(Boolean).join("")}
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
.${ve} {
|
|
27
27
|
right: ${u}px ${c};
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
-
.${
|
|
30
|
+
.${Se} {
|
|
31
31
|
margin-right: ${u}px ${c};
|
|
32
32
|
}
|
|
33
33
|
|
|
@@ -35,12 +35,12 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
35
35
|
right: 0 ${c};
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
.${
|
|
38
|
+
.${Se} .${Se} {
|
|
39
39
|
margin-right: 0 ${c};
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
body[${
|
|
43
|
-
${
|
|
42
|
+
body[${te}] {
|
|
43
|
+
${Hn}: ${u}px;
|
|
44
44
|
}
|
|
45
|
-
`;return e.onMounted(()=>{document.body.setAttribute(K,(a()+1).toString());const l=bo(o.gapMode);n.add(r(l,!o.noRelative,o.gapMode,o.noImportant?"":"!important"))}),e.onUnmounted(()=>{const l=a()-1;l<=0?document.body.removeAttribute(K):document.body.setAttribute(K,l.toString()),n.remove()}),(l,i)=>e.renderSlot(l.$slots,"default")}}));function _o(t,o,n,a){const r=(a==null?void 0:a.offset)??0,l=(a==null?void 0:a.crossOffset)??0,i=(a==null?void 0:a.placement)??"bottom",s=t.getBoundingClientRect(),u=o.getBoundingClientRect(),d=n==null?void 0:n.getBoundingClientRect(),p=xo(s,u,i,r),c=So(s,u,p),m=Eo(c,p,r),_=vo(m,p,l),B=Co(_,u,p);let v;if(a!=null&&a.arrow){if(!d)throw new Error("[Quidgest UI] The arrow element must exist to compute its position");v=$o(B,s,u,d,p)}return{overlayCoords:B,arrowCoords:v,placement:p}}function xo(t,o,n,a){const r=at(t,o,n,a);if(lt(r)){const l=ee(n),i={top:"bottom",bottom:"top",left:"right",right:"left"}[l],s=at(t,o,i,a);if(lt(s))return n;const u=Do(n);return u?`${i}-${u}`:i}return n}function Co(t,o,n){const a=me(n),r=(i,s,u)=>Math.min(Math.max(i,s),u),l={...t};return a==="x"?l.x=r(t.x,8,window.innerWidth-o.width-8):l.y=r(t.y,8,window.innerHeight-o.height-8),l}function Eo(t,o,n){const a=ee(o);return{x:t.x+(a==="left"?-n:a==="right"?n:0),y:t.y+(a==="top"?-n:a==="bottom"?n:0)}}function vo(t,o,n){const a=ee(o);return{x:t.x+(a==="top"||a==="bottom"?n:0),y:t.y+(a==="right"||a==="left"?n:0)}}function $o(t,o,n,a,r){if(me(r)==="y"){const l=o.top+o.height/2,i=t.y+n.height/2,s=i-l,u=n.height/2-s-a.height/2+2;if(u>0&&u<n.height-a.height)return{y:u}}else{const l=o.left+o.width/2,i=t.x+n.width/2,s=i-l,u=n.width/2-s-a.width/2+2;if(u>0&&u<n.width-a.width)return{x:u}}}function So(t,o,n){const[a,r]=n.split("-"),l=t.x+t.width/2-o.width/2,i=t.y+t.height/2-o.height/2;let s;switch(a){case"top":s={x:l,y:t.y-o.height};break;case"bottom":s={x:l,y:t.y+t.height};break;case"left":s={x:t.x-o.width,y:i};break;case"right":s={x:t.x+t.width,y:i};break;default:throw new Error(`[Quidgest UI] Invalid placement value: ${n}`)}if(!r)return s;const u=me(n)==="y"?"height":"width",d=me(n),p=t[u]/2-o[u]/2;switch(r){case"start":s[d]-=p;break;case"end":s[d]+=p;break;default:throw new Error(`[Quidgest UI] Invalid alignment value: ${r}`)}return s}function at(t,o,n,a){const r=ee(n);let l=0;switch(r){case"top":l=t.top-(o.height+a);break;case"bottom":l=window.innerHeight-t.bottom-(o.height+a);break;case"left":l=t.left-(o.width+a);break;case"right":l=window.innerWidth-t.right-(o.width+a);break;default:throw new Error(`[Quidgest UI] Invalid side value: ${r}`)}return l}function No(t){return t==="x"?"y":"x"}function Ao(t){const o=ee(t);return["left","right"].includes(o)?"x":"y"}function me(t){return No(Ao(t))}function ee(t){const[o]=t.split("-");return o}function Do(t){const[,o]=t.split("-");return o}function lt(t){return t<0}function Io(t){return typeof t=="string"?document.querySelector(t):t}const Vo=["id"],qo=["role"],rt=P(e.defineComponent({inheritAttrs:!1,__name:"QOverlay",props:e.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"},focusTrap:{type:Boolean},centerVertically:{type:Boolean}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:e.mergeModels(["enter","leave"],["update:modelValue"]),setup(t,{emit:o}){const n=t,a=o,r=e.useModel(t,"modelValue"),{class:l}=Fe(),i=e.computed(()=>["q-overlay",`q-overlay--${ee(c.placement)}`,l.value,{"q-overlay--independent":s.value,"q-overlay--inverted":n.appearance==="inverted","q-overlay--center":n.centerVertically},n.class]),s=e.computed(()=>n.anchor===void 0),u=e.computed(()=>r.value&&!n.nonModal),d=e.computed(()=>(r.value||c.animating)&&n.scrollLock),p=e.computed(()=>!n.inline&&(r.value||c.animating)),c=e.reactive({animating:!1,top:0,left:0,width:0,placement:n.placement}),m=e.reactive({top:void 0,left:void 0,hidden:!0});e.watch(r,C);const _=e.computed(()=>{if(s.value)return;const $=b(),J=n.width==="anchor",G=J?$==null?void 0:$.getBoundingClientRect().width:void 0;return{top:`${c.top}px`,left:`${c.left}px`,width:G!==void 0?`${G}px`:void 0}}),B=e.computed(()=>{if(n.arrow)return{top:m.top!==void 0?`${m.top}px`:void 0,left:m.left!==void 0?`${m.left}px`:void 0,opacity:m.hidden?0:1}}),v=e.ref(null),S=e.ref(null),T=e.ref(null);function q(){const $=b();if(!$||!S.value)return;const J={placement:n.placement,width:n.width,offset:n.offset,crossOffset:n.crossOffset,arrow:n.arrow},G=_o($,S.value,(v==null?void 0:v.value)??void 0,J);c.left=G.overlayCoords.x,c.top=G.overlayCoords.y,c.placement=G.placement,m.hidden=G.arrowCoords===void 0,G.arrowCoords&&(m.top=G.arrowCoords.y,m.left=G.arrowCoords.x)}e.watch(()=>n.placement,()=>e.nextTick(q));let I;function D(){E(0)}function R(){E(n.delay)}function E($){I&&k(),I=window.setTimeout(()=>{r.value=!0},$)}function M(){if(I&&k(),r.value=!1,n.anchor&&n.trigger==="click"){const $=b();e.nextTick(()=>$==null?void 0:$.focus())}}function k(){clearTimeout(I),I=void 0}function V(){e.nextTick(se),a("enter")}function F(){A()}function f(){a("leave")}function g(){A(),Ya()}function C(){c.animating=!0}function A(){c.animating=!1}function b(){return n.anchor?Io(n.anchor):null}function x($){n.persistent&&$.preventDefault()}function w($){var J;if(n.persistent){$.preventDefault();return}let G=!1;$.defaultPrevented||$.detail.originalEvent.type==="pointerdown"&&(G=!0);const Xa=$.detail.originalEvent.target;if((J=b())!=null&&J.contains(Xa)){$.preventDefault();return}$.detail.originalEvent.type==="focusin"&&G&&$.preventDefault()}function h(){M()}let y;function N(){const $=b();if($)switch(y=new MutationObserver(q),y.observe($,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),n.trigger){case"click":$.addEventListener("click",D);break;case"hover":$.addEventListener("mouseenter",R),$.addEventListener("mouseleave",M),$.addEventListener("focusin",D),$.addEventListener("focusout",M);break}}function O(){const $=b();if($)switch(y==null||y.disconnect(),n.trigger){case"click":$.removeEventListener("click",D);break;case"hover":$.removeEventListener("mouseenter",R),$.removeEventListener("mouseleave",M),$.removeEventListener("focusin",D),$.removeEventListener("focusout",M);break}}function L(){window.addEventListener("resize",q),n.scrollLock||window.addEventListener("scroll",q)}function Z(){window.removeEventListener("resize",q),n.scrollLock||window.removeEventListener("scroll",q)}let te;function ne(){b()?(q(),te=window.setTimeout(ne,100)):M()}function se(){var $;s.value||(L(),n.spy?ne():q()),(s.value||n.trigger==="click")&&(($=S.value)==null||$.focus())}function Ya(){s.value||Z(),n.spy&&(clearTimeout(te),te=void 0)}return e.onMounted(()=>{e.nextTick(N)}),e.onBeforeUnmount(O),($,J)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!p.value,to:n.attach},[e.createVNode(e.Transition,{name:"fade",appear:""},{default:e.withCtx(()=>[u.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([n.backdropClass,"q-overlay__underlay",{"q-overlay__underlay--blur":n.backdropBlur}])},null,2)):e.createCommentVNode("v-if",!0)]),_:1}),e.createVNode(e.Transition,{name:n.transition,appear:"",onEnter:V,onAfterEnter:F,onLeave:f,onAfterLeave:g},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,id:n.id,ref_key:"overlayContainerRef",ref:T,tabindex:"-1",class:e.normalizeClass(i.value),style:e.normalizeStyle(_.value)},[e.createVNode(e.unref(xn),{onDismiss:h,onInteractOutside:w,onPointerDownOutside:x},{default:e.withCtx(()=>[T.value?(e.openBlock(),e.createBlock(e.unref(uo),{key:0,disabled:n.nonModal||!r.value,options:{fallbackFocus:T.value}},{default:e.withCtx(()=>[e.createElementVNode("div",e.mergeProps({ref_key:"overlayRef",ref:S,class:"q-overlay__content",tabindex:"-1",role:u.value?"dialog":void 0},$.$attrs),[n.arrow?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"arrowRef",ref:v,role:"presentation",class:"q-overlay__arrow",style:e.normalizeStyle(B.value)},null,4)):e.createCommentVNode("v-if",!0),e.renderSlot($.$slots,"default")],16,qo)]),_:3},8,["disabled","options"])):e.createCommentVNode("v-if",!0)]),_:3})],14,Vo)):e.createCommentVNode("v-if",!0)]),_:3},8,["name"])],8,["disabled","to"])),d.value?(e.openBlock(),e.createBlock(e.unref(Bo),{key:0})):e.createCommentVNode("v-if",!0)],64))}})),Ro=[{id:"button",icon:{icon:"check"},props:{variant:"bold",label:"Ok"}}],Mo={icon:"check-circle-outline"},Lo={close:{icon:"close"}},To={key:0,class:"q-dialog__header"},Fo={class:"q-dialog__header-title"},Po={key:1,class:"q-dialog__body"},Oo={key:0,class:"q-dialog__body-icon"},zo={class:"q-dialog__body-text"},Uo=["innerHTML"],jo={key:1},Go={key:2,class:"q-dialog__footer"},Qo={class:"q-dialog__footer-buttons"},Ho=e.defineComponent({__name:"QDialog",props:e.mergeModels({id:{},class:{},title:{},text:{},icon:{default:()=>Mo},buttons:{default:()=>Ro},attach:{default:"body"},inline:{type:Boolean},backdropBlur:{type:Boolean,default:!0},dismissible:{type:Boolean},html:{type:Boolean,default:!0},icons:{default:()=>Lo},size:{default:"small"},centerVertically:{type:Boolean}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:e.mergeModels(["enter","leave"],["update:modelValue"]),setup(t,{emit:o}){const n=t,a=o,r=e.useModel(t,"modelValue"),l=e.computed(()=>["q-dialog",n.class]),i=e.computed(()=>`q-overlay--${n.size}`);function s(){r.value=!1}function u(c){var m;(m=c.action)==null||m.call(c),s()}function d(){a("enter")}function p(){a("leave")}return(c,m)=>(e.openBlock(),e.createBlock(e.unref(rt),{id:n.id,modelValue:r.value,"onUpdate:modelValue":m[0]||(m[0]=_=>r.value=_),"backdrop-class":"q-dialog__underlay","scroll-lock":"",persistent:"",inline:n.inline,attach:n.attach,"backdrop-blur":n.backdropBlur,"center-vertically":n.centerVertically,class:e.normalizeClass(i.value),onEnter:d,onLeave:p},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(l.value)},[n.title||c.$slots.header?(e.openBlock(),e.createElementBlock("div",To,[e.renderSlot(c.$slots,"header",{},()=>[e.createElementVNode("span",Fo,e.toDisplayString(n.title),1)])])):e.createCommentVNode("v-if",!0),n.icon||n.text||c.$slots.body?(e.openBlock(),e.createElementBlock("div",Po,[e.renderSlot(c.$slots,"body",{},()=>[e.renderSlot(c.$slots,"body.icon",{},()=>[n.icon?(e.openBlock(),e.createElementBlock("span",Oo,[e.createVNode(e.unref(z),e.normalizeProps(e.guardReactiveProps(n.icon)),null,16)])):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",zo,[n.html?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:n.text},null,8,Uo)):(e.openBlock(),e.createElementBlock("div",jo,e.toDisplayString(n.text),1))]),e.renderSlot(c.$slots,"body.append")])])):e.createCommentVNode("v-if",!0),n.buttons||c.$slots.footer?(e.openBlock(),e.createElementBlock("div",Go,[e.renderSlot(c.$slots,"footer",{},()=>[e.createElementVNode("span",Qo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.buttons,_=>(e.openBlock(),e.createBlock(e.unref(j),e.mergeProps({ref_for:!0},_.props,{key:_.id,onClick:()=>u(_)}),{default:e.withCtx(()=>[_.icon?(e.openBlock(),e.createBlock(e.unref(z),e.mergeProps({key:0,ref_for:!0},_.icon),null,16)):e.createCommentVNode("v-if",!0)]),_:2},1040,["onClick"]))),128))])])])):e.createCommentVNode("v-if",!0),n.dismissible?(e.openBlock(),e.createBlock(e.unref(j),{key:3,class:"q-dialog__close",variant:"text",onClick:s},{default:e.withCtx(()=>[e.createVNode(e.unref(z),e.normalizeProps(e.guardReactiveProps(n.icons.close)),null,16)]),_:1})):e.createCommentVNode("v-if",!0)],2)]),_:3},8,["id","modelValue","inline","attach","backdrop-blur","center-vertically","class"]))}}),ge=e.reactive({dialogs:[]});function Wo(){function t(n,a){const r=ae(a);return ge.dialogs.push({id:r,props:n}),r}function o(n){const a=ge.dialogs.findIndex(r=>r.id===n);a!==-1&&ge.dialogs.splice(a,1)}return{...ge,addDialog:t,removeDialog:o}}const Zo=e.defineComponent({inheritAttrs:!1,__name:"QDialogProvider",setup(t){const{dialogs:o,removeDialog:n}=Wo();return(a,r)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),l=>(e.openBlock(),e.createBlock(e.unref(it),e.mergeProps({key:l.id,ref_for:!0},l.props,{"model-value":"",onLeave:()=>e.unref(n)(l.id)}),null,16,["onLeave"]))),128))}}),it=P(Ho);P(Zo);const Jo={...Ue,placeholder:"Choose...",showOptions:"Show options"},Yo={...Re,...je},Xo={key:0,class:"q-select__value"},Ko={key:1,class:"q-select__placeholder"},ea=["data-key"],ta={key:0,class:"q-select__loader"},na=P(e.defineComponent({inheritAttrs:!1,__name:"QSelect",props:e.mergeModels({id:{},class:{},label:{},for:{},required:{type:Boolean},size:{},readonly:{type:Boolean},disabled:{type:Boolean},invalid:{type:Boolean},items:{},groups:{default:()=>[]},itemValue:{default:"key"},itemLabel:{default:"label"},clearable:{type:Boolean},loading:{type:Boolean},emptyValue:{},inline:{type:Boolean},icons:{default:()=>Yo},texts:{default:()=>Jo}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["before-show","before-hide","show","hide"],["update:modelValue"]),setup(t,{emit:o}){const n=t,a=o,r=e.useModel(t,"modelValue"),l=e.ref(!1),i=e.ref(null),s=e.ref(null),u=e.ref(null),d=e.computed(()=>p.value===void 0),p=e.computed(()=>{var k;return(k=n.items)==null?void 0:k.find(V=>V[n.itemValue]===r.value)}),c=e.computed(()=>p.value?p.value[n.itemLabel]:""),m=e.computed(()=>n.clearable&&!n.readonly&&!n.disabled&&!n.loading);function _(k){r.value=k,T()}function B(){m.value&&(_(n.emptyValue),E())}function v(k){var V,F,f;!((V=u.value)!=null&&V.contains(k.relatedTarget))&&!((f=(F=i.value)==null?void 0:F.fieldRef)!=null&&f.contains(k.relatedTarget))&&T()}function S(){l.value||(a("before-show"),l.value=!0)}function T(){l.value&&(a("before-hide"),l.value=!1)}function q(){n.readonly||n.disabled||(l.value?T():S())}function I(k){!k.key||n.readonly||n.disabled||(["Enter"," ","ArrowDown","ArrowUp","Home","End"].includes(k.key)&&(k.preventDefault(),k.stopPropagation()),["Enter"," ","ArrowDown"].includes(k.key)&&S(),["Escape","Tab"].includes(k.key)&&(l.value?T():m.value&&k.key==="Escape"&&B()),k.key==="Delete"&&n.clearable&&B())}function D(){var k;n.loading?(k=u.value)==null||k.focus():M(),a("show")}function R(){E(),a("hide")}function E(){var k,V;(V=(k=i.value)==null?void 0:k.fieldRef)==null||V.focus()}function M(){var k;(k=s.value)==null||k.$el.focus()}return e.watch(()=>n.loading,k=>{!k&&l.value&&e.nextTick(M)}),(k,V)=>{var F,f;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(we),e.mergeProps({id:n.id,ref_key:"triggerEl",ref:i,label:n.label,required:n.required,role:"combobox",tabindex:n.disabled?-1:0,class:["q-select",{"q-select--readonly":n.readonly,"q-select--disabled":n.disabled},n.class],readonly:n.readonly,disabled:n.disabled,"data-loading":n.loading,"aria-expanded":l.value,"aria-haspopup":"listbox",size:n.size,invalid:n.invalid},k.$attrs,{onClick:q,onKeydown:I}),e.createSlots({append:e.withCtx(()=>[e.renderSlot(k.$slots,"append"),m.value&&r.value?(e.openBlock(),e.createBlock(e.unref(Ge),{key:0,icons:n.icons,texts:n.texts,onClick:B},null,8,["icons","texts"])):e.createCommentVNode("v-if",!0),n.readonly?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(e.unref(j),{key:1,class:"q-select__chevron","aria-label":n.texts.showOptions,variant:"ghost",color:"neutral",borderless:"",tabindex:"-1",disabled:n.disabled,onClick:q},{default:e.withCtx(()=>[e.createVNode(e.unref(Wt),{"model-value":l.value,icons:n.icons},null,8,["model-value","icons"])]),_:1},8,["aria-label","disabled"]))]),default:e.withCtx(()=>[d.value?(e.openBlock(),e.createElementBlock("span",Ko,[!n.readonly&&!n.disabled?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(n.texts.placeholder),1)],64)):e.createCommentVNode("v-if",!0)])):(e.openBlock(),e.createElementBlock("span",Xo,e.toDisplayString(c.value),1))]),_:2},[(F=p.value)!=null&&F.icon||k.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>{var g,C;return[e.renderSlot(k.$slots,"prepend"),(g=p.value)!=null&&g.icon?(e.openBlock(),e.createBlock(e.unref(z),e.normalizeProps(e.mergeProps({key:0},(C=p.value)==null?void 0:C.icon)),null,16)):e.createCommentVNode("v-if",!0)]}),key:"0"}:void 0,k.$slots.extras?{name:"extras",fn:e.withCtx(()=>[e.renderSlot(k.$slots,"extras")]),key:"1"}:void 0]),1040,["id","label","required","tabindex","class","readonly","disabled","data-loading","aria-expanded","size","invalid"]),e.createVNode(e.unref(rt),{modelValue:l.value,"onUpdate:modelValue":V[0]||(V[0]=g=>l.value=g),spy:"",trigger:"manual",placement:"bottom-start",width:"anchor","scroll-lock":"",inline:n.inline,anchor:(f=i.value)==null?void 0:f.fieldRef,offset:2,onEnter:D,onLeave:R},{default:e.withCtx(()=>[e.createElementVNode("div",{ref_key:"contentRef",ref:u,"data-testid":"combobox-dropdown","data-key":n.id,class:"q-select__body",tabindex:"-1",onFocusout:v,onKeydown:e.withModifiers(I,["stop"])},[e.renderSlot(k.$slots,"body.prepend"),n.loading?(e.openBlock(),e.createElementBlock("div",ta,[e.createVNode(e.unref(Me),{size:24})])):(e.openBlock(),e.createBlock(e.unref(hn),{key:1,ref_key:"listRef",ref:s,class:"q-select__items",selectable:"",required:"","model-value":r.value,items:n.items,groups:k.groups,"item-label":n.itemLabel,"item-value":n.itemValue,"onUpdate:modelValue":_},{item:e.withCtx(({item:g})=>[e.renderSlot(k.$slots,"item",{item:g})]),_:3},8,["model-value","items","groups","item-label","item-value"])),e.renderSlot(k.$slots,"body.append")],40,ea)]),_:3},8,["modelValue","inline","anchor"])],64)}}})),oa=["id","required","placeholder","readonly","disabled","maxlength","rows","cols","resize","wrap"],aa=P(e.defineComponent({inheritAttrs:!1,__name:"QTextArea",props:e.mergeModels({id:{},class:{},label:{},for:{},required:{type:Boolean},size:{},readonly:{type:Boolean},disabled:{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(t){const o=t,n=e.useModel(t,"modelValue"),a=e.computed({get:()=>n.value,set:d=>{const p=o.maxLength;n.value=p?d==null?void 0:d.slice(0,p):d}});e.watch(n,d=>a.value=d,{immediate:!0});const r=ae(o.id),l=e.computed(()=>o.readonly||o.disabled?void 0:o.placeholder),i=e.computed(()=>({input:o.autosize?u:null})),s=e.ref(),{triggerResize:u}=Dn({element:e.computed(()=>o.autosize?s.value:void 0),styleProp:"minHeight"});return(d,p)=>(e.openBlock(),e.createBlock(e.unref(we),{class:e.normalizeClass(["q-text-area",o.class]),for:e.unref(r),label:o.label,size:o.size,readonly:o.readonly,disabled:o.disabled,required:o.required},e.createSlots({"label.prepend":e.withCtx(()=>[e.renderSlot(d.$slots,"label.prepend")]),"label.append":e.withCtx(()=>[e.renderSlot(d.$slots,"label.append")]),default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(r),ref_key:"textareaRef",ref:s,"onUpdate:modelValue":p[0]||(p[0]=c=>a.value=c),class:"q-text-area__input",required:o.required,placeholder:l.value,readonly:o.readonly,disabled:o.disabled,maxlength:o.maxLength,rows:o.rows,cols:o.cols,resize:o.resize,wrap:o.wrap},d.$attrs,e.toHandlers(i.value,!0)),null,16,oa),[[e.vModelText,a.value]])]),_:2},[d.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"prepend")]),key:"0"}:void 0,d.$slots.append?{name:"append",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"append")]),key:"1"}:void 0,d.$slots.extras?{name:"extras",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"extras")]),key:"2"}:void 0]),1032,["class","for","label","size","readonly","disabled","required"]))}}));function W(){return{copy:"Copy",apply:"Apply",applyAll:"Apply all",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!",commentDialogTitle:"Would you like to add a comment?",commentPlaceholder:"Type your comment here (optional)...",copyResponse:"Copy response",submitButton:"Submit",cancelButton:"Cancel",senderImage:"Sender Image",imagePreview:"Image preview",regenerateResponse:"Regenerate response",generatingResponse:"Generating",suggestionsForField:"Suggestions for field:",fileUpload:"Upload File"}}async function st(t,o){var u,d,p,c,m,_;const n=new AbortController,a=n.signal,l=(await Y({...t,headers:{Accept:"text/event-stream"},responseType:"stream",signal:a,adapter:"fetch"})).data;if(!l||!(l instanceof ReadableStream))throw new Error("Invalid stream response");const i=l.getReader(),s=new TextDecoder;for(;;){const{done:B,value:v}=await i.read();if(B){(u=o.onDone)==null||u.call(o);break}const T=s.decode(v,{stream:!0}).split(/\n\n+/);for(const q of T){const I=q.trim().split(`
|
|
46
|
-
`);let D="",R="";for(const E of I)E.startsWith("event:")?D=E.replace("event:","").trim():E.startsWith("data:")&&(R=E.replace("data:","").trim());if(D||(D="message"),!!R)try{const E=JSON.parse(R);switch(D){case"message":(d=o.onMessage)==null||d.call(o,E.value);break;case"error":(p=o.onError)==null||p.call(o,new Error(E.value));break;case"field_metadata":(c=o.onFieldMetadata)==null||c.call(o,E);break;case"done":(m=o.onDone)==null||m.call(o);break;default:console.warn(`Unknown event type: ${D}`)}}catch(E){(_=o.onError)==null||_.call(o,E),console.error("Error processing event:",E);continue}finally{B&&(i.releaseLock(),n.abort())}}}}function ct(t){const o=e.ref(!1),n=e.ref(null);async function a(d){o.value=!0,n.value=null;try{return{data:(await Y({...d,baseURL:t})).data,error:null}}catch(p){if(p instanceof Error)return n.value=p,console.error("Error in API request:",p),{data:null,error:p}}finally{o.value=!1}return{data:null,error:new Error("Unknown error occurred in baseRequest")}}async function r(d,p,c,m){return await a({method:"POST",url:"/prompt/load",data:{username:d,project:p,agentID:c,formId:m}})}async function l(d,p,c,m){return await a({method:"POST",url:"/prompt/clear",data:{username:d,project:p,agentID:c,formId:m}})}async function i(d,p,c){return o.value=!0,await st({method:"POST",url:`${t}/prompt/submit`,data:d},{onMessage:m=>{p(m)},onError:m=>{n.value=m,c==null||c(m),console.error("Error in sendPrompt:",m)},onDone:()=>o.value=!1})}async function s(d,p,c){return o.value=!0,await st({method:"POST",url:`${t}/get-job-result`,data:{jobId:d}},{onMessage:m=>p(m),onFieldMetadata:m=>c(m),onError:m=>{n.value=m,console.error("Error in getFieldSuggestionData:",m)},onDone:()=>o.value=!1})}async function u(d,p,c){return await a({method:"POST",url:"/prompt/feedback",data:{messageSessionID:c,feedbackValue:d,feedbackComment:p}})}return{isLoading:o,lastError:n,getChatData:r,clearChatData:l,getFieldSuggestionData:s,sendPrompt:i,handleFeedback:u}}const la=["innerHTML"],Ne=e.defineComponent({__name:"MarkdownRender",props:{source:{},options:{},plugins:{}},setup(t){const o=t,n=e.ref(new mt({html:!0,...o.options??{}}));o.plugins&&o.plugins.forEach(r=>n.value.use(r));const a=e.computed(()=>n.value.render(o.source));return(r,l)=>(e.openBlock(),e.createElementBlock("div",{class:"markdown-renderer",innerHTML:a.value},null,8,la))}});function dt(t,o){switch(t){case"date":return new Date(o).toLocaleDateString();case"number":return parseFloat(o);case"boolean":return o.toLowerCase()==="true";default:return o.toString()}}const ra={class:"q-field-preview"},ia={class:"q-field-preview__toolbar"},sa={class:"q-field-preview__content"},ca={class:"q-field-preview__footer"},da=e.defineComponent({__name:"FieldPreview",props:{name:{},text:{},type:{},disabled:{type:Boolean},applied:{type:Boolean}},emits:["apply"],setup(t,{emit:o}){const n=t,a=o,r=W(),l=e.ref(n.applied),i=e.computed(()=>n.disabled||l.value),s=e.computed(()=>n.type==="text"||n.type==="multiline_text"?Ne:"div"),u=e.computed(()=>{const p={};return s.value===Ne?p.source=n.text:p.innerHTML=n.text,p});function d(){if(l.value)return;l.value=!0;const p=dt(n.type,n.text);a("apply",p)}return(p,c)=>(e.openBlock(),e.createElementBlock("div",ra,[e.createElementVNode("div",ia,[e.createElementVNode("span",null,[e.createTextVNode(e.toDisplayString(e.unref(r).suggestionsForField)+" ",1),e.createElementVNode("b",null,e.toDisplayString(n.name),1)])]),e.createElementVNode("div",sa,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.value),e.normalizeProps(e.guardReactiveProps(u.value)),null,16))]),e.createElementVNode("div",ca,[e.createVNode(e.unref(Oe),{borderless:""},{default:e.withCtx(()=>[e.createVNode(e.unref(j),{"data-testid":"apply-button",label:e.unref(r).apply,disabled:i.value,readonly:i.value,onClick:d},{default:e.withCtx(()=>[e.createVNode(e.unref(z),{icon:"apply"})]),_:1},8,["label","disabled","readonly"])]),_:1})])]))}}),ua={class:"pulsing-dots"},pa={class:"generating-text"},fa={class:"dots-container"},ma=e.defineComponent({__name:"PulseDots",setup(t){const o=[1,2,3],n=W();return(a,r)=>(e.openBlock(),e.createElementBlock("div",ua,[e.createElementVNode("span",pa,e.toDisplayString(e.unref(n).generatingResponse),1),e.createElementVNode("div",fa,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(o,(l,i)=>e.createElementVNode("span",{key:i,class:"dot",style:e.normalizeStyle({animationDelay:i*.2+"s"})}," • ",4)),64))])]))}}),ga={class:"q-chatbot__message-container"},ba={class:"q-chatbot__message-wrapper"},ha={key:0,class:"q-chatbot__image-preview"},ya=["src","alt"],ka={key:1,class:"q-chatbot__file-preview-container"},wa={class:"q-chatbot__file-icon-container"},Ba={class:"q-chatbot__file-info"},_a={class:"q-chatbot__file-name"},xa={class:"q-chatbot__file-extension"},Ca={class:"q-chatbot__message"},Ea={key:1,class:"q-chatbot__text q-chatbot__user-text"},va=e.defineComponent({__name:"ChatBotMessage",props:{sender:{default:"user"},message:{},date:{default:()=>new Date},loading:{type:Boolean},dateFormat:{},file:{},apiEndpoint:{},sessionID:{},userImage:{default:void 0},chatbotImage:{},isWelcomeMessage:{type:Boolean},fields:{default:()=>[]}},emits:["apply-fields"],setup(t,{emit:o}){const n=t,a=o,r=W(),{handleFeedback:l}=ct(n.apiEndpoint),i=e.computed(()=>n.sender==="bot"&&!Object.values(r||{}).includes(n.message||"")&&!n.isWelcomeMessage),s=e.computed(()=>{var B;return((B=n.file)==null?void 0:B.fileData.type.startsWith("image/"))??!1}),u=e.computed(()=>n.sender==="bot"?n.chatbotImage:n.userImage),d=e.computed(()=>{var v,S;return(v=n.file)!=null&&v.fileData?((S=n.file.fileData.name.split(".").pop())==null?void 0:S.toUpperCase())??"":""});function p(){n.message&&navigator.clipboard.writeText(n.message).then(()=>{console.log("Response copied to clipboard")}).catch(B=>{console.error("Failed to copy response: ",B)})}function c(B,v){a("apply-fields",[{name:v.name,text:B}])}function m(){if(!n.fields||n.fields.length===0)return;const B=n.fields.map(v=>({name:v.name,text:dt(v.type,v.text)}));a("apply-fields",B)}function _(B,v){B===null||v===null||!n.sessionID||l(B,v,n.sessionID)}return(B,v)=>{var S,T,q;return e.openBlock(),e.createElementBlock("div",ga,[e.createVNode(e.unref(z),{type:"img",icon:u.value,alt:e.unref(r).senderImage,class:"q-chatbot__profile"},null,8,["icon","alt"]),e.createElementVNode("div",ba,[s.value?(e.openBlock(),e.createElementBlock("div",ha,[e.createElementVNode("img",{src:(S=n.file)==null?void 0:S.previewUrl,alt:e.unref(r).imagePreview},null,8,ya)])):(T=n.file)!=null&&T.fileData&&!s.value?(e.openBlock(),e.createElementBlock("div",ka,[e.createElementVNode("div",wa,[e.createVNode(e.unref(z),{icon:"file",class:"q-chatbot__file-icon"})]),e.createElementVNode("div",Ba,[e.createElementVNode("span",_a,e.toDisplayString((q=n.file)==null?void 0:q.fileData.name),1),e.createElementVNode("span",xa,e.toDisplayString(d.value),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Ca,[B.loading?(e.openBlock(),e.createBlock(ma,{key:0})):n.sender==="bot"&&n.fields.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(n.fields,(I,D)=>(e.openBlock(),e.createBlock(e.unref(da),{key:D,class:"q-chatbot__text",text:I.text||"",name:I.name,type:I.type,disabled:B.loading,onApply:R=>c(R,I)},null,8,["text","name","type","disabled","onApply"]))),128)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[n.sender==="bot"?(e.openBlock(),e.createBlock(e.unref(Ne),{key:0,class:"q-chatbot__text",source:n.message||""},null,8,["source"])):(e.openBlock(),e.createElementBlock("div",Ea,e.toDisplayString(n.message),1))],64))])]),e.createVNode(e.unref(Va),{"show-buttons":i.value,loading:n.loading,"date-format":n.dateFormat,onCopyResponse:p,onSubmitFeedback:_,onApplyAll:m},null,8,["show-buttons","loading","date-format"])])}}}),U=[];for(let t=0;t<256;++t)U.push((t+256).toString(16).slice(1));function $a(t,o=0){return(U[t[o+0]]+U[t[o+1]]+U[t[o+2]]+U[t[o+3]]+"-"+U[t[o+4]]+U[t[o+5]]+"-"+U[t[o+6]]+U[t[o+7]]+"-"+U[t[o+8]]+U[t[o+9]]+"-"+U[t[o+10]]+U[t[o+11]]+U[t[o+12]]+U[t[o+13]]+U[t[o+14]]+U[t[o+15]]).toLowerCase()}let Ae;const Sa=new Uint8Array(16);function Na(){if(!Ae){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");Ae=crypto.getRandomValues.bind(crypto)}return Ae(Sa)}const ut={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function pt(t,o,n){var r;if(ut.randomUUID&&!o&&!t)return ut.randomUUID();t=t||{};const a=t.random??((r=t.rng)==null?void 0:r.call(t))??Na();if(a.length<16)throw new Error("Random bytes length must be >= 16");return a[6]=a[6]&15|64,a[8]=a[8]&63|128,$a(a)}const ie=e.ref([]),be=e.ref(1);function ft(){function t(r,l,i,s,u){const d={id:be.value++,message:r,date:new Date,sender:l||"bot",sessionID:s||pt(),file:i,isWelcomeMessage:u,fields:[]};return ie.value.push(d),d}function o(){return ie.value.find(r=>r.id===be.value-1)}function n(){ie.value=[],be.value=1}function a(){return ie.value}return{messages:ie,nextMessageId:be,addChatMessage:t,getLastMessage:o,clearMessages:n,getMessages:a}}const Aa={class:"q-chatbot__dialog-title"},Da={key:0,class:"q-chatbot__feedback-buttons"},Ia={class:"q-chatbot__sender"},Va=e.defineComponent({__name:"ChatBotMessageButtons",props:{loading:{type:Boolean},showButtons:{type:Boolean},dateFormat:{},date:{}},emits:["submit-feedback","copy-response","apply-all"],setup(t,{emit:o}){const n=t,a=o,r=W(),{getLastMessage:l}=ft(),i=e.ref(!1),s=e.ref(""),u=e.ref(null),d=e.ref(!1),p=e.computed(()=>n.loading||d.value),c=n.date||new Date,m=l(),_=e.computed(()=>m?m.fields&&m.fields.length>1:!1),B=[{id:"confirm-btn",action:E,props:{label:r.submitButton,class:"q-chatbot__dialog-confirm-button"},icon:{icon:"submit"}},{id:"cancel-btn",props:{label:r.cancelButton,class:"q-chatbot__dialog-cancel-button"},icon:{icon:"cancel"}}],v=e.computed(()=>n.dateFormat?T(c,"HH:mm"):c.toLocaleString()),S=e.computed(()=>`${v.value}`);function T(k,V){const F=k.getDate().toString().padStart(2,"0"),f=(k.getMonth()+1).toString().padStart(2,"0"),g=k.getFullYear().toString().padStart(2,"0"),C=k.getHours().toString().padStart(2,"0"),A=k.getMinutes().toString().padStart(2,"0"),b=k.getSeconds().toString().padStart(2,"0");return V.replace("dd",F).replace("MM",f).replace("yyyy",g).replace("HH",C).replace("mm",A).replace("ss",b)}function q(k){i.value=!0,s.value="",u.value=k}function I(){q(0)}function D(){q(1)}function R(){d.value||(d.value=!0,a("apply-all"))}function E(){u.value&&(a("submit-feedback",u.value,s.value),i.value=!1,s.value="",u.value=null)}function M(){a("copy-response")}return(k,V)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(it),{modelValue:i.value,"onUpdate:modelValue":V[1]||(V[1]=F=>i.value=F),inline:"",buttons:B},{body:e.withCtx(()=>[e.createElementVNode("div",Aa,e.toDisplayString(e.unref(r).commentDialogTitle),1),e.createVNode(e.unref(an),{modelValue:s.value,"onUpdate:modelValue":V[0]||(V[0]=F=>s.value=F),class:"q-chatbot__dialog-comment-input","max-length":150,size:"large",placeholder:e.unref(r).commentPlaceholder},null,8,["modelValue","placeholder"])]),_:1},8,["modelValue"]),k.showButtons?(e.openBlock(),e.createElementBlock("div",Da,[e.createVNode(e.unref(Oe),null,{default:e.withCtx(()=>[e.createVNode(e.unref(j),{title:e.unref(r).goodResponse,class:"q-chatbot__good-response-button",borderless:"",disabled:n.loading,onClick:D},{default:e.withCtx(()=>[e.createVNode(e.unref(z),{icon:"thumb-up"})]),_:1},8,["title","disabled"]),e.createVNode(e.unref(j),{title:e.unref(r).badResponse,class:"q-chatbot__bad-response-button",borderless:"",disabled:n.loading,onClick:I},{default:e.withCtx(()=>[e.createVNode(e.unref(z),{icon:"thumb-down"})]),_:1},8,["title","disabled"]),e.createVNode(e.unref(j),{title:e.unref(r).copyResponse,class:"q-chatbot__copy-button",borderless:"",disabled:n.loading,onClick:M},{default:e.withCtx(()=>[e.createVNode(e.unref(z),{icon:"copy-content"})]),_:1},8,["title","disabled"]),_.value?(e.openBlock(),e.createBlock(e.unref(j),{key:0,title:e.unref(r).applyAll,class:"q-chatbot__apply-all-button",borderless:"",disabled:p.value,readonly:p.value,onClick:R},{default:e.withCtx(()=>[e.createVNode(e.unref(z),{icon:"apply-all"})]),_:1},8,["title","disabled","readonly"])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0),e.createElementVNode("div",Ia,e.toDisplayString(S.value),1)],64))}}),qa={class:"q-chatbot__tools"},Ra={class:"q-chatbot__tools__select"},Ma=e.defineComponent({__name:"ChatToolBar",props:{disabled:{type:Boolean},availableAgents:{default:()=>[]},selectedAgentKey:{}},emits:["clear","change-chat"],setup(t,{emit:o}){const n=t,a=o,{clearChat:r}=W(),l={key:"",value:"Default Chat",formId:""},i=e.computed(()=>n.availableAgents&&n.availableAgents.length>0),s=e.ref(n.selectedAgentKey||l.key);e.watch(()=>n.selectedAgentKey,c=>{s.value=c||l.key});const u=e.computed(()=>{var m;const c=(m=n.availableAgents)==null?void 0:m.map(_=>({key:_.key,value:_.value,formId:_.formId}));return c==null||c.push(l),c||[l]});function d(){a("clear")}function p(c){const m=u.value.find(_=>_.key===c);if(m){if(m.key===l.key){a("change-chat",{key:"",formId:""});return}a("change-chat",m)}}return(c,m)=>(e.openBlock(),e.createElementBlock("div",qa,[e.createElementVNode("div",Ra,[i.value?(e.openBlock(),e.createBlock(e.unref(na),{key:0,modelValue:s.value,"onUpdate:modelValue":[m[0]||(m[0]=_=>s.value=_),p],class:"q-chatbot__tools-select-input",size:"medium",items:u.value},null,8,["modelValue","items"])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(j),{title:e.unref(r),disabled:n.disabled,class:"q-chatbot__tools-clear",borderless:"",onClick:d},{default:e.withCtx(()=>[e.createVNode(e.unref(z),{icon:"bin"})]),_:1},8,["title","disabled"])]))}}),La={class:"q-chatbot__input-wrapper"},Ta={key:0,class:"q-chatbot__file-preview"},Fa=["src","alt"],Pa={key:1,class:"q-chatbot__file-preview",tabindex:"0"},Oa={class:"q-chatbot__file-name"},za={class:"q-chatbot__input"},Ua={class:"q-chatbot__send-container"},ja=["accept"],Ga=e.defineComponent({__name:"ChatBotInput",props:{disabled:{type:Boolean},loading:{type:Boolean},userPrompt:{},agentId:{}},emits:["send-message"],setup(t,{emit:o}){const n=t,a=o,r=W(),l=e.ref(null),i=e.ref(null),s=e.ref(""),u=e.ref(!1),d=e.computed(()=>".png,.jpeg,.jpg,.svg,.webp,.pdf,.doc,.docx"),p=e.computed(()=>i.value?i.value.type.startsWith("image/")??!1:!1),c=e.ref(n.userPrompt??""),m=e.computed(()=>n.disabled||n.loading||c.value.trim().length===0);function _(E){E.preventDefault(),n.disabled||(u.value=!0)}const B=e.computed(()=>({"q-chatbot__footer-disabled":n.disabled,"drag-over":u.value&&!i.value}));function v(E){E.preventDefault(),u.value=!1}function S(E){var k;if(E.preventDefault(),u.value=!1,n.disabled||i.value)return;const M=(k=E.dataTransfer)==null?void 0:k.files;M&&T(M[0])}function T(E){i.value=E,E.type.startsWith("image/")?s.value=URL.createObjectURL(E):s.value=""}function q(){if(!(c.value.trim()===""||n.loading||n.disabled)){if(i.value){const E={fileData:i.value,previewUrl:s.value??""};a("send-message",c.value,E),I()}else a("send-message",c.value);c.value=""}}function I(){i.value=null,s.value="",l.value&&(l.value.value="",l.value.files=null)}function D(){var E;(E=l.value)==null||E.click()}function R(E){var k;const M=E.target;(k=M.files)!=null&&k[0]&&T(M.files[0])}return(E,M)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(ze),{label:e.unref(r).inputLabel},null,8,["label"]),e.createElementVNode("div",{class:e.normalizeClass(["q-chatbot__footer",B.value]),onDragover:e.withModifiers(_,["prevent"]),onDragleave:e.withModifiers(v,["prevent"]),onDrop:e.withModifiers(S,["prevent"])},[e.createElementVNode("div",La,[i.value?(e.openBlock(),e.createElementBlock("div",Ta,[p.value?(e.openBlock(),e.createElementBlock("img",{key:0,class:"q-chatbot__image-preview",src:s.value,tabindex:"0",alt:e.unref(r).imagePreview},null,8,Fa)):(e.openBlock(),e.createElementBlock("div",Pa,[e.createVNode(e.unref(z),{icon:"file",class:"q-chatbot__file-icon"}),e.createElementVNode("span",Oa,e.toDisplayString(i.value.name),1)])),e.createVNode(e.unref(j),{class:"q-chatbot__remove-file",tabindex:"0",flat:"",round:"",onClick:I},{default:e.withCtx(()=>[e.createVNode(e.unref(z),{icon:"remove"})]),_:1})])):e.createCommentVNode("",!0),e.createElementVNode("div",za,[e.createVNode(e.unref(aa),{modelValue:c.value,"onUpdate:modelValue":M[0]||(M[0]=k=>c.value=k),size:"block",autosize:"",resize:"none",rows:2,disabled:n.disabled,onKeyup:e.withKeys(q,["enter"])},null,8,["modelValue","disabled"])]),e.createElementVNode("div",Ua,[e.createVNode(e.unref(j),{title:e.unref(r).imageUpload,class:"q-chatbot__upload",disabled:n.disabled||n.loading||!!i.value,onClick:D},{default:e.withCtx(()=>[e.createVNode(e.unref(z),{icon:"upload"})]),_:1},8,["title","disabled"]),e.createElementVNode("input",{id:"file-upload",ref_key:"fileInput",ref:l,type:"file",accept:d.value,class:"hidden-input",onChange:R},null,40,ja),e.createVNode(e.unref(j),{title:e.unref(r).sendMessage,variant:"bold",class:"q-chatbot__send",disabled:m.value,readonly:m.value,onClick:q},{default:e.withCtx(()=>[e.createVNode(e.unref(z),{icon:"send"})]),_:1},8,["title","disabled","readonly"])])])],34)],64))}}),Qa="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20viewBox='0%200%20126.25%20110.36'%3e%3cdefs%3e%3cradialGradient%20id='radial-gradient'%20cx='45.24'%20cy='38.05'%20fx='45.24'%20fy='38.05'%20r='59.09'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0'%20stop-color='%2331319e'/%3e%3cstop%20offset='.19'%20stop-color='%232e2e97'/%3e%3cstop%20offset='.45'%20stop-color='%23292985'/%3e%3cstop%20offset='.75'%20stop-color='%23202067'/%3e%3cstop%20offset='1'%20stop-color='%2317174a'/%3e%3c/radialGradient%3e%3clinearGradient%20id='linear-gradient'%20x1='82.65'%20y1='50.41'%20x2='82.65'%20y2='77.5'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='.02'%20stop-color='%2366ebfe'/%3e%3cstop%20offset='.96'%20stop-color='%2300bfdb'/%3e%3c/linearGradient%3e%3clinearGradient%20id='linear-gradient-2'%20x1='44.6'%20y1='50.01'%20x2='44.6'%20y2='77.1'%20xlink:href='%23linear-gradient'/%3e%3c/defs%3e%3cg%20isolation='isolate'%3e%3cg%20id='Layer_1'%3e%3cpath%20d='M126.2,61.4c-.2-3.69-2.61-17.39-5.92-22.09-2.42-3.44-5.89-4.03-7.96-4.38-.13-.02-.27-.05-.41-.07-.16-.28-.32-.58-.45-.81-.63-1.14-1.03-1.87-1.44-2.44-6.96-9.88-14.91-16.51-24.85-20.69-.25-2.29-.84-5.24-3.37-7.44-2.93-2.55-7.58-2.9-11.68-3.21-.93-.07-1.82-.14-2.4-.22l-.33-.05h-8.61l-.36.05c-.65.1-1.61.17-2.63.24-3.75.27-8.01.57-10.98,2.85-2.94,2.26-3.58,5.55-3.79,7.84-9.71,3.94-17.86,10.71-24.85,20.62-.4.57-.81,1.3-1.43,2.44-.13.23-.29.53-.45.81-.14.02-.28.05-.4.07-2.07.35-5.54.94-7.96,4.39-2.25,3.19-3.84,9.89-4.58,13.59-.6,2.97-1.9,10.3-1.08,14.26.79,3.78,3.66,5.6,5.37,6.68.12.08.26.16.39.25,1.65,10.03,6.98,18.56,15.52,24.77,9.23,6.72,20.2,9.43,27.78,10.52,4.49.65,9.15.97,13.85.97,9.67,0,23.77-1.39,36-8.02,11.58-6.27,18.81-16,21.04-28.24,4.52-2.76,6.36-5.67,5.98-12.71Z'%20fill='%2317174a'/%3e%3cpath%20d='M67.15,4.69c2.98.42,9.31.31,11.62,2.31,1.99,1.73,1.65,4.82,2.06,7.22,10.77,3.89,18.73,10.59,25.39,20.04.64.91,2.13,3.95,2.58,4.33,1.71,1.46,5.54.35,7.67,3.37,2.29,3.25,4.83,15.41,5.06,19.59.31,5.82-.76,6.9-5.58,9.44-3.28,26.16-29.7,34.5-52.68,34.5-4.6,0-9.06-.33-13.17-.93-18.13-2.61-37.11-12.11-39.51-33.08-1.7-1.92-4.96-2.54-5.55-5.39-.95-4.56,2.21-20.32,4.89-24.14,2.13-3.02,5.96-1.91,7.67-3.37.46-.39,1.94-3.42,2.58-4.33,6.54-9.28,14.55-16.22,25.21-19.87.85-.87-.3-5.45,2.43-7.55,2.52-1.94,8.35-1.69,11.42-2.16h7.91'%20fill='%23fff'/%3e%3cpath%20d='M121.86,61.51c-.22-4.2-2.78-16.43-5.07-19.7-1.77-2.51-4.71-2.18-6.64-2.83.1,1.18.16,2.37.16,3.57,0,26.85-25.96,48.61-57.98,48.61-15.83,0-30.17-5.32-40.63-13.94,4.91,17.1,22.06,25.14,38.51,27.52,4.12.59,8.6.93,13.21.93,23.06,0,49.57-8.38,52.85-34.68,4.83-2.56,5.91-3.63,5.6-9.49Z'%20fill='%23d0d7e2'%20mix-blend-mode='multiply'%20opacity='.4'/%3e%3cpath%20d='M62.91,97.68c5.82,0,11.67-.53,16.72-1.56,13.1-2.67,22.09-8.06,26.72-16.03,4.43-7.63,4.75-17.33.96-28.84-4.28-13-13.22-22.77-24.7-27.89-.13,4.51-3.84,8.16-8.38,8.16h-20.89c-4.61,0-8.39-3.78-8.39-8.39v-.14c-5.36,2.25-10.29,5.49-14.5,9.61-8.23,8.06-13.16,19.02-13.9,30.84-.59,9.44,2.67,17.53,9.43,23.42,6.27,5.46,15.68,9.02,27.2,10.3,3.13.35,6.43.52,9.73.52'%20fill='url(%23radial-gradient)'/%3e%3crect%20x='74.34'%20y='50.41'%20width='16.62'%20height='27.09'%20rx='4.06'%20ry='4.06'%20fill='url(%23linear-gradient)'/%3e%3crect%20x='36.29'%20y='50.01'%20width='16.62'%20height='27.09'%20rx='4.06'%20ry='4.06'%20fill='url(%23linear-gradient-2)'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e",Ha="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAYAAAA5ZDbSAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF2GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOS0xMS0yOVQxMDoyNDo1N1oiIHhtcDpNb2RpZnlEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpiN2ViMDM0NC1hN2UzLTI3NGItODgwNi00ZjMxMzRiNDUwNDEiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2ODJkMGU1OC1kZmQyLTZkNDEtOGIwNy01ZWUxNjU4MWY2ZWEiIHht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",Wa={class:"q-chatbot"},Za={class:"q-chatbot__content"},Ja={class:"q-chatbot__footer-container"};return e.defineComponent({name:"ChatBot",__name:"ChatBot",props:{apiEndpoint:{default:"http://localhost:3000"},controllerEndpoint:{},username:{},projectPath:{},userImage:{default:Ha},chatbotImage:{default:Qa},dateFormat:{},agentData:{default:()=>({id:"",formId:"",jobId:""})},availableAgents:{default:()=>[]}},emits:["apply-fields"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(!0),l=e.ref(null),i=e.ref(!0),s=e.ref(n.agentData.id),u=e.ref(n.agentData.formId),d=W(),{isLoading:p,clearChatData:c,getChatData:m,getFieldSuggestionData:_,sendPrompt:B}=ct(n.apiEndpoint),{messages:v,addChatMessage:S,clearMessages:T,getLastMessage:q}=ft(),I=e.computed(()=>r.value||p.value);e.onBeforeMount(()=>{var h;(h=l.value)==null||h.removeEventListener("scroll",F)}),e.onMounted(()=>{R()});function D(h){r.value=h}async function R(){try{await E()}catch(h){S(d.loginError),console.error("Error logging in: "+h)}}async function E(){D(!0);const{data:h,error:y}=await m(n.username,n.projectPath,s.value,u.value);if(y||!h||!h.success){D(!0),S(d.botIsSick),console.log("Error loading chat data: "+y);return}D(!1),M(),h.history.forEach(async N=>{S(N.content,N.type==="ai"?"bot":"user",void 0,N.sessionID)})}function M(){const h=d.initialMessage;S(h,"bot",void 0,void 0,!0)}function k(){T(),D(!1),i.value=!0}function V(){e.nextTick(()=>{l.value&&(l.value.scrollTop=l.value.scrollHeight)})}function F(){if(l.value){const{scrollTop:y,clientHeight:N,scrollHeight:O}=l.value;i.value=y+N>=O-20}}async function f(h,y){l.value&&l.value.scrollTo({top:l.value.scrollHeight,behavior:"smooth"}),S(h,"user",y),e.nextTick(()=>{i.value&&V()}),C(h,y==null?void 0:y.fileData)}async function g(h){l.value&&l.value.scrollTo({top:l.value.scrollHeight,behavior:"smooth"}),S("","bot"),e.nextTick(()=>{i.value&&V()});const y=q();y&&await _(h,N=>{y.message+=N,y.fields||(y.fields=[]);const O=y.fields[y.fields.length-1];O.text=y.message,i.value&&V()},N=>{var L;y.message="";const O=N;(L=y.fields)==null||L.push({type:O.type,name:O.name,text:O.text})})}async function C(h,y){S("","bot");const N=q();if(!N)return;const O=(N==null?void 0:N.sessionID)||pt(),L=new FormData;y&&L.append("file",y),L.append("message",h),L.append("project",n.projectPath),L.append("user",n.username),L.append("sessionID",O),await B(L,Z=>{N&&(N.message+=Z),i.value&&V()},Z=>{D(!0),S(d.botIsSick),console.error("Error sending message: "+Z)})}async function A(){const{data:h,error:y}=await c(n.username,n.projectPath,s.value,u.value);if(y||!h||!h.success){D(!0),S(d.loginError),console.log("Error clearing chat: "+y);return}k(),M()}function b(h){const y=["q-chatbot__messages-wrapper"];return h==="user"&&y.push("q-chatbot__messages-wrapper_right"),y}function x(h){s.value=h.key,u.value=h.formId,k(),E()}function w(h){!h||h.length===0||a("apply-fields",h)}return e.watch(()=>n.availableAgents,(h,y)=>{h.length===0&&y.length>0&&(s.value="",u.value="",k(),R())}),e.watch(()=>n.agentData,async(h,y)=>{var N;I.value||(((N=n.agentData)==null?void 0:N.id)!==(y==null?void 0:y.id)&&(s.value=(h==null?void 0:h.id)||"",u.value=(h==null?void 0:h.formId)||"",k(),await R()),(h==null?void 0:h.id)!==""&&h&&h.jobId!==y.jobId&&await g(h.jobId))}),e.watch(()=>[n.agentData.id,n.agentData.formId],([h,y])=>{s.value=h,u.value=y},{immediate:!0}),(h,y)=>(e.openBlock(),e.createElementBlock("div",Wa,[e.createElementVNode("div",Za,[e.createVNode(e.unref(Ma),{disabled:I.value,"available-agents":n.availableAgents,"selected-agent-key":s.value,onClear:A,onChangeChat:x},null,8,["disabled","available-agents","selected-agent-key"]),e.createElementVNode("div",{ref_key:"messagesContainer",ref:l,class:"q-chatbot__messages-container",onScroll:F},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(v),N=>(e.openBlock(),e.createElementBlock("div",{key:N.id,class:e.normalizeClass(b(N.sender))},[e.createVNode(e.unref(va),e.mergeProps({ref_for:!0},N,{"date-format":n.dateFormat,"user-image":n.userImage,"chatbot-image":n.chatbotImage,loading:e.unref(p)&&!N.message,file:N.file,"api-endpoint":n.apiEndpoint,"session-i-d":N.sessionID,fields:N.fields,onApplyFields:w}),null,16,["date-format","user-image","chatbot-image","loading","file","api-endpoint","session-i-d","fields"])],2))),128))],544)]),e.createElementVNode("div",Ja,[e.createVNode(e.unref(Ga),{disabled:I.value,loading:e.unref(p),onSendMessage:f},null,8,["disabled","loading"])])]))}})});
|
|
45
|
+
`;return e.onMounted(()=>{document.body.setAttribute(te,(a()+1).toString());const r=Jn(o.gapMode);n.add(l(r,!o.noRelative,o.gapMode,o.noImportant?"":"!important"))}),e.onUnmounted(()=>{const r=a()-1;r<=0?document.body.removeAttribute(te):document.body.setAttribute(te,r.toString()),n.remove()}),(r,i)=>e.renderSlot(r.$slots,"default")}}));function to(t,o,n,a){const l=(a==null?void 0:a.offset)??0,r=(a==null?void 0:a.crossOffset)??0,i=(a==null?void 0:a.placement)??"bottom",s=t.getBoundingClientRect(),u=o.getBoundingClientRect(),d=n==null?void 0:n.getBoundingClientRect(),f=no(s,u,i,l),c=io(s,u,f),m=ao(c,f,l),h=ro(m,f,r),b=oo(h,u,f);let w;if(a!=null&&a.arrow){if(!d)throw new Error("[Quidgest UI] The arrow element must exist to compute its position");w=lo(b,s,u,d,f)}return{overlayCoords:b,arrowCoords:w,placement:f}}function no(t,o,n,a){const l=Ke(t,o,n,a);if(et(l)){const r=ne(n),i={top:"bottom",bottom:"top",left:"right",right:"left"}[r],s=Ke(t,o,i,a);if(et(s))return n;const u=uo(n);return u?`${i}-${u}`:i}return n}function oo(t,o,n){const a=fe(n),l=(i,s,u)=>Math.min(Math.max(i,s),u),r={...t};return a==="x"?r.x=l(t.x,8,window.innerWidth-o.width-8):r.y=l(t.y,8,window.innerHeight-o.height-8),r}function ao(t,o,n){const a=ne(o);return{x:t.x+(a==="left"?-n:a==="right"?n:0),y:t.y+(a==="top"?-n:a==="bottom"?n:0)}}function ro(t,o,n){const a=ne(o);return{x:t.x+(a==="top"||a==="bottom"?n:0),y:t.y+(a==="right"||a==="left"?n:0)}}function lo(t,o,n,a,l){if(fe(l)==="y"){const r=o.top+o.height/2,i=t.y+n.height/2,s=i-r,u=n.height/2-s-a.height/2+2;if(u>0&&u<n.height-a.height)return{y:u}}else{const r=o.left+o.width/2,i=t.x+n.width/2,s=i-r,u=n.width/2-s-a.width/2+2;if(u>0&&u<n.width-a.width)return{x:u}}}function io(t,o,n){const[a,l]=n.split("-"),r=t.x+t.width/2-o.width/2,i=t.y+t.height/2-o.height/2;let s;switch(a){case"top":s={x:r,y:t.y-o.height};break;case"bottom":s={x:r,y:t.y+t.height};break;case"left":s={x:t.x-o.width,y:i};break;case"right":s={x:t.x+t.width,y:i};break;default:throw new Error(`[Quidgest UI] Invalid placement value: ${n}`)}if(!l)return s;const u=fe(n)==="y"?"height":"width",d=fe(n),f=t[u]/2-o[u]/2;switch(l){case"start":s[d]-=f;break;case"end":s[d]+=f;break;default:throw new Error(`[Quidgest UI] Invalid alignment value: ${l}`)}return s}function Ke(t,o,n,a){const l=ne(n);let r=0;switch(l){case"top":r=t.top-(o.height+a);break;case"bottom":r=window.innerHeight-t.bottom-(o.height+a);break;case"left":r=t.left-(o.width+a);break;case"right":r=window.innerWidth-t.right-(o.width+a);break;default:throw new Error(`[Quidgest UI] Invalid side value: ${l}`)}return r}function so(t){return t==="x"?"y":"x"}function co(t){const o=ne(t);return["left","right"].includes(o)?"x":"y"}function fe(t){return so(co(t))}function ne(t){const[o]=t.split("-");return o}function uo(t){const[,o]=t.split("-");return o}function et(t){return t<0}function po(t){return typeof t=="string"?document.querySelector(t):t}const fo=["id"],mo=["role"],go=T(e.defineComponent({inheritAttrs:!1,__name:"QOverlay",props:e.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"},focusTrap:{type:Boolean},centerVertically:{type:Boolean}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:e.mergeModels(["enter","leave"],["update:modelValue"]),setup(t,{emit:o}){const n=t,a=o,l=e.useModel(t,"modelValue"),{class:r}=Me(),i=e.computed(()=>["q-overlay",`q-overlay--${ne(c.placement)}`,r.value,{"q-overlay--independent":s.value,"q-overlay--inverted":n.appearance==="inverted","q-overlay--center":n.centerVertically},n.class]),s=e.computed(()=>n.anchor===void 0),u=e.computed(()=>l.value&&!n.nonModal),d=e.computed(()=>(l.value||c.animating)&&n.scrollLock),f=e.computed(()=>!n.inline&&(l.value||c.animating)),c=e.reactive({animating:!1,top:0,left:0,width:0,placement:n.placement}),m=e.reactive({top:void 0,left:void 0,hidden:!0});e.watch(l,k);const h=e.computed(()=>{if(s.value)return;const C=x(),X=n.width==="anchor",H=X?C==null?void 0:C.getBoundingClientRect().width:void 0;return{top:`${c.top}px`,left:`${c.left}px`,width:H!==void 0?`${H}px`:void 0}}),b=e.computed(()=>{if(n.arrow)return{top:m.top!==void 0?`${m.top}px`:void 0,left:m.left!==void 0?`${m.left}px`:void 0,opacity:m.hidden?0:1}}),w=e.ref(null),v=e.ref(null),P=e.ref(null);function D(){const C=x();if(!C||!v.value)return;const X={placement:n.placement,width:n.width,offset:n.offset,crossOffset:n.crossOffset,arrow:n.arrow},H=to(C,v.value,(w==null?void 0:w.value)??void 0,X);c.left=H.overlayCoords.x,c.top=H.overlayCoords.y,c.placement=H.placement,m.hidden=H.arrowCoords===void 0,H.arrowCoords&&(m.top=H.arrowCoords.y,m.left=H.arrowCoords.x)}e.watch(()=>n.placement,()=>e.nextTick(D));let V;function R(){_(0)}function M(){_(n.delay)}function _(C){V&&I(),V=window.setTimeout(()=>{l.value=!0},C)}function L(){if(V&&I(),l.value=!1,n.anchor&&n.trigger==="click"){const C=x();e.nextTick(()=>C==null?void 0:C.focus())}}function I(){clearTimeout(V),V=void 0}function U(){e.nextTick(ie),a("enter")}function z(){S()}function p(){a("leave")}function g(){S(),Ea()}function k(){c.animating=!0}function S(){c.animating=!1}function x(){return n.anchor?po(n.anchor):null}function A(C){n.persistent&&C.preventDefault()}function E(C){var X;if(n.persistent){C.preventDefault();return}let H=!1;C.defaultPrevented||C.detail.originalEvent.type==="pointerdown"&&(H=!0);const va=C.detail.originalEvent.target;if((X=x())!=null&&X.contains(va)){C.preventDefault();return}C.detail.originalEvent.type==="focusin"&&H&&C.preventDefault()}function q(){L()}let y;function B(){const C=x();if(C)switch(y=new MutationObserver(D),y.observe(C,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),n.trigger){case"click":C.addEventListener("click",R);break;case"hover":C.addEventListener("mouseenter",M),C.addEventListener("mouseleave",L),C.addEventListener("focusin",R),C.addEventListener("focusout",L);break}}function $(){const C=x();if(C)switch(y==null||y.disconnect(),n.trigger){case"click":C.removeEventListener("click",R);break;case"hover":C.removeEventListener("mouseenter",M),C.removeEventListener("mouseleave",L),C.removeEventListener("focusin",R),C.removeEventListener("focusout",L);break}}function N(){window.addEventListener("resize",D),n.scrollLock||window.addEventListener("scroll",D)}function G(){window.removeEventListener("resize",D),n.scrollLock||window.removeEventListener("scroll",D)}let Q;function oe(){x()?(D(),Q=window.setTimeout(oe,100)):L()}function ie(){var C;s.value||(N(),n.spy?oe():D()),(s.value||n.trigger==="click")&&((C=v.value)==null||C.focus())}function Ea(){s.value||G(),n.spy&&(clearTimeout(Q),Q=void 0)}return e.onMounted(()=>{e.nextTick(B)}),e.onBeforeUnmount($),(C,X)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!f.value,to:n.attach},[e.createVNode(e.Transition,{name:"fade",appear:""},{default:e.withCtx(()=>[u.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass([n.backdropClass,"q-overlay__underlay",{"q-overlay__underlay--blur":n.backdropBlur}])},null,2)):e.createCommentVNode("v-if",!0)]),_:1}),e.createVNode(e.Transition,{name:n.transition,appear:"",onEnter:U,onAfterEnter:z,onLeave:p,onAfterLeave:g},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,id:n.id,ref_key:"overlayContainerRef",ref:P,tabindex:"-1",class:e.normalizeClass(i.value),style:e.normalizeStyle(h.value)},[e.createVNode(e.unref(nn),{onDismiss:q,onInteractOutside:E,onPointerDownOutside:A},{default:e.withCtx(()=>[P.value?(e.openBlock(),e.createBlock(e.unref(jn),{key:0,disabled:n.nonModal||!l.value,options:{fallbackFocus:P.value}},{default:e.withCtx(()=>[e.createElementVNode("div",e.mergeProps({ref_key:"overlayRef",ref:v,class:"q-overlay__content",tabindex:"-1",role:u.value?"dialog":void 0},C.$attrs),[n.arrow?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"arrowRef",ref:w,role:"presentation",class:"q-overlay__arrow",style:e.normalizeStyle(b.value)},null,4)):e.createCommentVNode("v-if",!0),e.renderSlot(C.$slots,"default")],16,mo)]),_:3},8,["disabled","options"])):e.createCommentVNode("v-if",!0)]),_:3})],14,fo)):e.createCommentVNode("v-if",!0)]),_:3},8,["name"])],8,["disabled","to"])),d.value?(e.openBlock(),e.createBlock(e.unref(eo),{key:0})):e.createCommentVNode("v-if",!0)],64))}})),bo=[{id:"button",icon:{icon:"check"},props:{variant:"bold",label:"Ok"}}],ho={icon:"check-circle-outline"},yo={close:{icon:"close"}},wo={key:0,class:"q-dialog__header"},ko={key:0,class:"q-dialog__header-title"},Bo={key:1,class:"q-dialog__body"},_o={key:0,class:"q-dialog__body-icon"},Co={class:"q-dialog__body-text"},xo=["innerHTML"],Eo={key:1},vo={key:0,class:"q-dialog__input"},So={key:2,class:"q-dialog__footer"},$o={key:0,class:"q-dialog__footer-buttons"},No=e.defineComponent({__name:"QDialog",props:e.mergeModels({id:{},class:{},title:{},text:{},icon:{default:()=>ho},buttons:{default:()=>bo},attach:{default:"body"},inline:{type:Boolean},backdropBlur:{type:Boolean,default:!0},dismissible:{type:Boolean},html:{type:Boolean,default:!0},icons:{default:()=>yo},size:{default:"small"},centerVertically:{type:Boolean},input:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:e.mergeModels(["enter","leave"],["update:modelValue"]),setup(t,{emit:o}){const n=t,a=o,l=e.useModel(t,"modelValue"),r=e.ref(""),i=e.ref(""),s=e.computed(()=>["q-dialog",n.class]),u=e.computed(()=>`q-overlay--${n.size}`);function d(){l.value=!1}function f(h){var b,w;if(h.action){if((b=n.input)!=null&&b.validator&&(i.value=n.input.validator(e.unref(r)),e.unref(i)))return;(w=h.action)==null||w.call(h,e.unref(r))}d()}function c(){a("enter")}function m(){a("leave")}return(h,b)=>(e.openBlock(),e.createBlock(e.unref(go),{id:n.id,modelValue:l.value,"onUpdate:modelValue":b[1]||(b[1]=w=>l.value=w),"backdrop-class":"q-dialog__underlay","scroll-lock":"",persistent:"",inline:n.inline,attach:n.attach,"backdrop-blur":n.backdropBlur,"center-vertically":n.centerVertically,class:e.normalizeClass(u.value),onEnter:c,onLeave:m},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(s.value)},[n.title||h.$slots.header||h.$slots["header.prepend"]||h.$slots["header.append"]?(e.openBlock(),e.createElementBlock("div",wo,[e.renderSlot(h.$slots,"header",{},()=>[e.renderSlot(h.$slots,"header.prepend"),n.title?(e.openBlock(),e.createElementBlock("span",ko,e.toDisplayString(n.title),1)):e.createCommentVNode("v-if",!0),e.renderSlot(h.$slots,"header.append")])])):e.createCommentVNode("v-if",!0),n.icon||n.text||h.$slots.body?(e.openBlock(),e.createElementBlock("div",Bo,[e.renderSlot(h.$slots,"body",{},()=>{var w;return[e.renderSlot(h.$slots,"body.icon",{},()=>[n.icon?(e.openBlock(),e.createElementBlock("span",_o,[e.createVNode(e.unref(F),e.normalizeProps(e.guardReactiveProps(n.icon)),null,16)])):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",Co,[n.html?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:n.text},null,8,xo)):(e.openBlock(),e.createElementBlock("div",Eo,e.toDisplayString(n.text),1))]),n.input?(e.openBlock(),e.createElementBlock("div",vo,[e.createVNode(e.unref(Pe),{modelValue:r.value,"onUpdate:modelValue":b[0]||(b[0]=v=>r.value=v),invalid:!!i.value,placeholder:(w=n.input)==null?void 0:w.placeholder,size:"block"},{extras:e.withCtx(()=>[i.value?(e.openBlock(),e.createBlock(e.unref(F),{key:0,icon:"exclamation-sign"})):e.createCommentVNode("v-if",!0),e.createTextVNode(" "+e.toDisplayString(i.value),1)]),_:1},8,["modelValue","invalid","placeholder"])])):e.createCommentVNode("v-if",!0),e.renderSlot(h.$slots,"body.append")]})])):e.createCommentVNode("v-if",!0),n.buttons||h.$slots["footer.append"]?(e.openBlock(),e.createElementBlock("div",So,[n.buttons?(e.openBlock(),e.createElementBlock("span",$o,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.buttons,w=>(e.openBlock(),e.createBlock(e.unref(j),e.mergeProps({ref_for:!0},w.props,{key:w.id,onClick:()=>f(w)}),{default:e.withCtx(()=>[w.icon?(e.openBlock(),e.createBlock(e.unref(F),e.mergeProps({key:0,ref_for:!0},w.icon),null,16)):e.createCommentVNode("v-if",!0)]),_:2},1040,["onClick"]))),128))])):e.createCommentVNode("v-if",!0),e.renderSlot(h.$slots,"footer.append")])):e.createCommentVNode("v-if",!0),n.dismissible?(e.openBlock(),e.createBlock(e.unref(j),{key:3,class:"q-dialog__close",variant:"text",onClick:d},{default:e.withCtx(()=>[e.createVNode(e.unref(F),e.normalizeProps(e.guardReactiveProps(n.icons.close)),null,16)]),_:1})):e.createCommentVNode("v-if",!0)],2)]),_:3},8,["id","modelValue","inline","attach","backdrop-blur","center-vertically","class"]))}}),me=e.reactive({dialogs:[]});function Ao(){function t(n,a,l){const r=ke(a);return me.dialogs.push({id:r,props:n,options:l}),r}function o(n){const a=me.dialogs.findIndex(l=>l.id===n);a!==-1&&me.dialogs.splice(a,1)}return{...me,addDialog:t,removeDialog:o}}const Io=e.defineComponent({inheritAttrs:!1,__name:"QDialogProvider",props:{inline:{type:Boolean}},emits:["leave"],setup(t,{emit:o}){const n=t,a=o,{dialogs:l,removeDialog:r}=Ao();function i(s){r(s),a("leave",s)}return(s,u)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),d=>(e.openBlock(),e.createBlock(e.unref(tt),e.mergeProps({key:d.id,ref_for:!0},d.props,{"model-value":"",inline:n.inline,onLeave:()=>i(d.id)}),null,16,["inline","onLeave"]))),128))}}),tt=T(No);T(Io);const Do=["id","required","placeholder","readonly","disabled","maxlength","rows","cols","resize","wrap"],Vo=T(e.defineComponent({inheritAttrs:!1,__name:"QTextArea",props:e.mergeModels({id:{},class:{},label:{},for:{},required:{type:Boolean},size:{},readonly:{type:Boolean},disabled:{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(t){const o=t,n=e.useModel(t,"modelValue"),a=e.computed({get:()=>n.value,set:d=>{const f=o.maxLength;n.value=f?d==null?void 0:d.slice(0,f):d}});e.watch(n,d=>a.value=d,{immediate:!0});const l=ke(o.id),r=e.computed(()=>o.readonly||o.disabled?void 0:o.placeholder),i=e.computed(()=>({input:o.autosize?u:null})),s=e.ref(),{triggerResize:u}=un({element:e.computed(()=>o.autosize?s.value:void 0),styleProp:"minHeight"});return(d,f)=>(e.openBlock(),e.createBlock(e.unref(Fe),{class:e.normalizeClass(["q-text-area",o.class]),for:e.unref(l),label:o.label,size:o.size,readonly:o.readonly,disabled:o.disabled,required:o.required},e.createSlots({"label.prepend":e.withCtx(()=>[e.renderSlot(d.$slots,"label.prepend")]),"label.append":e.withCtx(()=>[e.renderSlot(d.$slots,"label.append")]),default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(l),ref_key:"textareaRef",ref:s,"onUpdate:modelValue":f[0]||(f[0]=c=>a.value=c),class:"q-text-area__input",required:o.required,placeholder:r.value,readonly:o.readonly,disabled:o.disabled,maxlength:o.maxLength,rows:o.rows,cols:o.cols,resize:o.resize,wrap:o.wrap},d.$attrs,e.toHandlers(i.value,!0)),null,16,Do),[[e.vModelText,a.value]])]),_:2},[d.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"prepend")]),key:"0"}:void 0,d.$slots.append?{name:"append",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"append")]),key:"1"}:void 0,d.$slots.extras?{name:"extras",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"extras")]),key:"2"}:void 0]),1032,["class","for","label","size","readonly","disabled","required"]))}}));function W(){return{copy:"Copy",apply:"Apply",applyAll:"Apply all",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!",commentDialogTitle:"Would you like to add a comment?",commentPlaceholder:"Type your comment here (optional)...",copyResponse:"Copy response",submitButton:"Submit",cancelButton:"Cancel",senderImage:"Sender Image",imagePreview:"Image preview",regenerateResponsePrompt:"Regenerate a new response for field {0}",regenerateResponse:"Regenerate response",generatingResponse:"Generating",suggestionsForField:"Suggestions for field:",fileUpload:"Upload File"}}async function nt(t,o){var u,d,f,c,m,h;const n=new AbortController,a=n.signal,r=(await K({...t,headers:{Accept:"text/event-stream"},responseType:"stream",signal:a,adapter:"fetch"})).data;if(!r||!(r instanceof ReadableStream))throw new Error("Invalid stream response");const i=r.getReader(),s=new TextDecoder;for(;;){const{done:b,value:w}=await i.read();if(b){(u=o.onDone)==null||u.call(o);break}const P=s.decode(w,{stream:!0}).split(/\n\n+/);for(const D of P){const V=D.trim().split(`
|
|
46
|
+
`);let R="",M="";for(const _ of V)_.startsWith("event:")?R=_.replace("event:","").trim():_.startsWith("data:")&&(M=_.replace("data:","").trim());if(R||(R="message"),!!M)try{const _=JSON.parse(M);switch(R){case"message":(d=o.onMessage)==null||d.call(o,_.value);break;case"error":(f=o.onError)==null||f.call(o,new Error(_.value));break;case"field_metadata":(c=o.onFieldMetadata)==null||c.call(o,_);break;case"done":(m=o.onDone)==null||m.call(o);break;default:console.warn(`Unknown event type: ${R}`)}}catch(_){(h=o.onError)==null||h.call(o,_),console.error("Error processing event:",_);continue}finally{b&&(i.releaseLock(),n.abort())}}}}function ot(t){const o=e.ref(!1),n=e.ref(null);async function a(d){o.value=!0,n.value=null;try{return{data:(await K({...d,baseURL:t})).data,error:null}}catch(f){if(f instanceof Error)return n.value=f,console.error("Error in API request:",f),{data:null,error:f}}finally{o.value=!1}return{data:null,error:new Error("Unknown error occurred in baseRequest")}}async function l(d,f,c,m){return await a({method:"POST",url:"/prompt/load",data:{username:d,project:f,agentID:c,formId:m}})}async function r(d,f,c){o.value=!0;try{return await nt({method:"POST",url:`${t}/prompt/submit`,data:d},{onMessage:m=>{f(m)},onDone:()=>o.value=!1})}catch(m){throw o.value=!1,c==null||c(m),console.error("Error in sendPrompt:",m),m}}async function i(d,f,c,m){o.value=!0;try{return await nt({method:"POST",url:`${t}/get-job-result`,data:{jobId:d}},{onMessage:h=>f(h),onFieldMetadata:h=>c(h),onDone:()=>o.value=!1})}catch(h){n.value=h,m==null||m(h),o.value=!1}}async function s(d,f,c,m){return await a({method:"POST",url:"/prompt/clear",data:{username:d,project:f,agentID:c,formId:m}})}async function u(d,f,c){return await a({method:"POST",url:"/prompt/feedback",data:{messageSessionID:c,feedbackValue:d,feedbackComment:f}})}return{isLoading:o,lastError:n,getChatData:l,clearChatData:s,getJobResultData:i,sendPrompt:r,handleFeedback:u}}const Ro=["innerHTML"],ge=e.defineComponent({__name:"MarkdownRender",props:{source:{},options:{},plugins:{}},setup(t){const o=t,n=e.ref(new st({html:!0,breaks:!0,...o.options??{}}));o.plugins&&o.plugins.forEach(l=>n.value.use(l));const a=e.computed(()=>n.value.render(o.source));return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:"markdown-renderer",innerHTML:a.value},null,8,Ro))}});function at(t,o){switch(t){case"date":return new Date(o).toLocaleDateString();case"number":return parseFloat(o);case"boolean":return o.toLowerCase()==="true";default:return o.toString()}}const Mo={class:"q-field-preview"},Lo={class:"q-field-preview__toolbar"},qo={class:"q-field-preview__footer"},To=e.defineComponent({__name:"FieldPreview",props:{name:{},text:{},type:{},disabled:{type:Boolean},applied:{type:Boolean}},emits:["apply","regenerate"],setup(t,{emit:o}){const n=t,a=o,l=W(),r=e.ref(n.applied),i=e.ref(!1),s=e.computed(()=>n.disabled||r.value),u=e.computed(()=>n.disabled||i.value),d=e.computed(()=>n.type==="text"||n.type==="multiline_text"?ge:"div"),f=e.computed(()=>{const b={};return d.value===ge?b.source=n.text:b.innerHTML=n.text,b}),c=e.computed(()=>{const b=["q-field-preview__content"];return d.value!==ge&&b.push("preserve-whitespace"),b});function m(){if(r.value)return;r.value=!0;const b=at(n.type,n.text);a("apply",b)}function h(){i.value||(i.value=!0,a("regenerate",n.name))}return(b,w)=>(e.openBlock(),e.createElementBlock("div",Mo,[e.createElementVNode("div",Lo,[e.createElementVNode("span",null,[e.createTextVNode(e.toDisplayString(e.unref(l).suggestionsForField)+" ",1),e.createElementVNode("b",null,e.toDisplayString(n.name),1)])]),e.createElementVNode("div",{class:e.normalizeClass(c.value)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d.value),e.normalizeProps(e.guardReactiveProps(f.value)),null,16))],2),e.createElementVNode("div",qo,[e.createVNode(e.unref(qe),{borderless:""},{default:e.withCtx(()=>[e.createVNode(e.unref(j),{title:e.unref(l).regenerateResponse,disabled:u.value,readonly:u.value,borderless:"",onClick:h},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"reset"})]),_:1},8,["title","disabled","readonly"]),e.createVNode(e.unref(j),{label:e.unref(l).apply,"data-testid":"apply-button",disabled:s.value,readonly:s.value,onClick:m},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"apply"})]),_:1},8,["label","disabled","readonly"])]),_:1})])]))}}),Fo={class:"pulsing-dots"},Po={class:"generating-text"},Oo={class:"dots-container"},Uo=e.defineComponent({__name:"PulseDots",setup(t){const o=[1,2,3],n=W();return(a,l)=>(e.openBlock(),e.createElementBlock("div",Fo,[e.createElementVNode("span",Po,e.toDisplayString(e.unref(n).generatingResponse),1),e.createElementVNode("div",Oo,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(o,(r,i)=>e.createElementVNode("span",{key:i,class:"dot",style:e.normalizeStyle({animationDelay:i*.2+"s"})}," • ",4)),64))])]))}}),zo={class:"q-chatbot__message-container"},jo={class:"q-chatbot__message-wrapper"},Go={key:0,class:"q-chatbot__image-preview"},Ho=["src","alt"],Qo={key:1,class:"q-chatbot__file-preview-container"},Zo={class:"q-chatbot__file-icon-container"},Jo={class:"q-chatbot__file-info"},Wo={class:"q-chatbot__file-name"},Yo={class:"q-chatbot__file-extension"},Xo={class:"q-chatbot__message"},Ko={key:1,class:"q-chatbot__text q-chatbot__user-text"},ea=e.defineComponent({__name:"ChatBotMessage",props:{sender:{default:"user"},message:{},date:{default:()=>new Date},loading:{type:Boolean},dateFormat:{},file:{},apiEndpoint:{},sessionID:{},userImage:{default:void 0},chatbotImage:{},isWelcomeMessage:{type:Boolean},fields:{default:()=>[]}},emits:["apply-fields","regenerate"],setup(t,{emit:o}){const n=t,a=o,l=W(),{handleFeedback:r}=ot(n.apiEndpoint),i=e.computed(()=>n.sender==="bot"&&!Object.values(l||{}).includes(n.message||"")&&!n.isWelcomeMessage),s=e.computed(()=>{var b;return((b=n.file)==null?void 0:b.fileData.type.startsWith("image/"))??!1}),u=e.computed(()=>n.sender==="bot"?n.chatbotImage:n.userImage),d=e.computed(()=>{var w,v;return(w=n.file)!=null&&w.fileData?((v=n.file.fileData.name.split(".").pop())==null?void 0:v.toUpperCase())??"":""});function f(){n.message&&navigator.clipboard.writeText(n.message).then(()=>{console.log("Response copied to clipboard")}).catch(b=>{console.error("Failed to copy response: ",b)})}function c(b,w){a("apply-fields",[{id:w.id,text:b}])}function m(){if(!n.fields||n.fields.length===0)return;const b=n.fields.map(w=>({id:w.id,text:at(w.type,w.text)}));a("apply-fields",b)}function h(b,w){b===null||w===null||!n.sessionID||r(b,w,n.sessionID)}return(b,w)=>{var v,P,D;return e.openBlock(),e.createElementBlock("div",zo,[e.createVNode(e.unref(F),{type:"img",icon:u.value,alt:e.unref(l).senderImage,class:"q-chatbot__profile"},null,8,["icon","alt"]),e.createElementVNode("div",jo,[s.value?(e.openBlock(),e.createElementBlock("div",Go,[e.createElementVNode("img",{src:(v=n.file)==null?void 0:v.previewUrl,alt:e.unref(l).imagePreview},null,8,Ho)])):(P=n.file)!=null&&P.fileData&&!s.value?(e.openBlock(),e.createElementBlock("div",Qo,[e.createElementVNode("div",Zo,[e.createVNode(e.unref(F),{icon:"file",class:"q-chatbot__file-icon"})]),e.createElementVNode("div",Jo,[e.createElementVNode("span",Wo,e.toDisplayString((D=n.file)==null?void 0:D.fileData.name),1),e.createElementVNode("span",Yo,e.toDisplayString(d.value),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Xo,[b.loading?(e.openBlock(),e.createBlock(Uo,{key:0})):n.sender==="bot"&&n.fields.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(n.fields,(V,R)=>(e.openBlock(),e.createBlock(e.unref(To),{key:R,class:"q-chatbot__text",text:V.text||"",name:V.name,type:V.type,disabled:b.loading,onRegenerate:()=>a("regenerate",V.name),onApply:M=>c(M,V)},null,8,["text","name","type","disabled","onRegenerate","onApply"]))),128)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[n.sender==="bot"?(e.openBlock(),e.createBlock(e.unref(ge),{key:0,class:"q-chatbot__text",source:n.message||""},null,8,["source"])):(e.openBlock(),e.createElementBlock("div",Ko,e.toDisplayString(n.message),1))],64))])]),e.createVNode(e.unref(ia),{"show-buttons":i.value,loading:n.loading,"date-format":n.dateFormat,onCopyResponse:f,onSubmitFeedback:h,onApplyAll:m},null,8,["show-buttons","loading","date-format"])])}}}),O=[];for(let t=0;t<256;++t)O.push((t+256).toString(16).slice(1));function ta(t,o=0){return(O[t[o+0]]+O[t[o+1]]+O[t[o+2]]+O[t[o+3]]+"-"+O[t[o+4]]+O[t[o+5]]+"-"+O[t[o+6]]+O[t[o+7]]+"-"+O[t[o+8]]+O[t[o+9]]+"-"+O[t[o+10]]+O[t[o+11]]+O[t[o+12]]+O[t[o+13]]+O[t[o+14]]+O[t[o+15]]).toLowerCase()}let Ne;const na=new Uint8Array(16);function oa(){if(!Ne){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");Ne=crypto.getRandomValues.bind(crypto)}return Ne(na)}const rt={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function lt(t,o,n){var l;if(rt.randomUUID&&!o&&!t)return rt.randomUUID();t=t||{};const a=t.random??((l=t.rng)==null?void 0:l.call(t))??oa();if(a.length<16)throw new Error("Random bytes length must be >= 16");return a[6]=a[6]&15|64,a[8]=a[8]&63|128,ta(a)}const Y=e.ref([]),be=e.ref(1);function it(){function t(r,i,s,u,d){const f={id:be.value++,message:r,date:new Date,sender:i||"bot",sessionID:u||lt(),file:s,isWelcomeMessage:d,fields:[]};return Y.value.push(f),f}function o(){return Y.value.find(r=>r.id===be.value-1)}function n(){Y.value=[],be.value=1}function a(r){Y.value=Y.value.filter(i=>i.id!==r)}function l(){return Y.value}return{messages:Y,nextMessageId:be,addChatMessage:t,getLastMessage:o,clearMessages:n,getMessages:l,deleteMessageById:a}}const aa={class:"q-chatbot__dialog-title"},ra={key:0,class:"q-chatbot__feedback-buttons"},la={class:"q-chatbot__sender"},ia=e.defineComponent({__name:"ChatBotMessageButtons",props:{loading:{type:Boolean},showButtons:{type:Boolean},dateFormat:{},date:{}},emits:["submit-feedback","copy-response","apply-all"],setup(t,{emit:o}){const n=t,a=o,l=W(),{getLastMessage:r}=it(),i=e.ref(!1),s=e.ref(""),u=e.ref(null),d=e.ref(!1),f=e.computed(()=>n.loading||d.value),c=n.date||new Date,m=r(),h=e.computed(()=>m?m.fields&&m.fields.length>1:!1),b=[{id:"confirm-btn",action:_,props:{label:l.submitButton,class:"q-chatbot__dialog-confirm-button"},icon:{icon:"submit"}},{id:"cancel-btn",props:{label:l.cancelButton,class:"q-chatbot__dialog-cancel-button"},icon:{icon:"cancel"}}],w=e.computed(()=>n.dateFormat?P(c,"HH:mm"):c.toLocaleString()),v=e.computed(()=>`${w.value}`);function P(I,U){const z=I.getDate().toString().padStart(2,"0"),p=(I.getMonth()+1).toString().padStart(2,"0"),g=I.getFullYear().toString().padStart(2,"0"),k=I.getHours().toString().padStart(2,"0"),S=I.getMinutes().toString().padStart(2,"0"),x=I.getSeconds().toString().padStart(2,"0");return U.replace("dd",z).replace("MM",p).replace("yyyy",g).replace("HH",k).replace("mm",S).replace("ss",x)}function D(I){i.value=!0,s.value="",u.value=I}function V(){D(0)}function R(){D(1)}function M(){d.value||(d.value=!0,a("apply-all"))}function _(){u.value&&(a("submit-feedback",u.value,s.value),i.value=!1,s.value="",u.value=null)}function L(){a("copy-response")}return(I,U)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(tt),{modelValue:i.value,"onUpdate:modelValue":U[1]||(U[1]=z=>i.value=z),inline:"",buttons:b},{body:e.withCtx(()=>[e.createElementVNode("div",aa,e.toDisplayString(e.unref(l).commentDialogTitle),1),e.createVNode(e.unref(Pe),{modelValue:s.value,"onUpdate:modelValue":U[0]||(U[0]=z=>s.value=z),class:"q-chatbot__dialog-comment-input","max-length":150,size:"large",placeholder:e.unref(l).commentPlaceholder},null,8,["modelValue","placeholder"])]),_:1},8,["modelValue"]),I.showButtons?(e.openBlock(),e.createElementBlock("div",ra,[e.createVNode(e.unref(qe),null,{default:e.withCtx(()=>[e.createVNode(e.unref(j),{title:e.unref(l).goodResponse,class:"q-chatbot__good-response-button",borderless:"",disabled:n.loading,onClick:R},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"thumb-up"})]),_:1},8,["title","disabled"]),e.createVNode(e.unref(j),{title:e.unref(l).badResponse,class:"q-chatbot__bad-response-button",borderless:"",disabled:n.loading,onClick:V},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"thumb-down"})]),_:1},8,["title","disabled"]),e.createVNode(e.unref(j),{title:e.unref(l).copyResponse,class:"q-chatbot__copy-button",borderless:"",disabled:n.loading,onClick:L},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"copy-content"})]),_:1},8,["title","disabled"]),h.value?(e.openBlock(),e.createBlock(e.unref(j),{key:0,title:e.unref(l).applyAll,class:"q-chatbot__apply-all-button",borderless:"",disabled:f.value,readonly:f.value,label:e.unref(l).applyAll,onClick:M},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"apply-all"})]),_:1},8,["title","disabled","readonly","label"])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0),e.createElementVNode("div",la,e.toDisplayString(v.value),1)],64))}}),sa={class:"q-chatbot__tools"},ca={class:"q-chatbot__tools__select"},da=e.defineComponent({__name:"ChatToolBar",props:{disabled:{type:Boolean},availableAgents:{default:()=>[]},selectedAgentKey:{}},emits:["clear","change-chat"],setup(t,{emit:o}){const n=t,a=o,{clearChat:l}=W(),r={key:"",value:"Default Chat",formId:""},i=e.computed(()=>n.availableAgents&&n.availableAgents.length>0),s=e.ref(n.selectedAgentKey||r.key);e.watch(()=>n.selectedAgentKey,c=>{s.value=c||r.key});const u=e.computed(()=>{var m;const c=(m=n.availableAgents)==null?void 0:m.map(h=>({key:h.key,value:h.value,formId:h.formId}));return c==null||c.push(r),c||[r]});function d(){a("clear")}function f(c){const m=u.value.find(h=>h.key===c);if(m){if(m.key===r.key){a("change-chat",{key:"",formId:""});return}a("change-chat",m)}}return(c,m)=>{const h=e.resolveComponent("q-select");return e.openBlock(),e.createElementBlock("div",sa,[e.createElementVNode("div",ca,[i.value?(e.openBlock(),e.createBlock(h,{key:0,modelValue:s.value,"onUpdate:modelValue":[m[0]||(m[0]=b=>s.value=b),f],inline:"",class:"q-chatbot__tools-select-input",size:"medium",items:u.value},null,8,["modelValue","items"])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(j),{title:e.unref(l),disabled:n.disabled,class:"q-chatbot__tools-clear",borderless:"",onClick:d},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"bin"})]),_:1},8,["title","disabled"])])}}}),ua={class:"q-chatbot__input-wrapper"},pa={key:0,class:"q-chatbot__file-preview"},fa=["src","alt"],ma={key:1,class:"q-chatbot__file-preview",tabindex:"0"},ga={class:"q-chatbot__file-name"},ba={class:"q-chatbot__input"},ha={class:"q-chatbot__send-container"},ya=["accept"],wa=e.defineComponent({__name:"ChatBotInput",props:{disabled:{type:Boolean},loading:{type:Boolean},userPrompt:{},agentId:{}},emits:["send-message"],setup(t,{emit:o}){const n=t,a=o,l=W(),r=e.ref(null),i=e.ref(null),s=e.ref(""),u=e.ref(!1),d=e.computed(()=>".png,.jpeg,.jpg,.svg,.webp,.pdf,.doc,.docx"),f=e.computed(()=>i.value?i.value.type.startsWith("image/")??!1:!1),c=e.ref(n.userPrompt??""),m=e.computed(()=>n.disabled||n.loading||c.value.trim().length===0);function h(_){_.preventDefault(),n.disabled||(u.value=!0)}const b=e.computed(()=>({"q-chatbot__footer-disabled":n.disabled,"drag-over":u.value&&!i.value}));function w(_){_.preventDefault(),u.value=!1}function v(_){var I;if(_.preventDefault(),u.value=!1,n.disabled||i.value)return;const L=(I=_.dataTransfer)==null?void 0:I.files;L&&P(L[0])}function P(_){i.value=_,_.type.startsWith("image/")?s.value=URL.createObjectURL(_):s.value=""}function D(){if(!(c.value.trim()===""||n.loading||n.disabled)){if(i.value){const _={fileData:i.value,previewUrl:s.value??""};a("send-message",c.value,_),V()}else a("send-message",c.value);c.value=""}}function V(){i.value=null,s.value="",r.value&&(r.value.value="",r.value.files=null)}function R(){var _;(_=r.value)==null||_.click()}function M(_){var I;const L=_.target;(I=L.files)!=null&&I[0]&&P(L.files[0])}return(_,L)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(Te),{label:e.unref(l).inputLabel},null,8,["label"]),e.createElementVNode("div",{class:e.normalizeClass(["q-chatbot__footer",b.value]),onDragover:e.withModifiers(h,["prevent"]),onDragleave:e.withModifiers(w,["prevent"]),onDrop:e.withModifiers(v,["prevent"])},[e.createElementVNode("div",ua,[i.value?(e.openBlock(),e.createElementBlock("div",pa,[f.value?(e.openBlock(),e.createElementBlock("img",{key:0,class:"q-chatbot__image-preview",src:s.value,tabindex:"0",alt:e.unref(l).imagePreview},null,8,fa)):(e.openBlock(),e.createElementBlock("div",ma,[e.createVNode(e.unref(F),{icon:"file",class:"q-chatbot__file-icon"}),e.createElementVNode("span",ga,e.toDisplayString(i.value.name),1)])),e.createVNode(e.unref(j),{class:"q-chatbot__remove-file",tabindex:"0",flat:"",round:"",onClick:V},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"remove"})]),_:1})])):e.createCommentVNode("",!0),e.createElementVNode("div",ba,[e.createVNode(e.unref(Vo),{modelValue:c.value,"onUpdate:modelValue":L[0]||(L[0]=I=>c.value=I),size:"block",autosize:"",resize:"none",rows:2,disabled:n.disabled,onKeyup:e.withKeys(D,["enter"])},null,8,["modelValue","disabled"])]),e.createElementVNode("div",ha,[e.createVNode(e.unref(j),{title:e.unref(l).imageUpload,class:"q-chatbot__upload",disabled:n.disabled||n.loading||!!i.value,onClick:R},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"upload"})]),_:1},8,["title","disabled"]),e.createElementVNode("input",{id:"file-upload",ref_key:"fileInput",ref:r,type:"file",accept:d.value,class:"hidden-input",onChange:M},null,40,ya),e.createVNode(e.unref(j),{title:e.unref(l).sendMessage,variant:"bold",class:"q-chatbot__send",disabled:m.value,readonly:m.value,onClick:D},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"send"})]),_:1},8,["title","disabled","readonly"])])])],34)],64))}}),ka="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20viewBox='0%200%20126.25%20110.36'%3e%3cdefs%3e%3cradialGradient%20id='radial-gradient'%20cx='45.24'%20cy='38.05'%20fx='45.24'%20fy='38.05'%20r='59.09'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0'%20stop-color='%2331319e'/%3e%3cstop%20offset='.19'%20stop-color='%232e2e97'/%3e%3cstop%20offset='.45'%20stop-color='%23292985'/%3e%3cstop%20offset='.75'%20stop-color='%23202067'/%3e%3cstop%20offset='1'%20stop-color='%2317174a'/%3e%3c/radialGradient%3e%3clinearGradient%20id='linear-gradient'%20x1='82.65'%20y1='50.41'%20x2='82.65'%20y2='77.5'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='.02'%20stop-color='%2366ebfe'/%3e%3cstop%20offset='.96'%20stop-color='%2300bfdb'/%3e%3c/linearGradient%3e%3clinearGradient%20id='linear-gradient-2'%20x1='44.6'%20y1='50.01'%20x2='44.6'%20y2='77.1'%20xlink:href='%23linear-gradient'/%3e%3c/defs%3e%3cg%20isolation='isolate'%3e%3cg%20id='Layer_1'%3e%3cpath%20d='M126.2,61.4c-.2-3.69-2.61-17.39-5.92-22.09-2.42-3.44-5.89-4.03-7.96-4.38-.13-.02-.27-.05-.41-.07-.16-.28-.32-.58-.45-.81-.63-1.14-1.03-1.87-1.44-2.44-6.96-9.88-14.91-16.51-24.85-20.69-.25-2.29-.84-5.24-3.37-7.44-2.93-2.55-7.58-2.9-11.68-3.21-.93-.07-1.82-.14-2.4-.22l-.33-.05h-8.61l-.36.05c-.65.1-1.61.17-2.63.24-3.75.27-8.01.57-10.98,2.85-2.94,2.26-3.58,5.55-3.79,7.84-9.71,3.94-17.86,10.71-24.85,20.62-.4.57-.81,1.3-1.43,2.44-.13.23-.29.53-.45.81-.14.02-.28.05-.4.07-2.07.35-5.54.94-7.96,4.39-2.25,3.19-3.84,9.89-4.58,13.59-.6,2.97-1.9,10.3-1.08,14.26.79,3.78,3.66,5.6,5.37,6.68.12.08.26.16.39.25,1.65,10.03,6.98,18.56,15.52,24.77,9.23,6.72,20.2,9.43,27.78,10.52,4.49.65,9.15.97,13.85.97,9.67,0,23.77-1.39,36-8.02,11.58-6.27,18.81-16,21.04-28.24,4.52-2.76,6.36-5.67,5.98-12.71Z'%20fill='%2317174a'/%3e%3cpath%20d='M67.15,4.69c2.98.42,9.31.31,11.62,2.31,1.99,1.73,1.65,4.82,2.06,7.22,10.77,3.89,18.73,10.59,25.39,20.04.64.91,2.13,3.95,2.58,4.33,1.71,1.46,5.54.35,7.67,3.37,2.29,3.25,4.83,15.41,5.06,19.59.31,5.82-.76,6.9-5.58,9.44-3.28,26.16-29.7,34.5-52.68,34.5-4.6,0-9.06-.33-13.17-.93-18.13-2.61-37.11-12.11-39.51-33.08-1.7-1.92-4.96-2.54-5.55-5.39-.95-4.56,2.21-20.32,4.89-24.14,2.13-3.02,5.96-1.91,7.67-3.37.46-.39,1.94-3.42,2.58-4.33,6.54-9.28,14.55-16.22,25.21-19.87.85-.87-.3-5.45,2.43-7.55,2.52-1.94,8.35-1.69,11.42-2.16h7.91'%20fill='%23fff'/%3e%3cpath%20d='M121.86,61.51c-.22-4.2-2.78-16.43-5.07-19.7-1.77-2.51-4.71-2.18-6.64-2.83.1,1.18.16,2.37.16,3.57,0,26.85-25.96,48.61-57.98,48.61-15.83,0-30.17-5.32-40.63-13.94,4.91,17.1,22.06,25.14,38.51,27.52,4.12.59,8.6.93,13.21.93,23.06,0,49.57-8.38,52.85-34.68,4.83-2.56,5.91-3.63,5.6-9.49Z'%20fill='%23d0d7e2'%20mix-blend-mode='multiply'%20opacity='.4'/%3e%3cpath%20d='M62.91,97.68c5.82,0,11.67-.53,16.72-1.56,13.1-2.67,22.09-8.06,26.72-16.03,4.43-7.63,4.75-17.33.96-28.84-4.28-13-13.22-22.77-24.7-27.89-.13,4.51-3.84,8.16-8.38,8.16h-20.89c-4.61,0-8.39-3.78-8.39-8.39v-.14c-5.36,2.25-10.29,5.49-14.5,9.61-8.23,8.06-13.16,19.02-13.9,30.84-.59,9.44,2.67,17.53,9.43,23.42,6.27,5.46,15.68,9.02,27.2,10.3,3.13.35,6.43.52,9.73.52'%20fill='url(%23radial-gradient)'/%3e%3crect%20x='74.34'%20y='50.41'%20width='16.62'%20height='27.09'%20rx='4.06'%20ry='4.06'%20fill='url(%23linear-gradient)'/%3e%3crect%20x='36.29'%20y='50.01'%20width='16.62'%20height='27.09'%20rx='4.06'%20ry='4.06'%20fill='url(%23linear-gradient-2)'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e",Ba="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAYAAAA5ZDbSAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF2GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOS0xMS0yOVQxMDoyNDo1N1oiIHhtcDpNb2RpZnlEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpiN2ViMDM0NC1hN2UzLTI3NGItODgwNi00ZjMxMzRiNDUwNDEiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2ODJkMGU1OC1kZmQyLTZkNDEtOGIwNy01ZWUxNjU4MWY2ZWEiIHht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",_a={class:"q-chatbot"},Ca={class:"q-chatbot__content"},xa={class:"q-chatbot__footer-container"};return e.defineComponent({name:"ChatBot",__name:"ChatBot",props:{apiEndpoint:{default:"http://localhost:3000"},controllerEndpoint:{},username:{},projectPath:{},userImage:{default:Ba},chatbotImage:{default:ka},dateFormat:{},agentData:{default:()=>({id:"",formId:"",jobId:""})},availableAgents:{default:()=>[]}},emits:["apply-fields","direct-agent-chat"],setup(t,{emit:o}){const n=t,a=o,l=e.ref(!0),r=e.ref(null),i=e.ref(!0),s=e.ref(n.agentData.id),u=e.ref(n.agentData.formId),d=W(),{isLoading:f,clearChatData:c,getChatData:m,getJobResultData:h,sendPrompt:b}=ot(n.apiEndpoint),{messages:w,addChatMessage:v,clearMessages:P,getLastMessage:D,deleteMessageById:V}=it(),R=e.computed(()=>l.value||f.value);e.onBeforeMount(()=>{var y;(y=r.value)==null||y.removeEventListener("scroll",z)}),e.onMounted(()=>{_()});function M(y){l.value=y}async function _(){try{await L()}catch(y){v(d.loginError),console.error("Error logging in: "+y)}}async function L(){M(!0);const{data:y,error:B}=await m(n.username,n.projectPath,s.value,u.value);if(B||!y||!y.success){M(!0),v(d.botIsSick),console.log("Error loading chat data: "+B);return}M(!1),I(),y.history.forEach(async $=>{v($.content,$.type==="ai"?"bot":"user",void 0,$.sessionID)})}function I(){const y=d.initialMessage;v(y,"bot",void 0,void 0,!0)}function U(){P(),M(!1),i.value=!0}function z(){if(r.value){const{scrollTop:B,clientHeight:$,scrollHeight:N}=r.value;i.value=B+$>=N-20}}async function p(y,B){r.value&&r.value.scrollTo({top:r.value.scrollHeight,behavior:"smooth"}),v(y,"user",B),k(y,B==null?void 0:B.fileData)}async function g(y){r.value&&r.value.scrollTo({top:r.value.scrollHeight,behavior:"smooth"}),v("","bot");const B=D();B&&await h(y,$=>{if(B.message+=$,B.fields||(B.fields=[]),B.fields.length>0){const N=B.fields[B.fields.length-1];N.text=B.message}},$=>{var G;B.message="";const N=$;(G=B.fields)==null||G.push({id:N.id,type:N.type,name:N.name,text:N.text})},$=>{M(!0),v(d.botIsSick),console.error("Error getting job result: "+$),V(B.id)})}async function k(y,B){const $=lt(),N=new FormData;if(B&&N.append("file",B),N.append("message",y),N.append("project",n.projectPath),N.append("user",n.username),N.append("sessionID",$),s.value!=="")a("direct-agent-chat",s.value,y);else{v("","bot");const G=D();if(!G)return;await b(N,Q=>{G&&(G.message+=Q)},Q=>{M(!0),v(d.botIsSick),console.error("Error sending message: "+Q),V(G.id)})}}async function S(){const{data:y,error:B}=await c(n.username,n.projectPath,s.value,u.value);if(B||!y||!y.success){M(!0),v(d.loginError),console.log("Error clearing chat: "+B);return}U(),I()}function x(y){const B=["q-chatbot__messages-wrapper"];return y==="user"&&B.push("q-chatbot__messages-wrapper_right"),B}async function A(y){s.value=y.key,u.value=y.formId,U(),await _()}function E(y){!y||y.length===0||a("apply-fields",y)}function q(y){const B=d.regenerateResponsePrompt.replace("{0}",y);a("direct-agent-chat",s.value,B)}return e.watch(()=>n.availableAgents,(y,B)=>{y.length===0&&B.length>0&&(s.value="",u.value="",U(),_())}),e.watch(()=>n.agentData,async(y,B)=>{if(R.value)return;const $=y.jobId,N=B.jobId,G=$!==N;y.id!==s.value&&await A({formId:y.formId,key:y.id}),$&&G&&await g($)},{deep:!0}),(y,B)=>(e.openBlock(),e.createElementBlock("div",_a,[e.createElementVNode("div",Ca,[e.createVNode(e.unref(da),{disabled:R.value,"available-agents":n.availableAgents,"selected-agent-key":s.value,onClear:S,onChangeChat:A},null,8,["disabled","available-agents","selected-agent-key"]),e.createElementVNode("div",{ref_key:"messagesContainer",ref:r,class:"q-chatbot__messages-container",onScroll:z},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(w),$=>(e.openBlock(),e.createElementBlock("div",{key:$.id,class:e.normalizeClass(x($.sender))},[e.createVNode(e.unref(ea),e.mergeProps({ref_for:!0},$,{"date-format":n.dateFormat,"user-image":n.userImage,"chatbot-image":n.chatbotImage,loading:e.unref(f)&&!$.message,file:$.file,"api-endpoint":n.apiEndpoint,"session-i-d":$.sessionID,fields:$.fields,onRegenerate:q,onApplyFields:E}),null,16,["date-format","user-image","chatbot-image","loading","file","api-endpoint","session-i-d","fields"])],2))),128))],544)]),e.createElementVNode("div",xa,[e.createVNode(e.unref(wa),{disabled:R.value,loading:e.unref(f),onSendMessage:p},null,8,["disabled","loading"])])]))}})});
|