@quidgest/chatbot 0.5.1 → 0.5.3-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/README.md +1 -2
  2. package/dist/components/ChatBot/ChatBot.vue.d.ts +2 -0
  3. package/dist/components/ChatBot/types.d.ts +2 -1
  4. package/dist/components/ChatBotInput/ChatBotInput.vue.d.ts +2 -2
  5. package/dist/components/ChatBotInput/__tests__/ChatBotInput.spec.d.ts +1 -0
  6. package/dist/components/ChatBotMessage/ChatBotMessage.vue.d.ts +3 -1
  7. package/dist/components/ChatBotMessage/__tests__/ChatBotMessageButtons.spec.d.ts +1 -0
  8. package/dist/components/ChatToolBar/__tests__/ChatToolBar.spec.d.ts +1 -0
  9. package/dist/components/FieldPreview/FieldPreview.vue.d.ts +2 -0
  10. package/dist/components/FieldPreview/__tests__/FieldPreview.spec.d.ts +1 -0
  11. package/dist/components/MarkdownRender/__tests__/MarkdownRender.spec.d.ts +1 -0
  12. package/dist/components/PulseDots/__tests__/PulseDots.spec.d.ts +1 -0
  13. package/dist/composables/__tests__/useChatMessages.spec.d.ts +1 -0
  14. package/dist/composables/__tests__/useSSE.spec.d.ts +1 -0
  15. package/dist/composables/useChatApi.d.ts +1 -1
  16. package/dist/composables/useChatMessages.d.ts +2 -1
  17. package/dist/composables/useSSE.d.ts +1 -2
  18. package/dist/composables/useTexts.d.ts +5 -0
  19. package/dist/index.js +25 -25
  20. package/dist/index.mjs +2319 -1812
  21. package/dist/style.css +1 -1
  22. package/dist/test/setup.d.ts +1 -0
  23. package/dist/utils/__tests__/parseFieldValue.spec.d.ts +1 -0
  24. package/package.json +27 -6
  25. package/src/assets/styles/styles.scss +212 -220
  26. package/src/components/ChatBot/ChatBot.vue +346 -368
  27. package/src/components/ChatBot/types.ts +34 -33
  28. package/src/components/ChatBotInput/ChatBotInput.vue +181 -190
  29. package/src/components/ChatBotInput/__tests__/ChatBotInput.spec.ts +292 -0
  30. package/src/components/ChatBotInput/__tests__/__snapshots__/ChatBotInput.spec.ts.snap +25 -0
  31. package/src/components/ChatBotInput/types.ts +24 -24
  32. package/src/components/ChatBotMessage/ChatBotMessage.vue +133 -134
  33. package/src/components/ChatBotMessage/ChatBotMessageButtons.vue +179 -164
  34. package/src/components/ChatBotMessage/__tests__/ChatBotMessageButtons.spec.ts +199 -0
  35. package/src/components/ChatBotMessage/__tests__/__snapshots__/ChatBotMessageButtons.spec.ts.snap +25 -0
  36. package/src/components/ChatBotMessage/types.ts +52 -52
  37. package/src/components/ChatToolBar/ChatToolBar.vue +69 -64
  38. package/src/components/ChatToolBar/__tests__/ChatToolBar.spec.ts +138 -0
  39. package/src/components/ChatToolBar/__tests__/__snapshots__/ChatToolBar.spec.ts.snap +11 -0
  40. package/src/components/ChatToolBar/types.ts +12 -12
  41. package/src/components/FieldPreview/FieldPreview.vue +83 -63
  42. package/src/components/FieldPreview/__tests__/FieldPreview.spec.ts +72 -0
  43. package/src/components/FieldPreview/__tests__/__snapshots__/FieldPreview.spec.ts.snap +19 -0
  44. package/src/components/FieldPreview/field-preview.scss +28 -24
  45. package/src/components/FieldPreview/types.ts +5 -5
  46. package/src/components/MarkdownRender/MarkdownRender.vue +16 -15
  47. package/src/components/MarkdownRender/__tests__/MarkdownRender.spec.ts +68 -0
  48. package/src/components/MarkdownRender/__tests__/__snapshots__/MarkdownRender.spec.ts.snap +8 -0
  49. package/src/components/MarkdownRender/markdown-render.scss +19 -20
  50. package/src/components/MarkdownRender/types.ts +3 -3
  51. package/src/components/PulseDots/PulseDots.vue +17 -17
  52. package/src/components/PulseDots/__tests__/PulseDots.spec.ts +35 -0
  53. package/src/components/PulseDots/__tests__/__snapshots__/PulseDots.spec.ts.snap +7 -0
  54. package/src/components/PulseDots/__tests__/__snapshots__/pulse-dots.spec.ts.snap +7 -0
  55. package/src/components/PulseDots/pulse-dots.scss +24 -23
  56. package/src/composables/__tests__/useChatMessages.spec.ts +64 -0
  57. package/src/composables/__tests__/useSSE.spec.ts +132 -0
  58. package/src/composables/useChatApi.ts +132 -134
  59. package/src/composables/useChatMessages.ts +50 -48
  60. package/src/composables/useSSE.ts +75 -76
  61. package/src/composables/useTexts.ts +33 -30
  62. package/src/test/setup.ts +41 -0
  63. package/src/utils/__tests__/parseFieldValue.spec.ts +27 -0
  64. package/src/utils/parseFieldValue.ts +12 -0
  65. package/src/utils/helper.ts +0 -12
  66. /package/dist/utils/{helper.d.ts → parseFieldValue.d.ts} +0 -0
