ablok-components 0.3.44 → 0.3.46
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ablok-components.css +1 -1
- package/dist/ablok-components.es.js +1814 -1624
- package/dist/ablok-components.umd.js +2 -2
- package/dist/components/molecules/image-zoom/image-zoom.spec.d.ts +1 -0
- package/dist/components/molecules/image-zoom/image-zoom.vue.d.ts +113 -0
- package/dist/index.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(C,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("dompurify"),require("vue-i18n"),require("lodash"),require("ofetch"),require("vue-advanced-cropper"),require("html2canvas"),require("qr-code-styling")):typeof define=="function"&&define.amd?define(["exports","vue","dompurify","vue-i18n","lodash","ofetch","vue-advanced-cropper","html2canvas","qr-code-styling"],e):(C=typeof globalThis<"u"?globalThis:C||self,e(C.AblokComponents={},C.Vue,C.DOMPurify,C.VueI18n,C._,C.ofetch,C.VueAdvancedCropper,C.html2canvas,C.QRCodeStyling))})(this,(function(C,e,Qe,De,ve,ye,ft,pt,Re){"use strict";const gt={class:"icon",preserveAspectRatio:"xMaxYMin"},ht=["xlink:href"],N=e.defineComponent({__name:"svg-icon",props:{basePath:{type:String,default:"/symbol-defs.svg"},prefix:{type:String,default:"icon-"},symbol:{type:String,default:""},size:{type:String,default:"default"}},setup(t){return(d,l)=>(e.openBlock(),e.createElementBlock("i",{class:e.normalizeClass(["svg-icon",{[`svg-icon--${t.size}`]:t.size}])},[(e.openBlock(),e.createElementBlock("svg",gt,[e.createElementVNode("use",{"xlink:href":`${t.basePath}#${t.prefix}${t.symbol}`,"xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0",y:"0"},null,8,ht)]))],2))}}),yt={class:"loading-spinner d-block"},be=e.defineComponent({__name:"loading-spinner",props:{color:{type:String,default:"#fff"}},setup(t){return(d,l)=>(e.openBlock(),e.createElementBlock("span",yt,[l[0]||(l[0]=e.createElementVNode("span",{class:"loading-spinner__animation"},[e.createElementVNode("svg",{version:"1.1",x:"0px",y:"0px",viewBox:"0 0 100 100"},[e.createElementVNode("path",{d:"M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"},[e.createElementVNode("animateTransform",{attributeName:"transform",attributeType:"XML",type:"rotate",dur:"1s",from:"0 50 50",to:"360 50 50",repeatCount:"indefinite"})])])],-1)),e.renderSlot(d.$slots,"default")]))}}),bt=["src","alt"],oe=e.defineComponent({__name:"base-image",props:{src:{type:String,default:'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"/>',required:!0},alt:{type:String,default:""},spinner:{type:Boolean,default:!1},zoom:{type:Boolean,default:!1},animate:{type:Boolean,default:!0},ready:{type:Boolean,default:!1},pending:{type:Boolean,default:!1},emitPending:{type:Boolean,default:!0}},emits:["update:ready","update:pending"],setup(t,{emit:d}){const l=t,o=d,n=e.useTemplateRef("image"),a=e.ref(!1);function i(){a.value=!0,n.value?.addEventListener("transitionend",r,{once:!0})}function r(){o("update:ready",!0),l.emitPending&&o("update:pending",!1)}return e.onBeforeMount(()=>{l.emitPending&&o("update:pending",!0)}),(c,u)=>t.src?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["base-image",{"base-image--zoom":t.zoom}])},[t.spinner&&!a.value?(e.openBlock(),e.createBlock(be,{key:0})):e.createCommentVNode("",!0),e.createElementVNode("img",{ref_key:"image",ref:n,class:e.normalizeClass(["",{"opacity-0":t.animate&&!a.value,"opacity-1":!t.animate||a.value}]),src:t.src,alt:t.alt,onLoad:i},null,42,bt)],2)):e.createCommentVNode("",!0)}}),kt=["innerHTML"],wt=e.defineComponent({__name:"base-headline",props:{tag:{},size:{},variant:{},text:{},className:{}},setup(t){const d=t,l=e.computed(()=>d.tag||"p");return(o,n)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{class:e.normalizeClass(["headline",`${t.size} headline--${t.size}${t.className||""}`])},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default",{},()=>[e.createElementVNode("span",{class:"headline__text",innerHTML:t.text},null,8,kt)])]),_:3},8,["class"]))}});function ke(t){return e.computed(()=>{const d=typeof t=="function"?t():typeof t=="string"?t:t.value;return Qe.sanitize(d,{ALLOWED_TAGS:["b","i","em","strong","u","span","p","br","a","ul","ol","li","h1","h2","h3","h4","h5","h6","article","div","label"],ALLOWED_ATTR:["class","id","href","target","rel","title","data-countdown"],ALLOW_DATA_ATTR:!0})})}function H(t){return Qe.sanitize(t,{ALLOWED_TAGS:["b","i","em","strong","u","span","p","br","a","ul","ol","li","h1","h2","h3","h4","h5","h6","article","div","label"],ALLOWED_ATTR:["class","id","href","target","rel","title","data-countdown","v-modal"],ALLOW_DATA_ATTR:!0})}const Bt=["innerHTML"],Ct=e.defineComponent({__name:"base-paragraph",props:{size:{},variant:{},text:{},className:{}},setup(t){const d=t;return ke(()=>d.text||""),(l,o)=>(e.openBlock(),e.createElementBlock("p",{class:e.normalizeClass(["base-paragraph",`${t.size||""} ${t.className||""}`]),innerHTML:t.text},null,10,Bt))}});function I(){return Math.random().toString(16).slice(2)}async function we(t){return await new Promise(d=>{let l=new FileReader;l.onload=()=>d(l.result),l.readAsDataURL(t)})}function Vt(t){const d=atob(t.split(",")[1]),l=new ArrayBuffer(d.length),o=new Uint8Array(l);for(let n=0;n<d.length;n++)o[n]=d.charCodeAt(n);return new Blob([l],{type:"image/png"})}function Et(t){return{"image/jpeg":"jpg","image/jpg":"jpg","image/png":"png","image/gif":"gif","image/webp":"webp","image/svg+xml":"svg","image/bmp":"bmp","image/tiff":"tiff","application/pdf":"pdf","video/mp4":"mp4","video/webm":"webm","video/ogg":"ogg"}[t]||"bin"}async function Fe(t,d,l){const o=Et(l),a=d.includes(".")?d:`${d}.${o}`;return fetch(t).then(function(i){return i.arrayBuffer()}).then(function(i){return new File([i],a,{type:l})})}async function $t(t){return await new Promise((d,l)=>{const o=new Image;o.onload=()=>d(o),o.onerror=n=>l(n),o.src=t})}function Oe(t,d,l,o="image/png",n){const a=document.createElement("canvas");a.width=d,a.height=l;const i=a.getContext("2d");return i?(i.drawImage(t,0,0,d,l),a.toDataURL(o,n)):t.src}async function St(t,d,l){const o=(t.type||"").toLowerCase();if(!(o.startsWith("image/")&&o!=="image/svg+xml"))return t;const a=await we(t),i=await $t(a),r=i.naturalWidth,c=i.naturalHeight;if(!r||r<=d)return t;const u=Math.round(d),A=c/r,s=Math.round(u*A),m=Oe(i,u,s,t.type||"image/png",l);return await Fe(m,t.name,t.type||"image/png")}function He(t){return!t||typeof t!="string"?"":t.replace(/\0/g,"").replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,"").replace(/on\w+\s*=\s*["'][^"']*["']/gi,"").replace(/on\w+\s*=\s*[^\s>]*/gi,"").replace(/javascript:/gi,"").replace(/data:text\/html/gi,"")}const Nt={class:"accordion-item"},Mt=["id"],Dt=["data-bs-target","aria-controls"],vt={class:"flex-grow-1"},Lt=["id","aria-labelledby","data-bs-parent"],It=["innerHTML"],Pt=e.defineComponent({__name:"accordion-item",props:{id:{type:String,default:()=>I()},modelValue:{type:Boolean,default:!1},title:{type:String,default:"Accordion Title"},body:{type:String,default:"<p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Nisi aut, nobis inventore repudiandae quo laboriosam. Dicta placeat ullam harum optio expedita. Harum fugiat suscipit sapiente quos, molestias neque eaque omnis?</p>"},parent:{type:String,default:""},noPadding:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=ke(()=>l.body);function a(){o("update:modelValue",!l.modelValue)}return(i,r)=>(e.openBlock(),e.createElementBlock("div",Nt,[e.createElementVNode("div",{class:"accordion-header",id:`heading-${t.id}`},[e.createElementVNode("button",{class:e.normalizeClass(["accordion-button",!t.modelValue&&"collapsed"]),type:"button","data-bs-toggle":"collapse","data-bs-target":`#target${t.id}`,"aria-expanded":"true","aria-controls":`target${t.id}`,onClick:a},[e.renderSlot(i.$slots,"toggle",{},()=>[e.createElementVNode("span",vt,e.toDisplayString(t.title),1)])],10,Dt)],8,Mt),e.createElementVNode("div",{class:e.normalizeClass(["accordion-collapse collapse",t.modelValue&&"show"]),id:`target${t.id}`,"aria-labelledby":`heading${t.id}`,"data-bs-parent":t.parent},[e.createElementVNode("div",{class:e.normalizeClass(["accordion-body",t.noPadding?"p-0":""])},[e.renderSlot(i.$slots,"body",{},()=>[e.createElementVNode("article",{innerHTML:e.unref(n)},null,8,It)])],2)],10,Lt)]))}}),Tt=(t,d)=>{const l=t.__vccOpts||t;for(const[o,n]of d)l[o]=n;return l},xt={},zt={class:"accordion"};function Qt(t,d){return e.openBlock(),e.createElementBlock("div",zt,[e.renderSlot(t.$slots,"default")])}const Rt=Tt(xt,[["render",Qt]]),Ft=["type","disabled"],We=e.defineComponent({__name:"base-button",props:{type:{type:null},caption:{type:String},variant:{type:String},color:{type:String,default:"primary"},size:{type:String},icon:{type:String},disabled:{type:Boolean,default:!1},pending:{type:Boolean,default:!1},success:{type:Boolean,default:!1},error:{type:Boolean,default:!1},outlined:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1},circle:{type:Boolean,default:!1}},setup(t){const d=t,l=e.computed(()=>d.caption&&!d.circle);return(o,n)=>(e.openBlock(),e.createElementBlock("button",{type:t.type,disabled:t.disabled,class:e.normalizeClass(["btn",{disabled:t.disabled,pending:t.pending,rounded:t.rounded,"rounded-circle":t.circle,[`btn-${t.color}`]:!t.outlined,[`btn-outline-${t.color}`]:t.outlined,"btn-lg":t.size==="large","btn-sm":t.size==="small"}])},[t.pending?e.renderSlot(o.$slots,"pending-icon",{key:0},()=>[e.createVNode(be)]):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"default",{},()=>[t.icon?(e.openBlock(),e.createBlock(N,{key:0,symbol:t.icon,class:"base-button__caption"},null,8,["symbol"])):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(["base-button__caption",{"icon-padding":t.icon}])},e.toDisplayString(t.caption),3)):e.createCommentVNode("",!0)])],10,Ft))}}),Ot={class:"input-group input__input-group"},Ht=["type","id","name","placeholder","pattern","disabled","readonly","required","maxlength","true-value","false-value","aria-label","role","autocomplete"],Wt=["for","innerHTML"],Ut={key:0,class:"input__error alert alert-danger mt-3"},Ae=e.defineComponent({__name:"base-input",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},min:{type:Number},max:{type:Number},maxlength:{type:Number},pattern:{type:String,default:null},trueValue:{type:null,default:!0},falseValue:{type:null,default:!1},role:{type:String,default:"presentation"},autocomplete:{type:String,default:"off"},validate:{type:Boolean,default:!1},valid:{type:Boolean,default:!0},sanitize:{type:Boolean,default:!0}},emits:["update:modelValue","update:valid"],setup(t,{emit:d}){const l=t,o=d,n=e.useTemplateRef("input"),a=e.ref(l.valid),i=e.ref(),r=e.computed(()=>H(`${l.label}${l.required?" *":""}`)),c=e.computed({get(){return l.modelValue},set(s){s=l.type==="number"?l.max&&Number(s)>l.max?l.max:l.min!==void 0&&Number(s)<l.min?l.min:Number(s):s,l.sanitize&&typeof s=="string"&&!["checkbox","radio","number","date","datetime-local","time","month","week","email","tel","url"].includes(l.type)&&(s=He(s)),o("update:modelValue",s)}}),u=e.computed(()=>{if(l.type==="number"){const{min:s,max:m}=l;return{...s!==void 0?{min:s}:{},...m!==void 0?{max:m}:{}}}return{}});function A(){l.validate&&n.value&&(a.value=n.value.checkValidity(),a.value?i.value=void 0:i.value=n.value.validationMessage,o("update:valid",a.value))}return e.watch(()=>l.modelValue,()=>{a.value===!1&&A()}),e.onMounted(()=>{let s=m=>{c.value=typeof m.detail=="string"||typeof m.detail=="number"?`${m.detail}`:""};n.value?.addEventListener("focusin",m=>{window.addEventListener("update-focussed-input",s)}),n.value?.addEventListener("focusout",m=>{window.removeEventListener("update-focussed-input",s)}),A()}),(s,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input",`input--${t.type}${a.value?"":" input--invalid"}`])},[e.createElementVNode("div",Ot,[e.renderSlot(s.$slots,"input-prepend",{slotScope:"props"}),e.withDirectives(e.createElementVNode("input",e.mergeProps({ref_key:"input",ref:n,"onUpdate:modelValue":m[0]||(m[0]=f=>c.value=f),type:t.type==="color"?"text":t.type,id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,disabled:t.disabled,readonly:t.readOnly,required:t.required,maxlength:t.maxlength},u.value,{"true-value":t.trueValue,"false-value":t.falseValue,class:["form-control",{"form-check-input":t.type==="checkbox"}],"aria-label":t.label,role:t.role,autocomplete:t.autocomplete,onChange:A}),null,16,Ht),[[e.vModelDynamic,c.value]]),e.renderSlot(s.$slots,"input-append",{slotScope:"props"})]),e.renderSlot(s.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id,class:e.normalizeClass(["input__label",{"form-check-label":t.type==="checkbox"}]),innerHTML:r.value},null,10,Wt)):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[!a.value&&i.value?(e.openBlock(),e.createElementBlock("div",Ut,e.toDisplayString(i.value),1)):e.createCommentVNode("",!0)]),_:1})],2))}}),qt={class:"input input--textarea"},jt=["type","id","name","placeholder","pattern","disabled","read-only","required","maxlength","aria-label"],_t=["for","innerHTML"],Jt=e.defineComponent({__name:"input-textarea",props:{modelValue:{type:String,default:""},type:{type:String,default:"text"},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null},checked:{type:Boolean,default:!1},sanitize:{type:Boolean,default:!0}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.computed({get(){return l.modelValue},set(a){l.sanitize&&typeof a=="string"&&(a=He(a)),o("update:modelValue",a)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",qt,[e.renderSlot(a.$slots,"input-prepend"),e.withDirectives(e.createElementVNode("textarea",{"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),type:t.type,id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,disabled:t.disabled,"read-only":t.readOnly,required:t.required,maxlength:t.maxlength,class:e.normalizeClass(["form-control",{}]),"aria-label":t.label},null,8,jt),[[e.vModelText,n.value]]),e.renderSlot(a.$slots,"input-append"),e.renderSlot(a.$slots,"label",{},()=>[e.createElementVNode("label",{for:t.id,class:e.normalizeClass(["input__label",{"form-check-label":t.type==="checkbox"}]),innerHTML:`${t.label}${t.required?" *":""}`},null,10,_t)])]))}}),Gt={class:"form-check input input--checkbox"},Yt=["value","id","name","required","disabled","true-value","false-value"],Zt=["for","innerHTML"],Kt=e.defineComponent({__name:"input-checkbox",props:{id:{type:String},name:{type:String},label:{type:String},error:{type:String},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},modelValue:{type:[Boolean,Array]},value:{type:[String,Object]},checked:{type:Boolean},trueValue:{type:null,default:!0},falseValue:{type:null,default:!1}},emits:["update:modelValue","update:checked"],setup(t,{emit:d}){const l=t,o=d,n=e.computed({get(){return l.modelValue||l.checked},set(a){o("update:checked",a),o("update:modelValue",a)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",Gt,[e.withDirectives(e.createElementVNode("input",{ref:"input","onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),value:t.value,id:t.id,name:t.name,type:"checkbox",required:t.required,disabled:t.disabled,class:"form-check-input","true-value":t.trueValue,"false-value":t.falseValue},null,8,Yt),[[e.vModelCheckbox,n.value]]),e.createElementVNode("label",{class:"input__label form-check-label",for:t.id,innerHTML:e.unref(H)(t.label||"")},null,8,Zt)]))}}),Xt={class:"input-group input__input-group"},ea=["id","name","placeholder","pattern","disabled","read-only","required","aria-label"],ta=["for","innerHTML"],aa=e.defineComponent({__name:"input-datetime",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.computed({get(){const a=l.modelValue&&new Date(`${l.modelValue}Z`),i=a&&new Date(a.getTime()+new Date().getTimezoneOffset()*-60*1e3).toISOString();return i&&i.replace("Z","")},set(a){const i=a&&new Date(a);a=i&&i.toISOString(),o("update:modelValue",a&&a.replace("Z",""))}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input",`input--${t.type}`])},[e.createElementVNode("div",Xt,[e.renderSlot(a.$slots,"input-prepend",{slotScope:"props"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),type:"datetime-local",id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,disabled:t.disabled,"read-only":t.readOnly,required:t.required,class:"form-control","aria-label":t.label},null,8,ea),[[e.vModelText,n.value]]),e.renderSlot(a.$slots,"input-append",{slotScope:"props"})]),e.renderSlot(a.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id,class:"input__label",innerHTML:e.unref(H)(`${t.label}${t.required?" *":""}`)},null,8,ta)):e.createCommentVNode("",!0)])],2))}});function te(t){return(d={})=>{const l=d.width?String(d.width):t.defaultWidth;return t.formats[l]||t.formats[t.defaultWidth]}}function W(t){return(d,l)=>{const o=l?.context?String(l.context):"standalone";let n;if(o==="formatting"&&t.formattingValues){const i=t.defaultFormattingWidth||t.defaultWidth,r=l?.width?String(l.width):i;n=t.formattingValues[r]||t.formattingValues[i]}else{const i=t.defaultWidth,r=l?.width?String(l.width):t.defaultWidth;n=t.values[r]||t.values[i]}const a=t.argumentCallback?t.argumentCallback(d):d;return n[a]}}function U(t){return(d,l={})=>{const o=l.width,n=o&&t.matchPatterns[o]||t.matchPatterns[t.defaultMatchWidth],a=d.match(n);if(!a)return null;const i=a[0],r=o&&t.parsePatterns[o]||t.parsePatterns[t.defaultParseWidth],c=Array.isArray(r)?la(r,s=>s.test(i)):na(r,s=>s.test(i));let u;u=t.valueCallback?t.valueCallback(c):c,u=l.valueCallback?l.valueCallback(u):u;const A=d.slice(i.length);return{value:u,rest:A}}}function na(t,d){for(const l in t)if(Object.prototype.hasOwnProperty.call(t,l)&&d(t[l]))return l}function la(t,d){for(let l=0;l<t.length;l++)if(d(t[l]))return l}function Le(t){return(d,l={})=>{const o=d.match(t.matchPattern);if(!o)return null;const n=o[0],a=d.match(t.parsePattern);if(!a)return null;let i=t.valueCallback?t.valueCallback(a[0]):a[0];i=l.valueCallback?l.valueCallback(i):i;const r=d.slice(n.length);return{value:i,rest:r}}}const Ue={lessThanXSeconds:{standalone:{one:"weniger als 1 Sekunde",other:"weniger als {{count}} Sekunden"},withPreposition:{one:"weniger als 1 Sekunde",other:"weniger als {{count}} Sekunden"}},xSeconds:{standalone:{one:"1 Sekunde",other:"{{count}} Sekunden"},withPreposition:{one:"1 Sekunde",other:"{{count}} Sekunden"}},halfAMinute:{standalone:"eine halbe Minute",withPreposition:"einer halben Minute"},lessThanXMinutes:{standalone:{one:"weniger als 1 Minute",other:"weniger als {{count}} Minuten"},withPreposition:{one:"weniger als 1 Minute",other:"weniger als {{count}} Minuten"}},xMinutes:{standalone:{one:"1 Minute",other:"{{count}} Minuten"},withPreposition:{one:"1 Minute",other:"{{count}} Minuten"}},aboutXHours:{standalone:{one:"etwa 1 Stunde",other:"etwa {{count}} Stunden"},withPreposition:{one:"etwa 1 Stunde",other:"etwa {{count}} Stunden"}},xHours:{standalone:{one:"1 Stunde",other:"{{count}} Stunden"},withPreposition:{one:"1 Stunde",other:"{{count}} Stunden"}},xDays:{standalone:{one:"1 Tag",other:"{{count}} Tage"},withPreposition:{one:"1 Tag",other:"{{count}} Tagen"}},aboutXWeeks:{standalone:{one:"etwa 1 Woche",other:"etwa {{count}} Wochen"},withPreposition:{one:"etwa 1 Woche",other:"etwa {{count}} Wochen"}},xWeeks:{standalone:{one:"1 Woche",other:"{{count}} Wochen"},withPreposition:{one:"1 Woche",other:"{{count}} Wochen"}},aboutXMonths:{standalone:{one:"etwa 1 Monat",other:"etwa {{count}} Monate"},withPreposition:{one:"etwa 1 Monat",other:"etwa {{count}} Monaten"}},xMonths:{standalone:{one:"1 Monat",other:"{{count}} Monate"},withPreposition:{one:"1 Monat",other:"{{count}} Monaten"}},aboutXYears:{standalone:{one:"etwa 1 Jahr",other:"etwa {{count}} Jahre"},withPreposition:{one:"etwa 1 Jahr",other:"etwa {{count}} Jahren"}},xYears:{standalone:{one:"1 Jahr",other:"{{count}} Jahre"},withPreposition:{one:"1 Jahr",other:"{{count}} Jahren"}},overXYears:{standalone:{one:"mehr als 1 Jahr",other:"mehr als {{count}} Jahre"},withPreposition:{one:"mehr als 1 Jahr",other:"mehr als {{count}} Jahren"}},almostXYears:{standalone:{one:"fast 1 Jahr",other:"fast {{count}} Jahre"},withPreposition:{one:"fast 1 Jahr",other:"fast {{count}} Jahren"}}},oa=(t,d,l)=>{let o;const n=l?.addSuffix?Ue[t].withPreposition:Ue[t].standalone;return typeof n=="string"?o=n:d===1?o=n.one:o=n.other.replace("{{count}}",String(d)),l?.addSuffix?l.comparison&&l.comparison>0?"in "+o:"vor "+o:o},ia={full:"EEEE, do MMMM y",long:"do MMMM y",medium:"do MMM y",short:"dd.MM.y"},ra={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},sa={full:"{{date}} 'um' {{time}}",long:"{{date}} 'um' {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},Aa={date:te({formats:ia,defaultWidth:"full"}),time:te({formats:ra,defaultWidth:"full"}),dateTime:te({formats:sa,defaultWidth:"full"})},ca={lastWeek:"'letzten' eeee 'um' p",yesterday:"'gestern um' p",today:"'heute um' p",tomorrow:"'morgen um' p",nextWeek:"eeee 'um' p",other:"P"},da=(t,d,l,o)=>ca[t],ua={narrow:["v.Chr.","n.Chr."],abbreviated:["v.Chr.","n.Chr."],wide:["vor Christus","nach Christus"]},ma={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1. Quartal","2. Quartal","3. Quartal","4. Quartal"]},Ie={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],wide:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"]},fa={narrow:Ie.narrow,abbreviated:["Jan.","Feb.","März","Apr.","Mai","Juni","Juli","Aug.","Sep.","Okt.","Nov.","Dez."],wide:Ie.wide},pa={narrow:["S","M","D","M","D","F","S"],short:["So","Mo","Di","Mi","Do","Fr","Sa"],abbreviated:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],wide:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"]},ga={narrow:{am:"vm.",pm:"nm.",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachm.",evening:"Abend",night:"Nacht"},abbreviated:{am:"vorm.",pm:"nachm.",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachmittag",evening:"Abend",night:"Nacht"},wide:{am:"vormittags",pm:"nachmittags",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachmittag",evening:"Abend",night:"Nacht"}},ha={narrow:{am:"vm.",pm:"nm.",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachm.",evening:"abends",night:"nachts"},abbreviated:{am:"vorm.",pm:"nachm.",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachmittags",evening:"abends",night:"nachts"},wide:{am:"vormittags",pm:"nachmittags",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachmittags",evening:"abends",night:"nachts"}},ya={ordinalNumber:t=>Number(t)+".",era:W({values:ua,defaultWidth:"wide"}),quarter:W({values:ma,defaultWidth:"wide",argumentCallback:t=>t-1}),month:W({values:Ie,formattingValues:fa,defaultWidth:"wide"}),day:W({values:pa,defaultWidth:"wide"}),dayPeriod:W({values:ga,defaultWidth:"wide",formattingValues:ha,defaultFormattingWidth:"wide"})},ba=/^(\d+)(\.)?/i,ka=/\d+/i,wa={narrow:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,abbreviated:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,wide:/^(vor Christus|vor unserer Zeitrechnung|nach Christus|unserer Zeitrechnung)/i},Ba={any:[/^v/i,/^n/i]},Ca={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](\.)? Quartal/i},Va={any:[/1/i,/2/i,/3/i,/4/i]},Ea={narrow:/^[jfmasond]/i,abbreviated:/^(j[aä]n|feb|mär[z]?|apr|mai|jun[i]?|jul[i]?|aug|sep|okt|nov|dez)\.?/i,wide:/^(januar|februar|märz|april|mai|juni|juli|august|september|oktober|november|dezember)/i},$a={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^j[aä]/i,/^f/i,/^mär/i,/^ap/i,/^mai/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Sa={narrow:/^[smdmf]/i,short:/^(so|mo|di|mi|do|fr|sa)/i,abbreviated:/^(son?|mon?|die?|mit?|don?|fre?|sam?)\.?/i,wide:/^(sonntag|montag|dienstag|mittwoch|donnerstag|freitag|samstag)/i},Na={any:[/^so/i,/^mo/i,/^di/i,/^mi/i,/^do/i,/^f/i,/^sa/i]},Ma={narrow:/^(vm\.?|nm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,abbreviated:/^(vorm\.?|nachm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,wide:/^(vormittags|nachmittags|Mitternacht|Mittag|morgens|nachmittags|abends|nachts)/i},Da={any:{am:/^v/i,pm:/^n/i,midnight:/^Mitte/i,noon:/^Mitta/i,morning:/morgens/i,afternoon:/nachmittags/i,evening:/abends/i,night:/nachts/i}},va={ordinalNumber:Le({matchPattern:ba,parsePattern:ka,valueCallback:t=>parseInt(t)}),era:U({matchPatterns:wa,defaultMatchWidth:"wide",parsePatterns:Ba,defaultParseWidth:"any"}),quarter:U({matchPatterns:Ca,defaultMatchWidth:"wide",parsePatterns:Va,defaultParseWidth:"any",valueCallback:t=>t+1}),month:U({matchPatterns:Ea,defaultMatchWidth:"wide",parsePatterns:$a,defaultParseWidth:"any"}),day:U({matchPatterns:Sa,defaultMatchWidth:"wide",parsePatterns:Na,defaultParseWidth:"any"}),dayPeriod:U({matchPatterns:Ma,defaultMatchWidth:"wide",parsePatterns:Da,defaultParseWidth:"any"})},La={code:"de",formatDistance:oa,formatLong:Aa,formatRelative:da,localize:ya,match:va,options:{weekStartsOn:1,firstWeekContainsDate:4}},Ia={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Pa=(t,d,l)=>{let o;const n=Ia[t];return typeof n=="string"?o=n:d===1?o=n.one:o=n.other.replace("{{count}}",d.toString()),l?.addSuffix?l.comparison&&l.comparison>0?"in "+o:o+" ago":o},Ta={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},xa=(t,d,l,o)=>Ta[t],za={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Qa={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Ra={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Fa={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Oa={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Ha={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Wa={ordinalNumber:(t,d)=>{const l=Number(t),o=l%100;if(o>20||o<10)switch(o%10){case 1:return l+"st";case 2:return l+"nd";case 3:return l+"rd"}return l+"th"},era:W({values:za,defaultWidth:"wide"}),quarter:W({values:Qa,defaultWidth:"wide",argumentCallback:t=>t-1}),month:W({values:Ra,defaultWidth:"wide"}),day:W({values:Fa,defaultWidth:"wide"}),dayPeriod:W({values:Oa,defaultWidth:"wide",formattingValues:Ha,defaultFormattingWidth:"wide"})},Ua=/^(\d+)(th|st|nd|rd)?/i,qa=/\d+/i,ja={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},_a={any:[/^b/i,/^(a|c)/i]},Ja={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Ga={any:[/1/i,/2/i,/3/i,/4/i]},Ya={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},Za={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Ka={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},Xa={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},en={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},tn={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},an={ordinalNumber:Le({matchPattern:Ua,parsePattern:qa,valueCallback:t=>parseInt(t,10)}),era:U({matchPatterns:ja,defaultMatchWidth:"wide",parsePatterns:_a,defaultParseWidth:"any"}),quarter:U({matchPatterns:Ja,defaultMatchWidth:"wide",parsePatterns:Ga,defaultParseWidth:"any",valueCallback:t=>t+1}),month:U({matchPatterns:Ya,defaultMatchWidth:"wide",parsePatterns:Za,defaultParseWidth:"any"}),day:U({matchPatterns:Ka,defaultMatchWidth:"wide",parsePatterns:Xa,defaultParseWidth:"any"}),dayPeriod:U({matchPatterns:en,defaultMatchWidth:"any",parsePatterns:tn,defaultParseWidth:"any"})},nn={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},ln={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},on={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},rn={date:te({formats:nn,defaultWidth:"full"}),time:te({formats:ln,defaultWidth:"full"}),dateTime:te({formats:on,defaultWidth:"full"})},qe={code:"en-US",formatDistance:Pa,formatLong:rn,formatRelative:xa,localize:Wa,match:an,options:{weekStartsOn:0,firstWeekContainsDate:1}},sn={lessThanXSeconds:{one:"moins d’une seconde",other:"moins de {{count}} secondes"},xSeconds:{one:"1 seconde",other:"{{count}} secondes"},halfAMinute:"30 secondes",lessThanXMinutes:{one:"moins d’une minute",other:"moins de {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"environ 1 heure",other:"environ {{count}} heures"},xHours:{one:"1 heure",other:"{{count}} heures"},xDays:{one:"1 jour",other:"{{count}} jours"},aboutXWeeks:{one:"environ 1 semaine",other:"environ {{count}} semaines"},xWeeks:{one:"1 semaine",other:"{{count}} semaines"},aboutXMonths:{one:"environ 1 mois",other:"environ {{count}} mois"},xMonths:{one:"1 mois",other:"{{count}} mois"},aboutXYears:{one:"environ 1 an",other:"environ {{count}} ans"},xYears:{one:"1 an",other:"{{count}} ans"},overXYears:{one:"plus d’un an",other:"plus de {{count}} ans"},almostXYears:{one:"presqu’un an",other:"presque {{count}} ans"}},An=(t,d,l)=>{let o;const n=sn[t];return typeof n=="string"?o=n:d===1?o=n.one:o=n.other.replace("{{count}}",String(d)),l?.addSuffix?l.comparison&&l.comparison>0?"dans "+o:"il y a "+o:o},cn={full:"EEEE d MMMM y",long:"d MMMM y",medium:"d MMM y",short:"dd/MM/y"},dn={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},un={full:"{{date}} 'à' {{time}}",long:"{{date}} 'à' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},mn={date:te({formats:cn,defaultWidth:"full"}),time:te({formats:dn,defaultWidth:"full"}),dateTime:te({formats:un,defaultWidth:"full"})},fn={lastWeek:"eeee 'dernier à' p",yesterday:"'hier à' p",today:"'aujourd’hui à' p",tomorrow:"'demain à' p'",nextWeek:"eeee 'prochain à' p",other:"P"},pn=(t,d,l,o)=>fn[t],gn={narrow:["av. J.-C","ap. J.-C"],abbreviated:["av. J.-C","ap. J.-C"],wide:["avant Jésus-Christ","après Jésus-Christ"]},hn={narrow:["T1","T2","T3","T4"],abbreviated:["1er trim.","2ème trim.","3ème trim.","4ème trim."],wide:["1er trimestre","2ème trimestre","3ème trimestre","4ème trimestre"]},yn={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],wide:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"]},bn={narrow:["D","L","M","M","J","V","S"],short:["di","lu","ma","me","je","ve","sa"],abbreviated:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],wide:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"]},kn={narrow:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"mat.",afternoon:"ap.m.",evening:"soir",night:"mat."},abbreviated:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"matin",afternoon:"après-midi",evening:"soir",night:"matin"},wide:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"du matin",afternoon:"de l’après-midi",evening:"du soir",night:"du matin"}},wn=(t,d)=>{const l=Number(t),o=d?.unit;if(l===0)return"0";const n=["year","week","hour","minute","second"];let a;return l===1?a=o&&n.includes(o)?"ère":"er":a="ème",l+a},Bn=["MMM","MMMM"],Cn={preprocessor:(t,d)=>t.getDate()===1||!d.some(o=>o.isToken&&Bn.includes(o.value))?d:d.map(o=>o.isToken&&o.value==="do"?{isToken:!0,value:"d"}:o),ordinalNumber:wn,era:W({values:gn,defaultWidth:"wide"}),quarter:W({values:hn,defaultWidth:"wide",argumentCallback:t=>t-1}),month:W({values:yn,defaultWidth:"wide"}),day:W({values:bn,defaultWidth:"wide"}),dayPeriod:W({values:kn,defaultWidth:"wide"})},Vn=/^(\d+)(ième|ère|ème|er|e)?/i,En=/\d+/i,$n={narrow:/^(av\.J\.C|ap\.J\.C|ap\.J\.-C)/i,abbreviated:/^(av\.J\.-C|av\.J-C|apr\.J\.-C|apr\.J-C|ap\.J-C)/i,wide:/^(avant Jésus-Christ|après Jésus-Christ)/i},Sn={any:[/^av/i,/^ap/i]},Nn={narrow:/^T?[1234]/i,abbreviated:/^[1234](er|ème|e)? trim\.?/i,wide:/^[1234](er|ème|e)? trimestre/i},Mn={any:[/1/i,/2/i,/3/i,/4/i]},Dn={narrow:/^[jfmasond]/i,abbreviated:/^(janv|févr|mars|avr|mai|juin|juill|juil|août|sept|oct|nov|déc)\.?/i,wide:/^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i},vn={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^av/i,/^ma/i,/^juin/i,/^juil/i,/^ao/i,/^s/i,/^o/i,/^n/i,/^d/i]},Ln={narrow:/^[lmjvsd]/i,short:/^(di|lu|ma|me|je|ve|sa)/i,abbreviated:/^(dim|lun|mar|mer|jeu|ven|sam)\.?/i,wide:/^(dimanche|lundi|mardi|mercredi|jeudi|vendredi|samedi)/i},In={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^di/i,/^lu/i,/^ma/i,/^me/i,/^je/i,/^ve/i,/^sa/i]},Pn={narrow:/^(a|p|minuit|midi|mat\.?|ap\.?m\.?|soir|nuit)/i,any:/^([ap]\.?\s?m\.?|du matin|de l'après[-\s]midi|du soir|de la nuit)/i},Tn={any:{am:/^a/i,pm:/^p/i,midnight:/^min/i,noon:/^mid/i,morning:/mat/i,afternoon:/ap/i,evening:/soir/i,night:/nuit/i}},xn={ordinalNumber:Le({matchPattern:Vn,parsePattern:En,valueCallback:t=>parseInt(t)}),era:U({matchPatterns:$n,defaultMatchWidth:"wide",parsePatterns:Sn,defaultParseWidth:"any"}),quarter:U({matchPatterns:Nn,defaultMatchWidth:"wide",parsePatterns:Mn,defaultParseWidth:"any",valueCallback:t=>t+1}),month:U({matchPatterns:Dn,defaultMatchWidth:"wide",parsePatterns:vn,defaultParseWidth:"any"}),day:U({matchPatterns:Ln,defaultMatchWidth:"wide",parsePatterns:In,defaultParseWidth:"any"}),dayPeriod:U({matchPatterns:Pn,defaultMatchWidth:"any",parsePatterns:Tn,defaultParseWidth:"any"})},zn={code:"fr",formatDistance:An,formatLong:mn,formatRelative:pn,localize:Cn,match:xn,options:{weekStartsOn:1,firstWeekContainsDate:4}},Qn={class:"row"},Rn={class:"col-12"},Fn=["for","innerHTML"],On={key:0},Hn={class:"input-group justify-content-center"},Wn={key:0,class:"row"},Un={class:"col-12 col-md-6"},qn={class:"col-12 col-md-6"},jn={key:1,class:"row"},_n={class:"col-12"},Jn=e.defineComponent({__name:"input-datepicker",props:{modelValue:{type:null,default:""},from:{type:[String,Number,Boolean,Date],default:""},to:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"datetime-local"},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},range:{type:Boolean,default:!1},textRange:{type:Boolean,default:!1},inline:{type:Boolean,default:!1},textInput:{type:Boolean,default:!0},picker:{type:Boolean,default:!0},locale:{type:String,default:"en"},utcStore:{type:Boolean,default:!1}},emits:["update:modelValue","update:from","update:to"],setup(t,{emit:d}){const l=e.shallowRef(null);e.onMounted(async()=>{const{VueDatePicker:y}=await import("@vuepic/vue-datepicker");l.value=y});const o=t,n=d,{t:a,locale:i}=De.useI18n(),r={en:qe,de:La,fr:zn},c=e.computed(()=>{const y=o.locale||i.value;return r[y]||qe}),u=e.computed(()=>o.inline||!o.picker?{openMenu:!1,format:c.value}:!0),A=e.computed({get(){if(o.range){let y=o.from||(Array.isArray(o.modelValue)?o.modelValue[0]:null),g=o.to||(Array.isArray(o.modelValue)?o.modelValue[1]:null);return o.utcStore?(y=y?h(y):null,g=g?h(g):null):(y=y?new Date(`${y}Z`).toISOString().replace("Z",""):null,g=g?new Date(`${g}Z`).toISOString().replace("Z",""):null),[...y?[y]:[],...g?[g]:[]]}else{if(o.utcStore){const B=o.modelValue;return B&&h(B)||""}const y=o.modelValue?new Date(`${o.modelValue}Z`):null,g=y&&y.toISOString();return g&&g.replace("Z","")}},set(y){if(o.range&&Array.isArray(y)){let[g,B]=y;o.utcStore?(g=b(g)||null,B=b(B)||null):(g=g&&new Date(g),g?.setUTCHours(g.getHours()),g=g?.toISOString()?.replace("Z",""),B=B&&new Date(B),B?.setUTCHours(B.getHours()),B=B?.toISOString()?.replace("Z","")),n("update:modelValue",[g,B]),n("update:from",g),n("update:to",B)}else if(o.utcStore){const g=b(y);n("update:modelValue",g)}else{const g=y&&new Date(y);g?.setUTCHours(g?.getHours()),y=g&&g.toISOString(),n("update:modelValue",y&&y.replace("Z",""))}}}),s=e.computed({get(){return Array.isArray(A.value)?A.value[0]:A.value},set(y){A.value=Array.isArray(A.value)?[y,A.value[0]]:y}}),m=e.computed({get(){return Array.isArray(A.value)?A.value[1]:A.value},set(y){A.value=Array.isArray(A.value)?[A.value[0],y]:y}});e.watch(()=>[s.value,m.value],(y,g)=>{o.range&&y.some(B=>B===void 0)&&g.every(Boolean)&&(A.value=[])});function f(y){if(!y)return;const g=y.getDate(),B=y.getMonth()+1,M=y.getFullYear(),w=y.getMinutes(),D=y.getHours();switch(c.value){case"de":return`${g}.${B}.${M} ${D<10?"0"+D:D}:${w<10?"0"+w:w}`;case"fr":return`${g}/${B}/${M} ${D<10?"0"+D:D}:${w<10?"0"+w:w}`;default:return`${B}/${g}/${M} ${D<10?"0"+D:D}:${w<10?"0"+w:w}`}}function h(y){if(!y)return null;const g=y instanceof Date?new Date(y):new Date(`${y}Z`),B=g.getFullYear(),M=String(g.getMonth()+1).padStart(2,"0"),w=String(g.getDate()).padStart(2,"0"),D=String(g.getHours()).padStart(2,"0"),R=String(g.getMinutes()).padStart(2,"0"),ae=String(g.getSeconds()).padStart(2,"0");return`${B}-${M}-${w}T${D}:${R}:${ae}`}function b(y){return y?(y instanceof Date?new Date(y):new Date(String(y))).toISOString().split(".")[0]:null}const E=y=>(Array.isArray(y)?y=y.map(g=>f(g)).join(" - "):y=f(y),y);return(y,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input--datepicker"])},[e.renderSlot(y.$slots,"label",{},()=>[e.createElementVNode("div",Qn,[e.createElementVNode("div",Rn,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id,class:"input__label",innerHTML:e.unref(H)(`${t.label}${t.required?" *":""}`)},null,8,Fn)):e.createCommentVNode("",!0)])])]),t.textInput?(e.openBlock(),e.createElementBlock("div",On,[e.createElementVNode("div",Hn,[e.renderSlot(y.$slots,"input-prepend",{slotScope:"props"}),t.range&&!t.textRange?(e.openBlock(),e.createElementBlock("div",Wn,[e.createElementVNode("div",Un,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{uid:`${t.id}-from`,modelValue:s.value,"onUpdate:modelValue":g[0]||(g[0]=B=>s.value=B),locale:c.value,format:E,"text-input":u.value,disabled:t.disabled,"read-only":t.readOnly,required:t.required,"auto-apply":!0},null,8,["uid","modelValue","locale","text-input","disabled","read-only","required"]))]),e.createElementVNode("div",qn,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{uid:`${t.id}-to`,modelValue:m.value,"onUpdate:modelValue":g[1]||(g[1]=B=>m.value=B),locale:c.value,format:E,"text-input":u.value,disabled:t.disabled,"read-only":t.readOnly,required:t.required,"auto-apply":!0},null,8,["uid","modelValue","locale","text-input","disabled","read-only","required"]))])])):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{key:1,uid:`${t.id}-input-to`,modelValue:A.value,"onUpdate:modelValue":g[2]||(g[2]=B=>A.value=B),format:E,locale:c.value,range:t.textRange,"text-input":u.value,disabled:t.disabled,"read-only":t.readOnly,required:t.required,"auto-apply":!0},null,8,["uid","modelValue","locale","range","text-input","disabled","read-only","required"])),e.renderSlot(y.$slots,"input-append",{slotScope:"props"})])])):e.createCommentVNode("",!0),t.inline?(e.openBlock(),e.createElementBlock("div",jn,[e.createElementVNode("div",_n,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{uid:`${t.id}-inline`,modelValue:A.value,"onUpdate:modelValue":g[3]||(g[3]=B=>A.value=B),locale:c.value,cancelText:"abbrechen",selectText:"auswählen",range:t.range,"multi-calendars":t.range,inline:{input:!1},"auto-apply":!0,"partial-range":t.range,"partial-flow":!0,"start-time":{hours:0,minutes:0},class:"justify-content-center",disabled:t.disabled,"read-only":t.readOnly,required:t.required,"month-name-format":"long"},null,8,["uid","modelValue","locale","range","multi-calendars","partial-range","disabled","read-only","required"]))])])):e.createCommentVNode("",!0)]))}}),Gn={class:"input-group input__input-group"},je=e.defineComponent({__name:"input-password",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null},role:{type:String,default:"presentation"},autocomplete:{type:String,default:"off"},password:{type:String,default:""},confirm:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.computed({get(){return l.modelValue},set(a){l.password===a||!l.password?o("update:modelValue",a):o("update:modelValue","")}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input-password"])},[e.createElementVNode("div",Gn,[e.createVNode(Ae,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),type:"password",placeholder:t.placeholder,disabled:t.disabled,readonly:t.readOnly,required:t.required,label:t.label},{"input-prepend":e.withCtx(r=>[e.renderSlot(a.$slots,"input-prepend",{slotScope:"props"})]),"input-append":e.withCtx(r=>[e.renderSlot(a.$slots,"input-append",{slotScope:"props"},()=>[t.confirm&&t.modelValue===t.password?(e.openBlock(),e.createBlock(N,{key:0,symbol:"check",class:"ms-2"})):e.createCommentVNode("",!0)])]),_:3},8,["modelValue","placeholder","disabled","readonly","required","label"])])]))}}),Yn={class:"input-group input__input-group"},Zn=["onUpdate:modelValue","disabled","readonly","onPaste","onInput","onKeydown"],Kn=e.defineComponent({__name:"input-passcode",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null},role:{type:String,default:"presentation"},autocomplete:{type:String,default:"off"},passcodeMatch:{type:String,default:""},confirm:{type:Boolean,default:!1},splitInput:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:d}){const l=e.ref([]),o=e.ref([]),n=t,a=d,i=e.computed({get(){return n.modelValue},set(A){n.passcodeMatch===A||!n.passcodeMatch?a("update:modelValue",A):a("update:modelValue","")}});e.watch(()=>n.modelValue,A=>{const s=A?.toString()||"";for(o.value=s.split("").slice(0,n.passcodeMatch?.length||6);o.value.length<(n.passcodeMatch?.length||6);)o.value.push("")},{immediate:!0}),e.watch(()=>o.value,A=>{const s=A.join("");n.passcodeMatch===s||!n.passcodeMatch?a("update:modelValue",s):a("update:modelValue","")},{deep:!0});const r=(A,s)=>{A.preventDefault();const m=A.clipboardData?.getData("text")||"";console.log("Paste detected:",m);const f=m.split(""),h=n.passcodeMatch?.length||6;f.forEach((E,y)=>{const g=s+y;g<h&&(o.value[g]=E)});const b=Math.min(s+f.length,h-1);setTimeout(()=>l.value[b]?.focus(),0)},c=(A,s)=>{n.passcodeMatch?.length,A.key==="Backspace"&&!o.value[s]&&s>0&&l.value[s-1]?.focus()},u=(A,s)=>{let f=A.target.value;f.length>1&&(f=f.slice(-1)),o.value[s]=f;const h=n.passcodeMatch?.length||6;f&&s<h-1&&setTimeout(()=>l.value[s+1]?.focus(),0)};return(A,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input-passcode"])},[e.createElementVNode("div",Yn,[t.splitInput?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(t.passcodeMatch,(m,f)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:f,"onUpdate:modelValue":h=>o.value[f]=h,type:"text",ref_for:!0,ref:h=>l.value[f]=h,maxlength:1,disabled:t.disabled,readonly:t.readOnly,onPaste:h=>r(h,f),onInput:h=>u(h,f),onKeydown:h=>c(h,f),size:"1",class:"form-control text-center"},null,40,Zn)),[[e.vModelText,o.value[f]]])),128)):(e.openBlock(),e.createBlock(je,{key:0,modelValue:i.value,"onUpdate:modelValue":s[0]||(s[0]=m=>i.value=m),type:t.type,placeholder:t.placeholder,disabled:t.disabled,readonly:t.readOnly,required:t.required,label:t.label},null,8,["modelValue","type","placeholder","disabled","readonly","required","label"]))])]))}}),Xn={class:"check-group"},el=["id","name","value","disabled","read-only","required"],tl=["for","innerHTML"],al=e.defineComponent({__name:"check-group",props:{modelValue:{type:null,default:()=>[]},options:{type:Array,required:!0},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d;e.ref([]);const n=e.computed({get(){return l.modelValue},set(i){o("update:modelValue",i)}}),a=e.computed(()=>l.options&&l.options.map(i=>(i=typeof i=="string"?{text:i,value:i}:i,{...i,active:l.modelValue&&l.modelValue.includes(i.value)})));return(i,r)=>(e.openBlock(),e.createElementBlock("div",Xn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(c,u)=>(e.openBlock(),e.createElementBlock("div",{key:u,class:"form-check"},[e.withDirectives(e.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":r[0]||(r[0]=A=>n.value=A),id:`${t.id}-${u}`,name:t.name,class:"form-check-input",value:c.value||c,disabled:t.disabled,"read-only":t.readOnly,required:t.required},null,8,el),[[e.vModelCheckbox,n.value]]),e.createElementVNode("label",{class:"form-check-label",for:`${t.id}-${u}`,innerHTML:c.text},null,8,tl)]))),128))]))}}),nl={class:"input radio-group"},ll=["id","name","value","checked","disabled","read-only","required","onChange"],ol=["for","innerHTML"],il=["for"],Be=e.defineComponent({__name:"radio-group",props:{modelValue:{type:null},options:{type:Array,default:[]},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},keyOption:{type:null},itemClass:{type:String,default:""}},emits:["change","update:modelValue"],setup(t,{emit:d}){const l=d;function o(n){l("update:modelValue",n)}return(n,a)=>(e.openBlock(),e.createElementBlock("div",nl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,(i,r)=>(e.openBlock(),e.createElementBlock("div",{key:r,class:e.normalizeClass(["form-check",t.itemClass])},[e.createElementVNode("input",{type:"radio",id:`${t.id}-${r}`,name:t.name,class:e.normalizeClass(["form-check-input",`
|
|
1
|
+
(function(V,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("dompurify"),require("vue-i18n"),require("lodash"),require("ofetch"),require("vue-advanced-cropper"),require("html2canvas"),require("qr-code-styling")):typeof define=="function"&&define.amd?define(["exports","vue","dompurify","vue-i18n","lodash","ofetch","vue-advanced-cropper","html2canvas","qr-code-styling"],e):(V=typeof globalThis<"u"?globalThis:V||self,e(V.AblokComponents={},V.Vue,V.DOMPurify,V.VueI18n,V._,V.ofetch,V.VueAdvancedCropper,V.html2canvas,V.QRCodeStyling))})(this,(function(V,e,Re,De,Le,be,ft,pt,Fe){"use strict";const gt={class:"icon",preserveAspectRatio:"xMaxYMin"},ht=["xlink:href"],M=e.defineComponent({__name:"svg-icon",props:{basePath:{type:String,default:"/symbol-defs.svg"},prefix:{type:String,default:"icon-"},symbol:{type:String,default:""},size:{type:String,default:"default"}},setup(t){return(A,l)=>(e.openBlock(),e.createElementBlock("i",{class:e.normalizeClass(["svg-icon",{[`svg-icon--${t.size}`]:t.size}])},[(e.openBlock(),e.createElementBlock("svg",gt,[e.createElementVNode("use",{"xlink:href":`${t.basePath}#${t.prefix}${t.symbol}`,"xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0",y:"0"},null,8,ht)]))],2))}}),yt={class:"loading-spinner d-block"},ke=e.defineComponent({__name:"loading-spinner",props:{color:{type:String,default:"#fff"}},setup(t){return(A,l)=>(e.openBlock(),e.createElementBlock("span",yt,[l[0]||(l[0]=e.createElementVNode("span",{class:"loading-spinner__animation"},[e.createElementVNode("svg",{version:"1.1",x:"0px",y:"0px",viewBox:"0 0 100 100"},[e.createElementVNode("path",{d:"M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"},[e.createElementVNode("animateTransform",{attributeName:"transform",attributeType:"XML",type:"rotate",dur:"1s",from:"0 50 50",to:"360 50 50",repeatCount:"indefinite"})])])],-1)),e.renderSlot(A.$slots,"default")]))}}),bt=["src","alt"],oe=e.defineComponent({__name:"base-image",props:{src:{type:String,default:'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"/>',required:!0},alt:{type:String,default:""},spinner:{type:Boolean,default:!1},zoom:{type:Boolean,default:!1},animate:{type:Boolean,default:!0},ready:{type:Boolean,default:!1},pending:{type:Boolean,default:!1},emitPending:{type:Boolean,default:!0}},emits:["update:ready","update:pending"],setup(t,{emit:A}){const l=t,o=A,n=e.useTemplateRef("image"),a=e.ref(!1);function i(){a.value=!0,n.value?.addEventListener("transitionend",r,{once:!0})}function r(){o("update:ready",!0),l.emitPending&&o("update:pending",!1)}return e.onBeforeMount(()=>{l.emitPending&&o("update:pending",!0)}),(d,u)=>t.src?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["base-image",{"base-image--zoom":t.zoom}])},[t.spinner&&!a.value?(e.openBlock(),e.createBlock(ke,{key:0})):e.createCommentVNode("",!0),e.createElementVNode("img",{ref_key:"image",ref:n,class:e.normalizeClass(["",{"opacity-0":t.animate&&!a.value,"opacity-1":!t.animate||a.value}]),src:t.src,alt:t.alt,onLoad:i},null,42,bt)],2)):e.createCommentVNode("",!0)}}),kt=["innerHTML"],wt=e.defineComponent({__name:"base-headline",props:{tag:{},size:{},variant:{},text:{},className:{}},setup(t){const A=t,l=e.computed(()=>A.tag||"p");return(o,n)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{class:e.normalizeClass(["headline",`${t.size} headline--${t.size}${t.className||""}`])},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default",{},()=>[e.createElementVNode("span",{class:"headline__text",innerHTML:t.text},null,8,kt)])]),_:3},8,["class"]))}});function we(t){return e.computed(()=>{const A=typeof t=="function"?t():typeof t=="string"?t:t.value;return Re.sanitize(A,{ALLOWED_TAGS:["b","i","em","strong","u","span","p","br","a","ul","ol","li","h1","h2","h3","h4","h5","h6","article","div","label"],ALLOWED_ATTR:["class","id","href","target","rel","title","data-countdown"],ALLOW_DATA_ATTR:!0})})}function H(t){return Re.sanitize(t,{ALLOWED_TAGS:["b","i","em","strong","u","span","p","br","a","ul","ol","li","h1","h2","h3","h4","h5","h6","article","div","label"],ALLOWED_ATTR:["class","id","href","target","rel","title","data-countdown","v-modal"],ALLOW_DATA_ATTR:!0})}const Bt=["innerHTML"],Ct=e.defineComponent({__name:"base-paragraph",props:{size:{},variant:{},text:{},className:{}},setup(t){const A=t;return we(()=>A.text||""),(l,o)=>(e.openBlock(),e.createElementBlock("p",{class:e.normalizeClass(["base-paragraph",`${t.size||""} ${t.className||""}`]),innerHTML:t.text},null,10,Bt))}});function P(){return Math.random().toString(16).slice(2)}async function Be(t){return await new Promise(A=>{let l=new FileReader;l.onload=()=>A(l.result),l.readAsDataURL(t)})}function Vt(t){const A=atob(t.split(",")[1]),l=new ArrayBuffer(A.length),o=new Uint8Array(l);for(let n=0;n<A.length;n++)o[n]=A.charCodeAt(n);return new Blob([l],{type:"image/png"})}function Et(t){return{"image/jpeg":"jpg","image/jpg":"jpg","image/png":"png","image/gif":"gif","image/webp":"webp","image/svg+xml":"svg","image/bmp":"bmp","image/tiff":"tiff","application/pdf":"pdf","video/mp4":"mp4","video/webm":"webm","video/ogg":"ogg"}[t]||"bin"}async function Oe(t,A,l){const o=Et(l),a=A.includes(".")?A:`${A}.${o}`;return fetch(t).then(function(i){return i.arrayBuffer()}).then(function(i){return new File([i],a,{type:l})})}async function $t(t){return await new Promise((A,l)=>{const o=new Image;o.onload=()=>A(o),o.onerror=n=>l(n),o.src=t})}function Qe(t,A,l,o="image/png",n){const a=document.createElement("canvas");a.width=A,a.height=l;const i=a.getContext("2d");return i?(i.drawImage(t,0,0,A,l),a.toDataURL(o,n)):t.src}async function St(t,A,l){const o=(t.type||"").toLowerCase();if(!(o.startsWith("image/")&&o!=="image/svg+xml"))return t;const a=await Be(t),i=await $t(a),r=i.naturalWidth,d=i.naturalHeight;if(!r||r<=A)return t;const u=Math.round(A),c=d/r,s=Math.round(u*c),m=Qe(i,u,s,t.type||"image/png",l);return await Oe(m,t.name,t.type||"image/png")}function He(t){return!t||typeof t!="string"?"":t.replace(/\0/g,"").replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,"").replace(/on\w+\s*=\s*["'][^"']*["']/gi,"").replace(/on\w+\s*=\s*[^\s>]*/gi,"").replace(/javascript:/gi,"").replace(/data:text\/html/gi,"")}const Nt={class:"accordion-item"},vt=["id"],Mt=["data-bs-target","aria-controls"],Dt={class:"flex-grow-1"},Lt=["id","aria-labelledby","data-bs-parent"],It=["innerHTML"],Pt=e.defineComponent({__name:"accordion-item",props:{id:{type:String,default:()=>P()},modelValue:{type:Boolean,default:!1},title:{type:String,default:"Accordion Title"},body:{type:String,default:"<p>Lorem ipsum dolor sit amet consectetur, adipisicing elit. Nisi aut, nobis inventore repudiandae quo laboriosam. Dicta placeat ullam harum optio expedita. Harum fugiat suscipit sapiente quos, molestias neque eaque omnis?</p>"},parent:{type:String,default:""},noPadding:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=we(()=>l.body);function a(){o("update:modelValue",!l.modelValue)}return(i,r)=>(e.openBlock(),e.createElementBlock("div",Nt,[e.createElementVNode("div",{class:"accordion-header",id:`heading-${t.id}`},[e.createElementVNode("button",{class:e.normalizeClass(["accordion-button",!t.modelValue&&"collapsed"]),type:"button","data-bs-toggle":"collapse","data-bs-target":`#target${t.id}`,"aria-expanded":"true","aria-controls":`target${t.id}`,onClick:a},[e.renderSlot(i.$slots,"toggle",{},()=>[e.createElementVNode("span",Dt,e.toDisplayString(t.title),1)])],10,Mt)],8,vt),e.createElementVNode("div",{class:e.normalizeClass(["accordion-collapse collapse",t.modelValue&&"show"]),id:`target${t.id}`,"aria-labelledby":`heading${t.id}`,"data-bs-parent":t.parent},[e.createElementVNode("div",{class:e.normalizeClass(["accordion-body",t.noPadding?"p-0":""])},[e.renderSlot(i.$slots,"body",{},()=>[e.createElementVNode("article",{innerHTML:e.unref(n)},null,8,It)])],2)],10,Lt)]))}}),Tt=(t,A)=>{const l=t.__vccOpts||t;for(const[o,n]of A)l[o]=n;return l},xt={},zt={class:"accordion"};function Rt(t,A){return e.openBlock(),e.createElementBlock("div",zt,[e.renderSlot(t.$slots,"default")])}const Ft=Tt(xt,[["render",Rt]]),Ot=["type","disabled"],We=e.defineComponent({__name:"base-button",props:{type:{type:null},caption:{type:String},variant:{type:String},color:{type:String,default:"primary"},size:{type:String},icon:{type:String},disabled:{type:Boolean,default:!1},pending:{type:Boolean,default:!1},success:{type:Boolean,default:!1},error:{type:Boolean,default:!1},outlined:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1},circle:{type:Boolean,default:!1}},setup(t){const A=t,l=e.computed(()=>A.caption&&!A.circle);return(o,n)=>(e.openBlock(),e.createElementBlock("button",{type:t.type,disabled:t.disabled,class:e.normalizeClass(["btn",{disabled:t.disabled,pending:t.pending,rounded:t.rounded,"rounded-circle":t.circle,[`btn-${t.color}`]:!t.outlined,[`btn-outline-${t.color}`]:t.outlined,"btn-lg":t.size==="large","btn-sm":t.size==="small"}])},[t.pending?e.renderSlot(o.$slots,"pending-icon",{key:0},()=>[e.createVNode(ke)]):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"default",{},()=>[t.icon?(e.openBlock(),e.createBlock(M,{key:0,symbol:t.icon,class:"base-button__caption"},null,8,["symbol"])):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(["base-button__caption",{"icon-padding":t.icon}])},e.toDisplayString(t.caption),3)):e.createCommentVNode("",!0)])],10,Ot))}}),Qt={class:"input-group input__input-group"},Ht=["type","id","name","placeholder","pattern","disabled","readonly","required","maxlength","true-value","false-value","aria-label","role","autocomplete"],Wt=["for","innerHTML"],Ut={key:0,class:"input__error alert alert-danger mt-3"},ue=e.defineComponent({__name:"base-input",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},min:{type:Number},max:{type:Number},maxlength:{type:Number},pattern:{type:String,default:null},trueValue:{type:null,default:!0},falseValue:{type:null,default:!1},role:{type:String,default:"presentation"},autocomplete:{type:String,default:"off"},validate:{type:Boolean,default:!1},valid:{type:Boolean,default:!0},sanitize:{type:Boolean,default:!0}},emits:["update:modelValue","update:valid"],setup(t,{emit:A}){const l=t,o=A,n=e.useTemplateRef("input"),a=e.ref(l.valid),i=e.ref(),r=e.computed(()=>H(`${l.label}${l.required?" *":""}`)),d=e.computed({get(){return l.modelValue},set(s){s=l.type==="number"?l.max&&Number(s)>l.max?l.max:l.min!==void 0&&Number(s)<l.min?l.min:Number(s):s,l.sanitize&&typeof s=="string"&&!["checkbox","radio","number","date","datetime-local","time","month","week","email","tel","url"].includes(l.type)&&(s=He(s)),o("update:modelValue",s)}}),u=e.computed(()=>{if(l.type==="number"){const{min:s,max:m}=l;return{...s!==void 0?{min:s}:{},...m!==void 0?{max:m}:{}}}return{}});function c(){l.validate&&n.value&&(a.value=n.value.checkValidity(),a.value?i.value=void 0:i.value=n.value.validationMessage,o("update:valid",a.value))}return e.watch(()=>l.modelValue,()=>{a.value===!1&&c()}),e.onMounted(()=>{let s=m=>{d.value=typeof m.detail=="string"||typeof m.detail=="number"?`${m.detail}`:""};n.value?.addEventListener("focusin",m=>{window.addEventListener("update-focussed-input",s)}),n.value?.addEventListener("focusout",m=>{window.removeEventListener("update-focussed-input",s)}),c()}),(s,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input",`input--${t.type}${a.value?"":" input--invalid"}`])},[e.createElementVNode("div",Qt,[e.renderSlot(s.$slots,"input-prepend",{slotScope:"props"}),e.withDirectives(e.createElementVNode("input",e.mergeProps({ref_key:"input",ref:n,"onUpdate:modelValue":m[0]||(m[0]=f=>d.value=f),type:t.type==="color"?"text":t.type,id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,disabled:t.disabled,readonly:t.readOnly,required:t.required,maxlength:t.maxlength},u.value,{"true-value":t.trueValue,"false-value":t.falseValue,class:["form-control",{"form-check-input":t.type==="checkbox"}],"aria-label":t.label,role:t.role,autocomplete:t.autocomplete,onChange:c}),null,16,Ht),[[e.vModelDynamic,d.value]]),e.renderSlot(s.$slots,"input-append",{slotScope:"props"})]),e.renderSlot(s.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id,class:e.normalizeClass(["input__label",{"form-check-label":t.type==="checkbox"}]),innerHTML:r.value},null,10,Wt)):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[!a.value&&i.value?(e.openBlock(),e.createElementBlock("div",Ut,e.toDisplayString(i.value),1)):e.createCommentVNode("",!0)]),_:1})],2))}}),qt={class:"input input--textarea"},jt=["type","id","name","placeholder","pattern","disabled","read-only","required","maxlength","aria-label"],_t=["for","innerHTML"],Jt=e.defineComponent({__name:"input-textarea",props:{modelValue:{type:String,default:""},type:{type:String,default:"text"},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null},checked:{type:Boolean,default:!1},sanitize:{type:Boolean,default:!0}},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.computed({get(){return l.modelValue},set(a){l.sanitize&&typeof a=="string"&&(a=He(a)),o("update:modelValue",a)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",qt,[e.renderSlot(a.$slots,"input-prepend"),e.withDirectives(e.createElementVNode("textarea",{"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),type:t.type,id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,disabled:t.disabled,"read-only":t.readOnly,required:t.required,maxlength:t.maxlength,class:e.normalizeClass(["form-control",{}]),"aria-label":t.label},null,8,jt),[[e.vModelText,n.value]]),e.renderSlot(a.$slots,"input-append"),e.renderSlot(a.$slots,"label",{},()=>[e.createElementVNode("label",{for:t.id,class:e.normalizeClass(["input__label",{"form-check-label":t.type==="checkbox"}]),innerHTML:`${t.label}${t.required?" *":""}`},null,10,_t)])]))}}),Gt={class:"form-check input input--checkbox"},Yt=["value","id","name","required","disabled","true-value","false-value"],Zt=["for","innerHTML"],Xt=e.defineComponent({__name:"input-checkbox",props:{id:{type:String},name:{type:String},label:{type:String},error:{type:String},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},modelValue:{type:[Boolean,Array]},value:{type:[String,Object]},checked:{type:Boolean},trueValue:{type:null,default:!0},falseValue:{type:null,default:!1}},emits:["update:modelValue","update:checked"],setup(t,{emit:A}){const l=t,o=A,n=e.computed({get(){return l.modelValue||l.checked},set(a){o("update:checked",a),o("update:modelValue",a)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",Gt,[e.withDirectives(e.createElementVNode("input",{ref:"input","onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),value:t.value,id:t.id,name:t.name,type:"checkbox",required:t.required,disabled:t.disabled,class:"form-check-input","true-value":t.trueValue,"false-value":t.falseValue},null,8,Yt),[[e.vModelCheckbox,n.value]]),e.createElementVNode("label",{class:"input__label form-check-label",for:t.id,innerHTML:e.unref(H)(t.label||"")},null,8,Zt)]))}}),Kt={class:"input-group input__input-group"},ea=["id","name","placeholder","pattern","disabled","read-only","required","aria-label"],ta=["for","innerHTML"],aa=e.defineComponent({__name:"input-datetime",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null}},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.computed({get(){const a=l.modelValue&&new Date(`${l.modelValue}Z`),i=a&&new Date(a.getTime()+new Date().getTimezoneOffset()*-60*1e3).toISOString();return i&&i.replace("Z","")},set(a){const i=a&&new Date(a);a=i&&i.toISOString(),o("update:modelValue",a&&a.replace("Z",""))}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input",`input--${t.type}`])},[e.createElementVNode("div",Kt,[e.renderSlot(a.$slots,"input-prepend",{slotScope:"props"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),type:"datetime-local",id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,disabled:t.disabled,"read-only":t.readOnly,required:t.required,class:"form-control","aria-label":t.label},null,8,ea),[[e.vModelText,n.value]]),e.renderSlot(a.$slots,"input-append",{slotScope:"props"})]),e.renderSlot(a.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id,class:"input__label",innerHTML:e.unref(H)(`${t.label}${t.required?" *":""}`)},null,8,ta)):e.createCommentVNode("",!0)])],2))}});function ne(t){return(A={})=>{const l=A.width?String(A.width):t.defaultWidth;return t.formats[l]||t.formats[t.defaultWidth]}}function W(t){return(A,l)=>{const o=l?.context?String(l.context):"standalone";let n;if(o==="formatting"&&t.formattingValues){const i=t.defaultFormattingWidth||t.defaultWidth,r=l?.width?String(l.width):i;n=t.formattingValues[r]||t.formattingValues[i]}else{const i=t.defaultWidth,r=l?.width?String(l.width):t.defaultWidth;n=t.values[r]||t.values[i]}const a=t.argumentCallback?t.argumentCallback(A):A;return n[a]}}function U(t){return(A,l={})=>{const o=l.width,n=o&&t.matchPatterns[o]||t.matchPatterns[t.defaultMatchWidth],a=A.match(n);if(!a)return null;const i=a[0],r=o&&t.parsePatterns[o]||t.parsePatterns[t.defaultParseWidth],d=Array.isArray(r)?la(r,s=>s.test(i)):na(r,s=>s.test(i));let u;u=t.valueCallback?t.valueCallback(d):d,u=l.valueCallback?l.valueCallback(u):u;const c=A.slice(i.length);return{value:u,rest:c}}}function na(t,A){for(const l in t)if(Object.prototype.hasOwnProperty.call(t,l)&&A(t[l]))return l}function la(t,A){for(let l=0;l<t.length;l++)if(A(t[l]))return l}function Ie(t){return(A,l={})=>{const o=A.match(t.matchPattern);if(!o)return null;const n=o[0],a=A.match(t.parsePattern);if(!a)return null;let i=t.valueCallback?t.valueCallback(a[0]):a[0];i=l.valueCallback?l.valueCallback(i):i;const r=A.slice(n.length);return{value:i,rest:r}}}const Ue={lessThanXSeconds:{standalone:{one:"weniger als 1 Sekunde",other:"weniger als {{count}} Sekunden"},withPreposition:{one:"weniger als 1 Sekunde",other:"weniger als {{count}} Sekunden"}},xSeconds:{standalone:{one:"1 Sekunde",other:"{{count}} Sekunden"},withPreposition:{one:"1 Sekunde",other:"{{count}} Sekunden"}},halfAMinute:{standalone:"eine halbe Minute",withPreposition:"einer halben Minute"},lessThanXMinutes:{standalone:{one:"weniger als 1 Minute",other:"weniger als {{count}} Minuten"},withPreposition:{one:"weniger als 1 Minute",other:"weniger als {{count}} Minuten"}},xMinutes:{standalone:{one:"1 Minute",other:"{{count}} Minuten"},withPreposition:{one:"1 Minute",other:"{{count}} Minuten"}},aboutXHours:{standalone:{one:"etwa 1 Stunde",other:"etwa {{count}} Stunden"},withPreposition:{one:"etwa 1 Stunde",other:"etwa {{count}} Stunden"}},xHours:{standalone:{one:"1 Stunde",other:"{{count}} Stunden"},withPreposition:{one:"1 Stunde",other:"{{count}} Stunden"}},xDays:{standalone:{one:"1 Tag",other:"{{count}} Tage"},withPreposition:{one:"1 Tag",other:"{{count}} Tagen"}},aboutXWeeks:{standalone:{one:"etwa 1 Woche",other:"etwa {{count}} Wochen"},withPreposition:{one:"etwa 1 Woche",other:"etwa {{count}} Wochen"}},xWeeks:{standalone:{one:"1 Woche",other:"{{count}} Wochen"},withPreposition:{one:"1 Woche",other:"{{count}} Wochen"}},aboutXMonths:{standalone:{one:"etwa 1 Monat",other:"etwa {{count}} Monate"},withPreposition:{one:"etwa 1 Monat",other:"etwa {{count}} Monaten"}},xMonths:{standalone:{one:"1 Monat",other:"{{count}} Monate"},withPreposition:{one:"1 Monat",other:"{{count}} Monaten"}},aboutXYears:{standalone:{one:"etwa 1 Jahr",other:"etwa {{count}} Jahre"},withPreposition:{one:"etwa 1 Jahr",other:"etwa {{count}} Jahren"}},xYears:{standalone:{one:"1 Jahr",other:"{{count}} Jahre"},withPreposition:{one:"1 Jahr",other:"{{count}} Jahren"}},overXYears:{standalone:{one:"mehr als 1 Jahr",other:"mehr als {{count}} Jahre"},withPreposition:{one:"mehr als 1 Jahr",other:"mehr als {{count}} Jahren"}},almostXYears:{standalone:{one:"fast 1 Jahr",other:"fast {{count}} Jahre"},withPreposition:{one:"fast 1 Jahr",other:"fast {{count}} Jahren"}}},oa=(t,A,l)=>{let o;const n=l?.addSuffix?Ue[t].withPreposition:Ue[t].standalone;return typeof n=="string"?o=n:A===1?o=n.one:o=n.other.replace("{{count}}",String(A)),l?.addSuffix?l.comparison&&l.comparison>0?"in "+o:"vor "+o:o},ia={full:"EEEE, do MMMM y",long:"do MMMM y",medium:"do MMM y",short:"dd.MM.y"},ra={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},sa={full:"{{date}} 'um' {{time}}",long:"{{date}} 'um' {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},Aa={date:ne({formats:ia,defaultWidth:"full"}),time:ne({formats:ra,defaultWidth:"full"}),dateTime:ne({formats:sa,defaultWidth:"full"})},ca={lastWeek:"'letzten' eeee 'um' p",yesterday:"'gestern um' p",today:"'heute um' p",tomorrow:"'morgen um' p",nextWeek:"eeee 'um' p",other:"P"},da=(t,A,l,o)=>ca[t],ua={narrow:["v.Chr.","n.Chr."],abbreviated:["v.Chr.","n.Chr."],wide:["vor Christus","nach Christus"]},ma={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1. Quartal","2. Quartal","3. Quartal","4. Quartal"]},Pe={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],wide:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"]},fa={narrow:Pe.narrow,abbreviated:["Jan.","Feb.","März","Apr.","Mai","Juni","Juli","Aug.","Sep.","Okt.","Nov.","Dez."],wide:Pe.wide},pa={narrow:["S","M","D","M","D","F","S"],short:["So","Mo","Di","Mi","Do","Fr","Sa"],abbreviated:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],wide:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"]},ga={narrow:{am:"vm.",pm:"nm.",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachm.",evening:"Abend",night:"Nacht"},abbreviated:{am:"vorm.",pm:"nachm.",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachmittag",evening:"Abend",night:"Nacht"},wide:{am:"vormittags",pm:"nachmittags",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachmittag",evening:"Abend",night:"Nacht"}},ha={narrow:{am:"vm.",pm:"nm.",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachm.",evening:"abends",night:"nachts"},abbreviated:{am:"vorm.",pm:"nachm.",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachmittags",evening:"abends",night:"nachts"},wide:{am:"vormittags",pm:"nachmittags",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachmittags",evening:"abends",night:"nachts"}},ya={ordinalNumber:t=>Number(t)+".",era:W({values:ua,defaultWidth:"wide"}),quarter:W({values:ma,defaultWidth:"wide",argumentCallback:t=>t-1}),month:W({values:Pe,formattingValues:fa,defaultWidth:"wide"}),day:W({values:pa,defaultWidth:"wide"}),dayPeriod:W({values:ga,defaultWidth:"wide",formattingValues:ha,defaultFormattingWidth:"wide"})},ba=/^(\d+)(\.)?/i,ka=/\d+/i,wa={narrow:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,abbreviated:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,wide:/^(vor Christus|vor unserer Zeitrechnung|nach Christus|unserer Zeitrechnung)/i},Ba={any:[/^v/i,/^n/i]},Ca={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](\.)? Quartal/i},Va={any:[/1/i,/2/i,/3/i,/4/i]},Ea={narrow:/^[jfmasond]/i,abbreviated:/^(j[aä]n|feb|mär[z]?|apr|mai|jun[i]?|jul[i]?|aug|sep|okt|nov|dez)\.?/i,wide:/^(januar|februar|märz|april|mai|juni|juli|august|september|oktober|november|dezember)/i},$a={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^j[aä]/i,/^f/i,/^mär/i,/^ap/i,/^mai/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Sa={narrow:/^[smdmf]/i,short:/^(so|mo|di|mi|do|fr|sa)/i,abbreviated:/^(son?|mon?|die?|mit?|don?|fre?|sam?)\.?/i,wide:/^(sonntag|montag|dienstag|mittwoch|donnerstag|freitag|samstag)/i},Na={any:[/^so/i,/^mo/i,/^di/i,/^mi/i,/^do/i,/^f/i,/^sa/i]},va={narrow:/^(vm\.?|nm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,abbreviated:/^(vorm\.?|nachm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,wide:/^(vormittags|nachmittags|Mitternacht|Mittag|morgens|nachmittags|abends|nachts)/i},Ma={any:{am:/^v/i,pm:/^n/i,midnight:/^Mitte/i,noon:/^Mitta/i,morning:/morgens/i,afternoon:/nachmittags/i,evening:/abends/i,night:/nachts/i}},Da={ordinalNumber:Ie({matchPattern:ba,parsePattern:ka,valueCallback:t=>parseInt(t)}),era:U({matchPatterns:wa,defaultMatchWidth:"wide",parsePatterns:Ba,defaultParseWidth:"any"}),quarter:U({matchPatterns:Ca,defaultMatchWidth:"wide",parsePatterns:Va,defaultParseWidth:"any",valueCallback:t=>t+1}),month:U({matchPatterns:Ea,defaultMatchWidth:"wide",parsePatterns:$a,defaultParseWidth:"any"}),day:U({matchPatterns:Sa,defaultMatchWidth:"wide",parsePatterns:Na,defaultParseWidth:"any"}),dayPeriod:U({matchPatterns:va,defaultMatchWidth:"wide",parsePatterns:Ma,defaultParseWidth:"any"})},La={code:"de",formatDistance:oa,formatLong:Aa,formatRelative:da,localize:ya,match:Da,options:{weekStartsOn:1,firstWeekContainsDate:4}},Ia={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Pa=(t,A,l)=>{let o;const n=Ia[t];return typeof n=="string"?o=n:A===1?o=n.one:o=n.other.replace("{{count}}",A.toString()),l?.addSuffix?l.comparison&&l.comparison>0?"in "+o:o+" ago":o},Ta={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},xa=(t,A,l,o)=>Ta[t],za={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Ra={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Fa={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Oa={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},Qa={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Ha={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},Wa={ordinalNumber:(t,A)=>{const l=Number(t),o=l%100;if(o>20||o<10)switch(o%10){case 1:return l+"st";case 2:return l+"nd";case 3:return l+"rd"}return l+"th"},era:W({values:za,defaultWidth:"wide"}),quarter:W({values:Ra,defaultWidth:"wide",argumentCallback:t=>t-1}),month:W({values:Fa,defaultWidth:"wide"}),day:W({values:Oa,defaultWidth:"wide"}),dayPeriod:W({values:Qa,defaultWidth:"wide",formattingValues:Ha,defaultFormattingWidth:"wide"})},Ua=/^(\d+)(th|st|nd|rd)?/i,qa=/\d+/i,ja={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},_a={any:[/^b/i,/^(a|c)/i]},Ja={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Ga={any:[/1/i,/2/i,/3/i,/4/i]},Ya={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},Za={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Xa={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},Ka={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},en={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},tn={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},an={ordinalNumber:Ie({matchPattern:Ua,parsePattern:qa,valueCallback:t=>parseInt(t,10)}),era:U({matchPatterns:ja,defaultMatchWidth:"wide",parsePatterns:_a,defaultParseWidth:"any"}),quarter:U({matchPatterns:Ja,defaultMatchWidth:"wide",parsePatterns:Ga,defaultParseWidth:"any",valueCallback:t=>t+1}),month:U({matchPatterns:Ya,defaultMatchWidth:"wide",parsePatterns:Za,defaultParseWidth:"any"}),day:U({matchPatterns:Xa,defaultMatchWidth:"wide",parsePatterns:Ka,defaultParseWidth:"any"}),dayPeriod:U({matchPatterns:en,defaultMatchWidth:"any",parsePatterns:tn,defaultParseWidth:"any"})},nn={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},ln={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},on={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},rn={date:ne({formats:nn,defaultWidth:"full"}),time:ne({formats:ln,defaultWidth:"full"}),dateTime:ne({formats:on,defaultWidth:"full"})},qe={code:"en-US",formatDistance:Pa,formatLong:rn,formatRelative:xa,localize:Wa,match:an,options:{weekStartsOn:0,firstWeekContainsDate:1}},sn={lessThanXSeconds:{one:"moins d’une seconde",other:"moins de {{count}} secondes"},xSeconds:{one:"1 seconde",other:"{{count}} secondes"},halfAMinute:"30 secondes",lessThanXMinutes:{one:"moins d’une minute",other:"moins de {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"environ 1 heure",other:"environ {{count}} heures"},xHours:{one:"1 heure",other:"{{count}} heures"},xDays:{one:"1 jour",other:"{{count}} jours"},aboutXWeeks:{one:"environ 1 semaine",other:"environ {{count}} semaines"},xWeeks:{one:"1 semaine",other:"{{count}} semaines"},aboutXMonths:{one:"environ 1 mois",other:"environ {{count}} mois"},xMonths:{one:"1 mois",other:"{{count}} mois"},aboutXYears:{one:"environ 1 an",other:"environ {{count}} ans"},xYears:{one:"1 an",other:"{{count}} ans"},overXYears:{one:"plus d’un an",other:"plus de {{count}} ans"},almostXYears:{one:"presqu’un an",other:"presque {{count}} ans"}},An=(t,A,l)=>{let o;const n=sn[t];return typeof n=="string"?o=n:A===1?o=n.one:o=n.other.replace("{{count}}",String(A)),l?.addSuffix?l.comparison&&l.comparison>0?"dans "+o:"il y a "+o:o},cn={full:"EEEE d MMMM y",long:"d MMMM y",medium:"d MMM y",short:"dd/MM/y"},dn={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},un={full:"{{date}} 'à' {{time}}",long:"{{date}} 'à' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},mn={date:ne({formats:cn,defaultWidth:"full"}),time:ne({formats:dn,defaultWidth:"full"}),dateTime:ne({formats:un,defaultWidth:"full"})},fn={lastWeek:"eeee 'dernier à' p",yesterday:"'hier à' p",today:"'aujourd’hui à' p",tomorrow:"'demain à' p'",nextWeek:"eeee 'prochain à' p",other:"P"},pn=(t,A,l,o)=>fn[t],gn={narrow:["av. J.-C","ap. J.-C"],abbreviated:["av. J.-C","ap. J.-C"],wide:["avant Jésus-Christ","après Jésus-Christ"]},hn={narrow:["T1","T2","T3","T4"],abbreviated:["1er trim.","2ème trim.","3ème trim.","4ème trim."],wide:["1er trimestre","2ème trimestre","3ème trimestre","4ème trimestre"]},yn={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],wide:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"]},bn={narrow:["D","L","M","M","J","V","S"],short:["di","lu","ma","me","je","ve","sa"],abbreviated:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],wide:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"]},kn={narrow:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"mat.",afternoon:"ap.m.",evening:"soir",night:"mat."},abbreviated:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"matin",afternoon:"après-midi",evening:"soir",night:"matin"},wide:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"du matin",afternoon:"de l’après-midi",evening:"du soir",night:"du matin"}},wn=(t,A)=>{const l=Number(t),o=A?.unit;if(l===0)return"0";const n=["year","week","hour","minute","second"];let a;return l===1?a=o&&n.includes(o)?"ère":"er":a="ème",l+a},Bn=["MMM","MMMM"],Cn={preprocessor:(t,A)=>t.getDate()===1||!A.some(o=>o.isToken&&Bn.includes(o.value))?A:A.map(o=>o.isToken&&o.value==="do"?{isToken:!0,value:"d"}:o),ordinalNumber:wn,era:W({values:gn,defaultWidth:"wide"}),quarter:W({values:hn,defaultWidth:"wide",argumentCallback:t=>t-1}),month:W({values:yn,defaultWidth:"wide"}),day:W({values:bn,defaultWidth:"wide"}),dayPeriod:W({values:kn,defaultWidth:"wide"})},Vn=/^(\d+)(ième|ère|ème|er|e)?/i,En=/\d+/i,$n={narrow:/^(av\.J\.C|ap\.J\.C|ap\.J\.-C)/i,abbreviated:/^(av\.J\.-C|av\.J-C|apr\.J\.-C|apr\.J-C|ap\.J-C)/i,wide:/^(avant Jésus-Christ|après Jésus-Christ)/i},Sn={any:[/^av/i,/^ap/i]},Nn={narrow:/^T?[1234]/i,abbreviated:/^[1234](er|ème|e)? trim\.?/i,wide:/^[1234](er|ème|e)? trimestre/i},vn={any:[/1/i,/2/i,/3/i,/4/i]},Mn={narrow:/^[jfmasond]/i,abbreviated:/^(janv|févr|mars|avr|mai|juin|juill|juil|août|sept|oct|nov|déc)\.?/i,wide:/^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i},Dn={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^av/i,/^ma/i,/^juin/i,/^juil/i,/^ao/i,/^s/i,/^o/i,/^n/i,/^d/i]},Ln={narrow:/^[lmjvsd]/i,short:/^(di|lu|ma|me|je|ve|sa)/i,abbreviated:/^(dim|lun|mar|mer|jeu|ven|sam)\.?/i,wide:/^(dimanche|lundi|mardi|mercredi|jeudi|vendredi|samedi)/i},In={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^di/i,/^lu/i,/^ma/i,/^me/i,/^je/i,/^ve/i,/^sa/i]},Pn={narrow:/^(a|p|minuit|midi|mat\.?|ap\.?m\.?|soir|nuit)/i,any:/^([ap]\.?\s?m\.?|du matin|de l'après[-\s]midi|du soir|de la nuit)/i},Tn={any:{am:/^a/i,pm:/^p/i,midnight:/^min/i,noon:/^mid/i,morning:/mat/i,afternoon:/ap/i,evening:/soir/i,night:/nuit/i}},xn={ordinalNumber:Ie({matchPattern:Vn,parsePattern:En,valueCallback:t=>parseInt(t)}),era:U({matchPatterns:$n,defaultMatchWidth:"wide",parsePatterns:Sn,defaultParseWidth:"any"}),quarter:U({matchPatterns:Nn,defaultMatchWidth:"wide",parsePatterns:vn,defaultParseWidth:"any",valueCallback:t=>t+1}),month:U({matchPatterns:Mn,defaultMatchWidth:"wide",parsePatterns:Dn,defaultParseWidth:"any"}),day:U({matchPatterns:Ln,defaultMatchWidth:"wide",parsePatterns:In,defaultParseWidth:"any"}),dayPeriod:U({matchPatterns:Pn,defaultMatchWidth:"any",parsePatterns:Tn,defaultParseWidth:"any"})},zn={code:"fr",formatDistance:An,formatLong:mn,formatRelative:pn,localize:Cn,match:xn,options:{weekStartsOn:1,firstWeekContainsDate:4}},Rn={class:"row"},Fn={class:"col-12"},On=["for","innerHTML"],Qn={key:0},Hn={class:"input-group justify-content-center"},Wn={key:0,class:"row"},Un={class:"col-12 col-md-6"},qn={class:"col-12 col-md-6"},jn={key:1,class:"row"},_n={class:"col-12"},Jn=e.defineComponent({__name:"input-datepicker",props:{modelValue:{type:null,default:""},from:{type:[String,Number,Boolean,Date],default:""},to:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"datetime-local"},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},range:{type:Boolean,default:!1},textRange:{type:Boolean,default:!1},inline:{type:Boolean,default:!1},textInput:{type:Boolean,default:!0},picker:{type:Boolean,default:!0},locale:{type:String,default:"en"},utcStore:{type:Boolean,default:!1}},emits:["update:modelValue","update:from","update:to"],setup(t,{emit:A}){const l=e.shallowRef(null);e.onMounted(async()=>{const{VueDatePicker:y}=await import("@vuepic/vue-datepicker");l.value=y});const o=t,n=A,{t:a,locale:i}=De.useI18n(),r={en:qe,de:La,fr:zn},d=e.computed(()=>{const y=o.locale||i.value;return r[y]||qe}),u=e.computed(()=>o.inline||!o.picker?{openMenu:!1,format:d.value}:!0),c=e.computed({get(){if(o.range){let y=o.from||(Array.isArray(o.modelValue)?o.modelValue[0]:null),g=o.to||(Array.isArray(o.modelValue)?o.modelValue[1]:null);return o.utcStore?(y=y?h(y):null,g=g?h(g):null):(y=y?new Date(`${y}Z`).toISOString().replace("Z",""):null,g=g?new Date(`${g}Z`).toISOString().replace("Z",""):null),[...y?[y]:[],...g?[g]:[]]}else{if(o.utcStore){const C=o.modelValue;return C&&h(C)||""}const y=o.modelValue?new Date(`${o.modelValue}Z`):null,g=y&&y.toISOString();return g&&g.replace("Z","")}},set(y){if(o.range&&Array.isArray(y)){let[g,C]=y;o.utcStore?(g=b(g)||null,C=b(C)||null):(g=g&&new Date(g),g?.setUTCHours(g.getHours()),g=g?.toISOString()?.replace("Z",""),C=C&&new Date(C),C?.setUTCHours(C.getHours()),C=C?.toISOString()?.replace("Z","")),n("update:modelValue",[g,C]),n("update:from",g),n("update:to",C)}else if(o.utcStore){const g=b(y);n("update:modelValue",g)}else{const g=y&&new Date(y);g?.setUTCHours(g?.getHours()),y=g&&g.toISOString(),n("update:modelValue",y&&y.replace("Z",""))}}}),s=e.computed({get(){return Array.isArray(c.value)?c.value[0]:c.value},set(y){c.value=Array.isArray(c.value)?[y,c.value[0]]:y}}),m=e.computed({get(){return Array.isArray(c.value)?c.value[1]:c.value},set(y){c.value=Array.isArray(c.value)?[c.value[0],y]:y}});e.watch(()=>[s.value,m.value],(y,g)=>{o.range&&y.some(C=>C===void 0)&&g.every(Boolean)&&(c.value=[])});function f(y){if(!y)return;const g=y.getDate(),C=y.getMonth()+1,N=y.getFullYear(),B=y.getMinutes(),v=y.getHours();switch(d.value){case"de":return`${g}.${C}.${N} ${v<10?"0"+v:v}:${B<10?"0"+B:B}`;case"fr":return`${g}/${C}/${N} ${v<10?"0"+v:v}:${B<10?"0"+B:B}`;default:return`${C}/${g}/${N} ${v<10?"0"+v:v}:${B<10?"0"+B:B}`}}function h(y){if(!y)return null;const g=y instanceof Date?new Date(y):new Date(`${y}Z`),C=g.getFullYear(),N=String(g.getMonth()+1).padStart(2,"0"),B=String(g.getDate()).padStart(2,"0"),v=String(g.getHours()).padStart(2,"0"),F=String(g.getMinutes()).padStart(2,"0"),K=String(g.getSeconds()).padStart(2,"0");return`${C}-${N}-${B}T${v}:${F}:${K}`}function b(y){return y?(y instanceof Date?new Date(y):new Date(String(y))).toISOString().split(".")[0]:null}const E=y=>(Array.isArray(y)?y=y.map(g=>f(g)).join(" - "):y=f(y),y);return(y,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input--datepicker"])},[e.renderSlot(y.$slots,"label",{},()=>[e.createElementVNode("div",Rn,[e.createElementVNode("div",Fn,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id,class:"input__label",innerHTML:e.unref(H)(`${t.label}${t.required?" *":""}`)},null,8,On)):e.createCommentVNode("",!0)])])]),t.textInput?(e.openBlock(),e.createElementBlock("div",Qn,[e.createElementVNode("div",Hn,[e.renderSlot(y.$slots,"input-prepend",{slotScope:"props"}),t.range&&!t.textRange?(e.openBlock(),e.createElementBlock("div",Wn,[e.createElementVNode("div",Un,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{uid:`${t.id}-from`,modelValue:s.value,"onUpdate:modelValue":g[0]||(g[0]=C=>s.value=C),locale:d.value,format:E,"text-input":u.value,disabled:t.disabled,"read-only":t.readOnly,required:t.required,"auto-apply":!0},null,8,["uid","modelValue","locale","text-input","disabled","read-only","required"]))]),e.createElementVNode("div",qn,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{uid:`${t.id}-to`,modelValue:m.value,"onUpdate:modelValue":g[1]||(g[1]=C=>m.value=C),locale:d.value,format:E,"text-input":u.value,disabled:t.disabled,"read-only":t.readOnly,required:t.required,"auto-apply":!0},null,8,["uid","modelValue","locale","text-input","disabled","read-only","required"]))])])):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{key:1,uid:`${t.id}-input-to`,modelValue:c.value,"onUpdate:modelValue":g[2]||(g[2]=C=>c.value=C),format:E,locale:d.value,range:t.textRange,"text-input":u.value,disabled:t.disabled,"read-only":t.readOnly,required:t.required,"auto-apply":!0},null,8,["uid","modelValue","locale","range","text-input","disabled","read-only","required"])),e.renderSlot(y.$slots,"input-append",{slotScope:"props"})])])):e.createCommentVNode("",!0),t.inline?(e.openBlock(),e.createElementBlock("div",jn,[e.createElementVNode("div",_n,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{uid:`${t.id}-inline`,modelValue:c.value,"onUpdate:modelValue":g[3]||(g[3]=C=>c.value=C),locale:d.value,cancelText:"abbrechen",selectText:"auswählen",range:t.range,"multi-calendars":t.range,inline:{input:!1},"auto-apply":!0,"partial-range":t.range,"partial-flow":!0,"start-time":{hours:0,minutes:0},class:"justify-content-center",disabled:t.disabled,"read-only":t.readOnly,required:t.required,"month-name-format":"long"},null,8,["uid","modelValue","locale","range","multi-calendars","partial-range","disabled","read-only","required"]))])])):e.createCommentVNode("",!0)]))}}),Gn={class:"input-group input__input-group"},je=e.defineComponent({__name:"input-password",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null},role:{type:String,default:"presentation"},autocomplete:{type:String,default:"off"},password:{type:String,default:""},confirm:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.computed({get(){return l.modelValue},set(a){l.password===a||!l.password?o("update:modelValue",a):o("update:modelValue","")}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input-password"])},[e.createElementVNode("div",Gn,[e.createVNode(ue,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),type:"password",placeholder:t.placeholder,disabled:t.disabled,readonly:t.readOnly,required:t.required,label:t.label},{"input-prepend":e.withCtx(r=>[e.renderSlot(a.$slots,"input-prepend",{slotScope:"props"})]),"input-append":e.withCtx(r=>[e.renderSlot(a.$slots,"input-append",{slotScope:"props"},()=>[t.confirm&&t.modelValue===t.password?(e.openBlock(),e.createBlock(M,{key:0,symbol:"check",class:"ms-2"})):e.createCommentVNode("",!0)])]),_:3},8,["modelValue","placeholder","disabled","readonly","required","label"])])]))}}),Yn={class:"input-group input__input-group"},Zn=["onUpdate:modelValue","disabled","readonly","onPaste","onInput","onKeydown"],Xn=e.defineComponent({__name:"input-passcode",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null},role:{type:String,default:"presentation"},autocomplete:{type:String,default:"off"},passcodeMatch:{type:String,default:""},confirm:{type:Boolean,default:!1},splitInput:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:A}){const l=e.ref([]),o=e.ref([]),n=t,a=A,i=e.computed({get(){return n.modelValue},set(c){n.passcodeMatch===c||!n.passcodeMatch?a("update:modelValue",c):a("update:modelValue","")}});e.watch(()=>n.modelValue,c=>{const s=c?.toString()||"";for(o.value=s.split("").slice(0,n.passcodeMatch?.length||6);o.value.length<(n.passcodeMatch?.length||6);)o.value.push("")},{immediate:!0}),e.watch(()=>o.value,c=>{const s=c.join("");n.passcodeMatch===s||!n.passcodeMatch?a("update:modelValue",s):a("update:modelValue","")},{deep:!0});const r=(c,s)=>{c.preventDefault();const m=c.clipboardData?.getData("text")||"";console.log("Paste detected:",m);const f=m.split(""),h=n.passcodeMatch?.length||6;f.forEach((E,y)=>{const g=s+y;g<h&&(o.value[g]=E)});const b=Math.min(s+f.length,h-1);setTimeout(()=>l.value[b]?.focus(),0)},d=(c,s)=>{n.passcodeMatch?.length,c.key==="Backspace"&&!o.value[s]&&s>0&&l.value[s-1]?.focus()},u=(c,s)=>{let f=c.target.value;f.length>1&&(f=f.slice(-1)),o.value[s]=f;const h=n.passcodeMatch?.length||6;f&&s<h-1&&setTimeout(()=>l.value[s+1]?.focus(),0)};return(c,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input-passcode"])},[e.createElementVNode("div",Yn,[t.splitInput?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(t.passcodeMatch,(m,f)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:f,"onUpdate:modelValue":h=>o.value[f]=h,type:"text",ref_for:!0,ref:h=>l.value[f]=h,maxlength:1,disabled:t.disabled,readonly:t.readOnly,onPaste:h=>r(h,f),onInput:h=>u(h,f),onKeydown:h=>d(h,f),size:"1",class:"form-control text-center"},null,40,Zn)),[[e.vModelText,o.value[f]]])),128)):(e.openBlock(),e.createBlock(je,{key:0,modelValue:i.value,"onUpdate:modelValue":s[0]||(s[0]=m=>i.value=m),type:t.type,placeholder:t.placeholder,disabled:t.disabled,readonly:t.readOnly,required:t.required,label:t.label},null,8,["modelValue","type","placeholder","disabled","readonly","required","label"]))])]))}}),Kn={class:"check-group"},el=["id","name","value","disabled","read-only","required"],tl=["for","innerHTML"],al=e.defineComponent({__name:"check-group",props:{modelValue:{type:null,default:()=>[]},options:{type:Array,required:!0},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A;e.ref([]);const n=e.computed({get(){return l.modelValue},set(i){o("update:modelValue",i)}}),a=e.computed(()=>l.options&&l.options.map(i=>(i=typeof i=="string"?{text:i,value:i}:i,{...i,active:l.modelValue&&l.modelValue.includes(i.value)})));return(i,r)=>(e.openBlock(),e.createElementBlock("div",Kn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(d,u)=>(e.openBlock(),e.createElementBlock("div",{key:u,class:"form-check"},[e.withDirectives(e.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":r[0]||(r[0]=c=>n.value=c),id:`${t.id}-${u}`,name:t.name,class:"form-check-input",value:d.value||d,disabled:t.disabled,"read-only":t.readOnly,required:t.required},null,8,el),[[e.vModelCheckbox,n.value]]),e.createElementVNode("label",{class:"form-check-label",for:`${t.id}-${u}`,innerHTML:d.text},null,8,tl)]))),128))]))}}),nl={class:"input radio-group"},ll=["id","name","value","checked","disabled","read-only","required","onChange"],ol=["for","innerHTML"],il=["for"],Ce=e.defineComponent({__name:"radio-group",props:{modelValue:{type:null},options:{type:Array,default:[]},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},keyOption:{type:null},itemClass:{type:String,default:""}},emits:["change","update:modelValue"],setup(t,{emit:A}){const l=A;function o(n){l("update:modelValue",n)}return(n,a)=>(e.openBlock(),e.createElementBlock("div",nl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,(i,r)=>(e.openBlock(),e.createElementBlock("div",{key:r,class:e.normalizeClass(["form-check",t.itemClass])},[e.createElementVNode("input",{type:"radio",id:`${t.id}-${r}`,name:t.name,class:e.normalizeClass(["form-check-input",`
|
|
2
2
|
${r===t.keyOption||i.key?"form-check-input--key":""}
|
|
3
3
|
${(r===t.keyOption||i.key)&&i.value===t.modelValue?.value?"form-check-input--match":""}
|
|
4
|
-
`]),value:i.value||i,checked:i.value?i.value===t.modelValue?.value:i===t.modelValue,disabled:t.disabled,"read-only":t.readOnly,required:t.required,onChange:c=>o(i)},null,42,ll),e.renderSlot(n.$slots,"option-label",{option:i,index:r},()=>[e.createElementVNode("label",{class:"form-check-label",for:`${t.id}-${r}`,innerHTML:e.unref(H)(i.text||"")},null,8,ol)])],2))),128)),e.renderSlot(n.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id},e.toDisplayString(t.label),9,il)):e.createCommentVNode("",!0)])]))}}),rl={class:"radio-buttons"},sl=["for"],Al=e.defineComponent({__name:"radio-buttons",props:{modelValue:{type:null,default:""},options:{type:Array,default:[]},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},keyOption:{type:null},itemClass:{type:String,default:""}},emits:["update:modelValue","update:selection"],setup(t,{emit:d}){const l=t,o=d,n=e.computed({get(){return l.modelValue},set(a){o("update:modelValue",a)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",rl,[e.createVNode(Be,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),options:t.options,name:t.name,id:t.id,disabled:t.disabled,required:t.required,class:"d-flex flex-column gap-3 justify-content-center"},{"option-label":e.withCtx(r=>[e.createElementVNode("label",{for:`${t.id}-${r.index}`,class:"d-block btn btn-outline-primary p-3 fw-bold",role:"button"},e.toDisplayString(r.option.text),9,sl)]),_:1},8,["modelValue","options","name","id","disabled","required"])]))}}),cl=["id","name","multiple","accept","disabled"],dl={class:"input__input-group input-group"},ul=["value","id","name","disabled"],ml=["for","disabled"],fl={class:"btn btn-outline-contrast"},pl=["for"],gl=["innerHTML"],Pe=e.defineComponent({__name:"input-file",props:{modelValue:{type:Array,default:[]},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null},multiple:{type:Boolean,default:!1},accept:{type:String},maxFileSize:{type:Number,default:0},dropzone:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d;function n(c){const u=c.target&&c.target.files;u&&(i.splice(0,i.length),Array.from(u).forEach(A=>{if(l.maxFileSize&&A.size>l.maxFileSize){console.warn(`File ${A.name} exceeds the ${l.maxFileSize} bytes size limit and will not be added.`);return}i.push(A)}))}const a=e.ref(),i=e.reactive([]),r=e.computed(()=>i&&i.map(c=>c.name));return e.watch(()=>l.modelValue,(c,u)=>{c.length===0&&(a.value.value=null)},{deep:!0}),e.watch(()=>i,(c,u)=>{o("update:modelValue",c)},{deep:!0}),(c,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input input-file","input-file--primary"])},[e.createElementVNode("input",{ref_key:"input",ref:a,type:"file",id:t.id,name:t.name,class:"d-none",onChange:n,multiple:t.multiple,accept:t.accept,disabled:t.disabled},null,40,cl),e.createElementVNode("div",dl,[e.renderSlot(c.$slots,"input-prepend"),e.createElementVNode("input",{type:"text",value:r.value,id:t.id,name:t.name,class:"form-control",disabled:t.disabled},null,8,ul),e.renderSlot(c.$slots,"input-append",{},()=>[e.createElementVNode("label",{for:t.id,disabled:t.disabled},[e.renderSlot(c.$slots,"button",{},()=>[e.createElementVNode("span",fl,e.toDisplayString(c.$t("common.selectFile")),1)])],8,ml)])]),e.createElementVNode("label",{for:t.id},[e.renderSlot(c.$slots,"label",{},()=>[e.createElementVNode("span",{class:"input__label",innerHTML:e.unref(H)(`${t.label}${t.required?" *":""}`)},null,8,gl)])],8,pl)]))}}),hl={key:0,class:"custom-html"},yl=["innerHTML"],bl=e.defineComponent({__name:"custom-html",props:{content:{}},setup(t){const d=e.ref(!1);return e.onMounted(()=>{window!==void 0&&(d.value=!0)}),(l,o)=>d.value?(e.openBlock(),e.createElementBlock("div",hl,[e.renderSlot(l.$slots,"default",{},()=>[e.createElementVNode("div",{class:"custom-html__content",innerHTML:t.content},null,8,yl)])])):e.createCommentVNode("",!0)}}),kl={class:"select-media"},wl=["for"],Bl=e.defineComponent({__name:"select-media",props:{modelValue:{type:null,default:""},assets:{type:Array,default:[]},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},emitKey:{type:String,default:"src"}},emits:["update:modelValue","update:selection"],setup(t,{emit:d}){const l=t,o=d,n=e.computed({get(){return l.modelValue},set(a){const i=l.assets.find(r=>r.id===a);o("update:modelValue",l.emitKey?i[l.emitKey]:i),l.emitKey&&l.emitKey!=="id"&&o("update:selection",i.id)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",kl,[e.createVNode(Be,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),options:t.assets.map(r=>r.id),name:t.name,id:t.id,disabled:t.disabled,required:t.required,class:"d-flex flex-wrap flex-row justify-content-center",itemClass:"col-6 p-2"},{"option-label":e.withCtx(r=>[e.createElementVNode("label",{for:`${t.id}-${r.index}`,class:e.normalizeClass(["w-100",{"is-active":t.assets[r.index].id===n.value}]),role:"button"},[t.assets[r.index].thumbnail?(e.openBlock(),e.createBlock(oe,{key:0,src:t.assets[r.index].thumbnail,alt:t.assets[r.index].id},null,8,["src","alt"])):e.createCommentVNode("",!0)],10,wl)]),_:1},8,["modelValue","options","name","id","disabled","required"])]))}}),Cl={class:"rte-editor"},Vl={key:0,class:"rte-editor__controls mb-2"},El=["disabled"],$l=["disabled"],Sl={class:"btn-group"},Nl=["disabled"],Ml=["disabled"],Dl={class:"btn-group"},vl={class:"dropdown"},Ll={class:"btn dropdown-toggle btn-light","data-bs-toggle":"dropdown",role:"button",type:"button"},Il={class:"dropdown-menu"},Pl={class:"dropdown"},Tl={class:"btn dropdown-toggle btn-light","data-bs-toggle":"dropdown",role:"button",type:"button"},xl={class:"dropdown-menu"},zl={class:"btn-group"},Ql=["disabled"],Rl=["disabled"],Fl=e.defineComponent({__name:"rte-editor",props:{modelValue:{type:String,default:""},disabled:{type:Boolean,default:!1},iconBasePath:{type:String,default:"/rte-icons-defs.svg"}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.ref(!1),a=e.shallowRef(void 0),i=e.shallowRef(null);e.onMounted(async()=>{const[{Editor:A,mergeAttributes:s},{EditorContent:m},{default:f},{default:h},{default:b},{default:E},{default:y}]=await Promise.all([import("@tiptap/core"),import("@tiptap/vue-3"),import("@tiptap/extension-highlight"),import("@tiptap/extension-text-align"),import("@tiptap/extension-link"),import("@tiptap/starter-kit"),import("@tiptap/extension-bold")]);i.value=m,a.value=new A({content:l.modelValue,onUpdate:()=>{o("update:modelValue",a.value?.getHTML())},extensions:[E.configure({bold:!1,link:!1}),y.extend({addAttributes(){return{class:{default:null}}},parseHTML(){return[{tag:"strong"},{tag:"b"}]},renderHTML({HTMLAttributes:g}){return["strong",s(this.options.HTMLAttributes,g),0]}}),h.configure({types:["heading","paragraph"]}),f,b.extend({addAttributes(){return{...this.parent?.(),class:{default:null},id:{default:null},title:{default:null}}},parseHTML(){return[{tag:"a[href]",getAttrs:g=>({href:g.getAttribute("href"),target:g.getAttribute("target"),rel:g.getAttribute("rel"),class:g.getAttribute("class"),id:g.getAttribute("id"),title:g.getAttribute("title")})},{tag:"a:not([href])",getAttrs:g=>({href:null,target:g.getAttribute("target"),rel:g.getAttribute("rel"),class:g.getAttribute("class"),id:g.getAttribute("id"),title:g.getAttribute("title")})}]},renderHTML({HTMLAttributes:g}){if(!g.href){const{href:B,target:M,rel:w,...D}=g;return["a",s(D),0]}return["a",s(this.options.HTMLAttributes,g),0]}}).configure({openOnClick:!1,autolink:!0,defaultProtocol:"https",protocols:["http","https"],HTMLAttributes:{target:"_blank",rel:"noopener noreferrer"}})]})}),e.onBeforeUnmount(()=>{a.value?.destroy()}),e.watch(()=>l.modelValue,(A,s)=>{if(a.value){if(a.value.getHTML()===A)return;a.value.commands.setContent(A)}});function r(){const A=a.value?.getAttributes("link").href,s=window.prompt("URL",A);if(s!==null){if(s===""){a.value?.chain().focus().extendMarkRange("link").unsetLink().run();return}try{a.value?.chain().focus().extendMarkRange("link").setLink({href:s}).run()}catch(m){alert(m.message)}}}const c=()=>{a.value?.commands.setContent(`<textarea>${a.value.getHTML()}</textarea>`),n.value=!0},u=()=>{a.value?.commands.setContent(a.value.getText()),n.value=!1};return(A,s)=>(e.openBlock(),e.createElementBlock("div",Cl,[a.value?(e.openBlock(),e.createElementBlock("div",Vl,[n.value?(e.openBlock(),e.createElementBlock("button",{key:1,class:"btn btn-sm btn-light is-active",onClick:u,disabled:!a.value.can().chain().focus().toggleCode().run(),title:"Toggle Source"},[e.createVNode(N,{symbol:"source","base-path":t.iconBasePath},null,8,["base-path"])],8,$l)):(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("code")}]),onClick:c,disabled:!a.value.can().chain().focus().toggleCode().run(),title:"Toggle Source"},[e.createVNode(N,{symbol:"source","base-path":t.iconBasePath},null,8,["base-path"])],10,El)),e.createElementVNode("div",Sl,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("bold")}]),onClick:s[0]||(s[0]=m=>a.value?.chain().focus().toggleBold().run()),disabled:!a.value.can().chain().focus().toggleBold().run(),title:"Toggle Bold"},[e.createVNode(N,{symbol:"bold","base-path":t.iconBasePath},null,8,["base-path"])],10,Nl),e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("italic")}]),onClick:s[1]||(s[1]=m=>a.value?.chain().focus().toggleItalic().run()),disabled:!a.value.can().chain().focus().toggleItalic().run(),title:"Toggle Italic"},[e.createVNode(N,{symbol:"italic","base-path":t.iconBasePath},null,8,["base-path"])],10,Ml)]),e.createElementVNode("div",Dl,[e.createElementVNode("div",vl,[e.createElementVNode("button",Ll,[a.value.isActive("heading",{level:1})?(e.openBlock(),e.createBlock(N,{key:0,symbol:"h1","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive("heading",{level:2})?(e.openBlock(),e.createBlock(N,{key:1,symbol:"h2","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive("heading",{level:3})?(e.openBlock(),e.createBlock(N,{key:2,symbol:"h3","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive("heading",{level:4})?(e.openBlock(),e.createBlock(N,{key:3,symbol:"h4","base-path":t.iconBasePath},null,8,["base-path"])):(e.openBlock(),e.createBlock(N,{key:4,symbol:"headline","base-path":t.iconBasePath},null,8,["base-path"]))]),e.createElementVNode("ul",Il,[e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("heading",{level:1})}]),onClick:s[2]||(s[2]=m=>a.value?.chain().focus().setHeading({level:1}).run()),title:"Set Heading 1"},[e.createVNode(N,{symbol:"h1","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("heading",{level:2})}]),onClick:s[3]||(s[3]=m=>a.value?.chain().focus().setHeading({level:2}).run()),title:"Set Heading 2"},[e.createVNode(N,{symbol:"h2","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("heading",{level:3})}]),onClick:s[4]||(s[4]=m=>a.value?.chain().focus().setHeading({level:3}).run()),title:"Set Heading 3"},[e.createVNode(N,{symbol:"h3","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("heading",{level:4})}]),onClick:s[5]||(s[5]=m=>a.value?.chain().focus().setHeading({level:4}).run()),title:"Set Heading 4"},[e.createVNode(N,{symbol:"h4","base-path":t.iconBasePath},null,8,["base-path"])],2)])])]),e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("paragraph")}]),onClick:s[6]||(s[6]=m=>a.value?.chain().focus().setParagraph().run()),title:"Set Paragraph"},[e.createVNode(N,{symbol:"paragraph","base-path":t.iconBasePath},null,8,["base-path"])],2),e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("bulletList")}]),onClick:s[7]||(s[7]=m=>a.value?.chain().focus().toggleBulletList().run()),title:"Toggle Bullet List"},[e.createVNode(N,{symbol:"list","base-path":t.iconBasePath},null,8,["base-path"])],2),e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("orderedList")}]),onClick:s[8]||(s[8]=m=>a.value?.chain().focus().toggleOrderedList().run()),title:"Toggle Ordered List"},[e.createVNode(N,{symbol:"ordered-list","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("div",Pl,[e.createElementVNode("button",Tl,[a.value.isActive({textAlign:"center"})?(e.openBlock(),e.createBlock(N,{key:0,symbol:"align-center","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive({textAlign:"left"})?(e.openBlock(),e.createBlock(N,{key:1,symbol:"align-left","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive({textAlign:"right"})?(e.openBlock(),e.createBlock(N,{key:2,symbol:"align-right","base-path":t.iconBasePath},null,8,["base-path"])):(e.openBlock(),e.createBlock(N,{key:3,symbol:"align-justify","base-path":t.iconBasePath},null,8,["base-path"]))]),e.createElementVNode("ul",xl,[e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive({textAlign:"left"})}]),onClick:s[9]||(s[9]=m=>a.value?.chain().focus().setTextAlign("left").run())},[e.createVNode(N,{symbol:"align-left","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive({textAlign:"center"})}]),onClick:s[10]||(s[10]=m=>a.value?.chain().focus().setTextAlign("center").run())},[e.createVNode(N,{symbol:"align-center","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive({textAlign:"right"})}]),onClick:s[11]||(s[11]=m=>a.value?.chain().focus().setTextAlign("right").run())},[e.createVNode(N,{symbol:"align-right","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive({textAlign:"pretty"})}]),onClick:s[12]||(s[12]=m=>a.value?.chain().focus().setTextAlign("right").run())},[e.createVNode(N,{symbol:"align-justify","base-path":t.iconBasePath},null,8,["base-path"])],2)])])]),a.value.isActive("link")?(e.openBlock(),e.createElementBlock("button",{key:3,class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("link")}]),onClick:s[13]||(s[13]=m=>a.value.chain().focus().unsetLink().run()),title:"Unset Link"},[e.createVNode(N,{symbol:"unlink","base-path":t.iconBasePath},null,8,["base-path"])],2)):(e.openBlock(),e.createElementBlock("button",{key:2,class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("link")}]),onClick:r,title:"Set Link"},[e.createVNode(N,{symbol:"link","base-path":t.iconBasePath},null,8,["base-path"])],2)),e.createElementVNode("div",zl,[e.createElementVNode("button",{class:"btn btn-sm btn-light",onClick:s[14]||(s[14]=m=>a.value?.chain().focus().undo().run()),disabled:!a.value.can().chain().focus().undo().run(),title:"Undo"},[e.createVNode(N,{symbol:"undo","base-path":t.iconBasePath},null,8,["base-path"])],8,Ql),e.createElementVNode("button",{class:"btn btn-sm btn-light",onClick:s[15]||(s[15]=m=>a.value?.chain().focus().redo().run()),disabled:!a.value.can().chain().focus().redo().run(),title:"Redo"},[e.createVNode(N,{symbol:"redo","base-path":t.iconBasePath},null,8,["base-path"])],8,Rl)])])):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.value),{class:"rte-editor__content",editor:a.value},null,8,["editor"]))]))}}),Ol={class:"input-color"},Hl={class:"base-input__color-swatch"},Wl=["name","id","disabled","read-only","required","aria-label"],Ul=e.defineComponent({__name:"input-color",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.computed({get(){return l.modelValue},set(a){o("update:modelValue",a)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",Ol,[e.createVNode(Ae,{modelValue:n.value,"onUpdate:modelValue":i[1]||(i[1]=r=>n.value=r),type:t.type==="color"?"text":t.type,id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,label:t.label,disabled:t.disabled,"read-only":t.readOnly,required:t.required,maxlength:t.maxlength},{"input-append":e.withCtx(r=>[e.createElementVNode("span",Hl,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":i[0]||(i[0]=c=>n.value=c),type:"color",name:`${t.name}-color`,id:`${t.id}-color`,disabled:t.disabled,"read-only":t.readOnly,required:t.required,class:"form-control","aria-label":t.label},null,8,Wl),[[e.vModelText,n.value]])])]),_:1},8,["modelValue","type","id","name","placeholder","pattern","label","disabled","read-only","required","maxlength"])]))}}),ql={class:"color-palette"},jl=["for"],_l=e.defineComponent({__name:"color-palette",props:{modelValue:{type:[String],default:""},colors:{type:Array,default:["#000000","#FFFFFF"]},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.computed({get(){return l.modelValue},set(a){o("update:modelValue",a)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",ql,[e.createVNode(Be,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),options:t.colors,name:t.name,id:t.id,label:t.label,disabled:t.disabled,required:t.required,class:"d-flex flex-wrap flex-row gap-2"},{"option-label":e.withCtx(r=>[e.createElementVNode("label",{for:`${t.id}-${r.index}`,class:"d-block rounded-circle",style:e.normalizeStyle({backgroundColor:r.option})},null,12,jl)]),_:1},8,["modelValue","options","name","id","label","disabled","required"])]))}}),Jl=["id"],Gl=["for","innerHTML"],Yl={class:"dropdown"},Zl={class:"caption"},Kl=["innerHTML"],Xl={class:"caption__text"},eo={class:"d-block text-truncate"},to={class:"dropdown-menu"},ao={class:"form-check d-flex"},no=["value","id","name","label","required","disabled"],lo=["value","id","name","label","required","disabled"],oo=["for"],Te=e.defineComponent({__name:"input-dropdown",props:{id:{type:String},name:{type:String,default:()=>`dropdown-${I()}`},label:{type:String},error:{type:String},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},modelValue:{type:null},options:{type:Array,required:!0},multiple:{type:Boolean,default:!1},showSelectionCount:{type:Boolean,default:!1},toggleCaption:{type:String},placeholder:{type:String,default:""},icon:{default:"chevron-down",type:String},variant:{type:String,default:""},color:{type:String,default:""},outlined:{type:Boolean,default:!1},exactMatch:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:d}){const{t:l}=De.useI18n(),o=t,n=d,a=e.computed({get(){return o.multiple&&!o.modelValue?[]:o.modelValue},set(c){n("update:modelValue",c)}}),i=e.computed(()=>o.options&&o.options.map(c=>(c=typeof c=="string"?{text:c,value:c}:c,{...c,active:o.modelValue&&c.value&&(o.exactMatch?o.modelValue===c.value:o.multiple?o.modelValue.includes(c.value):o.modelValue===c.value)}))),r=e.computed(()=>{if(!o.modelValue)return o.placeholder||`${l("common.select")}`;if(o.multiple&&Array.isArray(o.modelValue)&&o.modelValue.length)return i.value.reduce((c,u)=>o.modelValue.includes(u.value)?`${c}${c?", ":""}${u.text}`:c,"");if(!o.multiple){const c=i.value.find(u=>typeof u.value=="object"&&u.value!==null?JSON.stringify(u.value)===JSON.stringify(o.modelValue):u.value===o.modelValue);return c?c.text:o.placeholder||`${l("common.select")}`}return o.placeholder||`${l("common.select")}`});return(c,u)=>(e.openBlock(),e.createElementBlock("div",{class:"input input-dropdown",id:`${t.id||t.name}`},[e.renderSlot(c.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:`${t.id||t.name}--dropdown-toggle`,class:"input__label",innerHTML:`${t.label}${t.required?" *":""}`},null,8,Gl)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Yl,[e.createVNode(We,{id:`${t.id||t.name}--dropdown-toggle`,"data-bs-toggle":"dropdown",role:"button",type:"button",title:r.value,class:"btn dropdown-toggle",color:t.color,outlined:t.outlined,disabled:t.disabled},{default:e.withCtx(()=>[e.createElementVNode("span",Zl,[e.createVNode(e.Transition,{name:"bounce"},{default:e.withCtx(()=>[t.showSelectionCount&&t.modelValue.length?(e.openBlock(),e.createElementBlock("i",{key:0,class:"caption__count",innerHTML:t.modelValue.length},null,8,Kl)):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("span",Xl,[e.createElementVNode("span",eo,e.toDisplayString(t.toggleCaption||r.value),1)])])]),_:1},8,["id","title","color","outlined","disabled"]),e.createElementVNode("ul",to,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,(A,s)=>(e.openBlock(),e.createElementBlock("li",{key:`${A.value}-${s}`},[e.createElementVNode("div",{class:e.normalizeClass(["dropdown-item",A.active&&"active"])},[e.createElementVNode("div",ao,[t.multiple?e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"checkbox","onUpdate:modelValue":u[0]||(u[0]=m=>a.value=m),value:A.value,key:`${t.name}-${A.value}-${s}__if`,id:`${t.name}-${A.value}-${s}`,name:t.name,label:A.text,required:t.required,disabled:A.selectable===!1,class:"form-check-input"},null,8,no)),[[e.vModelCheckbox,a.value]]):e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"radio","onUpdate:modelValue":u[1]||(u[1]=m=>a.value=m),value:A.value,key:`${t.name}-${A.value}-${s}__else`,id:`${t.name}-${A.value}-${s}`,name:t.name,label:A.text,required:t.required,disabled:A.selectable===!1,class:"form-check-input visually-hidden"},null,8,lo)),[[e.vModelRadio,a.value]]),e.createElementVNode("label",{class:"form-check-label flex-grow-1",onclick:"event.stopPropagation",for:`${t.name}-${A.value}-${s}`},e.toDisplayString(A.text),9,oo)])],2)]))),128))])])],8,Jl))}}),io={key:0,class:"auto-suggest__suggestions position-relative"},ro={class:"suggestions dropdown-menu show w-100 mt-2"},so=["onClick"],Ao=["innerHTML"],_e=e.defineComponent({__name:"auto-suggest",props:{modelValue:{type:String},id:{type:String},name:{type:String},label:{type:String},error:{type:String},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},options:{type:Array,default:[]},placeholder:{type:String,default:""},color:{type:String,default:""},outlined:{type:Boolean,default:!1},selection:{type:String}},emits:["update:modelValue","update:selection"],setup(t,{emit:d}){const l=t,o=d,n=e.ref(),a=e.ref(!1),i=e.computed({get(){return l.modelValue},set(f){o("update:modelValue",f)}}),r=e.computed(()=>{const f=new RegExp(`(${i.value})`,"i");return i.value?l.options.filter(h=>f.test(h)):l.options}),c=e.computed(()=>{const f=new RegExp(`(${i.value})`,"i");return r.value.map(h=>{const b=h.replace(f,"<strong>$1</strong>");return H(b)})});e.watch(()=>l.options,(f,h)=>{f.length&&(a.value=!0)},{deep:!0});function u(){l.options.length&&(a.value=!0)}function A(f){a.value=!1;const h=r.value[f];o("update:modelValue",h),o("update:selection",h)}const s=e.ref();function m(f){const h=f.target;a.value&&h&&!n.value.contains(h)&&(a.value=!1)}return e.onBeforeMount(()=>{s.value=document.addEventListener("click",m)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",s.value)}),(f,h)=>(e.openBlock(),e.createElementBlock("div",{class:"auto-suggest",ref_key:"container",ref:n},[e.createElementVNode("div",{class:"auto-suggest__input",onFocusCapture:u},[e.renderSlot(f.$slots,"default",{},()=>[e.createVNode(Ae,e.mergeProps({modelValue:i.value,"onUpdate:modelValue":h[0]||(h[0]=b=>i.value=b)},f.$props),null,16,["modelValue"])])],32),a.value&&r.value.length?(e.openBlock(),e.createElementBlock("div",io,[e.createElementVNode("ul",ro,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(b,E)=>(e.openBlock(),e.createElementBlock("li",{key:b,class:"suggestions__item dropdown-item",onClick:e.withModifiers(y=>A(E),["prevent"])},[e.createElementVNode("p",{class:"text-truncate my-2",innerHTML:b},null,8,Ao)],8,so))),128))])])):e.createCommentVNode("",!0)],512))}});function Je(t){const d=e.computed(()=>{if(!t.tintColor)return null;const i=t.tintColor.replace("#",""),r=parseInt(i.substring(0,2),16),c=parseInt(i.substring(2,4),16),u=parseInt(i.substring(4,6),16);return{r,g:c,b:u}});function l(i,r,c){if(t.filter==="none"&&!t.tintColor)return;const u=i.getImageData(0,0,r,c),A=u.data;if(t.filter==="grayscale")for(let s=0;s<A.length;s+=4){const m=.299*A[s]+.587*A[s+1]+.114*A[s+2];A[s]=m,A[s+1]=m,A[s+2]=m}else if(t.filter==="sepia")for(let s=0;s<A.length;s+=4){const m=A[s],f=A[s+1],h=A[s+2];A[s]=Math.min(255,.393*m+.769*f+.189*h),A[s+1]=Math.min(255,.349*m+.686*f+.168*h),A[s+2]=Math.min(255,.272*m+.534*f+.131*h)}if(t.tintColor&&d.value){const{r:s,g:m,b:f}=d.value,h=t.tintIntensity;for(let b=0;b<A.length;b+=4){const E=A[b],y=A[b+1],g=A[b+2],B=E*s/255,M=y*m/255,w=g*f/255;A[b]=E+(B-E)*h,A[b+1]=y+(M-y)*h,A[b+2]=g+(w-g)*h}}i.putImageData(u,0,0)}async function o(i){if(typeof i!="string")return i.complete&&i.naturalWidth>0||await new Promise((c,u)=>{i.onload=()=>c(),i.onerror=()=>u(new Error("Failed to load image element"))}),i;const r=new Image;return await new Promise((c,u)=>{r.onload=()=>c(),r.onerror=()=>u(new Error("Failed to load image source")),r.src=i}),r}async function n(i,r={}){const c=await o(i),u=document.createElement("canvas"),A=r.width||c.naturalWidth||c.width,s=r.height||c.naturalHeight||c.height;u.width=A,u.height=s;const m=u.getContext("2d");if(!m)throw new Error("Could not create canvas context");return m.drawImage(c,0,0,A,s),l(m,A,s),u.toDataURL(r.mimeType||"image/png",r.quality)}async function a(i,r={}){const c=await n(i,r);return(await fetch(c)).blob()}return{tintRgb:d,applyFilterToCanvas:l,applyFilterToImage:n,applyFilterToImageBlob:a}}const co={class:"zoom-slider"},uo=["min","max","step","value"],mo={class:"zoom-slider__ticks"},fo={name:"ZoomSlider",inheritAttrs:!1},po=e.defineComponent({...fo,props:{modelValue:{type:Number,default:1},min:{type:Number,default:1},max:{type:Number,default:2},step:{type:Number,default:.01},ticks:{type:Number,default:51}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.computed(()=>l.ticks),a=e.computed(()=>Math.round((l.ticks-1)/2)),i=e.computed(()=>Math.round((l.ticks-1)/10));function r(c){o("update:modelValue",parseFloat(c.target.value))}return(c,u)=>(e.openBlock(),e.createElementBlock("div",co,[e.createElementVNode("input",{type:"range",min:t.min,max:t.max,step:t.step,value:t.modelValue,onInput:r,"aria-label":"Zoom"},null,40,uo),e.createElementVNode("div",mo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,A=>(e.openBlock(),e.createElementBlock("span",{key:A,class:e.normalizeClass(["zoom-slider__tick",{"zoom-slider__tick--major":(A-1)%a.value===0,"zoom-slider__tick--mid":(A-1)%i.value===0&&(A-1)%a.value!==0}])},null,2))),128))])]))}}),go="data:image/png;base64,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",ho={class:"camera__preview"},yo={key:0,class:"camera__bg-notification"},bo=["innerHTML"],ko=["width","height"],wo={key:1,class:"camera__countdown-overlay"},Bo=["innerHTML","data-countdown"],Co=["src"],Vo={key:3,class:"camera__zoom-slider"},Eo={class:"camera__controls"},$o={class:"container"},So={class:"row"},No={class:"col"},Mo={class:"btn-group"},Do={key:0},vo={key:1},Lo={key:0,class:"camera__select-device"},Io={class:"col"},Po={class:""},To={name:"BaseCamera",inheritAttrs:!1},Ge={"1x1":{width:720,height:720},"2x3":{width:720,height:1080},"3x2":{width:1080,height:720},"3x4":{width:720,height:960},"4x3":{width:960,height:720},"4x5":{width:960,height:1200},"5x4":{width:1200,height:960},"16x9":{width:1280,height:720},"9x16":{width:720,height:1280}},xo=e.defineComponent({...To,props:{modelValue:{type:null},enableSwitchCamera:{type:Boolean,default:!0},defaultRearCamera:{type:Boolean,default:!1},enableMirrorCamera:{type:Boolean,default:!1},enableGuide:{type:Boolean,default:!0},guideSrc:{type:String,default:()=>go},countdown:{type:Number,default:0},ratio:{type:String,default:""},filter:{type:String,default:"none",validator:t=>["none","grayscale","sepia"].includes(t)},tintColor:{type:String,default:""},tintIntensity:{type:Number,default:.3},enableAudio:{type:Boolean,default:!1},enableSelectDevice:{type:Boolean,default:!1},enableCropImage:{type:Boolean,default:!0},resolutions:{type:Object,default:()=>Ge},zoom:{type:Number,default:1},enableZoomSlider:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{expose:d,emit:l}){const o=t,n=l,a=e.ref(),i=e.ref(),r=e.ref(!1),c=e.ref([]),u=e.ref(),A=e.ref(),s=e.ref(!1),m=e.ref(!1),f=e.ref(0),h=e.ref(0),b=e.ref(),E=e.ref(o.zoom||1),y=e.computed(()=>({...Ge,...o.resolutions})),g=e.computed(()=>Object.values(y.value)[0]);function B($){return String($||"").trim().toLowerCase().replace(/\s+/g,"").replace(/[:/]/g,"x")}const M=e.computed(()=>{if(y.value[o.ratio])return o.ratio;const $=B(o.ratio);if(y.value[$])return $}),w=e.computed(()=>M.value?y.value[M.value]:g.value),D=e.computed(()=>{const $=M.value?y.value[M.value]:void 0;return $?`${$.width} / ${$.height}`:void 0}),R=e.computed(()=>c.value.filter($=>$.kind==="videoinput")),ae=e.computed(()=>c.value.filter($=>$.kind==="audioinput")),K=e.computed(()=>R.value.map(($,L)=>({text:$.label.slice(0,$.label.indexOf("("))||`Camera ${L+1}`,value:$.deviceId}))),ie=e.computed({get(){return u.value&&u.value.deviceId},set($){u.value=R.value.find(L=>L.deviceId===$)}});e.computed({get(){return A.value&&A.value.deviceId},set($){A.value=ae.value.find(L=>L.deviceId===$)}});const ne=e.computed(()=>{const $=u.value&&R.value.findIndex(L=>L.deviceId===u.value.deviceId);return o.enableMirrorCamera&&$===0?"mirror-cam":""}),me=e.computed(()=>{const $=u.value&&c.value.findIndex(L=>L.deviceId===u.value.deviceId);return ne.value?`${ne.value} mirror-device-${$}`:""}),{tintRgb:x,applyFilterToCanvas:ce}=Je(o);function V(){if(M.value&&w.value){f.value=w.value.width,h.value=w.value.height;return}f.value=a.value.parentElement&&a.value.parentElement.clientWidth,h.value=a.value.parentElement&&a.value.parentElement.clientHeight}const v=ve.debounce(()=>{V()},300,{trailing:!0,leading:!1});async function T(){const $=w.value?{width:w.value.width,height:w.value.height}:void 0,L=$?$.width/$.height:void 0,q={audio:o.enableAudio&&{...A.value?{deviceId:A.value.deviceId}:{}},video:{...u.value?{deviceId:u.value.deviceId}:{},width:{ideal:$?.width},...M.value&&$?.height?{height:{ideal:$.height}}:{},...M.value&&L?{aspectRatio:{ideal:L}}:{}}};return navigator.mediaDevices.getUserMedia(q).catch(de=>{console.error(de,"navigator.mediaDevices.getUserMedia: failed")})}function F(){a.value&&a.value.srcObject&&a.value.srcObject.getTracks().forEach(L=>{L.stop()})}async function J(){return a.value.srcObject=await T(),c.value=await navigator.mediaDevices.enumerateDevices(),{stream:a.value.srcObject,devices:c.value}}function fe(){s.value?(s.value=!1,m.value=!1,F()):(s.value=!0,J())}function Ve(){if(c.value.length>1){F();const $=R.value.findIndex(L=>L.deviceId===u.value.deviceId);u.value=R.value[$===R.value.length-1?0:$+1],J()}}async function Ee($,L){F(),$&&(!L||$.deviceId!==L.deviceId)&&await J()}e.watch(()=>u.value,Ee),e.watch(()=>A.value,Ee);function pe(){o.countdown?(b.value=b.value?b.value-1:o.countdown,b.value?setTimeout(pe,1e3):Q()):Q()}d({onCapture:pe,camera:a.value,zoom:E});function Q(){m.value=!0;const $=i.value.getContext("2d"),L=a.value,q=L&&L.srcObject&&L.srcObject.getTracks(),{aspectRatio:de,width:re,height:$e}=q.length&&q[0].getSettings(),j=L?.videoWidth||re||f.value,G=L?.videoHeight||$e||h.value,_=j&&G?j/G:de,Se=w.value||{width:j,height:G},ge=Se?.width||j,Ne=M.value?Se?.height||G:Math.round(ge/_),X=ge/Ne;if(i.value.width=ge,i.value.height=Ne,!j||!G||!_)return;if($.save(),ne.value&&($.translate(i.value.width,0),$.scale(-1,1)),o.enableCropImage){let Y=0,ee=0,O=j,Z=G;if(_>X?(O=G*X,Y=(j-O)/2):_<X&&(Z=j/X,ee=(G-Z)/2),E.value&&E.value!==1){const se=O/E.value,le=Z/E.value;Y+=(O-se)/2,ee+=(Z-le)/2,O=se,Z=le}$.drawImage(L,Y,ee,O,Z,0,0,i.value.width,i.value.height)}else{let Y=i.value.width,ee=i.value.height,O=0,Z=0;if(_>X?(ee=i.value.width/_,Z=(i.value.height-ee)/2):_<X&&(Y=i.value.height*_,O=(i.value.width-Y)/2),E.value&&E.value!==1){const se=j/E.value,le=G/E.value,p=(j-se)/2,k=(G-le)/2;ne.value&&(O=i.value.width-O-Y),$.drawImage(L,p,k,se,le,O,Z,Y,ee)}else ne.value&&(O=i.value.width-O-Y),$.drawImage(L,0,0,j,G,O,Z,Y,ee)}$.restore(),ce($,i.value.width,i.value.height);const he=i.value.toDataURL("image/png");z(he)}function z($){const L=Vt($);n("update:modelValue",{name:`cam-pic-${new Date().toISOString()}`,id:`cam-pic-${new Date().toISOString()}`,blob:L,size:L.size})}return e.onMounted(async()=>{F(),await J(),u.value=R.value[0],o.enableAudio&&(A.value=ae.value[0]),navigator.mediaDevices.addEventListener("devicechange",async $=>{await J()}),o.defaultRearCamera&&Ve(),fe(),window.addEventListener("resize",v),V(),await e.nextTick(),r.value=!0}),e.onBeforeUnmount(()=>{s.value=!1,m.value=!1,F(),window.removeEventListener("resize",v)}),($,L)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["camera",me.value])},[e.createElementVNode("div",ho,[r.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",yo,[e.createVNode(be,{color:"#000"},{default:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass("d-block text-center"),innerHTML:$.$t("camera.waitForCameraNotification")},null,8,bo)]),_:1})])),e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(["camera__video-wrapper",M.value?`aspect-ratio--${M.value}`:""]),style:e.normalizeStyle({aspectRatio:D.value||void 0,transform:E.value!==1?`scale(${E.value})`:void 0})},[e.createElementVNode("video",{ref_key:"camera",ref:a,class:"camera__video",style:e.normalizeStyle({filter:o.filter==="grayscale"?"grayscale(100%)":o.filter==="sepia"?"sepia(100%)":"none"}),autoplay:"",playsinline:""},null,4),t.tintColor?(e.openBlock(),e.createElementBlock("div",{key:0,class:"camera__tint-overlay",style:e.normalizeStyle({backgroundColor:t.tintColor,opacity:t.tintIntensity,mixBlendMode:"multiply"})},null,4)):e.createCommentVNode("",!0)],6),[[e.vShow,r.value]]),e.withDirectives(e.createElementVNode("canvas",{ref_key:"canvas",ref:i,class:"camera__canvas",width:f.value,height:h.value},null,8,ko),[[e.vShow,m.value]]),b.value?(e.openBlock(),e.createElementBlock("div",wo,[(e.openBlock(),e.createElementBlock("p",{class:"countdown",key:b.value,innerHTML:b.value,"data-countdown":b.value},null,8,Bo))])):e.createCommentVNode("",!0),t.enableGuide&&s.value&&r.value?(e.openBlock(),e.createElementBlock("img",{key:2,class:"camera__guide",src:t.guideSrc},null,8,Co)):e.createCommentVNode("",!0),t.enableZoomSlider?(e.openBlock(),e.createElementBlock("div",Vo,[e.createVNode(po,{modelValue:E.value,"onUpdate:modelValue":L[0]||(L[0]=q=>E.value=q)},null,8,["modelValue"])])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Eo,[e.createElementVNode("div",$o,[e.createElementVNode("div",So,[e.createElementVNode("div",No,[e.createElementVNode("div",Mo,[e.createElementVNode("button",{type:"button",class:"camera__toggle btn btn-primary",onClick:fe},[s.value?(e.openBlock(),e.createElementBlock("span",vo,e.toDisplayString($.$t("common.pause")),1)):(e.openBlock(),e.createElementBlock("span",Do,e.toDisplayString($.$t("common.play")),1))]),e.createElementVNode("button",{type:"button",class:"camera__capture btn btn-primary",onClick:pe},e.toDisplayString($.$t("camera.capture")),1)])])])])]),(t.enableSwitchCamera||t.enableSelectDevice)&&R.value&&R.value.length>1?(e.openBlock(),e.createElementBlock("div",Lo,[e.createElementVNode("div",Io,[e.createVNode(Te,{modelValue:ie.value,"onUpdate:modelValue":L[1]||(L[1]=q=>ie.value=q),options:K.value,class:"w-100"},null,8,["modelValue","options"])]),e.createElementVNode("div",Po,[t.enableSwitchCamera?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn",onClick:e.withModifiers(Ve,["prevent"])},[e.createVNode(N,{symbol:"switch-camera"})])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)],2))}}),zo={class:"base-map"},Qo={key:0,class:"base-map__label"},Ro={key:0,class:"base-map__hint"},Ye=e.defineComponent({__name:"base-map",props:{label:{type:String,default:""},modelValue:{type:Object,default:null},center:{type:Object,default:()=>({lat:48.8566,lng:2.3522})},zoom:{type:Number,default:13},markers:{type:Array,default:()=>[]},routeCoordinates:{type:Array,default:()=>[]},routeColor:{type:String,default:"#2563eb"},routeWeight:{type:Number,default:5},selectionRadius:{type:Number,default:0},selectionRadiusCenter:{type:Object,default:null},selectionRadiusColor:{type:String,default:"#2563eb"},selectionRadiusFillColor:{type:String,default:"#60a5fa"},selectionRadiusFillOpacity:{type:Number,default:.14},selectionRadiusOpacity:{type:Number,default:.65},selectionRadiusStrokeWeight:{type:Number,default:2},userLocation:{type:Object,default:null},userLocationLabel:{type:String,default:"Your location"},selectedLocationLabel:{type:String,default:"Selected location"},height:{type:String,default:"20rem"},interactive:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},showSelectedMarker:{type:Boolean,default:!0},helperText:{type:String,default:""},mapStyle:{type:String,default:"streets"},tileLayerUrl:{type:String,default:""},tileLayerAttribution:{type:String,default:""}},emits:["update:modelValue","update:center","update:zoom","map-click","marker-click"],setup(t,{emit:d}){function l(V,v){return v({className:"base-map__marker-wrapper",html:`<span class="base-map__marker-pin base-map__marker-pin--${V}"><span class="base-map__marker-core"></span></span>`,iconSize:[24,24],iconAnchor:[12,24],popupAnchor:[0,-20]})}const o={lat:48.8566,lng:2.3522},n={streets:{url:"https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'},light:{url:"https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png",attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors © <a href="https://carto.com/attributions">CARTO</a>'},dark:{url:"https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors © <a href="https://carto.com/attributions">CARTO</a>'},minimal:{url:"https://{s}.basemaps.cartocdn.com/light_nolabels/{z}/{x}/{y}{r}.png",attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors © <a href="https://carto.com/attributions">CARTO</a>'},popover:{url:"https://{s}.basemaps.cartocdn.com/rastertiles/voyager_nolabels/{z}/{x}/{y}{r}.png",attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors © <a href="https://carto.com/attributions">CARTO</a>'}},a=t,i=d,r=e.shallowRef(null),c=e.ref(null),u=e.ref(null),A=e.ref(a.zoom),s=e.ref(w(a.modelValue));e.onMounted(async()=>{if(typeof window>"u")return;const[V,v]=await Promise.all([import("@vue-leaflet/vue-leaflet"),import("leaflet")]);r.value=e.markRaw({LCircle:e.markRaw(V.LCircle),LMap:e.markRaw(V.LMap),LMarker:e.markRaw(V.LMarker),LPopup:e.markRaw(V.LPopup),LPolyline:e.markRaw(V.LPolyline),LTileLayer:e.markRaw(V.LTileLayer)}),c.value={list:l("list",v.divIcon),selected:l("selected",v.divIcon),search:l("search",v.divIcon),user:l("user",v.divIcon)}}),e.watch(()=>a.zoom,V=>{A.value=V}),e.watch(()=>a.modelValue,V=>{s.value=w(V)}),e.watch(()=>a.center,V=>{const v=w(V);v&&K(v)},{deep:!0}),e.watch(()=>[a.height,a.markers.length,a.routeCoordinates.length,a.center?.lat,a.center?.lng,a.modelValue?.lat,a.modelValue?.lng,a.userLocation?.lat,a.userLocation?.lng],()=>{ae()},{flush:"post"});const m=e.computed(()=>w(a.userLocation)),f=e.computed(()=>w(a.selectionRadiusCenter)||s.value),h=e.computed(()=>{const V=(a.markers||[]).map(v=>{const T=w(v);return T?{...v,...T,type:v.type||(s.value&&R(v,s.value)?"selected":"list")}:null}).filter(v=>!!v);return a.showSelectedMarker&&s.value&&!V.some(v=>R(v,s.value))&&V.push({id:"selected-location",label:a.selectedLocationLabel,type:"search",...s.value}),V}),b=e.computed(()=>(a.routeCoordinates||[]).map(V=>D(V)).filter(V=>!!V)),E=e.computed(()=>{const V=w(a.center)||s.value||w(a.markers[0])||o;return[V.lat,V.lng]}),y=e.computed(()=>{if(a.tileLayerUrl.trim())return a.tileLayerUrl;const V=a.mapStyle==="custom"?"streets":a.mapStyle;return n[V].url}),g=e.computed(()=>{if(a.tileLayerAttribution.trim())return a.tileLayerAttribution;const V=a.mapStyle==="custom"?"streets":a.mapStyle;return n[V].attribution});function B(V="list"){if(c.value)return c.value[V]||c.value.list}function M(V="list"){switch(V){case"user":return 450;case"selected":return 350;case"search":return 250;default:return 150}}function w(V){if(!V)return null;const v=Number(V.lat),T=Number(V.lng);return Number.isNaN(v)||Number.isNaN(T)?null:{lat:v,lng:T}}function D(V){if(Array.isArray(V)){const T=Number(V[0]),F=Number(V[1]);return Number.isFinite(T)&&Number.isFinite(F)?[T,F]:null}const v=w(V);return v?[v.lat,v.lng]:null}function R(V,v){const T=w(V),F=w(v);return!T||!F?!1:Math.abs(T.lat-F.lat)<1e-6&&Math.abs(T.lng-F.lng)<1e-6}async function ae(){await e.nextTick(),u.value?.invalidateSize()}function K(V){u.value?.panTo([V.lat,V.lng])}function ie(V){u.value=V,K(w(a.center)||s.value||o),ae()}function ne(V){A.value=V,i("update:zoom",V)}function me(V){const v=w(V);v&&(K(v),i("update:center",v))}function x(V){if(!a.interactive||a.disabled)return;const v={lat:Number(V.latlng.lat.toFixed(6)),lng:Number(V.latlng.lng.toFixed(6))};s.value=v,K(v),i("update:modelValue",v),i("update:center",v),i("map-click",v)}function ce(V){s.value={lat:Number(V.lat),lng:Number(V.lng)},K(s.value),i("update:modelValue",s.value),i("update:center",s.value),i("marker-click",V)}return(V,v)=>(e.openBlock(),e.createElementBlock("div",zo,[e.renderSlot(V.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",Qo,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["base-map__frame",{"base-map__frame--interactive":t.interactive&&!t.disabled,"base-map__frame--disabled":t.disabled}]),style:e.normalizeStyle({height:t.height}),"data-testid":"base-map"},[r.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value?.LMap),{key:0,class:"base-map__canvas","use-global-leaflet":!1,zoom:A.value,center:E.value,onReady:ie,onClick:x,"onUpdate:zoom":ne,"onUpdate:center":me},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LTileLayer),{url:y.value,attribution:g.value,"layer-type":"base",name:"OpenStreetMap"},null,8,["url","attribution"])),b.value.length>1?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LPolyline),{key:0,"lat-lngs":b.value,color:t.routeColor,weight:t.routeWeight},null,8,["lat-lngs","color","weight"])):e.createCommentVNode("",!0),f.value&&t.selectionRadius>0?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LCircle),{key:1,"lat-lng":[f.value.lat,f.value.lng],radius:t.selectionRadius,color:t.selectionRadiusColor,"fill-color":t.selectionRadiusFillColor,"fill-opacity":t.selectionRadiusFillOpacity,opacity:t.selectionRadiusOpacity,weight:t.selectionRadiusStrokeWeight},null,8,["lat-lng","radius","color","fill-color","fill-opacity","opacity","weight"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(T,F)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LMarker),{key:T.id??`${T.lat}-${T.lng}-${F}`,"lat-lng":[T.lat,T.lng],icon:B(T.type),"z-index-offset":M(T.type),onClick:J=>ce(T)},{default:e.withCtx(()=>[T.label?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LPopup),{key:0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(T.label),1)]),_:2},1024)):e.createCommentVNode("",!0)]),_:2},1032,["lat-lng","icon","z-index-offset","onClick"]))),128)),m.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LMarker),{key:`user-${m.value.lat}-${m.value.lng}`,"lat-lng":[m.value.lat,m.value.lng],icon:B("user"),"z-index-offset":M("user"),onClick:v[0]||(v[0]=T=>ce({id:"user-location",label:t.userLocationLabel,type:"user",...m.value}))},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LPopup),null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.userLocationLabel),1)]),_:1}))]),_:1},8,["lat-lng","icon","z-index-offset"])):e.createCommentVNode("",!0)]),_:1},40,["zoom","center"])):e.createCommentVNode("",!0)],6),t.interactive&&t.helperText?(e.openBlock(),e.createElementBlock("p",Ro,e.toDisplayString(t.helperText),1)):e.createCommentVNode("",!0)]))}}),Fo={class:"location-list","data-testid":"location-list"},Oo={key:0,class:"location-list__label"},Ho={key:1,class:"location-list__items"},Wo=["data-testid","onClick"],Uo={class:"location-list__title"},qo={key:0,class:"location-list__description"},jo={key:1,class:"location-list__distance"},_o={key:2,class:"location-list__empty"},Ze=e.defineComponent({__name:"location-list",props:{modelValue:{type:null,default:null},locations:{type:Array,default:()=>[]},label:{type:String,default:""},titleKey:{type:String,default:"title"},descriptionKey:{type:String,default:"address"},emptyText:{type:String,default:"No locations found."},showDistance:{type:Boolean,default:!0}},emits:["update:modelValue","select"],setup(t,{emit:d}){const l=t,o=d;function n(s){return s?.[l.titleKey]||s?.label||s?.name||"Location"}function a(s){return s?.[l.descriptionKey]||s?.description||s?.subtitle||""}function i(s,m=0){return s?typeof s!="object"?s:s.id??s.value??n(s)??m:m}function r(s,m=0){return`${i(s,m)}`.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function c(s,m=0){return i(l.modelValue)===i(s,m)}function u(s){return Number.isFinite(s)?s>=1e3?`${(s/1e3).toFixed(1)} km`:`${Math.round(s)} m`:"—"}function A(s){o("update:modelValue",s),o("select",s)}return(s,m)=>(e.openBlock(),e.createElementBlock("div",Fo,[t.label?(e.openBlock(),e.createElementBlock("p",Oo,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0),t.locations.length?(e.openBlock(),e.createElementBlock("div",Ho,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.locations,(f,h)=>(e.openBlock(),e.createElementBlock("button",{key:i(f,h),type:"button",class:e.normalizeClass(["location-list__item",{"location-list__item--active":c(f,h)}]),"data-testid":`location-option-${r(f,h)}`,onClick:b=>A(f)},[e.createElementVNode("strong",Uo,e.toDisplayString(n(f)),1),a(f)?(e.openBlock(),e.createElementBlock("small",qo,e.toDisplayString(a(f)),1)):e.createCommentVNode("",!0),t.showDistance&&f?.distance!==void 0&&f?.distance!==null?(e.openBlock(),e.createElementBlock("small",jo,e.toDisplayString(u(Number(f.distance)))+" away ",1)):e.createCommentVNode("",!0)],10,Wo))),128))])):(e.openBlock(),e.createElementBlock("p",_o,e.toDisplayString(t.emptyText),1))]))}});function Ke(t=null,d){const l=e.ref(!1),o=e.ref([]),n=e.ref([]),a=e.ref(!1),i=e.ref(!1),r=e.computed(()=>t.modelValue?.length?t.modelValue:t.src?[{type:"",src:t.src}]:n.value);async function c(b){const E=new FormData;E.append("file",b),l.value=!0;const g=await(t.customFetch||ye.ofetch)(t.endpoint,{method:"POST",...t.customFetch?{}:{headers:{Accept:"application/json",...t.authToken?{Authorization:`Bearer ${t.authToken}`}:{}}},body:E}).catch(M=>{console.error("Error",M)});return l.value=!1,`${t.baseResponsePath||"/api/v1/assets"}/${g.path}`}function u(b){const E=typeof b=="string"?parseInt(b,10):b,y=Array.isArray(t.modelValue)&&t.modelValue.length>0,g=Array.isArray(n.value)&&n.value.length>0;if(g&&E<n.value.length&&n.value.splice(E,1),y){const B=[...t.modelValue];E<B.length&&B.splice(E,1),d?.("update:modelValue",B),t.multiple||d?.("update:src",B[0]?.src||"")}else if(g){const B=t.multiple?n.value:n.value[0];d?.("update:modelValue",B),t.multiple||d?.("update:src",n.value[0]?.src||"")}else d?.("update:modelValue",t.multiple?[]:void 0),d?.("update:src","");o.value.splice(E,1),a.value=!1}function A(b){b.preventDefault(),i.value=!0}function s(b){b.preventDefault(),i.value=!1}function m(b){b.preventDefault(),i.value=!1;const E=b.dataTransfer,y=E&&Array.from(E.files||[]);o.value=y||[]}function f(){t.dropFiles&&(["dragenter","dragover"].forEach(b=>{document.body.addEventListener(b,A,!1)}),["dragleave","drop"].forEach(b=>{document.body.addEventListener(b,s,!1)}),document.body.addEventListener("drop",m,!1))}function h(){t.dropFiles&&(["dragenter","dragover"].forEach(b=>{document.body.removeEventListener(b,A,!1)}),["dragleave","drop"].forEach(b=>{document.body.removeEventListener(b,s,!1)}),document.body.removeEventListener("drop",m,!1))}return e.onMounted(()=>{f()}),e.onBeforeUnmount(()=>{h()}),{pending:l,files:o,dataUrls:n,imgLoaded:a,isDragging:i,thumbnails:r,uploadFile:c,removeFile:u,dragStart:A,dragStop:s,dragDrop:m,setupDragAndDrop:f,cleanupDragAndDrop:h}}const Jo=["src"],Go=["onClick"],Yo=["onClick"],Zo=["for"],Ko=["innerHTML"],Xo={key:0,class:"file-upload__loading-spinner"},Xe=e.defineComponent({__name:"file-upload",props:{modelValue:{type:Array,default:[]},src:{type:String},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null},multiple:{type:Boolean,default:!1},accept:{type:String},maxFileSize:{type:Number,default:0},endpoint:{type:String,default:""},toDataUrl:{type:Boolean,default:!0},authToken:{type:String,default:""},customFetch:null,baseResponsePath:{type:String,default:"/api/v1/assets"},enablePreview:{type:Boolean,default:!0},previewWidth:{type:Number,default:0},dropFiles:{type:Boolean,default:!1}},emits:["update:modelValue","update:src"],setup(t,{emit:d}){const l=t,o=d,{pending:n,files:a,dataUrls:i,isDragging:r,thumbnails:c,uploadFile:u,removeFile:A}=Ke(l,o);return e.watch(()=>a.value,async s=>{i.value=await Promise.all(s.map(async m=>({src:l.toDataUrl?await we(m):await u(m),type:m.type})))},{deep:!0}),e.watch(()=>i.value,async s=>{const m=l.multiple?s:s[0];o("update:modelValue",m),l.multiple||o("update:src",s[0]&&s[0].src)},{deep:!0}),(s,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["file-upload",{"has-dragging":t.dropFiles,"is-dragging":e.unref(r)}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),(f,h)=>(e.openBlock(),e.createElementBlock("div",{key:f.src,class:e.normalizeClass(t.enablePreview?"file-upload__thumbnail":"file-upload__reset")},[t.enablePreview?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("img",{src:`${f.src}${t.previewWidth?`?width=${t.previewWidth}`:""}`,class:"img-thumbnail rounded"},null,8,Jo),e.createElementVNode("button",{onClick:e.withModifiers(b=>e.unref(A)(h),["prevent"]),class:"btn btn--close"},[e.createVNode(N,{symbol:"x"})],8,Go)],64)):(e.openBlock(),e.createElementBlock("button",{key:1,onClick:e.withModifiers(b=>e.unref(A)(h),["prevent"]),class:"btn btn--close btn-outline-contrast"},[e.createVNode(N,{symbol:"x"})],8,Yo))],2))),128)),e.createVNode(Pe,{modelValue:e.unref(a),"onUpdate:modelValue":m[0]||(m[0]=f=>e.isRef(a)?a.value=f:null),id:t.id,name:t.name,accept:t.accept,"max-file-size":t.maxFileSize,class:"d-none"},null,8,["modelValue","id","name","accept","max-file-size"]),e.createElementVNode("label",{for:t.id,class:"file-upload__label"},[e.renderSlot(s.$slots,"button",{},()=>[e.createElementVNode("span",{class:"btn btn-outline-contrast",innerHTML:t.label||s.$t("common.selectFile")},null,8,Ko)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[e.unref(n)?(e.openBlock(),e.createElementBlock("span",Xo,[...m[1]||(m[1]=[e.createElementVNode("span",{class:"spinner-border",role:"status"},[e.createElementVNode("span",{class:"visually-hidden"},"Loading...")],-1)])])):e.createCommentVNode("",!0)]),_:1})],8,Zo)],2))}}),ei=["onDragenter","onDragover","onDragleave","onDragend","onDrop","innerHTML"],ti=["onDragstart","onDrag","onDragenter","onDragover","onDragleave","onDragend","onDrop"],ai={key:0,class:"sortable-list__drag-handle"},ni={type:"button",class:"btn",draggable:"true"},li={key:0,class:"sortable-list__item"},et=e.defineComponent({__name:"sortable-list",props:{modelValue:{type:Array,default:()=>[]},config:{type:Object,default:null},messages:{type:Object,default:{}},vertical:{type:Boolean,default:!0},showDragHandle:{type:Boolean,default:!1},showPreview:{type:Boolean,default:!0}},emits:["update:modelValue","update:isDragging","update:dragIndex","update:dragOverIndex"],setup(t,{emit:d}){const l=t,o=e.ref(!1),n=e.ref(null),a=e.ref(null),i=d,r=e.computed({get(){return l.modelValue},set(g){i("update:modelValue",g)}}),c=e.computed(()=>{const g=document.querySelector(".is-drag-item")?.outerHTML;return g?H(g):""}),u=e.useSlots(),A=e.computed(()=>u["list-append"]);function s(g,B){g.dataTransfer&&(g.dataTransfer.dropEffect="move",g.dataTransfer.effectAllowed="move",g.dataTransfer.setData("index",B.toLocaleString()),o.value=!0,n.value=B)}function m(g,B){o.value=!1,n.value=null,a.value=null}function f(g,B){}function h(g,B){a.value=n.value!==B?B:null}function b(g,B){a.value=n.value!==B?B:null}function E(g,B){}function y(g,B){if(g.dataTransfer){g.preventDefault();const M=Number(g.dataTransfer.getData("index")),w=B,D=[...r.value];(w||w===0)&&(M||M===0)&&D.splice(w,0,D.splice(M,1)[0]),r.value=D}}return e.watch(()=>o.value,g=>{i("update:isDragging",g)},{immediate:!0}),e.watch(()=>n.value,g=>{i("update:dragIndex",g)},{immediate:!0}),e.watch(()=>a.value,g=>{i("update:dragOverIndex",g)},{immediate:!0}),(g,B)=>(e.openBlock(),e.createBlock(e.TransitionGroup,{name:"list",tag:"ul",class:e.normalizeClass(["sortable-list p-0 d-flex gap-2",{"flex-column":t.vertical,"flex-row flex-wrap":!t.vertical}]),onDragover:B[0]||(B[0]=e.withModifiers(()=>{},["prevent"])),onDragenter:B[1]||(B[1]=e.withModifiers(()=>{},["prevent"]))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(M,w)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:w},[t.showPreview&&o.value&&a.value===w?(e.openBlock(),e.createElementBlock("li",{key:0,class:"sortable-list__item is-drop-target",onDragenter:D=>h(D,w),onDragover:D=>b(D,w),onDragleave:D=>void 0,onDragend:D=>m(),onDrop:D=>y(D,w),innerHTML:c.value},null,40,ei)):e.createCommentVNode("",!0),e.createElementVNode("li",{class:e.normalizeClass(["sortable-list__item d-flex",{"is-drag-item":o.value&&n.value===w,"is-drop-target":o.value&&a.value===w&&!t.showPreview,"align-items-center gap-2":t.vertical}]),draggable:!0,onDragstart:D=>s(D,w),onDrag:D=>void 0,onDragenter:D=>h(D,w),onDragover:D=>b(D,w),onDragleave:D=>void 0,onDragend:D=>m(),onDrop:D=>y(D,w)},[t.showDragHandle?(e.openBlock(),e.createElementBlock("div",ai,[e.createElementVNode("button",ni,[e.createVNode(N,{symbol:"drag"})])])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["sortable-list__item-content",{"flex-grow-1":t.vertical}])},[e.renderSlot(g.$slots,"list-item",{item:M,index:w},()=>[e.createTextVNode(e.toDisplayString(M),1)])],2)],42,ti)],64))),128)),A.value?(e.openBlock(),e.createElementBlock("li",li,[e.renderSlot(g.$slots,"list-append")])):e.createCommentVNode("",!0)]),_:3},8,["class"]))}}),oi={key:0,class:"image-editor position-relative"},ii={class:"row mb-3"},ri={class:"col"},si={class:"row gap-2 mb-4"},Ai={class:"col-12"},ci={class:"input mb-2"},di={class:"col"},ui={class:"input mb-0"},mi={class:"col"},fi={class:"input mb-0"},pi={class:"row"},gi={class:"col d-flex justify-content-end gap-2"},hi=["disabled"],tt=e.defineComponent({__name:"image-resize",props:{modelValue:{type:String,default:'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"/>',required:!0},spinner:{type:Boolean,default:!1},ready:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:d}){const l=d,o=e.useTemplateRef("image"),n=e.ref(1),a=e.ref(0),i=e.ref(0),r=e.ref(null),c=e.ref(0),u=e.ref(0);function A(){r.value&&(l("update:modelValue",r.value),n.value=1)}const s=()=>{if(!c.value||!u.value)return;a.value=Math.round(c.value*n.value);const f=u.value/c.value;i.value=Math.round(a.value*f);const h=o.value?.$el;if(!h)return;const b=h.querySelector("img");b&&(r.value=Oe(b,a.value,i.value,"image/png"))},m=ve.debounce(s,300);return e.watch(n,()=>{c.value&&(a.value=Math.round(c.value*n.value),m())}),e.watch(a,()=>{if(!c.value||a.value===0)return;const f=a.value/c.value;Math.abs(f-n.value)>1e-4&&(n.value=Number(f.toFixed(4)));const h=u.value/c.value;i.value=Math.round(a.value*h),m()}),e.watch(i,()=>{if(!u.value||i.value===0)return;const f=i.value/u.value;Math.abs(f-n.value)>1e-4&&(n.value=Number(f.toFixed(4)));const h=c.value/u.value;a.value=Math.round(i.value*h),m()}),e.onMounted(()=>{const f=o.value?.$el;if(!f)return;const h=f.querySelector("img");if(!h)return;const b=()=>{c.value=h.naturalWidth,u.value=h.naturalHeight,s()};h.complete?b():h.addEventListener("load",b)}),(f,h)=>t.modelValue?(e.openBlock(),e.createElementBlock("div",oi,[e.createElementVNode("div",ii,[e.createElementVNode("div",ri,[e.createVNode(oe,{ref_key:"image",ref:o,class:"d-none",src:t.modelValue,animate:!1},null,8,["src"]),r.value?(e.openBlock(),e.createBlock(oe,{key:0,ref:"targetImage",class:"",src:r.value,animate:!1},null,8,["src"])):e.createCommentVNode("",!0)])]),e.createElementVNode("div",si,[e.createElementVNode("div",Ai,[e.createElementVNode("div",ci,[e.withDirectives(e.createElementVNode("input",{type:"range",class:"form-range",id:"scaleRange","onUpdate:modelValue":h[0]||(h[0]=b=>n.value=b),min:"0",max:"2",step:"0.0001"},null,512),[[e.vModelText,n.value]])])]),e.createElementVNode("div",di,[e.createElementVNode("div",ui,[e.createVNode(Ae,{type:"number",class:"form-input mb-0",id:"targetWidth",modelValue:a.value,"onUpdate:modelValue":h[1]||(h[1]=b=>a.value=b)},null,8,["modelValue"])])]),h[3]||(h[3]=e.createElementVNode("div",{class:"col-auto d-flex align-items-center"},[e.createElementVNode("output",null,"×")],-1)),e.createElementVNode("div",mi,[e.createElementVNode("div",fi,[e.createVNode(Ae,{type:"number",class:"form-input mb-0",id:"targetHeight",modelValue:i.value,"onUpdate:modelValue":h[2]||(h[2]=b=>i.value=b)},null,8,["modelValue"])])])]),e.createElementVNode("div",pi,[e.createElementVNode("div",gi,[e.renderSlot(f.$slots,"actions"),e.createElementVNode("button",{class:"btn btn-sm btn-primary",disabled:!r.value,onClick:e.withModifiers(A,["prevent","stop"])},e.toDisplayString(f.$t("common.apply")),9,hi)])])])):e.createCommentVNode("",!0)}}),yi={key:0,class:"image-crop"},bi={class:"row mb-4"},ki={class:"col"},wi={class:"row"},Bi={class:"col d-flex gap-2 justify-content-end gap-2"},at=e.defineComponent({__name:"image-crop",props:{modelValue:{type:String,default:'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"/>',required:!0},spinner:{type:Boolean,default:!1},ready:{type:Boolean,default:!1},aspectRatioOptions:{type:Array,default:()=>[{value:0,text:"Free"},{value:1,text:"1:1"},{value:4/3,text:"4:3"},{value:16/9,text:"16:9"},{value:3/4,text:"3:4"},{value:9/16,text:"9:16"}]},suggestedAspectRatio:Number},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.useTemplateRef("cropper"),a=e.ref(0);function i(){const{canvas:r}=n.value?.getResult(),c=r.toDataURL();o("update:modelValue",c)}return e.onBeforeMount(()=>{a.value=l.suggestedAspectRatio||0}),(r,c)=>t.modelValue?(e.openBlock(),e.createElementBlock("div",yi,[e.createElementVNode("div",bi,[e.createElementVNode("div",ki,[e.createVNode(e.unref(ft.Cropper),{ref:"cropper",class:"cropper",src:t.modelValue,"stencil-props":{...a.value!==0?{aspectRatio:a.value}:{}},"resize-image":!1},null,8,["src","stencil-props"])])]),c[1]||(c[1]=e.createElementVNode("hr",null,null,-1)),e.createElementVNode("div",wi,[e.createElementVNode("div",Bi,[e.createVNode(Te,{modelValue:a.value,"onUpdate:modelValue":c[0]||(c[0]=u=>a.value=u),options:t.aspectRatioOptions,class:"mb-0"},null,8,["modelValue","options"]),e.renderSlot(r.$slots,"actions"),e.createElementVNode("button",{class:"btn btn-sm btn-primary",onClick:e.withModifiers(i,["prevent","stop"])},e.toDisplayString(r.$t("common.apply")),1)])])])):e.createCommentVNode("",!0)}}),Ci={key:0,class:"image-crop-resize position-relative"},Vi={class:"row"},Ei={class:"col"},$i={key:3,class:"alert alert-warning mt-4 small p-2"},Si={key:4},Ni={class:"row"},Mi={class:"col-12"},Di={class:"d-flex"},vi={key:0,class:"d-flex gap-3"},Li={class:"caption"},Ii={class:"caption"},Pi={key:1,class:"ms-auto"},nt=e.defineComponent({__name:"image-crop-resize",props:{modelValue:{type:String,default:'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"/>',required:!0},spinner:{type:Boolean,default:!1},ready:{type:Boolean,default:!1},aspectRatio:Number},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.ref(!1),a=e.ref(!1),i=e.computed({get:()=>l.modelValue,set:c=>o("update:modelValue",c)}),r=e.computed(()=>l.modelValue.startsWith("data:image/svg+xml"));return e.watch(()=>[n.value,i.value],(c,u)=>{c[0]&&c[0]===u[0]&&(n.value=!1)}),e.watch(()=>[a.value,i.value],(c,u)=>{c[0]&&c[0]===u[0]&&(a.value=!1)}),e.onMounted(()=>{}),(c,u)=>t.modelValue?(e.openBlock(),e.createElementBlock("div",Ci,[e.createElementVNode("div",Vi,[e.createElementVNode("div",Ei,[n.value||a.value?n.value?(e.openBlock(),e.createBlock(tt,{key:1,modelValue:i.value,"onUpdate:modelValue":u[1]||(u[1]=A=>i.value=A)},{actions:e.withCtx(()=>[e.createElementVNode("button",{class:"btn btn-outline-ccontrast",onClick:u[0]||(u[0]=e.withModifiers(A=>n.value=!1,["prevent","stop"]))},e.toDisplayString(c.$t("common.cancel")),1)]),_:1},8,["modelValue"])):a.value?(e.openBlock(),e.createBlock(at,{key:2,modelValue:i.value,"onUpdate:modelValue":u[3]||(u[3]=A=>i.value=A),"suggested-aspect-ratio":t.aspectRatio},{actions:e.withCtx(()=>[e.createElementVNode("button",{class:"btn btn-sm btn-outline-ccontrast",onClick:u[2]||(u[2]=e.withModifiers(A=>a.value=!1,["prevent","stop"]))},e.toDisplayString(c.$t("common.cancel")),1)]),_:1},8,["modelValue","suggested-aspect-ratio"])):e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(oe,{key:0,ref:"targetImage",class:"",animate:!1,src:t.modelValue},null,8,["src"])),r.value?(e.openBlock(),e.createElementBlock("div",$i,e.toDisplayString(c.$t("common.svgWarning")),1)):e.createCommentVNode("",!0),!a.value&&!n.value?(e.openBlock(),e.createElementBlock("hr",Si)):e.createCommentVNode("",!0),e.createElementVNode("div",Ni,[e.createElementVNode("div",Mi,[e.createElementVNode("div",Di,[!a.value&&!n.value?(e.openBlock(),e.createElementBlock("div",vi,[e.createElementVNode("button",{type:"button",class:"btn btn-light",onClick:u[4]||(u[4]=e.withModifiers(A=>a.value=!a.value,["prevent","stop"]))},[e.createVNode(N,{symbol:"crop"}),e.createElementVNode("span",Li,e.toDisplayString(c.$t("common.crop")),1)]),e.createElementVNode("button",{type:"button",class:"btn btn-light",onClick:u[5]||(u[5]=e.withModifiers(A=>n.value=!n.value,["prevent","stop"]))},[e.createVNode(N,{symbol:"image-upscale"}),e.createElementVNode("span",Ii,e.toDisplayString(c.$t("common.resize")),1)])])):e.createCommentVNode("",!0),!a.value&&!n.value?(e.openBlock(),e.createElementBlock("div",Pi,[e.renderSlot(c.$slots,"submit")])):e.createCommentVNode("",!0)])])])])])])):e.createCommentVNode("",!0)}}),Ti={class:"modal-dialog__content d-flex flex-column"},xi={class:"modal-dialog__header d-flex p-3 border-bottom"},zi={key:0,class:"modal-dialog__title",id:"exampleModalLabel"},Qi={class:"modal-dialog__body"},Ri={key:0,class:"modal-dialog__footer d-flex p-3 border-top"},lt=e.defineComponent({__name:"modal-dialog",props:{modelValue:{type:Boolean,default:!1},modal:{type:Boolean,default:!0},size:{type:String,default:"md"},dismiss:{type:Boolean,default:!0},title:{type:String,default:""},footer:{type:Boolean,default:!0},classes:{type:String,default:""}},emits:["update:modelValue","confirm","cancel"],setup(t,{expose:d,emit:l}){const o=t,n=l,a=e.ref();function i(){document.documentElement.style.setProperty("--scroll-position",`${Math.round(document.documentElement.scrollTop)}px`),o.modal?a.value?.showModal():a.value?.show(),n("update:modelValue",!0)}function r(){const m=a.value&&new KeyframeEffect(a.value,[{translate:"0 -100%",opacity:"0"}],{duration:320,easing:"ease",direction:"normal"}),f=new Animation(m,document.timeline);f.play(),f.addEventListener("finish",()=>{a.value?.close(),c()}),n("update:modelValue",!1)}function c(){const m=getComputedStyle(document.documentElement).getPropertyValue("--scroll-position");document.documentElement.scrollTo({top:parseInt(m,10),behavior:"instant"}),n("update:modelValue",!1)}function u(m){i(),n("confirm",m)}function A(){r(),n("cancel")}function s(m){const f=m.target;f&&f.nodeName==="DIALOG"&&r()}return e.watch(()=>o.modelValue,(m,f)=>{m&&m!==f?i():f&&r()},{immediate:!0}),e.onMounted(()=>{a.value?.addEventListener("cancel",m=>{m.preventDefault(),r()}),o.dismiss&&document.addEventListener("click",s),o.modelValue&&i()}),e.onBeforeUnmount(()=>{o.dismiss&&document.removeEventListener("click",s)}),d({show:i,close:r,confirm:u,cancel:A}),(m,f)=>(e.openBlock(),e.createElementBlock("dialog",{ref_key:"dialog",ref:a,class:e.normalizeClass(["modal-dialog",{[`modal-dialog--${t.size}`]:t.size}]),onClose:c},[e.createElementVNode("div",Ti,[e.createElementVNode("div",xi,[t.title?(e.openBlock(),e.createElementBlock("h5",zi,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",class:"btn-close ms-auto border-radius-none","aria-label":"Close",onClick:r})]),e.createElementVNode("div",Qi,[e.renderSlot(m.$slots,"default")]),t.footer?(e.openBlock(),e.createElementBlock("div",Ri,[e.renderSlot(m.$slots,"footer"),e.createElementVNode("button",{type:"button",class:"btn ms-auto",onClick:r},e.toDisplayString(m.$t("common.close")),1)])):e.createCommentVNode("",!0)])],34))}}),Fi={class:"image-upload__controls"},Oi={class:"d-flex gap-1 align-items-center"},Hi={key:1,class:"image-upload__controls"},Wi=["for"],Ui=["innerHTML"],qi={key:0,class:"image-upload__loading-spinner"},ot=e.defineComponent({__name:"image-upload",props:{modelValue:{type:Object,default:void 0},src:{type:String},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null},accept:{type:String,default:"image/*"},maxFileSize:{type:Number,default:0},endpoint:{type:String,default:""},toDataUrl:{type:Boolean,default:!0},authToken:{type:String,default:""},customFetch:null,baseResponsePath:{type:String,default:"/api/v1/assets"},enablePreview:{type:Boolean,default:!0},previewWidth:{type:Number,default:0},dropFiles:{type:Boolean,default:!1},enableReview:{type:Boolean,default:!0},maxImageWidth:{type:Number,default:4096},aspectRatio:Number},emits:["update:modelValue","update:src"],setup(t,{emit:d}){const l=t,o=d,n=e.ref(!1),a=e.ref(null),i=e.ref(null),r=e.ref(null),{pending:c,files:u,imgLoaded:A,isDragging:s,uploadFile:m,setupDragAndDrop:f,cleanupDragAndDrop:h}=Ke(l,o),b=e.computed(()=>l.modelValue?l.modelValue:l.src?{type:"",src:l.src}:a.value);function E(){a.value=null,u.value=[],A.value=!1,o("update:modelValue",void 0),o("update:src","")}function y(){E()}e.watch(()=>u.value,async M=>{if(!M||!M.length||!M[0])return;A.value=!1;const w=await St(M[0],l.maxImageWidth);l.enableReview?(i.value={src:await we(w),type:w.type},n.value=!0):a.value={src:l.toDataUrl?await we(w):await m(w),type:w.type}}),e.watch(()=>a.value,M=>{o("update:modelValue",M||void 0),o("update:src",M?.src||"")}),e.watch(()=>r.value,async M=>{M&&(a.value={src:await m(M),type:M.type},r.value=null)}),e.watch(()=>n.value,(M,w)=>{!M&&w&&i.value&&(i.value=null,y())}),e.watch(()=>l.src,M=>{!M&&a.value&&y()});function g(M,w){i.value={src:M,type:w},n.value=!0}async function B(){i.value&&(r.value=await Fe(i.value.src,"file",i.value.type)),i.value=null,n.value=!1}return e.onMounted(()=>{f()}),e.onBeforeUnmount(()=>{h()}),(M,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["image-upload",{"has-dragging":t.dropFiles,"is-dragging":e.unref(s)}])},[!n.value&&b.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["mb-2",t.enablePreview?"image-upload__thumbnail":"image-upload__reset"])},[t.enablePreview?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(oe,{src:`${b.value.src}${t.previewWidth?`?width=${t.previewWidth}`:""}`,class:"img-thumbnail rounded",ready:e.unref(A),"onUpdate:ready":w[0]||(w[0]=D=>e.isRef(A)?A.value=D:null),animate:!1,style:e.normalizeStyle({maxWidth:t.previewWidth?`${t.previewWidth}px`:"auto",height:"auto"})},null,8,["src","ready","style"]),e.createElementVNode("div",Fi,[e.createElementVNode("div",Oi,[e.createElementVNode("button",{type:"button",onClick:w[1]||(w[1]=e.withModifiers(D=>g(b.value.src,b.value.type),["prevent","stop"])),class:"btn btn--edit btn-sm btn-light"},[e.createVNode(N,{symbol:"edit-2"})]),e.createElementVNode("button",{type:"button",onClick:w[2]||(w[2]=e.withModifiers(D=>E(),["prevent","stop"])),class:"btn btn--close btn-sm btn-light"},[e.createVNode(N,{symbol:"x"})])])])],64)):(e.openBlock(),e.createElementBlock("div",Hi,[e.createElementVNode("button",{onClick:w[3]||(w[3]=e.withModifiers(D=>E(),["prevent","stop"])),class:"btn btn--close btn-outline-contrast"},[e.createVNode(N,{symbol:"x"})])]))],2)):e.createCommentVNode("",!0),e.createVNode(Pe,{modelValue:e.unref(u),"onUpdate:modelValue":w[4]||(w[4]=D=>e.isRef(u)?u.value=D:null),id:t.id,name:t.name,accept:t.accept,"max-file-size":t.maxFileSize,class:"d-none"},null,8,["modelValue","id","name","accept","max-file-size"]),t.src?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("label",{key:1,for:t.id,class:"image-upload__label"},[e.renderSlot(M.$slots,"button",{},()=>[e.createElementVNode("span",{class:"btn btn-outline-contrast",innerHTML:t.label||M.$t("common.selectFile")},null,8,Ui)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[e.unref(c)?(e.openBlock(),e.createElementBlock("span",qi,[...w[7]||(w[7]=[e.createElementVNode("span",{class:"spinner-border",role:"status"},[e.createElementVNode("span",{class:"visually-hidden"},"Loading...")],-1)])])):e.createCommentVNode("",!0)]),_:1})],8,Wi)),e.createVNode(lt,{modelValue:n.value,"onUpdate:modelValue":w[6]||(w[6]=D=>n.value=D),footer:!1},{default:e.withCtx(()=>[n.value&&i.value?(e.openBlock(),e.createBlock(nt,{key:0,modelValue:i.value.src,"onUpdate:modelValue":w[5]||(w[5]=D=>i.value.src=D),"aspect-ratio":t.aspectRatio},{submit:e.withCtx(()=>[e.createElementVNode("button",{class:"btn btn-primary",onClick:e.withModifiers(B,["prevent","stop"])},e.toDisplayString(M.$t("common.save")),1)]),_:1},8,["modelValue","aspect-ratio"])):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])],2))}}),ji={class:"upload-group"},_i=["innerHTML"],Ji={class:"upload-group__list"},Gi={class:"img-container"},Yi=["src"],Zi=["onClick"],Ki={role:"button",class:"img-thumbnail d-flex justify-content-center align-items-center"},Xi={role:"button",class:"img-thumbnail d-flex justify-content-center align-items-center"},it=e.defineComponent({__name:"upload-group",props:{modelValue:{type:Array,default:()=>[]},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},label:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},accept:{type:String},maxFileSize:{type:Number,default:0},endpoint:{type:String,default:""},authToken:{type:String,default:""},customFetch:null,baseResponsePath:{type:String,default:"/api/v1/assets"},previewWidth:{type:Number,default:0},useImageUpload:{type:Boolean,default:!1},maxImageWidth:{type:Number,default:0},aspectRatio:Number},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.ref(""),a=e.computed({get(){return l.modelValue},set(r){o("update:modelValue",r)}});function i(r){a.value.splice(r,1),o("update:modelValue",a.value)}return e.watch(n,async(r,c)=>{r&&c!==r&&(o("update:modelValue",[...a.value,r]),await e.nextTick(),n.value="")}),(r,c)=>(e.openBlock(),e.createElementBlock("div",ji,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,innerHTML:e.unref(H)(t.label)},null,8,_i)):e.createCommentVNode("",!0),e.createElementVNode("div",Ji,[e.createVNode(et,{modelValue:a.value,"onUpdate:modelValue":c[2]||(c[2]=u=>a.value=u),vertical:!1,class:"mb-3"},{"list-item":e.withCtx(({item:u,index:A})=>[e.createElementVNode("div",Gi,[e.createElementVNode("img",{src:`${u}${t.previewWidth?`?width=${t.previewWidth}`:""}`,class:"img-thumbnail"},null,8,Yi),e.createElementVNode("button",{onClick:e.withModifiers(s=>i(A),["prevent"]),class:"btn btn--close"},[e.createVNode(N,{symbol:"x"})],8,Zi)])]),"list-append":e.withCtx(()=>[t.useImageUpload?(e.openBlock(),e.createBlock(ot,{key:0,src:n.value,"onUpdate:src":c[0]||(c[0]=u=>n.value=u),endpoint:t.endpoint,"custom-fetch":t.customFetch,"to-data-url":!t.endpoint,"auth-token":t.authToken,disabled:t.disabled,"base-response-path":t.baseResponsePath,accept:t.accept,"max-file-size":t.maxFileSize,"max-image-width":t.maxImageWidth,"enable-preview":!1,"aspect-ratio":t.aspectRatio},{button:e.withCtx(()=>[e.createElementVNode("span",Ki,[e.createVNode(N,{symbol:"plus"})])]),_:1},8,["src","endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","max-image-width","aspect-ratio"])):(e.openBlock(),e.createBlock(Xe,{key:1,src:n.value,"onUpdate:src":c[1]||(c[1]=u=>n.value=u),multiple:!1,endpoint:t.endpoint,"custom-fetch":t.customFetch,"to-data-url":!t.endpoint,"auth-token":t.authToken,disabled:t.disabled,"base-response-path":t.baseResponsePath,accept:t.accept,"max-file-size":t.maxFileSize,"max-image-width":t.maxImageWidth},{button:e.withCtx(()=>[e.createElementVNode("span",Xi,[e.createVNode(N,{symbol:"plus"})])]),_:1},8,["src","endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","max-image-width"]))]),_:1},8,["modelValue"])])]))}}),er={class:"asset-uploader"},tr=["innerHTML"],ar=e.defineComponent({__name:"asset-uploader",props:{modelValue:{type:Array,default:()=>[]},name:{type:String,default:()=>I()},id:{type:String,default:()=>I()},type:{type:String,default:""},label:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},accept:{type:String},maxFileSize:{type:Number,default:0},endpoint:{type:String,default:""},authToken:{type:String,default:""},customFetch:null,mediaTypeMap:{type:Object,default:()=>({svg:"Svg",png:"Image",jpg:"Image"})},baseResponsePath:{type:String,default:"/api/v1/assets"},previewWidth:{type:Number,default:0},useImageUpload:{type:Boolean,default:!1},maxImageWidth:{type:Number,default:0},aspectRatio:Number},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.computed({get(){return l.modelValue.map(a=>a.src)},set(a){o("update:modelValue",a.map((i,r)=>({mediaType:l.modelValue[r]&&l.modelValue[r].mediaType||i.includes("data:image")?i.includes("data:image/svg")?"Svg":"Image":l.mediaTypeMap[i.split(".")[1]],src:i,name:l.modelValue[r]&&l.modelValue[r].name||`${l.name}-${r}`,...l.type?{type:l.type}:{}})))}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",er,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,innerHTML:e.unref(H)(t.label)},null,8,tr)):e.createCommentVNode("",!0),e.createVNode(it,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),endpoint:t.endpoint,"custom-fetch":t.customFetch,"auth-token":t.authToken,disabled:t.disabled,"preview-width":t.previewWidth,"base-response-path":t.baseResponsePath,accept:t.accept,"max-file-size":t.maxFileSize,"use-image-upload":t.useImageUpload,"max-image-width":t.maxImageWidth,"aspect-ratio":t.aspectRatio},null,8,["modelValue","endpoint","custom-fetch","auth-token","disabled","preview-width","base-response-path","accept","max-file-size","use-image-upload","max-image-width","aspect-ratio"])]))}}),nr="https://router.project-osrm.org/route/v1";function rt(){const t=e.ref([]),d=e.ref(null),l=e.ref(null),o=e.ref([]),n=e.ref(!1),a=e.ref(""),i=e.computed(()=>t.value.length>1);function r(){t.value=[],d.value=null,l.value=null,o.value=[],a.value=""}async function c(u,A,s={}){if(!u||!A)return r(),null;n.value=!0;const m=s.customFetch||ye.ofetch,f=(s.endpoint||nr).replace(/\/$/,""),h=s.profile||"driving";try{const E=(await m(`${f}/${h}/${u.lng},${u.lat};${A.lng},${A.lat}`,{method:"GET",query:{alternatives:!1,overview:"full",steps:!0,geometries:"geojson"}}))?.routes?.[0];if(!E)throw new Error("No route available for these points.");return t.value=Array.isArray(E?.geometry?.coordinates)?E.geometry.coordinates.map(y=>[Number(y[1]),Number(y[0])]).filter(y=>Number.isFinite(y[0])&&Number.isFinite(y[1])):[],d.value=Number.isFinite(E?.distance)?Number(E.distance):null,l.value=Number.isFinite(E?.duration)?Number(E.duration):null,o.value=Array.isArray(E?.legs)?E.legs.flatMap(y=>Array.isArray(y?.steps)?y.steps.map(g=>lr(g)):[]):[],a.value="",E}catch(b){return r(),a.value=b?.message||"Unable to load directions right now.",null}finally{n.value=!1}}return{routeCoordinates:t,distanceMeters:d,durationSeconds:l,steps:o,pending:n,error:a,hasRoute:i,fetchRoute:c,clearRoute:r}}function lr(t){const d=`${t?.maneuver?.type||"continue"}`,l=t?.maneuver?.modifier?` ${t.maneuver.modifier}`:"",o=`${t?.name||""}`;return{instruction:`${or(d)}${l}${o?` on ${o}`:""}`.trim(),name:o,distance:Number.isFinite(t?.distance)?Number(t.distance):0,duration:Number.isFinite(t?.duration)?Number(t.duration):0}}function or(t){return t.charAt(0).toUpperCase()+t.slice(1)}const ir="https://nominatim.openstreetmap.org/search",rr="https://nominatim.openstreetmap.org/reverse";function st(){const t=e.ref([]),d=e.ref(!1),l=e.ref("");function o(){t.value=[],l.value=""}async function n(i,r={}){if(!i.trim())return o(),[];d.value=!0;const c=r.customFetch||ye.ofetch;try{const u=await c(r.endpoint||ir,{method:"GET",headers:{Accept:"application/json",...r.language?{"Accept-Language":r.language}:{}},query:{q:i,format:"jsonv2",addressdetails:1,limit:r.limit||5}});return t.value=Array.isArray(u)?u.map((A,s)=>At(A,s,"geocoder")).filter(A=>!!A):[],l.value="",t.value}catch(u){return l.value=u?.message||"Unable to search locations right now.",t.value=[],[]}finally{d.value=!1}}async function a(i,r={}){d.value=!0;const c=r.customFetch||ye.ofetch;try{const u=await c(r.reverseEndpoint||rr,{method:"GET",headers:{Accept:"application/json",...r.language?{"Accept-Language":r.language}:{}},query:{lat:i.lat,lon:i.lng,format:"jsonv2",addressdetails:1}}),A=At(u,0,"reverse-geocoder");return l.value="",A}catch(u){return l.value=u?.message||"Unable to resolve this location right now.",null}finally{d.value=!1}}return{results:t,pending:d,error:l,search:n,reverse:a,clearResults:o}}function At(t,d,l){const o=Number(t?.lat),n=Number(t?.lon??t?.lng);if(!Number.isFinite(o)||!Number.isFinite(n))return null;const a=`${t?.display_name||t?.name||"Location"}`,i=`${t?.name||a.split(",")[0]||"Location"}`.trim();return{id:`${l==="reverse-geocoder"?"reverse":"geo"}-${t?.place_id??d}`,title:i,address:a,lat:o,lng:n,source:l,raw:t}}function ct(t={}){const d=e.ref(null),l=e.ref(""),o=e.ref(!1),n=e.ref(!1),a=typeof window<"u"&&typeof navigator<"u"&&"geolocation"in navigator,i={enableHighAccuracy:!0,timeout:1e4,maximumAge:1e4,...t};let r=null;function c(f){d.value={lat:Number(f.latitude),lng:Number(f.longitude),accuracy:Number.isFinite(f.accuracy)?Number(f.accuracy):null},o.value=!1,l.value=""}function u(f){l.value=typeof f=="string"?f:f instanceof Error?f.message:f.message||"Unable to retrieve your location.",o.value=!1}async function A(){return a?(o.value=!0,new Promise(f=>{navigator.geolocation.getCurrentPosition(({coords:h})=>{c(h),f(d.value)},h=>{u(h),f(null)},i)})):(u("Geolocation is not supported in this browser."),null)}function s(){if(!a){u("Geolocation is not supported in this browser.");return}r===null&&(o.value=!0,n.value=!0,r=navigator.geolocation.watchPosition(({coords:f})=>{c(f)},f=>{u(f),n.value=!1},i))}function m(){if(!a||r===null){n.value=!1,o.value=!1;return}navigator.geolocation.clearWatch(r),r=null,n.value=!1,o.value=!1}return e.onBeforeUnmount(()=>{m()}),{supported:a,position:e.computed(()=>d.value),accuracy:e.computed(()=>d.value?.accuracy??null),error:l,pending:o,isTracking:n,locate:A,startTracking:s,stopTracking:m}}const sr={class:"location-finder","data-testid":"location-finder"},Ar={class:"location-finder__actions"},cr=["disabled"],dr={key:1,class:"location-finder__notice","data-testid":"location-finder-error"},ur={class:"location-finder__map-panel"},mr=["aria-label"],fr={class:"location-finder__legend-item"},pr={class:"location-finder__legend-item"},gr={class:"location-finder__legend-item"},hr={class:"location-finder__legend-item"},yr={key:0,class:"location-finder__sidebar"},br={key:1,class:"location-finder__summary","data-testid":"location-finder-directions"},kr={class:"location-finder__summary-title"},wr={key:0,class:"location-finder__summary-copy"},Br={class:"location-finder__summary-grid"},Cr={class:"location-finder__summary-label"},Vr={"data-testid":"location-finder-distance"},Er={class:"location-finder__summary-label"},$r={"data-testid":"location-finder-duration"},Sr={key:0,class:"location-finder__steps"},Nr={key:0},Mr={key:2,class:"location-finder__summary-copy"},Dr=e.defineComponent({__name:"location-finder",props:{modelValue:{type:Object,default:null},locations:{type:Array,default:()=>[]},center:{type:Object,default:null},distance:{type:Number,default:null},userLocation:{type:Object,default:null},messages:{type:Object,default:()=>({})},mapHeight:{type:String,default:"26rem"},searchLabel:{type:String,default:""},searchPlaceholder:{type:String,default:""},resultsLabel:{type:String,default:""},emptyText:{type:String,default:""},locateButtonLabel:{type:String,default:""},stopTrackingLabel:{type:String,default:""},mapHelperText:{type:String,default:""},enableGeocoding:{type:Boolean,default:!1},geocodingEndpoint:{type:String,default:"https://nominatim.openstreetmap.org/search"},reverseGeocodingEndpoint:{type:String,default:"https://nominatim.openstreetmap.org/reverse"},geocodingLimit:{type:Number,default:5},geocodingMinQueryLength:{type:Number,default:3},customGeocodingFetch:null,enableDirections:{type:Boolean,default:!1},directionsEndpoint:{type:String,default:"https://router.project-osrm.org/route/v1"},routeProfile:{type:String,default:"driving"},customDirectionsFetch:null,showDirectionsSummary:{type:Boolean,default:!0},showDirectionsSteps:{type:Boolean,default:!0},directionsTitle:{type:String,default:""},directionsEmptyText:{type:String,default:""},distanceLabel:{type:String,default:""},durationLabel:{type:String,default:""},routeColor:{type:String,default:"#2563eb"},routeWeight:{type:Number,default:5},selectionRadius:{type:Number,default:0},selectionRadiusColor:{type:String,default:"#2563eb"},selectionRadiusFillColor:{type:String,default:"#60a5fa"},mapStyle:{type:String,default:"streets"},tileLayerUrl:{type:String,default:""},tileLayerAttribution:{type:String,default:""},disabled:{type:Boolean,default:!1},interactive:{type:Boolean,default:!1},showSearch:{type:Boolean,default:!0},showLegend:{type:Boolean,default:!0},showSidebar:{type:Boolean,default:!0},showTrackButton:{type:Boolean,default:!0},trackUser:{type:Boolean,default:!0},autoLocate:{type:Boolean,default:!1}},emits:["update:modelValue","update:distance","select","search","track-user"],setup(t,{emit:d}){const l={lat:48.8566,lng:2.3522},o={searchLabel:"Search locations",searchPlaceholder:"Search by name or address",resultsLabel:"Locations",emptyText:"No locations found.",locateButtonLabel:"Use my location",stopTrackingLabel:"Stop tracking",mapHelperText:"Select a location from the list or use the map.",directionsTitle:"Directions",directionsEmptyText:"Select a destination and share your location to preview a route.",distanceLabel:"Distance",durationLabel:"ETA",loadingRoute:"Loading route…",legendAriaLabel:"Map marker types",legendLocations:"Locations",legendSelected:"Selected",legendSearchResult:"Search result",userLocationLabel:"Your location",pinnedLocationTitle:"Pinned location",selectedLocationLabel:"Selected location"},n=t,a=d,{t:i,te:r}=De.useI18n({useScope:"global"}),c=ct(),u=st(),A=rt(),s=e.ref(""),m=e.ref(q($(n.modelValue))),f=e.ref(q($(n.modelValue))?null:$(n.modelValue)),h=e.ref(z(n.modelValue)||z(n.center)||z(n.locations[0])||l),b=e.ref(!1),E=e.computed(()=>z(n.userLocation)),y=e.computed(()=>c.position.value||E.value),g=e.computed(()=>z(f.value)),B=e.computed(()=>z(m.value)),M=e.computed(()=>y.value||g.value),w=e.computed(()=>!M.value||!B.value?null:Se(M.value,B.value)),D=e.computed(()=>z(n.modelValue)||g.value||B.value),R=e.computed(()=>c.error.value||u.error.value||A.error.value||""),ae=e.computed(()=>n.showSearch||n.trackUser&&n.showTrackButton),K=e.computed(()=>n.enableDirections&&n.showDirectionsSummary),ie=e.computed(()=>n.showSidebar||K.value),ne=e.computed(()=>ge(A.distanceMeters.value)),me=e.computed(()=>Ne(A.durationSeconds.value)),x=e.computed(()=>({searchLabel:Q("searchLabel",n.searchLabel),searchPlaceholder:Q("searchPlaceholder",n.searchPlaceholder),resultsLabel:Q("resultsLabel",n.resultsLabel),emptyText:Q("emptyText",n.emptyText),locateButtonLabel:Q("locateButtonLabel",n.locateButtonLabel),stopTrackingLabel:Q("stopTrackingLabel",n.stopTrackingLabel),mapHelperText:Q("mapHelperText",n.mapHelperText),directionsTitle:Q("directionsTitle",n.directionsTitle),directionsEmptyText:Q("directionsEmptyText",n.directionsEmptyText),distanceLabel:Q("distanceLabel",n.distanceLabel),durationLabel:Q("durationLabel",n.durationLabel),loadingRoute:Q("loadingRoute"),legendAriaLabel:Q("legendAriaLabel"),legendLocations:Q("legendLocations"),legendSelected:Q("legendSelected"),legendSearchResult:Q("legendSearchResult"),userLocationLabel:Q("userLocationLabel"),pinnedLocationTitle:Q("pinnedLocationTitle"),selectedLocationLabel:Q("selectedLocationLabel")})),ce=e.computed(()=>f.value?re(f.value):x.value.selectedLocationLabel),V=e.computed(()=>c.isTracking.value&&b.value?x.value.stopTrackingLabel:x.value.locateButtonLabel);e.watch(()=>n.modelValue,p=>{const k=$(p),S=q(k);S?(m.value=S,f.value=null):k&&(f.value=k);const P=z(p);P&&(h.value=P)},{immediate:!0}),e.watch(()=>n.center,p=>{const k=z(p);k&&(h.value=k)},{deep:!0}),e.watch(y,p=>{p&&b.value&&(h.value=p)},{deep:!0}),e.watch(w,p=>{a("update:distance",p)},{immediate:!0}),e.watch(s,async p=>{if(a("search",p),!n.enableGeocoding){u.clearResults();return}const k=p.trim();if(k.length<n.geocodingMinQueryLength){u.clearResults();return}await u.search(k,{endpoint:n.geocodingEndpoint,customFetch:n.customGeocodingFetch,limit:n.geocodingLimit})}),e.watch(()=>({enabled:n.enableDirections,origin:y.value,destination:D.value,profile:n.routeProfile}),async({enabled:p,origin:k,destination:S,profile:P})=>{if(!p||!k||!S||_(k,S)){A.clearRoute();return}await A.fetchRoute(k,S,{endpoint:n.directionsEndpoint,profile:P,customFetch:n.customDirectionsFetch})},{immediate:!0,deep:!0}),e.onMounted(async()=>{n.autoLocate&&n.trackUser&&await le()});const v=e.computed(()=>{const p=de(s.value).trim();return p?n.locations.filter(k=>[re(k),$e(k)].filter(Boolean).some(S=>de(S).includes(p))):n.locations}),T=e.computed(()=>u.results.value.map(p=>({id:p.id,title:p.title,address:p.address,lat:p.lat,lng:p.lng,source:p.source}))),F=e.computed(()=>{if(!s.value.trim())return n.locations;const p=v.value;return p.length?p:n.locations}),J=e.computed(()=>F.value),fe=e.computed(()=>G(F.value,n.enableGeocoding?T.value:[])),Ve=e.computed(()=>Array.from(new Set(fe.value.map(p=>j(p))))),Ee=e.computed(()=>J.value.map(p=>{const k=z(p);return k?{id:L(p),label:re(p),...k,type:B.value&&_(k,B.value)?"selected":"list"}:null}).filter(p=>!!p)),pe=e.computed(()=>b.value&&y.value?y.value:h.value||D.value||y.value||z(J.value[0])||l);function Q(p,k){const S=n.messages?.[p];if(typeof S=="string"&&S.trim())return S;if(typeof k=="string"&&k.trim())return k;const P=`locationFinder.${String(p)}`;return r(P)?String(i(P)):o[p]}function z(p){if(!p)return null;const k=Number(p.lat),S=Number(p.lng);return!Number.isFinite(k)||!Number.isFinite(S)?null:{lat:k,lng:S}}function $(p){if(!p)return null;const k=z(p);return k?{...p,...k}:null}function L(p){return p?typeof p!="object"?p:p.id??p.value??j(p):null}function q(p){return p&&n.locations.find(k=>L(k)===L(p)||_(z(k),z(p)))||null}function de(p){return`${p??""}`.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase()}function re(p){return`${p.title||p.label||p.name||"Location"}`}function $e(p){return`${p.address||p.description||p.subtitle||""}`}function j(p){const k=re(p),S=$e(p);return S?`${k} — ${S}`:k}function G(p,k){const S=[...p];return k.forEach(P=>{S.some(Me=>L(Me)===L(P)||_(z(Me),z(P)))||S.push(P)}),S}function _(p,k){return!p||!k?!1:Math.abs(p.lat-k.lat)<1e-6&&Math.abs(p.lng-k.lng)<1e-6}function Se(p,k){const S=tA=>tA*(Math.PI/180),ue=S(k.lat-p.lat),Me=S(k.lng-p.lng),Ks=S(p.lat),Xs=S(k.lat),mt=Math.sin(ue/2)**2+Math.cos(Ks)*Math.cos(Xs)*Math.sin(Me/2)**2,eA=2*Math.atan2(Math.sqrt(mt),Math.sqrt(1-mt));return Math.round(6371e3*eA)}function ge(p){return p===null||!Number.isFinite(p)?"—":p>=1e3?`${(p/1e3).toFixed(1)} km`:`${Math.round(p)} m`}function Ne(p){if(p===null||!Number.isFinite(p))return"—";const k=Math.max(1,Math.round(p/60));if(k<60)return`${k} min`;const S=Math.floor(k/60),P=k%60;return P?`${S} h ${P} min`:`${S} h`}function X(p){const k=$(p),S=q(k);if(b.value=!1,!k){a("update:modelValue",null);return}m.value=S||k;const P=z(k);P&&(h.value=P),a("update:modelValue",k),a("select",k)}function he(p){const k=$(p),S=q(k);if(b.value=!1,!k){a("update:modelValue",null);return}S?(m.value=S,f.value=null):f.value=k;const P=z(k);P&&(h.value=P),a("update:modelValue",k),a("select",k)}function Y(p){const k=fe.value.find(S=>j(S)===p||re(S)===p);if(k){if(q(k)){X(k),f.value=null;return}he(k)}}function ee(p){X(p)}function O(p){if(p.id==="user-location"&&y.value){h.value=y.value,b.value=!0,a("track-user",y.value);return}const k=J.value.find(S=>L(S)===p.id)||J.value.find(S=>{const P=z(S);return P&&Math.abs(P.lat-p.lat)<1e-6&&Math.abs(P.lng-p.lng)<1e-6});if(k){X(k);return}f.value&&(L(f.value)===p.id||_(z(f.value),{lat:p.lat,lng:p.lng}))&&he(f.value)}async function Z(p){if(h.value=p,b.value=!1,!n.interactive)return;const k=J.value.find(P=>{const ue=z(P);return ue&&Math.abs(ue.lat-p.lat)<1e-6&&Math.abs(ue.lng-p.lng)<1e-6});if(k){X(k);return}const S=await se(p,x.value.pinnedLocationTitle);he(S)}async function se(p,k){if(!n.enableGeocoding)return{id:`pin-${p.lat}-${p.lng}`,title:k,lat:p.lat,lng:p.lng};const S=await u.reverse(p,{reverseEndpoint:n.reverseGeocodingEndpoint,customFetch:n.customGeocodingFetch});return S?{id:S.id,title:S.title||k,address:S.address,lat:S.lat,lng:S.lng,source:S.source}:{id:`pin-${p.lat}-${p.lng}`,title:k,lat:p.lat,lng:p.lng}}async function le(){if(c.isTracking.value&&b.value){c.stopTracking(),b.value=!1;return}if(y.value){h.value=y.value,b.value=!0,a("track-user",y.value),!c.isTracking.value&&!E.value&&c.startTracking();return}const p=await c.locate();p&&(h.value=p,b.value=!0,a("track-user",p),c.startTracking())}return(p,k)=>(e.openBlock(),e.createElementBlock("div",sr,[ae.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["location-finder__toolbar",{"location-finder__toolbar--actions-only":!n.showSearch}])},[n.showSearch?(e.openBlock(),e.createBlock(_e,{key:0,modelValue:s.value,"onUpdate:modelValue":k[0]||(k[0]=S=>s.value=S),class:"location-finder__search",label:x.value.searchLabel,placeholder:x.value.searchPlaceholder,options:Ve.value,disabled:t.disabled,"onUpdate:selection":Y},null,8,["modelValue","label","placeholder","options","disabled"])):e.createCommentVNode("",!0),e.createElementVNode("div",Ar,[t.trackUser&&n.showTrackButton?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"btn btn-outline-primary btn-sm location-finder__locate",disabled:t.disabled||e.unref(c).pending.value,"data-testid":"location-finder-locate",onClick:le},e.toDisplayString(V.value),9,cr)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),R.value?(e.openBlock(),e.createElementBlock("p",dr,e.toDisplayString(R.value),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["location-finder__layout",{"location-finder__layout--with-summary":K.value,"location-finder__layout--full-width":!ie.value}])},[e.createElementVNode("div",ur,[e.createVNode(Ye,{class:"location-finder__map",center:pe.value,markers:Ee.value,"model-value":g.value,"user-location":y.value,"user-location-label":x.value.userLocationLabel,"selected-location-label":ce.value,"route-coordinates":e.unref(A).routeCoordinates.value,"route-color":t.routeColor,"route-weight":t.routeWeight,"selection-radius":t.selectionRadius,"selection-radius-center":D.value,"selection-radius-color":t.selectionRadiusColor,"selection-radius-fill-color":t.selectionRadiusFillColor,"map-style":t.mapStyle,"tile-layer-url":t.tileLayerUrl,"tile-layer-attribution":t.tileLayerAttribution,height:t.mapHeight,interactive:t.interactive,disabled:t.disabled,"helper-text":x.value.mapHelperText,"onUpdate:modelValue":Z,onMarkerClick:O},null,8,["center","markers","model-value","user-location","user-location-label","selected-location-label","route-coordinates","route-color","route-weight","selection-radius","selection-radius-center","selection-radius-color","selection-radius-fill-color","map-style","tile-layer-url","tile-layer-attribution","height","interactive","disabled","helper-text"]),n.showLegend?(e.openBlock(),e.createElementBlock("div",{key:0,class:"location-finder__legend","data-testid":"location-finder-legend","aria-label":x.value.legendAriaLabel},[e.createElementVNode("span",fr,[k[2]||(k[2]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--list"},null,-1)),e.createTextVNode(" "+e.toDisplayString(x.value.legendLocations),1)]),e.createElementVNode("span",pr,[k[3]||(k[3]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--selected"},null,-1)),e.createTextVNode(" "+e.toDisplayString(x.value.legendSelected),1)]),e.createElementVNode("span",gr,[k[4]||(k[4]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--search"},null,-1)),e.createTextVNode(" "+e.toDisplayString(x.value.legendSearchResult),1)]),e.createElementVNode("span",hr,[k[5]||(k[5]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--user"},null,-1)),e.createTextVNode(" "+e.toDisplayString(x.value.userLocationLabel),1)])],8,mr)):e.createCommentVNode("",!0)]),ie.value?(e.openBlock(),e.createElementBlock("aside",yr,[n.showSidebar?(e.openBlock(),e.createBlock(Ze,{key:0,modelValue:m.value,"onUpdate:modelValue":k[1]||(k[1]=S=>m.value=S),class:"location-finder__results",locations:J.value,label:x.value.resultsLabel,"empty-text":x.value.emptyText,onSelect:ee},null,8,["modelValue","locations","label","empty-text"])):e.createCommentVNode("",!0),K.value?(e.openBlock(),e.createElementBlock("div",br,[e.createElementVNode("p",kr,e.toDisplayString(x.value.directionsTitle),1),e.unref(A).pending.value?(e.openBlock(),e.createElementBlock("p",wr,e.toDisplayString(x.value.loadingRoute),1)):e.unref(A).hasRoute.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",Br,[e.createElementVNode("div",null,[e.createElementVNode("p",Cr,e.toDisplayString(x.value.distanceLabel),1),e.createElementVNode("strong",Vr,e.toDisplayString(ne.value),1)]),e.createElementVNode("div",null,[e.createElementVNode("p",Er,e.toDisplayString(x.value.durationLabel),1),e.createElementVNode("strong",$r,e.toDisplayString(me.value),1)])]),t.showDirectionsSteps&&e.unref(A).steps.value.length?(e.openBlock(),e.createElementBlock("ol",Sr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(A).steps.value.slice(0,5),(S,P)=>(e.openBlock(),e.createElementBlock("li",{key:`${S.instruction}-${P}`},[e.createElementVNode("span",null,e.toDisplayString(S.instruction),1),S.name?(e.openBlock(),e.createElementBlock("small",Nr,e.toDisplayString(S.name),1)):e.createCommentVNode("",!0)]))),128))])):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock("p",Mr,e.toDisplayString(x.value.directionsEmptyText),1))])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],2)]))}}),vr={class:"carousel d-flex"},Lr=["onClick"],dt=e.defineComponent({__name:"base-carousel",props:{modelValue:{type:Number,default:-1},config:{type:Object,default:null},messages:{type:Object,default:{}},items:{type:Array,default:[]},navigation:{type:Boolean,default:!0}},emits:["update:modelValue","select"],setup(t,{emit:d}){const l=d,o=e.ref(),n=e.ref();function a(){o.value.scrollTo({top:0,left:o.value.scrollLeft-o.value.clientWidth>0?o.value.scrollLeft-o.value.clientWidth:0,behavior:"smooth"})}function i(){o.value.scrollTo({top:0,left:o.value.scrollLeft-o.value.clientWidth<=n.value.clientWidth?o.value.scrollLeft+o.value.clientWidth:n.value.clientWidth,behavior:"smooth"})}function r(c){l("update:modelValue",c)}return(c,u)=>(e.openBlock(),e.createElementBlock("div",vr,[t.navigation?(e.openBlock(),e.createElementBlock("button",{key:0,class:"carousel__control btn btn-link text-light",type:"button",onClick:e.withModifiers(a,["prevent","stop"])},[e.createVNode(N,{symbol:"chevron-left"})])):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"viewport",ref:o,class:"carousel__viewport flex-grow-1"},[e.createElementVNode("div",{ref_key:"track",ref:n,class:"carousel__track d-flex justify-center align-items-center"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(A,s)=>e.renderSlot(c.$slots,"carousel-item",{key:A.src,item:A,index:s},()=>[e.createElementVNode("div",{class:e.normalizeClass(["carousel__item",s===t.modelValue?"selected":""]),onClick:m=>r(s)},e.toDisplayString(A),11,Lr)])),128))],512)],512),t.navigation?(e.openBlock(),e.createElementBlock("button",{key:1,class:"carousel__control btn btn-link text-light",type:"button",onClick:e.withModifiers(i,["prevent","stop"])},[e.createVNode(N,{symbol:"chevron-right"})])):e.createCommentVNode("",!0)]))}}),Ir={class:"media-thumbnails"},Pr=["onClick"],Tr={class:"img-container"},xr=e.defineComponent({__name:"media-thumbnails",props:{modelValue:{default:null},config:{type:Object,default:null},messages:{type:Object,default:{}},assets:{type:Array,default:[]}},emits:["update:modelValue","select"],setup(t,{emit:d}){const l=d,o=e.ref(-1);function n(a){o.value=a,l("update:modelValue",a),l("select",a)}return(a,i)=>(e.openBlock(),e.createElementBlock("div",Ir,[e.createVNode(dt,{items:t.assets},{"carousel-item":e.withCtx(r=>[e.createElementVNode("a",{role:"button",class:e.normalizeClass(["carousel__item media-thumbnails__thumbnail",r.index===t.modelValue||r.index===o.value?"is-active":""]),onClick:c=>n(r.index)},[e.createElementVNode("div",Tr,[e.createVNode(oe,{src:r.item.thumbnail||r.item.src,class:"img-fluid"},null,8,["src"])])],10,Pr)]),_:1},8,["items"])]))}}),zr={class:"progress-steps"},Qr={class:"progress-steps__list"},Rr={class:"progress-step"},Fr=["checked","id","value","disabled","read-only","required","onChange"],Or=["for"],Hr=["innerHTML"],Wr=["for"],Ur=["innerHTML"],qr=e.defineComponent({__name:"progress-steps",props:{modelValue:{type:Number,default:0},progress:{type:Number,default:0},steps:{type:Array},label:{type:String,default:""},reveal:{type:Boolean,default:!1}},emits:["update:modelValue","update:progress"],setup(t,{emit:d}){const l=t,o=d;function n(a){o("update:modelValue",a),a>=l.progress&&o("update:progress",a)}return(a,i)=>(e.openBlock(),e.createElementBlock("div",zr,[e.createElementVNode("ul",Qr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.steps,(r,c)=>(e.openBlock(),e.createElementBlock("li",{key:c,class:e.normalizeClass(["progress-steps__step",{"progress-steps__step--disabled":c>t.progress+(t.reveal?1:0),"progress-steps__step--active":c===(t.modelValue||0)}])},[e.renderSlot(a.$slots,"step",{},()=>[e.createElementVNode("div",Rr,[e.createElementVNode("input",{type:"radio",checked:c<=(t.progress||0),id:`step-${c}`,name:"step",class:"form-check-input",value:r.value,disabled:r.disabled||c>t.progress+(t.reveal?1:0),"read-only":r.readOnly,required:r.required,onChange:u=>n(c)},null,40,Fr),e.createElementVNode("label",{for:`step-${c}`},[e.renderSlot(a.$slots,"button",{step:r},()=>[e.createElementVNode("span",{class:"btn rounded-circle",innerHTML:e.unref(H)(r.text||"")},null,8,Hr)])],8,Or),e.createElementVNode("label",{for:`step-${c}`},[e.renderSlot(a.$slots,"label",{step:r},()=>[e.createElementVNode("span",{class:"form-check-label",innerHTML:e.unref(H)(r.label||"")},null,8,Ur)])],8,Wr)])])],2))),128))])]))}}),jr={class:"hint-system"},_r=["innerHTML"],Jr=["innerHTML"],Gr={key:1,class:"hint-system__hint-content"},Yr=["disabled"],Zr=e.defineComponent({__name:"hint-system",props:{modelValue:{type:Number,default:0},hints:{type:Array,default:()=>[]},penalty:{type:Number,default:1},maxHints:{type:Number,default:void 0},htmlContent:{type:Boolean,default:!1},label:{type:String,default:"Show hint"},description:{type:String,default:""}},emits:["update:modelValue","hint-revealed"],setup(t,{emit:d}){const l=t,o=d,n=e.ref(l.modelValue);e.watch(()=>l.modelValue,u=>{n.value=u});const a=e.computed(()=>l.maxHints!==void 0?l.maxHints:l.hints.length),i=e.computed(()=>n.value<a.value),r=e.computed(()=>l.hints.slice(0,n.value));function c(){if(!i.value)return;const u=n.value;n.value++,o("update:modelValue",n.value),o("hint-revealed",{hint:l.hints[u],index:u,penaltyTotal:n.value*l.penalty})}return(u,A)=>(e.openBlock(),e.createElementBlock("div",jr,[t.description?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:e.unref(H)(t.description),class:"hint-system__description"},null,8,_r)):e.createCommentVNode("",!0),r.value.length?(e.openBlock(),e.createBlock(e.TransitionGroup,{key:1,name:"hint-reveal",tag:"ol",class:"hint-system__list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(s,m)=>(e.openBlock(),e.createElementBlock("li",{key:m,class:"hint-system__hint"},[e.renderSlot(u.$slots,"hint",{hint:s,index:m,isNew:m===n.value-1},()=>[t.htmlContent?(e.openBlock(),e.createElementBlock("div",{key:0,class:"hint-system__hint-content",innerHTML:e.unref(H)(s.content||"")},null,8,Jr)):(e.openBlock(),e.createElementBlock("div",Gr,e.toDisplayString(s.content),1))])]))),128))]),_:3})):e.createCommentVNode("",!0),i.value?e.renderSlot(u.$slots,"trigger",{key:2,revealNext:c,canReveal:i.value,revealedCount:n.value,total:a.value},()=>[e.createElementVNode("button",{type:"button",class:"hint-system__trigger d-block w-100 text-center",disabled:!i.value,onClick:c},e.toDisplayString(t.label),9,Yr)]):e.createCommentVNode("",!0)]))}}),Kr=["id","popover"],xe=e.defineComponent({__name:"popover-dialog",props:{modelValue:{type:Boolean,default:!1},type:{type:String,default:"auto"},id:{type:String,default:()=>`popover-dialog-${Math.random().toString(36).substr(2,9)}`},title:{type:String,default:""},header:{type:Boolean,default:!1},footer:{type:Boolean,default:!1},classes:{type:String,default:""},hover:{type:Boolean,default:!1},hoverDelay:{type:Number,default:400},closeTimeout:{type:Number,default:0}},emits:["update:modelValue"],setup(t,{emit:d}){const l=t,o=d,n=e.ref(),a=e.ref(),i=e.ref(!1),r=e.computed(()=>"ontouchstart"in window||navigator.maxTouchPoints>0);function c(){clearTimeout(a.value),l.hover&&n.value?.showPopover()}function u(){i.value=!0,clearTimeout(a.value),c()}function A(){i.value=!1,(l.hover||l.closeTimeout)&&(a.value=setTimeout(()=>{n.value?.hidePopover()},l.closeTimeout||l.hoverDelay))}e.watch(()=>l.modelValue,(m,f)=>{m&&!f?n.value?.matches(":popover-open")||n.value?.showPopover():!m&&f&&n.value?.matches(":popover-open")&&n.value?.hidePopover()});function s(m){m.newState==="open"?(l.closeTimeout&&!i.value&&(clearTimeout(a.value),a.value=setTimeout(()=>{i.value||n.value?.hidePopover()},l.closeTimeout)),l.modelValue||o("update:modelValue",!0)):m.newState==="closed"&&(i.value=!1,l.modelValue&&o("update:modelValue",!1))}return e.onMounted(()=>{if(n.value?.addEventListener("toggle",s),l.modelValue&&n.value?.showPopover(),!r.value){n.value?.addEventListener("mouseenter",u),n.value?.addEventListener("mouseleave",A);const m=document.querySelector(`[popovertarget="${l.id}"]`);m&&(m.addEventListener("mouseenter",u),m.addEventListener("mouseleave",A))}}),e.onBeforeUnmount(()=>{if(clearTimeout(a.value),n.value?.removeEventListener("toggle",s),!r.value){n.value?.removeEventListener("mouseenter",u),n.value?.removeEventListener("mouseleave",A);const m=document.querySelector(`[popovertarget="${l.id}"]`);m&&(m.removeEventListener("mouseenter",u),m.removeEventListener("mouseleave",A))}}),(m,f)=>(e.openBlock(),e.createElementBlock("span",{class:"popover-dialog",id:t.id,popover:t.type,ref_key:"popover",ref:n},[e.renderSlot(m.$slots,"default",{},()=>[f[0]||(f[0]=e.createTextVNode(" Popover content goes here. ",-1))])],8,Kr))}}),Xr={class:"popover-tooltip"},es=["popovertarget","disabled","aria-describedby","aria-label"],ts={class:"popover-tooltip__content d-flex flex-column"},as={key:0,class:"popover-tooltip__header d-flex p-3 border-bottom"},ns=["innerHTML"],ls={class:"popover-tooltip__body"},os=["innerHTML"],is={key:1,class:"popover-tooltip__footer d-flex p-3 border-top"},rs=e.defineComponent({__name:"popover-tooltip",props:{modelValue:{type:Boolean,default:!1},id:{type:String,default:()=>`popover-tooltip-${Math.random().toString(36).substr(2,9)}`},size:{type:String},exclusive:{type:Boolean,default:!0},header:{type:Boolean,default:!1},footer:{type:Boolean,default:!1},title:{type:String,default:""},content:{type:String,default:""},hover:{type:Boolean,default:!0},hoverDelay:{type:Number,default:400},disabled:{type:Boolean,default:!1},ariaLabel:{type:String,default:""}},emits:["update:modelValue","confirm","cancel"],setup(t,{emit:d}){const l=t,o=d,n=ke(()=>l.title),a=ke(()=>l.content),i=e.computed({get(){return l.modelValue},set(u){o("update:modelValue",u)}}),r=e.ref(),c=e.ref();return(u,A)=>(e.openBlock(),e.createElementBlock("span",Xr,[e.createElementVNode("button",{type:"button",popovertarget:t.id,disabled:t.disabled,"aria-describedby":t.id,"aria-label":t.ariaLabel||u.$te("common.moreInfo")?u.$t("common.moreInfo"):void 0,ref_key:"trigger",ref:r},[e.renderSlot(u.$slots,"button",{},()=>[A[3]||(A[3]=e.createElementVNode("span",{class:"popover-tooltip__trigger"}," i ",-1))])],8,es),e.createVNode(xe,{id:t.id,modelValue:i.value,"onUpdate:modelValue":A[2]||(A[2]=s=>i.value=s),hover:t.hover,"hover-delay":t.hoverDelay,ref_key:"dialog",ref:c,role:"tooltip",class:e.normalizeClass(t.size?`popover-tooltip--${t.size}`:"")},{default:e.withCtx(()=>[e.createElementVNode("div",ts,[t.header?(e.openBlock(),e.createElementBlock("div",as,[t.title?(e.openBlock(),e.createElementBlock("h5",{key:0,class:"popover-tooltip__title",innerHTML:e.unref(n)},null,8,ns)):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",class:"btn-close ms-auto border-radius-none","aria-label":"Close",onClick:A[0]||(A[0]=s=>i.value=!1)})])):e.createCommentVNode("",!0),e.createElementVNode("div",ls,[e.renderSlot(u.$slots,"default",{},()=>[e.createElementVNode("span",{innerHTML:e.unref(a)},null,8,os)])]),t.footer?(e.openBlock(),e.createElementBlock("div",is,[e.renderSlot(u.$slots,"footer"),e.createElementVNode("button",{type:"button",class:"btn ms-auto",onClick:A[1]||(A[1]=s=>i.value=!1)},e.toDisplayString(u.$t("common.close")),1)])):e.createCommentVNode("",!0)])]),_:3},8,["id","modelValue","hover","hover-delay","class"])]))}}),ss={class:"popover-notification__header d-flex justify-content-between mb-2"},As={class:"popover-notification__title"},cs=["onClick"],ds=["innerHTML"],us=e.defineComponent({__name:"popover-notifications",props:{modelValue:{type:Boolean,default:!1},id:{type:String,default:()=>`popover-notifications-${Math.random().toString(36).substr(2,9)}`},items:{type:Array,default:()=>[]},debounceItem:{type:Number,default:0},closeTimeout:{type:Number,default:8e3},collapsible:{type:Boolean,default:!0}},setup(t,{expose:d}){const l=t,o=e.ref([]),n=e.ref([]),a=e.computed(()=>o.value.map(m=>({...m,content:H(m.content||"")}))),i=e.ref(!1),r=e.computed(()=>l.collapsible&&o.value.length>3);function c(m,f){o.value=o.value.filter(h=>h.id!==m.id)}e.watch(()=>l.items,(m,f)=>{const h=m.filter(b=>!f.some(E=>E.id===b.id));n.value=[...n.value,...h]});function u(){setTimeout(()=>{const m=n.value.shift();m&&o.value.push({...m,closeTimeout:l.closeTimeout,visible:!0}),n.value.length>0&&u()},o.value.length?l.debounceItem:0)}function A(m){r.value&&(m.preventDefault(),m.stopPropagation(),i.value=!i.value)}function s(m){console.log("Adding item:",m),n.value.push(m),u()}return e.onMounted(()=>{n.value=l.items,n.value.length>3&&(i.value=!0),u()}),d({addItem:s}),(m,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["popover-notifications",{"popover-notifications--collapsed":i.value}]),style:{anchorName:"--popover-notifications"}},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(h,b)=>(e.openBlock(),e.createBlock(xe,{key:h.id,id:h.id,"close-timeout":h.closeTimeout,type:"manual",class:"popover-notification",modelValue:h.visible,"onUpdate:modelValue":[E=>h.visible=E,E=>c(h)],onClick:A},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"item",{item:h},()=>[e.createElementVNode("div",ss,[e.createElementVNode("span",As,e.toDisplayString(h.title),1),e.createElementVNode("button",{type:"button",class:"btn btn-close p-0",onClick:e.withModifiers(E=>h.visible=!1,["stop"]),"aria-label":"Close notification"},null,8,cs)]),e.createElementVNode("span",{innerHTML:h.content},null,8,ds)])]),_:2},1032,["id","close-timeout","modelValue","onUpdate:modelValue"]))),128))],2))}}),ms=e.defineComponent({__name:"dom-renderer",props:{modelValue:{type:String,default:""},fixedWidth:{type:Number,default:0},renderUpdates:{type:Boolean,default:!1},exportToSvg:{type:Boolean,default:!1},options:{type:Object,default:()=>({})},pending:{type:Boolean,default:!1},emitPending:{type:Boolean,default:!1},debug:{type:Boolean,default:!1}},emits:["update:modelValue","update:pending"],setup(t,{emit:d}){const l=t,o=d,n=e.ref(),a=e.ref(""),i=e.ref(),r=e.ref(!0);async function c(){if(!n.value||!r.value)return"";const A=n.value;if(!A.isConnected)return"";try{l.emitPending&&o("update:pending",!0);const s=A.firstElementChild;if(!s)return"";const m=await pt(s,{backgroundColor:"rgba(0, 0, 0, 0)",scale:1,...l.options});if(!r.value||!n.value||!A.isConnected)return"";const f=m.toDataURL();if(o("update:modelValue",f),l.emitPending&&o("update:pending",!1),l.debug){const h=new Image;h.src=f,document.body.appendChild(h)}return f}catch(s){return r.value&&l.emitPending&&o("update:pending",!1),console.warn("dom-renderer: Render failed",s),""}}const u=ve.debounce(async()=>{a.value=await c()},300,{trailing:!0,leading:!1});return e.onMounted(()=>{const A=n.value;l.renderUpdates&&(i.value=new MutationObserver(async s=>{!r.value||!A.isConnected||(l.emitPending&&o("update:pending",!0),u())}),i.value.observe(A,{attributes:!0,childList:!0,characterData:!0,subtree:!0})),setTimeout(()=>{l.emitPending&&o("update:pending",!0),u()},500)}),e.onBeforeUnmount(()=>{r.value=!1,i.value&&i.value.disconnect(),u.cancel()}),(A,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dom-renderer",{"off-screen":!t.debug}]),ref_key:"renderer",ref:n,style:e.normalizeStyle(t.fixedWidth>0?{width:`${t.fixedWidth}px`}:{})},[e.renderSlot(A.$slots,"default")],6))}}),fs={class:"qr-code"},ps=["innerHTML"],gs=e.defineComponent({__name:"qr-code",props:{data:null,image:null,download:{type:Boolean,default:!1},filename:{type:String,default:"qr-code"}},emits:["update:dataUrl"],setup(t,{expose:d,emit:l}){const o=t,n=e.ref(),a=e.computed(()=>({width:300,height:300,type:"canvas",data:o.data,...o.image?{image:o.image}:{},margin:10,qrOptions:{typeNumber:0,mode:"Byte",errorCorrectionLevel:"Q"},imageOptions:{hideBackgroundDots:!0,imageSize:.4,margin:20,crossOrigin:"anonymous"},dotsOptions:{type:"rounded"},backgroundOptions:{color:"#ffffff"},cornersSquareOptions:{color:"#333333",type:"extra-rounded"},cornersDotOptions:{color:"#333333",type:"dot"}}));function i(c=null,u=null){typeof window<"u"&&(n.value&&(n.value.innerHTML=""),new Re(c||a.value).append(n.value))}function r(){new Re({...a.value,width:1200,height:1200}).download({name:o.filename,extension:"png"})}return e.watch(()=>a.value,i,{deep:!0,immediate:!0}),e.onMounted(()=>{typeof window<"u"&&i()}),d({download:r}),(c,u)=>(e.openBlock(),e.createElementBlock("div",fs,[o.download?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn btn-outline-contrast mb-3",onClick:r,innerHTML:c.$t("qrlink.download")},null,8,ps)):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"canvas",ref:n},null,512))]))}}),hs={class:"link-sharing"},ys={key:0,class:"link-sharing__links container"},bs={class:"row"},ks={key:0,class:"col-12 col-md-6"},ws=["href"],Bs={class:"caption"},Cs={key:1,class:"col-12 col-md-6"},Vs=["href"],Es={class:"caption"},$s={key:2,class:"col-12 col-md-6"},Ss={class:"caption"},Ns={key:3,class:"col-12 col-md-6"},Ms=["href"],Ds={class:"caption"},vs={key:4,class:"col-12 col-md-6"},Ls=["href"],Is={class:"caption"},Ps={key:5,class:"col-12 col-md-6"},Ts={class:"caption"},xs={key:6,class:"col-12 col-md-6"},zs=["href"],Qs={class:"caption"},Rs={key:1,class:"link-sharing__instructions pt-5"},Fs={class:"row"},Os={class:"col-12 text-center py-0"},Hs={class:"mb-5"},Ws=t=>t.replace(/<(?:.|\n)*?>/gm,""),Us=e.defineComponent({__name:"link-sharing",props:{url:{type:String,default:""},subject:{type:String,default:""},hashtags:Array,text:{type:String,default:""},media:{type:String,default:""},services:{type:Object,default:{facebook:!0,instagram:!0,linkedin:!0,whatsapp:!0,mailto:!0,clipboard:!0,bluesky:!0}}},setup(t){const d=t,l=e.ref(!1),o=e.computed(()=>encodeURIComponent(d.url));e.computed(()=>encodeURIComponent(d.media));const n=e.computed(()=>Ws(d.text)),a=e.computed(()=>!!(navigator&&navigator.userAgent&&/Mobi|Android/i.test(navigator.userAgent)));async function i(){const r=document.createElement("textarea");document.body.appendChild(r),r.value=d.url,r.select(),r.setSelectionRange(0,99999),navigator.clipboard.writeText(r.value),document.body.removeChild(r)}return(r,c)=>(e.openBlock(),e.createElementBlock("div",hs,[l.value?(e.openBlock(),e.createElementBlock("div",Rs,[e.createElementVNode("div",Fs,[e.createElementVNode("div",Os,[e.createElementVNode("div",Hs,[e.createElementVNode("p",null,e.toDisplayString(r.$t("sharing.instructions",{service:"Instagram"})),1),e.createElementVNode("p",null,[e.createElementVNode("strong",null,e.toDisplayString(Array.isArray(t.hashtags)?t.hashtags.join(", "):t.hashtags),1)]),e.createElementVNode("button",{type:"button",class:"btn btn-text",onClick:c[1]||(c[1]=e.withModifiers(u=>l.value=!l.value,["prevent"]))},[e.createVNode(N,{symbol:"arrow-left"}),e.createTextVNode(" "+e.toDisplayString(r.$t("common.back")),1)])])])])])):(e.openBlock(),e.createElementBlock("div",ys,[e.createElementVNode("div",bs,[t.services.facebook?(e.openBlock(),e.createElementBlock("div",ks,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`https://www.facebook.com/sharer.php?u=${o.value}`,target:"_blank",rel:"noopener"},[e.createVNode(N,{symbol:"facebook"}),e.createElementVNode("span",Bs,e.toDisplayString(r.$t("sharing.facebook")),1)],8,ws)])):e.createCommentVNode("",!0),t.services.bluesky?(e.openBlock(),e.createElementBlock("div",Cs,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`https://bsky.app/intent/compose?text=${n.value}${n.value?"%20":""}${t.url}`,target:"_blank",rel:"noopener"},[e.createVNode(N,{symbol:"bluesky-logo"}),e.createElementVNode("span",Es,e.toDisplayString(r.$t("sharing.bluesky")),1)],8,Vs)])):e.createCommentVNode("",!0),t.services.instagram?(e.openBlock(),e.createElementBlock("div",$s,[e.createElementVNode("button",{type:"button",class:"link-sharing__link btn btn-primary",onClick:c[0]||(c[0]=e.withModifiers(u=>l.value=!l.value,["prevent"]))},[e.createVNode(N,{symbol:"instagram"}),e.createElementVNode("span",Ss,e.toDisplayString(r.$t("sharing.instagram")),1)])])):e.createCommentVNode("",!0),t.services.linkedin?(e.openBlock(),e.createElementBlock("div",Ns,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`https://www.linkedin.com/shareArticle?mini=true&url=${o.value}&title=${t.subject}`,target:"_blank",rel:"noopener"},[e.createVNode(N,{symbol:"linkedin"}),e.createElementVNode("span",Ds,e.toDisplayString(r.$t("sharing.linkedin")),1)],8,Ms)])):e.createCommentVNode("",!0),t.services.whatsapp&&a.value?(e.openBlock(),e.createElementBlock("div",vs,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`whatsapp://send?text=${o.value}`,target:"_blank",rel:"noopener"},[e.createVNode(N,{symbol:"whatsapp"}),e.createElementVNode("span",Is,e.toDisplayString(r.$t("sharing.whatsapp")),1)],8,Ls)])):e.createCommentVNode("",!0),t.services.clipboard?(e.openBlock(),e.createElementBlock("div",Ps,[e.createElementVNode("button",{type:"button",class:"link-sharing__link btn btn-primary",onClick:e.withModifiers(i,["prevent","stop"])},[e.createVNode(N,{symbol:"copy"}),e.createElementVNode("span",Ts,e.toDisplayString(r.$t("sharing.clipboard")),1)])])):e.createCommentVNode("",!0),t.services.mailto?(e.openBlock(),e.createElementBlock("div",xs,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`mailto:?subject=${t.subject}&body=${n.value}%0D%0A${t.url}`,target:"_blank",rel:"noopener"},[e.createVNode(N,{symbol:"mail"}),e.createElementVNode("span",Qs,e.toDisplayString(r.$t("sharing.mailto")),1)],8,zs)])):e.createCommentVNode("",!0)])]))]))}}),qs={class:"base-form"},js=e.defineComponent({__name:"base-form",props:{id:{},name:{},variant:{},disabled:{type:Boolean},pending:{type:Boolean}},setup(t){function d(n){console.log("input",n)}function l(n){console.log("reset",n)}function o(n){console.log("submit",n)}return(n,a)=>(e.openBlock(),e.createElementBlock("div",qs,[e.createElementVNode("form",{ref:"form",onInput:d,onReset:l,onSubmit:e.withModifiers(o,["prevent"])},[e.renderSlot(n.$slots,"default")],544)]))}}),_s={class:"touch-wrapper__controls"},Js={class:"btn-group",role:"group"},Gs=e.defineComponent({__name:"touch-wrapper",props:{modelValue:{type:Number,default:1}},emits:["update:modelValue"],setup(t,{emit:d}){const l=e.getCurrentInstance(),o=l&&l.appContext.config.globalProperties.$config,n=t,a=d,i=e.ref();function r(A){const s=n.modelValue+A;a("update:modelValue",A===0?1:s>=1?s:1)}function c(A){if(A.ctrlKey){A.preventDefault();const s=0-A.deltaY*.01;r(s)}}function u(A){A.preventDefault();const{scale:s}=A,m=s>1?s*.01:0-s;r(m)}return e.onMounted(()=>{i.value&&(i.value.addEventListener("wheel",c,!1),i.value.addEventListener("gesturestart",u,!1),i.value.addEventListener("gesturechange",u,!1),i.value.addEventListener("gestureend",u,!1))}),(A,s)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"touchElement",ref:i,class:"touch-wrapper"},[e.renderSlot(A.$slots,"controls",{on:{setScale:r}},()=>[e.createElementVNode("div",_s,[e.createElementVNode("div",Js,[e.createElementVNode("button",{type:"button",class:"btn",onClick:s[0]||(s[0]=m=>r(-1))},[e.createVNode(N,{symbol:"minus","base-path":e.unref(o).iconSprite},null,8,["base-path"])]),e.createElementVNode("button",{type:"button",class:"btn",onClick:s[1]||(s[1]=m=>r(0))},[e.createVNode(N,{symbol:"maximize","base-path":e.unref(o).iconSprite},null,8,["base-path"])]),e.createElementVNode("button",{type:"button",class:"btn",onClick:s[2]||(s[2]=m=>r(1))},[e.createVNode(N,{symbol:"plus","base-path":e.unref(o).iconSprite},null,8,["base-path"])])])])]),e.renderSlot(A.$slots,"default")],512))}});let Ce=null;async function Ys(){if(typeof window>"u")return null;if(Ce)return Ce;const t=await import("canvas-confetti");return Ce=t.default||t,Ce}const ut={default:{items:[{particleCount:80,spread:120,origin:{y:.625,x:.5}},{timeout:400,particleCount:80,spread:120,origin:{y:.625,x:.625}},{timeout:800,particleCount:80,spread:120,origin:{y:.625,x:.375}}]},randomDirection:{items:[{angle:ze(55,125),spread:ze(50,70),particleCount:ze(50,100),origin:{y:.6}}]},pride:{items:[{timeout:20,particleCount:2,spread:32,origin:{x:0},colors:["#ff0000"]},{timeout:20,particleCount:2,spread:32,origin:{x:1},colors:["#ff0000"]}]}};function ze(t,d){return Math.random()*(d-t)+t}const Zs=e.defineComponent({__name:"canvas-confetti",props:{preset:{type:String,default:"default"},items:{default:()=>[{}]},colors:{type:Array,default:()=>[]},loop:{type:Boolean,default:!1}},setup(t){const d=t,l=e.ref(null),o=e.computed(()=>({...ut[d.preset],items:ut[d.preset].items.map((i,r)=>({...i,...d.items[r],...d.colors.length?{colors:d.colors}:{}}))}));async function n(i){return new Promise(r=>{(typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):u=>setTimeout(u,16))(()=>l.value?.confetti?.(JSON.parse(JSON.stringify(i)))),setTimeout(()=>r(),0)})}async function a(){await Promise.all(o.value.items.map(i=>new Promise(r=>setTimeout(()=>{r(n(i))},i.timeout||0)))),d.loop&&a()}return e.onMounted(async()=>{if(typeof window<"u"&&l.value){const i=await Ys();if(!i)return;l.value.confetti=l.value?.confetti||i.create(l.value,{resize:!0}),a()}}),(i,r)=>(e.openBlock(),e.createElementBlock("canvas",{class:"canvas-confetti",ref_key:"canvas",ref:l},null,512))}});C.Accordion=Rt,C.AccordionItem=Pt,C.AssetUploader=ar,C.AutoSuggest=_e,C.BaseButton=We,C.BaseCamera=xo,C.BaseCarousel=dt,C.BaseForm=js,C.BaseHeadline=wt,C.BaseImage=oe,C.BaseInput=Ae,C.BaseMap=Ye,C.BaseParagraph=Ct,C.CanvasConfetti=Zs,C.CheckGroup=al,C.ColorPalette=_l,C.CustomHtml=bl,C.DomRenderer=ms,C.FileUpload=Xe,C.HintSystem=Zr,C.ImageCrop=at,C.ImageCropResize=nt,C.ImageResize=tt,C.ImageUpload=ot,C.InputCheckbox=Kt,C.InputColor=Ul,C.InputDatepicker=Jn,C.InputDatetime=aa,C.InputDropdown=Te,C.InputFile=Pe,C.InputPasscode=Kn,C.InputPassword=je,C.InputTextarea=Jt,C.LinkSharing=Us,C.LoadingSpinner=be,C.LocationFinder=Dr,C.LocationList=Ze,C.MediaThumbnails=xr,C.ModalDialog=lt,C.PopoverDialog=xe,C.PopoverNotifications=us,C.PopoverTooltip=rs,C.ProgressSteps=qr,C.QrCode=gs,C.RadioButtons=Al,C.RadioGroup=Be,C.RteEditor=Fl,C.SelectMedia=Bl,C.SortableList=et,C.SvgIcon=N,C.TouchWrapper=Gs,C.UploadGroup=it,C.useCameraFilter=Je,C.useDirections=rt,C.useGeocoding=st,C.useGeolocation=ct,Object.defineProperty(C,Symbol.toStringTag,{value:"Module"})}));
|
|
4
|
+
`]),value:i.value||i,checked:i.value?i.value===t.modelValue?.value:i===t.modelValue,disabled:t.disabled,"read-only":t.readOnly,required:t.required,onChange:d=>o(i)},null,42,ll),e.renderSlot(n.$slots,"option-label",{option:i,index:r},()=>[e.createElementVNode("label",{class:"form-check-label",for:`${t.id}-${r}`,innerHTML:e.unref(H)(i.text||"")},null,8,ol)])],2))),128)),e.renderSlot(n.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id},e.toDisplayString(t.label),9,il)):e.createCommentVNode("",!0)])]))}}),rl={class:"radio-buttons"},sl=["for"],Al=e.defineComponent({__name:"radio-buttons",props:{modelValue:{type:null,default:""},options:{type:Array,default:[]},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},keyOption:{type:null},itemClass:{type:String,default:""}},emits:["update:modelValue","update:selection"],setup(t,{emit:A}){const l=t,o=A,n=e.computed({get(){return l.modelValue},set(a){o("update:modelValue",a)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",rl,[e.createVNode(Ce,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),options:t.options,name:t.name,id:t.id,disabled:t.disabled,required:t.required,class:"d-flex flex-column gap-3 justify-content-center"},{"option-label":e.withCtx(r=>[e.createElementVNode("label",{for:`${t.id}-${r.index}`,class:"d-block btn btn-outline-primary p-3 fw-bold",role:"button"},e.toDisplayString(r.option.text),9,sl)]),_:1},8,["modelValue","options","name","id","disabled","required"])]))}}),cl=["id","name","multiple","accept","disabled"],dl={class:"input__input-group input-group"},ul=["value","id","name","disabled"],ml=["for","disabled"],fl={class:"btn btn-outline-contrast"},pl=["for"],gl=["innerHTML"],Te=e.defineComponent({__name:"input-file",props:{modelValue:{type:Array,default:[]},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null},multiple:{type:Boolean,default:!1},accept:{type:String},maxFileSize:{type:Number,default:0},dropzone:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A;function n(d){const u=d.target&&d.target.files;u&&(i.splice(0,i.length),Array.from(u).forEach(c=>{if(l.maxFileSize&&c.size>l.maxFileSize){console.warn(`File ${c.name} exceeds the ${l.maxFileSize} bytes size limit and will not be added.`);return}i.push(c)}))}const a=e.ref(),i=e.reactive([]),r=e.computed(()=>i&&i.map(d=>d.name));return e.watch(()=>l.modelValue,(d,u)=>{d.length===0&&(a.value.value=null)},{deep:!0}),e.watch(()=>i,(d,u)=>{o("update:modelValue",d)},{deep:!0}),(d,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input input-file","input-file--primary"])},[e.createElementVNode("input",{ref_key:"input",ref:a,type:"file",id:t.id,name:t.name,class:"d-none",onChange:n,multiple:t.multiple,accept:t.accept,disabled:t.disabled},null,40,cl),e.createElementVNode("div",dl,[e.renderSlot(d.$slots,"input-prepend"),e.createElementVNode("input",{type:"text",value:r.value,id:t.id,name:t.name,class:"form-control",disabled:t.disabled},null,8,ul),e.renderSlot(d.$slots,"input-append",{},()=>[e.createElementVNode("label",{for:t.id,disabled:t.disabled},[e.renderSlot(d.$slots,"button",{},()=>[e.createElementVNode("span",fl,e.toDisplayString(d.$t("common.selectFile")),1)])],8,ml)])]),e.createElementVNode("label",{for:t.id},[e.renderSlot(d.$slots,"label",{},()=>[e.createElementVNode("span",{class:"input__label",innerHTML:e.unref(H)(`${t.label}${t.required?" *":""}`)},null,8,gl)])],8,pl)]))}}),hl={key:0,class:"custom-html"},yl=["innerHTML"],bl=e.defineComponent({__name:"custom-html",props:{content:{}},setup(t){const A=e.ref(!1);return e.onMounted(()=>{window!==void 0&&(A.value=!0)}),(l,o)=>A.value?(e.openBlock(),e.createElementBlock("div",hl,[e.renderSlot(l.$slots,"default",{},()=>[e.createElementVNode("div",{class:"custom-html__content",innerHTML:t.content},null,8,yl)])])):e.createCommentVNode("",!0)}}),kl={class:"select-media"},wl=["for"],Bl=e.defineComponent({__name:"select-media",props:{modelValue:{type:null,default:""},assets:{type:Array,default:[]},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},emitKey:{type:String,default:"src"}},emits:["update:modelValue","update:selection"],setup(t,{emit:A}){const l=t,o=A,n=e.computed({get(){return l.modelValue},set(a){const i=l.assets.find(r=>r.id===a);o("update:modelValue",l.emitKey?i[l.emitKey]:i),l.emitKey&&l.emitKey!=="id"&&o("update:selection",i.id)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",kl,[e.createVNode(Ce,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),options:t.assets.map(r=>r.id),name:t.name,id:t.id,disabled:t.disabled,required:t.required,class:"d-flex flex-wrap flex-row justify-content-center",itemClass:"col-6 p-2"},{"option-label":e.withCtx(r=>[e.createElementVNode("label",{for:`${t.id}-${r.index}`,class:e.normalizeClass(["w-100",{"is-active":t.assets[r.index].id===n.value}]),role:"button"},[t.assets[r.index].thumbnail?(e.openBlock(),e.createBlock(oe,{key:0,src:t.assets[r.index].thumbnail,alt:t.assets[r.index].id},null,8,["src","alt"])):e.createCommentVNode("",!0)],10,wl)]),_:1},8,["modelValue","options","name","id","disabled","required"])]))}}),Cl={class:"rte-editor"},Vl={key:0,class:"rte-editor__controls mb-2"},El=["disabled"],$l=["disabled"],Sl={class:"btn-group"},Nl=["disabled"],vl=["disabled"],Ml={class:"btn-group"},Dl={class:"dropdown"},Ll={class:"btn dropdown-toggle btn-light","data-bs-toggle":"dropdown",role:"button",type:"button"},Il={class:"dropdown-menu"},Pl={class:"dropdown"},Tl={class:"btn dropdown-toggle btn-light","data-bs-toggle":"dropdown",role:"button",type:"button"},xl={class:"dropdown-menu"},zl={class:"btn-group"},Rl=["disabled"],Fl=["disabled"],Ol=e.defineComponent({__name:"rte-editor",props:{modelValue:{type:String,default:""},disabled:{type:Boolean,default:!1},iconBasePath:{type:String,default:"/rte-icons-defs.svg"}},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.ref(!1),a=e.shallowRef(void 0),i=e.shallowRef(null);e.onMounted(async()=>{const[{Editor:c,mergeAttributes:s},{EditorContent:m},{default:f},{default:h},{default:b},{default:E},{default:y}]=await Promise.all([import("@tiptap/core"),import("@tiptap/vue-3"),import("@tiptap/extension-highlight"),import("@tiptap/extension-text-align"),import("@tiptap/extension-link"),import("@tiptap/starter-kit"),import("@tiptap/extension-bold")]);i.value=m,a.value=new c({content:l.modelValue,onUpdate:()=>{o("update:modelValue",a.value?.getHTML())},extensions:[E.configure({bold:!1,link:!1}),y.extend({addAttributes(){return{class:{default:null}}},parseHTML(){return[{tag:"strong"},{tag:"b"}]},renderHTML({HTMLAttributes:g}){return["strong",s(this.options.HTMLAttributes,g),0]}}),h.configure({types:["heading","paragraph"]}),f,b.extend({addAttributes(){return{...this.parent?.(),class:{default:null},id:{default:null},title:{default:null}}},parseHTML(){return[{tag:"a[href]",getAttrs:g=>({href:g.getAttribute("href"),target:g.getAttribute("target"),rel:g.getAttribute("rel"),class:g.getAttribute("class"),id:g.getAttribute("id"),title:g.getAttribute("title")})},{tag:"a:not([href])",getAttrs:g=>({href:null,target:g.getAttribute("target"),rel:g.getAttribute("rel"),class:g.getAttribute("class"),id:g.getAttribute("id"),title:g.getAttribute("title")})}]},renderHTML({HTMLAttributes:g}){if(!g.href){const{href:C,target:N,rel:B,...v}=g;return["a",s(v),0]}return["a",s(this.options.HTMLAttributes,g),0]}}).configure({openOnClick:!1,autolink:!0,defaultProtocol:"https",protocols:["http","https"],HTMLAttributes:{target:"_blank",rel:"noopener noreferrer"}})]})}),e.onBeforeUnmount(()=>{a.value?.destroy()}),e.watch(()=>l.modelValue,(c,s)=>{if(a.value){if(a.value.getHTML()===c)return;a.value.commands.setContent(c)}});function r(){const c=a.value?.getAttributes("link").href,s=window.prompt("URL",c);if(s!==null){if(s===""){a.value?.chain().focus().extendMarkRange("link").unsetLink().run();return}try{a.value?.chain().focus().extendMarkRange("link").setLink({href:s}).run()}catch(m){alert(m.message)}}}const d=()=>{a.value?.commands.setContent(`<textarea>${a.value.getHTML()}</textarea>`),n.value=!0},u=()=>{a.value?.commands.setContent(a.value.getText()),n.value=!1};return(c,s)=>(e.openBlock(),e.createElementBlock("div",Cl,[a.value?(e.openBlock(),e.createElementBlock("div",Vl,[n.value?(e.openBlock(),e.createElementBlock("button",{key:1,class:"btn btn-sm btn-light is-active",onClick:u,disabled:!a.value.can().chain().focus().toggleCode().run(),title:"Toggle Source"},[e.createVNode(M,{symbol:"source","base-path":t.iconBasePath},null,8,["base-path"])],8,$l)):(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("code")}]),onClick:d,disabled:!a.value.can().chain().focus().toggleCode().run(),title:"Toggle Source"},[e.createVNode(M,{symbol:"source","base-path":t.iconBasePath},null,8,["base-path"])],10,El)),e.createElementVNode("div",Sl,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("bold")}]),onClick:s[0]||(s[0]=m=>a.value?.chain().focus().toggleBold().run()),disabled:!a.value.can().chain().focus().toggleBold().run(),title:"Toggle Bold"},[e.createVNode(M,{symbol:"bold","base-path":t.iconBasePath},null,8,["base-path"])],10,Nl),e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("italic")}]),onClick:s[1]||(s[1]=m=>a.value?.chain().focus().toggleItalic().run()),disabled:!a.value.can().chain().focus().toggleItalic().run(),title:"Toggle Italic"},[e.createVNode(M,{symbol:"italic","base-path":t.iconBasePath},null,8,["base-path"])],10,vl)]),e.createElementVNode("div",Ml,[e.createElementVNode("div",Dl,[e.createElementVNode("button",Ll,[a.value.isActive("heading",{level:1})?(e.openBlock(),e.createBlock(M,{key:0,symbol:"h1","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive("heading",{level:2})?(e.openBlock(),e.createBlock(M,{key:1,symbol:"h2","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive("heading",{level:3})?(e.openBlock(),e.createBlock(M,{key:2,symbol:"h3","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive("heading",{level:4})?(e.openBlock(),e.createBlock(M,{key:3,symbol:"h4","base-path":t.iconBasePath},null,8,["base-path"])):(e.openBlock(),e.createBlock(M,{key:4,symbol:"headline","base-path":t.iconBasePath},null,8,["base-path"]))]),e.createElementVNode("ul",Il,[e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("heading",{level:1})}]),onClick:s[2]||(s[2]=m=>a.value?.chain().focus().setHeading({level:1}).run()),title:"Set Heading 1"},[e.createVNode(M,{symbol:"h1","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("heading",{level:2})}]),onClick:s[3]||(s[3]=m=>a.value?.chain().focus().setHeading({level:2}).run()),title:"Set Heading 2"},[e.createVNode(M,{symbol:"h2","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("heading",{level:3})}]),onClick:s[4]||(s[4]=m=>a.value?.chain().focus().setHeading({level:3}).run()),title:"Set Heading 3"},[e.createVNode(M,{symbol:"h3","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("heading",{level:4})}]),onClick:s[5]||(s[5]=m=>a.value?.chain().focus().setHeading({level:4}).run()),title:"Set Heading 4"},[e.createVNode(M,{symbol:"h4","base-path":t.iconBasePath},null,8,["base-path"])],2)])])]),e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("paragraph")}]),onClick:s[6]||(s[6]=m=>a.value?.chain().focus().setParagraph().run()),title:"Set Paragraph"},[e.createVNode(M,{symbol:"paragraph","base-path":t.iconBasePath},null,8,["base-path"])],2),e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("bulletList")}]),onClick:s[7]||(s[7]=m=>a.value?.chain().focus().toggleBulletList().run()),title:"Toggle Bullet List"},[e.createVNode(M,{symbol:"list","base-path":t.iconBasePath},null,8,["base-path"])],2),e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("orderedList")}]),onClick:s[8]||(s[8]=m=>a.value?.chain().focus().toggleOrderedList().run()),title:"Toggle Ordered List"},[e.createVNode(M,{symbol:"ordered-list","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("div",Pl,[e.createElementVNode("button",Tl,[a.value.isActive({textAlign:"center"})?(e.openBlock(),e.createBlock(M,{key:0,symbol:"align-center","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive({textAlign:"left"})?(e.openBlock(),e.createBlock(M,{key:1,symbol:"align-left","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive({textAlign:"right"})?(e.openBlock(),e.createBlock(M,{key:2,symbol:"align-right","base-path":t.iconBasePath},null,8,["base-path"])):(e.openBlock(),e.createBlock(M,{key:3,symbol:"align-justify","base-path":t.iconBasePath},null,8,["base-path"]))]),e.createElementVNode("ul",xl,[e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive({textAlign:"left"})}]),onClick:s[9]||(s[9]=m=>a.value?.chain().focus().setTextAlign("left").run())},[e.createVNode(M,{symbol:"align-left","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive({textAlign:"center"})}]),onClick:s[10]||(s[10]=m=>a.value?.chain().focus().setTextAlign("center").run())},[e.createVNode(M,{symbol:"align-center","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive({textAlign:"right"})}]),onClick:s[11]||(s[11]=m=>a.value?.chain().focus().setTextAlign("right").run())},[e.createVNode(M,{symbol:"align-right","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive({textAlign:"pretty"})}]),onClick:s[12]||(s[12]=m=>a.value?.chain().focus().setTextAlign("right").run())},[e.createVNode(M,{symbol:"align-justify","base-path":t.iconBasePath},null,8,["base-path"])],2)])])]),a.value.isActive("link")?(e.openBlock(),e.createElementBlock("button",{key:3,class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("link")}]),onClick:s[13]||(s[13]=m=>a.value.chain().focus().unsetLink().run()),title:"Unset Link"},[e.createVNode(M,{symbol:"unlink","base-path":t.iconBasePath},null,8,["base-path"])],2)):(e.openBlock(),e.createElementBlock("button",{key:2,class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("link")}]),onClick:r,title:"Set Link"},[e.createVNode(M,{symbol:"link","base-path":t.iconBasePath},null,8,["base-path"])],2)),e.createElementVNode("div",zl,[e.createElementVNode("button",{class:"btn btn-sm btn-light",onClick:s[14]||(s[14]=m=>a.value?.chain().focus().undo().run()),disabled:!a.value.can().chain().focus().undo().run(),title:"Undo"},[e.createVNode(M,{symbol:"undo","base-path":t.iconBasePath},null,8,["base-path"])],8,Rl),e.createElementVNode("button",{class:"btn btn-sm btn-light",onClick:s[15]||(s[15]=m=>a.value?.chain().focus().redo().run()),disabled:!a.value.can().chain().focus().redo().run(),title:"Redo"},[e.createVNode(M,{symbol:"redo","base-path":t.iconBasePath},null,8,["base-path"])],8,Fl)])])):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.value),{class:"rte-editor__content",editor:a.value},null,8,["editor"]))]))}}),Ql={class:"input-color"},Hl={class:"base-input__color-swatch"},Wl=["name","id","disabled","read-only","required","aria-label"],Ul=e.defineComponent({__name:"input-color",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null}},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.computed({get(){return l.modelValue},set(a){o("update:modelValue",a)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",Ql,[e.createVNode(ue,{modelValue:n.value,"onUpdate:modelValue":i[1]||(i[1]=r=>n.value=r),type:t.type==="color"?"text":t.type,id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,label:t.label,disabled:t.disabled,"read-only":t.readOnly,required:t.required,maxlength:t.maxlength},{"input-append":e.withCtx(r=>[e.createElementVNode("span",Hl,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":i[0]||(i[0]=d=>n.value=d),type:"color",name:`${t.name}-color`,id:`${t.id}-color`,disabled:t.disabled,"read-only":t.readOnly,required:t.required,class:"form-control","aria-label":t.label},null,8,Wl),[[e.vModelText,n.value]])])]),_:1},8,["modelValue","type","id","name","placeholder","pattern","label","disabled","read-only","required","maxlength"])]))}}),ql={class:"color-palette"},jl=["for"],_l=e.defineComponent({__name:"color-palette",props:{modelValue:{type:[String],default:""},colors:{type:Array,default:["#000000","#FFFFFF"]},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.computed({get(){return l.modelValue},set(a){o("update:modelValue",a)}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",ql,[e.createVNode(Ce,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),options:t.colors,name:t.name,id:t.id,label:t.label,disabled:t.disabled,required:t.required,class:"d-flex flex-wrap flex-row gap-2"},{"option-label":e.withCtx(r=>[e.createElementVNode("label",{for:`${t.id}-${r.index}`,class:"d-block rounded-circle",style:e.normalizeStyle({backgroundColor:r.option})},null,12,jl)]),_:1},8,["modelValue","options","name","id","label","disabled","required"])]))}}),Jl=["id"],Gl=["for","innerHTML"],Yl={class:"dropdown"},Zl={class:"caption"},Xl=["innerHTML"],Kl={class:"caption__text"},eo={class:"d-block text-truncate"},to={class:"dropdown-menu"},ao={class:"form-check d-flex"},no=["value","id","name","label","required","disabled"],lo=["value","id","name","label","required","disabled"],oo=["for"],xe=e.defineComponent({__name:"input-dropdown",props:{id:{type:String},name:{type:String,default:()=>`dropdown-${P()}`},label:{type:String},error:{type:String},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},modelValue:{type:null},options:{type:Array,required:!0},multiple:{type:Boolean,default:!1},showSelectionCount:{type:Boolean,default:!1},toggleCaption:{type:String},placeholder:{type:String,default:""},icon:{default:"chevron-down",type:String},variant:{type:String,default:""},color:{type:String,default:""},outlined:{type:Boolean,default:!1},exactMatch:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:A}){const{t:l}=De.useI18n(),o=t,n=A,a=e.computed({get(){return o.multiple&&!o.modelValue?[]:o.modelValue},set(d){n("update:modelValue",d)}}),i=e.computed(()=>o.options&&o.options.map(d=>(d=typeof d=="string"?{text:d,value:d}:d,{...d,active:o.modelValue&&d.value&&(o.exactMatch?o.modelValue===d.value:o.multiple?o.modelValue.includes(d.value):o.modelValue===d.value)}))),r=e.computed(()=>{if(!o.modelValue)return o.placeholder||`${l("common.select")}`;if(o.multiple&&Array.isArray(o.modelValue)&&o.modelValue.length)return i.value.reduce((d,u)=>o.modelValue.includes(u.value)?`${d}${d?", ":""}${u.text}`:d,"");if(!o.multiple){const d=i.value.find(u=>typeof u.value=="object"&&u.value!==null?JSON.stringify(u.value)===JSON.stringify(o.modelValue):u.value===o.modelValue);return d?d.text:o.placeholder||`${l("common.select")}`}return o.placeholder||`${l("common.select")}`});return(d,u)=>(e.openBlock(),e.createElementBlock("div",{class:"input input-dropdown",id:`${t.id||t.name}`},[e.renderSlot(d.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:`${t.id||t.name}--dropdown-toggle`,class:"input__label",innerHTML:`${t.label}${t.required?" *":""}`},null,8,Gl)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Yl,[e.createVNode(We,{id:`${t.id||t.name}--dropdown-toggle`,"data-bs-toggle":"dropdown",role:"button",type:"button",title:r.value,class:"btn dropdown-toggle",color:t.color,outlined:t.outlined,disabled:t.disabled},{default:e.withCtx(()=>[e.createElementVNode("span",Zl,[e.createVNode(e.Transition,{name:"bounce"},{default:e.withCtx(()=>[t.showSelectionCount&&t.modelValue.length?(e.openBlock(),e.createElementBlock("i",{key:0,class:"caption__count",innerHTML:t.modelValue.length},null,8,Xl)):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("span",Kl,[e.createElementVNode("span",eo,e.toDisplayString(t.toggleCaption||r.value),1)])])]),_:1},8,["id","title","color","outlined","disabled"]),e.createElementVNode("ul",to,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,(c,s)=>(e.openBlock(),e.createElementBlock("li",{key:`${c.value}-${s}`},[e.createElementVNode("div",{class:e.normalizeClass(["dropdown-item",c.active&&"active"])},[e.createElementVNode("div",ao,[t.multiple?e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"checkbox","onUpdate:modelValue":u[0]||(u[0]=m=>a.value=m),value:c.value,key:`${t.name}-${c.value}-${s}__if`,id:`${t.name}-${c.value}-${s}`,name:t.name,label:c.text,required:t.required,disabled:c.selectable===!1,class:"form-check-input"},null,8,no)),[[e.vModelCheckbox,a.value]]):e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"radio","onUpdate:modelValue":u[1]||(u[1]=m=>a.value=m),value:c.value,key:`${t.name}-${c.value}-${s}__else`,id:`${t.name}-${c.value}-${s}`,name:t.name,label:c.text,required:t.required,disabled:c.selectable===!1,class:"form-check-input visually-hidden"},null,8,lo)),[[e.vModelRadio,a.value]]),e.createElementVNode("label",{class:"form-check-label flex-grow-1",onclick:"event.stopPropagation",for:`${t.name}-${c.value}-${s}`},e.toDisplayString(c.text),9,oo)])],2)]))),128))])])],8,Jl))}}),io={key:0,class:"auto-suggest__suggestions position-relative"},ro={class:"suggestions dropdown-menu show w-100 mt-2"},so=["onClick"],Ao=["innerHTML"],_e=e.defineComponent({__name:"auto-suggest",props:{modelValue:{type:String},id:{type:String},name:{type:String},label:{type:String},error:{type:String},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},options:{type:Array,default:[]},placeholder:{type:String,default:""},color:{type:String,default:""},outlined:{type:Boolean,default:!1},selection:{type:String}},emits:["update:modelValue","update:selection"],setup(t,{emit:A}){const l=t,o=A,n=e.ref(),a=e.ref(!1),i=e.computed({get(){return l.modelValue},set(f){o("update:modelValue",f)}}),r=e.computed(()=>{const f=new RegExp(`(${i.value})`,"i");return i.value?l.options.filter(h=>f.test(h)):l.options}),d=e.computed(()=>{const f=new RegExp(`(${i.value})`,"i");return r.value.map(h=>{const b=h.replace(f,"<strong>$1</strong>");return H(b)})});e.watch(()=>l.options,(f,h)=>{f.length&&(a.value=!0)},{deep:!0});function u(){l.options.length&&(a.value=!0)}function c(f){a.value=!1;const h=r.value[f];o("update:modelValue",h),o("update:selection",h)}const s=e.ref();function m(f){const h=f.target;a.value&&h&&!n.value.contains(h)&&(a.value=!1)}return e.onBeforeMount(()=>{s.value=document.addEventListener("click",m)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",s.value)}),(f,h)=>(e.openBlock(),e.createElementBlock("div",{class:"auto-suggest",ref_key:"container",ref:n},[e.createElementVNode("div",{class:"auto-suggest__input",onFocusCapture:u},[e.renderSlot(f.$slots,"default",{},()=>[e.createVNode(ue,e.mergeProps({modelValue:i.value,"onUpdate:modelValue":h[0]||(h[0]=b=>i.value=b)},f.$props),null,16,["modelValue"])])],32),a.value&&r.value.length?(e.openBlock(),e.createElementBlock("div",io,[e.createElementVNode("ul",ro,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(b,E)=>(e.openBlock(),e.createElementBlock("li",{key:b,class:"suggestions__item dropdown-item",onClick:e.withModifiers(y=>c(E),["prevent"])},[e.createElementVNode("p",{class:"text-truncate my-2",innerHTML:b},null,8,Ao)],8,so))),128))])])):e.createCommentVNode("",!0)],512))}});function Je(t){const A=e.computed(()=>{if(!t.tintColor)return null;const i=t.tintColor.replace("#",""),r=parseInt(i.substring(0,2),16),d=parseInt(i.substring(2,4),16),u=parseInt(i.substring(4,6),16);return{r,g:d,b:u}});function l(i,r,d){if(t.filter==="none"&&!t.tintColor)return;const u=i.getImageData(0,0,r,d),c=u.data;if(t.filter==="grayscale")for(let s=0;s<c.length;s+=4){const m=.299*c[s]+.587*c[s+1]+.114*c[s+2];c[s]=m,c[s+1]=m,c[s+2]=m}else if(t.filter==="sepia")for(let s=0;s<c.length;s+=4){const m=c[s],f=c[s+1],h=c[s+2];c[s]=Math.min(255,.393*m+.769*f+.189*h),c[s+1]=Math.min(255,.349*m+.686*f+.168*h),c[s+2]=Math.min(255,.272*m+.534*f+.131*h)}if(t.tintColor&&A.value){const{r:s,g:m,b:f}=A.value,h=t.tintIntensity;for(let b=0;b<c.length;b+=4){const E=c[b],y=c[b+1],g=c[b+2],C=E*s/255,N=y*m/255,B=g*f/255;c[b]=E+(C-E)*h,c[b+1]=y+(N-y)*h,c[b+2]=g+(B-g)*h}}i.putImageData(u,0,0)}async function o(i){if(typeof i!="string")return i.complete&&i.naturalWidth>0||await new Promise((d,u)=>{i.onload=()=>d(),i.onerror=()=>u(new Error("Failed to load image element"))}),i;const r=new Image;return await new Promise((d,u)=>{r.onload=()=>d(),r.onerror=()=>u(new Error("Failed to load image source")),r.src=i}),r}async function n(i,r={}){const d=await o(i),u=document.createElement("canvas"),c=r.width||d.naturalWidth||d.width,s=r.height||d.naturalHeight||d.height;u.width=c,u.height=s;const m=u.getContext("2d");if(!m)throw new Error("Could not create canvas context");return m.drawImage(d,0,0,c,s),l(m,c,s),u.toDataURL(r.mimeType||"image/png",r.quality)}async function a(i,r={}){const d=await n(i,r);return(await fetch(d)).blob()}return{tintRgb:A,applyFilterToCanvas:l,applyFilterToImage:n,applyFilterToImageBlob:a}}const co={class:"zoom-slider"},uo=["min","max","step","value"],mo={class:"zoom-slider__ticks"},fo={name:"ZoomSlider",inheritAttrs:!1},po=e.defineComponent({...fo,props:{modelValue:{type:Number,default:1},min:{type:Number,default:1},max:{type:Number,default:2},step:{type:Number,default:.01},ticks:{type:Number,default:51}},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.computed(()=>l.ticks),a=e.computed(()=>Math.round((l.ticks-1)/2)),i=e.computed(()=>Math.round((l.ticks-1)/10));function r(d){o("update:modelValue",parseFloat(d.target.value))}return(d,u)=>(e.openBlock(),e.createElementBlock("div",co,[e.createElementVNode("input",{type:"range",min:t.min,max:t.max,step:t.step,value:t.modelValue,onInput:r,"aria-label":"Zoom"},null,40,uo),e.createElementVNode("div",mo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,c=>(e.openBlock(),e.createElementBlock("span",{key:c,class:e.normalizeClass(["zoom-slider__tick",{"zoom-slider__tick--major":(c-1)%a.value===0,"zoom-slider__tick--mid":(c-1)%i.value===0&&(c-1)%a.value!==0}])},null,2))),128))])]))}}),go="data:image/png;base64,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",ho={class:"camera__preview"},yo={key:0,class:"camera__bg-notification"},bo=["innerHTML"],ko=["width","height"],wo={key:1,class:"camera__countdown-overlay"},Bo=["innerHTML","data-countdown"],Co=["src"],Vo={key:3,class:"camera__zoom-slider"},Eo={class:"camera__controls"},$o={class:"container"},So={class:"row"},No={class:"col"},vo={class:"btn-group"},Mo={key:0},Do={key:1},Lo={key:0,class:"camera__select-device"},Io={class:"col"},Po={class:""},To={name:"BaseCamera",inheritAttrs:!1},Ge={"1x1":{width:720,height:720},"2x3":{width:720,height:1080},"3x2":{width:1080,height:720},"3x4":{width:720,height:960},"4x3":{width:960,height:720},"4x5":{width:960,height:1200},"5x4":{width:1200,height:960},"16x9":{width:1280,height:720},"9x16":{width:720,height:1280}},xo=e.defineComponent({...To,props:{modelValue:{type:null},enableSwitchCamera:{type:Boolean,default:!0},defaultRearCamera:{type:Boolean,default:!1},enableMirrorCamera:{type:Boolean,default:!1},enableGuide:{type:Boolean,default:!0},guideSrc:{type:String,default:()=>go},countdown:{type:Number,default:0},ratio:{type:String,default:""},filter:{type:String,default:"none",validator:t=>["none","grayscale","sepia"].includes(t)},tintColor:{type:String,default:""},tintIntensity:{type:Number,default:.3},enableAudio:{type:Boolean,default:!1},enableSelectDevice:{type:Boolean,default:!1},enableCropImage:{type:Boolean,default:!0},resolutions:{type:Object,default:()=>Ge},zoom:{type:Number,default:1},enableZoomSlider:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{expose:A,emit:l}){const o=t,n=l,a=e.ref(),i=e.ref(),r=e.ref(!1),d=e.ref([]),u=e.ref(),c=e.ref(),s=e.ref(!1),m=e.ref(!1),f=e.ref(0),h=e.ref(0),b=e.ref(),E=e.ref(o.zoom||1),y=e.computed(()=>({...Ge,...o.resolutions})),g=e.computed(()=>Object.values(y.value)[0]);function C($){return String($||"").trim().toLowerCase().replace(/\s+/g,"").replace(/[:/]/g,"x")}const N=e.computed(()=>{if(y.value[o.ratio])return o.ratio;const $=C(o.ratio);if(y.value[$])return $}),B=e.computed(()=>N.value?y.value[N.value]:g.value),v=e.computed(()=>{const $=N.value?y.value[N.value]:void 0;return $?`${$.width} / ${$.height}`:void 0}),F=e.computed(()=>d.value.filter($=>$.kind==="videoinput")),K=e.computed(()=>d.value.filter($=>$.kind==="audioinput")),J=e.computed(()=>F.value.map(($,L)=>({text:$.label.slice(0,$.label.indexOf("("))||`Camera ${L+1}`,value:$.deviceId}))),le=e.computed({get(){return u.value&&u.value.deviceId},set($){u.value=F.value.find(L=>L.deviceId===$)}});e.computed({get(){return c.value&&c.value.deviceId},set($){c.value=K.value.find(L=>L.deviceId===$)}});const ee=e.computed(()=>{const $=u.value&&F.value.findIndex(L=>L.deviceId===u.value.deviceId);return o.enableMirrorCamera&&$===0?"mirror-cam":""}),se=e.computed(()=>{const $=u.value&&d.value.findIndex(L=>L.deviceId===u.value.deviceId);return ee.value?`${ee.value} mirror-device-${$}`:""}),{tintRgb:x,applyFilterToCanvas:ie}=Je(o);function k(){if(N.value&&B.value){f.value=B.value.width,h.value=B.value.height;return}f.value=a.value.parentElement&&a.value.parentElement.clientWidth,h.value=a.value.parentElement&&a.value.parentElement.clientHeight}const D=Le.debounce(()=>{k()},300,{trailing:!0,leading:!1});async function I(){const $=B.value?{width:B.value.width,height:B.value.height}:void 0,L=$?$.width/$.height:void 0,j={audio:o.enableAudio&&{...c.value?{deviceId:c.value.deviceId}:{}},video:{...u.value?{deviceId:u.value.deviceId}:{},width:{ideal:$?.width},...N.value&&$?.height?{height:{ideal:$.height}}:{},...N.value&&L?{aspectRatio:{ideal:L}}:{}}};return navigator.mediaDevices.getUserMedia(j).catch(fe=>{console.error(fe,"navigator.mediaDevices.getUserMedia: failed")})}function O(){a.value&&a.value.srcObject&&a.value.srcObject.getTracks().forEach(L=>{L.stop()})}async function q(){return a.value.srcObject=await I(),d.value=await navigator.mediaDevices.enumerateDevices(),{stream:a.value.srcObject,devices:d.value}}function Ae(){s.value?(s.value=!1,m.value=!1,O()):(s.value=!0,q())}function me(){if(d.value.length>1){O();const $=F.value.findIndex(L=>L.deviceId===u.value.deviceId);u.value=F.value[$===F.value.length-1?0:$+1],q()}}async function $e($,L){O(),$&&(!L||$.deviceId!==L.deviceId)&&await q()}e.watch(()=>u.value,$e),e.watch(()=>c.value,$e);function ge(){o.countdown?(b.value=b.value?b.value-1:o.countdown,b.value?setTimeout(ge,1e3):R()):R()}A({onCapture:ge,camera:a.value,zoom:E});function R(){m.value=!0;const $=i.value.getContext("2d"),L=a.value,j=L&&L.srcObject&&L.srcObject.getTracks(),{aspectRatio:fe,width:ce,height:Se}=j.length&&j[0].getSettings(),_=L?.videoWidth||ce||f.value,Y=L?.videoHeight||Se||h.value,G=_&&Y?_/Y:fe,Ne=B.value||{width:_,height:Y},he=Ne?.width||_,ve=N.value?Ne?.height||Y:Math.round(he/G),te=he/ve;if(i.value.width=he,i.value.height=ve,!_||!Y||!G)return;if($.save(),ee.value&&($.translate(i.value.width,0),$.scale(-1,1)),o.enableCropImage){let Z=0,ae=0,Q=_,X=Y;if(G>te?(Q=Y*te,Z=(_-Q)/2):G<te&&(X=_/te,ae=(Y-X)/2),E.value&&E.value!==1){const de=Q/E.value,re=X/E.value;Z+=(Q-de)/2,ae+=(X-re)/2,Q=de,X=re}$.drawImage(L,Z,ae,Q,X,0,0,i.value.width,i.value.height)}else{let Z=i.value.width,ae=i.value.height,Q=0,X=0;if(G>te?(ae=i.value.width/G,X=(i.value.height-ae)/2):G<te&&(Z=i.value.height*G,Q=(i.value.width-Z)/2),E.value&&E.value!==1){const de=_/E.value,re=Y/E.value,p=(_-de)/2,w=(Y-re)/2;ee.value&&(Q=i.value.width-Q-Z),$.drawImage(L,p,w,de,re,Q,X,Z,ae)}else ee.value&&(Q=i.value.width-Q-Z),$.drawImage(L,0,0,_,Y,Q,X,Z,ae)}$.restore(),ie($,i.value.width,i.value.height);const ye=i.value.toDataURL("image/png");z(ye)}function z($){const L=Vt($);n("update:modelValue",{name:`cam-pic-${new Date().toISOString()}`,id:`cam-pic-${new Date().toISOString()}`,blob:L,size:L.size})}return e.onMounted(async()=>{O(),await q(),u.value=F.value[0],o.enableAudio&&(c.value=K.value[0]),navigator.mediaDevices.addEventListener("devicechange",async $=>{await q()}),o.defaultRearCamera&&me(),Ae(),window.addEventListener("resize",D),k(),await e.nextTick(),r.value=!0}),e.onBeforeUnmount(()=>{s.value=!1,m.value=!1,O(),window.removeEventListener("resize",D)}),($,L)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["camera",se.value])},[e.createElementVNode("div",ho,[r.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",yo,[e.createVNode(ke,{color:"#000"},{default:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass("d-block text-center"),innerHTML:$.$t("camera.waitForCameraNotification")},null,8,bo)]),_:1})])),e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(["camera__video-wrapper",N.value?`aspect-ratio--${N.value}`:""]),style:e.normalizeStyle({aspectRatio:v.value||void 0,transform:E.value!==1?`scale(${E.value})`:void 0})},[e.createElementVNode("video",{ref_key:"camera",ref:a,class:"camera__video",style:e.normalizeStyle({filter:o.filter==="grayscale"?"grayscale(100%)":o.filter==="sepia"?"sepia(100%)":"none"}),autoplay:"",playsinline:""},null,4),t.tintColor?(e.openBlock(),e.createElementBlock("div",{key:0,class:"camera__tint-overlay",style:e.normalizeStyle({backgroundColor:t.tintColor,opacity:t.tintIntensity,mixBlendMode:"multiply"})},null,4)):e.createCommentVNode("",!0)],6),[[e.vShow,r.value]]),e.withDirectives(e.createElementVNode("canvas",{ref_key:"canvas",ref:i,class:"camera__canvas",width:f.value,height:h.value},null,8,ko),[[e.vShow,m.value]]),b.value?(e.openBlock(),e.createElementBlock("div",wo,[(e.openBlock(),e.createElementBlock("p",{class:"countdown",key:b.value,innerHTML:b.value,"data-countdown":b.value},null,8,Bo))])):e.createCommentVNode("",!0),t.enableGuide&&s.value&&r.value?(e.openBlock(),e.createElementBlock("img",{key:2,class:"camera__guide",src:t.guideSrc},null,8,Co)):e.createCommentVNode("",!0),t.enableZoomSlider?(e.openBlock(),e.createElementBlock("div",Vo,[e.createVNode(po,{modelValue:E.value,"onUpdate:modelValue":L[0]||(L[0]=j=>E.value=j)},null,8,["modelValue"])])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Eo,[e.createElementVNode("div",$o,[e.createElementVNode("div",So,[e.createElementVNode("div",No,[e.createElementVNode("div",vo,[e.createElementVNode("button",{type:"button",class:"camera__toggle btn btn-primary",onClick:Ae},[s.value?(e.openBlock(),e.createElementBlock("span",Do,e.toDisplayString($.$t("common.pause")),1)):(e.openBlock(),e.createElementBlock("span",Mo,e.toDisplayString($.$t("common.play")),1))]),e.createElementVNode("button",{type:"button",class:"camera__capture btn btn-primary",onClick:ge},e.toDisplayString($.$t("camera.capture")),1)])])])])]),(t.enableSwitchCamera||t.enableSelectDevice)&&F.value&&F.value.length>1?(e.openBlock(),e.createElementBlock("div",Lo,[e.createElementVNode("div",Io,[e.createVNode(xe,{modelValue:le.value,"onUpdate:modelValue":L[1]||(L[1]=j=>le.value=j),options:J.value,class:"w-100"},null,8,["modelValue","options"])]),e.createElementVNode("div",Po,[t.enableSwitchCamera?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn",onClick:e.withModifiers(me,["prevent"])},[e.createVNode(M,{symbol:"switch-camera"})])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)],2))}}),zo={class:"base-map"},Ro={key:0,class:"base-map__label"},Fo={key:0,class:"base-map__hint"},Ye=e.defineComponent({__name:"base-map",props:{label:{type:String,default:""},modelValue:{type:Object,default:null},center:{type:Object,default:()=>({lat:48.8566,lng:2.3522})},zoom:{type:Number,default:13},markers:{type:Array,default:()=>[]},routeCoordinates:{type:Array,default:()=>[]},routeColor:{type:String,default:"#2563eb"},routeWeight:{type:Number,default:5},selectionRadius:{type:Number,default:0},selectionRadiusCenter:{type:Object,default:null},selectionRadiusColor:{type:String,default:"#2563eb"},selectionRadiusFillColor:{type:String,default:"#60a5fa"},selectionRadiusFillOpacity:{type:Number,default:.14},selectionRadiusOpacity:{type:Number,default:.65},selectionRadiusStrokeWeight:{type:Number,default:2},userLocation:{type:Object,default:null},userLocationLabel:{type:String,default:"Your location"},selectedLocationLabel:{type:String,default:"Selected location"},height:{type:String,default:"20rem"},interactive:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},showSelectedMarker:{type:Boolean,default:!0},helperText:{type:String,default:""},mapStyle:{type:String,default:"streets"},tileLayerUrl:{type:String,default:""},tileLayerAttribution:{type:String,default:""}},emits:["update:modelValue","update:center","update:zoom","map-click","marker-click"],setup(t,{emit:A}){function l(k,D){return D({className:"base-map__marker-wrapper",html:`<span class="base-map__marker-pin base-map__marker-pin--${k}"><span class="base-map__marker-core"></span></span>`,iconSize:[24,24],iconAnchor:[12,24],popupAnchor:[0,-20]})}const o={lat:48.8566,lng:2.3522},n={streets:{url:"https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'},light:{url:"https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png",attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors © <a href="https://carto.com/attributions">CARTO</a>'},dark:{url:"https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors © <a href="https://carto.com/attributions">CARTO</a>'},minimal:{url:"https://{s}.basemaps.cartocdn.com/light_nolabels/{z}/{x}/{y}{r}.png",attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors © <a href="https://carto.com/attributions">CARTO</a>'},popover:{url:"https://{s}.basemaps.cartocdn.com/rastertiles/voyager_nolabels/{z}/{x}/{y}{r}.png",attribution:'© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors © <a href="https://carto.com/attributions">CARTO</a>'}},a=t,i=A,r=e.shallowRef(null),d=e.ref(null),u=e.ref(null),c=e.ref(a.zoom),s=e.ref(B(a.modelValue));e.onMounted(async()=>{if(typeof window>"u")return;const[k,D]=await Promise.all([import("@vue-leaflet/vue-leaflet"),import("leaflet")]);r.value=e.markRaw({LCircle:e.markRaw(k.LCircle),LMap:e.markRaw(k.LMap),LMarker:e.markRaw(k.LMarker),LPopup:e.markRaw(k.LPopup),LPolyline:e.markRaw(k.LPolyline),LTileLayer:e.markRaw(k.LTileLayer)}),d.value={list:l("list",D.divIcon),selected:l("selected",D.divIcon),search:l("search",D.divIcon),user:l("user",D.divIcon)}}),e.watch(()=>a.zoom,k=>{c.value=k}),e.watch(()=>a.modelValue,k=>{s.value=B(k)}),e.watch(()=>a.center,k=>{const D=B(k);D&&J(D)},{deep:!0}),e.watch(()=>[a.height,a.markers.length,a.routeCoordinates.length,a.center?.lat,a.center?.lng,a.modelValue?.lat,a.modelValue?.lng,a.userLocation?.lat,a.userLocation?.lng],()=>{K()},{flush:"post"});const m=e.computed(()=>B(a.userLocation)),f=e.computed(()=>B(a.selectionRadiusCenter)||s.value),h=e.computed(()=>{const k=(a.markers||[]).map(D=>{const I=B(D);return I?{...D,...I,type:D.type||(s.value&&F(D,s.value)?"selected":"list")}:null}).filter(D=>!!D);return a.showSelectedMarker&&s.value&&!k.some(D=>F(D,s.value))&&k.push({id:"selected-location",label:a.selectedLocationLabel,type:"search",...s.value}),k}),b=e.computed(()=>(a.routeCoordinates||[]).map(k=>v(k)).filter(k=>!!k)),E=e.computed(()=>{const k=B(a.center)||s.value||B(a.markers[0])||o;return[k.lat,k.lng]}),y=e.computed(()=>{if(a.tileLayerUrl.trim())return a.tileLayerUrl;const k=a.mapStyle==="custom"?"streets":a.mapStyle;return n[k].url}),g=e.computed(()=>{if(a.tileLayerAttribution.trim())return a.tileLayerAttribution;const k=a.mapStyle==="custom"?"streets":a.mapStyle;return n[k].attribution});function C(k="list"){if(d.value)return d.value[k]||d.value.list}function N(k="list"){switch(k){case"user":return 450;case"selected":return 350;case"search":return 250;default:return 150}}function B(k){if(!k)return null;const D=Number(k.lat),I=Number(k.lng);return Number.isNaN(D)||Number.isNaN(I)?null:{lat:D,lng:I}}function v(k){if(Array.isArray(k)){const I=Number(k[0]),O=Number(k[1]);return Number.isFinite(I)&&Number.isFinite(O)?[I,O]:null}const D=B(k);return D?[D.lat,D.lng]:null}function F(k,D){const I=B(k),O=B(D);return!I||!O?!1:Math.abs(I.lat-O.lat)<1e-6&&Math.abs(I.lng-O.lng)<1e-6}async function K(){await e.nextTick(),u.value?.invalidateSize()}function J(k){u.value?.panTo([k.lat,k.lng])}function le(k){u.value=k,J(B(a.center)||s.value||o),K()}function ee(k){c.value=k,i("update:zoom",k)}function se(k){const D=B(k);D&&(J(D),i("update:center",D))}function x(k){if(!a.interactive||a.disabled)return;const D={lat:Number(k.latlng.lat.toFixed(6)),lng:Number(k.latlng.lng.toFixed(6))};s.value=D,J(D),i("update:modelValue",D),i("update:center",D),i("map-click",D)}function ie(k){s.value={lat:Number(k.lat),lng:Number(k.lng)},J(s.value),i("update:modelValue",s.value),i("update:center",s.value),i("marker-click",k)}return(k,D)=>(e.openBlock(),e.createElementBlock("div",zo,[e.renderSlot(k.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",Ro,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["base-map__frame",{"base-map__frame--interactive":t.interactive&&!t.disabled,"base-map__frame--disabled":t.disabled}]),style:e.normalizeStyle({height:t.height}),"data-testid":"base-map"},[r.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value?.LMap),{key:0,class:"base-map__canvas","use-global-leaflet":!1,zoom:c.value,center:E.value,onReady:le,onClick:x,"onUpdate:zoom":ee,"onUpdate:center":se},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LTileLayer),{url:y.value,attribution:g.value,"layer-type":"base",name:"OpenStreetMap"},null,8,["url","attribution"])),b.value.length>1?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LPolyline),{key:0,"lat-lngs":b.value,color:t.routeColor,weight:t.routeWeight},null,8,["lat-lngs","color","weight"])):e.createCommentVNode("",!0),f.value&&t.selectionRadius>0?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LCircle),{key:1,"lat-lng":[f.value.lat,f.value.lng],radius:t.selectionRadius,color:t.selectionRadiusColor,"fill-color":t.selectionRadiusFillColor,"fill-opacity":t.selectionRadiusFillOpacity,opacity:t.selectionRadiusOpacity,weight:t.selectionRadiusStrokeWeight},null,8,["lat-lng","radius","color","fill-color","fill-opacity","opacity","weight"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(I,O)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LMarker),{key:I.id??`${I.lat}-${I.lng}-${O}`,"lat-lng":[I.lat,I.lng],icon:C(I.type),"z-index-offset":N(I.type),onClick:q=>ie(I)},{default:e.withCtx(()=>[I.label?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LPopup),{key:0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(I.label),1)]),_:2},1024)):e.createCommentVNode("",!0)]),_:2},1032,["lat-lng","icon","z-index-offset","onClick"]))),128)),m.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LMarker),{key:`user-${m.value.lat}-${m.value.lng}`,"lat-lng":[m.value.lat,m.value.lng],icon:C("user"),"z-index-offset":N("user"),onClick:D[0]||(D[0]=I=>ie({id:"user-location",label:t.userLocationLabel,type:"user",...m.value}))},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LPopup),null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.userLocationLabel),1)]),_:1}))]),_:1},8,["lat-lng","icon","z-index-offset"])):e.createCommentVNode("",!0)]),_:1},40,["zoom","center"])):e.createCommentVNode("",!0)],6),t.interactive&&t.helperText?(e.openBlock(),e.createElementBlock("p",Fo,e.toDisplayString(t.helperText),1)):e.createCommentVNode("",!0)]))}}),Oo={class:"location-list","data-testid":"location-list"},Qo={key:0,class:"location-list__label"},Ho={key:1,class:"location-list__items"},Wo=["data-testid","onClick"],Uo={class:"location-list__title"},qo={key:0,class:"location-list__description"},jo={key:1,class:"location-list__distance"},_o={key:2,class:"location-list__empty"},Ze=e.defineComponent({__name:"location-list",props:{modelValue:{type:null,default:null},locations:{type:Array,default:()=>[]},label:{type:String,default:""},titleKey:{type:String,default:"title"},descriptionKey:{type:String,default:"address"},emptyText:{type:String,default:"No locations found."},showDistance:{type:Boolean,default:!0}},emits:["update:modelValue","select"],setup(t,{emit:A}){const l=t,o=A;function n(s){return s?.[l.titleKey]||s?.label||s?.name||"Location"}function a(s){return s?.[l.descriptionKey]||s?.description||s?.subtitle||""}function i(s,m=0){return s?typeof s!="object"?s:s.id??s.value??n(s)??m:m}function r(s,m=0){return`${i(s,m)}`.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function d(s,m=0){return i(l.modelValue)===i(s,m)}function u(s){return Number.isFinite(s)?s>=1e3?`${(s/1e3).toFixed(1)} km`:`${Math.round(s)} m`:"—"}function c(s){o("update:modelValue",s),o("select",s)}return(s,m)=>(e.openBlock(),e.createElementBlock("div",Oo,[t.label?(e.openBlock(),e.createElementBlock("p",Qo,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0),t.locations.length?(e.openBlock(),e.createElementBlock("div",Ho,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.locations,(f,h)=>(e.openBlock(),e.createElementBlock("button",{key:i(f,h),type:"button",class:e.normalizeClass(["location-list__item",{"location-list__item--active":d(f,h)}]),"data-testid":`location-option-${r(f,h)}`,onClick:b=>c(f)},[e.createElementVNode("strong",Uo,e.toDisplayString(n(f)),1),a(f)?(e.openBlock(),e.createElementBlock("small",qo,e.toDisplayString(a(f)),1)):e.createCommentVNode("",!0),t.showDistance&&f?.distance!==void 0&&f?.distance!==null?(e.openBlock(),e.createElementBlock("small",jo,e.toDisplayString(u(Number(f.distance)))+" away ",1)):e.createCommentVNode("",!0)],10,Wo))),128))])):(e.openBlock(),e.createElementBlock("p",_o,e.toDisplayString(t.emptyText),1))]))}});function Xe(t=null,A){const l=e.ref(!1),o=e.ref([]),n=e.ref([]),a=e.ref(!1),i=e.ref(!1),r=e.computed(()=>t.modelValue?.length?t.modelValue:t.src?[{type:"",src:t.src}]:n.value);async function d(b){const E=new FormData;E.append("file",b),l.value=!0;const g=await(t.customFetch||be.ofetch)(t.endpoint,{method:"POST",...t.customFetch?{}:{headers:{Accept:"application/json",...t.authToken?{Authorization:`Bearer ${t.authToken}`}:{}}},body:E}).catch(N=>{console.error("Error",N)});return l.value=!1,`${t.baseResponsePath||"/api/v1/assets"}/${g.path}`}function u(b){const E=typeof b=="string"?parseInt(b,10):b,y=Array.isArray(t.modelValue)&&t.modelValue.length>0,g=Array.isArray(n.value)&&n.value.length>0;if(g&&E<n.value.length&&n.value.splice(E,1),y){const C=[...t.modelValue];E<C.length&&C.splice(E,1),A?.("update:modelValue",C),t.multiple||A?.("update:src",C[0]?.src||"")}else if(g){const C=t.multiple?n.value:n.value[0];A?.("update:modelValue",C),t.multiple||A?.("update:src",n.value[0]?.src||"")}else A?.("update:modelValue",t.multiple?[]:void 0),A?.("update:src","");o.value.splice(E,1),a.value=!1}function c(b){b.preventDefault(),i.value=!0}function s(b){b.preventDefault(),i.value=!1}function m(b){b.preventDefault(),i.value=!1;const E=b.dataTransfer,y=E&&Array.from(E.files||[]);o.value=y||[]}function f(){t.dropFiles&&(["dragenter","dragover"].forEach(b=>{document.body.addEventListener(b,c,!1)}),["dragleave","drop"].forEach(b=>{document.body.addEventListener(b,s,!1)}),document.body.addEventListener("drop",m,!1))}function h(){t.dropFiles&&(["dragenter","dragover"].forEach(b=>{document.body.removeEventListener(b,c,!1)}),["dragleave","drop"].forEach(b=>{document.body.removeEventListener(b,s,!1)}),document.body.removeEventListener("drop",m,!1))}return e.onMounted(()=>{f()}),e.onBeforeUnmount(()=>{h()}),{pending:l,files:o,dataUrls:n,imgLoaded:a,isDragging:i,thumbnails:r,uploadFile:d,removeFile:u,dragStart:c,dragStop:s,dragDrop:m,setupDragAndDrop:f,cleanupDragAndDrop:h}}const Jo=["src"],Go=["onClick"],Yo=["onClick"],Zo=["for"],Xo=["innerHTML"],Ko={key:0,class:"file-upload__loading-spinner"},Ke=e.defineComponent({__name:"file-upload",props:{modelValue:{type:Array,default:[]},src:{type:String},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null},multiple:{type:Boolean,default:!1},accept:{type:String},maxFileSize:{type:Number,default:0},endpoint:{type:String,default:""},toDataUrl:{type:Boolean,default:!0},authToken:{type:String,default:""},customFetch:null,baseResponsePath:{type:String,default:"/api/v1/assets"},enablePreview:{type:Boolean,default:!0},previewWidth:{type:Number,default:0},dropFiles:{type:Boolean,default:!1}},emits:["update:modelValue","update:src"],setup(t,{emit:A}){const l=t,o=A,{pending:n,files:a,dataUrls:i,isDragging:r,thumbnails:d,uploadFile:u,removeFile:c}=Xe(l,o);return e.watch(()=>a.value,async s=>{i.value=await Promise.all(s.map(async m=>({src:l.toDataUrl?await Be(m):await u(m),type:m.type})))},{deep:!0}),e.watch(()=>i.value,async s=>{const m=l.multiple?s:s[0];o("update:modelValue",m),l.multiple||o("update:src",s[0]&&s[0].src)},{deep:!0}),(s,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["file-upload",{"has-dragging":t.dropFiles,"is-dragging":e.unref(r)}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d),(f,h)=>(e.openBlock(),e.createElementBlock("div",{key:f.src,class:e.normalizeClass(t.enablePreview?"file-upload__thumbnail":"file-upload__reset")},[t.enablePreview?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("img",{src:`${f.src}${t.previewWidth?`?width=${t.previewWidth}`:""}`,class:"img-thumbnail rounded"},null,8,Jo),e.createElementVNode("button",{onClick:e.withModifiers(b=>e.unref(c)(h),["prevent"]),class:"btn btn--close"},[e.createVNode(M,{symbol:"x"})],8,Go)],64)):(e.openBlock(),e.createElementBlock("button",{key:1,onClick:e.withModifiers(b=>e.unref(c)(h),["prevent"]),class:"btn btn--close btn-outline-contrast"},[e.createVNode(M,{symbol:"x"})],8,Yo))],2))),128)),e.createVNode(Te,{modelValue:e.unref(a),"onUpdate:modelValue":m[0]||(m[0]=f=>e.isRef(a)?a.value=f:null),id:t.id,name:t.name,accept:t.accept,"max-file-size":t.maxFileSize,class:"d-none"},null,8,["modelValue","id","name","accept","max-file-size"]),e.createElementVNode("label",{for:t.id,class:"file-upload__label"},[e.renderSlot(s.$slots,"button",{},()=>[e.createElementVNode("span",{class:"btn btn-outline-contrast",innerHTML:t.label||s.$t("common.selectFile")},null,8,Xo)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[e.unref(n)?(e.openBlock(),e.createElementBlock("span",Ko,[...m[1]||(m[1]=[e.createElementVNode("span",{class:"spinner-border",role:"status"},[e.createElementVNode("span",{class:"visually-hidden"},"Loading...")],-1)])])):e.createCommentVNode("",!0)]),_:1})],8,Zo)],2))}}),ei=["onDragenter","onDragover","onDragleave","onDragend","onDrop","innerHTML"],ti=["onDragstart","onDrag","onDragenter","onDragover","onDragleave","onDragend","onDrop"],ai={key:0,class:"sortable-list__drag-handle"},ni={type:"button",class:"btn",draggable:"true"},li={key:0,class:"sortable-list__item"},et=e.defineComponent({__name:"sortable-list",props:{modelValue:{type:Array,default:()=>[]},config:{type:Object,default:null},messages:{type:Object,default:{}},vertical:{type:Boolean,default:!0},showDragHandle:{type:Boolean,default:!1},showPreview:{type:Boolean,default:!0}},emits:["update:modelValue","update:isDragging","update:dragIndex","update:dragOverIndex"],setup(t,{emit:A}){const l=t,o=e.ref(!1),n=e.ref(null),a=e.ref(null),i=A,r=e.computed({get(){return l.modelValue},set(g){i("update:modelValue",g)}}),d=e.computed(()=>{const g=document.querySelector(".is-drag-item")?.outerHTML;return g?H(g):""}),u=e.useSlots(),c=e.computed(()=>u["list-append"]);function s(g,C){g.dataTransfer&&(g.dataTransfer.dropEffect="move",g.dataTransfer.effectAllowed="move",g.dataTransfer.setData("index",C.toLocaleString()),o.value=!0,n.value=C)}function m(g,C){o.value=!1,n.value=null,a.value=null}function f(g,C){}function h(g,C){a.value=n.value!==C?C:null}function b(g,C){a.value=n.value!==C?C:null}function E(g,C){}function y(g,C){if(g.dataTransfer){g.preventDefault();const N=Number(g.dataTransfer.getData("index")),B=C,v=[...r.value];(B||B===0)&&(N||N===0)&&v.splice(B,0,v.splice(N,1)[0]),r.value=v}}return e.watch(()=>o.value,g=>{i("update:isDragging",g)},{immediate:!0}),e.watch(()=>n.value,g=>{i("update:dragIndex",g)},{immediate:!0}),e.watch(()=>a.value,g=>{i("update:dragOverIndex",g)},{immediate:!0}),(g,C)=>(e.openBlock(),e.createBlock(e.TransitionGroup,{name:"list",tag:"ul",class:e.normalizeClass(["sortable-list p-0 d-flex gap-2",{"flex-column":t.vertical,"flex-row flex-wrap":!t.vertical}]),onDragover:C[0]||(C[0]=e.withModifiers(()=>{},["prevent"])),onDragenter:C[1]||(C[1]=e.withModifiers(()=>{},["prevent"]))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(N,B)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:B},[t.showPreview&&o.value&&a.value===B?(e.openBlock(),e.createElementBlock("li",{key:0,class:"sortable-list__item is-drop-target",onDragenter:v=>h(v,B),onDragover:v=>b(v,B),onDragleave:v=>void 0,onDragend:v=>m(),onDrop:v=>y(v,B),innerHTML:d.value},null,40,ei)):e.createCommentVNode("",!0),e.createElementVNode("li",{class:e.normalizeClass(["sortable-list__item d-flex",{"is-drag-item":o.value&&n.value===B,"is-drop-target":o.value&&a.value===B&&!t.showPreview,"align-items-center gap-2":t.vertical}]),draggable:!0,onDragstart:v=>s(v,B),onDrag:v=>void 0,onDragenter:v=>h(v,B),onDragover:v=>b(v,B),onDragleave:v=>void 0,onDragend:v=>m(),onDrop:v=>y(v,B)},[t.showDragHandle?(e.openBlock(),e.createElementBlock("div",ai,[e.createElementVNode("button",ni,[e.createVNode(M,{symbol:"drag"})])])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["sortable-list__item-content",{"flex-grow-1":t.vertical}])},[e.renderSlot(g.$slots,"list-item",{item:N,index:B},()=>[e.createTextVNode(e.toDisplayString(N),1)])],2)],42,ti)],64))),128)),c.value?(e.openBlock(),e.createElementBlock("li",li,[e.renderSlot(g.$slots,"list-append")])):e.createCommentVNode("",!0)]),_:3},8,["class"]))}}),oi={key:0,class:"image-editor position-relative"},ii={class:"row mb-3"},ri={class:"col"},si={class:"row gap-2 mb-4"},Ai={class:"col-12"},ci={class:"input mb-2"},di={class:"col"},ui={class:"input mb-0"},mi={class:"col"},fi={class:"input mb-0"},pi={class:"row"},gi={class:"col d-flex justify-content-end gap-2"},hi=["disabled"],tt=e.defineComponent({__name:"image-resize",props:{modelValue:{type:String,default:'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"/>',required:!0},spinner:{type:Boolean,default:!1},ready:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:A}){const l=A,o=e.useTemplateRef("image"),n=e.ref(1),a=e.ref(0),i=e.ref(0),r=e.ref(null),d=e.ref(0),u=e.ref(0);function c(){r.value&&(l("update:modelValue",r.value),n.value=1)}const s=()=>{if(!d.value||!u.value)return;a.value=Math.round(d.value*n.value);const f=u.value/d.value;i.value=Math.round(a.value*f);const h=o.value?.$el;if(!h)return;const b=h.querySelector("img");b&&(r.value=Qe(b,a.value,i.value,"image/png"))},m=Le.debounce(s,300);return e.watch(n,()=>{d.value&&(a.value=Math.round(d.value*n.value),m())}),e.watch(a,()=>{if(!d.value||a.value===0)return;const f=a.value/d.value;Math.abs(f-n.value)>1e-4&&(n.value=Number(f.toFixed(4)));const h=u.value/d.value;i.value=Math.round(a.value*h),m()}),e.watch(i,()=>{if(!u.value||i.value===0)return;const f=i.value/u.value;Math.abs(f-n.value)>1e-4&&(n.value=Number(f.toFixed(4)));const h=d.value/u.value;a.value=Math.round(i.value*h),m()}),e.onMounted(()=>{const f=o.value?.$el;if(!f)return;const h=f.querySelector("img");if(!h)return;const b=()=>{d.value=h.naturalWidth,u.value=h.naturalHeight,s()};h.complete?b():h.addEventListener("load",b)}),(f,h)=>t.modelValue?(e.openBlock(),e.createElementBlock("div",oi,[e.createElementVNode("div",ii,[e.createElementVNode("div",ri,[e.createVNode(oe,{ref_key:"image",ref:o,class:"d-none",src:t.modelValue,animate:!1},null,8,["src"]),r.value?(e.openBlock(),e.createBlock(oe,{key:0,ref:"targetImage",class:"",src:r.value,animate:!1},null,8,["src"])):e.createCommentVNode("",!0)])]),e.createElementVNode("div",si,[e.createElementVNode("div",Ai,[e.createElementVNode("div",ci,[e.withDirectives(e.createElementVNode("input",{type:"range",class:"form-range",id:"scaleRange","onUpdate:modelValue":h[0]||(h[0]=b=>n.value=b),min:"0",max:"2",step:"0.0001"},null,512),[[e.vModelText,n.value]])])]),e.createElementVNode("div",di,[e.createElementVNode("div",ui,[e.createVNode(ue,{type:"number",class:"form-input mb-0",id:"targetWidth",modelValue:a.value,"onUpdate:modelValue":h[1]||(h[1]=b=>a.value=b)},null,8,["modelValue"])])]),h[3]||(h[3]=e.createElementVNode("div",{class:"col-auto d-flex align-items-center"},[e.createElementVNode("output",null,"×")],-1)),e.createElementVNode("div",mi,[e.createElementVNode("div",fi,[e.createVNode(ue,{type:"number",class:"form-input mb-0",id:"targetHeight",modelValue:i.value,"onUpdate:modelValue":h[2]||(h[2]=b=>i.value=b)},null,8,["modelValue"])])])]),e.createElementVNode("div",pi,[e.createElementVNode("div",gi,[e.renderSlot(f.$slots,"actions"),e.createElementVNode("button",{class:"btn btn-sm btn-primary",disabled:!r.value,onClick:e.withModifiers(c,["prevent","stop"])},e.toDisplayString(f.$t("common.apply")),9,hi)])])])):e.createCommentVNode("",!0)}}),yi={key:0,class:"image-crop"},bi={class:"row mb-4"},ki={class:"col"},wi={class:"row"},Bi={class:"col d-flex gap-2 justify-content-end gap-2"},at=e.defineComponent({__name:"image-crop",props:{modelValue:{type:String,default:'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"/>',required:!0},spinner:{type:Boolean,default:!1},ready:{type:Boolean,default:!1},aspectRatioOptions:{type:Array,default:()=>[{value:0,text:"Free"},{value:1,text:"1:1"},{value:4/3,text:"4:3"},{value:16/9,text:"16:9"},{value:3/4,text:"3:4"},{value:9/16,text:"9:16"}]},suggestedAspectRatio:Number},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.useTemplateRef("cropper"),a=e.ref(0);function i(){const{canvas:r}=n.value?.getResult(),d=r.toDataURL();o("update:modelValue",d)}return e.onBeforeMount(()=>{a.value=l.suggestedAspectRatio||0}),(r,d)=>t.modelValue?(e.openBlock(),e.createElementBlock("div",yi,[e.createElementVNode("div",bi,[e.createElementVNode("div",ki,[e.createVNode(e.unref(ft.Cropper),{ref:"cropper",class:"cropper",src:t.modelValue,"stencil-props":{...a.value!==0?{aspectRatio:a.value}:{}},"resize-image":!1},null,8,["src","stencil-props"])])]),d[1]||(d[1]=e.createElementVNode("hr",null,null,-1)),e.createElementVNode("div",wi,[e.createElementVNode("div",Bi,[e.createVNode(xe,{modelValue:a.value,"onUpdate:modelValue":d[0]||(d[0]=u=>a.value=u),options:t.aspectRatioOptions,class:"mb-0"},null,8,["modelValue","options"]),e.renderSlot(r.$slots,"actions"),e.createElementVNode("button",{class:"btn btn-sm btn-primary",onClick:e.withModifiers(i,["prevent","stop"])},e.toDisplayString(r.$t("common.apply")),1)])])])):e.createCommentVNode("",!0)}}),Ci={key:0,class:"image-crop-resize position-relative"},Vi={class:"row"},Ei={class:"col"},$i={key:3,class:"alert alert-warning mt-4 small p-2"},Si={key:4},Ni={class:"row"},vi={class:"col-12"},Mi={class:"d-flex"},Di={key:0,class:"d-flex gap-3"},Li={class:"caption"},Ii={class:"caption"},Pi={key:1,class:"ms-auto"},nt=e.defineComponent({__name:"image-crop-resize",props:{modelValue:{type:String,default:'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"/>',required:!0},spinner:{type:Boolean,default:!1},ready:{type:Boolean,default:!1},aspectRatio:Number},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.ref(!1),a=e.ref(!1),i=e.computed({get:()=>l.modelValue,set:d=>o("update:modelValue",d)}),r=e.computed(()=>l.modelValue.startsWith("data:image/svg+xml"));return e.watch(()=>[n.value,i.value],(d,u)=>{d[0]&&d[0]===u[0]&&(n.value=!1)}),e.watch(()=>[a.value,i.value],(d,u)=>{d[0]&&d[0]===u[0]&&(a.value=!1)}),e.onMounted(()=>{}),(d,u)=>t.modelValue?(e.openBlock(),e.createElementBlock("div",Ci,[e.createElementVNode("div",Vi,[e.createElementVNode("div",Ei,[n.value||a.value?n.value?(e.openBlock(),e.createBlock(tt,{key:1,modelValue:i.value,"onUpdate:modelValue":u[1]||(u[1]=c=>i.value=c)},{actions:e.withCtx(()=>[e.createElementVNode("button",{class:"btn btn-outline-ccontrast",onClick:u[0]||(u[0]=e.withModifiers(c=>n.value=!1,["prevent","stop"]))},e.toDisplayString(d.$t("common.cancel")),1)]),_:1},8,["modelValue"])):a.value?(e.openBlock(),e.createBlock(at,{key:2,modelValue:i.value,"onUpdate:modelValue":u[3]||(u[3]=c=>i.value=c),"suggested-aspect-ratio":t.aspectRatio},{actions:e.withCtx(()=>[e.createElementVNode("button",{class:"btn btn-sm btn-outline-ccontrast",onClick:u[2]||(u[2]=e.withModifiers(c=>a.value=!1,["prevent","stop"]))},e.toDisplayString(d.$t("common.cancel")),1)]),_:1},8,["modelValue","suggested-aspect-ratio"])):e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(oe,{key:0,ref:"targetImage",class:"",animate:!1,src:t.modelValue},null,8,["src"])),r.value?(e.openBlock(),e.createElementBlock("div",$i,e.toDisplayString(d.$t("common.svgWarning")),1)):e.createCommentVNode("",!0),!a.value&&!n.value?(e.openBlock(),e.createElementBlock("hr",Si)):e.createCommentVNode("",!0),e.createElementVNode("div",Ni,[e.createElementVNode("div",vi,[e.createElementVNode("div",Mi,[!a.value&&!n.value?(e.openBlock(),e.createElementBlock("div",Di,[e.createElementVNode("button",{type:"button",class:"btn btn-light",onClick:u[4]||(u[4]=e.withModifiers(c=>a.value=!a.value,["prevent","stop"]))},[e.createVNode(M,{symbol:"crop"}),e.createElementVNode("span",Li,e.toDisplayString(d.$t("common.crop")),1)]),e.createElementVNode("button",{type:"button",class:"btn btn-light",onClick:u[5]||(u[5]=e.withModifiers(c=>n.value=!n.value,["prevent","stop"]))},[e.createVNode(M,{symbol:"image-upscale"}),e.createElementVNode("span",Ii,e.toDisplayString(d.$t("common.resize")),1)])])):e.createCommentVNode("",!0),!a.value&&!n.value?(e.openBlock(),e.createElementBlock("div",Pi,[e.renderSlot(d.$slots,"submit")])):e.createCommentVNode("",!0)])])])])])])):e.createCommentVNode("",!0)}}),Ti={class:"modal-dialog__content d-flex flex-column"},xi={class:"modal-dialog__header d-flex p-3 border-bottom"},zi={key:0,class:"modal-dialog__title",id:"exampleModalLabel"},Ri={class:"modal-dialog__body"},Fi={key:0,class:"modal-dialog__footer d-flex p-3 border-top"},lt=e.defineComponent({__name:"modal-dialog",props:{modelValue:{type:Boolean,default:!1},modal:{type:Boolean,default:!0},size:{type:String,default:"md"},dismiss:{type:Boolean,default:!0},title:{type:String,default:""},footer:{type:Boolean,default:!0},classes:{type:String,default:""}},emits:["update:modelValue","confirm","cancel"],setup(t,{expose:A,emit:l}){const o=t,n=l,a=e.ref();function i(){document.documentElement.style.setProperty("--scroll-position",`${Math.round(document.documentElement.scrollTop)}px`),o.modal?a.value?.showModal():a.value?.show(),n("update:modelValue",!0)}function r(){const m=a.value&&new KeyframeEffect(a.value,[{translate:"0 -100%",opacity:"0"}],{duration:320,easing:"ease",direction:"normal"}),f=new Animation(m,document.timeline);f.play(),f.addEventListener("finish",()=>{a.value?.close(),d()}),n("update:modelValue",!1)}function d(){const m=getComputedStyle(document.documentElement).getPropertyValue("--scroll-position");document.documentElement.scrollTo({top:parseInt(m,10),behavior:"instant"}),n("update:modelValue",!1)}function u(m){i(),n("confirm",m)}function c(){r(),n("cancel")}function s(m){const f=m.target;f&&f.nodeName==="DIALOG"&&r()}return e.watch(()=>o.modelValue,(m,f)=>{m&&m!==f?i():f&&r()},{immediate:!0}),e.onMounted(()=>{a.value?.addEventListener("cancel",m=>{m.preventDefault(),r()}),o.dismiss&&document.addEventListener("click",s),o.modelValue&&i()}),e.onBeforeUnmount(()=>{o.dismiss&&document.removeEventListener("click",s)}),A({show:i,close:r,confirm:u,cancel:c}),(m,f)=>(e.openBlock(),e.createElementBlock("dialog",{ref_key:"dialog",ref:a,class:e.normalizeClass(["modal-dialog",{[`modal-dialog--${t.size}`]:t.size}]),onClose:d},[e.createElementVNode("div",Ti,[e.createElementVNode("div",xi,[t.title?(e.openBlock(),e.createElementBlock("h5",zi,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",class:"btn-close ms-auto border-radius-none","aria-label":"Close",onClick:r})]),e.createElementVNode("div",Ri,[e.renderSlot(m.$slots,"default")]),t.footer?(e.openBlock(),e.createElementBlock("div",Fi,[e.renderSlot(m.$slots,"footer"),e.createElementVNode("button",{type:"button",class:"btn ms-auto",onClick:r},e.toDisplayString(m.$t("common.close")),1)])):e.createCommentVNode("",!0)])],34))}}),Oi={class:"image-upload__controls"},Qi={class:"d-flex gap-1 align-items-center"},Hi={key:1,class:"image-upload__controls"},Wi=["for"],Ui=["innerHTML"],qi={key:0,class:"image-upload__loading-spinner"},ot=e.defineComponent({__name:"image-upload",props:{modelValue:{type:Object,default:void 0},src:{type:String},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null},accept:{type:String,default:"image/*"},maxFileSize:{type:Number,default:0},endpoint:{type:String,default:""},toDataUrl:{type:Boolean,default:!0},authToken:{type:String,default:""},customFetch:null,baseResponsePath:{type:String,default:"/api/v1/assets"},enablePreview:{type:Boolean,default:!0},previewWidth:{type:Number,default:0},dropFiles:{type:Boolean,default:!1},enableReview:{type:Boolean,default:!0},maxImageWidth:{type:Number,default:4096},aspectRatio:Number},emits:["update:modelValue","update:src"],setup(t,{emit:A}){const l=t,o=A,n=e.ref(!1),a=e.ref(null),i=e.ref(null),r=e.ref(null),{pending:d,files:u,imgLoaded:c,isDragging:s,uploadFile:m,setupDragAndDrop:f,cleanupDragAndDrop:h}=Xe(l,o),b=e.computed(()=>l.modelValue?l.modelValue:l.src?{type:"",src:l.src}:a.value);function E(){a.value=null,u.value=[],c.value=!1,o("update:modelValue",void 0),o("update:src","")}function y(){E()}e.watch(()=>u.value,async N=>{if(!N||!N.length||!N[0])return;c.value=!1;const B=await St(N[0],l.maxImageWidth);l.enableReview?(i.value={src:await Be(B),type:B.type},n.value=!0):a.value={src:l.toDataUrl?await Be(B):await m(B),type:B.type}}),e.watch(()=>a.value,N=>{o("update:modelValue",N||void 0),o("update:src",N?.src||"")}),e.watch(()=>r.value,async N=>{N&&(a.value={src:await m(N),type:N.type},r.value=null)}),e.watch(()=>n.value,(N,B)=>{!N&&B&&i.value&&(i.value=null,y())}),e.watch(()=>l.src,N=>{!N&&a.value&&y()});function g(N,B){i.value={src:N,type:B},n.value=!0}async function C(){i.value&&(r.value=await Oe(i.value.src,"file",i.value.type)),i.value=null,n.value=!1}return e.onMounted(()=>{f()}),e.onBeforeUnmount(()=>{h()}),(N,B)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["image-upload",{"has-dragging":t.dropFiles,"is-dragging":e.unref(s)}])},[!n.value&&b.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["mb-2",t.enablePreview?"image-upload__thumbnail":"image-upload__reset"])},[t.enablePreview?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(oe,{src:`${b.value.src}${t.previewWidth?`?width=${t.previewWidth}`:""}`,class:"img-thumbnail rounded",ready:e.unref(c),"onUpdate:ready":B[0]||(B[0]=v=>e.isRef(c)?c.value=v:null),animate:!1,style:e.normalizeStyle({maxWidth:t.previewWidth?`${t.previewWidth}px`:"auto",height:"auto"})},null,8,["src","ready","style"]),e.createElementVNode("div",Oi,[e.createElementVNode("div",Qi,[e.createElementVNode("button",{type:"button",onClick:B[1]||(B[1]=e.withModifiers(v=>g(b.value.src,b.value.type),["prevent","stop"])),class:"btn btn--edit btn-sm btn-light"},[e.createVNode(M,{symbol:"edit-2"})]),e.createElementVNode("button",{type:"button",onClick:B[2]||(B[2]=e.withModifiers(v=>E(),["prevent","stop"])),class:"btn btn--close btn-sm btn-light"},[e.createVNode(M,{symbol:"x"})])])])],64)):(e.openBlock(),e.createElementBlock("div",Hi,[e.createElementVNode("button",{onClick:B[3]||(B[3]=e.withModifiers(v=>E(),["prevent","stop"])),class:"btn btn--close btn-outline-contrast"},[e.createVNode(M,{symbol:"x"})])]))],2)):e.createCommentVNode("",!0),e.createVNode(Te,{modelValue:e.unref(u),"onUpdate:modelValue":B[4]||(B[4]=v=>e.isRef(u)?u.value=v:null),id:t.id,name:t.name,accept:t.accept,"max-file-size":t.maxFileSize,class:"d-none"},null,8,["modelValue","id","name","accept","max-file-size"]),t.src?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("label",{key:1,for:t.id,class:"image-upload__label"},[e.renderSlot(N.$slots,"button",{},()=>[e.createElementVNode("span",{class:"btn btn-outline-contrast",innerHTML:t.label||N.$t("common.selectFile")},null,8,Ui)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[e.unref(d)?(e.openBlock(),e.createElementBlock("span",qi,[...B[7]||(B[7]=[e.createElementVNode("span",{class:"spinner-border",role:"status"},[e.createElementVNode("span",{class:"visually-hidden"},"Loading...")],-1)])])):e.createCommentVNode("",!0)]),_:1})],8,Wi)),e.createVNode(lt,{modelValue:n.value,"onUpdate:modelValue":B[6]||(B[6]=v=>n.value=v),footer:!1},{default:e.withCtx(()=>[n.value&&i.value?(e.openBlock(),e.createBlock(nt,{key:0,modelValue:i.value.src,"onUpdate:modelValue":B[5]||(B[5]=v=>i.value.src=v),"aspect-ratio":t.aspectRatio},{submit:e.withCtx(()=>[e.createElementVNode("button",{class:"btn btn-primary",onClick:e.withModifiers(C,["prevent","stop"])},e.toDisplayString(N.$t("common.save")),1)]),_:1},8,["modelValue","aspect-ratio"])):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])],2))}}),ji={class:"upload-group"},_i=["innerHTML"],Ji={class:"upload-group__list"},Gi={class:"img-container"},Yi=["src"],Zi=["onClick"],Xi={role:"button",class:"img-thumbnail d-flex justify-content-center align-items-center"},Ki={role:"button",class:"img-thumbnail d-flex justify-content-center align-items-center"},it=e.defineComponent({__name:"upload-group",props:{modelValue:{type:Array,default:()=>[]},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},label:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},accept:{type:String},maxFileSize:{type:Number,default:0},endpoint:{type:String,default:""},authToken:{type:String,default:""},customFetch:null,baseResponsePath:{type:String,default:"/api/v1/assets"},previewWidth:{type:Number,default:0},useImageUpload:{type:Boolean,default:!1},maxImageWidth:{type:Number,default:0},aspectRatio:Number},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.ref(""),a=e.computed({get(){return l.modelValue},set(r){o("update:modelValue",r)}});function i(r){a.value.splice(r,1),o("update:modelValue",a.value)}return e.watch(n,async(r,d)=>{r&&d!==r&&(o("update:modelValue",[...a.value,r]),await e.nextTick(),n.value="")}),(r,d)=>(e.openBlock(),e.createElementBlock("div",ji,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,innerHTML:e.unref(H)(t.label)},null,8,_i)):e.createCommentVNode("",!0),e.createElementVNode("div",Ji,[e.createVNode(et,{modelValue:a.value,"onUpdate:modelValue":d[2]||(d[2]=u=>a.value=u),vertical:!1,class:"mb-3"},{"list-item":e.withCtx(({item:u,index:c})=>[e.createElementVNode("div",Gi,[e.createElementVNode("img",{src:`${u}${t.previewWidth?`?width=${t.previewWidth}`:""}`,class:"img-thumbnail"},null,8,Yi),e.createElementVNode("button",{onClick:e.withModifiers(s=>i(c),["prevent"]),class:"btn btn--close"},[e.createVNode(M,{symbol:"x"})],8,Zi)])]),"list-append":e.withCtx(()=>[t.useImageUpload?(e.openBlock(),e.createBlock(ot,{key:0,src:n.value,"onUpdate:src":d[0]||(d[0]=u=>n.value=u),endpoint:t.endpoint,"custom-fetch":t.customFetch,"to-data-url":!t.endpoint,"auth-token":t.authToken,disabled:t.disabled,"base-response-path":t.baseResponsePath,accept:t.accept,"max-file-size":t.maxFileSize,"max-image-width":t.maxImageWidth,"enable-preview":!1,"aspect-ratio":t.aspectRatio},{button:e.withCtx(()=>[e.createElementVNode("span",Xi,[e.createVNode(M,{symbol:"plus"})])]),_:1},8,["src","endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","max-image-width","aspect-ratio"])):(e.openBlock(),e.createBlock(Ke,{key:1,src:n.value,"onUpdate:src":d[1]||(d[1]=u=>n.value=u),multiple:!1,endpoint:t.endpoint,"custom-fetch":t.customFetch,"to-data-url":!t.endpoint,"auth-token":t.authToken,disabled:t.disabled,"base-response-path":t.baseResponsePath,accept:t.accept,"max-file-size":t.maxFileSize,"max-image-width":t.maxImageWidth},{button:e.withCtx(()=>[e.createElementVNode("span",Ki,[e.createVNode(M,{symbol:"plus"})])]),_:1},8,["src","endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","max-image-width"]))]),_:1},8,["modelValue"])])]))}}),er={class:"asset-uploader"},tr=["innerHTML"],ar=e.defineComponent({__name:"asset-uploader",props:{modelValue:{type:Array,default:()=>[]},name:{type:String,default:()=>P()},id:{type:String,default:()=>P()},type:{type:String,default:""},label:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},accept:{type:String},maxFileSize:{type:Number,default:0},endpoint:{type:String,default:""},authToken:{type:String,default:""},customFetch:null,mediaTypeMap:{type:Object,default:()=>({svg:"Svg",png:"Image",jpg:"Image"})},baseResponsePath:{type:String,default:"/api/v1/assets"},previewWidth:{type:Number,default:0},useImageUpload:{type:Boolean,default:!1},maxImageWidth:{type:Number,default:0},aspectRatio:Number},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.computed({get(){return l.modelValue.map(a=>a.src)},set(a){o("update:modelValue",a.map((i,r)=>({mediaType:l.modelValue[r]&&l.modelValue[r].mediaType||i.includes("data:image")?i.includes("data:image/svg")?"Svg":"Image":l.mediaTypeMap[i.split(".")[1]],src:i,name:l.modelValue[r]&&l.modelValue[r].name||`${l.name}-${r}`,...l.type?{type:l.type}:{}})))}});return(a,i)=>(e.openBlock(),e.createElementBlock("div",er,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,innerHTML:e.unref(H)(t.label)},null,8,tr)):e.createCommentVNode("",!0),e.createVNode(it,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=r=>n.value=r),endpoint:t.endpoint,"custom-fetch":t.customFetch,"auth-token":t.authToken,disabled:t.disabled,"preview-width":t.previewWidth,"base-response-path":t.baseResponsePath,accept:t.accept,"max-file-size":t.maxFileSize,"use-image-upload":t.useImageUpload,"max-image-width":t.maxImageWidth,"aspect-ratio":t.aspectRatio},null,8,["modelValue","endpoint","custom-fetch","auth-token","disabled","preview-width","base-response-path","accept","max-file-size","use-image-upload","max-image-width","aspect-ratio"])]))}}),nr="https://router.project-osrm.org/route/v1";function rt(){const t=e.ref([]),A=e.ref(null),l=e.ref(null),o=e.ref([]),n=e.ref(!1),a=e.ref(""),i=e.computed(()=>t.value.length>1);function r(){t.value=[],A.value=null,l.value=null,o.value=[],a.value=""}async function d(u,c,s={}){if(!u||!c)return r(),null;n.value=!0;const m=s.customFetch||be.ofetch,f=(s.endpoint||nr).replace(/\/$/,""),h=s.profile||"driving";try{const E=(await m(`${f}/${h}/${u.lng},${u.lat};${c.lng},${c.lat}`,{method:"GET",query:{alternatives:!1,overview:"full",steps:!0,geometries:"geojson"}}))?.routes?.[0];if(!E)throw new Error("No route available for these points.");return t.value=Array.isArray(E?.geometry?.coordinates)?E.geometry.coordinates.map(y=>[Number(y[1]),Number(y[0])]).filter(y=>Number.isFinite(y[0])&&Number.isFinite(y[1])):[],A.value=Number.isFinite(E?.distance)?Number(E.distance):null,l.value=Number.isFinite(E?.duration)?Number(E.duration):null,o.value=Array.isArray(E?.legs)?E.legs.flatMap(y=>Array.isArray(y?.steps)?y.steps.map(g=>lr(g)):[]):[],a.value="",E}catch(b){return r(),a.value=b?.message||"Unable to load directions right now.",null}finally{n.value=!1}}return{routeCoordinates:t,distanceMeters:A,durationSeconds:l,steps:o,pending:n,error:a,hasRoute:i,fetchRoute:d,clearRoute:r}}function lr(t){const A=`${t?.maneuver?.type||"continue"}`,l=t?.maneuver?.modifier?` ${t.maneuver.modifier}`:"",o=`${t?.name||""}`;return{instruction:`${or(A)}${l}${o?` on ${o}`:""}`.trim(),name:o,distance:Number.isFinite(t?.distance)?Number(t.distance):0,duration:Number.isFinite(t?.duration)?Number(t.duration):0}}function or(t){return t.charAt(0).toUpperCase()+t.slice(1)}const ir="https://nominatim.openstreetmap.org/search",rr="https://nominatim.openstreetmap.org/reverse";function st(){const t=e.ref([]),A=e.ref(!1),l=e.ref("");function o(){t.value=[],l.value=""}async function n(i,r={}){if(!i.trim())return o(),[];A.value=!0;const d=r.customFetch||be.ofetch;try{const u=await d(r.endpoint||ir,{method:"GET",headers:{Accept:"application/json",...r.language?{"Accept-Language":r.language}:{}},query:{q:i,format:"jsonv2",addressdetails:1,limit:r.limit||5}});return t.value=Array.isArray(u)?u.map((c,s)=>At(c,s,"geocoder")).filter(c=>!!c):[],l.value="",t.value}catch(u){return l.value=u?.message||"Unable to search locations right now.",t.value=[],[]}finally{A.value=!1}}async function a(i,r={}){A.value=!0;const d=r.customFetch||be.ofetch;try{const u=await d(r.reverseEndpoint||rr,{method:"GET",headers:{Accept:"application/json",...r.language?{"Accept-Language":r.language}:{}},query:{lat:i.lat,lon:i.lng,format:"jsonv2",addressdetails:1}}),c=At(u,0,"reverse-geocoder");return l.value="",c}catch(u){return l.value=u?.message||"Unable to resolve this location right now.",null}finally{A.value=!1}}return{results:t,pending:A,error:l,search:n,reverse:a,clearResults:o}}function At(t,A,l){const o=Number(t?.lat),n=Number(t?.lon??t?.lng);if(!Number.isFinite(o)||!Number.isFinite(n))return null;const a=`${t?.display_name||t?.name||"Location"}`,i=`${t?.name||a.split(",")[0]||"Location"}`.trim();return{id:`${l==="reverse-geocoder"?"reverse":"geo"}-${t?.place_id??A}`,title:i,address:a,lat:o,lng:n,source:l,raw:t}}function ct(t={}){const A=e.ref(null),l=e.ref(""),o=e.ref(!1),n=e.ref(!1),a=typeof window<"u"&&typeof navigator<"u"&&"geolocation"in navigator,i={enableHighAccuracy:!0,timeout:1e4,maximumAge:1e4,...t};let r=null;function d(f){A.value={lat:Number(f.latitude),lng:Number(f.longitude),accuracy:Number.isFinite(f.accuracy)?Number(f.accuracy):null},o.value=!1,l.value=""}function u(f){l.value=typeof f=="string"?f:f instanceof Error?f.message:f.message||"Unable to retrieve your location.",o.value=!1}async function c(){return a?(o.value=!0,new Promise(f=>{navigator.geolocation.getCurrentPosition(({coords:h})=>{d(h),f(A.value)},h=>{u(h),f(null)},i)})):(u("Geolocation is not supported in this browser."),null)}function s(){if(!a){u("Geolocation is not supported in this browser.");return}r===null&&(o.value=!0,n.value=!0,r=navigator.geolocation.watchPosition(({coords:f})=>{d(f)},f=>{u(f),n.value=!1},i))}function m(){if(!a||r===null){n.value=!1,o.value=!1;return}navigator.geolocation.clearWatch(r),r=null,n.value=!1,o.value=!1}return e.onBeforeUnmount(()=>{m()}),{supported:a,position:e.computed(()=>A.value),accuracy:e.computed(()=>A.value?.accuracy??null),error:l,pending:o,isTracking:n,locate:c,startTracking:s,stopTracking:m}}const sr={class:"location-finder","data-testid":"location-finder"},Ar={class:"location-finder__actions"},cr=["disabled"],dr={key:1,class:"location-finder__notice","data-testid":"location-finder-error"},ur={class:"location-finder__map-panel"},mr=["aria-label"],fr={class:"location-finder__legend-item"},pr={class:"location-finder__legend-item"},gr={class:"location-finder__legend-item"},hr={class:"location-finder__legend-item"},yr={key:0,class:"location-finder__sidebar"},br={key:1,class:"location-finder__summary","data-testid":"location-finder-directions"},kr={class:"location-finder__summary-title"},wr={key:0,class:"location-finder__summary-copy"},Br={class:"location-finder__summary-grid"},Cr={class:"location-finder__summary-label"},Vr={"data-testid":"location-finder-distance"},Er={class:"location-finder__summary-label"},$r={"data-testid":"location-finder-duration"},Sr={key:0,class:"location-finder__steps"},Nr={key:0},vr={key:2,class:"location-finder__summary-copy"},Mr=e.defineComponent({__name:"location-finder",props:{modelValue:{type:Object,default:null},locations:{type:Array,default:()=>[]},center:{type:Object,default:null},distance:{type:Number,default:null},userLocation:{type:Object,default:null},messages:{type:Object,default:()=>({})},mapHeight:{type:String,default:"26rem"},searchLabel:{type:String,default:""},searchPlaceholder:{type:String,default:""},resultsLabel:{type:String,default:""},emptyText:{type:String,default:""},locateButtonLabel:{type:String,default:""},stopTrackingLabel:{type:String,default:""},mapHelperText:{type:String,default:""},enableGeocoding:{type:Boolean,default:!1},geocodingEndpoint:{type:String,default:"https://nominatim.openstreetmap.org/search"},reverseGeocodingEndpoint:{type:String,default:"https://nominatim.openstreetmap.org/reverse"},geocodingLimit:{type:Number,default:5},geocodingMinQueryLength:{type:Number,default:3},customGeocodingFetch:null,enableDirections:{type:Boolean,default:!1},directionsEndpoint:{type:String,default:"https://router.project-osrm.org/route/v1"},routeProfile:{type:String,default:"driving"},customDirectionsFetch:null,showDirectionsSummary:{type:Boolean,default:!0},showDirectionsSteps:{type:Boolean,default:!0},directionsTitle:{type:String,default:""},directionsEmptyText:{type:String,default:""},distanceLabel:{type:String,default:""},durationLabel:{type:String,default:""},routeColor:{type:String,default:"#2563eb"},routeWeight:{type:Number,default:5},selectionRadius:{type:Number,default:0},selectionRadiusColor:{type:String,default:"#2563eb"},selectionRadiusFillColor:{type:String,default:"#60a5fa"},mapStyle:{type:String,default:"streets"},tileLayerUrl:{type:String,default:""},tileLayerAttribution:{type:String,default:""},disabled:{type:Boolean,default:!1},interactive:{type:Boolean,default:!1},showSearch:{type:Boolean,default:!0},showLegend:{type:Boolean,default:!0},showSidebar:{type:Boolean,default:!0},showTrackButton:{type:Boolean,default:!0},trackUser:{type:Boolean,default:!0},autoLocate:{type:Boolean,default:!1}},emits:["update:modelValue","update:distance","select","search","track-user"],setup(t,{emit:A}){const l={lat:48.8566,lng:2.3522},o={searchLabel:"Search locations",searchPlaceholder:"Search by name or address",resultsLabel:"Locations",emptyText:"No locations found.",locateButtonLabel:"Use my location",stopTrackingLabel:"Stop tracking",mapHelperText:"Select a location from the list or use the map.",directionsTitle:"Directions",directionsEmptyText:"Select a destination and share your location to preview a route.",distanceLabel:"Distance",durationLabel:"ETA",loadingRoute:"Loading route…",legendAriaLabel:"Map marker types",legendLocations:"Locations",legendSelected:"Selected",legendSearchResult:"Search result",userLocationLabel:"Your location",pinnedLocationTitle:"Pinned location",selectedLocationLabel:"Selected location"},n=t,a=A,{t:i,te:r}=De.useI18n({useScope:"global"}),d=ct(),u=st(),c=rt(),s=e.ref(""),m=e.ref(j($(n.modelValue))),f=e.ref(j($(n.modelValue))?null:$(n.modelValue)),h=e.ref(z(n.modelValue)||z(n.center)||z(n.locations[0])||l),b=e.ref(!1),E=e.computed(()=>z(n.userLocation)),y=e.computed(()=>d.position.value||E.value),g=e.computed(()=>z(f.value)),C=e.computed(()=>z(m.value)),N=e.computed(()=>y.value||g.value),B=e.computed(()=>!N.value||!C.value?null:Ne(N.value,C.value)),v=e.computed(()=>z(n.modelValue)||g.value||C.value),F=e.computed(()=>d.error.value||u.error.value||c.error.value||""),K=e.computed(()=>n.showSearch||n.trackUser&&n.showTrackButton),J=e.computed(()=>n.enableDirections&&n.showDirectionsSummary),le=e.computed(()=>n.showSidebar||J.value),ee=e.computed(()=>he(c.distanceMeters.value)),se=e.computed(()=>ve(c.durationSeconds.value)),x=e.computed(()=>({searchLabel:R("searchLabel",n.searchLabel),searchPlaceholder:R("searchPlaceholder",n.searchPlaceholder),resultsLabel:R("resultsLabel",n.resultsLabel),emptyText:R("emptyText",n.emptyText),locateButtonLabel:R("locateButtonLabel",n.locateButtonLabel),stopTrackingLabel:R("stopTrackingLabel",n.stopTrackingLabel),mapHelperText:R("mapHelperText",n.mapHelperText),directionsTitle:R("directionsTitle",n.directionsTitle),directionsEmptyText:R("directionsEmptyText",n.directionsEmptyText),distanceLabel:R("distanceLabel",n.distanceLabel),durationLabel:R("durationLabel",n.durationLabel),loadingRoute:R("loadingRoute"),legendAriaLabel:R("legendAriaLabel"),legendLocations:R("legendLocations"),legendSelected:R("legendSelected"),legendSearchResult:R("legendSearchResult"),userLocationLabel:R("userLocationLabel"),pinnedLocationTitle:R("pinnedLocationTitle"),selectedLocationLabel:R("selectedLocationLabel")})),ie=e.computed(()=>f.value?ce(f.value):x.value.selectedLocationLabel),k=e.computed(()=>d.isTracking.value&&b.value?x.value.stopTrackingLabel:x.value.locateButtonLabel);e.watch(()=>n.modelValue,p=>{const w=$(p),S=j(w);S?(m.value=S,f.value=null):w&&(f.value=w);const T=z(p);T&&(h.value=T)},{immediate:!0}),e.watch(()=>n.center,p=>{const w=z(p);w&&(h.value=w)},{deep:!0}),e.watch(y,p=>{p&&b.value&&(h.value=p)},{deep:!0}),e.watch(B,p=>{a("update:distance",p)},{immediate:!0}),e.watch(s,async p=>{if(a("search",p),!n.enableGeocoding){u.clearResults();return}const w=p.trim();if(w.length<n.geocodingMinQueryLength){u.clearResults();return}await u.search(w,{endpoint:n.geocodingEndpoint,customFetch:n.customGeocodingFetch,limit:n.geocodingLimit})}),e.watch(()=>({enabled:n.enableDirections,origin:y.value,destination:v.value,profile:n.routeProfile}),async({enabled:p,origin:w,destination:S,profile:T})=>{if(!p||!w||!S||G(w,S)){c.clearRoute();return}await c.fetchRoute(w,S,{endpoint:n.directionsEndpoint,profile:T,customFetch:n.customDirectionsFetch})},{immediate:!0,deep:!0}),e.onMounted(async()=>{n.autoLocate&&n.trackUser&&await re()});const D=e.computed(()=>{const p=fe(s.value).trim();return p?n.locations.filter(w=>[ce(w),Se(w)].filter(Boolean).some(S=>fe(S).includes(p))):n.locations}),I=e.computed(()=>u.results.value.map(p=>({id:p.id,title:p.title,address:p.address,lat:p.lat,lng:p.lng,source:p.source}))),O=e.computed(()=>{if(!s.value.trim())return n.locations;const p=D.value;return p.length?p:n.locations}),q=e.computed(()=>O.value),Ae=e.computed(()=>Y(O.value,n.enableGeocoding?I.value:[])),me=e.computed(()=>Array.from(new Set(Ae.value.map(p=>_(p))))),$e=e.computed(()=>q.value.map(p=>{const w=z(p);return w?{id:L(p),label:ce(p),...w,type:C.value&&G(w,C.value)?"selected":"list"}:null}).filter(p=>!!p)),ge=e.computed(()=>b.value&&y.value?y.value:h.value||v.value||y.value||z(q.value[0])||l);function R(p,w){const S=n.messages?.[p];if(typeof S=="string"&&S.trim())return S;if(typeof w=="string"&&w.trim())return w;const T=`locationFinder.${String(p)}`;return r(T)?String(i(T)):o[p]}function z(p){if(!p)return null;const w=Number(p.lat),S=Number(p.lng);return!Number.isFinite(w)||!Number.isFinite(S)?null:{lat:w,lng:S}}function $(p){if(!p)return null;const w=z(p);return w?{...p,...w}:null}function L(p){return p?typeof p!="object"?p:p.id??p.value??_(p):null}function j(p){return p&&n.locations.find(w=>L(w)===L(p)||G(z(w),z(p)))||null}function fe(p){return`${p??""}`.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase()}function ce(p){return`${p.title||p.label||p.name||"Location"}`}function Se(p){return`${p.address||p.description||p.subtitle||""}`}function _(p){const w=ce(p),S=Se(p);return S?`${w} — ${S}`:w}function Y(p,w){const S=[...p];return w.forEach(T=>{S.some(Me=>L(Me)===L(T)||G(z(Me),z(T)))||S.push(T)}),S}function G(p,w){return!p||!w?!1:Math.abs(p.lat-w.lat)<1e-6&&Math.abs(p.lng-w.lng)<1e-6}function Ne(p,w){const S=oA=>oA*(Math.PI/180),pe=S(w.lat-p.lat),Me=S(w.lng-p.lng),aA=S(p.lat),nA=S(w.lat),mt=Math.sin(pe/2)**2+Math.cos(aA)*Math.cos(nA)*Math.sin(Me/2)**2,lA=2*Math.atan2(Math.sqrt(mt),Math.sqrt(1-mt));return Math.round(6371e3*lA)}function he(p){return p===null||!Number.isFinite(p)?"—":p>=1e3?`${(p/1e3).toFixed(1)} km`:`${Math.round(p)} m`}function ve(p){if(p===null||!Number.isFinite(p))return"—";const w=Math.max(1,Math.round(p/60));if(w<60)return`${w} min`;const S=Math.floor(w/60),T=w%60;return T?`${S} h ${T} min`:`${S} h`}function te(p){const w=$(p),S=j(w);if(b.value=!1,!w){a("update:modelValue",null);return}m.value=S||w;const T=z(w);T&&(h.value=T),a("update:modelValue",w),a("select",w)}function ye(p){const w=$(p),S=j(w);if(b.value=!1,!w){a("update:modelValue",null);return}S?(m.value=S,f.value=null):f.value=w;const T=z(w);T&&(h.value=T),a("update:modelValue",w),a("select",w)}function Z(p){const w=Ae.value.find(S=>_(S)===p||ce(S)===p);if(w){if(j(w)){te(w),f.value=null;return}ye(w)}}function ae(p){te(p)}function Q(p){if(p.id==="user-location"&&y.value){h.value=y.value,b.value=!0,a("track-user",y.value);return}const w=q.value.find(S=>L(S)===p.id)||q.value.find(S=>{const T=z(S);return T&&Math.abs(T.lat-p.lat)<1e-6&&Math.abs(T.lng-p.lng)<1e-6});if(w){te(w);return}f.value&&(L(f.value)===p.id||G(z(f.value),{lat:p.lat,lng:p.lng}))&&ye(f.value)}async function X(p){if(h.value=p,b.value=!1,!n.interactive)return;const w=q.value.find(T=>{const pe=z(T);return pe&&Math.abs(pe.lat-p.lat)<1e-6&&Math.abs(pe.lng-p.lng)<1e-6});if(w){te(w);return}const S=await de(p,x.value.pinnedLocationTitle);ye(S)}async function de(p,w){if(!n.enableGeocoding)return{id:`pin-${p.lat}-${p.lng}`,title:w,lat:p.lat,lng:p.lng};const S=await u.reverse(p,{reverseEndpoint:n.reverseGeocodingEndpoint,customFetch:n.customGeocodingFetch});return S?{id:S.id,title:S.title||w,address:S.address,lat:S.lat,lng:S.lng,source:S.source}:{id:`pin-${p.lat}-${p.lng}`,title:w,lat:p.lat,lng:p.lng}}async function re(){if(d.isTracking.value&&b.value){d.stopTracking(),b.value=!1;return}if(y.value){h.value=y.value,b.value=!0,a("track-user",y.value),!d.isTracking.value&&!E.value&&d.startTracking();return}const p=await d.locate();p&&(h.value=p,b.value=!0,a("track-user",p),d.startTracking())}return(p,w)=>(e.openBlock(),e.createElementBlock("div",sr,[K.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["location-finder__toolbar",{"location-finder__toolbar--actions-only":!n.showSearch}])},[n.showSearch?(e.openBlock(),e.createBlock(_e,{key:0,modelValue:s.value,"onUpdate:modelValue":w[0]||(w[0]=S=>s.value=S),class:"location-finder__search",label:x.value.searchLabel,placeholder:x.value.searchPlaceholder,options:me.value,disabled:t.disabled,"onUpdate:selection":Z},null,8,["modelValue","label","placeholder","options","disabled"])):e.createCommentVNode("",!0),e.createElementVNode("div",Ar,[t.trackUser&&n.showTrackButton?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"btn btn-outline-primary btn-sm location-finder__locate",disabled:t.disabled||e.unref(d).pending.value,"data-testid":"location-finder-locate",onClick:re},e.toDisplayString(k.value),9,cr)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),F.value?(e.openBlock(),e.createElementBlock("p",dr,e.toDisplayString(F.value),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["location-finder__layout",{"location-finder__layout--with-summary":J.value,"location-finder__layout--full-width":!le.value}])},[e.createElementVNode("div",ur,[e.createVNode(Ye,{class:"location-finder__map",center:ge.value,markers:$e.value,"model-value":g.value,"user-location":y.value,"user-location-label":x.value.userLocationLabel,"selected-location-label":ie.value,"route-coordinates":e.unref(c).routeCoordinates.value,"route-color":t.routeColor,"route-weight":t.routeWeight,"selection-radius":t.selectionRadius,"selection-radius-center":v.value,"selection-radius-color":t.selectionRadiusColor,"selection-radius-fill-color":t.selectionRadiusFillColor,"map-style":t.mapStyle,"tile-layer-url":t.tileLayerUrl,"tile-layer-attribution":t.tileLayerAttribution,height:t.mapHeight,interactive:t.interactive,disabled:t.disabled,"helper-text":x.value.mapHelperText,"onUpdate:modelValue":X,onMarkerClick:Q},null,8,["center","markers","model-value","user-location","user-location-label","selected-location-label","route-coordinates","route-color","route-weight","selection-radius","selection-radius-center","selection-radius-color","selection-radius-fill-color","map-style","tile-layer-url","tile-layer-attribution","height","interactive","disabled","helper-text"]),n.showLegend?(e.openBlock(),e.createElementBlock("div",{key:0,class:"location-finder__legend","data-testid":"location-finder-legend","aria-label":x.value.legendAriaLabel},[e.createElementVNode("span",fr,[w[2]||(w[2]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--list"},null,-1)),e.createTextVNode(" "+e.toDisplayString(x.value.legendLocations),1)]),e.createElementVNode("span",pr,[w[3]||(w[3]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--selected"},null,-1)),e.createTextVNode(" "+e.toDisplayString(x.value.legendSelected),1)]),e.createElementVNode("span",gr,[w[4]||(w[4]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--search"},null,-1)),e.createTextVNode(" "+e.toDisplayString(x.value.legendSearchResult),1)]),e.createElementVNode("span",hr,[w[5]||(w[5]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--user"},null,-1)),e.createTextVNode(" "+e.toDisplayString(x.value.userLocationLabel),1)])],8,mr)):e.createCommentVNode("",!0)]),le.value?(e.openBlock(),e.createElementBlock("aside",yr,[n.showSidebar?(e.openBlock(),e.createBlock(Ze,{key:0,modelValue:m.value,"onUpdate:modelValue":w[1]||(w[1]=S=>m.value=S),class:"location-finder__results",locations:q.value,label:x.value.resultsLabel,"empty-text":x.value.emptyText,onSelect:ae},null,8,["modelValue","locations","label","empty-text"])):e.createCommentVNode("",!0),J.value?(e.openBlock(),e.createElementBlock("div",br,[e.createElementVNode("p",kr,e.toDisplayString(x.value.directionsTitle),1),e.unref(c).pending.value?(e.openBlock(),e.createElementBlock("p",wr,e.toDisplayString(x.value.loadingRoute),1)):e.unref(c).hasRoute.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",Br,[e.createElementVNode("div",null,[e.createElementVNode("p",Cr,e.toDisplayString(x.value.distanceLabel),1),e.createElementVNode("strong",Vr,e.toDisplayString(ee.value),1)]),e.createElementVNode("div",null,[e.createElementVNode("p",Er,e.toDisplayString(x.value.durationLabel),1),e.createElementVNode("strong",$r,e.toDisplayString(se.value),1)])]),t.showDirectionsSteps&&e.unref(c).steps.value.length?(e.openBlock(),e.createElementBlock("ol",Sr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c).steps.value.slice(0,5),(S,T)=>(e.openBlock(),e.createElementBlock("li",{key:`${S.instruction}-${T}`},[e.createElementVNode("span",null,e.toDisplayString(S.instruction),1),S.name?(e.openBlock(),e.createElementBlock("small",Nr,e.toDisplayString(S.name),1)):e.createCommentVNode("",!0)]))),128))])):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock("p",vr,e.toDisplayString(x.value.directionsEmptyText),1))])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],2)]))}}),Dr={class:"carousel d-flex"},Lr=["onClick"],dt=e.defineComponent({__name:"base-carousel",props:{modelValue:{type:Number,default:-1},config:{type:Object,default:null},messages:{type:Object,default:{}},items:{type:Array,default:[]},navigation:{type:Boolean,default:!0}},emits:["update:modelValue","select"],setup(t,{emit:A}){const l=A,o=e.ref(),n=e.ref();function a(){o.value.scrollTo({top:0,left:o.value.scrollLeft-o.value.clientWidth>0?o.value.scrollLeft-o.value.clientWidth:0,behavior:"smooth"})}function i(){o.value.scrollTo({top:0,left:o.value.scrollLeft-o.value.clientWidth<=n.value.clientWidth?o.value.scrollLeft+o.value.clientWidth:n.value.clientWidth,behavior:"smooth"})}function r(d){l("update:modelValue",d)}return(d,u)=>(e.openBlock(),e.createElementBlock("div",Dr,[t.navigation?(e.openBlock(),e.createElementBlock("button",{key:0,class:"carousel__control btn btn-link text-light",type:"button",onClick:e.withModifiers(a,["prevent","stop"])},[e.createVNode(M,{symbol:"chevron-left"})])):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"viewport",ref:o,class:"carousel__viewport flex-grow-1"},[e.createElementVNode("div",{ref_key:"track",ref:n,class:"carousel__track d-flex justify-center align-items-center"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(c,s)=>e.renderSlot(d.$slots,"carousel-item",{key:c.src,item:c,index:s},()=>[e.createElementVNode("div",{class:e.normalizeClass(["carousel__item",s===t.modelValue?"selected":""]),onClick:m=>r(s)},e.toDisplayString(c),11,Lr)])),128))],512)],512),t.navigation?(e.openBlock(),e.createElementBlock("button",{key:1,class:"carousel__control btn btn-link text-light",type:"button",onClick:e.withModifiers(i,["prevent","stop"])},[e.createVNode(M,{symbol:"chevron-right"})])):e.createCommentVNode("",!0)]))}}),Ir={class:"media-thumbnails"},Pr=["onClick"],Tr={class:"img-container"},xr=e.defineComponent({__name:"media-thumbnails",props:{modelValue:{default:null},config:{type:Object,default:null},messages:{type:Object,default:{}},assets:{type:Array,default:[]}},emits:["update:modelValue","select"],setup(t,{emit:A}){const l=A,o=e.ref(-1);function n(a){o.value=a,l("update:modelValue",a),l("select",a)}return(a,i)=>(e.openBlock(),e.createElementBlock("div",Ir,[e.createVNode(dt,{items:t.assets},{"carousel-item":e.withCtx(r=>[e.createElementVNode("a",{role:"button",class:e.normalizeClass(["carousel__item media-thumbnails__thumbnail",r.index===t.modelValue||r.index===o.value?"is-active":""]),onClick:d=>n(r.index)},[e.createElementVNode("div",Tr,[e.createVNode(oe,{src:r.item.thumbnail||r.item.src,class:"img-fluid"},null,8,["src"])])],10,Pr)]),_:1},8,["items"])]))}}),zr={class:"progress-steps"},Rr={class:"progress-steps__list"},Fr={class:"progress-step"},Or=["checked","id","value","disabled","read-only","required","onChange"],Qr=["for"],Hr=["innerHTML"],Wr=["for"],Ur=["innerHTML"],qr=e.defineComponent({__name:"progress-steps",props:{modelValue:{type:Number,default:0},progress:{type:Number,default:0},steps:{type:Array},label:{type:String,default:""},reveal:{type:Boolean,default:!1}},emits:["update:modelValue","update:progress"],setup(t,{emit:A}){const l=t,o=A;function n(a){o("update:modelValue",a),a>=l.progress&&o("update:progress",a)}return(a,i)=>(e.openBlock(),e.createElementBlock("div",zr,[e.createElementVNode("ul",Rr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.steps,(r,d)=>(e.openBlock(),e.createElementBlock("li",{key:d,class:e.normalizeClass(["progress-steps__step",{"progress-steps__step--disabled":d>t.progress+(t.reveal?1:0),"progress-steps__step--active":d===(t.modelValue||0)}])},[e.renderSlot(a.$slots,"step",{},()=>[e.createElementVNode("div",Fr,[e.createElementVNode("input",{type:"radio",checked:d<=(t.progress||0),id:`step-${d}`,name:"step",class:"form-check-input",value:r.value,disabled:r.disabled||d>t.progress+(t.reveal?1:0),"read-only":r.readOnly,required:r.required,onChange:u=>n(d)},null,40,Or),e.createElementVNode("label",{for:`step-${d}`},[e.renderSlot(a.$slots,"button",{step:r},()=>[e.createElementVNode("span",{class:"btn rounded-circle",innerHTML:e.unref(H)(r.text||"")},null,8,Hr)])],8,Qr),e.createElementVNode("label",{for:`step-${d}`},[e.renderSlot(a.$slots,"label",{step:r},()=>[e.createElementVNode("span",{class:"form-check-label",innerHTML:e.unref(H)(r.label||"")},null,8,Ur)])],8,Wr)])])],2))),128))])]))}}),jr={class:"hint-system"},_r=["innerHTML"],Jr=["innerHTML"],Gr={key:1,class:"hint-system__hint-content"},Yr=["disabled"],Zr=e.defineComponent({__name:"hint-system",props:{modelValue:{type:Number,default:0},hints:{type:Array,default:()=>[]},penalty:{type:Number,default:1},maxHints:{type:Number,default:void 0},htmlContent:{type:Boolean,default:!1},label:{type:String,default:"Show hint"},description:{type:String,default:""}},emits:["update:modelValue","hint-revealed"],setup(t,{emit:A}){const l=t,o=A,n=e.ref(l.modelValue);e.watch(()=>l.modelValue,u=>{n.value=u});const a=e.computed(()=>l.maxHints!==void 0?l.maxHints:l.hints.length),i=e.computed(()=>n.value<a.value),r=e.computed(()=>l.hints.slice(0,n.value));function d(){if(!i.value)return;const u=n.value;n.value++,o("update:modelValue",n.value),o("hint-revealed",{hint:l.hints[u],index:u,penaltyTotal:n.value*l.penalty})}return(u,c)=>(e.openBlock(),e.createElementBlock("div",jr,[t.description?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:e.unref(H)(t.description),class:"hint-system__description"},null,8,_r)):e.createCommentVNode("",!0),r.value.length?(e.openBlock(),e.createBlock(e.TransitionGroup,{key:1,name:"hint-reveal",tag:"ol",class:"hint-system__list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(s,m)=>(e.openBlock(),e.createElementBlock("li",{key:m,class:"hint-system__hint"},[e.renderSlot(u.$slots,"hint",{hint:s,index:m,isNew:m===n.value-1},()=>[t.htmlContent?(e.openBlock(),e.createElementBlock("div",{key:0,class:"hint-system__hint-content",innerHTML:e.unref(H)(s.content||"")},null,8,Jr)):(e.openBlock(),e.createElementBlock("div",Gr,e.toDisplayString(s.content),1))])]))),128))]),_:3})):e.createCommentVNode("",!0),i.value?e.renderSlot(u.$slots,"trigger",{key:2,revealNext:d,canReveal:i.value,revealedCount:n.value,total:a.value},()=>[e.createElementVNode("button",{type:"button",class:"hint-system__trigger d-block w-100 text-center",disabled:!i.value,onClick:d},e.toDisplayString(t.label),9,Yr)]):e.createCommentVNode("",!0)]))}}),Xr=["id","popover"],Ve=e.defineComponent({__name:"popover-dialog",props:{modelValue:{type:Boolean,default:!1},type:{type:String,default:"auto"},id:{type:String,default:()=>`popover-dialog-${Math.random().toString(36).substr(2,9)}`},title:{type:String,default:""},header:{type:Boolean,default:!1},footer:{type:Boolean,default:!1},classes:{type:String,default:""},hover:{type:Boolean,default:!1},hoverDelay:{type:Number,default:400},closeTimeout:{type:Number,default:0}},emits:["update:modelValue"],setup(t,{emit:A}){const l=t,o=A,n=e.ref(),a=e.ref(),i=e.ref(!1),r=e.computed(()=>"ontouchstart"in window||navigator.maxTouchPoints>0);function d(){clearTimeout(a.value),l.hover&&n.value?.showPopover()}function u(){i.value=!0,clearTimeout(a.value),d()}function c(){i.value=!1,(l.hover||l.closeTimeout)&&(a.value=setTimeout(()=>{n.value?.hidePopover()},l.closeTimeout||l.hoverDelay))}e.watch(()=>l.modelValue,(m,f)=>{m&&!f?n.value?.matches(":popover-open")||n.value?.showPopover():!m&&f&&n.value?.matches(":popover-open")&&n.value?.hidePopover()});function s(m){m.newState==="open"?(l.closeTimeout&&!i.value&&(clearTimeout(a.value),a.value=setTimeout(()=>{i.value||n.value?.hidePopover()},l.closeTimeout)),l.modelValue||o("update:modelValue",!0)):m.newState==="closed"&&(i.value=!1,l.modelValue&&o("update:modelValue",!1))}return e.onMounted(()=>{if(n.value?.addEventListener("toggle",s),l.modelValue&&n.value?.showPopover(),!r.value){n.value?.addEventListener("mouseenter",u),n.value?.addEventListener("mouseleave",c);const m=document.querySelector(`[popovertarget="${l.id}"]`);m&&(m.addEventListener("mouseenter",u),m.addEventListener("mouseleave",c))}}),e.onBeforeUnmount(()=>{if(clearTimeout(a.value),n.value?.removeEventListener("toggle",s),!r.value){n.value?.removeEventListener("mouseenter",u),n.value?.removeEventListener("mouseleave",c);const m=document.querySelector(`[popovertarget="${l.id}"]`);m&&(m.removeEventListener("mouseenter",u),m.removeEventListener("mouseleave",c))}}),(m,f)=>(e.openBlock(),e.createElementBlock("span",{class:"popover-dialog",id:t.id,popover:t.type,ref_key:"popover",ref:n},[e.renderSlot(m.$slots,"default",{},()=>[f[0]||(f[0]=e.createTextVNode(" Popover content goes here. ",-1))])],8,Xr))}}),Kr={class:"popover-tooltip"},es=["popovertarget","disabled","aria-describedby","aria-label"],ts={class:"popover-tooltip__content d-flex flex-column"},as={key:0,class:"popover-tooltip__header d-flex p-3 border-bottom"},ns=["innerHTML"],ls={class:"popover-tooltip__body"},os=["innerHTML"],is={key:1,class:"popover-tooltip__footer d-flex p-3 border-top"},rs=e.defineComponent({__name:"popover-tooltip",props:{modelValue:{type:Boolean,default:!1},id:{type:String,default:()=>`popover-tooltip-${Math.random().toString(36).substr(2,9)}`},size:{type:String},exclusive:{type:Boolean,default:!0},header:{type:Boolean,default:!1},footer:{type:Boolean,default:!1},title:{type:String,default:""},content:{type:String,default:""},hover:{type:Boolean,default:!0},hoverDelay:{type:Number,default:400},disabled:{type:Boolean,default:!1},ariaLabel:{type:String,default:""}},emits:["update:modelValue","confirm","cancel"],setup(t,{emit:A}){const l=t,o=A,n=we(()=>l.title),a=we(()=>l.content),i=e.computed({get(){return l.modelValue},set(u){o("update:modelValue",u)}}),r=e.ref(),d=e.ref();return(u,c)=>(e.openBlock(),e.createElementBlock("span",Kr,[e.createElementVNode("button",{type:"button",popovertarget:t.id,disabled:t.disabled,"aria-describedby":t.id,"aria-label":t.ariaLabel||u.$te("common.moreInfo")?u.$t("common.moreInfo"):void 0,ref_key:"trigger",ref:r},[e.renderSlot(u.$slots,"button",{},()=>[c[3]||(c[3]=e.createElementVNode("span",{class:"popover-tooltip__trigger"}," i ",-1))])],8,es),e.createVNode(Ve,{id:t.id,modelValue:i.value,"onUpdate:modelValue":c[2]||(c[2]=s=>i.value=s),hover:t.hover,"hover-delay":t.hoverDelay,ref_key:"dialog",ref:d,role:"tooltip",class:e.normalizeClass(t.size?`popover-tooltip--${t.size}`:"")},{default:e.withCtx(()=>[e.createElementVNode("div",ts,[t.header?(e.openBlock(),e.createElementBlock("div",as,[t.title?(e.openBlock(),e.createElementBlock("h5",{key:0,class:"popover-tooltip__title",innerHTML:e.unref(n)},null,8,ns)):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",class:"btn-close ms-auto border-radius-none","aria-label":"Close",onClick:c[0]||(c[0]=s=>i.value=!1)})])):e.createCommentVNode("",!0),e.createElementVNode("div",ls,[e.renderSlot(u.$slots,"default",{},()=>[e.createElementVNode("span",{innerHTML:e.unref(a)},null,8,os)])]),t.footer?(e.openBlock(),e.createElementBlock("div",is,[e.renderSlot(u.$slots,"footer"),e.createElementVNode("button",{type:"button",class:"btn ms-auto",onClick:c[1]||(c[1]=s=>i.value=!1)},e.toDisplayString(u.$t("common.close")),1)])):e.createCommentVNode("",!0)])]),_:3},8,["id","modelValue","hover","hover-delay","class"])]))}}),ss={class:"popover-notification__header d-flex justify-content-between mb-2"},As={class:"popover-notification__title"},cs=["onClick"],ds=["innerHTML"],us=e.defineComponent({__name:"popover-notifications",props:{modelValue:{type:Boolean,default:!1},id:{type:String,default:()=>`popover-notifications-${Math.random().toString(36).substr(2,9)}`},items:{type:Array,default:()=>[]},debounceItem:{type:Number,default:0},closeTimeout:{type:Number,default:8e3},collapsible:{type:Boolean,default:!0}},setup(t,{expose:A}){const l=t,o=e.ref([]),n=e.ref([]),a=e.computed(()=>o.value.map(m=>({...m,content:H(m.content||"")}))),i=e.ref(!1),r=e.computed(()=>l.collapsible&&o.value.length>3);function d(m,f){o.value=o.value.filter(h=>h.id!==m.id)}e.watch(()=>l.items,(m,f)=>{const h=m.filter(b=>!f.some(E=>E.id===b.id));n.value=[...n.value,...h]});function u(){setTimeout(()=>{const m=n.value.shift();m&&o.value.push({...m,closeTimeout:l.closeTimeout,visible:!0}),n.value.length>0&&u()},o.value.length?l.debounceItem:0)}function c(m){r.value&&(m.preventDefault(),m.stopPropagation(),i.value=!i.value)}function s(m){console.log("Adding item:",m),n.value.push(m),u()}return e.onMounted(()=>{n.value=l.items,n.value.length>3&&(i.value=!0),u()}),A({addItem:s}),(m,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["popover-notifications",{"popover-notifications--collapsed":i.value}]),style:{anchorName:"--popover-notifications"}},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(h,b)=>(e.openBlock(),e.createBlock(Ve,{key:h.id,id:h.id,"close-timeout":h.closeTimeout,type:"manual",class:"popover-notification",modelValue:h.visible,"onUpdate:modelValue":[E=>h.visible=E,E=>d(h)],onClick:c},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"item",{item:h},()=>[e.createElementVNode("div",ss,[e.createElementVNode("span",As,e.toDisplayString(h.title),1),e.createElementVNode("button",{type:"button",class:"btn btn-close p-0",onClick:e.withModifiers(E=>h.visible=!1,["stop"]),"aria-label":"Close notification"},null,8,cs)]),e.createElementVNode("span",{innerHTML:h.content},null,8,ds)])]),_:2},1032,["id","close-timeout","modelValue","onUpdate:modelValue"]))),128))],2))}}),ms=e.defineComponent({__name:"dom-renderer",props:{modelValue:{type:String,default:""},fixedWidth:{type:Number,default:0},renderUpdates:{type:Boolean,default:!1},exportToSvg:{type:Boolean,default:!1},options:{type:Object,default:()=>({})},pending:{type:Boolean,default:!1},emitPending:{type:Boolean,default:!1},debug:{type:Boolean,default:!1}},emits:["update:modelValue","update:pending"],setup(t,{emit:A}){const l=t,o=A,n=e.ref(),a=e.ref(""),i=e.ref(),r=e.ref(!0);async function d(){if(!n.value||!r.value)return"";const c=n.value;if(!c.isConnected)return"";try{l.emitPending&&o("update:pending",!0);const s=c.firstElementChild;if(!s)return"";const m=await pt(s,{backgroundColor:"rgba(0, 0, 0, 0)",scale:1,...l.options});if(!r.value||!n.value||!c.isConnected)return"";const f=m.toDataURL();if(o("update:modelValue",f),l.emitPending&&o("update:pending",!1),l.debug){const h=new Image;h.src=f,document.body.appendChild(h)}return f}catch(s){return r.value&&l.emitPending&&o("update:pending",!1),console.warn("dom-renderer: Render failed",s),""}}const u=Le.debounce(async()=>{a.value=await d()},300,{trailing:!0,leading:!1});return e.onMounted(()=>{const c=n.value;l.renderUpdates&&(i.value=new MutationObserver(async s=>{!r.value||!c.isConnected||(l.emitPending&&o("update:pending",!0),u())}),i.value.observe(c,{attributes:!0,childList:!0,characterData:!0,subtree:!0})),setTimeout(()=>{l.emitPending&&o("update:pending",!0),u()},500)}),e.onBeforeUnmount(()=>{r.value=!1,i.value&&i.value.disconnect(),u.cancel()}),(c,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dom-renderer",{"off-screen":!t.debug}]),ref_key:"renderer",ref:n,style:e.normalizeStyle(t.fixedWidth>0?{width:`${t.fixedWidth}px`}:{})},[e.renderSlot(c.$slots,"default")],6))}}),fs={class:"qr-code"},ps=["innerHTML"],gs=e.defineComponent({__name:"qr-code",props:{data:null,image:null,download:{type:Boolean,default:!1},filename:{type:String,default:"qr-code"}},emits:["update:dataUrl"],setup(t,{expose:A,emit:l}){const o=t,n=e.ref(),a=e.computed(()=>({width:300,height:300,type:"canvas",data:o.data,...o.image?{image:o.image}:{},margin:10,qrOptions:{typeNumber:0,mode:"Byte",errorCorrectionLevel:"Q"},imageOptions:{hideBackgroundDots:!0,imageSize:.4,margin:20,crossOrigin:"anonymous"},dotsOptions:{type:"rounded"},backgroundOptions:{color:"#ffffff"},cornersSquareOptions:{color:"#333333",type:"extra-rounded"},cornersDotOptions:{color:"#333333",type:"dot"}}));function i(d=null,u=null){typeof window<"u"&&(n.value&&(n.value.innerHTML=""),new Fe(d||a.value).append(n.value))}function r(){new Fe({...a.value,width:1200,height:1200}).download({name:o.filename,extension:"png"})}return e.watch(()=>a.value,i,{deep:!0,immediate:!0}),e.onMounted(()=>{typeof window<"u"&&i()}),A({download:r}),(d,u)=>(e.openBlock(),e.createElementBlock("div",fs,[o.download?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn btn-outline-contrast mb-3",onClick:r,innerHTML:d.$t("qrlink.download")},null,8,ps)):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"canvas",ref:n},null,512))]))}}),hs={class:"link-sharing"},ys={key:0,class:"link-sharing__links container"},bs={class:"row"},ks={key:0,class:"col-12 col-md-6"},ws=["href"],Bs={class:"caption"},Cs={key:1,class:"col-12 col-md-6"},Vs=["href"],Es={class:"caption"},$s={key:2,class:"col-12 col-md-6"},Ss={class:"caption"},Ns={key:3,class:"col-12 col-md-6"},vs=["href"],Ms={class:"caption"},Ds={key:4,class:"col-12 col-md-6"},Ls=["href"],Is={class:"caption"},Ps={key:5,class:"col-12 col-md-6"},Ts={class:"caption"},xs={key:6,class:"col-12 col-md-6"},zs=["href"],Rs={class:"caption"},Fs={key:1,class:"link-sharing__instructions pt-5"},Os={class:"row"},Qs={class:"col-12 text-center py-0"},Hs={class:"mb-5"},Ws=t=>t.replace(/<(?:.|\n)*?>/gm,""),Us=e.defineComponent({__name:"link-sharing",props:{url:{type:String,default:""},subject:{type:String,default:""},hashtags:Array,text:{type:String,default:""},media:{type:String,default:""},services:{type:Object,default:{facebook:!0,instagram:!0,linkedin:!0,whatsapp:!0,mailto:!0,clipboard:!0,bluesky:!0}}},setup(t){const A=t,l=e.ref(!1),o=e.computed(()=>encodeURIComponent(A.url));e.computed(()=>encodeURIComponent(A.media));const n=e.computed(()=>Ws(A.text)),a=e.computed(()=>!!(navigator&&navigator.userAgent&&/Mobi|Android/i.test(navigator.userAgent)));async function i(){const r=document.createElement("textarea");document.body.appendChild(r),r.value=A.url,r.select(),r.setSelectionRange(0,99999),navigator.clipboard.writeText(r.value),document.body.removeChild(r)}return(r,d)=>(e.openBlock(),e.createElementBlock("div",hs,[l.value?(e.openBlock(),e.createElementBlock("div",Fs,[e.createElementVNode("div",Os,[e.createElementVNode("div",Qs,[e.createElementVNode("div",Hs,[e.createElementVNode("p",null,e.toDisplayString(r.$t("sharing.instructions",{service:"Instagram"})),1),e.createElementVNode("p",null,[e.createElementVNode("strong",null,e.toDisplayString(Array.isArray(t.hashtags)?t.hashtags.join(", "):t.hashtags),1)]),e.createElementVNode("button",{type:"button",class:"btn btn-text",onClick:d[1]||(d[1]=e.withModifiers(u=>l.value=!l.value,["prevent"]))},[e.createVNode(M,{symbol:"arrow-left"}),e.createTextVNode(" "+e.toDisplayString(r.$t("common.back")),1)])])])])])):(e.openBlock(),e.createElementBlock("div",ys,[e.createElementVNode("div",bs,[t.services.facebook?(e.openBlock(),e.createElementBlock("div",ks,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`https://www.facebook.com/sharer.php?u=${o.value}`,target:"_blank",rel:"noopener"},[e.createVNode(M,{symbol:"facebook"}),e.createElementVNode("span",Bs,e.toDisplayString(r.$t("sharing.facebook")),1)],8,ws)])):e.createCommentVNode("",!0),t.services.bluesky?(e.openBlock(),e.createElementBlock("div",Cs,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`https://bsky.app/intent/compose?text=${n.value}${n.value?"%20":""}${t.url}`,target:"_blank",rel:"noopener"},[e.createVNode(M,{symbol:"bluesky-logo"}),e.createElementVNode("span",Es,e.toDisplayString(r.$t("sharing.bluesky")),1)],8,Vs)])):e.createCommentVNode("",!0),t.services.instagram?(e.openBlock(),e.createElementBlock("div",$s,[e.createElementVNode("button",{type:"button",class:"link-sharing__link btn btn-primary",onClick:d[0]||(d[0]=e.withModifiers(u=>l.value=!l.value,["prevent"]))},[e.createVNode(M,{symbol:"instagram"}),e.createElementVNode("span",Ss,e.toDisplayString(r.$t("sharing.instagram")),1)])])):e.createCommentVNode("",!0),t.services.linkedin?(e.openBlock(),e.createElementBlock("div",Ns,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`https://www.linkedin.com/shareArticle?mini=true&url=${o.value}&title=${t.subject}`,target:"_blank",rel:"noopener"},[e.createVNode(M,{symbol:"linkedin"}),e.createElementVNode("span",Ms,e.toDisplayString(r.$t("sharing.linkedin")),1)],8,vs)])):e.createCommentVNode("",!0),t.services.whatsapp&&a.value?(e.openBlock(),e.createElementBlock("div",Ds,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`whatsapp://send?text=${o.value}`,target:"_blank",rel:"noopener"},[e.createVNode(M,{symbol:"whatsapp"}),e.createElementVNode("span",Is,e.toDisplayString(r.$t("sharing.whatsapp")),1)],8,Ls)])):e.createCommentVNode("",!0),t.services.clipboard?(e.openBlock(),e.createElementBlock("div",Ps,[e.createElementVNode("button",{type:"button",class:"link-sharing__link btn btn-primary",onClick:e.withModifiers(i,["prevent","stop"])},[e.createVNode(M,{symbol:"copy"}),e.createElementVNode("span",Ts,e.toDisplayString(r.$t("sharing.clipboard")),1)])])):e.createCommentVNode("",!0),t.services.mailto?(e.openBlock(),e.createElementBlock("div",xs,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`mailto:?subject=${t.subject}&body=${n.value}%0D%0A${t.url}`,target:"_blank",rel:"noopener"},[e.createVNode(M,{symbol:"mail"}),e.createElementVNode("span",Rs,e.toDisplayString(r.$t("sharing.mailto")),1)],8,zs)])):e.createCommentVNode("",!0)])]))]))}}),qs={class:"base-form"},js=e.defineComponent({__name:"base-form",props:{id:{},name:{},variant:{},disabled:{type:Boolean},pending:{type:Boolean}},setup(t){function A(n){console.log("input",n)}function l(n){console.log("reset",n)}function o(n){console.log("submit",n)}return(n,a)=>(e.openBlock(),e.createElementBlock("div",qs,[e.createElementVNode("form",{ref:"form",onInput:A,onReset:l,onSubmit:e.withModifiers(o,["prevent"])},[e.renderSlot(n.$slots,"default")],544)]))}}),_s={class:"touch-wrapper__controls"},Js={class:"btn-group",role:"group"},Gs=e.defineComponent({__name:"touch-wrapper",props:{modelValue:{type:Number,default:1}},emits:["update:modelValue"],setup(t,{emit:A}){const l=e.getCurrentInstance(),o=l&&l.appContext.config.globalProperties.$config,n=t,a=A,i=e.ref();function r(c){const s=n.modelValue+c;a("update:modelValue",c===0?1:s>=1?s:1)}function d(c){if(c.ctrlKey){c.preventDefault();const s=0-c.deltaY*.01;r(s)}}function u(c){c.preventDefault();const{scale:s}=c,m=s>1?s*.01:0-s;r(m)}return e.onMounted(()=>{i.value&&(i.value.addEventListener("wheel",d,!1),i.value.addEventListener("gesturestart",u,!1),i.value.addEventListener("gesturechange",u,!1),i.value.addEventListener("gestureend",u,!1))}),(c,s)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"touchElement",ref:i,class:"touch-wrapper"},[e.renderSlot(c.$slots,"controls",{on:{setScale:r}},()=>[e.createElementVNode("div",_s,[e.createElementVNode("div",Js,[e.createElementVNode("button",{type:"button",class:"btn",onClick:s[0]||(s[0]=m=>r(-1))},[e.createVNode(M,{symbol:"minus","base-path":e.unref(o).iconSprite},null,8,["base-path"])]),e.createElementVNode("button",{type:"button",class:"btn",onClick:s[1]||(s[1]=m=>r(0))},[e.createVNode(M,{symbol:"maximize","base-path":e.unref(o).iconSprite},null,8,["base-path"])]),e.createElementVNode("button",{type:"button",class:"btn",onClick:s[2]||(s[2]=m=>r(1))},[e.createVNode(M,{symbol:"plus","base-path":e.unref(o).iconSprite},null,8,["base-path"])])])])]),e.renderSlot(c.$slots,"default")],512))}});let Ee=null;async function Ys(){if(typeof window>"u")return null;if(Ee)return Ee;const t=await import("canvas-confetti");return Ee=t.default||t,Ee}const ut={default:{items:[{particleCount:80,spread:120,origin:{y:.625,x:.5}},{timeout:400,particleCount:80,spread:120,origin:{y:.625,x:.625}},{timeout:800,particleCount:80,spread:120,origin:{y:.625,x:.375}}]},randomDirection:{items:[{angle:ze(55,125),spread:ze(50,70),particleCount:ze(50,100),origin:{y:.6}}]},pride:{items:[{timeout:20,particleCount:2,spread:32,origin:{x:0},colors:["#ff0000"]},{timeout:20,particleCount:2,spread:32,origin:{x:1},colors:["#ff0000"]}]}};function ze(t,A){return Math.random()*(A-t)+t}const Zs=e.defineComponent({__name:"canvas-confetti",props:{preset:{type:String,default:"default"},items:{default:()=>[{}]},colors:{type:Array,default:()=>[]},loop:{type:Boolean,default:!1}},setup(t){const A=t,l=e.ref(null),o=e.computed(()=>({...ut[A.preset],items:ut[A.preset].items.map((i,r)=>({...i,...A.items[r],...A.colors.length?{colors:A.colors}:{}}))}));async function n(i){return new Promise(r=>{(typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):u=>setTimeout(u,16))(()=>l.value?.confetti?.(JSON.parse(JSON.stringify(i)))),setTimeout(()=>r(),0)})}async function a(){await Promise.all(o.value.items.map(i=>new Promise(r=>setTimeout(()=>{r(n(i))},i.timeout||0)))),A.loop&&a()}return e.onMounted(async()=>{if(typeof window<"u"&&l.value){const i=await Ys();if(!i)return;l.value.confetti=l.value?.confetti||i.create(l.value,{resize:!0}),a()}}),(i,r)=>(e.openBlock(),e.createElementBlock("canvas",{class:"canvas-confetti",ref_key:"canvas",ref:l},null,512))}}),Xs=["popovertarget"],Ks={class:"image-zoom__preview-wrapper"},eA=["src","alt"],tA=e.defineComponent({__name:"image-zoom",props:{src:{type:String,required:!0},alt:{type:String,default:""},spinner:{type:Boolean,default:!1},zoom:{type:Number,default:2},focusWidth:{type:Number,default:160},focusHeight:{type:Number,default:120},hoverDelay:{type:Number,default:150},closeTimeout:{type:Number,default:0},popoverId:{type:String,default:()=>`image-zoom-${Math.random().toString(36).substring(2,9)}`}},setup(t){const A=t,l=e.ref(null),o=e.ref(null),n=e.ref(null),a=e.ref(!1),i=e.ref(!1),r=e.ref(!1),d=e.ref(!1),u=e.ref(null),c=e.ref(0),s=e.ref(0),m=e.ref(0),f=e.ref(0),h=e.computed(()=>r.value&&!i.value&&m.value>0&&f.value>0),b=e.computed(()=>({width:`${A.focusWidth}px`,height:`${A.focusHeight}px`,left:`${c.value}px`,top:`${s.value}px`})),E=e.computed(()=>{const k=m.value*A.zoom,D=f.value*A.zoom;return{width:`${k}px`,height:`${D}px`,transform:i.value?void 0:`translate(${-c.value*A.zoom}px, ${-s.value*A.zoom}px)`,transformOrigin:"top left"}});function y(){if(!o.value)return;const k=o.value.getBoundingClientRect();m.value=k.width,f.value=k.height}function g(){u.value&&(clearTimeout(u.value),u.value=null)}function C(){g(),a.value=!0}function N(){g(),u.value=setTimeout(()=>{!r.value&&!d.value&&!i.value&&(a.value=!1),u.value=null},A.hoverDelay||100)}function B(k,D){if(!o.value)return;const I=o.value.getBoundingClientRect(),O=k-I.left,q=D-I.top,Ae=Math.min(Math.max(O-A.focusWidth/2,0),Math.max(I.width-A.focusWidth,0)),me=Math.min(Math.max(q-A.focusHeight/2,0),Math.max(I.height-A.focusHeight,0));c.value=Ae,s.value=me}function v(){if(!n.value||!i.value)return;const k=n.value.getBoundingClientRect(),D=Math.max(0,c.value*A.zoom-k.width/2+A.focusWidth*A.zoom/2),I=Math.max(0,s.value*A.zoom-k.height/2+A.focusHeight*A.zoom/2);n.value.scrollTo({left:D,top:I})}function F(k){y(),B(k.clientX,k.clientY)}function K(k){r.value=!0,y(),B(k.clientX,k.clientY),i.value||C()}function J(){r.value=!1,i.value||N()}function le(k){i.value&&(a.value=!0,y(),B(k.clientX,k.clientY))}function ee(){i.value&&e.nextTick(v)}function se(){d.value=!0,C()}function x(){d.value=!1,N()}function ie(k){i.value&&(a.value=!a.value,k instanceof MouseEvent&&B(k.clientX,k.clientY))}return e.onMounted(()=>{i.value="ontouchstart"in window||navigator.maxTouchPoints>0,y()}),e.watch(a,async k=>{k&&i.value&&(await e.nextTick(),v())}),(k,D)=>(e.openBlock(),e.createElementBlock("span",{class:"image-zoom",popovertarget:t.popoverId,ref_key:"wrapper",ref:l},[e.createElementVNode("span",{class:"image-zoom__target",ref_key:"target",ref:o,onPointermove:F,onPointerenter:K,onPointerleave:J,onPointerdown:le,onPointerup:ee,onPointercancel:J,onClick:e.withModifiers(ie,["prevent"])},[e.renderSlot(k.$slots,"image",{src:t.src,alt:t.alt,spinner:t.spinner,animate:!1},()=>[e.createVNode(oe,{class:"image-zoom__image",src:t.src,alt:t.alt,spinner:t.spinner,animate:!1},null,8,["src","alt","spinner"])]),h.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"image-zoom__focus",style:e.normalizeStyle(b.value)},null,4)):e.createCommentVNode("",!0)],544),e.createVNode(Ve,{id:t.popoverId,modelValue:a.value,"onUpdate:modelValue":D[0]||(D[0]=I=>a.value=I),hover:!1,"hover-delay":t.hoverDelay,"close-timeout":t.closeTimeout,class:"image-zoom__popover",role:"tooltip",onMouseenter:se,onMouseleave:x},{default:e.withCtx(()=>[e.createElementVNode("div",Ks,[e.createElementVNode("div",{class:"image-zoom__preview",ref_key:"preview",ref:n},[e.createElementVNode("img",{class:"image-zoom__preview-image",src:t.src,alt:t.alt,style:e.normalizeStyle(E.value),draggable:"false"},null,12,eA)],512)])]),_:1},8,["id","modelValue","hover-delay","close-timeout"])],8,Xs))}});V.Accordion=Ft,V.AccordionItem=Pt,V.AssetUploader=ar,V.AutoSuggest=_e,V.BaseButton=We,V.BaseCamera=xo,V.BaseCarousel=dt,V.BaseForm=js,V.BaseHeadline=wt,V.BaseImage=oe,V.BaseInput=ue,V.BaseMap=Ye,V.BaseParagraph=Ct,V.CanvasConfetti=Zs,V.CheckGroup=al,V.ColorPalette=_l,V.CustomHtml=bl,V.DomRenderer=ms,V.FileUpload=Ke,V.HintSystem=Zr,V.ImageCrop=at,V.ImageCropResize=nt,V.ImageResize=tt,V.ImageUpload=ot,V.ImageZoom=tA,V.InputCheckbox=Xt,V.InputColor=Ul,V.InputDatepicker=Jn,V.InputDatetime=aa,V.InputDropdown=xe,V.InputFile=Te,V.InputPasscode=Xn,V.InputPassword=je,V.InputTextarea=Jt,V.LinkSharing=Us,V.LoadingSpinner=ke,V.LocationFinder=Mr,V.LocationList=Ze,V.MediaThumbnails=xr,V.ModalDialog=lt,V.PopoverDialog=Ve,V.PopoverNotifications=us,V.PopoverTooltip=rs,V.ProgressSteps=qr,V.QrCode=gs,V.RadioButtons=Al,V.RadioGroup=Ce,V.RteEditor=Ol,V.SelectMedia=Bl,V.SortableList=et,V.SvgIcon=M,V.TouchWrapper=Gs,V.UploadGroup=it,V.useCameraFilter=Je,V.useDirections=rt,V.useGeocoding=st,V.useGeolocation=ct,Object.defineProperty(V,Symbol.toStringTag,{value:"Module"})}));
|