package/dist/index.js CHANGED
@@ -1,46 +1,46 @@
1
- (function(t,W){typeof exports=="object"&&typeof module<"u"?module.exports=W(require("vue"),require("axios"),require("markdown-it")):typeof define=="function"&&define.amd?define(["vue","axios","markdown-it"],W):(t=typeof globalThis<"u"?globalThis:t||self,t.ChatBotFrontend=W(t.vue,t.axios,t.MarkdownIt))})(this,function(t,W,et){"use strict";function ge(e){return e==null?!0:typeof e=="string"||Array.isArray(e)?e.length===0:typeof e=="object"?Object.keys(e).length===0:!1}function Ne(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function be(e={},n={}){const o={},a=new Set([...Object.keys(e),...Object.keys(n)]);for(const r of a){if(r==="__proto__"||r==="constructor"||r==="prototype")continue;const l=e[r],i=n[r];Ne(l)&&Ne(i)?o[r]=be(l,i):o[r]=i!==void 0?i:l}return o}const Se="q-defaults";function tt(){var e,n;const o=t.getCurrentInstance();if(!o)throw new Error("[Quidgest UI] useDefaults must be called from inside a setup function");const a=o.type.name??o.type.__name;if(!a)throw new Error("[Quidgest UI] Could not determine component name");const r=Ie(),l=(e=r.value)==null?void 0:e.Global,i=(n=r.value)==null?void 0:n[a];return t.computed(()=>be(l,i))}function nt(e){if(ge(e))return;const n=Ie(),o=t.ref(e),a=t.computed(()=>ge(o.value)?n.value:be(n.value,o.value));t.provide(Se,a)}function Ie(){const e=t.inject(Se,void 0);if(!e)throw new Error("[Quidgest UI] Could not find defaults instance");return e}const ot=["id"],at=t.defineComponent({__name:"QSpinnerLoader",props:{id:{},class:{},size:{default:48}},setup(e){const n=e,o=t.computed(()=>({"font-size":n.size!==48?`${n.size}px`:void 0}));return(a,r)=>(t.openBlock(),t.createElementBlock("div",{id:n.id,class:t.normalizeClass(["q-spinner-loader",n.class]),style:t.normalizeStyle(o.value)},null,14,ot))}});function rt(e){return e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/([0-9])([a-zA-Z])/g,"$1 $2").replace(/([a-zA-Z])([0-9])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").trim().split(/\s+/)}function lt(e){return rt(e).join("-").toLowerCase()}function it(e,n){var o;const a=lt(n);return a?typeof((o=e.props)==null?void 0:o[a])<"u":!1}function q(e){const n=e,o=n.setup;return o&&(n.setup=(a,r)=>{const l=tt();if(ge(l.value))return o(a,r);const i=t.getCurrentInstance();if(i===null)return o(a,r);const s=new Proxy(a,{get(u,f){var g;const c=Reflect.get(u,f),m=(g=l.value)==null?void 0:g[f];return typeof f=="string"&&!it(i.vnode,f)?m??c:c}});return o(s,r)}),e}const st=q(at);function ct(e,n=!1){return n?/^#[a-fA-F0-9]{6}$/.test(e):/^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/.test(e)}function dt(e){const n=e.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);if(n){const o=parseInt(n[1],10),a=parseInt(n[2],10),r=parseInt(n[3],10);return{r:o,g:a,b:r}}}function ut(e){if(ct(e)){e.length===4&&(e="#"+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);const n=parseInt(e.slice(1,3),16),o=parseInt(e.slice(3,5),16),a=parseInt(e.slice(5,7),16);return{r:n,g:o,b:a}}else{const n=dt(e);if(n)return n}throw new Error("Invalid color format")}function pt(e,n){const o=De(e),a=n/100;return o.l=o.l-a*o.l,mt(o)}function ft(e){const n=e.r.toString(16).padStart(2,"0"),o=e.g.toString(16).padStart(2,"0"),a=e.b.toString(16).padStart(2,"0");return`#${n}${o}${a}`}function xe(e){return`${e.r} ${e.g} ${e.b}`}function De(e){const n=e.r/255,o=e.g/255,a=e.b/255,r=Math.max(n,o,a),l=Math.min(n,o,a);let i=0,s;const u=(r+l)/2;if(r===l)i=s=0;else{const f=r-l;switch(s=u>.5?f/(2-r-l):f/(r+l),r){case n:i=(o-a)/f+(o<a?6:0);break;case o:i=(a-n)/f+2;break;case a:i=(n-o)/f+4;break}i/=6}return{h:Math.round(i*360),s:Math.round(s*100),l:Math.round(u*100)}}function mt(e){const n=e.h/360,o=e.s/100,a=e.l/100;let r,l,i;if(o===0)r=l=i=a;else{const s=a<.5?a*(1+o):a+o-a*o,u=2*a-s;r=he(u,s,n+1/3),l=he(u,s,n),i=he(u,s,n-1/3)}return{r:Math.round(r*255),g:Math.round(l*255),b:Math.round(i*255)}}function he(e,n,o){return o<0&&(o+=1),o>1&&(o-=1),o<1/6?e+(n-e)*6*o:o<1/2?n:o<2/3?e+(n-e)*(2/3-o)*6:e}function gt(e){return e>50?"#000":"#fff"}const bt=Symbol.for("q-theme");function $e(){const e=t.inject(bt);if(!e)throw new Error("[Quidgest UI] Could not find theme instance");return e}function Le(e){const n=t.computed(()=>t.unref(e)),o=t.computed(()=>n.value?!ht(n.value):!1),a=t.computed(()=>{const r=n.value;if(!r)return;let l=r;const i=$e();if(o.value){const m=r;l=i.current.value.scheme[m]??r}let s;try{if(s=ut(l),!s)return}catch(m){console.error("Failed to parse color:",m);return}const u=De(s),f=gt(u.l),g=pt(s,25),c=ft(g);return{mainColor:l,mainColorRgb:xe(s),onMainColor:f,hoverColor:c,hoverColorRgb:xe(g),onHoverColor:f}});return{isUtilityColor:o,style:a}}function ht(e){return e.startsWith("#")||e.startsWith("rgb")||e.startsWith("hsl")}const yt=["id","disabled"],wt={key:0,class:"q-button__spinner"},vt={class:"q-button__content"},ye=q(t.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(e,{emit:n}){const o=e,a=n,r=t.computed(()=>o.disabled||o.loading);function l(g){r.value||a("click",g)}const{isUtilityColor:i,style:s}=Le(t.toRef(o,"color")),u=t.computed(()=>{const g=i.value?`q-button--${o.color}`:void 0,c=o.size!=="regular"?`q-button--${o.size}`:void 0,m=o.iconPos!=="start"?`q-button--icon-${o.iconPos}`:void 0;return["q-button",`q-button--${o.variant}`,g,c,m,{"q-button--borderless":o.borderless,"q-button--elevated":o.elevated,"q-button--block":o.block,"q-button--loading":o.loading,"q-button--pill":o.pill},o.class]}),f=t.computed(()=>{var g,c,m,y,x,$;if(!i.value)return{"--q-button-main-color":(g=s.value)==null?void 0:g.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":(y=s.value)==null?void 0:y.hoverColor,"--q-button-hover-color-rgb":(x=s.value)==null?void 0:x.hoverColorRgb,"--q-button-on-hover-color":($=s.value)==null?void 0:$.onHoverColor}});return(g,c)=>(t.openBlock(),t.createElementBlock("button",{id:o.id,type:"button",class:t.normalizeClass(u.value),disabled:r.value,style:t.normalizeStyle(f.value),onClick:t.withModifiers(l,["stop","prevent"])},[o.loading?(t.openBlock(),t.createElementBlock("div",wt,[t.createVNode(t.unref(st))])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",vt,[t.renderSlot(g.$slots,"default"),t.createTextVNode(" "+t.toDisplayString(o.label),1)])],14,yt))}})),kt=t.defineComponent({__name:"QIcon",props:{id:{},class:{},icon:{},type:{default:"svg"},size:{},color:{}},setup(e){const n=e,o=t.computed(()=>{switch(n.type){case"svg":return $t;case"font":return xt;case"img":return Dt;default:return}}),{style:a}=Le(t.toRef(n,"color")),r=t.computed(()=>{var l;return{"font-size":n.size!==void 0?`${n.size}px`:void 0,color:n.color!==void 0&&n.color!=="primary"?(l=a.value)==null?void 0:l.mainColor:void 0}});return(l,i)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.value),{id:n.id,class:t.normalizeClass(n.class),icon:n.icon,style:t.normalizeStyle(r.value)},null,8,["id","class","icon","style"]))}}),Bt=["id"],Et=t.defineComponent({__name:"QIconFont",props:{id:{},class:{},icon:{},library:{default:""},variant:{}},setup(e){const n=e,o=t.computed(()=>n.variant?`${n.library}-${n.variant}`:n.library),a=t.computed(()=>n.library&&n.icon?`${n.library}-${n.icon}`:n.icon);return(r,l)=>(t.openBlock(),t.createElementBlock("i",{id:n.id,class:t.normalizeClass(["q-icon","q-icon__font",o.value,a.value,n.class])},null,10,Bt))}}),Ct=["id","src"],_t=t.defineComponent({__name:"QIconImg",props:{id:{},class:{},icon:{}},setup(e){const n=e;return(o,a)=>(t.openBlock(),t.createElementBlock("img",{id:n.id,src:n.icon,class:t.normalizeClass(["q-icon","q-icon__img",n.class])},null,10,Ct))}}),te={},At=t.defineComponent({name:"InlineSvg",inheritAttrs:!1,props:{src:{type:String,required:!0},symbol:{type:String,default:""},title:{type:String,default:""},transformSource:{type:Function,default:void 0},keepDuringLoading:{type:Boolean,default:!0}},emits:{loaded:e=>typeof e=="object",unloaded:()=>!0,error:e=>typeof e=="object"},data(){return{svgElSource:null}},watch:{src(e){this.getSource(e)}},async mounted(){await this.getSource(this.src)},methods:{copySvgAttrs(e,n){const o=n.attributes;if(o)for(const a of o)e[a.name]=a.value},copyComponentAttrs(e,n){for(const[o,a]of Object.entries(n))a!==!1&&a!==null&&a!==void 0&&(e[o]=a)},getSvgContent(e){return this.symbol&&(e=e.getElementById(this.symbol),!e)?null:(this.transformSource&&(e=e.cloneNode(!0),e=this.transformSource(e)),this.title&&(this.transformSource||(e=e.cloneNode(!0)),Nt(e,this.title)),e)},async getSource(e){try{te[e]||(te[e]=St(this.download(e))),this.svgElSource&&te[e].getIsPending()&&!this.keepDuringLoading&&(this.svgElSource=null,this.$emit("unloaded"));const n=await te[e];this.svgElSource=n,await this.$nextTick(),this.$emit("loaded",this.$el)}catch(n){this.svgElSource&&(this.svgElSource=null,this.$emit("unloaded")),delete te[e],this.$emit("error",n)}},async download(e){const n=await fetch(e);if(!n.ok)throw new Error("Error loading SVG");const o=await n.text(),a=new DOMParser().parseFromString(o,"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 e=this.getSvgContent(this.svgElSource);if(!e)return t.h("div",this.$attrs);const n={};return this.copySvgAttrs(n,this.svgElSource),this.copySvgAttrs(n,e),this.copyComponentAttrs(n,this.$attrs),n.innerHTML=e.innerHTML,t.h("svg",n)},expose:[]});function Nt(e,n){const o=e.getElementsByTagName("title");if(o.length)o[0].textContent=n;else{const a=document.createElementNS("http://www.w3.org/2000/svg","title");a.textContent=n,e.insertBefore(a,e.firstChild)}}function St(e){if(e.getIsPending)return e;let n=!0;const o=e.then(a=>(n=!1,a),a=>{throw n=!1,a});return o.getIsPending=()=>n,o}const It=t.defineComponent({__name:"QIconSvg",props:{id:{},class:{},icon:{},bundle:{default:""}},emits:["loaded","unloaded"],setup(e,{emit:n}){const o=e,a=n;function r(i){a("loaded",i)}function l(){a("unloaded")}return(i,s)=>(t.openBlock(),t.createBlock(t.unref(At),{id:o.id,class:t.normalizeClass(["q-icon","q-icon__svg",o.class]),src:o.bundle,symbol:o.icon,onLoaded:r,onUnloaded:l},null,8,["id","class","src","symbol"]))}}),ne=q(kt),xt=q(Et),Dt=q(_t),$t=q(It);let Lt=0;function Mt(e){return t.unref(e)||`uid-${++Lt}`}const Rt=["id"],Tt=q(t.defineComponent({__name:"QButtonGroup",props:{id:{},class:{},disabled:{type:Boolean},borderless:{type:Boolean},elevated:{type:Boolean}},setup(e){const n=e;return nt({QButton:{disabled:t.toRef(n,"disabled"),borderless:t.toRef(n,"borderless")}}),(o,a)=>(t.openBlock(),t.createElementBlock("div",{id:n.id,class:t.normalizeClass(["q-button-group",{"q-button-group--elevated":n.elevated},n.class]),role:"group"},[t.renderSlot(o.$slots,"default")],10,Rt))}})),Ft=["id"],Vt=["for"],Pt=q(t.defineComponent({inheritAttrs:!1,__name:"QLabel",props:{id:{},class:{},label:{},for:{},required:{type:Boolean}},setup(e){const n=e,o=t.computed(()=>["q-label",{"q-label--required":n.required},n.class]);return(a,r)=>(t.openBlock(),t.createElementBlock("div",{id:n.id,class:t.normalizeClass(o.value)},[t.renderSlot(a.$slots,"prepend"),t.createElementVNode("label",t.mergeProps({for:n.for},a.$attrs),[t.renderSlot(a.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(n.label),1)])],16,Vt),t.renderSlot(a.$slots,"append")],10,Ft))}})),Ot=Symbol("DismissibleLayer");function Ut(e){const n=t.inject(Ot);if(!n)throw new Error("useDismissibleLayerStackItem must be used within a dismissible layer stack context.");return{register:()=>n.register(e),unregister:()=>n.unregister(e),isTop:()=>n.isTop(e)}}const qt={ref:"layer"},jt=q(t.defineComponent({__name:"QDismissibleLayer",emits:["escape-key-down","pointer-down-outside","focus-outside","interact-outside","dismiss"],setup(e,{emit:n}){const o=n,a=t.useTemplateRef("layer"),r=t.useId(),l=Ut(r);let i=[];function s(c){c.key==="Escape"&&l!=null&&l.isTop()&&(o("escape-key-down",c),c.defaultPrevented||o("dismiss",c))}function u(c){if(!a.value)return;const m=c.target;if(!a.value.contains(m)&&l!=null&&l.isTop()){const y=new CustomEvent("focus-outside",{bubbles:!1,cancelable:!0,detail:{originalEvent:c}});o("focus-outside",y),o("interact-outside",y),y.defaultPrevented||o("dismiss",y)}}function f(c){if(!a.value||!(l!=null&&l.isTop()))return;const m=c.target;if(!a.value.contains(m)){const y=new CustomEvent("pointer-down-outside",{bubbles:!1,cancelable:!0,detail:{originalEvent:c}});o("pointer-down-outside",y),o("interact-outside",y),y.defaultPrevented||o("dismiss",y)}}function g(){["mousedown","touchstart"].forEach(c=>{document.addEventListener(c,f,{passive:!0,capture:!0}),i.push(()=>{document.removeEventListener(c,f,{capture:!0})})})}return t.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)}),g()}),t.onUnmounted(()=>{l==null||l.unregister(),i.forEach(c=>c()),i=[]}),(c,m)=>(t.openBlock(),t.createElementBlock("div",qt,[t.renderSlot(c.$slots,"default")],512))}}));typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;function Gt(e){var n;const o=t.toValue(e);return(n=o==null?void 0:o.$el)!=null?n:o}/*!
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 L(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,c){var p;const d=Reflect.get(u,c),m=(p=r.value)==null?void 0:p[c];return typeof c=="string"&&!gt(i.vnode,c)?m??d:d}});return n(s,l)}),t}const bt=L(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=Ve(t),a=o/100;return n.l=n.l-a*n.l,Ct(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 Re(t){return`${t.r} ${t.g} ${t.b}`}function Ve(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 c=l-r;switch(s=u>.5?c/(2-l-r):c/(l+r),l){case o:i=(n-a)/c+(n<a?6:0);break;case n:i=(a-o)/c+2;break;case a:i=(o-n)/c+4;break}i/=6}return{h:Math.round(i*360),s:Math.round(s*100),l:Math.round(u*100)}}function Ct(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 vt(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?!_t(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=Ve(s),c=vt(u.l),p=kt(s,25),d=Bt(p);return{mainColor:r,mainColorRgb:Re(s),onMainColor:c,hoverColor:d,hoverColorRgb:Re(p),onHoverColor:c}});return{isUtilityColor:n,style:a}}function _t(t){return t.startsWith("#")||t.startsWith("rgb")||t.startsWith("hsl")}const Et=["id","disabled"],St={key:0,class:"q-button__spinner"},$t={class:"q-button__content"},j=L(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(p){l.value||a("click",p)}const{isUtilityColor:i,style:s}=Le(e.toRef(n,"color")),u=e.computed(()=>{const p=i.value?`q-button--${n.color}`:void 0,d=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,d,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]}),c=e.computed(()=>{var p,d,m,b,y,B;if(!i.value)return{"--q-button-main-color":(p=s.value)==null?void 0:p.mainColor,"--q-button-main-color-rgb":(d=s.value)==null?void 0:d.mainColorRgb,"--q-button-on-main-color":(m=s.value)==null?void 0:m.onMainColor,"--q-button-hover-color":(b=s.value)==null?void 0:b.hoverColor,"--q-button-hover-color-rgb":(y=s.value)==null?void 0:y.hoverColorRgb,"--q-button-on-hover-color":(B=s.value)==null?void 0:B.onHoverColor}});return(p,d)=>(e.openBlock(),e.createElementBlock("button",{id:n.id,type:"button",class:e.normalizeClass(u.value),disabled:l.value,style:e.normalizeStyle(c.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(p.$slots,"default"),e.createTextVNode(" "+e.toDisplayString(n.label),1)])],14,Et))}})),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 qt;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"],Rt=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={},Vt=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 Tt=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(Vt),{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=L(Nt),qt=L(It),Ft=L(Rt),Pt=L(Tt);let Ut=0;function ke(t){return e.unref(t)||`uid-${++Ut}`}const Ot=["id"],Te=L(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,Ot))}})),zt=["id"],jt=["for"],qe=L(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=L(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(qe),{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=L(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=L(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:y=>{const B=a.maxLength;r.value=B?y==null?void 0:y.slice(0,B):y}});e.watch(r,y=>i.value=y,{immediate:!0});const s=ke(a.id),u=e.ref(null),c=e.ref(null),p=e.computed(()=>a.readonly||a.disabled?void 0:a.placeholder),d=e.computed(()=>a.clearable&&!a.readonly&&!a.disabled),m=e.computed(()=>d.value&&r.value);function b(y){d.value&&(r.value="",l("click:clear",y))}return o({fieldRef:e.computed(()=>{var y;return(y=u.value)==null?void 0:y.fieldRef}),inputRef:c}),(y,B)=>(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(y.$slots,"label.prepend")]),"label.append":e.withCtx(()=>[e.renderSlot(y.$slots,"label.append")]),default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("input",e.mergeProps({id:e.unref(s),ref_key:"inputRef",ref:c,"onUpdate:modelValue":B[0]||(B[0]=$=>i.value=$),class:"q-text-field__input",type:a.type,maxlength:a.maxLength,required:a.required,placeholder:p.value,readonly:a.readonly,disabled:a.disabled},y.$attrs),null,16,Xt),[[e.vModelDynamic,i.value]])]),_:2},[y.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>[e.renderSlot(y.$slots,"prepend")]),key:"0"}:void 0,y.$slots.append||m.value?{name:"append",fn:e.withCtx(()=>[e.renderSlot(y.$slots,"append"),m.value?(e.openBlock(),e.createBlock(e.unref(Yt),{key:0,"data-testid":"q-text-field__clear-button",texts:a.texts,onClick:b},null,8,["texts"])):e.createCommentVNode("v-if",!0)]),key:"1"}:void 0,y.$slots.extras?{name:"extras",fn:e.withCtx(()=>[e.renderSlot(y.$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=L(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(d){d.key==="Escape"&&r!=null&&r.isTop()&&(n("escape-key-down",d),d.defaultPrevented||n("dismiss",d))}function u(d){if(!a.value)return;const m=d.target;if(!a.value.contains(m)&&r!=null&&r.isTop()){const b=new CustomEvent("focus-outside",{bubbles:!1,cancelable:!0,detail:{originalEvent:d}});n("focus-outside",b),n("interact-outside",b),b.defaultPrevented||n("dismiss",b)}}function c(d){if(!a.value||!(r!=null&&r.isTop()))return;const m=d.target;if(!a.value.contains(m)){const b=new CustomEvent("pointer-down-outside",{bubbles:!1,cancelable:!0,detail:{originalEvent:d}});n("pointer-down-outside",b),n("interact-outside",b),b.defaultPrevented||n("dismiss",b)}}function p(){["mousedown","touchstart"].forEach(d=>{document.addEventListener(d,c,{passive:!0,capture:!0}),i.push(()=>{document.removeEventListener(d,c,{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)}),p()}),e.onUnmounted(()=>{r==null||r.unregister(),i.forEach(d=>d()),i=[]}),(d,m)=>(e.openBlock(),e.createElementBlock("div",tn,[e.renderSlot(d.$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 Ue(...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 Ce(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 d=e.toValue(t);return Array.isArray(d)?d.map(m=>Ce(m)):[Ce(d)]}),c=e.watch(u,d=>{if(s(),i.value&&a){r=new ResizeObserver(o);for(const m of d)m&&r.observe(m,l)}},{immediate:!0,flush:"post"}),p=()=>{s(),c()};return on(p),{isSupported:i,stop:p}}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=Ue(t==null?void 0:t.element),r=Ue((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 c(){var p;if(!l.value)return;let d="";l.value.style[i]="1px",s.value=(p=l.value)==null?void 0:p.scrollHeight;const m=e.toValue(t==null?void 0:t.styleTarget);m?m.style[i]=`${s.value}px`:d=`${s.value}px`,l.value.style[i]=d}return e.watch([r,l],()=>e.nextTick(c),{immediate:!0}),e.watch(s,()=>{var p;return(p=t==null?void 0:t.onResize)==null?void 0:p.call(t)}),cn(l,([{contentRect:p}])=>{u.value!==p.width&&dn(a,()=>{u.value=p.width,c()})}),t!=null&&t.watch&&e.watch(t.watch,c,{immediate:!0,deep:!0}),{textarea:l,input:r,triggerResize:c}}/*!
2
2
  * tabbable 6.2.0
3
3
  * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
4
- */var Me=["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])"],ie=Me.join(","),Re=typeof Element>"u",G=Re?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,se=!Re&&Element.prototype.getRootNode?function(e){var n;return e==null||(n=e.getRootNode)===null||n===void 0?void 0:n.call(e)}:function(e){return e==null?void 0:e.ownerDocument},ce=function e(n,o){var a;o===void 0&&(o=!0);var r=n==null||(a=n.getAttribute)===null||a===void 0?void 0:a.call(n,"inert"),l=r===""||r==="true",i=l||o&&n&&e(n.parentNode);return i},zt=function(e){var n,o=e==null||(n=e.getAttribute)===null||n===void 0?void 0:n.call(e,"contenteditable");return o===""||o==="true"},Te=function(e,n,o){if(ce(e))return[];var a=Array.prototype.slice.apply(e.querySelectorAll(ie));return n&&G.call(e,ie)&&a.unshift(e),a=a.filter(o),a},Fe=function e(n,o,a){for(var r=[],l=Array.from(n);l.length;){var i=l.shift();if(!ce(i,!1))if(i.tagName==="SLOT"){var s=i.assignedElements(),u=s.length?s:i.children,f=e(u,!0,a);a.flatten?r.push.apply(r,f):r.push({scopeParent:i,candidates:f})}else{var g=G.call(i,ie);g&&a.filter(i)&&(o||!n.includes(i))&&r.push(i);var c=i.shadowRoot||typeof a.getShadowRoot=="function"&&a.getShadowRoot(i),m=!ce(c,!1)&&(!a.shadowRootFilter||a.shadowRootFilter(i));if(c&&m){var y=e(c===!0?i.children:c.children,!0,a);a.flatten?r.push.apply(r,y):r.push({scopeParent:i,candidates:y})}else l.unshift.apply(l,i.children)}}return r},Ve=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},z=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||zt(e))&&!Ve(e)?0:e.tabIndex},Ht=function(e,n){var o=z(e);return o<0&&n&&!Ve(e)?0:o},Zt=function(e,n){return e.tabIndex===n.tabIndex?e.documentOrder-n.documentOrder:e.tabIndex-n.tabIndex},Pe=function(e){return e.tagName==="INPUT"},Jt=function(e){return Pe(e)&&e.type==="hidden"},Wt=function(e){var n=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(o){return o.tagName==="SUMMARY"});return n},Yt=function(e,n){for(var o=0;o<e.length;o++)if(e[o].checked&&e[o].form===n)return e[o]},Qt=function(e){if(!e.name)return!0;var n=e.form||se(e),o=function(l){return n.querySelectorAll('input[type="radio"][name="'+l+'"]')},a;if(typeof window<"u"&&typeof window.CSS<"u"&&typeof window.CSS.escape=="function")a=o(window.CSS.escape(e.name));else try{a=o(e.name)}catch(l){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",l.message),!1}var r=Yt(a,e.form);return!r||r===e},Xt=function(e){return Pe(e)&&e.type==="radio"},Kt=function(e){return Xt(e)&&!Qt(e)},en=function(e){var n,o=e&&se(e),a=(n=o)===null||n===void 0?void 0:n.host,r=!1;if(o&&o!==e){var l,i,s;for(r=!!((l=a)!==null&&l!==void 0&&(i=l.ownerDocument)!==null&&i!==void 0&&i.contains(a)||e!=null&&(s=e.ownerDocument)!==null&&s!==void 0&&s.contains(e));!r&&a;){var u,f,g;o=se(a),a=(u=o)===null||u===void 0?void 0:u.host,r=!!((f=a)!==null&&f!==void 0&&(g=f.ownerDocument)!==null&&g!==void 0&&g.contains(a))}}return r},Oe=function(e){var n=e.getBoundingClientRect(),o=n.width,a=n.height;return o===0&&a===0},tn=function(e,n){var o=n.displayCheck,a=n.getShadowRoot;if(getComputedStyle(e).visibility==="hidden")return!0;var r=G.call(e,"details>summary:first-of-type"),l=r?e.parentElement:e;if(G.call(l,"details:not([open]) *"))return!0;if(!o||o==="full"||o==="legacy-full"){if(typeof a=="function"){for(var i=e;e;){var s=e.parentElement,u=se(e);if(s&&!s.shadowRoot&&a(s)===!0)return Oe(e);e.assignedSlot?e=e.assignedSlot:!s&&u!==e.ownerDocument?e=u.host:e=s}e=i}if(en(e))return!e.getClientRects().length;if(o!=="legacy-full")return!0}else if(o==="non-zero-area")return Oe(e);return!1},nn=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var n=e.parentElement;n;){if(n.tagName==="FIELDSET"&&n.disabled){for(var o=0;o<n.children.length;o++){var a=n.children.item(o);if(a.tagName==="LEGEND")return G.call(n,"fieldset[disabled] *")?!0:!a.contains(e)}return!0}n=n.parentElement}return!1},de=function(e,n){return!(n.disabled||ce(n)||Jt(n)||tn(n,e)||Wt(n)||nn(n))},we=function(e,n){return!(Kt(n)||z(n)<0||!de(e,n))},on=function(e){var n=parseInt(e.getAttribute("tabindex"),10);return!!(isNaN(n)||n>=0)},an=function e(n){var o=[],a=[];return n.forEach(function(r,l){var i=!!r.scopeParent,s=i?r.scopeParent:r,u=Ht(s,i),f=i?e(r.candidates):s;u===0?i?o.push.apply(o,f):o.push(s):a.push({documentOrder:l,tabIndex:u,item:r,isScope:i,content:f})}),a.sort(Zt).reduce(function(r,l){return l.isScope?r.push.apply(r,l.content):r.push(l.content),r},[]).concat(o)},rn=function(e,n){n=n||{};var o;return n.getShadowRoot?o=Fe([e],n.includeContainer,{filter:we.bind(null,n),flatten:!1,getShadowRoot:n.getShadowRoot,shadowRootFilter:on}):o=Te(e,n.includeContainer,we.bind(null,n)),an(o)},ln=function(e,n){n=n||{};var o;return n.getShadowRoot?o=Fe([e],n.includeContainer,{filter:de.bind(null,n),flatten:!0,getShadowRoot:n.getShadowRoot}):o=Te(e,n.includeContainer,de.bind(null,n)),o},Y=function(e,n){if(n=n||{},!e)throw new Error("No node provided");return G.call(e,ie)===!1?!1:we(n,e)},sn=Me.concat("iframe").join(","),ve=function(e,n){if(n=n||{},!e)throw new Error("No node provided");return G.call(e,sn)===!1?!1:de(n,e)};/*!
4
+ */var Oe=["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=Oe.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,c=t(u,!0,a);a.flatten?l.push.apply(l,c):l.push({scopeParent:i,candidates:c})}else{var p=Z.call(i,se);p&&a.filter(i)&&(n||!o.includes(i))&&l.push(i);var d=i.shadowRoot||typeof a.getShadowRoot=="function"&&a.getShadowRoot(i),m=!de(d,!1)&&(!a.shadowRootFilter||a.shadowRootFilter(i));if(d&&m){var b=t(d===!0?i.children:d.children,!0,a);a.flatten?l.push.apply(l,b):l.push({scopeParent:i,candidates:b})}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,c,p;n=ce(a),a=(u=n)===null||u===void 0?void 0:u.host,l=!!((c=a)!==null&&c!==void 0&&(p=c.ownerDocument)!==null&&p!==void 0&&p.contains(a))}}return l},Ze=function(t){var o=t.getBoundingClientRect(),n=o.width,a=o.height;return n===0&&a===0},Cn=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},vn=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)||Cn(o,t)||bn(o)||vn(o))},ve=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)},_n=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),c=i?t(l.candidates):s;u===0?i?n.push.apply(n,c):n.push(s):a.push({documentOrder:r,tabIndex:u,item:l,isScope:i,content:c})}),a.sort(mn).reduce(function(l,r){return r.isScope?l.push.apply(l,r.content):l.push(r.content),l},[]).concat(n)},En=function(t,o){o=o||{};var n;return o.getShadowRoot?n=Ge([t],o.includeContainer,{filter:ve.bind(null,o),flatten:!1,getShadowRoot:o.getShadowRoot,shadowRootFilter:xn}):n=je(t,o.includeContainer,ve.bind(null,o)),_n(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:ve(o,t)},$n=Oe.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 ke(e,n){(n==null||n>e.length)&&(n=e.length);for(var o=0,a=Array(n);o<n;o++)a[o]=e[o];return a}function cn(e){if(Array.isArray(e))return ke(e)}function dn(e,n,o){return(n=gn(n))in e?Object.defineProperty(e,n,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[n]=o,e}function un(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function pn(){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 Ue(e,n){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),o.push.apply(o,a)}return o}function qe(e){for(var n=1;n<arguments.length;n++){var o=arguments[n]!=null?arguments[n]:{};n%2?Ue(Object(o),!0).forEach(function(a){dn(e,a,o[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):Ue(Object(o)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(o,a))})}return e}function fn(e){return cn(e)||un(e)||bn(e)||pn()}function mn(e,n){if(typeof e!="object"||!e)return e;var o=e[Symbol.toPrimitive];if(o!==void 0){var a=o.call(e,n);if(typeof a!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(e)}function gn(e){var n=mn(e,"string");return typeof n=="symbol"?n:n+""}function bn(e,n){if(e){if(typeof e=="string")return ke(e,n);var o={}.toString.call(e).slice(8,-1);return o==="Object"&&e.constructor&&(o=e.constructor.name),o==="Map"||o==="Set"?Array.from(e):o==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?ke(e,n):void 0}}var je={activateTrap:function(e,n){if(e.length>0){var o=e[e.length-1];o!==n&&o._setPausedState(!0)}var a=e.indexOf(n);a===-1||e.splice(a,1),e.push(n)},deactivateTrap:function(e,n){var o=e.indexOf(n);o!==-1&&e.splice(o,1),e.length>0&&!e[e.length-1]._isManuallyPaused()&&e[e.length-1]._setPausedState(!1)}},hn=function(e){return e.tagName&&e.tagName.toLowerCase()==="input"&&typeof e.select=="function"},yn=function(e){return(e==null?void 0:e.key)==="Escape"||(e==null?void 0:e.key)==="Esc"||(e==null?void 0:e.keyCode)===27},oe=function(e){return(e==null?void 0:e.key)==="Tab"||(e==null?void 0:e.keyCode)===9},wn=function(e){return oe(e)&&!e.shiftKey},vn=function(e){return oe(e)&&e.shiftKey},Ge=function(e){return setTimeout(e,0)},ae=function(e){for(var n=arguments.length,o=new Array(n>1?n-1:0),a=1;a<n;a++)o[a-1]=arguments[a];return typeof e=="function"?e.apply(void 0,o):e},ue=function(e){return e.target.shadowRoot&&typeof e.composedPath=="function"?e.composedPath()[0]:e.target},kn=[],Bn=function(e,n){var o=(n==null?void 0:n.document)||document,a=(n==null?void 0:n.trapStack)||kn,r=qe({returnFocusOnDeactivate:!0,escapeDeactivates:!0,delayInitialFocus:!0,isKeyForward:wn,isKeyBackward:vn},n),l={containers:[],containerGroups:[],tabbableGroups:[],nodeFocusedBeforeActivation:null,mostRecentlyFocusedNode:null,active:!1,paused:!1,manuallyPaused:!1,delayInitialFocusTimer:void 0,recentNavEvent:void 0},i,s=function(d,p,w){return d&&d[p]!==void 0?d[p]:r[w||p]},u=function(d,p){var w=typeof(p==null?void 0:p.composedPath)=="function"?p.composedPath():void 0;return l.containerGroups.findIndex(function(A){var B=A.container,D=A.tabbableNodes;return B.contains(d)||(w==null?void 0:w.includes(B))||D.find(function(_){return _===d})})},f=function(d){var p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},w=p.hasFallback,A=w===void 0?!1:w,B=p.params,D=B===void 0?[]:B,_=r[d];if(typeof _=="function"&&(_=_.apply(void 0,fn(D))),_===!0&&(_=void 0),!_){if(_===void 0||_===!1)return _;throw new Error("`".concat(d,"` was specified but was not a node, or did not return a node"))}var b=_;if(typeof _=="string"){try{b=o.querySelector(_)}catch(h){throw new Error("`".concat(d,'` appears to be an invalid selector; error="').concat(h.message,'"'))}if(!b&&!A)throw new Error("`".concat(d,"` as selector refers to no known node"))}return b},g=function(){var d=f("initialFocus",{hasFallback:!0});if(d===!1)return!1;if(d===void 0||d&&!ve(d,r.tabbableOptions))if(u(o.activeElement)>=0)d=o.activeElement;else{var p=l.tabbableGroups[0],w=p&&p.firstTabbableNode;d=w||f("fallbackFocus")}else d===null&&(d=f("fallbackFocus"));if(!d)throw new Error("Your focus-trap needs to have at least one focusable element");return d},c=function(){if(l.containerGroups=l.containers.map(function(d){var p=rn(d,r.tabbableOptions),w=ln(d,r.tabbableOptions),A=p.length>0?p[0]:void 0,B=p.length>0?p[p.length-1]:void 0,D=w.find(function(h){return Y(h)}),_=w.slice().reverse().find(function(h){return Y(h)}),b=!!p.find(function(h){return z(h)>0});return{container:d,tabbableNodes:p,focusableNodes:w,posTabIndexesFound:b,firstTabbableNode:A,lastTabbableNode:B,firstDomTabbableNode:D,lastDomTabbableNode:_,nextTabbableNode:function(h){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,T=p.indexOf(h);return T<0?E?w.slice(w.indexOf(h)+1).find(function(L){return Y(L)}):w.slice(0,w.indexOf(h)).reverse().find(function(L){return Y(L)}):p[T+(E?1:-1)]}}}),l.tabbableGroups=l.containerGroups.filter(function(d){return d.tabbableNodes.length>0}),l.tabbableGroups.length<=0&&!f("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(d){return d.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(d){var p=d.activeElement;if(p)return p.shadowRoot&&p.shadowRoot.activeElement!==null?m(p.shadowRoot):p},y=function(d){if(d!==!1&&d!==m(document)){if(!d||!d.focus){y(g());return}d.focus({preventScroll:!!r.preventScroll}),l.mostRecentlyFocusedNode=d,hn(d)&&d.select()}},x=function(d){var p=f("setReturnFocus",{params:[d]});return p||(p===!1?!1:d)},$=function(d){var p=d.target,w=d.event,A=d.isBackward,B=A===void 0?!1:A;p=p||ue(w),c();var D=null;if(l.tabbableGroups.length>0){var _=u(p,w),b=_>=0?l.containerGroups[_]:void 0;if(_<0)B?D=l.tabbableGroups[l.tabbableGroups.length-1].lastTabbableNode:D=l.tabbableGroups[0].firstTabbableNode;else if(B){var h=l.tabbableGroups.findIndex(function(ee){var le=ee.firstTabbableNode;return p===le});if(h<0&&(b.container===p||ve(p,r.tabbableOptions)&&!Y(p,r.tabbableOptions)&&!b.nextTabbableNode(p,!1))&&(h=_),h>=0){var E=h===0?l.tabbableGroups.length-1:h-1,T=l.tabbableGroups[E];D=z(p)>=0?T.lastTabbableNode:T.lastDomTabbableNode}else oe(w)||(D=b.nextTabbableNode(p,!1))}else{var L=l.tabbableGroups.findIndex(function(ee){var le=ee.lastTabbableNode;return p===le});if(L<0&&(b.container===p||ve(p,r.tabbableOptions)&&!Y(p,r.tabbableOptions)&&!b.nextTabbableNode(p))&&(L=_),L>=0){var Z=L===l.tabbableGroups.length-1?0:L+1,K=l.tabbableGroups[Z];D=z(p)>=0?K.firstTabbableNode:K.firstDomTabbableNode}else oe(w)||(D=b.nextTabbableNode(p))}}else D=f("fallbackFocus");return D},S=function(d){var p=ue(d);if(!(u(p,d)>=0)){if(ae(r.clickOutsideDeactivates,d)){i.deactivate({returnFocus:r.returnFocusOnDeactivate});return}ae(r.allowOutsideClick,d)||d.preventDefault()}},U=function(d){var p=ue(d),w=u(p,d)>=0;if(w||p instanceof Document)w&&(l.mostRecentlyFocusedNode=p);else{d.stopImmediatePropagation();var A,B=!0;if(l.mostRecentlyFocusedNode)if(z(l.mostRecentlyFocusedNode)>0){var D=u(l.mostRecentlyFocusedNode),_=l.containerGroups[D].tabbableNodes;if(_.length>0){var b=_.findIndex(function(h){return h===l.mostRecentlyFocusedNode});b>=0&&(r.isKeyForward(l.recentNavEvent)?b+1<_.length&&(A=_[b+1],B=!1):b-1>=0&&(A=_[b-1],B=!1))}}else l.containerGroups.some(function(h){return h.tabbableNodes.some(function(E){return z(E)>0})})||(B=!1);else B=!1;B&&(A=$({target:l.mostRecentlyFocusedNode,isBackward:r.isKeyBackward(l.recentNavEvent)})),y(A||l.mostRecentlyFocusedNode||g())}l.recentNavEvent=void 0},M=function(d){var p=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;l.recentNavEvent=d;var w=$({event:d,isBackward:p});w&&(oe(d)&&d.preventDefault(),y(w))},F=function(d){(r.isKeyForward(d)||r.isKeyBackward(d))&&M(d,r.isKeyBackward(d))},C=function(d){yn(d)&&ae(r.escapeDeactivates,d)!==!1&&(d.preventDefault(),i.deactivate())},I=function(d){var p=ue(d);u(p,d)>=0||ae(r.clickOutsideDeactivates,d)||ae(r.allowOutsideClick,d)||(d.preventDefault(),d.stopImmediatePropagation())},k=function(){if(l.active)return je.activateTrap(a,i),l.delayInitialFocusTimer=r.delayInitialFocus?Ge(function(){y(g())}):y(g()),o.addEventListener("focusin",U,!0),o.addEventListener("mousedown",S,{capture:!0,passive:!1}),o.addEventListener("touchstart",S,{capture:!0,passive:!1}),o.addEventListener("click",I,{capture:!0,passive:!1}),o.addEventListener("keydown",F,{capture:!0,passive:!1}),o.addEventListener("keydown",C),i},N=function(){if(l.active)return o.removeEventListener("focusin",U,!0),o.removeEventListener("mousedown",S,!0),o.removeEventListener("touchstart",S,!0),o.removeEventListener("click",I,!0),o.removeEventListener("keydown",F,!0),o.removeEventListener("keydown",C),i},V=function(d){var p=d.some(function(w){var A=Array.from(w.removedNodes);return A.some(function(B){return B===l.mostRecentlyFocusedNode})});p&&y(g())},R=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(V):void 0,O=function(){R&&(R.disconnect(),l.active&&!l.paused&&l.containers.map(function(d){R.observe(d,{subtree:!0,childList:!0})}))};return i={get active(){return l.active},get paused(){return l.paused},activate:function(d){if(l.active)return this;var p=s(d,"onActivate"),w=s(d,"onPostActivate"),A=s(d,"checkCanFocusTrap");A||c(),l.active=!0,l.paused=!1,l.nodeFocusedBeforeActivation=o.activeElement,p==null||p();var B=function(){A&&c(),k(),O(),w==null||w()};return A?(A(l.containers.concat()).then(B,B),this):(B(),this)},deactivate:function(d){if(!l.active)return this;var p=qe({onDeactivate:r.onDeactivate,onPostDeactivate:r.onPostDeactivate,checkCanReturnFocus:r.checkCanReturnFocus},d);clearTimeout(l.delayInitialFocusTimer),l.delayInitialFocusTimer=void 0,N(),l.active=!1,l.paused=!1,O(),je.deactivateTrap(a,i);var w=s(p,"onDeactivate"),A=s(p,"onPostDeactivate"),B=s(p,"checkCanReturnFocus"),D=s(p,"returnFocus","returnFocusOnDeactivate");w==null||w();var _=function(){Ge(function(){D&&y(x(l.nodeFocusedBeforeActivation)),A==null||A()})};return D&&B?(B(x(l.nodeFocusedBeforeActivation)).then(_,_),this):(_(),this)},pause:function(d){return l.active?(l.manuallyPaused=!0,this._setPausedState(!0,d)):this},unpause:function(d){return l.active?(l.manuallyPaused=!1,a[a.length-1]!==this?this:this._setPausedState(!1,d)):this},updateContainerElements:function(d){var p=[].concat(d).filter(Boolean);return l.containers=p.map(function(w){return typeof w=="string"?o.querySelector(w):w}),l.active&&c(),O(),this}},Object.defineProperties(i,{_isManuallyPaused:{value:function(){return l.manuallyPaused}},_setPausedState:{value:function(d,p){if(l.paused===d)return this;if(l.paused=d,d){var w=s(p,"onPause"),A=s(p,"onPostPause");w==null||w(),N(),O(),A==null||A()}else{var B=s(p,"onUnpause"),D=s(p,"onPostUnpause");B==null||B(),c(),k(),O(),D==null||D()}return this}}}),i.updateContainerElements(e),i};const En=t.defineComponent({name:"UseFocusTrap",props:["as","options"],setup(e,{slots:n}){let o;const a=t.ref(),r=()=>o&&o.activate(),l=()=>o&&o.deactivate();return t.watch(()=>Gt(a),i=>{i&&(o=Bn(i,e.options||{}),r())},{flush:"post"}),t.onScopeDispose(()=>l()),()=>{if(n.default)return t.h(e.as||"div",{ref:a},n.default())}}}),Cn=q(t.defineComponent({__name:"QFocusTrap",props:t.mergeModels({options:{},as:{}},{disabled:{type:Boolean},disabledModifiers:{}}),emits:["update:disabled"],setup(e){const n=e,o=t.useModel(e,"disabled");return(a,r)=>o.value?t.renderSlot(a.$slots,"default",{key:0}):(t.openBlock(),t.createBlock(t.unref(En),t.normalizeProps(t.mergeProps({key:1},n)),{default:t.withCtx(()=>[t.renderSlot(a.$slots,"default")]),_:3},16))}})),Q="data-scroll-locked",Be="right-scroll-bar-position",Ee="width-before-scroll-bar",_n="with-scroll-bars-hidden",An="--removed-body-scroll-bar-size",Nn={left:0,top:0,right:0,gap:0},Ce=e=>parseInt(e||"",10)||0,Sn=e=>{const n=window.getComputedStyle(document.body),o=n[e==="padding"?"paddingLeft":"marginLeft"],a=n[e==="padding"?"paddingTop":"marginTop"],r=n[e==="padding"?"paddingRight":"marginRight"];return[Ce(o),Ce(a),Ce(r)]},In=(e="margin")=>{if(typeof window>"u")return Nn;const n=Sn(e),o=document.documentElement.clientWidth,a=window.innerWidth;return{left:n[0],top:n[1],right:n[2],gap:Math.max(0,a-o+n[2]-n[0])}};function xn(){return document?document.createElement("style"):null}function Dn(e,n){e.appendChild(document.createTextNode(n))}function $n(e){(document.head||document.getElementsByTagName("head")[0]).appendChild(e)}const Ln=()=>{let e=0,n=null;return{add:o=>{e===0&&(n=xn())&&(Dn(n,o),$n(n)),e++},remove:()=>{var o;e--,!e&&n&&((o=n.parentNode)==null||o.removeChild(n),n=null)}}},Mn=q(t.defineComponent({__name:"QRemoveScrollBar",props:{noRelative:{type:Boolean},noImportant:{type:Boolean},gapMode:{default:"margin"}},setup(e){const n=e,o=Ln(),a=()=>{const l=parseInt(document.body.getAttribute(Q)||"0",10);return isFinite(l)?l:0},r=({left:l,top:i,right:s,gap:u},f,g="margin",c)=>`
9
- .${_n} {
10
- overflow: hidden ${c};
11
- padding-right: ${u}px ${c};
7
+ */function _e(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 _e(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 Rn(t){return Nn(t)||In(t)||Ln(t)||Dn()}function Vn(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=Vn(t,"string");return typeof o=="symbol"?o:o+""}function Ln(t,o){if(t){if(typeof t=="string")return _e(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)?_e(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)}},Tn=function(t){return t.tagName&&t.tagName.toLowerCase()==="input"&&typeof t.select=="function"},qn=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},Un=[],On=function(t,o){var n=(o==null?void 0:o.document)||document,a=(o==null?void 0:o.trapStack)||Un,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(f,g,w){return f&&f[g]!==void 0?f[g]:l[w||g]},u=function(f,g){var w=typeof(g==null?void 0:g.composedPath)=="function"?g.composedPath():void 0;return r.containerGroups.findIndex(function(E){var v=E.container,D=E.tabbableNodes;return v.contains(f)||(w==null?void 0:w.includes(v))||D.find(function(x){return x===f})})},c=function(f){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},w=g.hasFallback,E=w===void 0?!1:w,v=g.params,D=v===void 0?[]:v,x=l[f];if(typeof x=="function"&&(x=x.apply(void 0,Rn(D))),x===!0&&(x=void 0),!x){if(x===void 0||x===!1)return x;throw new Error("`".concat(f,"` was specified but was not a node, or did not return a node"))}var R=x;if(typeof x=="string"){try{R=n.querySelector(x)}catch(h){throw new Error("`".concat(f,'` appears to be an invalid selector; error="').concat(h.message,'"'))}if(!R&&!E)throw new Error("`".concat(f,"` as selector refers to no known node"))}return R},p=function(){var f=c("initialFocus",{hasFallback:!0});if(f===!1)return!1;if(f===void 0||f&&!xe(f,l.tabbableOptions))if(u(n.activeElement)>=0)f=n.activeElement;else{var g=r.tabbableGroups[0],w=g&&g.firstTabbableNode;f=w||c("fallbackFocus")}else f===null&&(f=c("fallbackFocus"));if(!f)throw new Error("Your focus-trap needs to have at least one focusable element");return f},d=function(){if(r.containerGroups=r.containers.map(function(f){var g=En(f,l.tabbableOptions),w=Sn(f,l.tabbableOptions),E=g.length>0?g[0]:void 0,v=g.length>0?g[g.length-1]:void 0,D=w.find(function(h){return ee(h)}),x=w.slice().reverse().find(function(h){return ee(h)}),R=!!g.find(function(h){return J(h)>0});return{container:f,tabbableNodes:g,focusableNodes:w,posTabIndexesFound:R,firstTabbableNode:E,lastTabbableNode:v,firstDomTabbableNode:D,lastDomTabbableNode:x,nextTabbableNode:function(h){var k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,_=g.indexOf(h);return _<0?k?w.slice(w.indexOf(h)+1).find(function(A){return ee(A)}):w.slice(0,w.indexOf(h)).reverse().find(function(A){return ee(A)}):g[_+(k?1:-1)]}}}),r.tabbableGroups=r.containerGroups.filter(function(f){return f.tabbableNodes.length>0}),r.tabbableGroups.length<=0&&!c("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(f){return f.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(f){var g=f.activeElement;if(g)return g.shadowRoot&&g.shadowRoot.activeElement!==null?m(g.shadowRoot):g},b=function(f){if(f!==!1&&f!==m(document)){if(!f||!f.focus){b(p());return}f.focus({preventScroll:!!l.preventScroll}),r.mostRecentlyFocusedNode=f,Tn(f)&&f.select()}},y=function(f){var g=c("setReturnFocus",{params:[f]});return g||(g===!1?!1:f)},B=function(f){var g=f.target,w=f.event,E=f.isBackward,v=E===void 0?!1:E;g=g||pe(w),d();var D=null;if(r.tabbableGroups.length>0){var x=u(g,w),R=x>=0?r.containerGroups[x]:void 0;if(x<0)v?D=r.tabbableGroups[r.tabbableGroups.length-1].lastTabbableNode:D=r.tabbableGroups[0].firstTabbableNode;else if(v){var h=r.tabbableGroups.findIndex(function(oe){var ie=oe.firstTabbableNode;return g===ie});if(h<0&&(R.container===g||xe(g,l.tabbableOptions)&&!ee(g,l.tabbableOptions)&&!R.nextTabbableNode(g,!1))&&(h=x),h>=0){var k=h===0?r.tabbableGroups.length-1:h-1,_=r.tabbableGroups[k];D=J(g)>=0?_.lastTabbableNode:_.lastDomTabbableNode}else re(w)||(D=R.nextTabbableNode(g,!1))}else{var A=r.tabbableGroups.findIndex(function(oe){var ie=oe.lastTabbableNode;return g===ie});if(A<0&&(R.container===g||xe(g,l.tabbableOptions)&&!ee(g,l.tabbableOptions)&&!R.nextTabbableNode(g))&&(A=x),A>=0){var G=A===r.tabbableGroups.length-1?0:A+1,Q=r.tabbableGroups[G];D=J(g)>=0?Q.firstTabbableNode:Q.firstDomTabbableNode}else re(w)||(D=R.nextTabbableNode(g))}}else D=c("fallbackFocus");return D},$=function(f){var g=pe(f);if(!(u(g,f)>=0)){if(le(l.clickOutsideDeactivates,f)){i.deactivate({returnFocus:l.returnFocusOnDeactivate});return}le(l.allowOutsideClick,f)||f.preventDefault()}},z=function(f){var g=pe(f),w=u(g,f)>=0;if(w||g instanceof Document)w&&(r.mostRecentlyFocusedNode=g);else{f.stopImmediatePropagation();var E,v=!0;if(r.mostRecentlyFocusedNode)if(J(r.mostRecentlyFocusedNode)>0){var D=u(r.mostRecentlyFocusedNode),x=r.containerGroups[D].tabbableNodes;if(x.length>0){var R=x.findIndex(function(h){return h===r.mostRecentlyFocusedNode});R>=0&&(l.isKeyForward(r.recentNavEvent)?R+1<x.length&&(E=x[R+1],v=!1):R-1>=0&&(E=x[R-1],v=!1))}}else r.containerGroups.some(function(h){return h.tabbableNodes.some(function(k){return J(k)>0})})||(v=!1);else v=!1;v&&(E=B({target:r.mostRecentlyFocusedNode,isBackward:l.isKeyBackward(r.recentNavEvent)})),b(E||r.mostRecentlyFocusedNode||p())}r.recentNavEvent=void 0},M=function(f){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;r.recentNavEvent=f;var w=B({event:f,isBackward:g});w&&(re(f)&&f.preventDefault(),b(w))},q=function(f){(l.isKeyForward(f)||l.isKeyBackward(f))&&M(f,l.isKeyBackward(f))},S=function(f){qn(f)&&le(l.escapeDeactivates,f)!==!1&&(f.preventDefault(),i.deactivate())},N=function(f){var g=pe(f);u(g,f)>=0||le(l.clickOutsideDeactivates,f)||le(l.allowOutsideClick,f)||(f.preventDefault(),f.stopImmediatePropagation())},I=function(){if(r.active)return Ye.activateTrap(a,i),r.delayInitialFocusTimer=l.delayInitialFocus?Xe(function(){b(p())}):b(p()),n.addEventListener("focusin",z,!0),n.addEventListener("mousedown",$,{capture:!0,passive:!1}),n.addEventListener("touchstart",$,{capture:!0,passive:!1}),n.addEventListener("click",N,{capture:!0,passive:!1}),n.addEventListener("keydown",q,{capture:!0,passive:!1}),n.addEventListener("keydown",S),i},P=function(){if(r.active)return n.removeEventListener("focusin",z,!0),n.removeEventListener("mousedown",$,!0),n.removeEventListener("touchstart",$,!0),n.removeEventListener("click",N,!0),n.removeEventListener("keydown",q,!0),n.removeEventListener("keydown",S),i},V=function(f){var g=f.some(function(w){var E=Array.from(w.removedNodes);return E.some(function(v){return v===r.mostRecentlyFocusedNode})});g&&b(p())},U=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(V):void 0,O=function(){U&&(U.disconnect(),r.active&&!r.paused&&r.containers.map(function(f){U.observe(f,{subtree:!0,childList:!0})}))};return i={get active(){return r.active},get paused(){return r.paused},activate:function(f){if(r.active)return this;var g=s(f,"onActivate"),w=s(f,"onPostActivate"),E=s(f,"checkCanFocusTrap");E||d(),r.active=!0,r.paused=!1,r.nodeFocusedBeforeActivation=n.activeElement,g==null||g();var v=function(){E&&d(),I(),O(),w==null||w()};return E?(E(r.containers.concat()).then(v,v),this):(v(),this)},deactivate:function(f){if(!r.active)return this;var g=We({onDeactivate:l.onDeactivate,onPostDeactivate:l.onPostDeactivate,checkCanReturnFocus:l.checkCanReturnFocus},f);clearTimeout(r.delayInitialFocusTimer),r.delayInitialFocusTimer=void 0,P(),r.active=!1,r.paused=!1,O(),Ye.deactivateTrap(a,i);var w=s(g,"onDeactivate"),E=s(g,"onPostDeactivate"),v=s(g,"checkCanReturnFocus"),D=s(g,"returnFocus","returnFocusOnDeactivate");w==null||w();var x=function(){Xe(function(){D&&b(y(r.nodeFocusedBeforeActivation)),E==null||E()})};return D&&v?(v(y(r.nodeFocusedBeforeActivation)).then(x,x),this):(x(),this)},pause:function(f){return r.active?(r.manuallyPaused=!0,this._setPausedState(!0,f)):this},unpause:function(f){return r.active?(r.manuallyPaused=!1,a[a.length-1]!==this?this:this._setPausedState(!1,f)):this},updateContainerElements:function(f){var g=[].concat(f).filter(Boolean);return r.containers=g.map(function(w){return typeof w=="string"?n.querySelector(w):w}),r.active&&d(),O(),this}},Object.defineProperties(i,{_isManuallyPaused:{value:function(){return r.manuallyPaused}},_setPausedState:{value:function(f,g){if(r.paused===f)return this;if(r.paused=f,f){var w=s(g,"onPause"),E=s(g,"onPostPause");w==null||w(),P(),O(),E==null||E()}else{var v=s(g,"onUnpause"),D=s(g,"onPostUnpause");v==null||v(),d(),I(),O(),D==null||D()}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(()=>Ce(a),i=>{i&&(n=On(i,t.options||{}),l())},{flush:"post"}),e.onScopeDispose(()=>r()),()=>{if(o.default)return e.h(t.as||"div",{ref:a},o.default())}}}),jn=L(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",Ee="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=L(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},c,p="margin",d)=>`
9
+ .${Gn} {
10
+ overflow: hidden ${d};
11
+ padding-right: ${u}px ${d};
12
12
  }
13
- body[${Q}] {
14
- overflow: hidden ${c};
13
+ body[${te}] {
14
+ overflow: hidden ${d};
15
15
  overscroll-behavior: contain;
16
- ${[f&&`position: relative ${c};`,g==="margin"&&`
17
- padding-left: ${l}px;
16
+ ${[c&&`position: relative ${d};`,p==="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
- margin-right: ${u}px ${c};
23
- `,g==="padding"&&`padding-right: ${u}px ${c};`].filter(Boolean).join("")}
24
- }
25
-
26
- .${Be} {
27
- right: ${u}px ${c};
22
+ margin-right: ${u}px ${d};
23
+ `,p==="padding"&&`padding-right: ${u}px ${d};`].filter(Boolean).join("")}
28
24
  }
29
25
 
30
26
  .${Ee} {
31
- margin-right: ${u}px ${c};
27
+ right: ${u}px ${d};
32
28
  }
33
29
 
34
- .${Be} .${Be} {
35
- right: 0 ${c};
30
+ .${Se} {
31
+ margin-right: ${u}px ${d};
36
32
  }
37
33
 
38
34
  .${Ee} .${Ee} {
39
- margin-right: 0 ${c};
35
+ right: 0 ${d};
36
+ }
37
+
38
+ .${Se} .${Se} {
39
+ margin-right: 0 ${d};
40
40
  }
41
41
 
42
- body[${Q}] {
43
- ${An}: ${u}px;
42
+ body[${te}] {
43
+ ${Hn}: ${u}px;
44
44
  }
45
- `;return t.onMounted(()=>{document.body.setAttribute(Q,(a()+1).toString());const l=In(n.gapMode);o.add(r(l,!n.noRelative,n.gapMode,n.noImportant?"":"!important"))}),t.onUnmounted(()=>{const l=a()-1;l<=0?document.body.removeAttribute(Q):document.body.setAttribute(Q,l.toString()),o.remove()}),(l,i)=>t.renderSlot(l.$slots,"default")}}));function Rn(e,n,o,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=e.getBoundingClientRect(),u=n.getBoundingClientRect(),f=o==null?void 0:o.getBoundingClientRect(),g=Tn(s,u,i,r),c=Un(s,u,g),m=Vn(c,g,r),y=Pn(m,g,l),x=Fn(y,u,g);let $;if(a!=null&&a.arrow){if(!f)throw new Error("[Quidgest UI] The arrow element must exist to compute its position");$=On(x,s,u,f,g)}return{overlayCoords:x,arrowCoords:$,placement:g}}function Tn(e,n,o,a){const r=ze(e,n,o,a);if(He(r)){const l=X(o),i={top:"bottom",bottom:"top",left:"right",right:"left"}[l],s=ze(e,n,i,a);if(He(s))return o;const u=Gn(o);return u?`${i}-${u}`:i}return o}function Fn(e,n,o){const a=pe(o),r=(i,s,u)=>Math.min(Math.max(i,s),u),l={...e};return a==="x"?l.x=r(e.x,8,window.innerWidth-n.width-8):l.y=r(e.y,8,window.innerHeight-n.height-8),l}function Vn(e,n,o){const a=X(n);return{x:e.x+(a==="left"?-o:a==="right"?o:0),y:e.y+(a==="top"?-o:a==="bottom"?o:0)}}function Pn(e,n,o){const a=X(n);return{x:e.x+(a==="top"||a==="bottom"?o:0),y:e.y+(a==="right"||a==="left"?o:0)}}function On(e,n,o,a,r){if(pe(r)==="y"){const l=n.top+n.height/2,i=e.y+o.height/2,s=i-l,u=o.height/2-s-a.height/2+2;if(u>0&&u<o.height-a.height)return{y:u}}else{const l=n.left+n.width/2,i=e.x+o.width/2,s=i-l,u=o.width/2-s-a.width/2+2;if(u>0&&u<o.width-a.width)return{x:u}}}function Un(e,n,o){const[a,r]=o.split("-"),l=e.x+e.width/2-n.width/2,i=e.y+e.height/2-n.height/2;let s;switch(a){case"top":s={x:l,y:e.y-n.height};break;case"bottom":s={x:l,y:e.y+e.height};break;case"left":s={x:e.x-n.width,y:i};break;case"right":s={x:e.x+e.width,y:i};break;default:throw new Error(`[Quidgest UI] Invalid placement value: ${o}`)}if(!r)return s;const u=pe(o)==="y"?"height":"width",f=pe(o),g=e[u]/2-n[u]/2;switch(r){case"start":s[f]-=g;break;case"end":s[f]+=g;break;default:throw new Error(`[Quidgest UI] Invalid alignment value: ${r}`)}return s}function ze(e,n,o,a){const r=X(o);let l=0;switch(r){case"top":l=e.top-(n.height+a);break;case"bottom":l=window.innerHeight-e.bottom-(n.height+a);break;case"left":l=e.left-(n.width+a);break;case"right":l=window.innerWidth-e.right-(n.width+a);break;default:throw new Error(`[Quidgest UI] Invalid side value: ${r}`)}return l}function qn(e){return e==="x"?"y":"x"}function jn(e){const n=X(e);return["left","right"].includes(n)?"x":"y"}function pe(e){return qn(jn(e))}function X(e){const[n]=e.split("-");return n}function Gn(e){const[,n]=e.split("-");return n}function He(e){return e<0}function zn(e){return typeof e=="string"?document.querySelector(e):e}const Hn=["id"],Zn=["role"],Jn=q(t.defineComponent({inheritAttrs:!1,__name:"QOverlay",props:t.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:t.mergeModels(["enter","leave"],["update:modelValue"]),setup(e,{emit:n}){const o=e,a=n,r=t.useModel(e,"modelValue"),{class:l}=$e(),i=t.computed(()=>["q-overlay",`q-overlay--${X(c.placement)}`,l.value,{"q-overlay--independent":s.value,"q-overlay--inverted":o.appearance==="inverted","q-overlay--center":o.centerVertically},o.class]),s=t.computed(()=>o.anchor===void 0),u=t.computed(()=>r.value&&!o.nonModal),f=t.computed(()=>(r.value||c.animating)&&o.scrollLock),g=t.computed(()=>!o.inline&&(r.value||c.animating)),c=t.reactive({animating:!1,top:0,left:0,width:0,placement:o.placement}),m=t.reactive({top:void 0,left:void 0,hidden:!0});t.watch(r,w);const y=t.computed(()=>{if(s.value)return;const v=B(),J=o.width==="anchor",j=J?v==null?void 0:v.getBoundingClientRect().width:void 0;return{top:`${c.top}px`,left:`${c.left}px`,width:j!==void 0?`${j}px`:void 0}}),x=t.computed(()=>{if(o.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}}),$=t.ref(null),S=t.ref(null),U=t.ref(null);function M(){const v=B();if(!v||!S.value)return;const J={placement:o.placement,width:o.width,offset:o.offset,crossOffset:o.crossOffset,arrow:o.arrow},j=Rn(v,S.value,($==null?void 0:$.value)??void 0,J);c.left=j.overlayCoords.x,c.top=j.overlayCoords.y,c.placement=j.placement,m.hidden=j.arrowCoords===void 0,j.arrowCoords&&(m.top=j.arrowCoords.y,m.left=j.arrowCoords.x)}t.watch(()=>o.placement,()=>t.nextTick(M));let F;function C(){k(0)}function I(){k(o.delay)}function k(v){F&&V(),F=window.setTimeout(()=>{r.value=!0},v)}function N(){if(F&&V(),r.value=!1,o.anchor&&o.trigger==="click"){const v=B();t.nextTick(()=>v==null?void 0:v.focus())}}function V(){clearTimeout(F),F=void 0}function R(){t.nextTick(le),a("enter")}function O(){A()}function d(){a("leave")}function p(){A(),Yo()}function w(){c.animating=!0}function A(){c.animating=!1}function B(){return o.anchor?zn(o.anchor):null}function D(v){o.persistent&&v.preventDefault()}function _(v){var J;if(o.persistent){v.preventDefault();return}let j=!1;v.defaultPrevented||v.detail.originalEvent.type==="pointerdown"&&(j=!0);const Qo=v.detail.originalEvent.target;if((J=B())!=null&&J.contains(Qo)){v.preventDefault();return}v.detail.originalEvent.type==="focusin"&&j&&v.preventDefault()}function b(){N()}let h;function E(){const v=B();if(v)switch(h=new MutationObserver(M),h.observe(v,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),o.trigger){case"click":v.addEventListener("click",C);break;case"hover":v.addEventListener("mouseenter",I),v.addEventListener("mouseleave",N),v.addEventListener("focusin",C),v.addEventListener("focusout",N);break}}function T(){const v=B();if(v)switch(h==null||h.disconnect(),o.trigger){case"click":v.removeEventListener("click",C);break;case"hover":v.removeEventListener("mouseenter",I),v.removeEventListener("mouseleave",N),v.removeEventListener("focusin",C),v.removeEventListener("focusout",N);break}}function L(){window.addEventListener("resize",M),o.scrollLock||window.addEventListener("scroll",M)}function Z(){window.removeEventListener("resize",M),o.scrollLock||window.removeEventListener("scroll",M)}let K;function ee(){B()?(M(),K=window.setTimeout(ee,100)):N()}function le(){var v;s.value||(L(),o.spy?ee():M()),(s.value||o.trigger==="click")&&((v=S.value)==null||v.focus())}function Yo(){s.value||Z(),o.spy&&(clearTimeout(K),K=void 0)}return t.onMounted(()=>{t.nextTick(E)}),t.onBeforeUnmount(T),(v,J)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!g.value,to:o.attach},[t.createVNode(t.Transition,{name:"fade",appear:""},{default:t.withCtx(()=>[u.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass([o.backdropClass,"q-overlay__underlay",{"q-overlay__underlay--blur":o.backdropBlur}])},null,2)):t.createCommentVNode("v-if",!0)]),_:1}),t.createVNode(t.Transition,{name:o.transition,appear:"",onEnter:R,onAfterEnter:O,onLeave:d,onAfterLeave:p},{default:t.withCtx(()=>[r.value?(t.openBlock(),t.createElementBlock("div",{key:0,id:o.id,ref_key:"overlayContainerRef",ref:U,tabindex:"-1",class:t.normalizeClass(i.value),style:t.normalizeStyle(y.value)},[t.createVNode(t.unref(jt),{onDismiss:b,onInteractOutside:_,onPointerDownOutside:D},{default:t.withCtx(()=>[U.value?(t.openBlock(),t.createBlock(t.unref(Cn),{key:0,disabled:o.nonModal||!r.value,options:{fallbackFocus:U.value}},{default:t.withCtx(()=>[t.createElementVNode("div",t.mergeProps({ref_key:"overlayRef",ref:S,class:"q-overlay__content",tabindex:"-1",role:u.value?"dialog":void 0},v.$attrs),[o.arrow?(t.openBlock(),t.createElementBlock("div",{key:0,ref_key:"arrowRef",ref:$,role:"presentation",class:"q-overlay__arrow",style:t.normalizeStyle(x.value)},null,4)):t.createCommentVNode("v-if",!0),t.renderSlot(v.$slots,"default")],16,Zn)]),_:3},8,["disabled","options"])):t.createCommentVNode("v-if",!0)]),_:3})],14,Hn)):t.createCommentVNode("v-if",!0)]),_:3},8,["name"])],8,["disabled","to"])),f.value?(t.openBlock(),t.createBlock(t.unref(Mn),{key:0})):t.createCommentVNode("v-if",!0)],64))}})),Wn=[{id:"button",icon:{icon:"check"},props:{variant:"bold",label:"Ok"}}],Yn={icon:"check-circle-outline"},Qn={close:{icon:"close"}},Xn={key:0,class:"q-dialog__header"},Kn={class:"q-dialog__header-title"},eo={key:1,class:"q-dialog__body"},to={key:0,class:"q-dialog__body-icon"},no={class:"q-dialog__body-text"},oo=["innerHTML"],ao={key:1},ro={key:2,class:"q-dialog__footer"},lo={class:"q-dialog__footer-buttons"},io=t.defineComponent({__name:"QDialog",props:t.mergeModels({id:{},class:{},title:{},text:{},icon:{default:()=>Yn},buttons:{default:()=>Wn},attach:{default:"body"},inline:{type:Boolean},backdropBlur:{type:Boolean,default:!0},dismissible:{type:Boolean},html:{type:Boolean,default:!0},icons:{default:()=>Qn},size:{default:"small"},centerVertically:{type:Boolean}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:t.mergeModels(["enter","leave"],["update:modelValue"]),setup(e,{emit:n}){const o=e,a=n,r=t.useModel(e,"modelValue"),l=t.computed(()=>["q-dialog",o.class]),i=t.computed(()=>`q-overlay--${o.size}`);function s(){r.value=!1}function u(c){var m;(m=c.action)==null||m.call(c),s()}function f(){a("enter")}function g(){a("leave")}return(c,m)=>(t.openBlock(),t.createBlock(t.unref(Jn),{id:o.id,modelValue:r.value,"onUpdate:modelValue":m[0]||(m[0]=y=>r.value=y),"backdrop-class":"q-dialog__underlay","scroll-lock":"",persistent:"",inline:o.inline,attach:o.attach,"backdrop-blur":o.backdropBlur,"center-vertically":o.centerVertically,class:t.normalizeClass(i.value),onEnter:f,onLeave:g},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(l.value)},[o.title||c.$slots.header?(t.openBlock(),t.createElementBlock("div",Xn,[t.renderSlot(c.$slots,"header",{},()=>[t.createElementVNode("span",Kn,t.toDisplayString(o.title),1)])])):t.createCommentVNode("v-if",!0),o.icon||o.text||c.$slots.body?(t.openBlock(),t.createElementBlock("div",eo,[t.renderSlot(c.$slots,"body",{},()=>[t.renderSlot(c.$slots,"body.icon",{},()=>[o.icon?(t.openBlock(),t.createElementBlock("span",to,[t.createVNode(t.unref(ne),t.normalizeProps(t.guardReactiveProps(o.icon)),null,16)])):t.createCommentVNode("v-if",!0)]),t.createElementVNode("div",no,[o.html?(t.openBlock(),t.createElementBlock("div",{key:0,innerHTML:o.text},null,8,oo)):(t.openBlock(),t.createElementBlock("div",ao,t.toDisplayString(o.text),1))]),t.renderSlot(c.$slots,"body.append")])])):t.createCommentVNode("v-if",!0),o.buttons||c.$slots.footer?(t.openBlock(),t.createElementBlock("div",ro,[t.renderSlot(c.$slots,"footer",{},()=>[t.createElementVNode("span",lo,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.buttons,y=>(t.openBlock(),t.createBlock(t.unref(ye),t.mergeProps({ref_for:!0},y.props,{key:y.id,onClick:()=>u(y)}),{default:t.withCtx(()=>[y.icon?(t.openBlock(),t.createBlock(t.unref(ne),t.mergeProps({key:0,ref_for:!0},y.icon),null,16)):t.createCommentVNode("v-if",!0)]),_:2},1040,["onClick"]))),128))])])])):t.createCommentVNode("v-if",!0),o.dismissible?(t.openBlock(),t.createBlock(t.unref(ye),{key:3,class:"q-dialog__close",variant:"text",onClick:s},{default:t.withCtx(()=>[t.createVNode(t.unref(ne),t.normalizeProps(t.guardReactiveProps(o.icons.close)),null,16)]),_:1})):t.createCommentVNode("v-if",!0)],2)]),_:3},8,["id","modelValue","inline","attach","backdrop-blur","center-vertically","class"]))}}),fe=t.reactive({dialogs:[]});function so(){function e(o,a){const r=Mt(a);return fe.dialogs.push({id:r,props:o}),r}function n(o){const a=fe.dialogs.findIndex(r=>r.id===o);a!==-1&&fe.dialogs.splice(a,1)}return{...fe,addDialog:e,removeDialog:n}}const co=t.defineComponent({inheritAttrs:!1,__name:"QDialogProvider",setup(e){const{dialogs:n,removeDialog:o}=so();return(a,r)=>(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(n),l=>(t.openBlock(),t.createBlock(t.unref(Ze),t.mergeProps({key:l.id,ref_for:!0},l.props,{"model-value":"",onLeave:()=>t.unref(o)(l.id)}),null,16,["onLeave"]))),128))}}),Ze=q(io);q(co);function H(){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"}}async function Je(e,n){var u,f,g,c,m,y;const o=new AbortController,a=o.signal,l=(await W({...e,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:x,value:$}=await i.read();if(x){(u=n.onDone)==null||u.call(n);break}const U=s.decode($,{stream:!0}).split(/\n\n+/);for(const M of U){const F=M.trim().split(`
46
- `);let C="",I="";for(const k of F)k.startsWith("event:")?C=k.replace("event:","").trim():k.startsWith("data:")&&(I=k.replace("data:","").trim());if(C||(C="message"),!!I)try{const k=JSON.parse(I);switch(C){case"message":(f=n.onMessage)==null||f.call(n,k.value);break;case"error":(g=n.onError)==null||g.call(n,new Error(k.value));break;case"field_metadata":(c=n.onFieldMetadata)==null||c.call(n,k);break;case"done":(m=n.onDone)==null||m.call(n);break;default:console.warn(`Unknown event type: ${C}`)}}catch(k){(y=n.onError)==null||y.call(n,k),console.error("Error processing event:",k);continue}finally{x&&(i.releaseLock(),o.abort())}}}}function We(e){const n=t.ref(!1),o=t.ref(null);async function a(f){n.value=!0,o.value=null;try{return{data:(await W({...f,baseURL:e})).data,error:null}}catch(g){return o.value=g,console.error("Error in API request:",g),{data:null,error:g}}finally{n.value=!1}}async function r(f,g,c,m){return await a({method:"POST",url:"/prompt/load",data:{username:f,project:g,agentID:c,formId:m}})}async function l(f,g,c,m){return await a({method:"POST",url:"/prompt/clear",data:{username:f,project:g,agentID:c,formId:m}})}async function i(f,g,c){return n.value=!0,await Je({method:"POST",url:`${e}/prompt/submit`,data:f},{onMessage:m=>{g(m)},onError:m=>{o.value=m,c==null||c(m),console.error("Error in sendPrompt:",m)},onDone:()=>n.value=!1})}async function s(f,g,c){return n.value=!0,await Je({method:"POST",url:`${e}/get-job-result`,data:{jobId:f}},{onMessage:m=>g(m),onFieldMetadata:m=>c(m),onError:m=>{o.value=m,console.error("Error in getFieldSuggestionData:",m)},onDone:()=>n.value=!1})}async function u(f,g,c){return await a({method:"POST",url:"/prompt/feedback",data:{messageSessionID:c,feedbackValue:f,feedbackComment:g}})}return{isLoading:n,lastError:o,getChatData:r,clearChatData:l,getFieldSuggestionData:s,sendPrompt:i,handleFeedback:u}}const uo=["innerHTML"],_e=t.defineComponent({__name:"MarkdownRender",props:{source:{},options:{},plugins:{}},setup(e){const n=e,o=t.ref(new et({html:!0,...n.options??{}}));n.plugins&&n.plugins.forEach(r=>o.value.use(r));const a=t.computed(()=>o.value.render(n.source));return(r,l)=>(t.openBlock(),t.createElementBlock("div",{class:"markdown-renderer",innerHTML:a.value},null,8,uo))}});function Ye(e,n){switch(e){case"date":return new Date(n).toLocaleDateString();case"number":return parseFloat(n);case"boolean":return n.toLowerCase()==="true";default:return n.toString()}}const po={class:"q-field-preview"},fo={class:"q-field-preview__toolbar"},mo={class:"q-field-preview__content"},go={class:"q-field-preview__footer"},bo=t.defineComponent({__name:"FieldPreview",props:{name:{},text:{},type:{},disabled:{type:Boolean},applied:{type:Boolean}},emits:["apply"],setup(e,{emit:n}){const o=H(),a=e,r=t.ref(a.applied),l=t.computed(()=>a.disabled||r.value),i=t.computed(()=>a.type==="text"||a.type==="multiline_text"?_e:"div"),s=t.computed(()=>{const g={};return i.value===_e?g.source=a.text:g.innerHTML=a.text,g}),u=n;function f(){if(r.value)return;r.value=!0;const g=Ye(a.type,a.text);u("apply",g)}return(g,c)=>(t.openBlock(),t.createElementBlock("div",po,[t.createElementVNode("div",fo,[t.createElementVNode("span",null,[c[0]||(c[0]=t.createTextVNode(" Suggestions for field: ")),t.createElementVNode("b",null,t.toDisplayString(a.name),1)])]),t.createElementVNode("div",mo,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.value),t.normalizeProps(t.guardReactiveProps(s.value)),null,16))]),t.createElementVNode("div",go,[t.createVNode(t.unref(Tt),{borderless:""},{default:t.withCtx(()=>[t.createVNode(t.unref(ye),{label:t.unref(o).apply,disabled:l.value,readonly:l.value,onClick:f},{default:t.withCtx(()=>[t.createVNode(t.unref(ne),{icon:"apply"})]),_:1},8,["label","disabled","readonly"])]),_:1})])]))}}),ho={class:"pulsing-dots"},yo={class:"generating-text"},wo={class:"dots-container"},vo=t.defineComponent({__name:"PulseDots",setup(e){const n=[1,2,3],o=H();return(a,r)=>(t.openBlock(),t.createElementBlock("div",ho,[t.createElementVNode("span",yo,t.toDisplayString(t.unref(o).generatingResponse),1),t.createElementVNode("div",wo,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(n,(l,i)=>t.createElementVNode("span",{key:i,class:"dot",style:t.normalizeStyle({animationDelay:i*.2+"s"})}," • ",4)),64))])]))}}),ko={class:"q-chatbot__message-container"},Bo={class:"q-chatbot__message-wrapper"},Eo={key:0,class:"q-chatbot__image-preview"},Co=["src","alt"],_o={class:"q-chatbot__message"},Ao={key:1,class:"q-chatbot__text"},No=t.defineComponent({__name:"ChatBotMessage",props:{sender:{default:"user"},message:{},date:{default:()=>new Date},loading:{type:Boolean},dateFormat:{},imagePreviewUrl:{},apiEndpoint:{},sessionID:{},userImage:{default:void 0},chatbotImage:{},isWelcomeMessage:{type:Boolean},fields:{default:()=>[]}},emits:["apply-fields"],setup(e,{emit:n}){const o=n,a=H(),r=e,{handleFeedback:l}=We(r.apiEndpoint),i=t.computed(()=>r.sender==="bot"&&!Object.values(a||{}).includes(r.message||"")&&!r.isWelcomeMessage),s=t.computed(()=>r.sender==="bot"?r.chatbotImage:r.userImage);function u(){r.message&&navigator.clipboard.writeText(r.message).then(()=>{console.log("Response copied to clipboard")}).catch(m=>{console.error("Failed to copy response: ",m)})}function f(m,y){o("apply-fields",[{name:y.name,text:m}])}function g(){if(!r.fields||r.fields.length===0)return;const m=r.fields.map(y=>({name:y.name,text:Ye(y.type,y.text)}));o("apply-fields",m)}function c(m,y){m===null||y===null||!r.sessionID||l(m,y,r.sessionID)}return(m,y)=>(t.openBlock(),t.createElementBlock("div",ko,[t.createVNode(t.unref(ne),{type:"img",icon:s.value,alt:t.unref(a).senderImage,class:"q-chatbot__profile"},null,8,["icon","alt"]),t.createElementVNode("div",Bo,[r.imagePreviewUrl&&r.imagePreviewUrl.length>0?(t.openBlock(),t.createElementBlock("div",Eo,[t.createElementVNode("img",{src:r.imagePreviewUrl,alt:t.unref(a).imagePreview},null,8,Co)])):t.createCommentVNode("",!0),t.createElementVNode("div",_o,[m.loading?(t.openBlock(),t.createBlock(vo,{key:0})):r.sender==="bot"&&r.fields.length>0?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(r.fields,(x,$)=>(t.openBlock(),t.createBlock(t.unref(bo),{class:"q-chatbot__text",key:$,text:x.text||"",name:x.name,type:x.type,disabled:m.loading,onApply:S=>f(S,x)},null,8,["text","name","type","disabled","onApply"]))),128)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[r.sender==="bot"?(t.openBlock(),t.createBlock(t.unref(_e),{key:0,class:"q-chatbot__text",source:r.message||""},null,8,["source"])):(t.openBlock(),t.createElementBlock("div",Ao,t.toDisplayString(r.message),1))],64))])]),t.createVNode(t.unref(Mo),{showButtons:i.value,loading:r.loading,"date-format":r.dateFormat,onCopyResponse:u,onSubmitFeedback:c,onApplyAll:g},null,8,["showButtons","loading","date-format"])]))}}),P=[];for(let e=0;e<256;++e)P.push((e+256).toString(16).slice(1));function So(e,n=0){return(P[e[n+0]]+P[e[n+1]]+P[e[n+2]]+P[e[n+3]]+"-"+P[e[n+4]]+P[e[n+5]]+"-"+P[e[n+6]]+P[e[n+7]]+"-"+P[e[n+8]]+P[e[n+9]]+"-"+P[e[n+10]]+P[e[n+11]]+P[e[n+12]]+P[e[n+13]]+P[e[n+14]]+P[e[n+15]]).toLowerCase()}let Ae;const Io=new Uint8Array(16);function xo(){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(Io)}const Qe={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function Xe(e,n,o){var r;if(Qe.randomUUID&&!e)return Qe.randomUUID();e=e||{};const a=e.random??((r=e.rng)==null?void 0:r.call(e))??xo();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,So(a)}const re=t.ref([]),me=t.ref(1);function Ke(){function e(r,l,i,s,u){const f={id:me.value++,message:r,date:new Date,sender:l||"bot",sessionID:s||Xe(),imagePreviewUrl:i||void 0,isWelcomeMessage:u,fields:[]};re.value.push(f)}function n(){return re.value.find(r=>r.id===me.value-1)}function o(){re.value=[],me.value=1}function a(){return re.value}return{messages:re,nextMessageId:me,addChatMessage:e,getLastMessage:n,clearMessages:o,getMessages:a}}const Do={class:"q-chatbot__dialog-title"},$o={key:0,class:"q-chatbot__feedback-buttons"},Lo={class:"q-chatbot__sender"},Mo=t.defineComponent({__name:"ChatBotMessageButtons",props:{loading:{type:Boolean},showButtons:{type:Boolean},dateFormat:{},date:{}},emits:["submit-feedback","copy-response","apply-all"],setup(e,{emit:n}){const o=H(),{getLastMessage:a}=Ke(),r=e,l=t.ref(!1),i=t.ref(""),s=t.ref(null),u=t.ref(!1),f=t.computed(()=>r.loading||u.value),g=r.date||new Date,c=n,m=a(),y=t.computed(()=>m?m.fields&&m.fields.length>1:!1),x=[{id:"confirm-btn",action:C,props:{label:o.submitButton},icon:{icon:"submit"}},{id:"cancel-btn",props:{label:o.cancelButton},icon:{icon:"cancel"}}],$=t.computed(()=>r.dateFormat?U(g,"HH:mm"):g.toLocaleString()),S=t.computed(()=>`${$.value}`);function U(k,N){const V=k.getDate().toString().padStart(2,"0"),R=(k.getMonth()+1).toString().padStart(2,"0"),O=k.getFullYear().toString().padStart(2,"0"),d=k.getHours().toString().padStart(2,"0"),p=k.getMinutes().toString().padStart(2,"0"),w=k.getSeconds().toString().padStart(2,"0");return N.replace("dd",V).replace("MM",R).replace("yyyy",O).replace("HH",d).replace("mm",p).replace("ss",w)}function M(k){l.value=!0,i.value="",s.value=k}function F(){u.value||(u.value=!0,c("apply-all"))}function C(){s.value!==null&&(c("submit-feedback",s.value,i.value),l.value=!1,i.value="",s.value=null)}function I(){c("copy-response")}return(k,N)=>{const V=t.resolveComponent("q-text-field"),R=t.resolveComponent("q-icon"),O=t.resolveComponent("q-button"),d=t.resolveComponent("q-button-group");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(Ze),{modelValue:l.value,"onUpdate:modelValue":N[1]||(N[1]=p=>l.value=p),buttons:x},{body:t.withCtx(()=>[t.createElementVNode("div",Do,t.toDisplayString(t.unref(o).commentDialogTitle),1),t.createVNode(V,{modelValue:i.value,"onUpdate:modelValue":N[0]||(N[0]=p=>i.value=p),maxLength:150,size:"large",placeholder:t.unref(o).commentPlaceholder},null,8,["modelValue","placeholder"])]),_:1},8,["modelValue"]),k.showButtons?(t.openBlock(),t.createElementBlock("div",$o,[t.createVNode(d,null,{default:t.withCtx(()=>[t.createVNode(O,{title:t.unref(o).goodResponse,borderless:"",disabled:r.loading,onClick:N[2]||(N[2]=p=>M(1))},{default:t.withCtx(()=>[t.createVNode(R,{icon:"thumb-up"})]),_:1},8,["title","disabled"]),t.createVNode(O,{title:t.unref(o).badResponse,borderless:"",disabled:r.loading,onClick:N[3]||(N[3]=p=>M(0))},{default:t.withCtx(()=>[t.createVNode(R,{icon:"thumb-down"})]),_:1},8,["title","disabled"]),t.createVNode(O,{title:t.unref(o).copyResponse,borderless:"",disabled:r.loading,onClick:I},{default:t.withCtx(()=>[t.createVNode(R,{icon:"copy-content"})]),_:1},8,["title","disabled"]),y.value?(t.openBlock(),t.createBlock(O,{key:0,title:t.unref(o).applyAll,borderless:"",disabled:f.value,readonly:f.value,onClick:F},{default:t.withCtx(()=>[t.createVNode(R,{icon:"apply-all"})]),_:1},8,["title","disabled","readonly"])):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0),t.createElementVNode("div",Lo,t.toDisplayString(S.value),1)],64)}}}),Ro={class:"q-chatbot__tools"},To={class:"q-chatbot__tools__select"},Fo=t.defineComponent({__name:"ChatToolBar",props:{disabled:{type:Boolean},availableAgents:{default:()=>[]},selectedAgentKey:{}},emits:["clear","change-chat"],setup(e,{emit:n}){const{clearChat:o}=H(),a={key:"",value:"Default Chat",formId:""},r=e,l=n,i=t.computed(()=>r.availableAgents&&r.availableAgents.length>0),s=t.ref(r.selectedAgentKey||a.key);t.watch(()=>r.selectedAgentKey,c=>{s.value=c||a.key});const u=t.computed(()=>{var m;const c=(m=r.availableAgents)==null?void 0:m.map(y=>({key:y.key,value:y.value,formId:y.formId}));return c==null||c.push(a),c||[a]});function f(){l("clear")}function g(c){const m=u.value.find(y=>y.key===c);if(m){if(m.key===a.key){l("change-chat",{key:"",formId:""});return}l("change-chat",m)}}return(c,m)=>{const y=t.resolveComponent("q-select"),x=t.resolveComponent("q-icon"),$=t.resolveComponent("q-button");return t.openBlock(),t.createElementBlock("div",Ro,[t.createElementVNode("div",To,[i.value?(t.openBlock(),t.createBlock(y,{key:0,modelValue:s.value,"onUpdate:modelValue":[m[0]||(m[0]=S=>s.value=S),g],size:"medium",items:u.value},null,8,["modelValue","items"])):t.createCommentVNode("",!0)]),t.createVNode($,{title:t.unref(o),disabled:r.disabled,borderless:"",onClick:f},{default:t.withCtx(()=>[t.createVNode(x,{icon:"bin"})]),_:1},8,["title","disabled"])])}}}),Vo={class:"q-chatbot__input-wrapper"},Po={key:0,class:"q-chatbot__image-preview"},Oo=["src"],Uo={class:"q-chatbot__input"},qo={class:"q-chatbot__send-container"},jo=["accept"],Go=t.defineComponent({__name:"ChatBotInput",props:{disabled:{type:Boolean},loading:{type:Boolean},userPrompt:{},agentId:{}},emits:["sendMessage"],setup(e,{emit:n}){const o=H(),a=e,r=t.ref(null),l=t.ref(""),i=t.computed(()=>".png, .jpeg, .jpg, .svg, .webp"),s=t.ref(!1),u=t.ref(!1),f=t.ref(a.userPrompt??""),g=n,c=t.computed(()=>a.disabled||a.loading||f.value.trim().length===0);function m(C){C.preventDefault(),a.disabled||(u.value=!0)}const y=t.computed(()=>({"q-chatbot__footer-disabled":a.disabled,"drag-over":u.value&&!s.value}));function x(C){C.preventDefault(),u.value=!1}function $(C){var N;if(C.preventDefault(),u.value=!1,a.disabled||s.value)return;const I=(N=C.dataTransfer)==null?void 0:N.files;if(!I)return;const k=I[0];if(k.type.startsWith("image/")){if(!r.value)return;const V=new DataTransfer;V.items.add(k),r.value.files=V.files,l.value=URL.createObjectURL(k),s.value=!0}}function S(){if(!(f.value.trim()===""||a.loading||a.disabled)){if(r.value&&r.value.files&&r.value.files.length>0){const I={file:r.value.files[0],previewUrl:l.value};g("sendMessage",f.value,I),U()}else g("sendMessage",f.value);f.value=""}}function U(){l.value="",r.value&&(r.value.value="",r.value.files=null),s.value=!1}function M(){var C;(C=r.value)==null||C.click()}function F(C){const I=C.target;r.value=I,I.files&&I.files[0]&&(l.value=URL.createObjectURL(I.files[0]),s.value=!0)}return(C,I)=>{const k=t.resolveComponent("q-icon"),N=t.resolveComponent("q-button"),V=t.resolveComponent("q-text-area");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(Pt),{label:t.unref(o).inputLabel},null,8,["label"]),t.createElementVNode("div",{class:t.normalizeClass(["q-chatbot__footer",y.value]),onDragover:t.withModifiers(m,["prevent"]),onDragleave:t.withModifiers(x,["prevent"]),onDrop:t.withModifiers($,["prevent"])},[t.createElementVNode("div",Vo,[l.value?(t.openBlock(),t.createElementBlock("div",Po,[t.createElementVNode("img",{src:l.value,tabindex:"0",alt:"Image preview"},null,8,Oo),t.createVNode(N,{class:"q-chatbot__remove-image",tabindex:"0",flat:"",round:"",onClick:U},{default:t.withCtx(()=>[t.createVNode(k,{icon:"bin"})]),_:1})])):t.createCommentVNode("",!0),t.createElementVNode("div",Uo,[t.createVNode(V,{modelValue:f.value,"onUpdate:modelValue":I[0]||(I[0]=R=>f.value=R),size:"block",autosize:"",resize:"none",rows:2,disabled:a.disabled,onKeyup:t.withKeys(S,["enter"])},null,8,["modelValue","disabled"])])]),t.createElementVNode("div",qo,[t.createVNode(N,{title:t.unref(o).imageUpload,class:"q-chatbot__upload",disabled:a.disabled||a.loading||s.value,onClick:M},{default:t.withCtx(()=>[t.createVNode(k,{icon:"upload"})]),_:1},8,["title","disabled"]),t.createElementVNode("input",{id:"image-upload",type:"file",ref_key:"imageInput",ref:r,onChange:F,accept:i.value,class:"hidden-input"},null,40,jo),t.createVNode(N,{title:t.unref(o).sendMessage,variant:"bold",class:"q-chatbot__send",disabled:c.value,readonly:c.value,onClick:S},{default:t.withCtx(()=>[t.createVNode(k,{icon:"send"})]),_:1},8,["title","disabled","readonly"])])],34)],64)}}}),zo="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",Ho="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAYAAAA5ZDbSAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF2GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOS0xMS0yOVQxMDoyNDo1N1oiIHhtcDpNb2RpZnlEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpiN2ViMDM0NC1hN2UzLTI3NGItODgwNi00ZjMxMzRiNDUwNDEiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2ODJkMGU1OC1kZmQyLTZkNDEtOGIwNy01ZWUxNjU4MWY2ZWEiIHht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",Zo={class:"q-chatbot"},Jo={class:"q-chatbot__content"},Wo={class:"q-chatbot__footer-container"};return t.defineComponent({name:"ChatBot",__name:"ChatBot",props:{apiEndpoint:{default:"http://localhost:3000"},controllerEndpoint:{},username:{},projectPath:{},userImage:{default:Ho},chatbotImage:{default:zo},dateFormat:{},agentData:{default:()=>({id:"",formId:"",jobId:""})},availableAgents:{default:()=>[]}},emits:["apply-fields"],setup(e,{emit:n}){const o=n,a=e,r=t.ref(!0),l=t.ref(null),i=t.ref(!0),s=t.ref(a.agentData.id),u=t.ref(a.agentData.formId),f=H(),{isLoading:g,clearChatData:c,getChatData:m,getFieldSuggestionData:y,sendPrompt:x}=We(a.apiEndpoint),{messages:$,addChatMessage:S,clearMessages:U,getLastMessage:M}=Ke(),F=t.computed(()=>r.value||g.value);t.onBeforeMount(()=>{var b;(b=l.value)==null||b.removeEventListener("scroll",O)}),t.onMounted(()=>{I()});function C(b){r.value=b}async function I(){try{await k()}catch(b){S(f.loginError),console.error("Error logging in: "+b)}}async function k(){C(!0);const{data:b,error:h}=await m(a.username,a.projectPath,s.value,u.value);if(h||!b||!b.success){C(!0),S(f.botIsSick),console.log("Error loading chat data: "+h);return}C(!1),N(),b.history.forEach(async E=>{const T=E.imageUrl?a.controllerEndpoint+E.imageUrl:void 0;S(E.content,E.type==="ai"?"bot":"user",T,E.sessionID)})}function N(){const b=f.initialMessage;S(b,"bot",null,void 0,!0)}function V(){U(),C(!1),i.value=!0}function R(){t.nextTick(()=>{l.value&&(l.value.scrollTop=l.value.scrollHeight)})}function O(){if(l.value){const{scrollTop:h,clientHeight:E,scrollHeight:T}=l.value;i.value=h+E>=T-20}}async function d(b,h){l.value&&l.value.scrollTo({top:l.value.scrollHeight,behavior:"smooth"}),S(b,"user",h==null?void 0:h.previewUrl),t.nextTick(()=>{i.value&&R()}),w(b,h==null?void 0:h.file)}async function p(b){l.value&&l.value.scrollTo({top:l.value.scrollHeight,behavior:"smooth"}),S("","bot"),t.nextTick(()=>{i.value&&R()});const h=M();h&&await y(b,E=>{h.message+=E,h.fields||(h.fields=[]);const T=h.fields[h.fields.length-1];T.text=h.message,i.value&&R()},E=>{var L;h.message="";const T=E;(L=h.fields)==null||L.push({type:T.type,name:T.name,text:T.text})})}async function w(b,h){S("","bot");const E=M();if(!E)return;const T=(E==null?void 0:E.sessionID)||Xe(),L=new FormData;h&&L.append("image",h),L.append("message",b),L.append("project",a.projectPath),L.append("user",a.username),L.append("sessionID",T),await x(L,Z=>{E&&(E.message+=Z),i.value&&R()},Z=>{C(!0),S(f.botIsSick),console.error("Error sending message: "+Z)})}async function A(){const{data:b,error:h}=await c(a.username,a.projectPath,s.value,u.value);if(h||!b||!b.success){C(!0),S(f.loginError),console.log("Error clearing chat: "+h);return}V(),N()}function B(b){const h=["q-chatbot__messages-wrapper"];return b==="user"&&h.push("q-chatbot__messages-wrapper_right"),h}function D(b){s.value=b.key,u.value=b.formId,V(),k()}function _(b){!b||b.length===0||o("apply-fields",b)}return t.watch(()=>a.availableAgents,(b,h)=>{b.length===0&&h.length>0&&(s.value="",u.value="",V(),I())}),t.watch(()=>a.agentData,async(b,h)=>{var E;F.value||(((E=a.agentData)==null?void 0:E.id)!==(h==null?void 0:h.id)&&(s.value=(b==null?void 0:b.id)||"",u.value=(b==null?void 0:b.formId)||"",V(),await I()),(b==null?void 0:b.id)!==""&&b&&b.jobId!==h.jobId&&await p(b.jobId))}),t.watch(()=>[a.agentData.id,a.agentData.formId],([b,h])=>{s.value=b,u.value=h},{immediate:!0}),(b,h)=>(t.openBlock(),t.createElementBlock("div",Zo,[t.createElementVNode("div",Jo,[t.createVNode(t.unref(Fo),{disabled:F.value,"available-agents":a.availableAgents,"selected-agent-key":s.value,onClear:A,onChangeChat:D},null,8,["disabled","available-agents","selected-agent-key"]),t.createElementVNode("div",{ref_key:"messagesContainer",ref:l,class:"q-chatbot__messages-container",onScroll:O},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref($),E=>(t.openBlock(),t.createElementBlock("div",{key:E.id,class:t.normalizeClass(B(E.sender))},[t.createVNode(t.unref(No),t.mergeProps({ref_for:!0},E,{"date-format":a.dateFormat,"user-image":a.userImage,"chatbot-image":a.chatbotImage,loading:t.unref(g)&&!E.message,imagePreviewUrl:E.imagePreviewUrl,apiEndpoint:a.apiEndpoint,sessionID:E.sessionID,fields:E.fields,onApplyFields:_}),null,16,["date-format","user-image","chatbot-image","loading","imagePreviewUrl","apiEndpoint","sessionID","fields"])],2))),128))],544)]),t.createElementVNode("div",Wo,[t.createVNode(t.unref(Go),{disabled:F.value,loading:t.unref(g),onSendMessage:d},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(),c=n==null?void 0:n.getBoundingClientRect(),p=no(s,u,i,l),d=io(s,u,p),m=ao(d,p,l),b=ro(m,p,r),y=oo(b,u,p);let B;if(a!=null&&a.arrow){if(!c)throw new Error("[Quidgest UI] The arrow element must exist to compute its position");B=lo(y,s,u,c,p)}return{overlayCoords:y,arrowCoords:B,placement:p}}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",c=fe(n),p=t[u]/2-o[u]/2;switch(l){case"start":s[c]-=p;break;case"end":s[c]+=p;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=L(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(d.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),c=e.computed(()=>(l.value||d.animating)&&n.scrollLock),p=e.computed(()=>!n.inline&&(l.value||d.animating)),d=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,w);const b=e.computed(()=>{if(s.value)return;const C=v(),X=n.width==="anchor",H=X?C==null?void 0:C.getBoundingClientRect().width:void 0;return{top:`${d.top}px`,left:`${d.left}px`,width:H!==void 0?`${H}px`:void 0}}),y=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}}),B=e.ref(null),$=e.ref(null),z=e.ref(null);function M(){const C=v();if(!C||!$.value)return;const X={placement:n.placement,width:n.width,offset:n.offset,crossOffset:n.crossOffset,arrow:n.arrow},H=to(C,$.value,(B==null?void 0:B.value)??void 0,X);d.left=H.overlayCoords.x,d.top=H.overlayCoords.y,d.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(M));let q;function S(){I(0)}function N(){I(n.delay)}function I(C){q&&V(),q=window.setTimeout(()=>{l.value=!0},C)}function P(){if(q&&V(),l.value=!1,n.anchor&&n.trigger==="click"){const C=v();e.nextTick(()=>C==null?void 0:C.focus())}}function V(){clearTimeout(q),q=void 0}function U(){e.nextTick(ie),a("enter")}function O(){E()}function f(){a("leave")}function g(){E(),ya()}function w(){d.animating=!0}function E(){d.animating=!1}function v(){return n.anchor?po(n.anchor):null}function D(C){n.persistent&&C.preventDefault()}function x(C){var X;if(n.persistent){C.preventDefault();return}let H=!1;C.defaultPrevented||C.detail.originalEvent.type==="pointerdown"&&(H=!0);const wa=C.detail.originalEvent.target;if((X=v())!=null&&X.contains(wa)){C.preventDefault();return}C.detail.originalEvent.type==="focusin"&&H&&C.preventDefault()}function R(){P()}let h;function k(){const C=v();if(C)switch(h=new MutationObserver(M),h.observe(C,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),n.trigger){case"click":C.addEventListener("click",S);break;case"hover":C.addEventListener("mouseenter",N),C.addEventListener("mouseleave",P),C.addEventListener("focusin",S),C.addEventListener("focusout",P);break}}function _(){const C=v();if(C)switch(h==null||h.disconnect(),n.trigger){case"click":C.removeEventListener("click",S);break;case"hover":C.removeEventListener("mouseenter",N),C.removeEventListener("mouseleave",P),C.removeEventListener("focusin",S),C.removeEventListener("focusout",P);break}}function A(){window.addEventListener("resize",M),n.scrollLock||window.addEventListener("scroll",M)}function G(){window.removeEventListener("resize",M),n.scrollLock||window.removeEventListener("scroll",M)}let Q;function oe(){v()?(M(),Q=window.setTimeout(oe,100)):P()}function ie(){var C;s.value||(A(),n.spy?oe():M()),(s.value||n.trigger==="click")&&((C=$.value)==null||C.focus())}function ya(){s.value||G(),n.spy&&(clearTimeout(Q),Q=void 0)}return e.onMounted(()=>{e.nextTick(k)}),e.onBeforeUnmount(_),(C,X)=>(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:U,onAfterEnter:O,onLeave:f,onAfterLeave:g},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,id:n.id,ref_key:"overlayContainerRef",ref:z,tabindex:"-1",class:e.normalizeClass(i.value),style:e.normalizeStyle(b.value)},[e.createVNode(e.unref(nn),{onDismiss:R,onInteractOutside:x,onPointerDownOutside:D},{default:e.withCtx(()=>[z.value?(e.openBlock(),e.createBlock(e.unref(jn),{key:0,disabled:n.nonModal||!l.value,options:{fallbackFocus:z.value}},{default:e.withCtx(()=>[e.createElementVNode("div",e.mergeProps({ref_key:"overlayRef",ref:$,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:B,role:"presentation",class:"q-overlay__arrow",style:e.normalizeStyle(y.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"])),c.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"},Co={key:0,class:"q-dialog__body-icon"},vo={class:"q-dialog__body-text"},xo=["innerHTML"],_o={key:1},Eo={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 c(){l.value=!1}function p(b){var y,B;if(b.action){if((y=n.input)!=null&&y.validator&&(i.value=n.input.validator(e.unref(r)),e.unref(i)))return;(B=b.action)==null||B.call(b,e.unref(r))}c()}function d(){a("enter")}function m(){a("leave")}return(b,y)=>(e.openBlock(),e.createBlock(e.unref(go),{id:n.id,modelValue:l.value,"onUpdate:modelValue":y[1]||(y[1]=B=>l.value=B),"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:d,onLeave:m},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(s.value)},[n.title||b.$slots.header||b.$slots["header.prepend"]||b.$slots["header.append"]?(e.openBlock(),e.createElementBlock("div",wo,[e.renderSlot(b.$slots,"header",{},()=>[e.renderSlot(b.$slots,"header.prepend"),n.title?(e.openBlock(),e.createElementBlock("span",ko,e.toDisplayString(n.title),1)):e.createCommentVNode("v-if",!0),e.renderSlot(b.$slots,"header.append")])])):e.createCommentVNode("v-if",!0),n.icon||n.text||b.$slots.body?(e.openBlock(),e.createElementBlock("div",Bo,[e.renderSlot(b.$slots,"body",{},()=>{var B;return[e.renderSlot(b.$slots,"body.icon",{},()=>[n.icon?(e.openBlock(),e.createElementBlock("span",Co,[e.createVNode(e.unref(F),e.normalizeProps(e.guardReactiveProps(n.icon)),null,16)])):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",vo,[n.html?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:n.text},null,8,xo)):(e.openBlock(),e.createElementBlock("div",_o,e.toDisplayString(n.text),1))]),n.input?(e.openBlock(),e.createElementBlock("div",Eo,[e.createVNode(e.unref(Pe),{modelValue:r.value,"onUpdate:modelValue":y[0]||(y[0]=$=>r.value=$),invalid:!!i.value,placeholder:(B=n.input)==null?void 0:B.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(b.$slots,"body.append")]})])):e.createCommentVNode("v-if",!0),n.buttons||b.$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,B=>(e.openBlock(),e.createBlock(e.unref(j),e.mergeProps({ref_for:!0},B.props,{key:B.id,onClick:()=>p(B)}),{default:e.withCtx(()=>[B.icon?(e.openBlock(),e.createBlock(e.unref(F),e.mergeProps({key:0,ref_for:!0},B.icon),null,16)):e.createCommentVNode("v-if",!0)]),_:2},1040,["onClick"]))),128))])):e.createCommentVNode("v-if",!0),e.renderSlot(b.$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:c},{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),c=>(e.openBlock(),e.createBlock(e.unref(tt),e.mergeProps({key:c.id,ref_for:!0},c.props,{"model-value":"",inline:n.inline,onLeave:()=>i(c.id)}),null,16,["inline","onLeave"]))),128))}}),tt=L(No);L(Io);const Do=["id","required","placeholder","readonly","disabled","maxlength","rows","cols","resize","wrap"],Ro=L(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:c=>{const p=o.maxLength;n.value=p?c==null?void 0:c.slice(0,p):c}});e.watch(n,c=>a.value=c,{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(c,p)=>(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(c.$slots,"label.prepend")]),"label.append":e.withCtx(()=>[e.renderSlot(c.$slots,"label.append")]),default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(l),ref_key:"textareaRef",ref:s,"onUpdate:modelValue":p[0]||(p[0]=d=>a.value=d),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},c.$attrs,e.toHandlers(i.value,!0)),null,16,Do),[[e.vModelText,a.value]])]),_:2},[c.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>[e.renderSlot(c.$slots,"prepend")]),key:"0"}:void 0,c.$slots.append?{name:"append",fn:e.withCtx(()=>[e.renderSlot(c.$slots,"append")]),key:"1"}:void 0,c.$slots.extras?{name:"extras",fn:e.withCtx(()=>[e.renderSlot(c.$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"}}async function nt(t,o){var u,c,p,d,m,b;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:y,value:B}=await i.read();if(y){(u=o.onDone)==null||u.call(o);break}const z=s.decode(B,{stream:!0}).split(/\n\n+/);for(const M of z){const q=M.trim().split(`
46
+ `);let S="",N="";for(const I of q)I.startsWith("event:")?S=I.replace("event:","").trim():I.startsWith("data:")&&(N=I.replace("data:","").trim());if(S||(S="message"),!!N)try{const I=JSON.parse(N);switch(S){case"message":(c=o.onMessage)==null||c.call(o,I.value);break;case"error":(p=o.onError)==null||p.call(o,new Error(I.value));break;case"field_metadata":(d=o.onFieldMetadata)==null||d.call(o,I);break;case"done":(m=o.onDone)==null||m.call(o);break;default:console.warn(`Unknown event type: ${S}`)}}catch(I){(b=o.onError)==null||b.call(o,I),console.error("Error processing event:",I);continue}finally{y&&(i.releaseLock(),n.abort())}}}}function ot(t){const o=e.ref(!1),n=e.ref(null);async function a(c){o.value=!0,n.value=null;try{return{data:(await K({...c,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 l(c,p,d,m){return await a({method:"POST",url:"/prompt/load",data:{username:c,project:p,agentID:d,formId:m}})}async function r(c,p,d){o.value=!0;try{return await nt({method:"POST",url:`${t}/prompt/submit`,data:c},{onMessage:m=>{p(m)},onDone:()=>o.value=!1})}catch(m){throw o.value=!1,d==null||d(m),console.error("Error in sendPrompt:",m),m}}async function i(c,p,d,m){o.value=!0;try{return await nt({method:"POST",url:`${t}/get-job-result`,data:{jobId:c}},{onMessage:b=>p(b),onFieldMetadata:b=>d(b),onDone:()=>o.value=!1})}catch(b){n.value=b,m==null||m(b),o.value=!1}}async function s(c,p,d,m){return await a({method:"POST",url:"/prompt/clear",data:{username:c,project:p,agentID:d,formId:m}})}async function u(c,p,d){return await a({method:"POST",url:"/prompt/feedback",data:{messageSessionID:d,feedbackValue:c,feedbackComment:p}})}return{isLoading:o,lastError:n,getChatData:l,clearChatData:s,getJobResultData:i,sendPrompt:r,handleFeedback:u}}const Vo=["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,Vo))}});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"},To={class:"q-field-preview__footer"},qo=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),c=e.computed(()=>n.type==="text"||n.type==="multiline_text"?ge:"div"),p=e.computed(()=>{const y={};return c.value===ge?y.source=n.text:y.innerHTML=n.text,y}),d=e.computed(()=>{const y=["q-field-preview__content"];return c.value!==ge&&y.push("preserve-whitespace"),y});function m(){if(r.value)return;r.value=!0;const y=at(n.type,n.text);a("apply",y)}function b(){i.value||(i.value=!0,a("regenerate",n.name))}return(y,B)=>(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(d.value)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.value),e.normalizeProps(e.guardReactiveProps(p.value)),null,16))],2),e.createElementVNode("div",To,[e.createVNode(e.unref(Te),{borderless:""},{default:e.withCtx(()=>[e.createVNode(e.unref(j),{title:e.unref(l).regenerateResponse,disabled:u.value,readonly:u.value,borderless:"",onClick:b},{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"},Uo={class:"dots-container"},Oo=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",Uo,[(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={class:"q-chatbot__message"},Zo={key:1,class:"q-chatbot__text"},Jo=e.defineComponent({__name:"ChatBotMessage",props:{sender:{default:"user"},message:{},date:{default:()=>new Date},loading:{type:Boolean},dateFormat:{},imagePreviewUrl:{},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(()=>n.sender==="bot"?n.chatbotImage:n.userImage);function u(){n.message&&navigator.clipboard.writeText(n.message).then(()=>{console.log("Response copied to clipboard")}).catch(m=>{console.error("Failed to copy response: ",m)})}function c(m,b){a("apply-fields",[{id:b.id,text:m}])}function p(){if(!n.fields||n.fields.length===0)return;const m=n.fields.map(b=>({id:b.id,text:at(b.type,b.text)}));a("apply-fields",m)}function d(m,b){m===null||b===null||!n.sessionID||r(m,b,n.sessionID)}return(m,b)=>(e.openBlock(),e.createElementBlock("div",zo,[e.createVNode(e.unref(F),{type:"img",icon:s.value,alt:e.unref(l).senderImage,class:"q-chatbot__profile"},null,8,["icon","alt"]),e.createElementVNode("div",jo,[n.imagePreviewUrl&&n.imagePreviewUrl.length>0?(e.openBlock(),e.createElementBlock("div",Go,[e.createElementVNode("img",{src:n.imagePreviewUrl,alt:e.unref(l).imagePreview},null,8,Ho)])):e.createCommentVNode("",!0),e.createElementVNode("div",Qo,[m.loading?(e.openBlock(),e.createBlock(Oo,{key:0})):n.sender==="bot"&&n.fields.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(n.fields,(y,B)=>(e.openBlock(),e.createBlock(e.unref(qo),{key:B,class:"q-chatbot__text",text:y.text||"",name:y.name,type:y.type,disabled:m.loading,onRegenerate:()=>a("regenerate",y.name),onApply:$=>c($,y)},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",Zo,e.toDisplayString(n.message),1))],64))])]),e.createVNode(e.unref(na),{"show-buttons":i.value,loading:n.loading,"date-format":n.dateFormat,onCopyResponse:u,onSubmitFeedback:d,onApplyAll:p},null,8,["show-buttons","loading","date-format"])]))}}),T=[];for(let t=0;t<256;++t)T.push((t+256).toString(16).slice(1));function Wo(t,o=0){return(T[t[o+0]]+T[t[o+1]]+T[t[o+2]]+T[t[o+3]]+"-"+T[t[o+4]]+T[t[o+5]]+"-"+T[t[o+6]]+T[t[o+7]]+"-"+T[t[o+8]]+T[t[o+9]]+"-"+T[t[o+10]]+T[t[o+11]]+T[t[o+12]]+T[t[o+13]]+T[t[o+14]]+T[t[o+15]]).toLowerCase()}let Ne;const Yo=new Uint8Array(16);function Xo(){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(Yo)}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))??Xo();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,Wo(a)}const Y=e.ref([]),be=e.ref(1);function it(){function t(r,i,s,u,c){const p={id:be.value++,message:r,date:new Date,sender:i||"bot",sessionID:u||lt(),imagePreviewUrl:s||void 0,isWelcomeMessage:c,fields:[]};return Y.value.push(p),p}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 Ko={class:"q-chatbot__dialog-title"},ea={key:0,class:"q-chatbot__feedback-buttons"},ta={class:"q-chatbot__sender"},na=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),c=e.ref(!1),p=e.computed(()=>n.loading||c.value),d=n.date||new Date,m=r(),b=e.computed(()=>m?m.fields&&m.fields.length>1:!1),y=[{id:"confirm-btn",action:I,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"}}],B=e.computed(()=>n.dateFormat?z(d,"HH:mm"):d.toLocaleString()),$=e.computed(()=>`${B.value}`);function z(V,U){const O=V.getDate().toString().padStart(2,"0"),f=(V.getMonth()+1).toString().padStart(2,"0"),g=V.getFullYear().toString().padStart(2,"0"),w=V.getHours().toString().padStart(2,"0"),E=V.getMinutes().toString().padStart(2,"0"),v=V.getSeconds().toString().padStart(2,"0");return U.replace("dd",O).replace("MM",f).replace("yyyy",g).replace("HH",w).replace("mm",E).replace("ss",v)}function M(V){i.value=!0,s.value="",u.value=V}function q(){M(0)}function S(){M(1)}function N(){c.value||(c.value=!0,a("apply-all"))}function I(){u.value&&(a("submit-feedback",u.value,s.value),i.value=!1,s.value="",u.value=null)}function P(){a("copy-response")}return(V,U)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(tt),{modelValue:i.value,"onUpdate:modelValue":U[1]||(U[1]=O=>i.value=O),inline:"",buttons:y},{body:e.withCtx(()=>[e.createElementVNode("div",Ko,e.toDisplayString(e.unref(l).commentDialogTitle),1),e.createVNode(e.unref(Pe),{modelValue:s.value,"onUpdate:modelValue":U[0]||(U[0]=O=>s.value=O),class:"q-chatbot__dialog-comment-input","max-length":150,size:"large",placeholder:e.unref(l).commentPlaceholder},null,8,["modelValue","placeholder"])]),_:1},8,["modelValue"]),V.showButtons?(e.openBlock(),e.createElementBlock("div",ea,[e.createVNode(e.unref(Te),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:S},{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:q},{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:P},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"copy-content"})]),_:1},8,["title","disabled"]),b.value?(e.openBlock(),e.createBlock(e.unref(j),{key:0,title:e.unref(l).applyAll,class:"q-chatbot__apply-all-button",borderless:"",disabled:p.value,readonly:p.value,onClick:N},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"apply-all"})]),_:1},8,["title","disabled","readonly"])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0),e.createElementVNode("div",ta,e.toDisplayString($.value),1)],64))}}),oa={class:"q-chatbot__tools"},aa={class:"q-chatbot__tools__select"},ra=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,d=>{s.value=d||r.key});const u=e.computed(()=>{var m;const d=(m=n.availableAgents)==null?void 0:m.map(b=>({key:b.key,value:b.value,formId:b.formId}));return d==null||d.push(r),d||[r]});function c(){a("clear")}function p(d){const m=u.value.find(b=>b.key===d);if(m){if(m.key===r.key){a("change-chat",{key:"",formId:""});return}a("change-chat",m)}}return(d,m)=>{const b=e.resolveComponent("q-select");return e.openBlock(),e.createElementBlock("div",oa,[e.createElementVNode("div",aa,[i.value?(e.openBlock(),e.createBlock(b,{key:0,modelValue:s.value,"onUpdate:modelValue":[m[0]||(m[0]=y=>s.value=y),p],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:c},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"bin"})]),_:1},8,["title","disabled"])])}}}),la={class:"q-chatbot__input-wrapper"},ia={key:0,class:"q-chatbot__image-preview"},sa=["src","alt"],ca={class:"q-chatbot__input"},da={class:"q-chatbot__send-container"},ua=["accept"],pa=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(""),s=e.computed(()=>".png, .jpeg, .jpg, .svg, .webp"),u=e.ref(!1),c=e.ref(!1),p=e.ref(n.userPrompt??""),d=e.computed(()=>n.disabled||n.loading||p.value.trim().length===0);function m(S){S.preventDefault(),n.disabled||(c.value=!0)}const b=e.computed(()=>({"q-chatbot__footer-disabled":n.disabled,"drag-over":c.value&&!u.value}));function y(S){S.preventDefault(),c.value=!1}function B(S){var P;if(S.preventDefault(),c.value=!1,n.disabled||u.value)return;const N=(P=S.dataTransfer)==null?void 0:P.files;if(!N)return;const I=N[0];if(I.type.startsWith("image/")){if(!r.value)return;const V=new DataTransfer;V.items.add(I),r.value.files=V.files,i.value=URL.createObjectURL(I),u.value=!0}}function $(){if(!(p.value.trim()===""||n.loading||n.disabled)){if(r.value&&r.value.files&&r.value.files.length>0){const N={file:r.value.files[0],previewUrl:i.value};a("send-message",p.value,N),z()}else a("send-message",p.value);p.value=""}}function z(){i.value="",r.value&&(r.value.value="",r.value.files=null),u.value=!1}function M(){var S;(S=r.value)==null||S.click()}function q(S){const N=S.target;r.value=N,N.files&&N.files[0]&&(i.value=URL.createObjectURL(N.files[0]),u.value=!0)}return(S,N)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(qe),{label:e.unref(l).inputLabel},null,8,["label"]),e.createElementVNode("div",{class:e.normalizeClass(["q-chatbot__footer",b.value]),onDragover:e.withModifiers(m,["prevent"]),onDragleave:e.withModifiers(y,["prevent"]),onDrop:e.withModifiers(B,["prevent"])},[e.createElementVNode("div",la,[i.value?(e.openBlock(),e.createElementBlock("div",ia,[e.createElementVNode("img",{src:i.value,tabindex:"0",alt:e.unref(l).imagePreview},null,8,sa),e.createVNode(e.unref(j),{class:"q-chatbot__remove-image",tabindex:"0",flat:"",round:"",onClick:z},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"bin"})]),_:1})])):e.createCommentVNode("",!0),e.createElementVNode("div",ca,[e.createVNode(e.unref(Ro),{modelValue:p.value,"onUpdate:modelValue":N[0]||(N[0]=I=>p.value=I),size:"block",autosize:"",resize:"none",rows:2,disabled:n.disabled,onKeyup:e.withKeys($,["enter"])},null,8,["modelValue","disabled"])])]),e.createElementVNode("div",da,[e.createVNode(e.unref(j),{title:e.unref(l).imageUpload,class:"q-chatbot__upload",disabled:n.disabled||n.loading||u.value,onClick:M},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"upload"})]),_:1},8,["title","disabled"]),e.createElementVNode("input",{id:"image-upload",ref_key:"imageInput",ref:r,type:"file",accept:s.value,class:"hidden-input",onChange:q},null,40,ua),e.createVNode(e.unref(j),{title:e.unref(l).sendMessage,variant:"bold",class:"q-chatbot__send",disabled:d.value,readonly:d.value,onClick:$},{default:e.withCtx(()=>[e.createVNode(e.unref(F),{icon:"send"})]),_:1},8,["title","disabled","readonly"])])],34)],64))}}),fa="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",ma="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAYAAAA5ZDbSAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF2GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOS0xMS0yOVQxMDoyNDo1N1oiIHhtcDpNb2RpZnlEYXRlPSIyMDE5LTExLTI5VDEwOjI0OjU3WiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpiN2ViMDM0NC1hN2UzLTI3NGItODgwNi00ZjMxMzRiNDUwNDEiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2ODJkMGU1OC1kZmQyLTZkNDEtOGIwNy01ZWUxNjU4MWY2ZWEiIHht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",ga={class:"q-chatbot"},ba={class:"q-chatbot__content"},ha={class:"q-chatbot__footer-container"};return e.defineComponent({name:"ChatBot",__name:"ChatBot",props:{apiEndpoint:{default:"http://localhost:3000"},controllerEndpoint:{},username:{},projectPath:{},userImage:{default:ma},chatbotImage:{default:fa},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),c=W(),{isLoading:p,clearChatData:d,getChatData:m,getJobResultData:b,sendPrompt:y}=ot(n.apiEndpoint),{messages:B,addChatMessage:$,clearMessages:z,getLastMessage:M,deleteMessageById:q}=it(),S=e.computed(()=>l.value||p.value);e.onBeforeMount(()=>{var h;(h=r.value)==null||h.removeEventListener("scroll",O)}),e.onMounted(()=>{I()});function N(h){l.value=h}async function I(){try{await P()}catch(h){$(c.loginError),console.error("Error logging in: "+h)}}async function P(){N(!0);const{data:h,error:k}=await m(n.username,n.projectPath,s.value,u.value);if(k||!h||!h.success){N(!0),$(c.botIsSick),console.log("Error loading chat data: "+k);return}N(!1),V(),h.history.forEach(async _=>{const A=_.imageUrl?n.controllerEndpoint+_.imageUrl:void 0;$(_.content,_.type==="ai"?"bot":"user",A,_.sessionID)})}function V(){const h=c.initialMessage;$(h,"bot",null,void 0,!0)}function U(){z(),N(!1),i.value=!0}function O(){if(r.value){const{scrollTop:k,clientHeight:_,scrollHeight:A}=r.value;i.value=k+_>=A-20}}async function f(h,k){r.value&&r.value.scrollTo({top:r.value.scrollHeight,behavior:"smooth"}),$(h,"user",k==null?void 0:k.previewUrl),w(h,k==null?void 0:k.file)}async function g(h){r.value&&r.value.scrollTo({top:r.value.scrollHeight,behavior:"smooth"}),$("","bot");const k=M();k&&await b(h,_=>{if(k.message+=_,k.fields||(k.fields=[]),k.fields.length>0){const A=k.fields[k.fields.length-1];A.text=k.message}},_=>{var G;k.message="";const A=_;(G=k.fields)==null||G.push({id:A.id,type:A.type,name:A.name,text:A.text})},_=>{N(!0),$(c.botIsSick),console.error("Error getting job result: "+_),q(k.id)})}async function w(h,k){const _=lt(),A=new FormData;if(k&&A.append("image",k),A.append("message",h),A.append("project",n.projectPath),A.append("user",n.username),A.append("sessionID",_),s.value!=="")a("direct-agent-chat",s.value,h);else{$("","bot");const G=M();if(!G)return;await y(A,Q=>{G&&(G.message+=Q)},Q=>{N(!0),$(c.botIsSick),console.error("Error sending message: "+Q),q(G.id)})}}async function E(){const{data:h,error:k}=await d(n.username,n.projectPath,s.value,u.value);if(k||!h||!h.success){N(!0),$(c.loginError),console.log("Error clearing chat: "+k);return}U(),V()}function v(h){const k=["q-chatbot__messages-wrapper"];return h==="user"&&k.push("q-chatbot__messages-wrapper_right"),k}async function D(h){s.value=h.key,u.value=h.formId,U(),await I()}function x(h){!h||h.length===0||a("apply-fields",h)}function R(h){const k=c.regenerateResponsePrompt.replace("{0}",h);a("direct-agent-chat",s.value,k)}return e.watch(()=>n.availableAgents,(h,k)=>{h.length===0&&k.length>0&&(s.value="",u.value="",U(),I())}),e.watch(()=>n.agentData,async(h,k)=>{if(S.value)return;const _=h.jobId,A=k.jobId,G=_!==A;h.id!==s.value&&await D({formId:h.formId,key:h.id}),_&&G&&await g(_)},{deep:!0}),(h,k)=>(e.openBlock(),e.createElementBlock("div",ga,[e.createElementVNode("div",ba,[e.createVNode(e.unref(ra),{disabled:S.value,"available-agents":n.availableAgents,"selected-agent-key":s.value,onClear:E,onChangeChat:D},null,8,["disabled","available-agents","selected-agent-key"]),e.createElementVNode("div",{ref_key:"messagesContainer",ref:r,class:"q-chatbot__messages-container",onScroll:O},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(B),_=>(e.openBlock(),e.createElementBlock("div",{key:_.id,class:e.normalizeClass(v(_.sender))},[e.createVNode(e.unref(Jo),e.mergeProps({ref_for:!0},_,{"date-format":n.dateFormat,"user-image":n.userImage,"chatbot-image":n.chatbotImage,loading:e.unref(p)&&!_.message,"image-preview-url":_.imagePreviewUrl,"api-endpoint":n.apiEndpoint,"session-i-d":_.sessionID,fields:_.fields,onRegenerate:R,onApplyFields:x}),null,16,["date-format","user-image","chatbot-image","loading","image-preview-url","api-endpoint","session-i-d","fields"])],2))),128))],544)]),e.createElementVNode("div",ha,[e.createVNode(e.unref(pa),{disabled:S.value,loading:e.unref(p),onSendMessage:f},null,8,["disabled","loading"])])]))}})});