ablok-components 0.3.73 → 0.3.74
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.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(E,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):(E=typeof globalThis<"u"?globalThis:E||self,e(E.AblokComponents={},E.Vue,E.DOMPurify,E.VueI18n,E._,E.ofetch,E.VueAdvancedCropper,E.html2canvas,E.QRCodeStyling))})(this,(function(E,e,Te,Pe,xe,Ve,ft,pt,Qe){"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(c,n)=>(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"},Ee=e.defineComponent({__name:"loading-spinner",props:{color:{type:String,default:"#fff"}},setup(t){return(c,n)=>(e.openBlock(),e.createElementBlock("span",yt,[n[0]||(n[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(c.$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:c}){const n=t,o=c,l=e.useTemplateRef("image"),i=e.ref(!1);function a(){i.value=!0,l.value?.addEventListener("transitionend",r,{once:!0})}function r(){o("update:ready",!0),n.emitPending&&o("update:pending",!1)}return e.onBeforeMount(()=>{n.emitPending&&o("update:pending",!0)}),(s,u)=>t.src?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["base-image",{"base-image--zoom":t.zoom}])},[t.spinner&&!i.value?(e.openBlock(),e.createBlock(Ee,{key:0})):e.createCommentVNode("",!0),e.createElementVNode("img",{ref_key:"image",ref:l,class:e.normalizeClass(["",{"opacity-0":t.animate&&!i.value,"opacity-1":!t.animate||i.value}]),src:t.src,alt:t.alt,onLoad:a},null,42,bt)],2)):e.createCommentVNode("",!0)}}),kt=["innerHTML"],wt=e.defineComponent({__name:"base-headline",props:{tag:{},size:{},variant:{},text:{},className:{}},setup(t){const c=t,n=e.computed(()=>c.tag||"p");return(o,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.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 $e(t){return e.computed(()=>{const c=typeof t=="function"?t():typeof t=="string"?t:t.value;return Te.sanitize(c,{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 G(t){return Te.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 c=t;return $e(()=>c.text||""),(n,o)=>(e.openBlock(),e.createElementBlock("p",{class:e.normalizeClass(["base-paragraph",`${t.size||""} ${t.className||""}`]),innerHTML:t.text},null,10,Bt))}});function R(){return Math.random().toString(16).slice(2)}async function Se(t){return await new Promise(c=>{let n=new FileReader;n.onload=()=>c(n.result),n.readAsDataURL(t)})}function Vt(t){const c=atob(t.split(",")[1]),n=new ArrayBuffer(c.length),o=new Uint8Array(n);for(let l=0;l<c.length;l++)o[l]=c.charCodeAt(l);return new Blob([n],{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 Ue(t,c,n){const o=Et(n),i=c.includes(".")?c:`${c}.${o}`;return fetch(t).then(function(a){return a.arrayBuffer()}).then(function(a){return new File([a],i,{type:n})})}async function $t(t){return await new Promise((c,n)=>{const o=new Image;o.onload=()=>c(o),o.onerror=l=>n(l),o.src=t})}function We(t,c,n,o="image/png",l){const i=document.createElement("canvas");i.width=c,i.height=n;const a=i.getContext("2d");return a?(a.drawImage(t,0,0,c,n),i.toDataURL(o,l)):t.src}async function St(t,c,n){const o=(t.type||"").toLowerCase();if(!(o.startsWith("image/")&&o!=="image/svg+xml"))return t;const i=await Se(t),a=await $t(i),r=a.naturalWidth,s=a.naturalHeight;if(!r||r<=c)return t;const u=Math.round(c),d=s/r,A=Math.round(u*d),m=We(a,u,A,t.type||"image/png",n);return await Ue(m,t.name,t.type||"image/png")}function je(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"],vt=["aria-expanded","aria-controls"],Dt={class:"flex-grow-1"},It=["id","aria-labelledby"],Lt=["innerHTML"],Tt=e.defineComponent({__name:"accordion-item",props:{id:{type:String,default:()=>R()},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:c}){const n=t,o=c,l=e.ref(n.modelValue);e.watch(()=>n.modelValue,r=>{l.value=r});const i=$e(()=>n.body);function a(){l.value=!l.value,o("update:modelValue",l.value)}return(r,s)=>(e.openBlock(),e.createElementBlock("div",Nt,[e.createElementVNode("div",{class:"accordion-header",id:`heading-${t.id}`},[e.createElementVNode("button",{class:e.normalizeClass(["accordion-button",!l.value&&"collapsed"]),type:"button","aria-expanded":l.value,"aria-controls":`target${t.id}`,onClick:a},[e.renderSlot(r.$slots,"toggle",{},()=>[e.createElementVNode("span",Dt,e.toDisplayString(t.title),1)])],10,vt)],8,Mt),e.createVNode(e.Transition,{name:"accordion"},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{class:"accordion-collapse",id:`target${t.id}`,"aria-labelledby":`heading-${t.id}`},[e.createElementVNode("div",{class:e.normalizeClass(["accordion-body",t.noPadding?"p-0":""])},[e.renderSlot(r.$slots,"body",{},()=>[e.createElementVNode("article",{innerHTML:e.unref(i)},null,8,Lt)])],2)],8,It),[[e.vShow,l.value]])]),_:3})]))}}),Pt=(t,c)=>{const n=t.__vccOpts||t;for(const[o,l]of c)n[o]=l;return n},xt={},zt={class:"accordion"};function Ft(t,c){return e.openBlock(),e.createElementBlock("div",zt,[e.renderSlot(t.$slots,"default")])}const Ot=Pt(xt,[["render",Ft]]),Rt=["type","disabled"],qe=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 c=t,n=e.computed(()=>c.caption&&!c.circle);return(o,l)=>(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(Ee)]):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),n.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,Rt))}}),Ht={class:"input-group input__input-group"},Qt=["type","id","name","placeholder","pattern","disabled","readonly","required","maxlength","true-value","false-value","aria-label","role","autocomplete"],Ut=["for","innerHTML"],Wt={key:0,class:"input__error alert alert-danger mt-3"},pe=e.defineComponent({__name:"base-input",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c,l=e.useTemplateRef("input"),i=e.ref(n.valid),a=e.ref(),r=e.computed(()=>G(`${n.label}${n.required?" *":""}`)),s=e.computed({get(){return n.modelValue},set(A){A=n.type==="number"?n.max&&Number(A)>n.max?n.max:n.min!==void 0&&Number(A)<n.min?n.min:Number(A):A,n.sanitize&&typeof A=="string"&&!["checkbox","radio","number","date","datetime-local","time","month","week","email","tel","url"].includes(n.type)&&(A=je(A)),o("update:modelValue",A)}}),u=e.computed(()=>{if(n.type==="number"){const{min:A,max:m}=n;return{...A!==void 0?{min:A}:{},...m!==void 0?{max:m}:{}}}return{}});function d(){n.validate&&l.value&&(i.value=l.value.checkValidity(),i.value?a.value=void 0:a.value=l.value.validationMessage,o("update:valid",i.value))}return e.watch(()=>n.modelValue,()=>{i.value===!1&&d()}),e.onMounted(()=>{let A=m=>{s.value=typeof m.detail=="string"||typeof m.detail=="number"?`${m.detail}`:""};l.value?.addEventListener("focusin",m=>{window.addEventListener("update-focussed-input",A)}),l.value?.addEventListener("focusout",m=>{window.removeEventListener("update-focussed-input",A)}),d()}),(A,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input",`input--${t.type}${i.value?"":" input--invalid"}`])},[e.createElementVNode("div",Ht,[e.renderSlot(A.$slots,"input-prepend",{slotScope:"props"}),e.withDirectives(e.createElementVNode("input",e.mergeProps({ref_key:"input",ref:l,"onUpdate:modelValue":m[0]||(m[0]=f=>s.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:d}),null,16,Qt),[[e.vModelDynamic,s.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:e.normalizeClass(["input__label",{"form-check-label":t.type==="checkbox"}]),innerHTML:r.value},null,10,Ut)):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[!i.value&&a.value?(e.openBlock(),e.createElementBlock("div",Wt,e.toDisplayString(a.value),1)):e.createCommentVNode("",!0)]),_:1})],2))}}),jt={class:"input input--textarea"},qt=["type","id","name","placeholder","pattern","disabled","read-only","required","maxlength","aria-label"],Jt=["for","innerHTML"],Gt=e.defineComponent({__name:"input-textarea",props:{modelValue:{type:String,default:""},type:{type:String,default:"text"},name:{type:String,default:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){n.sanitize&&typeof i=="string"&&(i=je(i)),o("update:modelValue",i)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",jt,[e.renderSlot(i.$slots,"input-prepend"),e.withDirectives(e.createElementVNode("textarea",{"onUpdate:modelValue":a[0]||(a[0]=r=>l.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,qt),[[e.vModelText,l.value]]),e.renderSlot(i.$slots,"input-append"),e.renderSlot(i.$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,Jt)])]))}}),Yt={class:"form-check input input--checkbox"},Zt=["value","id","name","required","disabled","true-value","false-value"],Kt=["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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue||n.checked},set(i){o("update:checked",i),o("update:modelValue",i)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",Yt,[e.withDirectives(e.createElementVNode("input",{ref:"input","onUpdate:modelValue":a[0]||(a[0]=r=>l.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,Zt),[[e.vModelCheckbox,l.value]]),e.createElementVNode("label",{class:"input__label form-check-label",for:t.id,innerHTML:e.unref(G)(t.label||"")},null,8,Kt)]))}}),_t={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:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c,l=e.computed({get(){const i=n.modelValue&&new Date(`${n.modelValue}Z`),a=i&&new Date(i.getTime()+new Date().getTimezoneOffset()*-60*1e3).toISOString();return a&&a.replace("Z","")},set(i){const a=i&&new Date(i);i=a&&a.toISOString(),o("update:modelValue",i&&i.replace("Z",""))}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input",`input--${t.type}`])},[e.createElementVNode("div",_t,[e.renderSlot(i.$slots,"input-prepend",{slotScope:"props"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":a[0]||(a[0]=r=>l.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,l.value]]),e.renderSlot(i.$slots,"input-append",{slotScope:"props"})]),e.renderSlot(i.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id,class:"input__label",innerHTML:e.unref(G)(`${t.label}${t.required?" *":""}`)},null,8,ta)):e.createCommentVNode("",!0)])],2))}});function re(t){return(c={})=>{const n=c.width?String(c.width):t.defaultWidth;return t.formats[n]||t.formats[t.defaultWidth]}}function Y(t){return(c,n)=>{const o=n?.context?String(n.context):"standalone";let l;if(o==="formatting"&&t.formattingValues){const a=t.defaultFormattingWidth||t.defaultWidth,r=n?.width?String(n.width):a;l=t.formattingValues[r]||t.formattingValues[a]}else{const a=t.defaultWidth,r=n?.width?String(n.width):t.defaultWidth;l=t.values[r]||t.values[a]}const i=t.argumentCallback?t.argumentCallback(c):c;return l[i]}}function Z(t){return(c,n={})=>{const o=n.width,l=o&&t.matchPatterns[o]||t.matchPatterns[t.defaultMatchWidth],i=c.match(l);if(!i)return null;const a=i[0],r=o&&t.parsePatterns[o]||t.parsePatterns[t.defaultParseWidth],s=Array.isArray(r)?la(r,A=>A.test(a)):na(r,A=>A.test(a));let u;u=t.valueCallback?t.valueCallback(s):s,u=n.valueCallback?n.valueCallback(u):u;const d=c.slice(a.length);return{value:u,rest:d}}}function na(t,c){for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&c(t[n]))return n}function la(t,c){for(let n=0;n<t.length;n++)if(c(t[n]))return n}function ze(t){return(c,n={})=>{const o=c.match(t.matchPattern);if(!o)return null;const l=o[0],i=c.match(t.parsePattern);if(!i)return null;let a=t.valueCallback?t.valueCallback(i[0]):i[0];a=n.valueCallback?n.valueCallback(a):a;const r=c.slice(l.length);return{value:a,rest:r}}}const Je={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,c,n)=>{let o;const l=n?.addSuffix?Je[t].withPreposition:Je[t].standalone;return typeof l=="string"?o=l:c===1?o=l.one:o=l.other.replace("{{count}}",String(c)),n?.addSuffix?n.comparison&&n.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:re({formats:ia,defaultWidth:"full"}),time:re({formats:ra,defaultWidth:"full"}),dateTime:re({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,c,n,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"]},Fe={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:Fe.narrow,abbreviated:["Jan.","Feb.","März","Apr.","Mai","Juni","Juli","Aug.","Sep.","Okt.","Nov.","Dez."],wide:Fe.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:Y({values:ua,defaultWidth:"wide"}),quarter:Y({values:ma,defaultWidth:"wide",argumentCallback:t=>t-1}),month:Y({values:Fe,formattingValues:fa,defaultWidth:"wide"}),day:Y({values:pa,defaultWidth:"wide"}),dayPeriod:Y({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},va={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:ze({matchPattern:ba,parsePattern:ka,valueCallback:t=>parseInt(t)}),era:Z({matchPatterns:wa,defaultMatchWidth:"wide",parsePatterns:Ba,defaultParseWidth:"any"}),quarter:Z({matchPatterns:Ca,defaultMatchWidth:"wide",parsePatterns:Va,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Z({matchPatterns:Ea,defaultMatchWidth:"wide",parsePatterns:$a,defaultParseWidth:"any"}),day:Z({matchPatterns:Sa,defaultMatchWidth:"wide",parsePatterns:Na,defaultParseWidth:"any"}),dayPeriod:Z({matchPatterns:Ma,defaultMatchWidth:"wide",parsePatterns:va,defaultParseWidth:"any"})},Ia={code:"de",formatDistance:oa,formatLong:Aa,formatRelative:da,localize:ya,match:Da,options:{weekStartsOn:1,firstWeekContainsDate:4}},La={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"}},Ta=(t,c,n)=>{let o;const l=La[t];return typeof l=="string"?o=l:c===1?o=l.one:o=l.other.replace("{{count}}",c.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+o:o+" ago":o},Pa={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,c,n,o)=>Pa[t],za={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Fa={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Oa={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"]},Ra={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"]},Ha={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"}},Qa={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"}},Ua={ordinalNumber:(t,c)=>{const n=Number(t),o=n%100;if(o>20||o<10)switch(o%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:Y({values:za,defaultWidth:"wide"}),quarter:Y({values:Fa,defaultWidth:"wide",argumentCallback:t=>t-1}),month:Y({values:Oa,defaultWidth:"wide"}),day:Y({values:Ra,defaultWidth:"wide"}),dayPeriod:Y({values:Ha,defaultWidth:"wide",formattingValues:Qa,defaultFormattingWidth:"wide"})},Wa=/^(\d+)(th|st|nd|rd)?/i,ja=/\d+/i,qa={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},Ja={any:[/^b/i,/^(a|c)/i]},Ga={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Ya={any:[/1/i,/2/i,/3/i,/4/i]},Za={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},Ka={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},_a={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:ze({matchPattern:Wa,parsePattern:ja,valueCallback:t=>parseInt(t,10)}),era:Z({matchPatterns:qa,defaultMatchWidth:"wide",parsePatterns:Ja,defaultParseWidth:"any"}),quarter:Z({matchPatterns:Ga,defaultMatchWidth:"wide",parsePatterns:Ya,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Z({matchPatterns:Za,defaultMatchWidth:"wide",parsePatterns:Ka,defaultParseWidth:"any"}),day:Z({matchPatterns:Xa,defaultMatchWidth:"wide",parsePatterns:_a,defaultParseWidth:"any"}),dayPeriod:Z({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:re({formats:nn,defaultWidth:"full"}),time:re({formats:ln,defaultWidth:"full"}),dateTime:re({formats:on,defaultWidth:"full"})},Ge={code:"en-US",formatDistance:Ta,formatLong:rn,formatRelative:xa,localize:Ua,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,c,n)=>{let o;const l=sn[t];return typeof l=="string"?o=l:c===1?o=l.one:o=l.other.replace("{{count}}",String(c)),n?.addSuffix?n.comparison&&n.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:re({formats:cn,defaultWidth:"full"}),time:re({formats:dn,defaultWidth:"full"}),dateTime:re({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,c,n,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,c)=>{const n=Number(t),o=c?.unit;if(n===0)return"0";const l=["year","week","hour","minute","second"];let i;return n===1?i=o&&l.includes(o)?"ère":"er":i="ème",n+i},Bn=["MMM","MMMM"],Cn={preprocessor:(t,c)=>t.getDate()===1||!c.some(o=>o.isToken&&Bn.includes(o.value))?c:c.map(o=>o.isToken&&o.value==="do"?{isToken:!0,value:"d"}:o),ordinalNumber:wn,era:Y({values:gn,defaultWidth:"wide"}),quarter:Y({values:hn,defaultWidth:"wide",argumentCallback:t=>t-1}),month:Y({values:yn,defaultWidth:"wide"}),day:Y({values:bn,defaultWidth:"wide"}),dayPeriod:Y({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]},vn={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]},In={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},Ln={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]},Tn={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},Pn={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:ze({matchPattern:Vn,parsePattern:En,valueCallback:t=>parseInt(t)}),era:Z({matchPatterns:$n,defaultMatchWidth:"wide",parsePatterns:Sn,defaultParseWidth:"any"}),quarter:Z({matchPatterns:Nn,defaultMatchWidth:"wide",parsePatterns:Mn,defaultParseWidth:"any",valueCallback:t=>t+1}),month:Z({matchPatterns:vn,defaultMatchWidth:"wide",parsePatterns:Dn,defaultParseWidth:"any"}),day:Z({matchPatterns:In,defaultMatchWidth:"wide",parsePatterns:Ln,defaultParseWidth:"any"}),dayPeriod:Z({matchPatterns:Tn,defaultMatchWidth:"any",parsePatterns:Pn,defaultParseWidth:"any"})},zn={code:"fr",formatDistance:An,formatLong:mn,formatRelative:pn,localize:Cn,match:xn,options:{weekStartsOn:1,firstWeekContainsDate:4}},Fn={class:"row"},On={class:"col-12"},Rn=["for","innerHTML"],Hn={key:0},Qn={class:"input-group justify-content-center"},Un={key:0,class:"row"},Wn={class:"col-12 col-md-6"},jn={class:"col-12 col-md-6"},qn={key:1,class:"row"},Jn={class:"col-12"},Gn=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:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=e.shallowRef(null);e.onMounted(async()=>{const{VueDatePicker:p}=await import("@vuepic/vue-datepicker");n.value=p});const o=t,l=c,{t:i,locale:a}=Pe.useI18n(),r={en:Ge,de:Ia,fr:zn},s=e.computed(()=>{const p=o.locale||a.value;return r[p]||Ge}),u=e.computed(()=>o.inline||!o.picker?{openMenu:!1,format:s.value}:!0),d=e.computed({get(){if(o.range){let p=o.from||(Array.isArray(o.modelValue)?o.modelValue[0]:null),k=o.to||(Array.isArray(o.modelValue)?o.modelValue[1]:null);return o.utcStore?(p=p?y(p):null,k=k?y(k):null):(p=p?new Date(`${p}Z`).toISOString().replace("Z",""):null,k=k?new Date(`${k}Z`).toISOString().replace("Z",""):null),[...p?[p]:[],...k?[k]:[]]}else{if(o.utcStore){const h=o.modelValue;return h&&y(h)||""}const p=o.modelValue?new Date(`${o.modelValue}Z`):null,k=p&&p.toISOString();return k&&k.replace("Z","")}},set(p){if(o.range&&Array.isArray(p)){let[k,h]=p;o.utcStore?(k=b(k)||null,h=b(h)||null):(k=k&&new Date(k),k?.setUTCHours(k.getHours()),k=k?.toISOString()?.replace("Z",""),h=h&&new Date(h),h?.setUTCHours(h.getHours()),h=h?.toISOString()?.replace("Z","")),l("update:modelValue",[k,h]),l("update:from",k),l("update:to",h)}else if(o.utcStore){const k=b(p);l("update:modelValue",k)}else{const k=p&&new Date(p);k?.setUTCHours(k?.getHours()),p=k&&k.toISOString(),l("update:modelValue",p&&p.replace("Z",""))}}}),A=e.computed({get(){return Array.isArray(d.value)?d.value[0]:d.value},set(p){d.value=Array.isArray(d.value)?[p,d.value[0]]:p}}),m=e.computed({get(){return Array.isArray(d.value)?d.value[1]:d.value},set(p){d.value=Array.isArray(d.value)?[d.value[0],p]:p}});e.watch(()=>[A.value,m.value],(p,k)=>{o.range&&p.some(h=>h===void 0)&&k.every(Boolean)&&(d.value=[])});function f(p){if(!p)return;const k=p.getDate(),h=p.getMonth()+1,C=p.getFullYear(),B=p.getMinutes(),P=p.getHours();switch(s.value){case"de":return`${k}.${h}.${C} ${P<10?"0"+P:P}:${B<10?"0"+B:B}`;case"fr":return`${k}/${h}/${C} ${P<10?"0"+P:P}:${B<10?"0"+B:B}`;default:return`${h}/${k}/${C} ${P<10?"0"+P:P}:${B<10?"0"+B:B}`}}function y(p){if(!p)return null;const k=p instanceof Date?new Date(p):new Date(`${p}Z`),h=k.getFullYear(),C=String(k.getMonth()+1).padStart(2,"0"),B=String(k.getDate()).padStart(2,"0"),P=String(k.getHours()).padStart(2,"0"),x=String(k.getMinutes()).padStart(2,"0"),_=String(k.getSeconds()).padStart(2,"0");return`${h}-${C}-${B}T${P}:${x}:${_}`}function b(p){return p?(p instanceof Date?new Date(p):new Date(String(p))).toISOString().split(".")[0]:null}const N=p=>(Array.isArray(p)?p=p.map(k=>f(k)).join(" - "):p=f(p),p);return(p,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input--datepicker"])},[e.renderSlot(p.$slots,"label",{},()=>[e.createElementVNode("div",Fn,[e.createElementVNode("div",On,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id,class:"input__label",innerHTML:e.unref(G)(`${t.label}${t.required?" *":""}`)},null,8,Rn)):e.createCommentVNode("",!0)])])]),t.textInput?(e.openBlock(),e.createElementBlock("div",Hn,[e.createElementVNode("div",Qn,[e.renderSlot(p.$slots,"input-prepend",{slotScope:"props"}),t.range&&!t.textRange?(e.openBlock(),e.createElementBlock("div",Un,[e.createElementVNode("div",Wn,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{uid:`${t.id}-from`,modelValue:A.value,"onUpdate:modelValue":k[0]||(k[0]=h=>A.value=h),locale:s.value,format:N,"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",jn,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{uid:`${t.id}-to`,modelValue:m.value,"onUpdate:modelValue":k[1]||(k[1]=h=>m.value=h),locale:s.value,format:N,"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(n.value),{key:1,uid:`${t.id}-input-to`,modelValue:d.value,"onUpdate:modelValue":k[2]||(k[2]=h=>d.value=h),format:N,locale:s.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(p.$slots,"input-append",{slotScope:"props"})])])):e.createCommentVNode("",!0),t.inline?(e.openBlock(),e.createElementBlock("div",qn,[e.createElementVNode("div",Jn,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{uid:`${t.id}-inline`,modelValue:d.value,"onUpdate:modelValue":k[3]||(k[3]=h=>d.value=h),locale:s.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)]))}}),Yn={class:"input-group input__input-group"},Ye=e.defineComponent({__name:"input-password",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){n.password===i||!n.password?o("update:modelValue",i):o("update:modelValue","")}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input-password"])},[e.createElementVNode("div",Yn,[e.createVNode(pe,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=r=>l.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(i.$slots,"input-prepend",{slotScope:"props"})]),"input-append":e.withCtx(r=>[e.renderSlot(i.$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"])])]))}}),Zn={class:"input-group input__input-group"},Kn=["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:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=e.ref([]),o=e.ref([]),l=t,i=c,a=e.computed({get(){return l.modelValue},set(d){l.passcodeMatch===d||!l.passcodeMatch?i("update:modelValue",d):i("update:modelValue","")}});e.watch(()=>l.modelValue,d=>{const A=d?.toString()||"";for(o.value=A.split("").slice(0,l.passcodeMatch?.length||6);o.value.length<(l.passcodeMatch?.length||6);)o.value.push("")},{immediate:!0}),e.watch(()=>o.value,d=>{const A=d.join("");l.passcodeMatch===A||!l.passcodeMatch?i("update:modelValue",A):i("update:modelValue","")},{deep:!0});const r=(d,A)=>{d.preventDefault();const m=d.clipboardData?.getData("text")||"";console.log("Paste detected:",m);const f=m.split(""),y=l.passcodeMatch?.length||6;f.forEach((N,p)=>{const k=A+p;k<y&&(o.value[k]=N)});const b=Math.min(A+f.length,y-1);setTimeout(()=>n.value[b]?.focus(),0)},s=(d,A)=>{l.passcodeMatch?.length,d.key==="Backspace"&&!o.value[A]&&A>0&&n.value[A-1]?.focus()},u=(d,A)=>{let f=d.target.value;f.length>1&&(f=f.slice(-1)),o.value[A]=f;const y=l.passcodeMatch?.length||6;f&&A<y-1&&setTimeout(()=>n.value[A+1]?.focus(),0)};return(d,A)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input-passcode"])},[e.createElementVNode("div",Zn,[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":y=>o.value[f]=y,type:"text",ref_for:!0,ref:y=>n.value[f]=y,maxlength:1,disabled:t.disabled,readonly:t.readOnly,onPaste:y=>r(y,f),onInput:y=>u(y,f),onKeydown:y=>s(y,f),size:"1",class:"form-control text-center"},null,40,Kn)),[[e.vModelText,o.value[f]]])),128)):(e.openBlock(),e.createBlock(Ye,{key:0,modelValue:a.value,"onUpdate:modelValue":A[0]||(A[0]=m=>a.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"]))])]))}}),_n={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:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c;e.ref([]);const l=e.computed({get(){return n.modelValue},set(a){o("update:modelValue",a)}}),i=e.computed(()=>n.options&&n.options.map(a=>(a=typeof a=="string"?{text:a,value:a}:a,{...a,active:n.modelValue&&n.modelValue.includes(a.value)})));return(a,r)=>(e.openBlock(),e.createElementBlock("div",_n,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,(s,u)=>(e.openBlock(),e.createElementBlock("div",{key:u,class:"form-check"},[e.withDirectives(e.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":r[0]||(r[0]=d=>l.value=d),id:`${t.id}-${u}`,name:t.name,class:"form-check-input",value:s.value||s,disabled:t.disabled,"read-only":t.readOnly,required:t.required},null,8,el),[[e.vModelCheckbox,l.value]]),e.createElementVNode("label",{class:"form-check-label",for:`${t.id}-${u}`,innerHTML:s.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"],Ne=e.defineComponent({__name:"radio-group",props:{modelValue:{type:null},options:{type:Array,default:[]},name:{type:String,default:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=c;function o(l){n("update:modelValue",l)}return(l,i)=>(e.openBlock(),e.createElementBlock("div",nl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,(a,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(M,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):(M=typeof globalThis<"u"?globalThis:M||self,e(M.AblokComponents={},M.Vue,M.DOMPurify,M.VueI18n,M._,M.ofetch,M.VueAdvancedCropper,M.html2canvas,M.QRCodeStyling))})(this,(function(M,e,We,je,qe,Ie,Vt,Et,_e){"use strict";const $t={class:"icon",preserveAspectRatio:"xMaxYMin"},St=["xlink:href"],D=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(c,n)=>(e.openBlock(),e.createElementBlock("i",{class:e.normalizeClass(["svg-icon",{[`svg-icon--${t.size}`]:t.size}])},[(e.openBlock(),e.createElementBlock("svg",$t,[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,St)]))],2))}}),Nt={class:"loading-spinner d-block"},Te=e.defineComponent({__name:"loading-spinner",props:{color:{type:String,default:"#fff"}},setup(t){return(c,n)=>(e.openBlock(),e.createElementBlock("span",Nt,[n[0]||(n[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(c.$slots,"default")]))}}),vt=["src","alt"],ae=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:c}){const n=t,o=c,l=e.useTemplateRef("image"),i=e.ref(!1);function a(){i.value=!0,l.value?.addEventListener("transitionend",r,{once:!0})}function r(){o("update:ready",!0),n.emitPending&&o("update:pending",!1)}return e.onBeforeMount(()=>{n.emitPending&&o("update:pending",!0)}),(s,u)=>t.src?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["base-image",{"base-image--zoom":t.zoom}])},[t.spinner&&!i.value?(e.openBlock(),e.createBlock(Te,{key:0})):e.createCommentVNode("",!0),e.createElementVNode("img",{ref_key:"image",ref:l,class:e.normalizeClass(["",{"opacity-0":t.animate&&!i.value,"opacity-1":!t.animate||i.value}]),src:t.src,alt:t.alt,onLoad:a},null,42,vt)],2)):e.createCommentVNode("",!0)}}),Mt=["innerHTML"],Dt=e.defineComponent({__name:"base-headline",props:{tag:{},size:{},variant:{},text:{},className:{}},setup(t){const c=t,n=e.computed(()=>c.tag||"p");return(o,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.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,Mt)])]),_:3},8,["class"]))}});function Pe(t){return e.computed(()=>{const c=typeof t=="function"?t():typeof t=="string"?t:t.value;return We.sanitize(c,{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 Y(t){return We.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 Lt=["innerHTML"],It=e.defineComponent({__name:"base-paragraph",props:{size:{},variant:{},text:{},className:{}},setup(t){const c=t;return Pe(()=>c.text||""),(n,o)=>(e.openBlock(),e.createElementBlock("p",{class:e.normalizeClass(["base-paragraph",`${t.size||""} ${t.className||""}`]),innerHTML:t.text},null,10,Lt))}});function H(){return Math.random().toString(16).slice(2)}async function xe(t){return await new Promise(c=>{let n=new FileReader;n.onload=()=>c(n.result),n.readAsDataURL(t)})}function Tt(t){const c=atob(t.split(",")[1]),n=new ArrayBuffer(c.length),o=new Uint8Array(n);for(let l=0;l<c.length;l++)o[l]=c.charCodeAt(l);return new Blob([n],{type:"image/png"})}function Pt(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 et(t,c,n){const o=Pt(n),i=c.includes(".")?c:`${c}.${o}`;return fetch(t).then(function(a){return a.arrayBuffer()}).then(function(a){return new File([a],i,{type:n})})}async function xt(t){return await new Promise((c,n)=>{const o=new Image;o.onload=()=>c(o),o.onerror=l=>n(l),o.src=t})}function tt(t,c,n,o="image/png",l){const i=document.createElement("canvas");i.width=c,i.height=n;const a=i.getContext("2d");return a?(a.drawImage(t,0,0,c,n),i.toDataURL(o,l)):t.src}async function zt(t,c,n){const o=(t.type||"").toLowerCase();if(!(o.startsWith("image/")&&o!=="image/svg+xml"))return t;const i=await xe(t),a=await xt(i),r=a.naturalWidth,s=a.naturalHeight;if(!r||r<=c)return t;const u=Math.round(c),d=s/r,A=Math.round(u*d),m=tt(a,u,A,t.type||"image/png",n);return await et(m,t.name,t.type||"image/png")}function at(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 Ft={class:"accordion-item"},Ot=["id"],Rt=["aria-expanded","aria-controls"],Ht={class:"flex-grow-1"},Qt=["id","aria-labelledby"],Ut=["innerHTML"],Wt=e.defineComponent({__name:"accordion-item",props:{id:{type:String,default:()=>H()},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:c}){const n=t,o=c,l=e.ref(n.modelValue);e.watch(()=>n.modelValue,r=>{l.value=r});const i=Pe(()=>n.body);function a(){l.value=!l.value,o("update:modelValue",l.value)}return(r,s)=>(e.openBlock(),e.createElementBlock("div",Ft,[e.createElementVNode("div",{class:"accordion-header",id:`heading-${t.id}`},[e.createElementVNode("button",{class:e.normalizeClass(["accordion-button",!l.value&&"collapsed"]),type:"button","aria-expanded":l.value,"aria-controls":`target${t.id}`,onClick:a},[e.renderSlot(r.$slots,"toggle",{},()=>[e.createElementVNode("span",Ht,e.toDisplayString(t.title),1)])],10,Rt)],8,Ot),e.createVNode(e.Transition,{name:"accordion"},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{class:"accordion-collapse",id:`target${t.id}`,"aria-labelledby":`heading-${t.id}`},[e.createElementVNode("div",{class:e.normalizeClass(["accordion-body",t.noPadding?"p-0":""])},[e.renderSlot(r.$slots,"body",{},()=>[e.createElementVNode("article",{innerHTML:e.unref(i)},null,8,Ut)])],2)],8,Qt),[[e.vShow,l.value]])]),_:3})]))}}),jt=(t,c)=>{const n=t.__vccOpts||t;for(const[o,l]of c)n[o]=l;return n},qt={},Gt={class:"accordion"};function Jt(t,c){return e.openBlock(),e.createElementBlock("div",Gt,[e.renderSlot(t.$slots,"default")])}const Yt=jt(qt,[["render",Jt]]),Zt=["type","disabled"],nt=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 c=t,n=e.computed(()=>c.caption&&!c.circle);return(o,l)=>(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(Te)]):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"default",{},()=>[t.icon?(e.openBlock(),e.createBlock(D,{key:0,symbol:t.icon,class:"base-button__caption"},null,8,["symbol"])):e.createCommentVNode("",!0),n.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,Zt))}}),Kt={class:"input-group input__input-group"},Xt=["type","id","name","placeholder","pattern","disabled","readonly","required","maxlength","true-value","false-value","aria-label","role","autocomplete"],_t=["for","innerHTML"],ea={key:0,class:"input__error alert alert-danger mt-3"},ke=e.defineComponent({__name:"base-input",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c,l=e.useTemplateRef("input"),i=e.ref(n.valid),a=e.ref(),r=e.computed(()=>Y(`${n.label}${n.required?" *":""}`)),s=e.computed({get(){return n.modelValue},set(A){A=n.type==="number"?n.max&&Number(A)>n.max?n.max:n.min!==void 0&&Number(A)<n.min?n.min:Number(A):A,n.sanitize&&typeof A=="string"&&!["checkbox","radio","number","date","datetime-local","time","month","week","email","tel","url"].includes(n.type)&&(A=at(A)),o("update:modelValue",A)}}),u=e.computed(()=>{if(n.type==="number"){const{min:A,max:m}=n;return{...A!==void 0?{min:A}:{},...m!==void 0?{max:m}:{}}}return{}});function d(){n.validate&&l.value&&(i.value=l.value.checkValidity(),i.value?a.value=void 0:a.value=l.value.validationMessage,o("update:valid",i.value))}return e.watch(()=>n.modelValue,()=>{i.value===!1&&d()}),e.onMounted(()=>{let A=m=>{s.value=typeof m.detail=="string"||typeof m.detail=="number"?`${m.detail}`:""};l.value?.addEventListener("focusin",m=>{window.addEventListener("update-focussed-input",A)}),l.value?.addEventListener("focusout",m=>{window.removeEventListener("update-focussed-input",A)}),d()}),(A,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input",`input--${t.type}${i.value?"":" input--invalid"}`])},[e.createElementVNode("div",Kt,[e.renderSlot(A.$slots,"input-prepend",{slotScope:"props"}),e.withDirectives(e.createElementVNode("input",e.mergeProps({ref_key:"input",ref:l,"onUpdate:modelValue":m[0]||(m[0]=f=>s.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:d}),null,16,Xt),[[e.vModelDynamic,s.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:e.normalizeClass(["input__label",{"form-check-label":t.type==="checkbox"}]),innerHTML:r.value},null,10,_t)):e.createCommentVNode("",!0)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[!i.value&&a.value?(e.openBlock(),e.createElementBlock("div",ea,e.toDisplayString(a.value),1)):e.createCommentVNode("",!0)]),_:1})],2))}}),ta={class:"input input--textarea"},aa=["type","id","name","placeholder","pattern","disabled","read-only","required","maxlength","aria-label"],na=["for","innerHTML"],la=e.defineComponent({__name:"input-textarea",props:{modelValue:{type:String,default:""},type:{type:String,default:"text"},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){n.sanitize&&typeof i=="string"&&(i=at(i)),o("update:modelValue",i)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",ta,[e.renderSlot(i.$slots,"input-prepend"),e.withDirectives(e.createElementVNode("textarea",{"onUpdate:modelValue":a[0]||(a[0]=r=>l.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,aa),[[e.vModelText,l.value]]),e.renderSlot(i.$slots,"input-append"),e.renderSlot(i.$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,na)])]))}}),oa={class:"form-check input input--checkbox"},ia=["value","id","name","required","disabled","true-value","false-value"],ra=["for","innerHTML"],sa=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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue||n.checked},set(i){o("update:checked",i),o("update:modelValue",i)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",oa,[e.withDirectives(e.createElementVNode("input",{ref:"input","onUpdate:modelValue":a[0]||(a[0]=r=>l.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,ia),[[e.vModelCheckbox,l.value]]),e.createElementVNode("label",{class:"input__label form-check-label",for:t.id,innerHTML:e.unref(Y)(t.label||"")},null,8,ra)]))}}),Aa={class:"input-group input__input-group"},ca=["id","name","placeholder","pattern","disabled","read-only","required","aria-label"],da=["for","innerHTML"],ua=e.defineComponent({__name:"input-datetime",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c,l=e.computed({get(){const i=n.modelValue&&new Date(`${n.modelValue}Z`),a=i&&new Date(i.getTime()+new Date().getTimezoneOffset()*-60*1e3).toISOString();return a&&a.replace("Z","")},set(i){const a=i&&new Date(i);i=a&&a.toISOString(),o("update:modelValue",i&&i.replace("Z",""))}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input",`input--${t.type}`])},[e.createElementVNode("div",Aa,[e.renderSlot(i.$slots,"input-prepend",{slotScope:"props"}),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":a[0]||(a[0]=r=>l.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,ca),[[e.vModelText,l.value]]),e.renderSlot(i.$slots,"input-append",{slotScope:"props"})]),e.renderSlot(i.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id,class:"input__label",innerHTML:e.unref(Y)(`${t.label}${t.required?" *":""}`)},null,8,da)):e.createCommentVNode("",!0)])],2))}});function ie(t){return(c={})=>{const n=c.width?String(c.width):t.defaultWidth;return t.formats[n]||t.formats[t.defaultWidth]}}function Z(t){return(c,n)=>{const o=n?.context?String(n.context):"standalone";let l;if(o==="formatting"&&t.formattingValues){const a=t.defaultFormattingWidth||t.defaultWidth,r=n?.width?String(n.width):a;l=t.formattingValues[r]||t.formattingValues[a]}else{const a=t.defaultWidth,r=n?.width?String(n.width):t.defaultWidth;l=t.values[r]||t.values[a]}const i=t.argumentCallback?t.argumentCallback(c):c;return l[i]}}function K(t){return(c,n={})=>{const o=n.width,l=o&&t.matchPatterns[o]||t.matchPatterns[t.defaultMatchWidth],i=c.match(l);if(!i)return null;const a=i[0],r=o&&t.parsePatterns[o]||t.parsePatterns[t.defaultParseWidth],s=Array.isArray(r)?fa(r,A=>A.test(a)):ma(r,A=>A.test(a));let u;u=t.valueCallback?t.valueCallback(s):s,u=n.valueCallback?n.valueCallback(u):u;const d=c.slice(a.length);return{value:u,rest:d}}}function ma(t,c){for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&c(t[n]))return n}function fa(t,c){for(let n=0;n<t.length;n++)if(c(t[n]))return n}function Ge(t){return(c,n={})=>{const o=c.match(t.matchPattern);if(!o)return null;const l=o[0],i=c.match(t.parsePattern);if(!i)return null;let a=t.valueCallback?t.valueCallback(i[0]):i[0];a=n.valueCallback?n.valueCallback(a):a;const r=c.slice(l.length);return{value:a,rest:r}}}const lt={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"}}},pa=(t,c,n)=>{let o;const l=n?.addSuffix?lt[t].withPreposition:lt[t].standalone;return typeof l=="string"?o=l:c===1?o=l.one:o=l.other.replace("{{count}}",String(c)),n?.addSuffix?n.comparison&&n.comparison>0?"in "+o:"vor "+o:o},ga={full:"EEEE, do MMMM y",long:"do MMMM y",medium:"do MMM y",short:"dd.MM.y"},ha={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},ya={full:"{{date}} 'um' {{time}}",long:"{{date}} 'um' {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},ba={date:ie({formats:ga,defaultWidth:"full"}),time:ie({formats:ha,defaultWidth:"full"}),dateTime:ie({formats:ya,defaultWidth:"full"})},ka={lastWeek:"'letzten' eeee 'um' p",yesterday:"'gestern um' p",today:"'heute um' p",tomorrow:"'morgen um' p",nextWeek:"eeee 'um' p",other:"P"},wa=(t,c,n,o)=>ka[t],Ba={narrow:["v.Chr.","n.Chr."],abbreviated:["v.Chr.","n.Chr."],wide:["vor Christus","nach Christus"]},Ca={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1. Quartal","2. Quartal","3. Quartal","4. Quartal"]},Je={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"]},Va={narrow:Je.narrow,abbreviated:["Jan.","Feb.","März","Apr.","Mai","Juni","Juli","Aug.","Sep.","Okt.","Nov.","Dez."],wide:Je.wide},Ea={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"]},$a={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"}},Sa={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"}},Na={ordinalNumber:t=>Number(t)+".",era:Z({values:Ba,defaultWidth:"wide"}),quarter:Z({values:Ca,defaultWidth:"wide",argumentCallback:t=>t-1}),month:Z({values:Je,formattingValues:Va,defaultWidth:"wide"}),day:Z({values:Ea,defaultWidth:"wide"}),dayPeriod:Z({values:$a,defaultWidth:"wide",formattingValues:Sa,defaultFormattingWidth:"wide"})},va=/^(\d+)(\.)?/i,Ma=/\d+/i,Da={narrow:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,abbreviated:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,wide:/^(vor Christus|vor unserer Zeitrechnung|nach Christus|unserer Zeitrechnung)/i},La={any:[/^v/i,/^n/i]},Ia={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](\.)? Quartal/i},Ta={any:[/1/i,/2/i,/3/i,/4/i]},Pa={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},xa={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]},za={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},Fa={any:[/^so/i,/^mo/i,/^di/i,/^mi/i,/^do/i,/^f/i,/^sa/i]},Oa={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},Ra={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}},Ha={ordinalNumber:Ge({matchPattern:va,parsePattern:Ma,valueCallback:t=>parseInt(t)}),era:K({matchPatterns:Da,defaultMatchWidth:"wide",parsePatterns:La,defaultParseWidth:"any"}),quarter:K({matchPatterns:Ia,defaultMatchWidth:"wide",parsePatterns:Ta,defaultParseWidth:"any",valueCallback:t=>t+1}),month:K({matchPatterns:Pa,defaultMatchWidth:"wide",parsePatterns:xa,defaultParseWidth:"any"}),day:K({matchPatterns:za,defaultMatchWidth:"wide",parsePatterns:Fa,defaultParseWidth:"any"}),dayPeriod:K({matchPatterns:Oa,defaultMatchWidth:"wide",parsePatterns:Ra,defaultParseWidth:"any"})},Qa={code:"de",formatDistance:pa,formatLong:ba,formatRelative:wa,localize:Na,match:Ha,options:{weekStartsOn:1,firstWeekContainsDate:4}},Ua={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"}},Wa=(t,c,n)=>{let o;const l=Ua[t];return typeof l=="string"?o=l:c===1?o=l.one:o=l.other.replace("{{count}}",c.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+o:o+" ago":o},ja={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},qa=(t,c,n,o)=>ja[t],Ga={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Ja={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Ya={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"]},Za={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"]},Ka={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"}},Xa={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"}},_a={ordinalNumber:(t,c)=>{const n=Number(t),o=n%100;if(o>20||o<10)switch(o%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:Z({values:Ga,defaultWidth:"wide"}),quarter:Z({values:Ja,defaultWidth:"wide",argumentCallback:t=>t-1}),month:Z({values:Ya,defaultWidth:"wide"}),day:Z({values:Za,defaultWidth:"wide"}),dayPeriod:Z({values:Ka,defaultWidth:"wide",formattingValues:Xa,defaultFormattingWidth:"wide"})},en=/^(\d+)(th|st|nd|rd)?/i,tn=/\d+/i,an={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},nn={any:[/^b/i,/^(a|c)/i]},ln={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},on={any:[/1/i,/2/i,/3/i,/4/i]},rn={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},sn={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]},An={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},cn={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]},dn={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},un={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}},mn={ordinalNumber:Ge({matchPattern:en,parsePattern:tn,valueCallback:t=>parseInt(t,10)}),era:K({matchPatterns:an,defaultMatchWidth:"wide",parsePatterns:nn,defaultParseWidth:"any"}),quarter:K({matchPatterns:ln,defaultMatchWidth:"wide",parsePatterns:on,defaultParseWidth:"any",valueCallback:t=>t+1}),month:K({matchPatterns:rn,defaultMatchWidth:"wide",parsePatterns:sn,defaultParseWidth:"any"}),day:K({matchPatterns:An,defaultMatchWidth:"wide",parsePatterns:cn,defaultParseWidth:"any"}),dayPeriod:K({matchPatterns:dn,defaultMatchWidth:"any",parsePatterns:un,defaultParseWidth:"any"})},fn={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},pn={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},gn={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},hn={date:ie({formats:fn,defaultWidth:"full"}),time:ie({formats:pn,defaultWidth:"full"}),dateTime:ie({formats:gn,defaultWidth:"full"})},ot={code:"en-US",formatDistance:Wa,formatLong:hn,formatRelative:qa,localize:_a,match:mn,options:{weekStartsOn:0,firstWeekContainsDate:1}},yn={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"}},bn=(t,c,n)=>{let o;const l=yn[t];return typeof l=="string"?o=l:c===1?o=l.one:o=l.other.replace("{{count}}",String(c)),n?.addSuffix?n.comparison&&n.comparison>0?"dans "+o:"il y a "+o:o},kn={full:"EEEE d MMMM y",long:"d MMMM y",medium:"d MMM y",short:"dd/MM/y"},wn={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},Bn={full:"{{date}} 'à' {{time}}",long:"{{date}} 'à' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Cn={date:ie({formats:kn,defaultWidth:"full"}),time:ie({formats:wn,defaultWidth:"full"}),dateTime:ie({formats:Bn,defaultWidth:"full"})},Vn={lastWeek:"eeee 'dernier à' p",yesterday:"'hier à' p",today:"'aujourd’hui à' p",tomorrow:"'demain à' p'",nextWeek:"eeee 'prochain à' p",other:"P"},En=(t,c,n,o)=>Vn[t],$n={narrow:["av. J.-C","ap. J.-C"],abbreviated:["av. J.-C","ap. J.-C"],wide:["avant Jésus-Christ","après Jésus-Christ"]},Sn={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"]},Nn={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"]},vn={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"]},Mn={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"}},Dn=(t,c)=>{const n=Number(t),o=c?.unit;if(n===0)return"0";const l=["year","week","hour","minute","second"];let i;return n===1?i=o&&l.includes(o)?"ère":"er":i="ème",n+i},Ln=["MMM","MMMM"],In={preprocessor:(t,c)=>t.getDate()===1||!c.some(o=>o.isToken&&Ln.includes(o.value))?c:c.map(o=>o.isToken&&o.value==="do"?{isToken:!0,value:"d"}:o),ordinalNumber:Dn,era:Z({values:$n,defaultWidth:"wide"}),quarter:Z({values:Sn,defaultWidth:"wide",argumentCallback:t=>t-1}),month:Z({values:Nn,defaultWidth:"wide"}),day:Z({values:vn,defaultWidth:"wide"}),dayPeriod:Z({values:Mn,defaultWidth:"wide"})},Tn=/^(\d+)(ième|ère|ème|er|e)?/i,Pn=/\d+/i,xn={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},zn={any:[/^av/i,/^ap/i]},Fn={narrow:/^T?[1234]/i,abbreviated:/^[1234](er|ème|e)? trim\.?/i,wide:/^[1234](er|ème|e)? trimestre/i},On={any:[/1/i,/2/i,/3/i,/4/i]},Rn={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},Hn={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]},Qn={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},Un={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]},Wn={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},jn={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}},qn={ordinalNumber:Ge({matchPattern:Tn,parsePattern:Pn,valueCallback:t=>parseInt(t)}),era:K({matchPatterns:xn,defaultMatchWidth:"wide",parsePatterns:zn,defaultParseWidth:"any"}),quarter:K({matchPatterns:Fn,defaultMatchWidth:"wide",parsePatterns:On,defaultParseWidth:"any",valueCallback:t=>t+1}),month:K({matchPatterns:Rn,defaultMatchWidth:"wide",parsePatterns:Hn,defaultParseWidth:"any"}),day:K({matchPatterns:Qn,defaultMatchWidth:"wide",parsePatterns:Un,defaultParseWidth:"any"}),dayPeriod:K({matchPatterns:Wn,defaultMatchWidth:"any",parsePatterns:jn,defaultParseWidth:"any"})},Gn={code:"fr",formatDistance:bn,formatLong:Cn,formatRelative:En,localize:In,match:qn,options:{weekStartsOn:1,firstWeekContainsDate:4}},Jn={class:"row"},Yn={class:"col-12"},Zn=["for","innerHTML"],Kn={key:0},Xn={class:"input-group justify-content-center"},_n={key:0,class:"row"},el={class:"col-12 col-md-6"},tl={class:"col-12 col-md-6"},al={key:1,class:"row"},nl={class:"col-12"},ll=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:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=e.shallowRef(null);e.onMounted(async()=>{const{VueDatePicker:p}=await import("@vuepic/vue-datepicker");n.value=p});const o=t,l=c,{t:i,locale:a}=je.useI18n(),r={en:ot,de:Qa,fr:Gn},s=e.computed(()=>{const p=o.locale||a.value;return r[p]||ot}),u=e.computed(()=>o.inline||!o.picker?{openMenu:!1,format:s.value}:!0),d=e.computed({get(){if(o.range){let p=o.from||(Array.isArray(o.modelValue)?o.modelValue[0]:null),k=o.to||(Array.isArray(o.modelValue)?o.modelValue[1]:null);return o.utcStore?(p=p?y(p):null,k=k?y(k):null):(p=p?new Date(`${p}Z`).toISOString().replace("Z",""):null,k=k?new Date(`${k}Z`).toISOString().replace("Z",""):null),[...p?[p]:[],...k?[k]:[]]}else{if(o.utcStore){const h=o.modelValue;return h&&y(h)||""}const p=o.modelValue?new Date(`${o.modelValue}Z`):null,k=p&&p.toISOString();return k&&k.replace("Z","")}},set(p){if(o.range&&Array.isArray(p)){let[k,h]=p;o.utcStore?(k=b(k)||null,h=b(h)||null):(k=k&&new Date(k),k?.setUTCHours(k.getHours()),k=k?.toISOString()?.replace("Z",""),h=h&&new Date(h),h?.setUTCHours(h.getHours()),h=h?.toISOString()?.replace("Z","")),l("update:modelValue",[k,h]),l("update:from",k),l("update:to",h)}else if(o.utcStore){const k=b(p);l("update:modelValue",k)}else{const k=p&&new Date(p);k?.setUTCHours(k?.getHours()),p=k&&k.toISOString(),l("update:modelValue",p&&p.replace("Z",""))}}}),A=e.computed({get(){return Array.isArray(d.value)?d.value[0]:d.value},set(p){d.value=Array.isArray(d.value)?[p,d.value[0]]:p}}),m=e.computed({get(){return Array.isArray(d.value)?d.value[1]:d.value},set(p){d.value=Array.isArray(d.value)?[d.value[0],p]:p}});e.watch(()=>[A.value,m.value],(p,k)=>{o.range&&p.some(h=>h===void 0)&&k.every(Boolean)&&(d.value=[])});function f(p){if(!p)return;const k=p.getDate(),h=p.getMonth()+1,N=p.getFullYear(),B=p.getMinutes(),T=p.getHours();switch(s.value){case"de":return`${k}.${h}.${N} ${T<10?"0"+T:T}:${B<10?"0"+B:B}`;case"fr":return`${k}/${h}/${N} ${T<10?"0"+T:T}:${B<10?"0"+B:B}`;default:return`${h}/${k}/${N} ${T<10?"0"+T:T}:${B<10?"0"+B:B}`}}function y(p){if(!p)return null;const k=p instanceof Date?new Date(p):new Date(`${p}Z`),h=k.getFullYear(),N=String(k.getMonth()+1).padStart(2,"0"),B=String(k.getDate()).padStart(2,"0"),T=String(k.getHours()).padStart(2,"0"),O=String(k.getMinutes()).padStart(2,"0"),X=String(k.getSeconds()).padStart(2,"0");return`${h}-${N}-${B}T${T}:${O}:${X}`}function b(p){return p?(p instanceof Date?new Date(p):new Date(String(p))).toISOString().split(".")[0]:null}const S=p=>(Array.isArray(p)?p=p.map(k=>f(k)).join(" - "):p=f(p),p);return(p,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input--datepicker"])},[e.renderSlot(p.$slots,"label",{},()=>[e.createElementVNode("div",Jn,[e.createElementVNode("div",Yn,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id,class:"input__label",innerHTML:e.unref(Y)(`${t.label}${t.required?" *":""}`)},null,8,Zn)):e.createCommentVNode("",!0)])])]),t.textInput?(e.openBlock(),e.createElementBlock("div",Kn,[e.createElementVNode("div",Xn,[e.renderSlot(p.$slots,"input-prepend",{slotScope:"props"}),t.range&&!t.textRange?(e.openBlock(),e.createElementBlock("div",_n,[e.createElementVNode("div",el,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{uid:`${t.id}-from`,modelValue:A.value,"onUpdate:modelValue":k[0]||(k[0]=h=>A.value=h),locale:s.value,format:S,"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",tl,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{uid:`${t.id}-to`,modelValue:m.value,"onUpdate:modelValue":k[1]||(k[1]=h=>m.value=h),locale:s.value,format:S,"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(n.value),{key:1,uid:`${t.id}-input-to`,modelValue:d.value,"onUpdate:modelValue":k[2]||(k[2]=h=>d.value=h),format:S,locale:s.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(p.$slots,"input-append",{slotScope:"props"})])])):e.createCommentVNode("",!0),t.inline?(e.openBlock(),e.createElementBlock("div",al,[e.createElementVNode("div",nl,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{uid:`${t.id}-inline`,modelValue:d.value,"onUpdate:modelValue":k[3]||(k[3]=h=>d.value=h),locale:s.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)]))}}),ol={class:"input-group input__input-group"},it=e.defineComponent({__name:"input-password",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){n.password===i||!n.password?o("update:modelValue",i):o("update:modelValue","")}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input-password"])},[e.createElementVNode("div",ol,[e.createVNode(ke,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=r=>l.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(i.$slots,"input-prepend",{slotScope:"props"})]),"input-append":e.withCtx(r=>[e.renderSlot(i.$slots,"input-append",{slotScope:"props"},()=>[t.confirm&&t.modelValue===t.password?(e.openBlock(),e.createBlock(D,{key:0,symbol:"check",class:"ms-2"})):e.createCommentVNode("",!0)])]),_:3},8,["modelValue","placeholder","disabled","readonly","required","label"])])]))}}),il={class:"input-group input__input-group"},rl=["onUpdate:modelValue","disabled","readonly","onPaste","onInput","onKeydown"],sl=e.defineComponent({__name:"input-passcode",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=e.ref([]),o=e.ref([]),l=t,i=c,a=e.computed({get(){return l.modelValue},set(d){l.passcodeMatch===d||!l.passcodeMatch?i("update:modelValue",d):i("update:modelValue","")}});e.watch(()=>l.modelValue,d=>{const A=d?.toString()||"";for(o.value=A.split("").slice(0,l.passcodeMatch?.length||6);o.value.length<(l.passcodeMatch?.length||6);)o.value.push("")},{immediate:!0}),e.watch(()=>o.value,d=>{const A=d.join("");l.passcodeMatch===A||!l.passcodeMatch?i("update:modelValue",A):i("update:modelValue","")},{deep:!0});const r=(d,A)=>{d.preventDefault();const m=d.clipboardData?.getData("text")||"";console.log("Paste detected:",m);const f=m.split(""),y=l.passcodeMatch?.length||6;f.forEach((S,p)=>{const k=A+p;k<y&&(o.value[k]=S)});const b=Math.min(A+f.length,y-1);setTimeout(()=>n.value[b]?.focus(),0)},s=(d,A)=>{l.passcodeMatch?.length,d.key==="Backspace"&&!o.value[A]&&A>0&&n.value[A-1]?.focus()},u=(d,A)=>{let f=d.target.value;f.length>1&&(f=f.slice(-1)),o.value[A]=f;const y=l.passcodeMatch?.length||6;f&&A<y-1&&setTimeout(()=>n.value[A+1]?.focus(),0)};return(d,A)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input","input-passcode"])},[e.createElementVNode("div",il,[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":y=>o.value[f]=y,type:"text",ref_for:!0,ref:y=>n.value[f]=y,maxlength:1,disabled:t.disabled,readonly:t.readOnly,onPaste:y=>r(y,f),onInput:y=>u(y,f),onKeydown:y=>s(y,f),size:"1",class:"form-control text-center"},null,40,rl)),[[e.vModelText,o.value[f]]])),128)):(e.openBlock(),e.createBlock(it,{key:0,modelValue:a.value,"onUpdate:modelValue":A[0]||(A[0]=m=>a.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"]))])]))}}),Al={class:"check-group"},cl=["id","name","value","disabled","read-only","required"],dl=["for","innerHTML"],ul=e.defineComponent({__name:"check-group",props:{modelValue:{type:null,default:()=>[]},options:{type:Array,required:!0},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c;e.ref([]);const l=e.computed({get(){return n.modelValue},set(a){o("update:modelValue",a)}}),i=e.computed(()=>n.options&&n.options.map(a=>(a=typeof a=="string"?{text:a,value:a}:a,{...a,active:n.modelValue&&n.modelValue.includes(a.value)})));return(a,r)=>(e.openBlock(),e.createElementBlock("div",Al,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,(s,u)=>(e.openBlock(),e.createElementBlock("div",{key:u,class:"form-check"},[e.withDirectives(e.createElementVNode("input",{type:"checkbox","onUpdate:modelValue":r[0]||(r[0]=d=>l.value=d),id:`${t.id}-${u}`,name:t.name,class:"form-check-input",value:s.value||s,disabled:t.disabled,"read-only":t.readOnly,required:t.required},null,8,cl),[[e.vModelCheckbox,l.value]]),e.createElementVNode("label",{class:"form-check-label",for:`${t.id}-${u}`,innerHTML:s.text},null,8,dl)]))),128))]))}}),ml={class:"input radio-group"},fl=["id","name","value","checked","disabled","read-only","required","onChange"],pl=["for","innerHTML"],gl=["for"],ze=e.defineComponent({__name:"radio-group",props:{modelValue:{type:null},options:{type:Array,default:[]},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=c;function o(l){n("update:modelValue",l)}return(l,i)=>(e.openBlock(),e.createElementBlock("div",ml,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,(a,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||a.key?"form-check-input--key":""}
|
|
3
3
|
${(r===t.keyOption||a.key)&&a.value===t.modelValue?.value?"form-check-input--match":""}
|
|
4
|
-
`]),value:a.value||a,checked:a.value?a.value===t.modelValue?.value:a===t.modelValue,disabled:t.disabled,"read-only":t.readOnly,required:t.required,onChange:s=>o(a)},null,42,ll),e.renderSlot(l.$slots,"option-label",{option:a,index:r},()=>[e.createElementVNode("label",{class:"form-check-label",for:`${t.id}-${r}`,innerHTML:e.unref(G)(a.text||"")},null,8,ol)])],2))),128)),e.renderSlot(l.$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:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){o("update:modelValue",i)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",rl,[e.createVNode(Ne,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=r=>l.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"],Oe=e.defineComponent({__name:"input-file",props:{modelValue:{type:Array,default:[]},name:{type:String,default:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c;function l(s){const u=s.target&&s.target.files;u&&(a.splice(0,a.length),Array.from(u).forEach(d=>{if(n.maxFileSize&&d.size>n.maxFileSize){console.warn(`File ${d.name} exceeds the ${n.maxFileSize} bytes size limit and will not be added.`);return}a.push(d)}))}const i=e.ref(),a=e.reactive([]),r=e.computed(()=>a&&a.map(s=>s.name));return e.watch(()=>n.modelValue,(s,u)=>{s.length===0&&(i.value.value=null)},{deep:!0}),e.watch(()=>a,(s,u)=>{o("update:modelValue",s)},{deep:!0}),(s,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input input-file","input-file--primary"])},[e.createElementVNode("input",{ref_key:"input",ref:i,type:"file",id:t.id,name:t.name,class:"d-none",onChange:l,multiple:t.multiple,accept:t.accept,disabled:t.disabled},null,40,cl),e.createElementVNode("div",dl,[e.renderSlot(s.$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(s.$slots,"input-append",{},()=>[e.createElementVNode("label",{for:t.id,disabled:t.disabled},[e.renderSlot(s.$slots,"button",{},()=>[e.createElementVNode("span",fl,e.toDisplayString(s.$t("common.selectFile")),1)])],8,ml)])]),e.createElementVNode("label",{for:t.id},[e.renderSlot(s.$slots,"label",{},()=>[e.createElementVNode("span",{class:"input__label",innerHTML:e.unref(G)(`${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 c=e.ref(!1);return e.onMounted(()=>{window!==void 0&&(c.value=!0)}),(n,o)=>c.value?(e.openBlock(),e.createElementBlock("div",hl,[e.renderSlot(n.$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:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){const a=n.assets.find(r=>r.id===i);o("update:modelValue",n.emitKey?a[n.emitKey]:a),n.emitKey&&n.emitKey!=="id"&&o("update:selection",a.id)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",kl,[e.createVNode(Ne,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=r=>l.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===l.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={key:0,class:"rte-editor__controls mb-2"},Vl=["disabled"],El=["disabled"],$l={class:"btn-group"},Sl=["disabled"],Nl=["disabled"],Ml={class:"btn-group"},vl={class:"dropdown"},Dl={class:"btn dropdown-toggle btn-light","data-bs-toggle":"dropdown",role:"button",type:"button"},Il={class:"dropdown-menu"},Ll={class:"dropdown"},Tl={class:"btn dropdown-toggle btn-light","data-bs-toggle":"dropdown",role:"button",type:"button"},Pl={class:"dropdown-menu"},xl={class:"btn-group"},zl=["disabled"],Fl=["disabled"],Ol=["title"],Rl=e.defineComponent({inheritAttrs:!1,__name:"rte-editor",props:{modelValue:{type:String,default:""},disabled:{type:Boolean,default:!1},iconBasePath:{type:String,default:"/rte-icons-defs.svg"},allowFullscreen:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:c}){const n=t,o=c,l=e.ref(!1),i=e.ref(!1),a=e.shallowRef(void 0),r=e.shallowRef(null);e.onMounted(async()=>{const[{Editor:A,mergeAttributes:m},{EditorContent:f},{default:y},{default:b},{default:N},{default:p},{default:k}]=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")]);r.value=f,a.value=new A({content:n.modelValue,onUpdate:()=>{o("update:modelValue",a.value?.getHTML())},extensions:[p.configure({bold:!1,link:!1}),k.extend({addAttributes(){return{class:{default:null}}},parseHTML(){return[{tag:"strong"},{tag:"b"}]},renderHTML({HTMLAttributes:h}){return["strong",m(this.options.HTMLAttributes,h),0]}}),b.configure({types:["heading","paragraph"]}),y,N.extend({addAttributes(){return{...this.parent?.(),class:{default:null},id:{default:null},title:{default:null}}},parseHTML(){return[{tag:"a[href]",getAttrs:h=>({href:h.getAttribute("href"),target:h.getAttribute("target"),rel:h.getAttribute("rel"),class:h.getAttribute("class"),id:h.getAttribute("id"),title:h.getAttribute("title")})},{tag:"a:not([href])",getAttrs:h=>({href:null,target:h.getAttribute("target"),rel:h.getAttribute("rel"),class:h.getAttribute("class"),id:h.getAttribute("id"),title:h.getAttribute("title")})}]},renderHTML({HTMLAttributes:h}){if(!h.href){const{href:C,target:B,rel:P,...x}=h;return["a",m(x),0]}return["a",m(this.options.HTMLAttributes,h),0]}}).configure({openOnClick:!1,autolink:!0,defaultProtocol:"https",protocols:["http","https"],HTMLAttributes:{target:"_blank",rel:"noopener noreferrer"}})]})}),e.onBeforeUnmount(()=>{a.value?.destroy()}),e.watch(()=>n.modelValue,(A,m)=>{if(a.value){if(a.value.getHTML()===A)return;a.value.commands.setContent(A)}});function s(){const A=a.value?.getAttributes("link").href,m=window.prompt("URL",A);if(m!==null){if(m===""){a.value?.chain().focus().extendMarkRange("link").unsetLink().run();return}try{a.value?.chain().focus().extendMarkRange("link").setLink({href:m}).run()}catch(f){alert(f.message)}}}const u=()=>{a.value?.commands.setContent(`<textarea>${a.value.getHTML()}</textarea>`),l.value=!0},d=()=>{a.value?.commands.setContent(a.value.getText()),l.value=!1};return(A,m)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body",disabled:!i.value},[e.createElementVNode("div",{class:e.normalizeClass([i.value?"":A.$attrs.class,"rte-editor",{"rte-editor--fullscreen":i.value}])},[a.value?(e.openBlock(),e.createElementBlock("div",Cl,[l.value?(e.openBlock(),e.createElementBlock("button",{key:1,class:"btn btn-sm btn-light is-active",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"])],8,El)):(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("code")}]),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"])],10,Vl)),e.createElementVNode("div",$l,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("bold")}]),onClick:m[0]||(m[0]=f=>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,Sl),e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("italic")}]),onClick:m[1]||(m[1]=f=>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,Nl)]),e.createElementVNode("div",Ml,[e.createElementVNode("div",vl,[e.createElementVNode("button",Dl,[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:m[2]||(m[2]=f=>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:m[3]||(m[3]=f=>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:m[4]||(m[4]=f=>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:m[5]||(m[5]=f=>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:m[6]||(m[6]=f=>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:m[7]||(m[7]=f=>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:m[8]||(m[8]=f=>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",Ll,[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",Pl,[e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive({textAlign:"left"})}]),onClick:m[9]||(m[9]=f=>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:m[10]||(m[10]=f=>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:m[11]||(m[11]=f=>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:m[12]||(m[12]=f=>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:m[13]||(m[13]=f=>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:s,title:"Set Link"},[e.createVNode(M,{symbol:"link","base-path":t.iconBasePath},null,8,["base-path"])],2)),e.createElementVNode("div",xl,[e.createElementVNode("button",{class:"btn btn-sm btn-light",onClick:m[14]||(m[14]=f=>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,zl),e.createElementVNode("button",{class:"btn btn-sm btn-light",onClick:m[15]||(m[15]=f=>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)]),t.allowFullscreen?(e.openBlock(),e.createElementBlock("button",{key:4,class:"btn btn-sm btn-light ms-auto",onClick:m[16]||(m[16]=f=>i.value=!i.value),title:i.value?"Exit Fullscreen":"Fullscreen"},[e.createVNode(M,{symbol:i.value?"close":"maximize","base-path":t.iconBasePath},null,8,["symbol","base-path"])],8,Ol)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value),{class:"rte-editor__content",editor:a.value},null,8,["editor"]))],2)],8,["disabled"]))}}),Hl={class:"input-color"},Ql={class:"base-input__color-swatch"},Ul=["name","id","disabled","read-only","required","aria-label"],Wl=e.defineComponent({__name:"input-color",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){o("update:modelValue",i)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",Hl,[e.createVNode(pe,{modelValue:l.value,"onUpdate:modelValue":a[1]||(a[1]=r=>l.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",Ql,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":a[0]||(a[0]=s=>l.value=s),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,Ul),[[e.vModelText,l.value]])])]),_:1},8,["modelValue","type","id","name","placeholder","pattern","label","disabled","read-only","required","maxlength"])]))}}),jl={class:"color-palette"},ql=["for"],Jl=e.defineComponent({__name:"color-palette",props:{modelValue:{type:[String],default:""},colors:{type:Array,default:["#000000","#FFFFFF"]},name:{type:String,default:()=>R()},id:{type:String,default:()=>R()},label:{type:String},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){o("update:modelValue",i)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",jl,[e.createVNode(Ne,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=r=>l.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,ql)]),_:1},8,["modelValue","options","name","id","label","disabled","required"])]))}}),Gl=["id"],Yl=["for","innerHTML"],Zl={class:"dropdown"},Kl={class:"caption"},Xl=["innerHTML"],_l={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"],se=e.defineComponent({__name:"input-dropdown",props:{id:{type:String},name:{type:String,default:()=>`dropdown-${R()}`},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:c}){const{t:n}=Pe.useI18n(),o=t,l=c,i=e.computed({get(){return o.multiple&&!o.modelValue?[]:o.modelValue},set(s){l("update:modelValue",s)}}),a=e.computed(()=>o.options&&o.options.map(s=>(s=typeof s=="string"?{text:s,value:s}:s,{...s,active:o.modelValue&&s.value&&(o.exactMatch?o.modelValue===s.value:o.multiple?o.modelValue.includes(s.value):o.modelValue===s.value)}))),r=e.computed(()=>{if(!o.modelValue)return o.placeholder||`${n("common.select")}`;if(o.multiple&&Array.isArray(o.modelValue)&&o.modelValue.length)return a.value.reduce((s,u)=>o.modelValue.includes(u.value)?`${s}${s?", ":""}${u.text}`:s,"");if(!o.multiple){const s=a.value.find(u=>typeof u.value=="object"&&u.value!==null?JSON.stringify(u.value)===JSON.stringify(o.modelValue):u.value===o.modelValue);return s?s.text:o.placeholder||`${n("common.select")}`}return o.placeholder||`${n("common.select")}`});return(s,u)=>(e.openBlock(),e.createElementBlock("div",{class:"input input-dropdown",id:`${t.id||t.name}`},[e.renderSlot(s.$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,Yl)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Zl,[e.createVNode(qe,{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",Kl,[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",_l,[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(a.value,(d,A)=>(e.openBlock(),e.createElementBlock("li",{key:`${d.value}-${A}`},[e.createElementVNode("div",{class:e.normalizeClass(["dropdown-item",d.active&&"active"])},[e.createElementVNode("div",ao,[t.multiple?e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"checkbox","onUpdate:modelValue":u[0]||(u[0]=m=>i.value=m),value:d.value,key:`${t.name}-${d.value}-${A}__if`,id:`${t.name}-${d.value}-${A}`,name:t.name,label:d.text,required:t.required,disabled:d.selectable===!1,class:"form-check-input"},null,8,no)),[[e.vModelCheckbox,i.value]]):e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"radio","onUpdate:modelValue":u[1]||(u[1]=m=>i.value=m),value:d.value,key:`${t.name}-${d.value}-${A}__else`,id:`${t.name}-${d.value}-${A}`,name:t.name,label:d.text,required:t.required,disabled:d.selectable===!1,class:"form-check-input visually-hidden"},null,8,lo)),[[e.vModelRadio,i.value]]),e.createElementVNode("label",{class:"form-check-label flex-grow-1",onclick:"event.stopPropagation",for:`${t.name}-${d.value}-${A}`},e.toDisplayString(d.text),9,oo)])],2)]))),128))])])],8,Gl))}}),io={key:0,class:"auto-suggest__suggestions position-relative"},ro={class:"suggestions dropdown-menu show w-100 mt-2"},so=["onClick"],Ao=["innerHTML"],Ze=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:c}){const n=t,o=c,l=e.ref(),i=e.ref(!1),a=e.computed({get(){return n.modelValue},set(f){o("update:modelValue",f)}}),r=e.computed(()=>{const f=new RegExp(`(${a.value})`,"i");return a.value?n.options.filter(y=>f.test(y)):n.options}),s=e.computed(()=>{const f=new RegExp(`(${a.value})`,"i");return r.value.map(y=>{const b=y.replace(f,"<strong>$1</strong>");return G(b)})});e.watch(()=>n.options,(f,y)=>{f.length&&(i.value=!0)},{deep:!0});function u(){n.options.length&&(i.value=!0)}function d(f){i.value=!1;const y=r.value[f];o("update:modelValue",y),o("update:selection",y)}const A=e.ref();function m(f){const y=f.target;i.value&&y&&!l.value.contains(y)&&(i.value=!1)}return e.onBeforeMount(()=>{A.value=document.addEventListener("click",m)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",A.value)}),(f,y)=>(e.openBlock(),e.createElementBlock("div",{class:"auto-suggest",ref_key:"container",ref:l},[e.createElementVNode("div",{class:"auto-suggest__input",onFocusCapture:u},[e.renderSlot(f.$slots,"default",{},()=>[e.createVNode(pe,e.mergeProps({modelValue:a.value,"onUpdate:modelValue":y[0]||(y[0]=b=>a.value=b)},f.$props),null,16,["modelValue"])])],32),i.value&&r.value.length?(e.openBlock(),e.createElementBlock("div",io,[e.createElementVNode("ul",ro,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(b,N)=>(e.openBlock(),e.createElementBlock("li",{key:b,class:"suggestions__item dropdown-item",onClick:e.withModifiers(p=>d(N),["prevent"])},[e.createElementVNode("p",{class:"text-truncate my-2",innerHTML:b},null,8,Ao)],8,so))),128))])])):e.createCommentVNode("",!0)],512))}});function Ke(t){const c=e.computed(()=>{if(!t.tintColor)return null;const a=t.tintColor.replace("#",""),r=parseInt(a.substring(0,2),16),s=parseInt(a.substring(2,4),16),u=parseInt(a.substring(4,6),16);return{r,g:s,b:u}});function n(a,r,s){if(t.filter==="none"&&!t.tintColor)return;const u=a.getImageData(0,0,r,s),d=u.data;if(t.filter==="grayscale")for(let A=0;A<d.length;A+=4){const m=.299*d[A]+.587*d[A+1]+.114*d[A+2];d[A]=m,d[A+1]=m,d[A+2]=m}else if(t.filter==="sepia")for(let A=0;A<d.length;A+=4){const m=d[A],f=d[A+1],y=d[A+2];d[A]=Math.min(255,.393*m+.769*f+.189*y),d[A+1]=Math.min(255,.349*m+.686*f+.168*y),d[A+2]=Math.min(255,.272*m+.534*f+.131*y)}if(t.tintColor&&c.value){const{r:A,g:m,b:f}=c.value,y=t.tintIntensity;for(let b=0;b<d.length;b+=4){const N=d[b],p=d[b+1],k=d[b+2],h=N*A/255,C=p*m/255,B=k*f/255;d[b]=N+(h-N)*y,d[b+1]=p+(C-p)*y,d[b+2]=k+(B-k)*y}}a.putImageData(u,0,0)}async function o(a){if(typeof a!="string")return a.complete&&a.naturalWidth>0||await new Promise((s,u)=>{a.onload=()=>s(),a.onerror=()=>u(new Error("Failed to load image element"))}),a;const r=new Image;return await new Promise((s,u)=>{r.onload=()=>s(),r.onerror=()=>u(new Error("Failed to load image source")),r.src=a}),r}async function l(a,r={}){const s=await o(a),u=document.createElement("canvas"),d=r.width||s.naturalWidth||s.width,A=r.height||s.naturalHeight||s.height;u.width=d,u.height=A;const m=u.getContext("2d");if(!m)throw new Error("Could not create canvas context");return m.drawImage(s,0,0,d,A),n(m,d,A),u.toDataURL(r.mimeType||"image/png",r.quality)}async function i(a,r={}){const s=await l(a,r);return(await fetch(s)).blob()}return{tintRgb:c,applyFilterToCanvas:n,applyFilterToImage:l,applyFilterToImageBlob:i}}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:c}){const n=t,o=c,l=e.computed(()=>n.ticks),i=e.computed(()=>Math.round((n.ticks-1)/2)),a=e.computed(()=>Math.round((n.ticks-1)/10));function r(s){o("update:modelValue",parseFloat(s.target.value))}return(s,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(l.value,d=>(e.openBlock(),e.createElementBlock("span",{key:d,class:e.normalizeClass(["zoom-slider__tick",{"zoom-slider__tick--major":(d-1)%i.value===0,"zoom-slider__tick--mid":(d-1)%a.value===0&&(d-1)%i.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"},vo={key:0},Do={key:1},Io={key:0,class:"camera__select-device"},Lo={class:"col"},To={class:""},Po={name:"BaseCamera",inheritAttrs:!1},Xe={"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({...Po,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:()=>Xe},zoom:{type:Number,default:1},enableZoomSlider:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{expose:c,emit:n}){const o=t,l=n,i=e.ref(),a=e.ref(),r=e.ref(!1),s=e.ref([]),u=e.ref(),d=e.ref(),A=e.ref(!1),m=e.ref(!1),f=e.ref(0),y=e.ref(0),b=e.ref(),N=e.ref(o.zoom||1),p=e.computed(()=>({...Xe,...o.resolutions})),k=e.computed(()=>Object.values(p.value)[0]);function h(I){return String(I||"").trim().toLowerCase().replace(/\s+/g,"").replace(/[:/]/g,"x")}const C=e.computed(()=>{if(p.value[o.ratio])return o.ratio;const I=h(o.ratio);if(p.value[I])return I}),B=e.computed(()=>C.value?p.value[C.value]:k.value),P=e.computed(()=>{const I=C.value?p.value[C.value]:void 0;return I?`${I.width} / ${I.height}`:void 0}),x=e.computed(()=>s.value.filter(I=>I.kind==="videoinput")),_=e.computed(()=>s.value.filter(I=>I.kind==="audioinput")),$=e.computed(()=>x.value.map((I,O)=>({text:I.label.slice(0,I.label.indexOf("("))||`Camera ${O+1}`,value:I.deviceId}))),T=e.computed({get(){return u.value&&u.value.deviceId},set(I){u.value=x.value.find(O=>O.deviceId===I)}});e.computed({get(){return d.value&&d.value.deviceId},set(I){d.value=_.value.find(O=>O.deviceId===I)}});const z=e.computed(()=>{const I=u.value&&x.value.findIndex(O=>O.deviceId===u.value.deviceId);return o.enableMirrorCamera&&I===0?"mirror-cam":""}),v=e.computed(()=>{const I=u.value&&s.value.findIndex(O=>O.deviceId===u.value.deviceId);return z.value?`${z.value} mirror-device-${I}`:""}),{tintRgb:S,applyFilterToCanvas:H}=Ke(o);function V(){if(C.value&&B.value){f.value=B.value.width,y.value=B.value.height;return}f.value=i.value.parentElement&&i.value.parentElement.clientWidth,y.value=i.value.parentElement&&i.value.parentElement.clientHeight}const F=xe.debounce(()=>{V()},300,{trailing:!0,leading:!1});async function D(){const I=B.value?{width:B.value.width,height:B.value.height}:void 0,O=I?I.width/I.height:void 0,K={audio:o.enableAudio&&{...d.value?{deviceId:d.value.deviceId}:{}},video:{...u.value?{deviceId:u.value.deviceId}:{},width:{ideal:I?.width},...C.value&&I?.height?{height:{ideal:I.height}}:{},...C.value&&O?{aspectRatio:{ideal:O}}:{}}};return navigator.mediaDevices.getUserMedia(K).catch(ye=>{console.error(ye,"navigator.mediaDevices.getUserMedia: failed")})}function Q(){i.value&&i.value.srcObject&&i.value.srcObject.getTracks().forEach(O=>{O.stop()})}async function j(){return i.value.srcObject=await D(),s.value=await navigator.mediaDevices.enumerateDevices(),{stream:i.value.srcObject,devices:s.value}}function de(){A.value?(A.value=!1,m.value=!1,Q()):(A.value=!0,j())}function ge(){if(s.value.length>1){Q();const I=x.value.findIndex(O=>O.deviceId===u.value.deviceId);u.value=x.value[I===x.value.length-1?0:I+1],j()}}async function he(I,O){Q(),I&&(!O||I.deviceId!==O.deviceId)&&await j()}e.watch(()=>u.value,he),e.watch(()=>d.value,he);function ue(){o.countdown?(b.value=b.value?b.value-1:o.countdown,b.value?setTimeout(ue,1e3):q()):q()}c({onCapture:ue,camera:i.value,zoom:N});function q(){m.value=!0;const I=a.value.getContext("2d"),O=i.value,K=O&&O.srcObject&&O.srcObject.getTracks(),{aspectRatio:ye,width:me,height:ve}=K.length&&K[0].getSettings(),X=O?.videoWidth||me||f.value,te=O?.videoHeight||ve||y.value,ee=X&&te?X/te:ye,De=B.value||{width:X,height:te},Be=De?.width||X,Ie=C.value?De?.height||te:Math.round(Be/ee),le=Be/Ie;if(a.value.width=Be,a.value.height=Ie,!X||!te||!ee)return;if(I.save(),z.value&&(I.translate(a.value.width,0),I.scale(-1,1)),o.enableCropImage){let ae=0,ie=0,J=X,ne=te;if(ee>le?(J=te*le,ae=(X-J)/2):ee<le&&(ne=X/le,ie=(te-ne)/2),N.value&&N.value!==1){const fe=J/N.value,Ae=ne/N.value;ae+=(J-fe)/2,ie+=(ne-Ae)/2,J=fe,ne=Ae}I.drawImage(O,ae,ie,J,ne,0,0,a.value.width,a.value.height)}else{let ae=a.value.width,ie=a.value.height,J=0,ne=0;if(ee>le?(ie=a.value.width/ee,ne=(a.value.height-ie)/2):ee<le&&(ae=a.value.height*ee,J=(a.value.width-ae)/2),N.value&&N.value!==1){const fe=X/N.value,Ae=te/N.value,g=(X-fe)/2,w=(te-Ae)/2;z.value&&(J=a.value.width-J-ae),I.drawImage(O,g,w,fe,Ae,J,ne,ae,ie)}else z.value&&(J=a.value.width-J-ae),I.drawImage(O,0,0,X,te,J,ne,ae,ie)}I.restore(),H(I,a.value.width,a.value.height);const Ce=a.value.toDataURL("image/png");W(Ce)}function W(I){const O=Vt(I);l("update:modelValue",{name:`cam-pic-${new Date().toISOString()}`,id:`cam-pic-${new Date().toISOString()}`,blob:O,size:O.size})}return e.onMounted(async()=>{Q(),await j(),u.value=x.value[0],o.enableAudio&&(d.value=_.value[0]),navigator.mediaDevices.addEventListener("devicechange",async I=>{await j()}),o.defaultRearCamera&&ge(),de(),window.addEventListener("resize",F),V(),await e.nextTick(),r.value=!0}),e.onBeforeUnmount(()=>{A.value=!1,m.value=!1,Q(),window.removeEventListener("resize",F)}),(I,O)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["camera",v.value])},[e.createElementVNode("div",ho,[r.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",yo,[e.createVNode(Ee,{color:"#000"},{default:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass("d-block text-center"),innerHTML:I.$t("camera.waitForCameraNotification")},null,8,bo)]),_:1})])),e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(["camera__video-wrapper",C.value?`aspect-ratio--${C.value}`:""]),style:e.normalizeStyle({aspectRatio:P.value||void 0,transform:N.value!==1?`scale(${N.value})`:void 0})},[e.createElementVNode("video",{ref_key:"camera",ref:i,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:a,class:"camera__canvas",width:f.value,height:y.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&&A.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:N.value,"onUpdate:modelValue":O[0]||(O[0]=K=>N.value=K)},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:de},[A.value?(e.openBlock(),e.createElementBlock("span",Do,e.toDisplayString(I.$t("common.pause")),1)):(e.openBlock(),e.createElementBlock("span",vo,e.toDisplayString(I.$t("common.play")),1))]),e.createElementVNode("button",{type:"button",class:"camera__capture btn btn-primary",onClick:ue},e.toDisplayString(I.$t("camera.capture")),1)])])])])]),(t.enableSwitchCamera||t.enableSelectDevice)&&x.value&&x.value.length>1?(e.openBlock(),e.createElementBlock("div",Io,[e.createElementVNode("div",Lo,[t.enableSelectDevice?(e.openBlock(),e.createBlock(se,{key:0,modelValue:T.value,"onUpdate:modelValue":O[1]||(O[1]=K=>T.value=K),options:$.value,class:"w-100"},null,8,["modelValue","options"])):e.createCommentVNode("",!0)]),e.createElementVNode("div",To,[t.enableSwitchCamera?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn",onClick:e.withModifiers(ge,["prevent"])},[e.createVNode(M,{symbol:"switch-camera"})])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)],2))}}),zo={class:"base-map"},Fo={key:0,class:"base-map__label"},Oo={key:0,class:"base-map__hint"},_e=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:c}){function n(V,F){return F({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},l={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>'}},i=t,a=c,r=e.shallowRef(null),s=e.ref(null),u=e.ref(null),d=e.ref(i.zoom),A=e.ref(B(i.modelValue));e.onMounted(async()=>{if(typeof window>"u")return;const[V,F]=await Promise.all([import("@vue-leaflet/vue-leaflet"),import("leaflet")]),D=V.default??V,Q=F.default??F;r.value=e.markRaw({LCircle:e.markRaw(D.LCircle),LMap:e.markRaw(D.LMap),LMarker:e.markRaw(D.LMarker),LPopup:e.markRaw(D.LPopup),LPolyline:e.markRaw(D.LPolyline),LTileLayer:e.markRaw(D.LTileLayer)}),s.value={list:n("list",Q.divIcon),selected:n("selected",Q.divIcon),search:n("search",Q.divIcon),user:n("user",Q.divIcon)}}),e.watch(()=>i.zoom,V=>{d.value=V}),e.watch(()=>i.modelValue,V=>{A.value=B(V)}),e.watch(()=>i.center,V=>{const F=B(V);F&&$(F)},{deep:!0}),e.watch(()=>[i.height,i.markers.length,i.routeCoordinates.length,i.center?.lat,i.center?.lng,i.modelValue?.lat,i.modelValue?.lng,i.userLocation?.lat,i.userLocation?.lng],()=>{_()},{flush:"post"});const m=e.computed(()=>B(i.userLocation)),f=e.computed(()=>B(i.selectionRadiusCenter)||A.value),y=e.computed(()=>{const V=(i.markers||[]).map(F=>{const D=B(F);return D?{...F,...D,type:F.type||(A.value&&x(F,A.value)?"selected":"list")}:null}).filter(F=>!!F);return i.showSelectedMarker&&A.value&&!V.some(F=>x(F,A.value))&&V.push({id:"selected-location",label:i.selectedLocationLabel,type:"search",...A.value}),V}),b=e.computed(()=>(i.routeCoordinates||[]).map(V=>P(V)).filter(V=>!!V)),N=e.computed(()=>{const V=B(i.center)||A.value||B(i.markers[0])||o;return[V.lat,V.lng]}),p=e.computed(()=>{if(i.tileLayerUrl.trim())return i.tileLayerUrl;const V=i.mapStyle==="custom"?"streets":i.mapStyle;return l[V].url}),k=e.computed(()=>{if(i.tileLayerAttribution.trim())return i.tileLayerAttribution;const V=i.mapStyle==="custom"?"streets":i.mapStyle;return l[V].attribution});function h(V="list"){if(s.value)return s.value[V]||s.value.list}function C(V="list"){switch(V){case"user":return 450;case"selected":return 350;case"search":return 250;default:return 150}}function B(V){if(!V)return null;const F=Number(V.lat),D=Number(V.lng);return Number.isNaN(F)||Number.isNaN(D)?null:{lat:F,lng:D}}function P(V){if(Array.isArray(V)){const D=Number(V[0]),Q=Number(V[1]);return Number.isFinite(D)&&Number.isFinite(Q)?[D,Q]:null}const F=B(V);return F?[F.lat,F.lng]:null}function x(V,F){const D=B(V),Q=B(F);return!D||!Q?!1:Math.abs(D.lat-Q.lat)<1e-6&&Math.abs(D.lng-Q.lng)<1e-6}async function _(){await e.nextTick(),u.value?.invalidateSize()}function $(V){u.value?.panTo([V.lat,V.lng])}function T(V){u.value=V,$(B(i.center)||A.value||o),_()}function z(V){d.value=V,a("update:zoom",V)}function v(V){const F=B(V);F&&($(F),a("update:center",F))}function S(V){if(!i.interactive||i.disabled)return;const F={lat:Number(V.latlng.lat.toFixed(6)),lng:Number(V.latlng.lng.toFixed(6))};A.value=F,$(F),a("update:modelValue",F),a("update:center",F),a("map-click",F)}function H(V){A.value={lat:Number(V.lat),lng:Number(V.lng)},$(A.value),a("update:modelValue",A.value),a("update:center",A.value),a("marker-click",V)}return(V,F)=>(e.openBlock(),e.createElementBlock("div",zo,[e.renderSlot(V.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",Fo,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:d.value,center:N.value,onReady:T,onClick:S,"onUpdate:zoom":z,"onUpdate:center":v},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LTileLayer),{url:p.value,attribution:k.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(y.value,(D,Q)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LMarker),{key:D.id??`${D.lat}-${D.lng}-${Q}`,"lat-lng":[D.lat,D.lng],icon:h(D.type),"z-index-offset":C(D.type),onClick:j=>H(D)},{default:e.withCtx(()=>[D.label?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LPopup),{key:0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(D.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:h("user"),"z-index-offset":C("user"),onClick:F[0]||(F[0]=D=>H({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",Oo,e.toDisplayString(t.helperText),1)):e.createCommentVNode("",!0)]))}}),Ro={class:"location-list","data-testid":"location-list"},Ho={key:0,class:"location-list__label"},Qo={key:1,class:"location-list__items"},Uo=["data-testid","onClick"],Wo={class:"location-list__title"},jo={key:0,class:"location-list__description"},qo={key:1,class:"location-list__distance"},Jo={key:2,class:"location-list__empty"},et=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:c}){const n=t,o=c;function l(A){return A?.[n.titleKey]||A?.label||A?.name||"Location"}function i(A){return A?.[n.descriptionKey]||A?.description||A?.subtitle||""}function a(A,m=0){return A?typeof A!="object"?A:A.id??A.value??l(A)??m:m}function r(A,m=0){return`${a(A,m)}`.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function s(A,m=0){return a(n.modelValue)===a(A,m)}function u(A){return Number.isFinite(A)?A>=1e3?`${(A/1e3).toFixed(1)} km`:`${Math.round(A)} m`:"—"}function d(A){o("update:modelValue",A),o("select",A)}return(A,m)=>(e.openBlock(),e.createElementBlock("div",Ro,[t.label?(e.openBlock(),e.createElementBlock("p",Ho,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0),t.locations.length?(e.openBlock(),e.createElementBlock("div",Qo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.locations,(f,y)=>(e.openBlock(),e.createElementBlock("button",{key:a(f,y),type:"button",class:e.normalizeClass(["location-list__item",{"location-list__item--active":s(f,y)}]),"data-testid":`location-option-${r(f,y)}`,onClick:b=>d(f)},[e.createElementVNode("strong",Wo,e.toDisplayString(l(f)),1),i(f)?(e.openBlock(),e.createElementBlock("small",jo,e.toDisplayString(i(f)),1)):e.createCommentVNode("",!0),t.showDistance&&f?.distance!==void 0&&f?.distance!==null?(e.openBlock(),e.createElementBlock("small",qo,e.toDisplayString(u(Number(f.distance)))+" away ",1)):e.createCommentVNode("",!0)],10,Uo))),128))])):(e.openBlock(),e.createElementBlock("p",Jo,e.toDisplayString(t.emptyText),1))]))}});function tt(t=null,c){const n=e.ref(!1),o=e.ref([]),l=e.ref([]),i=e.ref(!1),a=e.ref(!1),r=e.computed(()=>t.modelValue?.length?t.modelValue:t.src?[{type:"",src:t.src}]:l.value);async function s(b){const N=new FormData;N.append("file",b),n.value=!0;const k=await(t.customFetch||Ve.ofetch)(t.endpoint,{method:"POST",...t.customFetch?{}:{headers:{Accept:"application/json",...t.authToken?{Authorization:`Bearer ${t.authToken}`}:{}}},body:N}).catch(C=>{console.error("Error",C)});return n.value=!1,`${t.baseResponsePath||"/api/v1/assets"}/${k.path}`}function u(b){const N=typeof b=="string"?parseInt(b,10):b,p=Array.isArray(t.modelValue)&&t.modelValue.length>0,k=Array.isArray(l.value)&&l.value.length>0;if(k&&N<l.value.length&&l.value.splice(N,1),p){const h=[...t.modelValue];N<h.length&&h.splice(N,1),c?.("update:modelValue",h),t.multiple||c?.("update:src",h[0]?.src||"")}else if(k){const h=t.multiple?l.value:l.value[0];c?.("update:modelValue",h),t.multiple||c?.("update:src",l.value[0]?.src||"")}else c?.("update:modelValue",t.multiple?[]:void 0),c?.("update:src","");o.value.splice(N,1),i.value=!1}function d(b){b.preventDefault(),a.value=!0}function A(b){b.preventDefault(),a.value=!1}function m(b){b.preventDefault(),a.value=!1;const N=b.dataTransfer,p=N&&Array.from(N.files||[]);o.value=p||[]}function f(){t.dropFiles&&(["dragenter","dragover"].forEach(b=>{document.body.addEventListener(b,d,!1)}),["dragleave","drop"].forEach(b=>{document.body.addEventListener(b,A,!1)}),document.body.addEventListener("drop",m,!1))}function y(){t.dropFiles&&(["dragenter","dragover"].forEach(b=>{document.body.removeEventListener(b,d,!1)}),["dragleave","drop"].forEach(b=>{document.body.removeEventListener(b,A,!1)}),document.body.removeEventListener("drop",m,!1))}return e.onMounted(()=>{f()}),e.onBeforeUnmount(()=>{y()}),{pending:n,files:o,dataUrls:l,imgLoaded:i,isDragging:a,thumbnails:r,uploadFile:s,removeFile:u,dragStart:d,dragStop:A,dragDrop:m,setupDragAndDrop:f,cleanupDragAndDrop:y}}const Go=["src"],Yo=["onClick"],Zo=["onClick"],Ko=["for"],Xo=["innerHTML"],_o={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:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c,{pending:l,files:i,dataUrls:a,isDragging:r,thumbnails:s,uploadFile:u,removeFile:d}=tt(n,o);return e.watch(()=>i.value,async A=>{a.value=await Promise.all(A.map(async m=>({src:n.toDataUrl?await Se(m):await u(m),type:m.type})))},{deep:!0}),e.watch(()=>a.value,async A=>{const m=n.multiple?A:A[0];o("update:modelValue",m),n.multiple||o("update:src",A[0]&&A[0].src)},{deep:!0}),(A,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(s),(f,y)=>(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,Go),e.createElementVNode("button",{onClick:e.withModifiers(b=>e.unref(d)(y),["prevent"]),class:"btn btn--close"},[e.createVNode(M,{symbol:"x"})],8,Yo)],64)):(e.openBlock(),e.createElementBlock("button",{key:1,onClick:e.withModifiers(b=>e.unref(d)(y),["prevent"]),class:"btn btn--close btn-outline-contrast"},[e.createVNode(M,{symbol:"x"})],8,Zo))],2))),128)),e.createVNode(Oe,{modelValue:e.unref(i),"onUpdate:modelValue":m[0]||(m[0]=f=>e.isRef(i)?i.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(A.$slots,"button",{},()=>[e.createElementVNode("span",{class:"btn btn-outline-contrast",innerHTML:t.label||A.$t("common.selectFile")},null,8,Xo)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[e.unref(l)?(e.openBlock(),e.createElementBlock("span",_o,[...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,Ko)],2))}}),ei=["onDragenter","onDragover","onDragleave","onDragend","onDrop","innerHTML"],ti=["draggable","onDragstart","onDrag","onDragenter","onDragover","onDragleave","onDragend","onDrop"],ai={key:0,class:"sortable-list__drag-handle"},ni=["onDragstart","onDrag"],li={key:0,class:"sortable-list__item"},Re=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:c}){const n=t,o=e.ref(!1),l=e.ref(null),i=e.ref(null),a=c,r=e.computed({get(){return n.modelValue},set(h){a("update:modelValue",h)}}),s=e.ref("");function u(h){const C=h.currentTarget.closest(".sortable-list__item")??h.currentTarget;s.value=Te.sanitize(C.outerHTML,{ALLOWED_TAGS:["b","i","em","strong","u","span","p","br","a","ul","ol","li","h1","h2","h3","h4","h5","h6","article","div","label","button","svg","use"],ALLOWED_ATTR:["class","id","style","href","target","rel","title","type","aria-expanded","aria-controls","aria-labelledby","data-countdown"],ALLOW_DATA_ATTR:!0})}const d=e.useSlots(),A=e.computed(()=>d["list-append"]);function m(h,C){h.dataTransfer&&(u(h),h.dataTransfer.dropEffect="move",h.dataTransfer.effectAllowed="move",h.dataTransfer.setData("index",C.toLocaleString()),o.value=!0,l.value=C)}function f(h,C){o.value=!1,l.value=null,i.value=null,s.value=""}function y(h,C){}function b(h,C){i.value=l.value!==C?C:null}function N(h,C){i.value=l.value!==C?C:null}function p(h,C){}function k(h,C){if(h.dataTransfer){h.preventDefault();const B=Number(h.dataTransfer.getData("index")),P=C,x=[...r.value];(P||P===0)&&(B||B===0)&&x.splice(P,0,x.splice(B,1)[0]),r.value=x}}return e.watch(()=>o.value,h=>{a("update:isDragging",h)},{immediate:!0}),e.watch(()=>l.value,h=>{a("update:dragIndex",h)},{immediate:!0}),e.watch(()=>i.value,h=>{a("update:dragOverIndex",h)},{immediate:!0}),(h,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,(B,P)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:P},[t.showPreview&&o.value&&i.value===P?(e.openBlock(),e.createElementBlock("li",{key:0,class:"sortable-list__item is-drop-target",onDragenter:x=>b(x,P),onDragover:x=>N(x,P),onDragleave:x=>void 0,onDragend:x=>f(),onDrop:x=>k(x,P),innerHTML:s.value},null,40,ei)):e.createCommentVNode("",!0),e.createElementVNode("li",{class:e.normalizeClass(["sortable-list__item d-flex",{"is-drag-item":o.value&&l.value===P,"is-drop-target":o.value&&i.value===P&&!t.showPreview,"align-items-center gap-2":t.vertical}]),draggable:!t.showDragHandle,onDragstart:x=>m(x,P),onDrag:x=>void 0,onDragenter:x=>b(x,P),onDragover:x=>N(x,P),onDragleave:x=>void 0,onDragend:x=>f(),onDrop:x=>k(x,P)},[t.showDragHandle?(e.openBlock(),e.createElementBlock("div",ai,[e.createElementVNode("button",{type:"button",class:"btn",draggable:"true",onDragstart:x=>m(x,P),onDrag:x=>void 0},[e.createVNode(M,{symbol:"drag"})],40,ni)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["sortable-list__item-content",{"flex-grow-1":t.vertical}])},[e.renderSlot(h.$slots,"list-item",{item:B,index:P},()=>[e.createTextVNode(e.toDisplayString(B),1)])],2)],42,ti)],64))),128)),A.value?(e.openBlock(),e.createElementBlock("li",li,[e.renderSlot(h.$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"],at=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:c}){const n=c,o=e.useTemplateRef("image"),l=e.ref(1),i=e.ref(0),a=e.ref(0),r=e.ref(null),s=e.ref(0),u=e.ref(0);function d(){r.value&&(n("update:modelValue",r.value),l.value=1)}const A=()=>{if(!s.value||!u.value)return;i.value=Math.round(s.value*l.value);const f=u.value/s.value;a.value=Math.round(i.value*f);const y=o.value?.$el;if(!y)return;const b=y.querySelector("img");b&&(r.value=We(b,i.value,a.value,"image/png"))},m=xe.debounce(A,300);return e.watch(l,()=>{s.value&&(i.value=Math.round(s.value*l.value),m())}),e.watch(i,()=>{if(!s.value||i.value===0)return;const f=i.value/s.value;Math.abs(f-l.value)>1e-4&&(l.value=Number(f.toFixed(4)));const y=u.value/s.value;a.value=Math.round(i.value*y),m()}),e.watch(a,()=>{if(!u.value||a.value===0)return;const f=a.value/u.value;Math.abs(f-l.value)>1e-4&&(l.value=Number(f.toFixed(4)));const y=s.value/u.value;i.value=Math.round(a.value*y),m()}),e.onMounted(()=>{const f=o.value?.$el;if(!f)return;const y=f.querySelector("img");if(!y)return;const b=()=>{s.value=y.naturalWidth,u.value=y.naturalHeight,A()};y.complete?b():y.addEventListener("load",b)}),(f,y)=>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":y[0]||(y[0]=b=>l.value=b),min:"0",max:"2",step:"0.0001"},null,512),[[e.vModelText,l.value]])])]),e.createElementVNode("div",di,[e.createElementVNode("div",ui,[e.createVNode(pe,{type:"number",class:"form-input mb-0",id:"targetWidth",modelValue:i.value,"onUpdate:modelValue":y[1]||(y[1]=b=>i.value=b)},null,8,["modelValue"])])]),y[3]||(y[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(pe,{type:"number",class:"form-input mb-0",id:"targetHeight",modelValue:a.value,"onUpdate:modelValue":y[2]||(y[2]=b=>a.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(d,["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"},nt=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:c}){const n=t,o=c,l=e.useTemplateRef("cropper"),i=e.ref(0);function a(){const{canvas:r}=l.value?.getResult(),s=r.toDataURL();o("update:modelValue",s)}return e.onBeforeMount(()=>{i.value=n.suggestedAspectRatio||0}),(r,s)=>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":{...i.value!==0?{aspectRatio:i.value}:{}},"resize-image":!1},null,8,["src","stencil-props"])])]),s[1]||(s[1]=e.createElementVNode("hr",null,null,-1)),e.createElementVNode("div",wi,[e.createElementVNode("div",Bi,[e.createVNode(se,{modelValue:i.value,"onUpdate:modelValue":s[0]||(s[0]=u=>i.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(a,["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"},vi={class:"d-flex"},Di={key:0,class:"d-flex gap-3"},Ii={class:"caption"},Li={class:"caption"},Ti={key:1,class:"ms-auto"},lt=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:c}){const n=t,o=c,l=e.ref(!1),i=e.ref(!1),a=e.computed({get:()=>n.modelValue,set:s=>o("update:modelValue",s)}),r=e.computed(()=>n.modelValue.startsWith("data:image/svg+xml"));return e.watch(()=>[l.value,a.value],(s,u)=>{s[0]&&s[0]===u[0]&&(l.value=!1)}),e.watch(()=>[i.value,a.value],(s,u)=>{s[0]&&s[0]===u[0]&&(i.value=!1)}),e.onMounted(()=>{}),(s,u)=>t.modelValue?(e.openBlock(),e.createElementBlock("div",Ci,[e.createElementVNode("div",Vi,[e.createElementVNode("div",Ei,[l.value||i.value?l.value?(e.openBlock(),e.createBlock(at,{key:1,modelValue:a.value,"onUpdate:modelValue":u[1]||(u[1]=d=>a.value=d)},{actions:e.withCtx(()=>[e.createElementVNode("button",{class:"btn btn-outline-ccontrast",onClick:u[0]||(u[0]=e.withModifiers(d=>l.value=!1,["prevent","stop"]))},e.toDisplayString(s.$t("common.cancel")),1)]),_:1},8,["modelValue"])):i.value?(e.openBlock(),e.createBlock(nt,{key:2,modelValue:a.value,"onUpdate:modelValue":u[3]||(u[3]=d=>a.value=d),"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(d=>i.value=!1,["prevent","stop"]))},e.toDisplayString(s.$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(s.$t("common.svgWarning")),1)):e.createCommentVNode("",!0),!i.value&&!l.value?(e.openBlock(),e.createElementBlock("hr",Si)):e.createCommentVNode("",!0),e.createElementVNode("div",Ni,[e.createElementVNode("div",Mi,[e.createElementVNode("div",vi,[!i.value&&!l.value?(e.openBlock(),e.createElementBlock("div",Di,[e.createElementVNode("button",{type:"button",class:"btn btn-light",onClick:u[4]||(u[4]=e.withModifiers(d=>i.value=!i.value,["prevent","stop"]))},[e.createVNode(M,{symbol:"crop"}),e.createElementVNode("span",Ii,e.toDisplayString(s.$t("common.crop")),1)]),e.createElementVNode("button",{type:"button",class:"btn btn-light",onClick:u[5]||(u[5]=e.withModifiers(d=>l.value=!l.value,["prevent","stop"]))},[e.createVNode(M,{symbol:"image-upscale"}),e.createElementVNode("span",Li,e.toDisplayString(s.$t("common.resize")),1)])])):e.createCommentVNode("",!0),!i.value&&!l.value?(e.openBlock(),e.createElementBlock("div",Ti,[e.renderSlot(s.$slots,"submit")])):e.createCommentVNode("",!0)])])])])])])):e.createCommentVNode("",!0)}}),Pi={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"},Fi={class:"modal-dialog__body"},Oi={key:0,class:"modal-dialog__footer d-flex p-3 border-top"},ot=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:c,emit:n}){const o=t,l=n,i=e.ref();function a(){document.documentElement.style.setProperty("--scroll-position",`${Math.round(document.documentElement.scrollTop)}px`),o.modal?i.value?.showModal():i.value?.show(),l("update:modelValue",!0)}function r(){const m=i.value&&new KeyframeEffect(i.value,[{translate:"0 -100%",opacity:"0"}],{duration:320,easing:"ease",direction:"normal"}),f=new Animation(m,document.timeline);f.play(),f.addEventListener("finish",()=>{i.value?.close(),s()}),l("update:modelValue",!1)}function s(){const m=getComputedStyle(document.documentElement).getPropertyValue("--scroll-position");document.documentElement.scrollTo({top:parseInt(m,10),behavior:"instant"}),l("update:modelValue",!1)}function u(m){a(),l("confirm",m)}function d(){r(),l("cancel")}function A(m){const f=m.target;f&&f.nodeName==="DIALOG"&&r()}return e.watch(()=>o.modelValue,(m,f)=>{m&&m!==f?a():f&&r()},{immediate:!0}),e.onMounted(()=>{i.value?.addEventListener("cancel",m=>{m.preventDefault(),r()}),o.dismiss&&document.addEventListener("click",A),o.modelValue&&a()}),e.onBeforeUnmount(()=>{o.dismiss&&document.removeEventListener("click",A)}),c({show:a,close:r,confirm:u,cancel:d}),(m,f)=>(e.openBlock(),e.createElementBlock("dialog",{ref_key:"dialog",ref:i,class:e.normalizeClass(["modal-dialog",{[`modal-dialog--${t.size}`]:t.size}]),onClose:s},[e.createElementVNode("div",Pi,[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",Fi,[e.renderSlot(m.$slots,"default")]),t.footer?(e.openBlock(),e.createElementBlock("div",Oi,[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))}}),Ri={class:"image-upload__controls"},Hi={class:"d-flex gap-1 align-items-center"},Qi={key:1,class:"image-upload__controls"},Ui=["for"],Wi=["innerHTML"],ji={key:0,class:"image-upload__loading-spinner"},we=e.defineComponent({__name:"image-upload",props:{modelValue:{type:Object,default:void 0},src:{type:String},name:{type:String,default:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c,l=e.ref(!1),i=e.ref(null),a=e.ref(null),r=e.ref(null),{pending:s,files:u,imgLoaded:d,isDragging:A,uploadFile:m,setupDragAndDrop:f,cleanupDragAndDrop:y}=tt(n,o),b=e.computed(()=>n.modelValue?n.modelValue:n.src?{type:"",src:n.src}:i.value);function N(){i.value=null,u.value=[],d.value=!1,o("update:modelValue",void 0),o("update:src","")}function p(){N()}e.watch(()=>u.value,async C=>{if(!C||!C.length||!C[0])return;d.value=!1;const B=await St(C[0],n.maxImageWidth);n.enableReview?(a.value={src:await Se(B),type:B.type},l.value=!0):i.value={src:n.toDataUrl?await Se(B):await m(B),type:B.type}}),e.watch(()=>i.value,C=>{o("update:modelValue",C||void 0),o("update:src",C?.src||"")}),e.watch(()=>r.value,async C=>{C&&(i.value={src:await m(C),type:C.type},r.value=null)}),e.watch(()=>l.value,(C,B)=>{!C&&B&&a.value&&(a.value=null,p())}),e.watch(()=>n.src,C=>{!C&&i.value&&p()});function k(C,B){a.value={src:C,type:B},l.value=!0}async function h(){a.value&&(r.value=await Ue(a.value.src,"file",a.value.type)),a.value=null,l.value=!1}return e.onMounted(()=>{f()}),e.onBeforeUnmount(()=>{y()}),(C,B)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["image-upload",{"has-dragging":t.dropFiles,"is-dragging":e.unref(A)}])},[!l.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(d),"onUpdate:ready":B[0]||(B[0]=P=>e.isRef(d)?d.value=P:null),animate:!1,style:e.normalizeStyle({maxWidth:t.previewWidth?`${t.previewWidth}px`:"auto",height:"auto"})},null,8,["src","ready","style"]),e.createElementVNode("div",Ri,[e.createElementVNode("div",Hi,[e.createElementVNode("button",{type:"button",onClick:B[1]||(B[1]=e.withModifiers(P=>k(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(P=>N(),["prevent","stop"])),class:"btn btn--close btn-sm btn-light"},[e.createVNode(M,{symbol:"x"})])])])],64)):(e.openBlock(),e.createElementBlock("div",Qi,[e.createElementVNode("button",{onClick:B[3]||(B[3]=e.withModifiers(P=>N(),["prevent","stop"])),class:"btn btn--close btn-outline-contrast"},[e.createVNode(M,{symbol:"x"})])]))],2)):e.createCommentVNode("",!0),e.createVNode(Oe,{modelValue:e.unref(u),"onUpdate:modelValue":B[4]||(B[4]=P=>e.isRef(u)?u.value=P: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(C.$slots,"button",{},()=>[e.createElementVNode("span",{class:"btn btn-outline-contrast",innerHTML:t.label||C.$t("common.selectFile")},null,8,Wi)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[e.unref(s)?(e.openBlock(),e.createElementBlock("span",ji,[...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,Ui)),e.createVNode(ot,{modelValue:l.value,"onUpdate:modelValue":B[6]||(B[6]=P=>l.value=P),footer:!1},{default:e.withCtx(()=>[l.value&&a.value?(e.openBlock(),e.createBlock(lt,{key:0,modelValue:a.value.src,"onUpdate:modelValue":B[5]||(B[5]=P=>a.value.src=P),"aspect-ratio":t.aspectRatio},{submit:e.withCtx(()=>[e.createElementVNode("button",{class:"btn btn-primary",onClick:e.withModifiers(h,["prevent","stop"])},e.toDisplayString(C.$t("common.save")),1)]),_:1},8,["modelValue","aspect-ratio"])):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])],2))}}),qi={class:"upload-group"},Ji=["innerHTML"],Gi={class:"upload-group__list"},Yi={class:"img-container"},Zi=["src"],Ki={class:"item-overlay"},Xi=["onClick"],_i={role:"button",class:"img-thumbnail d-flex justify-content-center align-items-center"},er={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:()=>R()},id:{type:String,default:()=>R()},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:c}){const n=t,o=c,l=e.ref(""),i=e.computed({get(){return n.modelValue},set(r){o("update:modelValue",r)}});function a(r){i.value.splice(r,1),o("update:modelValue",i.value)}return e.watch(l,async(r,s)=>{r&&s!==r&&(o("update:modelValue",[...i.value,r]),await e.nextTick(),l.value="")}),(r,s)=>(e.openBlock(),e.createElementBlock("div",qi,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,innerHTML:e.unref(G)(t.label)},null,8,Ji)):e.createCommentVNode("",!0),e.createElementVNode("div",Gi,[e.createVNode(Re,{modelValue:i.value,"onUpdate:modelValue":s[2]||(s[2]=u=>i.value=u),vertical:!1,class:"mb-3"},{"list-item":e.withCtx(({item:u,index:d})=>[e.createElementVNode("div",Yi,[e.createElementVNode("img",{src:`${u}${t.previewWidth?`?width=${t.previewWidth}`:""}`,class:"img-thumbnail"},null,8,Zi),e.createElementVNode("div",Ki,[e.createElementVNode("button",{onClick:e.withModifiers(A=>a(d),["prevent"]),class:"btn btn--close"},[e.createVNode(M,{symbol:"x"})],8,Xi),e.renderSlot(r.$slots,"item-overlay",{item:u,index:d})])])]),"list-append":e.withCtx(()=>[t.useImageUpload?(e.openBlock(),e.createBlock(we,{key:0,src:l.value,"onUpdate:src":s[0]||(s[0]=u=>l.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",_i,[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:l.value,"onUpdate:src":s[1]||(s[1]=u=>l.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",er,[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"]))]),_:3},8,["modelValue"])])]))}}),tr={class:"asset-uploader"},ar=["innerHTML"],nr=e.defineComponent({__name:"asset-uploader",props:{modelValue:{type:Array,default:()=>[]},name:{type:String,default:()=>R()},id:{type:String,default:()=>R()},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,showTypeDropdown:{type:Boolean,default:!1},typeOptions:{type:Array,default:()=>["background","overlay","object"]}},emits:["update:modelValue"],setup(t,{emit:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue.map(a=>a.src)},set(a){o("update:modelValue",a.map((r,s)=>{const u=n.showTypeDropdown&&n.modelValue[s]?.type||n.type;return{mediaType:n.modelValue[s]&&n.modelValue[s].mediaType||r.includes("data:image")?r.includes("data:image/svg")?"Svg":"Image":n.mediaTypeMap[r.split(".")[1]],src:r,name:n.modelValue[s]&&n.modelValue[s].name||`${n.name}-${s}`,...u?{type:u}:{}}}))}});function i(a,r){o("update:modelValue",n.modelValue.map((s,u)=>u===a?{...s,type:r}:s))}return(a,r)=>(e.openBlock(),e.createElementBlock("div",tr,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,innerHTML:e.unref(G)(t.label)},null,8,ar)):e.createCommentVNode("",!0),e.createVNode(it,{modelValue:l.value,"onUpdate:modelValue":r[0]||(r[0]=s=>l.value=s),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},e.createSlots({_:2},[t.showTypeDropdown?{name:"item-overlay",fn:e.withCtx(({index:s})=>[e.createVNode(se,{name:`${t.name}-type-${s}`,options:t.typeOptions,"model-value":t.modelValue[s]?.type||null,placeholder:"type","onUpdate:modelValue":u=>i(s,u)},null,8,["name","options","model-value","onUpdate:modelValue"])]),key:"0"}:void 0]),1032,["modelValue","endpoint","custom-fetch","auth-token","disabled","preview-width","base-response-path","accept","max-file-size","use-image-upload","max-image-width","aspect-ratio"])]))}}),lr=["id","popover"],ce=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:c}){const n=t,o=c,l=e.ref(),i=e.ref(),a=e.ref(!1),r=e.computed(()=>"ontouchstart"in window||navigator.maxTouchPoints>0);function s(){clearTimeout(i.value),n.hover&&l.value?.showPopover()}function u(){a.value=!0,clearTimeout(i.value),s()}function d(){a.value=!1,(n.hover||n.closeTimeout)&&(i.value=setTimeout(()=>{l.value?.hidePopover()},n.closeTimeout||n.hoverDelay))}e.watch(()=>n.modelValue,(m,f)=>{m&&!f?l.value?.matches(":popover-open")||l.value?.showPopover():!m&&f&&l.value?.matches(":popover-open")&&l.value?.hidePopover()});function A(m){m.newState==="open"?(n.closeTimeout&&!a.value&&(clearTimeout(i.value),i.value=setTimeout(()=>{a.value||l.value?.hidePopover()},n.closeTimeout)),n.modelValue||o("update:modelValue",!0)):m.newState==="closed"&&(a.value=!1,n.modelValue&&o("update:modelValue",!1))}return e.onMounted(()=>{if(l.value?.addEventListener("toggle",A),n.modelValue&&l.value?.showPopover(),!r.value){l.value?.addEventListener("mouseenter",u),l.value?.addEventListener("mouseleave",d);const m=document.querySelector(`[popovertarget="${n.id}"]`);m&&(m.addEventListener("mouseenter",u),m.addEventListener("mouseleave",d))}}),e.onBeforeUnmount(()=>{if(clearTimeout(i.value),l.value?.removeEventListener("toggle",A),!r.value){l.value?.removeEventListener("mouseenter",u),l.value?.removeEventListener("mouseleave",d);const m=document.querySelector(`[popovertarget="${n.id}"]`);m&&(m.removeEventListener("mouseenter",u),m.removeEventListener("mouseleave",d))}}),(m,f)=>(e.openBlock(),e.createElementBlock("span",{class:"popover-dialog",id:t.id,popover:t.type,ref_key:"popover",ref:l},[e.renderSlot(m.$slots,"default",{},()=>[f[0]||(f[0]=e.createTextVNode(" Popover content goes here. ",-1))])],8,lr))}}),or={class:"preset-uploader"},ir=["innerHTML"],rr={class:"preset-uploader__list"},sr=["popovertarget"],Ar=["src"],cr=["onClick"],dr={class:"preset-uploader__popover p-2 d-flex gap-2 align-items-start"},ur=["popovertarget"],mr=["src"],fr={class:"d-flex flex-column gap-2"},pr={role:"button",class:"btn btn-sm w-100 d-inline-flex align-items-center"},gr={role:"button",class:"btn btn-sm w-100 d-inline-flex align-items-center"},hr={key:1,class:"preset-group border border-2 rounded d-flex gap-1 p-1"},yr=["popovertarget"],br=["src"],kr=["src"],wr=["onClick"],Br={class:"preset-uploader__popover p-2 d-flex gap-2 align-items-start"},Cr=["popovertarget"],Vr=["src"],Er={class:"d-flex flex-column gap-2"},$r={role:"button",class:"img-thumbnail text-dark d-flex justify-content-center align-items-center"},Sr={role:"button",class:"img-thumbnail text-dark d-flex justify-content-center align-items-center"},Nr={class:"preset-uploader__popover p-2 d-flex gap-2 align-items-start"},Mr=["onClick"],vr={role:"button",class:"img-thumbnail d-flex justify-content-center align-items-center"},Dr={role:"button",class:"img-thumbnail text-dark d-flex justify-content-center align-items-center"},Ir=e.defineComponent({__name:"preset-uploader",props:{modelValue:{type:Array,default:()=>[]},name:{type:String,default:()=>R()},id:{type:String,default:()=>R()},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",jpeg:"Image",webp:"Image",mp4:"Video",webm:"Video"})},baseResponsePath:{type:String,default:"/api/v1/assets"},previewWidth:{type:Number,default:0},useImageUpload:{type:Boolean,default:!1},maxImageWidth:{type:Number,default:0},aspectRatio:Number,showTypeDropdown:{type:Boolean,default:!1},typeOptions:{type:Array,default:()=>["background","overlay","object"]}},emits:["update:modelValue"],setup(t,{emit:c}){const n=t,o=c;function l($){return $?.type==="preset"}function i($){if($.includes("data:image"))return $.includes("data:image/svg")?"Svg":"Image";const T=$.split(".").pop()?.split("?")[0]?.toLowerCase()??"";return n.mediaTypeMap[T]??""}const a=e.computed({get(){return n.modelValue},set($){o("update:modelValue",$)}}),r=e.ref("");e.watch(r,async($,T)=>{if($&&T!==$){const z={src:$,name:`${n.name}-${n.modelValue.length}`,mediaType:i($)};n.type&&n.typeOptions.includes(n.type)&&(z.type=n.type),o("update:modelValue",[...n.modelValue,z]),await e.nextTick(),r.value=""}});const s=e.reactive({}),u=e.reactive({}),d=e.reactive({}),A=e.reactive({}),m=e.reactive({}),f=e.reactive({}),y=e.reactive({});e.watch(m,$=>{for(const[T,z]of Object.entries($))if(!z){const v=Number(T);delete s[v],delete u[v]}},{deep:!0}),e.watch(f,$=>{for(const[T,z]of Object.entries($))if(!z){const v=Number(T);delete d[v],delete A[v]}},{deep:!0});function b($,T){T&&(s[$]=T)}function N($,T){T&&(d[$]=T,f[$]=!0)}function p($){const T=[...n.modelValue];T.splice($,1),o("update:modelValue",T)}function k($,T){o("update:modelValue",n.modelValue.map((z,v)=>v===$?{...z,type:T}:z))}function h($,T,z){const v=n.modelValue[$];o("update:modelValue",n.modelValue.map((S,H)=>H===$?{...S,items:{...S.items,[T]:{...v.items[T],type:z}}}:S))}function C($,T){u[$]=T,B($)}function B($){const T=n.modelValue[$],z=T.type||n.type||"item",v=s[$],S=u[$],H={type:"preset",items:{[z]:{src:T.src,thumbnail:T.src,type:z,mediaType:T.mediaType||i(T.src)},[S]:{src:v,thumbnail:v,type:S,mediaType:i(v)}}};delete s[$],delete u[$],m[$]=!1,o("update:modelValue",n.modelValue.map((V,F)=>F===$?H:V))}function P($,T){A[$]=T,x($)}function x($){const T=d[$],z=A[$],v=n.modelValue[$],S={...v,items:{...v.items,[z]:{src:T,thumbnail:T,type:z,mediaType:i(T)}}};delete d[$],delete A[$],f[$]=!1,o("update:modelValue",n.modelValue.map((H,V)=>V===$?S:H))}function _($,T){const z=n.modelValue[$],v=Object.keys(z.items).filter(S=>S!==T);if(v.length<=1){const S=v[0],H=S?z.items[S]:null;if(H){const V={src:H.src,name:`${n.name}-${$}`,type:H.type,mediaType:H.mediaType};o("update:modelValue",n.modelValue.map((F,D)=>D===$?V:F))}else p($)}else{const S={...z.items};delete S[T],o("update:modelValue",n.modelValue.map((H,V)=>V===$?{...z,items:S}:H))}}return($,T)=>(e.openBlock(),e.createElementBlock("div",or,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,innerHTML:e.unref(G)(t.label)},null,8,ir)):e.createCommentVNode("",!0),e.createElementVNode("div",rr,[e.createVNode(Re,{modelValue:a.value,"onUpdate:modelValue":T[2]||(T[2]=z=>a.value=z),vertical:!1,class:"mb-3"},{"list-item":e.withCtx(({item:z,index:v})=>[l(z)?(e.openBlock(),e.createElementBlock("div",hr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.items,(S,H)=>(e.openBlock(),e.createElementBlock("div",{key:H,class:"img-container",style:e.normalizeStyle(t.showTypeDropdown?{anchorName:`--${t.name}-si-${v}-${H}`}:{})},[t.showTypeDropdown?(e.openBlock(),e.createElementBlock("button",{key:0,class:"img-trigger",popovertarget:`${t.name}-si-${v}-${H}`},[e.createElementVNode("img",{src:S.thumbnail||S.src,class:"img-thumbnail border-0 p-0"},null,8,br)],8,yr)):(e.openBlock(),e.createElementBlock("img",{key:1,src:S.thumbnail||S.src,class:"img-thumbnail border-0 p-0"},null,8,kr)),e.createElementVNode("button",{onClick:e.withModifiers(V=>_(v,String(H)),["prevent"]),class:"btn btn--close"},[e.createVNode(M,{symbol:"x"})],8,wr),t.showTypeDropdown?(e.openBlock(),e.createBlock(ce,{key:2,id:`${t.name}-si-${v}-${H}`,modelValue:y[`${v}-${H}`],"onUpdate:modelValue":V=>y[`${v}-${H}`]=V,class:"preset-uploader__item-popover",style:e.normalizeStyle({positionAnchor:`--${t.name}-si-${v}-${H}`})},{default:e.withCtx(()=>[e.createElementVNode("div",Br,[e.createElementVNode("button",{class:"img-trigger",popovertarget:`${t.name}-si-${v}-${H}`,popovertargetaction:"hide"},[e.createElementVNode("img",{src:S.thumbnail||S.src,class:"img-thumbnail"},null,8,Vr)],8,Cr),e.createElementVNode("div",Er,[e.createVNode(se,{name:`${t.name}-si-type-${v}-${H}`,options:t.typeOptions,"model-value":S.type||null,placeholder:"layer type","onUpdate:modelValue":V=>h(v,String(H),V)},null,8,["name","options","model-value","onUpdate:modelValue"])])])]),_:2},1032,["id","modelValue","onUpdate:modelValue","style"])):e.createCommentVNode("",!0)],4))),128)),e.createElementVNode("div",{class:"img-container img-container--add",style:e.normalizeStyle({anchorName:`--${t.name}-ap-${v}`})},[t.useImageUpload?(e.openBlock(),e.createBlock(we,{key:0,src:"",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,"onUpdate:src":S=>N(v,S)},{button:e.withCtx(()=>[e.createElementVNode("span",$r,[e.createVNode(M,{symbol:"plus"})])]),_:1},8,["endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","max-image-width","aspect-ratio","onUpdate:src"])):(e.openBlock(),e.createBlock(ke,{key:1,src:"",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,"onUpdate:src":S=>N(v,S)},{button:e.withCtx(()=>[e.createElementVNode("span",Sr,[e.createVNode(M,{symbol:"plus"})])]),_:1},8,["endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","onUpdate:src"])),e.createVNode(ce,{id:`${t.name}-ap-${v}`,modelValue:f[v],"onUpdate:modelValue":S=>f[v]=S,class:"preset-uploader__anchor-popover",style:e.normalizeStyle({positionAnchor:`--${t.name}-ap-${v}`})},{default:e.withCtx(()=>[e.createElementVNode("div",Nr,[e.createVNode(se,{class:"mb-0",name:`${t.name}-add-type-${v}`,options:t.typeOptions,"model-value":A[v]||null,placeholder:"layer type","onUpdate:modelValue":S=>P(v,S)},null,8,["name","options","model-value","onUpdate:modelValue"])])]),_:2},1032,["id","modelValue","onUpdate:modelValue","style"])],4),e.createElementVNode("button",{onClick:e.withModifiers(S=>p(v),["prevent"]),class:"btn btn--close btn--close-preset"},[e.createVNode(M,{symbol:"x"})],8,Mr)])):(e.openBlock(),e.createElementBlock("div",{key:0,class:"img-container",style:e.normalizeStyle({anchorName:`--${t.name}-pp-${v}`})},[e.createElementVNode("button",{class:"img-trigger",popovertarget:`${t.name}-pp-${v}`},[e.createElementVNode("img",{src:z.thumbnail||z.src,class:"img-thumbnail"},null,8,Ar)],8,sr),e.createElementVNode("button",{onClick:e.withModifiers(S=>p(v),["prevent"]),class:"btn btn--close"},[e.createVNode(M,{symbol:"x"})],8,cr),e.createVNode(ce,{id:`${t.name}-pp-${v}`,modelValue:m[v],"onUpdate:modelValue":S=>m[v]=S,class:"preset-uploader__item-popover",style:e.normalizeStyle({positionAnchor:`--${t.name}-pp-${v}`})},{default:e.withCtx(()=>[e.createElementVNode("div",dr,[e.createElementVNode("button",{class:"img-trigger",popovertarget:`${t.name}-pp-${v}`,popovertargetaction:"hide"},[e.createElementVNode("img",{src:z.thumbnail||z.src,class:"img-thumbnail"},null,8,mr)],8,ur),e.createElementVNode("div",fr,[t.showTypeDropdown?(e.openBlock(),e.createBlock(se,{key:0,name:`${t.name}-type-${v}`,options:t.typeOptions,"model-value":z.type||null,placeholder:"item type","onUpdate:modelValue":S=>k(v,S)},null,8,["name","options","model-value","onUpdate:modelValue"])):e.createCommentVNode("",!0),s[v]?(e.openBlock(),e.createBlock(se,{key:2,name:`${t.name}-promote-type-${v}`,options:t.typeOptions,"model-value":u[v]||null,placeholder:"new layer type","onUpdate:modelValue":S=>C(v,S)},null,8,["name","options","model-value","onUpdate:modelValue"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[t.useImageUpload?(e.openBlock(),e.createBlock(we,{key:0,src:"",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,"onUpdate:src":S=>b(v,S)},{button:e.withCtx(()=>[e.createElementVNode("span",pr,[e.createVNode(M,{symbol:"plus"}),T[3]||(T[3]=e.createTextVNode(" Add layer",-1))])]),_:1},8,["endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","max-image-width","aspect-ratio","onUpdate:src"])):(e.openBlock(),e.createBlock(ke,{key:1,src:"",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,"onUpdate:src":S=>b(v,S)},{button:e.withCtx(()=>[e.createElementVNode("span",gr,[e.createVNode(M,{symbol:"plus"}),T[4]||(T[4]=e.createTextVNode(" Add layer",-1))])]),_:1},8,["endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","onUpdate:src"]))],64))])])]),_:2},1032,["id","modelValue","onUpdate:modelValue","style"])],4))]),"list-append":e.withCtx(()=>[t.useImageUpload?(e.openBlock(),e.createBlock(we,{key:0,src:r.value,"onUpdate:src":T[0]||(T[0]=z=>r.value=z),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",vr,[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:r.value,"onUpdate:src":T[1]||(T[1]=z=>r.value=z),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},{button:e.withCtx(()=>[e.createElementVNode("span",Dr,[e.createVNode(M,{symbol:"plus"})])]),_:1},8,["src","endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size"]))]),_:1},8,["modelValue"])])]))}}),Lr="https://router.project-osrm.org/route/v1";function rt(){const t=e.ref([]),c=e.ref(null),n=e.ref(null),o=e.ref([]),l=e.ref(!1),i=e.ref(""),a=e.computed(()=>t.value.length>1);function r(){t.value=[],c.value=null,n.value=null,o.value=[],i.value=""}async function s(u,d,A={}){if(!u||!d)return r(),null;l.value=!0;const m=A.customFetch||Ve.ofetch,f=(A.endpoint||Lr).replace(/\/$/,""),y=A.profile||"driving";try{const N=(await m(`${f}/${y}/${u.lng},${u.lat};${d.lng},${d.lat}`,{method:"GET",query:{alternatives:!1,overview:"full",steps:!0,geometries:"geojson"}}))?.routes?.[0];if(!N)throw new Error("No route available for these points.");return t.value=Array.isArray(N?.geometry?.coordinates)?N.geometry.coordinates.map(p=>[Number(p[1]),Number(p[0])]).filter(p=>Number.isFinite(p[0])&&Number.isFinite(p[1])):[],c.value=Number.isFinite(N?.distance)?Number(N.distance):null,n.value=Number.isFinite(N?.duration)?Number(N.duration):null,o.value=Array.isArray(N?.legs)?N.legs.flatMap(p=>Array.isArray(p?.steps)?p.steps.map(k=>Tr(k)):[]):[],i.value="",N}catch(b){return r(),i.value=b?.message||"Unable to load directions right now.",null}finally{l.value=!1}}return{routeCoordinates:t,distanceMeters:c,durationSeconds:n,steps:o,pending:l,error:i,hasRoute:a,fetchRoute:s,clearRoute:r}}function Tr(t){const c=`${t?.maneuver?.type||"continue"}`,n=t?.maneuver?.modifier?` ${t.maneuver.modifier}`:"",o=`${t?.name||""}`;return{instruction:`${Pr(c)}${n}${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 Pr(t){return t.charAt(0).toUpperCase()+t.slice(1)}const xr="https://nominatim.openstreetmap.org/search",zr="https://nominatim.openstreetmap.org/reverse";function st(){const t=e.ref([]),c=e.ref(!1),n=e.ref("");function o(){t.value=[],n.value=""}async function l(a,r={}){if(!a.trim())return o(),[];c.value=!0;const s=r.customFetch||Ve.ofetch;try{const u=await s(r.endpoint||xr,{method:"GET",headers:{Accept:"application/json",...r.language?{"Accept-Language":r.language}:{}},query:{q:a,format:"jsonv2",addressdetails:1,limit:r.limit||5}});return t.value=Array.isArray(u)?u.map((d,A)=>At(d,A,"geocoder")).filter(d=>!!d):[],n.value="",t.value}catch(u){return n.value=u?.message||"Unable to search locations right now.",t.value=[],[]}finally{c.value=!1}}async function i(a,r={}){c.value=!0;const s=r.customFetch||Ve.ofetch;try{const u=await s(r.reverseEndpoint||zr,{method:"GET",headers:{Accept:"application/json",...r.language?{"Accept-Language":r.language}:{}},query:{lat:a.lat,lon:a.lng,format:"jsonv2",addressdetails:1}}),d=At(u,0,"reverse-geocoder");return n.value="",d}catch(u){return n.value=u?.message||"Unable to resolve this location right now.",null}finally{c.value=!1}}return{results:t,pending:c,error:n,search:l,reverse:i,clearResults:o}}function At(t,c,n){const o=Number(t?.lat),l=Number(t?.lon??t?.lng);if(!Number.isFinite(o)||!Number.isFinite(l))return null;const i=`${t?.display_name||t?.name||"Location"}`,a=`${t?.name||i.split(",")[0]||"Location"}`.trim();return{id:`${n==="reverse-geocoder"?"reverse":"geo"}-${t?.place_id??c}`,title:a,address:i,lat:o,lng:l,source:n,raw:t}}function ct(t={}){const c=e.ref(null),n=e.ref(""),o=e.ref(!1),l=e.ref(!1),i=typeof window<"u"&&typeof navigator<"u"&&"geolocation"in navigator,a={enableHighAccuracy:!0,timeout:1e4,maximumAge:1e4,...t};let r=null;function s(f){c.value={lat:Number(f.latitude),lng:Number(f.longitude),accuracy:Number.isFinite(f.accuracy)?Number(f.accuracy):null},o.value=!1,n.value=""}function u(f){n.value=typeof f=="string"?f:f instanceof Error?f.message:f.message||"Unable to retrieve your location.",o.value=!1}async function d(){return i?(o.value=!0,new Promise(f=>{navigator.geolocation.getCurrentPosition(({coords:y})=>{s(y),f(c.value)},y=>{u(y),f(null)},a)})):(u("Geolocation is not supported in this browser."),null)}function A(){if(!i){u("Geolocation is not supported in this browser.");return}r===null&&(o.value=!0,l.value=!0,r=navigator.geolocation.watchPosition(({coords:f})=>{s(f)},f=>{u(f),l.value=!1},a))}function m(){if(!i||r===null){l.value=!1,o.value=!1;return}navigator.geolocation.clearWatch(r),r=null,l.value=!1,o.value=!1}return e.onBeforeUnmount(()=>{m()}),{supported:i,position:e.computed(()=>c.value),accuracy:e.computed(()=>c.value?.accuracy??null),error:n,pending:o,isTracking:l,locate:d,startTracking:A,stopTracking:m}}const Fr={class:"location-finder","data-testid":"location-finder"},Or={class:"location-finder__actions"},Rr=["disabled"],Hr={key:1,class:"location-finder__notice","data-testid":"location-finder-error"},Qr={class:"location-finder__map-panel"},Ur=["aria-label"],Wr={class:"location-finder__legend-item"},jr={class:"location-finder__legend-item"},qr={class:"location-finder__legend-item"},Jr={class:"location-finder__legend-item"},Gr={key:0,class:"location-finder__sidebar"},Yr={key:1,class:"location-finder__summary","data-testid":"location-finder-directions"},Zr={class:"location-finder__summary-title"},Kr={key:0,class:"location-finder__summary-copy"},Xr={class:"location-finder__summary-grid"},_r={class:"location-finder__summary-label"},es={"data-testid":"location-finder-distance"},ts={class:"location-finder__summary-label"},as={"data-testid":"location-finder-duration"},ns={key:0,class:"location-finder__steps"},ls={key:0},os={key:2,class:"location-finder__summary-copy"},is=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:c}){const n={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"},l=t,i=c,{t:a,te:r}=Pe.useI18n({useScope:"global"}),s=ct(),u=st(),d=rt(),A=e.ref(""),m=e.ref(K(I(l.modelValue))),f=e.ref(K(I(l.modelValue))?null:I(l.modelValue)),y=e.ref(W(l.modelValue)||W(l.center)||W(l.locations[0])||n),b=e.ref(!1),N=e.computed(()=>W(l.userLocation)),p=e.computed(()=>s.position.value||N.value),k=e.computed(()=>W(f.value)),h=e.computed(()=>W(m.value)),C=e.computed(()=>p.value||k.value),B=e.computed(()=>!C.value||!h.value?null:De(C.value,h.value)),P=e.computed(()=>W(l.modelValue)||k.value||h.value),x=e.computed(()=>s.error.value||u.error.value||d.error.value||""),_=e.computed(()=>l.showSearch||l.trackUser&&l.showTrackButton),$=e.computed(()=>l.enableDirections&&l.showDirectionsSummary),T=e.computed(()=>l.showSidebar||$.value),z=e.computed(()=>Be(d.distanceMeters.value)),v=e.computed(()=>Ie(d.durationSeconds.value)),S=e.computed(()=>({searchLabel:q("searchLabel",l.searchLabel),searchPlaceholder:q("searchPlaceholder",l.searchPlaceholder),resultsLabel:q("resultsLabel",l.resultsLabel),emptyText:q("emptyText",l.emptyText),locateButtonLabel:q("locateButtonLabel",l.locateButtonLabel),stopTrackingLabel:q("stopTrackingLabel",l.stopTrackingLabel),mapHelperText:q("mapHelperText",l.mapHelperText),directionsTitle:q("directionsTitle",l.directionsTitle),directionsEmptyText:q("directionsEmptyText",l.directionsEmptyText),distanceLabel:q("distanceLabel",l.distanceLabel),durationLabel:q("durationLabel",l.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")})),H=e.computed(()=>f.value?me(f.value):S.value.selectedLocationLabel),V=e.computed(()=>s.isTracking.value&&b.value?S.value.stopTrackingLabel:S.value.locateButtonLabel);e.watch(()=>l.modelValue,g=>{const w=I(g),L=K(w);L?(m.value=L,f.value=null):w&&(f.value=w);const U=W(g);U&&(y.value=U)},{immediate:!0}),e.watch(()=>l.center,g=>{const w=W(g);w&&(y.value=w)},{deep:!0}),e.watch(p,g=>{g&&b.value&&(y.value=g)},{deep:!0}),e.watch(B,g=>{i("update:distance",g)},{immediate:!0}),e.watch(A,async g=>{if(i("search",g),!l.enableGeocoding){u.clearResults();return}const w=g.trim();if(w.length<l.geocodingMinQueryLength){u.clearResults();return}await u.search(w,{endpoint:l.geocodingEndpoint,customFetch:l.customGeocodingFetch,limit:l.geocodingLimit})}),e.watch(()=>({enabled:l.enableDirections,origin:p.value,destination:P.value,profile:l.routeProfile}),async({enabled:g,origin:w,destination:L,profile:U})=>{if(!g||!w||!L||ee(w,L)){d.clearRoute();return}await d.fetchRoute(w,L,{endpoint:l.directionsEndpoint,profile:U,customFetch:l.customDirectionsFetch})},{immediate:!0,deep:!0}),e.onMounted(async()=>{l.autoLocate&&l.trackUser&&await Ae()});const F=e.computed(()=>{const g=ye(A.value).trim();return g?l.locations.filter(w=>[me(w),ve(w)].filter(Boolean).some(L=>ye(L).includes(g))):l.locations}),D=e.computed(()=>u.results.value.map(g=>({id:g.id,title:g.title,address:g.address,lat:g.lat,lng:g.lng,source:g.source}))),Q=e.computed(()=>{if(!A.value.trim())return l.locations;const g=F.value;return g.length?g:l.locations}),j=e.computed(()=>Q.value),de=e.computed(()=>te(Q.value,l.enableGeocoding?D.value:[])),ge=e.computed(()=>Array.from(new Set(de.value.map(g=>X(g))))),he=e.computed(()=>j.value.map(g=>{const w=W(g);return w?{id:O(g),label:me(g),...w,type:h.value&&ee(w,h.value)?"selected":"list"}:null}).filter(g=>!!g)),ue=e.computed(()=>b.value&&p.value?p.value:y.value||P.value||p.value||W(j.value[0])||n);function q(g,w){const L=l.messages?.[g];if(typeof L=="string"&&L.trim())return L;if(typeof w=="string"&&w.trim())return w;const U=`locationFinder.${String(g)}`;return r(U)?String(a(U)):o[g]}function W(g){if(!g)return null;const w=Number(g.lat),L=Number(g.lng);return!Number.isFinite(w)||!Number.isFinite(L)?null:{lat:w,lng:L}}function I(g){if(!g)return null;const w=W(g);return w?{...g,...w}:null}function O(g){return g?typeof g!="object"?g:g.id??g.value??X(g):null}function K(g){return g&&l.locations.find(w=>O(w)===O(g)||ee(W(w),W(g)))||null}function ye(g){return`${g??""}`.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase()}function me(g){return`${g.title||g.label||g.name||"Location"}`}function ve(g){return`${g.address||g.description||g.subtitle||""}`}function X(g){const w=me(g),L=ve(g);return L?`${w} — ${L}`:w}function te(g,w){const L=[...g];return w.forEach(U=>{L.some(Le=>O(Le)===O(U)||ee(W(Le),W(U)))||L.push(U)}),L}function ee(g,w){return!g||!w?!1:Math.abs(g.lat-w.lat)<1e-6&&Math.abs(g.lng-w.lng)<1e-6}function De(g,w){const L=FA=>FA*(Math.PI/180),be=L(w.lat-g.lat),Le=L(w.lng-g.lng),PA=L(g.lat),xA=L(w.lat),mt=Math.sin(be/2)**2+Math.cos(PA)*Math.cos(xA)*Math.sin(Le/2)**2,zA=2*Math.atan2(Math.sqrt(mt),Math.sqrt(1-mt));return Math.round(6371e3*zA)}function Be(g){return g===null||!Number.isFinite(g)?"—":g>=1e3?`${(g/1e3).toFixed(1)} km`:`${Math.round(g)} m`}function Ie(g){if(g===null||!Number.isFinite(g))return"—";const w=Math.max(1,Math.round(g/60));if(w<60)return`${w} min`;const L=Math.floor(w/60),U=w%60;return U?`${L} h ${U} min`:`${L} h`}function le(g){const w=I(g),L=K(w);if(b.value=!1,!w){i("update:modelValue",null);return}m.value=L||w;const U=W(w);U&&(y.value=U),i("update:modelValue",w),i("select",w)}function Ce(g){const w=I(g),L=K(w);if(b.value=!1,!w){i("update:modelValue",null);return}L?(m.value=L,f.value=null):f.value=w;const U=W(w);U&&(y.value=U),i("update:modelValue",w),i("select",w)}function ae(g){const w=de.value.find(L=>X(L)===g||me(L)===g);if(w){if(K(w)){le(w),f.value=null;return}Ce(w)}}function ie(g){le(g)}function J(g){if(g.id==="user-location"&&p.value){y.value=p.value,b.value=!0,i("track-user",p.value);return}const w=j.value.find(L=>O(L)===g.id)||j.value.find(L=>{const U=W(L);return U&&Math.abs(U.lat-g.lat)<1e-6&&Math.abs(U.lng-g.lng)<1e-6});if(w){le(w);return}f.value&&(O(f.value)===g.id||ee(W(f.value),{lat:g.lat,lng:g.lng}))&&Ce(f.value)}async function ne(g){if(y.value=g,b.value=!1,!l.interactive)return;const w=j.value.find(U=>{const be=W(U);return be&&Math.abs(be.lat-g.lat)<1e-6&&Math.abs(be.lng-g.lng)<1e-6});if(w){le(w);return}const L=await fe(g,S.value.pinnedLocationTitle);Ce(L)}async function fe(g,w){if(!l.enableGeocoding)return{id:`pin-${g.lat}-${g.lng}`,title:w,lat:g.lat,lng:g.lng};const L=await u.reverse(g,{reverseEndpoint:l.reverseGeocodingEndpoint,customFetch:l.customGeocodingFetch});return L?{id:L.id,title:L.title||w,address:L.address,lat:L.lat,lng:L.lng,source:L.source}:{id:`pin-${g.lat}-${g.lng}`,title:w,lat:g.lat,lng:g.lng}}async function Ae(){if(s.isTracking.value&&b.value){s.stopTracking(),b.value=!1;return}if(p.value){y.value=p.value,b.value=!0,i("track-user",p.value),!s.isTracking.value&&!N.value&&s.startTracking();return}const g=await s.locate();g&&(y.value=g,b.value=!0,i("track-user",g),s.startTracking())}return(g,w)=>(e.openBlock(),e.createElementBlock("div",Fr,[_.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["location-finder__toolbar",{"location-finder__toolbar--actions-only":!l.showSearch}])},[l.showSearch?(e.openBlock(),e.createBlock(Ze,{key:0,modelValue:A.value,"onUpdate:modelValue":w[0]||(w[0]=L=>A.value=L),class:"location-finder__search",label:S.value.searchLabel,placeholder:S.value.searchPlaceholder,options:ge.value,disabled:t.disabled,"onUpdate:selection":ae},null,8,["modelValue","label","placeholder","options","disabled"])):e.createCommentVNode("",!0),e.createElementVNode("div",Or,[t.trackUser&&l.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(s).pending.value,"data-testid":"location-finder-locate",onClick:Ae},e.toDisplayString(V.value),9,Rr)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),x.value?(e.openBlock(),e.createElementBlock("p",Hr,e.toDisplayString(x.value),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["location-finder__layout",{"location-finder__layout--with-summary":$.value,"location-finder__layout--full-width":!T.value}])},[e.createElementVNode("div",Qr,[e.createVNode(_e,{class:"location-finder__map",center:ue.value,markers:he.value,"model-value":k.value,"user-location":p.value,"user-location-label":S.value.userLocationLabel,"selected-location-label":H.value,"route-coordinates":e.unref(d).routeCoordinates.value,"route-color":t.routeColor,"route-weight":t.routeWeight,"selection-radius":t.selectionRadius,"selection-radius-center":P.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":S.value.mapHelperText,"onUpdate:modelValue":ne,onMarkerClick:J},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"]),l.showLegend?(e.openBlock(),e.createElementBlock("div",{key:0,class:"location-finder__legend","data-testid":"location-finder-legend","aria-label":S.value.legendAriaLabel},[e.createElementVNode("span",Wr,[w[2]||(w[2]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--list"},null,-1)),e.createTextVNode(" "+e.toDisplayString(S.value.legendLocations),1)]),e.createElementVNode("span",jr,[w[3]||(w[3]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--selected"},null,-1)),e.createTextVNode(" "+e.toDisplayString(S.value.legendSelected),1)]),e.createElementVNode("span",qr,[w[4]||(w[4]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--search"},null,-1)),e.createTextVNode(" "+e.toDisplayString(S.value.legendSearchResult),1)]),e.createElementVNode("span",Jr,[w[5]||(w[5]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--user"},null,-1)),e.createTextVNode(" "+e.toDisplayString(S.value.userLocationLabel),1)])],8,Ur)):e.createCommentVNode("",!0)]),T.value?(e.openBlock(),e.createElementBlock("aside",Gr,[l.showSidebar?(e.openBlock(),e.createBlock(et,{key:0,modelValue:m.value,"onUpdate:modelValue":w[1]||(w[1]=L=>m.value=L),class:"location-finder__results",locations:j.value,label:S.value.resultsLabel,"empty-text":S.value.emptyText,onSelect:ie},null,8,["modelValue","locations","label","empty-text"])):e.createCommentVNode("",!0),$.value?(e.openBlock(),e.createElementBlock("div",Yr,[e.createElementVNode("p",Zr,e.toDisplayString(S.value.directionsTitle),1),e.unref(d).pending.value?(e.openBlock(),e.createElementBlock("p",Kr,e.toDisplayString(S.value.loadingRoute),1)):e.unref(d).hasRoute.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",Xr,[e.createElementVNode("div",null,[e.createElementVNode("p",_r,e.toDisplayString(S.value.distanceLabel),1),e.createElementVNode("strong",es,e.toDisplayString(z.value),1)]),e.createElementVNode("div",null,[e.createElementVNode("p",ts,e.toDisplayString(S.value.durationLabel),1),e.createElementVNode("strong",as,e.toDisplayString(v.value),1)])]),t.showDirectionsSteps&&e.unref(d).steps.value.length?(e.openBlock(),e.createElementBlock("ol",ns,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d).steps.value.slice(0,5),(L,U)=>(e.openBlock(),e.createElementBlock("li",{key:`${L.instruction}-${U}`},[e.createElementVNode("span",null,e.toDisplayString(L.instruction),1),L.name?(e.openBlock(),e.createElementBlock("small",ls,e.toDisplayString(L.name),1)):e.createCommentVNode("",!0)]))),128))])):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock("p",os,e.toDisplayString(S.value.directionsEmptyText),1))])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],2)]))}}),rs={class:"carousel d-flex"},ss=["title"],As=["onClick"],cs=["title"],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:c}){const n=c,o=e.ref(),l=e.ref();function i(){o.value.scrollTo({top:0,left:o.value.scrollLeft-o.value.clientWidth>0?o.value.scrollLeft-o.value.clientWidth:0,behavior:"smooth"})}function a(){o.value.scrollTo({top:0,left:o.value.scrollLeft-o.value.clientWidth<=l.value.clientWidth?o.value.scrollLeft+o.value.clientWidth:l.value.clientWidth,behavior:"smooth"})}function r(s){n("update:modelValue",s)}return(s,u)=>(e.openBlock(),e.createElementBlock("div",rs,[t.navigation?(e.openBlock(),e.createElementBlock("button",{key:0,class:"carousel__control btn btn-link text-light",type:"button",onClick:e.withModifiers(i,["prevent","stop"]),title:s.$t("common.backward")},[e.createVNode(M,{symbol:"chevron-left"})],8,ss)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"viewport",ref:o,class:"carousel__viewport flex-grow-1"},[e.createElementVNode("div",{ref_key:"track",ref:l,class:"carousel__track d-flex justify-center align-items-center"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(d,A)=>e.renderSlot(s.$slots,"carousel-item",{key:d.src,item:d,index:A},()=>[e.createElementVNode("div",{class:e.normalizeClass(["carousel__item",A===t.modelValue?"selected":""]),onClick:m=>r(A)},e.toDisplayString(d),11,As)])),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(a,["prevent","stop"]),title:s.$t("common.forward")},[e.createVNode(M,{symbol:"chevron-right"})],8,cs)):e.createCommentVNode("",!0)]))}}),ds={class:"media-thumbnails"},us=["onClick","title"],ms={key:0,class:"img-container"},fs={key:0,class:"media-thumbnails__count-badge"},ps={key:2,class:"img-container"},gs=e.defineComponent({__name:"media-thumbnails",props:{modelValue:{default:null},config:{type:Object,default:null},messages:{type:Object,default:{}},assets:{type:Array,default:[]},stacked:{type:Boolean,default:!1},showCount:{type:Boolean,default:!1}},emits:["update:modelValue","select"],setup(t,{emit:c}){const n=c,o=e.ref(-1);function l(i){o.value=i,n("update:modelValue",i),n("select",i)}return(i,a)=>(e.openBlock(),e.createElementBlock("div",ds,[e.createVNode(dt,{items:t.assets},{"carousel-item":e.withCtx(r=>[e.createElementVNode("button",{type:"button",class:e.normalizeClass(["carousel__item media-thumbnails__thumbnail",r.index===t.modelValue||r.index===o.value?"is-active":""]),onClick:s=>l(r.index),title:`${i.$t("thumbnails.thumbnail")} ${r.index+1}`},[r.item.type==="preset"&&r.item.thumbnail?(e.openBlock(),e.createElementBlock("div",ms,[e.createVNode(oe,{src:r.item.thumbnail,class:"img-fluid"},null,8,["src"])])):r.item.type==="preset"?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["img-container img-container--multi",{"img-container--stacked":t.stacked}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.item.items,(s,u)=>(e.openBlock(),e.createBlock(oe,{key:u,src:s.thumbnail||s.src,class:"img-fluid"},null,8,["src"]))),128)),t.showCount&&Object.keys(r.item.items||{}).length?(e.openBlock(),e.createElementBlock("span",fs,e.toDisplayString(Object.keys(r.item.items||{}).length),1)):e.createCommentVNode("",!0)],2)):(e.openBlock(),e.createElementBlock("div",ps,[e.createVNode(oe,{src:r.item.thumbnail||r.item.src,class:"img-fluid"},null,8,["src"])]))],10,us)]),_:1},8,["items"])]))}}),hs={class:"progress-steps"},ys={class:"progress-steps__list"},bs={class:"progress-step"},ks=["checked","id","value","disabled","read-only","required","onChange"],ws=["for"],Bs=["innerHTML"],Cs=["for"],Vs=["innerHTML"],Es=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:c}){const n=t,o=c;function l(i){o("update:modelValue",i),i>=n.progress&&o("update:progress",i)}return(i,a)=>(e.openBlock(),e.createElementBlock("div",hs,[e.createElementVNode("ul",ys,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.steps,(r,s)=>(e.openBlock(),e.createElementBlock("li",{key:s,class:e.normalizeClass(["progress-steps__step",{"progress-steps__step--disabled":s>t.progress+(t.reveal?1:0),"progress-steps__step--active":s===(t.modelValue||0)}])},[e.renderSlot(i.$slots,"step",{},()=>[e.createElementVNode("div",bs,[e.createElementVNode("input",{type:"radio",checked:s<=(t.progress||0),id:`step-${s}`,name:"step",class:"form-check-input",value:r.value,disabled:r.disabled||s>t.progress+(t.reveal?1:0),"read-only":r.readOnly,required:r.required,onChange:u=>l(s)},null,40,ks),e.createElementVNode("label",{for:`step-${s}`},[e.renderSlot(i.$slots,"button",{step:r},()=>[e.createElementVNode("span",{class:"btn rounded-circle",innerHTML:e.unref(G)(r.text||"")},null,8,Bs)])],8,ws),e.createElementVNode("label",{for:`step-${s}`},[e.renderSlot(i.$slots,"label",{step:r},()=>[e.createElementVNode("span",{class:"form-check-label",innerHTML:e.unref(G)(r.label||"")},null,8,Vs)])],8,Cs)])])],2))),128))])]))}}),$s={class:"hint-system"},Ss=["innerHTML"],Ns=["innerHTML"],Ms={key:1,class:"hint-system__hint-content"},vs=["disabled"],Ds=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:c}){const n=t,o=c,l=e.ref(n.modelValue);e.watch(()=>n.modelValue,u=>{l.value=u});const i=e.computed(()=>n.maxHints!==void 0?n.maxHints:n.hints.length),a=e.computed(()=>l.value<i.value),r=e.computed(()=>n.hints.slice(0,l.value));function s(){if(!a.value)return;const u=l.value;l.value++,o("update:modelValue",l.value),o("hint-revealed",{hint:n.hints[u],index:u,penaltyTotal:l.value*n.penalty})}return(u,d)=>(e.openBlock(),e.createElementBlock("div",$s,[t.description?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:e.unref(G)(t.description),class:"hint-system__description"},null,8,Ss)):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,(A,m)=>(e.openBlock(),e.createElementBlock("li",{key:m,class:"hint-system__hint"},[e.renderSlot(u.$slots,"hint",{hint:A,index:m,isNew:m===l.value-1},()=>[t.htmlContent?(e.openBlock(),e.createElementBlock("div",{key:0,class:"hint-system__hint-content",innerHTML:e.unref(G)(A.content||"")},null,8,Ns)):(e.openBlock(),e.createElementBlock("div",Ms,e.toDisplayString(A.content),1))])]))),128))]),_:3})):e.createCommentVNode("",!0),e.renderSlot(u.$slots,"trigger",{revealNext:s,canReveal:a.value,revealedCount:l.value,total:i.value},()=>[e.createElementVNode("button",{type:"button",class:"hint-system__trigger d-block w-100 text-center",disabled:!a.value,onClick:s},e.toDisplayString(t.label),9,vs)])]))}}),Is={class:"popover-tooltip"},Ls=["popovertarget","disabled","aria-describedby","aria-label"],Ts={class:"popover-tooltip__content d-flex flex-column"},Ps={key:0,class:"popover-tooltip__header d-flex p-3 border-bottom"},xs=["innerHTML"],zs={class:"popover-tooltip__body"},Fs=["innerHTML"],Os={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:c}){const n=t,o=c,l=$e(()=>n.title),i=$e(()=>n.content),a=e.computed({get(){return n.modelValue},set(u){o("update:modelValue",u)}}),r=e.ref(),s=e.ref();return(u,d)=>(e.openBlock(),e.createElementBlock("span",Is,[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",{},()=>[d[3]||(d[3]=e.createElementVNode("span",{class:"popover-tooltip__trigger"}," i ",-1))])],8,Ls),e.createVNode(ce,{id:t.id,modelValue:a.value,"onUpdate:modelValue":d[2]||(d[2]=A=>a.value=A),hover:t.hover,"hover-delay":t.hoverDelay,ref_key:"dialog",ref:s,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",Ps,[t.title?(e.openBlock(),e.createElementBlock("h5",{key:0,class:"popover-tooltip__title",innerHTML:e.unref(l)},null,8,xs)):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",class:"btn-close ms-auto border-radius-none","aria-label":"Close",onClick:d[0]||(d[0]=A=>a.value=!1)})])):e.createCommentVNode("",!0),e.createElementVNode("div",zs,[e.renderSlot(u.$slots,"default",{},()=>[e.createElementVNode("span",{innerHTML:e.unref(i)},null,8,Fs)])]),t.footer?(e.openBlock(),e.createElementBlock("div",Os,[e.renderSlot(u.$slots,"footer"),e.createElementVNode("button",{type:"button",class:"btn ms-auto",onClick:d[1]||(d[1]=A=>a.value=!1)},e.toDisplayString(u.$t("common.close")),1)])):e.createCommentVNode("",!0)])]),_:3},8,["id","modelValue","hover","hover-delay","class"])]))}}),Hs={class:"popover-notification__header d-flex justify-content-between mb-2"},Qs={class:"popover-notification__title"},Us=["onClick"],Ws=["innerHTML"],js=240,qs=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},collapseItems:{type:Number,default:3}},setup(t,{expose:c}){const n=t,o=e.ref([]),l=e.ref([]),i=e.ref(null),a=new Map,r=e.computed(()=>o.value.map(p=>({...p,content:G(p.content||"")}))),s=e.ref(!1),u=e.computed(()=>s.value?[...r.value].reverse():r.value);function d(p,k){k===!1&&f(p)}function A(p){const k=a.get(p);k&&(clearTimeout(k),a.delete(p))}function m(p){const k=p.closeTimeout??n.closeTimeout;A(p.id),k&&a.set(p.id,window.setTimeout(()=>{A(p.id),f(p)},k))}function f(p){p.visible===!1&&a.has(p.id)||(A(p.id),p.visible=!1,a.set(p.id,window.setTimeout(()=>{o.value=o.value.filter(k=>k.id!==p.id),a.delete(p.id),o.value.length===0&&(s.value=!1)},js)))}function y(p){if(n.collapsible&&o.value.length>=n.collapseItems){const h=o.value.shift();h&&A(h.id)}n.collapsible&&o.value.length+1>=n.collapseItems&&(s.value=!0),o.value.forEach(h=>{h.stackIndex=(h.stackIndex??0)+1});const k={...p,closeTimeout:p.closeTimeout??n.closeTimeout,visible:!0,stackIndex:0};o.value.push(k),m(k)}e.watch(()=>n.items,(p,k)=>{const h=p.filter(C=>!k.some(B=>B.id===C.id));h.length&&(l.value=[...l.value,...h],b())});function b(){i.value!==null||!l.value.length||(i.value=window.setTimeout(()=>{i.value=null;const p=l.value.shift();p&&y(p),l.value.length>0&&b()},o.value.length?n.debounceItem:0))}function N(p){l.value.push(p),b()}return e.onMounted(()=>{l.value=[...n.items],n.collapsible&&l.value.length>=n.collapseItems&&(s.value=!0),b()}),e.onBeforeUnmount(()=>{i.value!==null&&clearTimeout(i.value);for(const p of a.values())clearTimeout(p);a.clear()}),c({addItem:N}),(p,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["popover-notifications",{"popover-notifications--stacked":s.value}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(h,C)=>(e.openBlock(),e.createBlock(ce,{key:h.id,id:h.id,"close-timeout":0,type:"manual",class:"popover-notification",modelValue:h.visible,"onUpdate:modelValue":[B=>h.visible=B,B=>d(h,B)],style:e.normalizeStyle({"--stack-index":h.stackIndex??C})},{default:e.withCtx(()=>[e.renderSlot(p.$slots,"item",{item:h,removeItem:d},()=>[e.createElementVNode("div",Hs,[e.createElementVNode("span",Qs,e.toDisplayString(h.title),1),e.createElementVNode("button",{type:"button",class:"btn btn-close p-0",onClick:e.withModifiers(B=>d(h,!1),["stop"]),"aria-label":"Close notification"},null,8,Us)]),e.createElementVNode("span",{innerHTML:h.content},null,8,Ws)])]),_:2},1032,["id","modelValue","onUpdate:modelValue","style"]))),128))],2))}}),Js=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:c}){const n=t,o=c,l=e.ref(),i=e.ref(""),a=e.ref(),r=e.ref(!0);async function s(){if(!l.value||!r.value)return"";const d=l.value;if(!d.isConnected)return"";try{n.emitPending&&o("update:pending",!0);const A=d.firstElementChild;if(!A)return"";const m=await pt(A,{backgroundColor:"rgba(0, 0, 0, 0)",scale:1,...n.options});if(!r.value||!l.value||!d.isConnected)return"";const f=m.toDataURL();if(o("update:modelValue",f),n.emitPending&&o("update:pending",!1),n.debug){const y=new Image;y.src=f,document.body.appendChild(y)}return f}catch(A){return r.value&&n.emitPending&&o("update:pending",!1),console.warn("dom-renderer: Render failed",A),""}}const u=xe.debounce(async()=>{i.value=await s()},300,{trailing:!0,leading:!1});return e.onMounted(()=>{const d=l.value;n.renderUpdates&&(a.value=new MutationObserver(async A=>{!r.value||!d.isConnected||(n.emitPending&&o("update:pending",!0),u())}),a.value.observe(d,{attributes:!0,childList:!0,characterData:!0,subtree:!0})),setTimeout(()=>{n.emitPending&&o("update:pending",!0),u()},500)}),e.onBeforeUnmount(()=>{r.value=!1,a.value&&a.value.disconnect(),u.cancel()}),(d,A)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dom-renderer",{"off-screen":!t.debug}]),ref_key:"renderer",ref:l,style:e.normalizeStyle(t.fixedWidth>0?{width:`${t.fixedWidth}px`}:{})},[e.renderSlot(d.$slots,"default")],6))}}),Gs={class:"qr-code"},Ys=["innerHTML"],Zs=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:c,emit:n}){const o=t,l=e.ref(),i=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 a(s=null,u=null){typeof window<"u"&&(l.value&&(l.value.innerHTML=""),new Qe(s||i.value).append(l.value))}function r(){new Qe({...i.value,width:1200,height:1200}).download({name:o.filename,extension:"png"})}return e.watch(()=>i.value,a,{deep:!0,immediate:!0}),e.onMounted(()=>{typeof window<"u"&&a()}),c({download:r}),(s,u)=>(e.openBlock(),e.createElementBlock("div",Gs,[o.download?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn btn-outline-contrast mb-3",onClick:r,innerHTML:s.$t("qrlink.download")},null,8,Ys)):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"canvas",ref:l},null,512))]))}}),Ks={class:"link-sharing"},Xs={key:0,class:"link-sharing__links container"},_s={class:"row"},eA={key:0,class:"col-12 col-md-6"},tA=["href"],aA={class:"caption"},nA={key:1,class:"col-12 col-md-6"},lA=["href"],oA={class:"caption"},iA={key:2,class:"col-12 col-md-6"},rA={class:"caption"},sA={key:3,class:"col-12 col-md-6"},AA=["href"],cA={class:"caption"},dA={key:4,class:"col-12 col-md-6"},uA=["href"],mA={class:"caption"},fA={key:5,class:"col-12 col-md-6"},pA={class:"caption"},gA={key:6,class:"col-12 col-md-6"},hA=["href"],yA={class:"caption"},bA={key:1,class:"link-sharing__instructions pt-5"},kA={class:"row"},wA={class:"col-12 text-center py-0"},BA={class:"mb-5"},CA=t=>t.replace(/<(?:.|\n)*?>/gm,""),VA=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 c=t,n=e.ref(!1),o=e.computed(()=>encodeURIComponent(c.url));e.computed(()=>encodeURIComponent(c.media));const l=e.computed(()=>CA(c.text)),i=e.computed(()=>!!(navigator&&navigator.userAgent&&/Mobi|Android/i.test(navigator.userAgent)));async function a(){const r=document.createElement("textarea");document.body.appendChild(r),r.value=c.url,r.select(),r.setSelectionRange(0,99999),navigator.clipboard.writeText(r.value),document.body.removeChild(r)}return(r,s)=>(e.openBlock(),e.createElementBlock("div",Ks,[n.value?(e.openBlock(),e.createElementBlock("div",bA,[e.createElementVNode("div",kA,[e.createElementVNode("div",wA,[e.createElementVNode("div",BA,[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:s[1]||(s[1]=e.withModifiers(u=>n.value=!n.value,["prevent"]))},[e.createVNode(M,{symbol:"arrow-left"}),e.createTextVNode(" "+e.toDisplayString(r.$t("common.back")),1)])])])])])):(e.openBlock(),e.createElementBlock("div",Xs,[e.createElementVNode("div",_s,[t.services.facebook?(e.openBlock(),e.createElementBlock("div",eA,[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",aA,e.toDisplayString(r.$t("sharing.facebook")),1)],8,tA)])):e.createCommentVNode("",!0),t.services.bluesky?(e.openBlock(),e.createElementBlock("div",nA,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`https://bsky.app/intent/compose?text=${l.value}${l.value?"%20":""}${t.url}`,target:"_blank",rel:"noopener"},[e.createVNode(M,{symbol:"bluesky-logo"}),e.createElementVNode("span",oA,e.toDisplayString(r.$t("sharing.bluesky")),1)],8,lA)])):e.createCommentVNode("",!0),t.services.instagram?(e.openBlock(),e.createElementBlock("div",iA,[e.createElementVNode("button",{type:"button",class:"link-sharing__link btn btn-primary",onClick:s[0]||(s[0]=e.withModifiers(u=>n.value=!n.value,["prevent"]))},[e.createVNode(M,{symbol:"instagram"}),e.createElementVNode("span",rA,e.toDisplayString(r.$t("sharing.instagram")),1)])])):e.createCommentVNode("",!0),t.services.linkedin?(e.openBlock(),e.createElementBlock("div",sA,[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",cA,e.toDisplayString(r.$t("sharing.linkedin")),1)],8,AA)])):e.createCommentVNode("",!0),t.services.whatsapp&&i.value?(e.openBlock(),e.createElementBlock("div",dA,[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",mA,e.toDisplayString(r.$t("sharing.whatsapp")),1)],8,uA)])):e.createCommentVNode("",!0),t.services.clipboard?(e.openBlock(),e.createElementBlock("div",fA,[e.createElementVNode("button",{type:"button",class:"link-sharing__link btn btn-primary",onClick:e.withModifiers(a,["prevent","stop"])},[e.createVNode(M,{symbol:"copy"}),e.createElementVNode("span",pA,e.toDisplayString(r.$t("sharing.clipboard")),1)])])):e.createCommentVNode("",!0),t.services.mailto?(e.openBlock(),e.createElementBlock("div",gA,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`mailto:?subject=${t.subject}&body=${l.value}%0D%0A${t.url}`,target:"_blank",rel:"noopener"},[e.createVNode(M,{symbol:"mail"}),e.createElementVNode("span",yA,e.toDisplayString(r.$t("sharing.mailto")),1)],8,hA)])):e.createCommentVNode("",!0)])]))]))}}),EA={class:"base-form"},$A=e.defineComponent({__name:"base-form",props:{id:{},name:{},variant:{},disabled:{type:Boolean},pending:{type:Boolean}},setup(t){function c(l){console.log("input",l)}function n(l){console.log("reset",l)}function o(l){console.log("submit",l)}return(l,i)=>(e.openBlock(),e.createElementBlock("div",EA,[e.createElementVNode("form",{ref:"form",onInput:c,onReset:n,onSubmit:e.withModifiers(o,["prevent"])},[e.renderSlot(l.$slots,"default")],544)]))}}),SA={class:"touch-wrapper__controls"},NA={class:"btn-group",role:"group"},MA=e.defineComponent({__name:"touch-wrapper",props:{modelValue:{type:Number,default:1}},emits:["update:modelValue"],setup(t,{emit:c}){const o=e.getCurrentInstance()?.appContext?.config?.globalProperties?.$config||{iconSprite:"/symbol-defs.svg"},l=t,i=c,a=e.ref();function r(d){const A=l.modelValue+d;i("update:modelValue",d===0?1:A>=1?A:1)}function s(d){if(d.ctrlKey){d.preventDefault();const A=0-d.deltaY*.01;r(A)}}function u(d){d.preventDefault();const{scale:A}=d,m=A>1?A*.01:0-A;r(m)}return e.onMounted(()=>{a.value&&(a.value.addEventListener("wheel",s,!1),a.value.addEventListener("gesturestart",u,!1),a.value.addEventListener("gesturechange",u,!1),a.value.addEventListener("gestureend",u,!1))}),(d,A)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"touchElement",ref:a,class:"touch-wrapper"},[e.renderSlot(d.$slots,"controls",{on:{setScale:r}},()=>[e.createElementVNode("div",SA,[e.createElementVNode("div",NA,[e.createElementVNode("button",{type:"button",class:"btn",onClick:A[0]||(A[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:A[1]||(A[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:A[2]||(A[2]=m=>r(1))},[e.createVNode(M,{symbol:"plus","base-path":e.unref(o).iconSprite},null,8,["base-path"])])])])]),e.renderSlot(d.$slots,"default")],512))}});let Me=null;async function vA(){if(typeof window>"u")return null;if(Me)return Me;const t=await import("canvas-confetti");return Me=t.default||t,Me}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:He(55,125),spread:He(50,70),particleCount:He(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 He(t,c){return Math.random()*(c-t)+t}const DA=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 c=t,n=e.ref(null),o=e.computed(()=>({...ut[c.preset],items:ut[c.preset].items.map((a,r)=>({...a,...c.items[r],...c.colors.length?{colors:c.colors}:{}}))}));async function l(a){return new Promise(r=>{(typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):u=>setTimeout(u,16))(()=>n.value?.confetti?.(JSON.parse(JSON.stringify(a)))),setTimeout(()=>r(),0)})}async function i(){await Promise.all(o.value.items.map(a=>new Promise(r=>setTimeout(()=>{r(l(a))},a.timeout||0)))),c.loop&&i()}return e.onMounted(async()=>{if(typeof window<"u"&&n.value){const a=await vA();if(!a)return;n.value.confetti=n.value?.confetti||a.create(n.value,{resize:!0}),i()}}),(a,r)=>(e.openBlock(),e.createElementBlock("canvas",{class:"canvas-confetti",ref_key:"canvas",ref:n},null,512))}}),IA=["popovertarget"],LA=["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:0},focusHeight:{type:Number,default:0},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 c=t,n=e.ref(null),o=e.ref(null),l=e.ref(null),i=e.ref(!1),a=e.ref(!1),r=e.ref(!1),s=e.ref(!1),u=e.ref(null),d=e.ref(0),A=e.ref(0),m=e.ref(0),f=e.ref(0),y=e.computed(()=>Number.isFinite(c.focusWidth)&&c.focusWidth>0&&Number.isFinite(c.focusHeight)&&c.focusHeight>0&&m.value>0&&f.value>0&&c.focusWidth<=m.value&&c.focusHeight<=f.value),b=e.computed(()=>m.value>0&&f.value>0&&!y.value),N=e.computed(()=>r.value&&!a.value&&m.value>0&&f.value>0),p=e.computed(()=>b.value?{width:`${m.value}px`,height:`${f.value}px`,left:"0px",top:"0px"}:{width:`${c.focusWidth}px`,height:`${c.focusHeight}px`,left:`${d.value}px`,top:`${A.value}px`}),k=e.computed(()=>{const D=m.value*c.zoom,Q=f.value*c.zoom;return{width:`${D}px`,height:`${Q}px`,transform:y.value&&!a.value?`translate(${-d.value*c.zoom}px, ${-A.value*c.zoom}px)`:"none",transformOrigin:"top left"}});function h(){if(!o.value)return;const D=o.value.getBoundingClientRect();m.value=D.width,f.value=D.height}function C(){u.value&&(clearTimeout(u.value),u.value=null)}function B(){C(),i.value=!0}function P(){C(),u.value=setTimeout(()=>{!r.value&&!s.value&&!a.value&&(i.value=!1),u.value=null},c.hoverDelay||100)}function x(D,Q){if(!o.value)return;if(b.value){d.value=0,A.value=0;return}const j=o.value.getBoundingClientRect(),de=D-j.left,ge=Q-j.top,he=Math.min(Math.max(de-c.focusWidth/2,0),Math.max(j.width-c.focusWidth,0)),ue=Math.min(Math.max(ge-c.focusHeight/2,0),Math.max(j.height-c.focusHeight,0));d.value=he,A.value=ue}function _(){if(!l.value||!a.value||b.value)return;const D=l.value.getBoundingClientRect(),Q=Math.max(0,d.value*c.zoom-D.width/2+c.focusWidth*c.zoom/2),j=Math.max(0,A.value*c.zoom-D.height/2+c.focusHeight*c.zoom/2);l.value.scrollTo({left:Q,top:j})}function $(D){h(),x(D.clientX,D.clientY)}function T(D){r.value=!0,h(),x(D.clientX,D.clientY),a.value||B()}function z(){r.value=!1,a.value||P()}function v(D){a.value&&(i.value=!0,h(),x(D.clientX,D.clientY))}function S(){a.value&&e.nextTick(_)}function H(){s.value=!0,B()}function V(){s.value=!1,P()}function F(D){a.value&&(i.value=!i.value,D instanceof MouseEvent&&x(D.clientX,D.clientY))}return e.onMounted(()=>{a.value="ontouchstart"in window||navigator.maxTouchPoints>0,h()}),e.watch(i,async D=>{D&&a.value&&(await e.nextTick(),_())}),(D,Q)=>(e.openBlock(),e.createElementBlock("span",{class:"image-zoom",popovertarget:t.popoverId,ref_key:"wrapper",ref:n},[e.createElementVNode("div",{class:"image-zoom__target",ref_key:"target",ref:o,onPointermove:$,onPointerenter:T,onPointerleave:z,onPointerdown:v,onPointerup:S,onPointercancel:z,onClick:e.withModifiers(F,["prevent"])},[e.renderSlot(D.$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"])]),N.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"image-zoom__focus",style:e.normalizeStyle(p.value)},null,4)):e.createCommentVNode("",!0)],544),e.createVNode(ce,{id:t.popoverId,modelValue:i.value,"onUpdate:modelValue":Q[0]||(Q[0]=j=>i.value=j),hover:!1,"hover-delay":t.hoverDelay,"close-timeout":t.closeTimeout,class:e.normalizeClass(["image-zoom__popover",{"image-zoom__popover--full":b.value}]),role:"tooltip",onMouseenter:H,onMouseleave:V},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["image-zoom__preview-wrapper",{"image-zoom__preview-wrapper--full":b.value}])},[e.createElementVNode("div",{class:e.normalizeClass(["image-zoom__preview",{"image-zoom__preview--full":b.value}]),ref_key:"preview",ref:l},[e.createElementVNode("img",{class:e.normalizeClass(["image-zoom__preview-image",{"image-zoom__preview-image--full":b.value}]),src:t.src,alt:t.alt,style:e.normalizeStyle(k.value),draggable:"false"},null,14,LA)],2)],2)]),_:1},8,["id","modelValue","hover-delay","close-timeout","class"])],8,IA))}});E.Accordion=Ot,E.AccordionItem=Tt,E.AssetUploader=nr,E.AutoSuggest=Ze,E.BaseButton=qe,E.BaseCamera=xo,E.BaseCarousel=dt,E.BaseForm=$A,E.BaseHeadline=wt,E.BaseImage=oe,E.BaseInput=pe,E.BaseMap=_e,E.BaseParagraph=Ct,E.CanvasConfetti=DA,E.CheckGroup=al,E.ColorPalette=Jl,E.CustomHtml=bl,E.DomRenderer=Js,E.FileUpload=ke,E.HintSystem=Ds,E.ImageCrop=nt,E.ImageCropResize=lt,E.ImageResize=at,E.ImageUpload=we,E.ImageZoom=TA,E.InputCheckbox=Xt,E.InputColor=Wl,E.InputDatepicker=Gn,E.InputDatetime=aa,E.InputDropdown=se,E.InputFile=Oe,E.InputPasscode=Xn,E.InputPassword=Ye,E.InputTextarea=Gt,E.LinkSharing=VA,E.LoadingSpinner=Ee,E.LocationFinder=is,E.LocationList=et,E.MediaThumbnails=gs,E.ModalDialog=ot,E.PopoverDialog=ce,E.PopoverNotifications=qs,E.PopoverTooltip=Rs,E.PresetUploader=Ir,E.ProgressSteps=Es,E.QrCode=Zs,E.RadioButtons=Al,E.RadioGroup=Ne,E.RteEditor=Rl,E.SelectMedia=Bl,E.SortableList=Re,E.SvgIcon=M,E.TouchWrapper=MA,E.UploadGroup=it,E.useCameraFilter=Ke,E.useDirections=rt,E.useGeocoding=st,E.useGeolocation=ct,Object.defineProperty(E,Symbol.toStringTag,{value:"Module"})}));
|
|
4
|
+
`]),value:a.value||a,checked:a.value?a.value===t.modelValue?.value:a===t.modelValue,disabled:t.disabled,"read-only":t.readOnly,required:t.required,onChange:s=>o(a)},null,42,fl),e.renderSlot(l.$slots,"option-label",{option:a,index:r},()=>[e.createElementVNode("label",{class:"form-check-label",for:`${t.id}-${r}`,innerHTML:e.unref(Y)(a.text||"")},null,8,pl)])],2))),128)),e.renderSlot(l.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:t.id},e.toDisplayString(t.label),9,gl)):e.createCommentVNode("",!0)])]))}}),hl={class:"radio-buttons"},yl=["for"],bl=e.defineComponent({__name:"radio-buttons",props:{modelValue:{type:null,default:""},options:{type:Array,default:[]},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){o("update:modelValue",i)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",hl,[e.createVNode(ze,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=r=>l.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,yl)]),_:1},8,["modelValue","options","name","id","disabled","required"])]))}}),kl=["id","name","multiple","accept","disabled"],wl={class:"input__input-group input-group"},Bl=["value","id","name","disabled"],Cl=["for","disabled"],Vl={class:"btn btn-outline-contrast"},El=["for"],$l=["innerHTML"],Ye=e.defineComponent({__name:"input-file",props:{modelValue:{type:Array,default:[]},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c;function l(s){const u=s.target&&s.target.files;u&&(a.splice(0,a.length),Array.from(u).forEach(d=>{if(n.maxFileSize&&d.size>n.maxFileSize){console.warn(`File ${d.name} exceeds the ${n.maxFileSize} bytes size limit and will not be added.`);return}a.push(d)}))}const i=e.ref(),a=e.reactive([]),r=e.computed(()=>a&&a.map(s=>s.name));return e.watch(()=>n.modelValue,(s,u)=>{s.length===0&&(i.value.value=null)},{deep:!0}),e.watch(()=>a,(s,u)=>{o("update:modelValue",s)},{deep:!0}),(s,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["input input-file","input-file--primary"])},[e.createElementVNode("input",{ref_key:"input",ref:i,type:"file",id:t.id,name:t.name,class:"d-none",onChange:l,multiple:t.multiple,accept:t.accept,disabled:t.disabled},null,40,kl),e.createElementVNode("div",wl,[e.renderSlot(s.$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,Bl),e.renderSlot(s.$slots,"input-append",{},()=>[e.createElementVNode("label",{for:t.id,disabled:t.disabled},[e.renderSlot(s.$slots,"button",{},()=>[e.createElementVNode("span",Vl,e.toDisplayString(s.$t("common.selectFile")),1)])],8,Cl)])]),e.createElementVNode("label",{for:t.id},[e.renderSlot(s.$slots,"label",{},()=>[e.createElementVNode("span",{class:"input__label",innerHTML:e.unref(Y)(`${t.label}${t.required?" *":""}`)},null,8,$l)])],8,El)]))}}),Sl={key:0,class:"custom-html"},Nl=["innerHTML"],vl=e.defineComponent({__name:"custom-html",props:{content:{}},setup(t){const c=e.ref(!1);return e.onMounted(()=>{window!==void 0&&(c.value=!0)}),(n,o)=>c.value?(e.openBlock(),e.createElementBlock("div",Sl,[e.renderSlot(n.$slots,"default",{},()=>[e.createElementVNode("div",{class:"custom-html__content",innerHTML:t.content},null,8,Nl)])])):e.createCommentVNode("",!0)}}),Ml={class:"select-media"},Dl=["for"],Ll=e.defineComponent({__name:"select-media",props:{modelValue:{type:null,default:""},assets:{type:Array,default:[]},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){const a=n.assets.find(r=>r.id===i);o("update:modelValue",n.emitKey?a[n.emitKey]:a),n.emitKey&&n.emitKey!=="id"&&o("update:selection",a.id)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",Ml,[e.createVNode(ze,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=r=>l.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===l.value}]),role:"button"},[t.assets[r.index].thumbnail?(e.openBlock(),e.createBlock(ae,{key:0,src:t.assets[r.index].thumbnail,alt:t.assets[r.index].id},null,8,["src","alt"])):e.createCommentVNode("",!0)],10,Dl)]),_:1},8,["modelValue","options","name","id","disabled","required"])]))}}),Il={key:0,class:"rte-editor__controls mb-2"},Tl=["disabled"],Pl=["disabled"],xl={class:"btn-group"},zl=["disabled"],Fl=["disabled"],Ol={class:"btn-group"},Rl={class:"dropdown"},Hl={class:"btn dropdown-toggle btn-light","data-bs-toggle":"dropdown",role:"button",type:"button"},Ql={class:"dropdown-menu"},Ul={class:"dropdown"},Wl={class:"btn dropdown-toggle btn-light","data-bs-toggle":"dropdown",role:"button",type:"button"},jl={class:"dropdown-menu"},ql={class:"btn-group"},Gl=["disabled"],Jl=["disabled"],Yl=["title"],Zl=e.defineComponent({inheritAttrs:!1,__name:"rte-editor",props:{modelValue:{type:String,default:""},disabled:{type:Boolean,default:!1},iconBasePath:{type:String,default:"/rte-icons-defs.svg"},allowFullscreen:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:c}){const n=t,o=c,l=e.ref(!1),i=e.ref(!1),a=e.shallowRef(void 0),r=e.shallowRef(null);e.onMounted(async()=>{const[{Editor:A,mergeAttributes:m},{EditorContent:f},{default:y},{default:b},{default:S},{default:p},{default:k}]=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")]);r.value=f,a.value=new A({content:n.modelValue,onUpdate:()=>{o("update:modelValue",a.value?.getHTML())},extensions:[p.configure({bold:!1,link:!1}),k.extend({addAttributes(){return{class:{default:null}}},parseHTML(){return[{tag:"strong"},{tag:"b"}]},renderHTML({HTMLAttributes:h}){return["strong",m(this.options.HTMLAttributes,h),0]}}),b.configure({types:["heading","paragraph"]}),y,S.extend({addAttributes(){return{...this.parent?.(),class:{default:null},id:{default:null},title:{default:null}}},parseHTML(){return[{tag:"a[href]",getAttrs:h=>({href:h.getAttribute("href"),target:h.getAttribute("target"),rel:h.getAttribute("rel"),class:h.getAttribute("class"),id:h.getAttribute("id"),title:h.getAttribute("title")})},{tag:"a:not([href])",getAttrs:h=>({href:null,target:h.getAttribute("target"),rel:h.getAttribute("rel"),class:h.getAttribute("class"),id:h.getAttribute("id"),title:h.getAttribute("title")})}]},renderHTML({HTMLAttributes:h}){if(!h.href){const{href:N,target:B,rel:T,...O}=h;return["a",m(O),0]}return["a",m(this.options.HTMLAttributes,h),0]}}).configure({openOnClick:!1,autolink:!0,defaultProtocol:"https",protocols:["http","https"],HTMLAttributes:{target:"_blank",rel:"noopener noreferrer"}})]})}),e.onBeforeUnmount(()=>{a.value?.destroy()}),e.watch(()=>n.modelValue,(A,m)=>{if(a.value){if(a.value.getHTML()===A)return;a.value.commands.setContent(A)}});function s(){const A=a.value?.getAttributes("link").href,m=window.prompt("URL",A);if(m!==null){if(m===""){a.value?.chain().focus().extendMarkRange("link").unsetLink().run();return}try{a.value?.chain().focus().extendMarkRange("link").setLink({href:m}).run()}catch(f){alert(f.message)}}}const u=()=>{a.value?.commands.setContent(`<textarea>${a.value.getHTML()}</textarea>`),l.value=!0},d=()=>{a.value?.commands.setContent(a.value.getText()),l.value=!1};return(A,m)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body",disabled:!i.value},[e.createElementVNode("div",{class:e.normalizeClass([i.value?"":A.$attrs.class,"rte-editor",{"rte-editor--fullscreen":i.value}])},[a.value?(e.openBlock(),e.createElementBlock("div",Il,[l.value?(e.openBlock(),e.createElementBlock("button",{key:1,class:"btn btn-sm btn-light is-active",onClick:d,disabled:!a.value.can().chain().focus().toggleCode().run(),title:"Toggle Source"},[e.createVNode(D,{symbol:"source","base-path":t.iconBasePath},null,8,["base-path"])],8,Pl)):(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("code")}]),onClick:u,disabled:!a.value.can().chain().focus().toggleCode().run(),title:"Toggle Source"},[e.createVNode(D,{symbol:"source","base-path":t.iconBasePath},null,8,["base-path"])],10,Tl)),e.createElementVNode("div",xl,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("bold")}]),onClick:m[0]||(m[0]=f=>a.value?.chain().focus().toggleBold().run()),disabled:!a.value.can().chain().focus().toggleBold().run(),title:"Toggle Bold"},[e.createVNode(D,{symbol:"bold","base-path":t.iconBasePath},null,8,["base-path"])],10,zl),e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("italic")}]),onClick:m[1]||(m[1]=f=>a.value?.chain().focus().toggleItalic().run()),disabled:!a.value.can().chain().focus().toggleItalic().run(),title:"Toggle Italic"},[e.createVNode(D,{symbol:"italic","base-path":t.iconBasePath},null,8,["base-path"])],10,Fl)]),e.createElementVNode("div",Ol,[e.createElementVNode("div",Rl,[e.createElementVNode("button",Hl,[a.value.isActive("heading",{level:1})?(e.openBlock(),e.createBlock(D,{key:0,symbol:"h1","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive("heading",{level:2})?(e.openBlock(),e.createBlock(D,{key:1,symbol:"h2","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive("heading",{level:3})?(e.openBlock(),e.createBlock(D,{key:2,symbol:"h3","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive("heading",{level:4})?(e.openBlock(),e.createBlock(D,{key:3,symbol:"h4","base-path":t.iconBasePath},null,8,["base-path"])):(e.openBlock(),e.createBlock(D,{key:4,symbol:"headline","base-path":t.iconBasePath},null,8,["base-path"]))]),e.createElementVNode("ul",Ql,[e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive("heading",{level:1})}]),onClick:m[2]||(m[2]=f=>a.value?.chain().focus().setHeading({level:1}).run()),title:"Set Heading 1"},[e.createVNode(D,{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:m[3]||(m[3]=f=>a.value?.chain().focus().setHeading({level:2}).run()),title:"Set Heading 2"},[e.createVNode(D,{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:m[4]||(m[4]=f=>a.value?.chain().focus().setHeading({level:3}).run()),title:"Set Heading 3"},[e.createVNode(D,{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:m[5]||(m[5]=f=>a.value?.chain().focus().setHeading({level:4}).run()),title:"Set Heading 4"},[e.createVNode(D,{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:m[6]||(m[6]=f=>a.value?.chain().focus().setParagraph().run()),title:"Set Paragraph"},[e.createVNode(D,{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:m[7]||(m[7]=f=>a.value?.chain().focus().toggleBulletList().run()),title:"Toggle Bullet List"},[e.createVNode(D,{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:m[8]||(m[8]=f=>a.value?.chain().focus().toggleOrderedList().run()),title:"Toggle Ordered List"},[e.createVNode(D,{symbol:"ordered-list","base-path":t.iconBasePath},null,8,["base-path"])],2)]),e.createElementVNode("div",Ul,[e.createElementVNode("button",Wl,[a.value.isActive({textAlign:"center"})?(e.openBlock(),e.createBlock(D,{key:0,symbol:"align-center","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive({textAlign:"left"})?(e.openBlock(),e.createBlock(D,{key:1,symbol:"align-left","base-path":t.iconBasePath},null,8,["base-path"])):a.value.isActive({textAlign:"right"})?(e.openBlock(),e.createBlock(D,{key:2,symbol:"align-right","base-path":t.iconBasePath},null,8,["base-path"])):(e.openBlock(),e.createBlock(D,{key:3,symbol:"align-justify","base-path":t.iconBasePath},null,8,["base-path"]))]),e.createElementVNode("ul",jl,[e.createElementVNode("li",null,[e.createElementVNode("button",{class:e.normalizeClass(["btn btn-sm btn-light",{"is-active":a.value.isActive({textAlign:"left"})}]),onClick:m[9]||(m[9]=f=>a.value?.chain().focus().setTextAlign("left").run())},[e.createVNode(D,{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:m[10]||(m[10]=f=>a.value?.chain().focus().setTextAlign("center").run())},[e.createVNode(D,{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:m[11]||(m[11]=f=>a.value?.chain().focus().setTextAlign("right").run())},[e.createVNode(D,{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:m[12]||(m[12]=f=>a.value?.chain().focus().setTextAlign("right").run())},[e.createVNode(D,{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:m[13]||(m[13]=f=>a.value.chain().focus().unsetLink().run()),title:"Unset Link"},[e.createVNode(D,{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:s,title:"Set Link"},[e.createVNode(D,{symbol:"link","base-path":t.iconBasePath},null,8,["base-path"])],2)),e.createElementVNode("div",ql,[e.createElementVNode("button",{class:"btn btn-sm btn-light",onClick:m[14]||(m[14]=f=>a.value?.chain().focus().undo().run()),disabled:!a.value.can().chain().focus().undo().run(),title:"Undo"},[e.createVNode(D,{symbol:"undo","base-path":t.iconBasePath},null,8,["base-path"])],8,Gl),e.createElementVNode("button",{class:"btn btn-sm btn-light",onClick:m[15]||(m[15]=f=>a.value?.chain().focus().redo().run()),disabled:!a.value.can().chain().focus().redo().run(),title:"Redo"},[e.createVNode(D,{symbol:"redo","base-path":t.iconBasePath},null,8,["base-path"])],8,Jl)]),t.allowFullscreen?(e.openBlock(),e.createElementBlock("button",{key:4,class:"btn btn-sm btn-light ms-auto",onClick:m[16]||(m[16]=f=>i.value=!i.value),title:i.value?"Exit Fullscreen":"Fullscreen"},[e.createVNode(D,{symbol:i.value?"close":"maximize","base-path":t.iconBasePath},null,8,["symbol","base-path"])],8,Yl)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value),{class:"rte-editor__content",editor:a.value},null,8,["editor"]))],2)],8,["disabled"]))}}),Kl={class:"input-color"},Xl={class:"base-input__color-swatch"},_l=["name","id","disabled","read-only","required","aria-label"],eo=e.defineComponent({__name:"input-color",props:{modelValue:{type:[String,Number,Boolean,Date],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){o("update:modelValue",i)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",Kl,[e.createVNode(ke,{modelValue:l.value,"onUpdate:modelValue":a[1]||(a[1]=r=>l.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",Xl,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":a[0]||(a[0]=s=>l.value=s),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,_l),[[e.vModelText,l.value]])])]),_:1},8,["modelValue","type","id","name","placeholder","pattern","label","disabled","read-only","required","maxlength"])]))}}),to={class:"color-palette"},ao=["for"],no=e.defineComponent({__name:"color-palette",props:{modelValue:{type:[String],default:""},colors:{type:Array,default:["#000000","#FFFFFF"]},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},label:{type:String},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue},set(i){o("update:modelValue",i)}});return(i,a)=>(e.openBlock(),e.createElementBlock("div",to,[e.createVNode(ze,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=r=>l.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,ao)]),_:1},8,["modelValue","options","name","id","label","disabled","required"])]))}}),lo=["id"],oo=["for","innerHTML"],io={class:"dropdown"},ro={class:"caption"},so=["innerHTML"],Ao={class:"caption__text"},co={class:"d-block text-truncate"},uo={class:"dropdown-menu"},mo={class:"form-check d-flex"},fo=["value","id","name","label","required","disabled"],po=["value","id","name","label","required","disabled"],go=["for"],Ae=e.defineComponent({__name:"input-dropdown",props:{id:{type:String},name:{type:String,default:()=>`dropdown-${H()}`},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:c}){const{t:n}=je.useI18n(),o=t,l=c,i=e.computed({get(){return o.multiple&&!o.modelValue?[]:o.modelValue},set(s){l("update:modelValue",s)}}),a=e.computed(()=>o.options&&o.options.map(s=>(s=typeof s=="string"?{text:s,value:s}:s,{...s,active:o.modelValue&&s.value&&(o.exactMatch?o.modelValue===s.value:o.multiple?o.modelValue.includes(s.value):o.modelValue===s.value)}))),r=e.computed(()=>{if(!o.modelValue)return o.placeholder||`${n("common.select")}`;if(o.multiple&&Array.isArray(o.modelValue)&&o.modelValue.length)return a.value.reduce((s,u)=>o.modelValue.includes(u.value)?`${s}${s?", ":""}${u.text}`:s,"");if(!o.multiple){const s=a.value.find(u=>typeof u.value=="object"&&u.value!==null?JSON.stringify(u.value)===JSON.stringify(o.modelValue):u.value===o.modelValue);return s?s.text:o.placeholder||`${n("common.select")}`}return o.placeholder||`${n("common.select")}`});return(s,u)=>(e.openBlock(),e.createElementBlock("div",{class:"input input-dropdown",id:`${t.id||t.name}`},[e.renderSlot(s.$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,oo)):e.createCommentVNode("",!0)]),e.createElementVNode("div",io,[e.createVNode(nt,{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",ro,[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,so)):e.createCommentVNode("",!0)]),_:1}),e.createElementVNode("span",Ao,[e.createElementVNode("span",co,e.toDisplayString(t.toggleCaption||r.value),1)])])]),_:1},8,["id","title","color","outlined","disabled"]),e.createElementVNode("ul",uo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(d,A)=>(e.openBlock(),e.createElementBlock("li",{key:`${d.value}-${A}`},[e.createElementVNode("div",{class:e.normalizeClass(["dropdown-item",d.active&&"active"])},[e.createElementVNode("div",mo,[t.multiple?e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"checkbox","onUpdate:modelValue":u[0]||(u[0]=m=>i.value=m),value:d.value,key:`${t.name}-${d.value}-${A}__if`,id:`${t.name}-${d.value}-${A}`,name:t.name,label:d.text,required:t.required,disabled:d.selectable===!1,class:"form-check-input"},null,8,fo)),[[e.vModelCheckbox,i.value]]):e.withDirectives((e.openBlock(),e.createElementBlock("input",{type:"radio","onUpdate:modelValue":u[1]||(u[1]=m=>i.value=m),value:d.value,key:`${t.name}-${d.value}-${A}__else`,id:`${t.name}-${d.value}-${A}`,name:t.name,label:d.text,required:t.required,disabled:d.selectable===!1,class:"form-check-input visually-hidden"},null,8,po)),[[e.vModelRadio,i.value]]),e.createElementVNode("label",{class:"form-check-label flex-grow-1",onclick:"event.stopPropagation",for:`${t.name}-${d.value}-${A}`},e.toDisplayString(d.text),9,go)])],2)]))),128))])])],8,lo))}}),ho={key:0,class:"auto-suggest__suggestions position-relative"},yo={class:"suggestions dropdown-menu show w-100 mt-2"},bo=["onClick"],ko=["innerHTML"],rt=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:c}){const n=t,o=c,l=e.ref(),i=e.ref(!1),a=e.computed({get(){return n.modelValue},set(f){o("update:modelValue",f)}}),r=e.computed(()=>{const f=new RegExp(`(${a.value})`,"i");return a.value?n.options.filter(y=>f.test(y)):n.options}),s=e.computed(()=>{const f=new RegExp(`(${a.value})`,"i");return r.value.map(y=>{const b=y.replace(f,"<strong>$1</strong>");return Y(b)})});e.watch(()=>n.options,(f,y)=>{f.length&&(i.value=!0)},{deep:!0});function u(){n.options.length&&(i.value=!0)}function d(f){i.value=!1;const y=r.value[f];o("update:modelValue",y),o("update:selection",y)}const A=e.ref();function m(f){const y=f.target;i.value&&y&&!l.value.contains(y)&&(i.value=!1)}return e.onBeforeMount(()=>{A.value=document.addEventListener("click",m)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",A.value)}),(f,y)=>(e.openBlock(),e.createElementBlock("div",{class:"auto-suggest",ref_key:"container",ref:l},[e.createElementVNode("div",{class:"auto-suggest__input",onFocusCapture:u},[e.renderSlot(f.$slots,"default",{},()=>[e.createVNode(ke,e.mergeProps({modelValue:a.value,"onUpdate:modelValue":y[0]||(y[0]=b=>a.value=b)},f.$props),null,16,["modelValue"])])],32),i.value&&r.value.length?(e.openBlock(),e.createElementBlock("div",ho,[e.createElementVNode("ul",yo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(b,S)=>(e.openBlock(),e.createElementBlock("li",{key:b,class:"suggestions__item dropdown-item",onClick:e.withModifiers(p=>d(S),["prevent"])},[e.createElementVNode("p",{class:"text-truncate my-2",innerHTML:b},null,8,ko)],8,bo))),128))])])):e.createCommentVNode("",!0)],512))}});function st(t){const c=e.computed(()=>{if(!t.tintColor)return null;const a=t.tintColor.replace("#",""),r=parseInt(a.substring(0,2),16),s=parseInt(a.substring(2,4),16),u=parseInt(a.substring(4,6),16);return{r,g:s,b:u}});function n(a,r,s){if(t.filter==="none"&&!t.tintColor)return;const u=a.getImageData(0,0,r,s),d=u.data;if(t.filter==="grayscale")for(let A=0;A<d.length;A+=4){const m=.299*d[A]+.587*d[A+1]+.114*d[A+2];d[A]=m,d[A+1]=m,d[A+2]=m}else if(t.filter==="sepia")for(let A=0;A<d.length;A+=4){const m=d[A],f=d[A+1],y=d[A+2];d[A]=Math.min(255,.393*m+.769*f+.189*y),d[A+1]=Math.min(255,.349*m+.686*f+.168*y),d[A+2]=Math.min(255,.272*m+.534*f+.131*y)}if(t.tintColor&&c.value){const{r:A,g:m,b:f}=c.value,y=t.tintIntensity;for(let b=0;b<d.length;b+=4){const S=d[b],p=d[b+1],k=d[b+2],h=S*A/255,N=p*m/255,B=k*f/255;d[b]=S+(h-S)*y,d[b+1]=p+(N-p)*y,d[b+2]=k+(B-k)*y}}a.putImageData(u,0,0)}async function o(a){if(typeof a!="string")return a.complete&&a.naturalWidth>0||await new Promise((s,u)=>{a.onload=()=>s(),a.onerror=()=>u(new Error("Failed to load image element"))}),a;const r=new Image;return await new Promise((s,u)=>{r.onload=()=>s(),r.onerror=()=>u(new Error("Failed to load image source")),r.src=a}),r}async function l(a,r={}){const s=await o(a),u=document.createElement("canvas"),d=r.width||s.naturalWidth||s.width,A=r.height||s.naturalHeight||s.height;u.width=d,u.height=A;const m=u.getContext("2d");if(!m)throw new Error("Could not create canvas context");return m.drawImage(s,0,0,d,A),n(m,d,A),u.toDataURL(r.mimeType||"image/png",r.quality)}async function i(a,r={}){const s=await l(a,r);return(await fetch(s)).blob()}return{tintRgb:c,applyFilterToCanvas:n,applyFilterToImage:l,applyFilterToImageBlob:i}}const wo={class:"zoom-slider"},Bo=["min","max","step","value"],Co={class:"zoom-slider__ticks"},Vo={name:"ZoomSlider",inheritAttrs:!1},Eo=e.defineComponent({...Vo,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:c}){const n=t,o=c,l=e.computed(()=>n.ticks),i=e.computed(()=>Math.round((n.ticks-1)/2)),a=e.computed(()=>Math.round((n.ticks-1)/10));function r(s){o("update:modelValue",parseFloat(s.target.value))}return(s,u)=>(e.openBlock(),e.createElementBlock("div",wo,[e.createElementVNode("input",{type:"range",min:t.min,max:t.max,step:t.step,value:t.modelValue,onInput:r,"aria-label":"Zoom"},null,40,Bo),e.createElementVNode("div",Co,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,d=>(e.openBlock(),e.createElementBlock("span",{key:d,class:e.normalizeClass(["zoom-slider__tick",{"zoom-slider__tick--major":(d-1)%i.value===0,"zoom-slider__tick--mid":(d-1)%a.value===0&&(d-1)%i.value!==0}])},null,2))),128))])]))}}),$o="data:image/png;base64,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",So={class:"camera__preview"},No={key:0,class:"camera__bg-notification"},vo=["innerHTML"],Mo=["width","height"],Do={key:1,class:"camera__countdown-overlay"},Lo=["innerHTML","data-countdown"],Io=["src"],To={key:3,class:"camera__zoom-slider"},Po={class:"camera__controls"},xo={class:"container"},zo={class:"row"},Fo={class:"col"},Oo={class:"btn-group"},Ro={key:0},Ho={key:1},Qo={key:0,class:"camera__select-device"},Uo={class:"col"},Wo={class:""},jo={name:"BaseCamera",inheritAttrs:!1},At={"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}},qo=e.defineComponent({...jo,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:()=>$o},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:()=>At},zoom:{type:Number,default:1},enableZoomSlider:{type:Boolean,default:!1},correctOrientation:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{expose:c,emit:n}){const o=t,l=n,i=e.ref(),a=e.ref(),r=e.ref(!1),s=e.ref([]),u=e.ref(),d=e.ref(),A=e.ref(!1),m=e.ref(!1),f=e.ref(0),y=e.ref(0),b=e.ref(),S=e.ref(o.zoom||1),p=e.ref(!1),k=e.ref(!1),h=e.ref(null),N=e.ref(!1);let B,T;const O=typeof window<"u"&&"DeviceMotionEvent"in window&&(window.matchMedia?.("(pointer: coarse)")?.matches||"ontouchstart"in window),X=e.computed(()=>o.correctOrientation&&O),$=e.computed(()=>r.value&&(!X.value||N.value));function P(){T&&(window.removeEventListener("pointerdown",T,!0),window.removeEventListener("touchend",T,!0),T=void 0)}function z(){N.value=!0,B&&(clearTimeout(B),B=void 0),P()}function L(){T||(T=()=>{Q()},window.addEventListener("pointerdown",T,!0),window.addEventListener("touchend",T,!0))}function v(V){const x=V.accelerationIncludingGravity;if(!x||x.x==null||x.y==null)return;const G=Math.round(Math.atan2(x.x,x.y)*180/Math.PI);if(h.value=G,!(typeof screen<"u"&&screen.orientation&&screen.orientation.type||"portrait-primary").startsWith("portrait"))k.value=!1;else{const w=Math.abs(Math.abs(G)-90);!k.value&&w<40?k.value=!0:k.value&&w>50&&(k.value=!1)}N.value||z()}async function Q(){if(!(!o.correctOrientation||p.value))try{const V=window.DeviceOrientationEvent,x=window.DeviceMotionEvent;if(V&&typeof V.requestPermission=="function"&&await V.requestPermission()!=="granted"){z();return}x&&typeof x.requestPermission=="function"&&await x.requestPermission().catch(()=>{}),window.addEventListener("devicemotion",v,!0),p.value=!0,P()}catch(V){console.error(V,"enableMotion: failed"),z()}}const C=e.computed(()=>({...At,...o.resolutions})),F=e.computed(()=>Object.values(C.value)[0]);function I(V){return String(V||"").trim().toLowerCase().replace(/\s+/g,"").replace(/[:/]/g,"x")}const U=e.computed(()=>{if(C.value[o.ratio])return o.ratio;const V=I(o.ratio);if(C.value[V])return V}),j=e.computed(()=>U.value?C.value[U.value]:F.value),we=e.computed(()=>{const V=U.value?C.value[U.value]:void 0;return V?`${V.width} / ${V.height}`:void 0}),ee=e.computed(()=>s.value.filter(V=>V.kind==="videoinput")),Be=e.computed(()=>s.value.filter(V=>V.kind==="audioinput")),Se=e.computed(()=>ee.value.map((V,x)=>({text:V.label.slice(0,V.label.indexOf("("))||`Camera ${x+1}`,value:V.deviceId}))),q=e.computed({get(){return u.value&&u.value.deviceId},set(V){u.value=ee.value.find(x=>x.deviceId===V)}});e.computed({get(){return d.value&&d.value.deviceId},set(V){d.value=Be.value.find(x=>x.deviceId===V)}});const W=e.computed(()=>{const V=u.value&&ee.value.findIndex(x=>x.deviceId===u.value.deviceId);return o.enableMirrorCamera&&V===0?"mirror-cam":""}),ce=e.computed(()=>{const V=u.value&&s.value.findIndex(x=>x.deviceId===u.value.deviceId);return W.value?`${W.value} mirror-device-${V}`:""}),{tintRgb:de,applyFilterToCanvas:re}=st(o);function Ne(){if(U.value&&j.value){f.value=j.value.width,y.value=j.value.height;return}f.value=i.value.parentElement&&i.value.parentElement.clientWidth,y.value=i.value.parentElement&&i.value.parentElement.clientHeight}const ue=qe.debounce(()=>{Ne()},300,{trailing:!0,leading:!1});async function Oe(){const V=j.value?{width:j.value.width,height:j.value.height}:void 0,x=V?Math.max(V.width,V.height):void 0,G=V?Math.min(V.width,V.height):void 0,ne={audio:o.enableAudio&&{...d.value?{deviceId:d.value.deviceId}:{}},video:{...u.value?{deviceId:u.value.deviceId}:{},...x?{width:{ideal:x}}:{},...G?{height:{ideal:G}}:{}}};return navigator.mediaDevices.getUserMedia(ne).catch(g=>{console.error(g,"navigator.mediaDevices.getUserMedia: failed")})}function se(){i.value&&i.value.srcObject&&i.value.srcObject.getTracks().forEach(x=>{x.stop()})}async function ye(){return i.value.srcObject=await Oe(),s.value=await navigator.mediaDevices.enumerateDevices(),{stream:i.value.srcObject,devices:s.value}}function me(){A.value?(A.value=!1,m.value=!1,se()):(A.value=!0,ye())}function Re(){if(s.value.length>1){se();const V=ee.value.findIndex(x=>x.deviceId===u.value.deviceId);u.value=ee.value[V===ee.value.length-1?0:V+1],ye()}}async function He(V,x){se(),V&&(!x||V.deviceId!==x.deviceId)&&await ye()}e.watch(()=>u.value,He),e.watch(()=>d.value,He);function ve(){o.countdown?(b.value=b.value?b.value-1:o.countdown,b.value?setTimeout(ve,1e3):Qe()):Qe()}c({onCapture:ve,enableMotion:Q,camera:i.value,zoom:S});function Ce(){if(!o.correctOrientation||h.value==null)return 0;const V=((h.value-180)%360+360)%360;return(-1*(Math.round(V/90)*90%360)%360+360)%360}function Me(V,x,G,ne,g){const w=a.value.width,E=a.value.height;V.translate(w/2,E/2),W.value&&V.scale(-1,1),V.rotate(G*Math.PI/180);const R=E,J=w,pe=Math.max(R/ne,J/g)*(S.value&&S.value>0?S.value:1),be=ne*pe,te=g*pe;V.drawImage(x,-be/2,-te/2,be,te)}function Qe(){m.value=!0;const V=a.value.getContext("2d"),x=i.value,G=x&&x.srcObject&&x.srcObject.getTracks(),{aspectRatio:ne,width:g,height:w}=G.length&&G[0].getSettings(),E=x?.videoWidth||g||f.value,R=x?.videoHeight||w||y.value,J=E&&R?E/R:ne,fe=j.value||{width:E,height:R},pe=fe?.width||E,be=U.value?fe?.height||R:Math.round(pe/J),te=pe/be;if(a.value.width=pe,a.value.height=be,!E||!R||!J)return;const Ve=Ce();if(V.save(),Ve===90||Ve===270){Me(V,x,Ve,E,R),V.restore(),re(V,a.value.width,a.value.height),Ue(a.value.toDataURL("image/png"));return}if(Ve===180&&(V.translate(a.value.width,a.value.height),V.scale(-1,-1)),W.value&&(V.translate(a.value.width,0),V.scale(-1,1)),o.enableCropImage){let le=0,ge=0,_=E,oe=R;if(J>te?(_=R*te,le=(E-_)/2):J<te&&(oe=E/te,ge=(R-oe)/2),S.value&&S.value!==1){const De=_/S.value,Le=oe/S.value;le+=(_-De)/2,ge+=(oe-Le)/2,_=De,oe=Le}V.drawImage(x,le,ge,_,oe,0,0,a.value.width,a.value.height)}else{let le=a.value.width,ge=a.value.height,_=0,oe=0;if(J>te?(ge=a.value.width/J,oe=(a.value.height-ge)/2):J<te&&(le=a.value.height*J,_=(a.value.width-le)/2),S.value&&S.value!==1){const De=E/S.value,Le=R/S.value,jA=(E-De)/2,qA=(R-Le)/2;W.value&&(_=a.value.width-_-le),V.drawImage(x,jA,qA,De,Le,_,oe,le,ge)}else W.value&&(_=a.value.width-_-le),V.drawImage(x,0,0,E,R,_,oe,le,ge)}V.restore(),re(V,a.value.width,a.value.height);const Xe=a.value.toDataURL("image/png");Ue(Xe)}function Ue(V){const x=Tt(V);l("update:modelValue",{name:`cam-pic-${new Date().toISOString()}`,id:`cam-pic-${new Date().toISOString()}`,blob:x,size:x.size})}return e.onMounted(async()=>{if(se(),await ye(),u.value=ee.value[0],o.enableAudio&&(d.value=Be.value[0]),navigator.mediaDevices.addEventListener("devicechange",async V=>{await ye()}),o.defaultRearCamera&&Re(),me(),window.addEventListener("resize",ue),Ne(),X.value){B=setTimeout(z,3e3);const V=window.DeviceOrientationEvent;V&&typeof V.requestPermission=="function"?L():Q()}await e.nextTick(),r.value=!0}),e.onBeforeUnmount(()=>{A.value=!1,m.value=!1,se(),window.removeEventListener("resize",ue),window.removeEventListener("devicemotion",v,!0),B&&clearTimeout(B),P()}),(V,x)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["camera",ce.value])},[e.createElementVNode("div",So,[$.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",No,[e.createVNode(Te,{color:"#000"},{default:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass("d-block text-center"),innerHTML:V.$t("camera.waitForCameraNotification")},null,8,vo)]),_:1})])),e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(["camera__video-wrapper",U.value?`aspect-ratio--${U.value}`:""]),style:e.normalizeStyle({aspectRatio:we.value||void 0,transform:S.value!==1?`scale(${S.value})`:void 0})},[e.createElementVNode("video",{ref_key:"camera",ref:i,class:"camera__video",style:e.normalizeStyle({filter:o.filter==="grayscale"?"grayscale(100%)":o.filter==="sepia"?"sepia(100%)":"none",transform:t.correctOrientation&&k.value?"rotate(180deg)":void 0}),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,$.value]]),e.withDirectives(e.createElementVNode("canvas",{ref_key:"canvas",ref:a,class:"camera__canvas",width:f.value,height:y.value},null,8,Mo),[[e.vShow,m.value]]),b.value?(e.openBlock(),e.createElementBlock("div",Do,[(e.openBlock(),e.createElementBlock("p",{class:"countdown",key:b.value,innerHTML:b.value,"data-countdown":b.value},null,8,Lo))])):e.createCommentVNode("",!0),t.enableGuide&&A.value&&$.value?(e.openBlock(),e.createElementBlock("img",{key:2,class:"camera__guide",src:t.guideSrc},null,8,Io)):e.createCommentVNode("",!0),t.enableZoomSlider?(e.openBlock(),e.createElementBlock("div",To,[e.createVNode(Eo,{modelValue:S.value,"onUpdate:modelValue":x[0]||(x[0]=G=>S.value=G)},null,8,["modelValue"])])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Po,[e.createElementVNode("div",xo,[e.createElementVNode("div",zo,[e.createElementVNode("div",Fo,[e.createElementVNode("div",Oo,[e.createElementVNode("button",{type:"button",class:"camera__toggle btn btn-primary",onClick:me},[A.value?(e.openBlock(),e.createElementBlock("span",Ho,e.toDisplayString(V.$t("common.pause")),1)):(e.openBlock(),e.createElementBlock("span",Ro,e.toDisplayString(V.$t("common.play")),1))]),e.createElementVNode("button",{type:"button",class:"camera__capture btn btn-primary",onClick:ve},e.toDisplayString(V.$t("camera.capture")),1)])])])])]),(t.enableSwitchCamera||t.enableSelectDevice)&&ee.value&&ee.value.length>1?(e.openBlock(),e.createElementBlock("div",Qo,[e.createElementVNode("div",Uo,[t.enableSelectDevice?(e.openBlock(),e.createBlock(Ae,{key:0,modelValue:q.value,"onUpdate:modelValue":x[1]||(x[1]=G=>q.value=G),options:Se.value,class:"w-100"},null,8,["modelValue","options"])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Wo,[t.enableSwitchCamera?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn",onClick:e.withModifiers(Re,["prevent"])},[e.createVNode(D,{symbol:"switch-camera"})])):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)],2))}}),Go={class:"base-map"},Jo={key:0,class:"base-map__label"},Yo={key:0,class:"base-map__hint"},ct=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:c}){function n(C,F){return F({className:"base-map__marker-wrapper",html:`<span class="base-map__marker-pin base-map__marker-pin--${C}"><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},l={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>'}},i=t,a=c,r=e.shallowRef(null),s=e.ref(null),u=e.ref(null),d=e.ref(i.zoom),A=e.ref(B(i.modelValue));e.onMounted(async()=>{if(typeof window>"u")return;const[C,F]=await Promise.all([import("@vue-leaflet/vue-leaflet"),import("leaflet")]),I=C.default??C,U=F.default??F;r.value=e.markRaw({LCircle:e.markRaw(I.LCircle),LMap:e.markRaw(I.LMap),LMarker:e.markRaw(I.LMarker),LPopup:e.markRaw(I.LPopup),LPolyline:e.markRaw(I.LPolyline),LTileLayer:e.markRaw(I.LTileLayer)}),s.value={list:n("list",U.divIcon),selected:n("selected",U.divIcon),search:n("search",U.divIcon),user:n("user",U.divIcon)}}),e.watch(()=>i.zoom,C=>{d.value=C}),e.watch(()=>i.modelValue,C=>{A.value=B(C)}),e.watch(()=>i.center,C=>{const F=B(C);F&&$(F)},{deep:!0}),e.watch(()=>[i.height,i.markers.length,i.routeCoordinates.length,i.center?.lat,i.center?.lng,i.modelValue?.lat,i.modelValue?.lng,i.userLocation?.lat,i.userLocation?.lng],()=>{X()},{flush:"post"});const m=e.computed(()=>B(i.userLocation)),f=e.computed(()=>B(i.selectionRadiusCenter)||A.value),y=e.computed(()=>{const C=(i.markers||[]).map(F=>{const I=B(F);return I?{...F,...I,type:F.type||(A.value&&O(F,A.value)?"selected":"list")}:null}).filter(F=>!!F);return i.showSelectedMarker&&A.value&&!C.some(F=>O(F,A.value))&&C.push({id:"selected-location",label:i.selectedLocationLabel,type:"search",...A.value}),C}),b=e.computed(()=>(i.routeCoordinates||[]).map(C=>T(C)).filter(C=>!!C)),S=e.computed(()=>{const C=B(i.center)||A.value||B(i.markers[0])||o;return[C.lat,C.lng]}),p=e.computed(()=>{if(i.tileLayerUrl.trim())return i.tileLayerUrl;const C=i.mapStyle==="custom"?"streets":i.mapStyle;return l[C].url}),k=e.computed(()=>{if(i.tileLayerAttribution.trim())return i.tileLayerAttribution;const C=i.mapStyle==="custom"?"streets":i.mapStyle;return l[C].attribution});function h(C="list"){if(s.value)return s.value[C]||s.value.list}function N(C="list"){switch(C){case"user":return 450;case"selected":return 350;case"search":return 250;default:return 150}}function B(C){if(!C)return null;const F=Number(C.lat),I=Number(C.lng);return Number.isNaN(F)||Number.isNaN(I)?null:{lat:F,lng:I}}function T(C){if(Array.isArray(C)){const I=Number(C[0]),U=Number(C[1]);return Number.isFinite(I)&&Number.isFinite(U)?[I,U]:null}const F=B(C);return F?[F.lat,F.lng]:null}function O(C,F){const I=B(C),U=B(F);return!I||!U?!1:Math.abs(I.lat-U.lat)<1e-6&&Math.abs(I.lng-U.lng)<1e-6}async function X(){await e.nextTick(),u.value?.invalidateSize()}function $(C){u.value?.panTo([C.lat,C.lng])}function P(C){u.value=C,$(B(i.center)||A.value||o),X()}function z(C){d.value=C,a("update:zoom",C)}function L(C){const F=B(C);F&&($(F),a("update:center",F))}function v(C){if(!i.interactive||i.disabled)return;const F={lat:Number(C.latlng.lat.toFixed(6)),lng:Number(C.latlng.lng.toFixed(6))};A.value=F,$(F),a("update:modelValue",F),a("update:center",F),a("map-click",F)}function Q(C){A.value={lat:Number(C.lat),lng:Number(C.lng)},$(A.value),a("update:modelValue",A.value),a("update:center",A.value),a("marker-click",C)}return(C,F)=>(e.openBlock(),e.createElementBlock("div",Go,[e.renderSlot(C.$slots,"label",{},()=>[t.label?(e.openBlock(),e.createElementBlock("label",Jo,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:d.value,center:S.value,onReady:P,onClick:v,"onUpdate:zoom":z,"onUpdate:center":L},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LTileLayer),{url:p.value,attribution:k.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(y.value,(I,U)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value.LMarker),{key:I.id??`${I.lat}-${I.lng}-${U}`,"lat-lng":[I.lat,I.lng],icon:h(I.type),"z-index-offset":N(I.type),onClick:j=>Q(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:h("user"),"z-index-offset":N("user"),onClick:F[0]||(F[0]=I=>Q({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",Yo,e.toDisplayString(t.helperText),1)):e.createCommentVNode("",!0)]))}}),Zo={class:"location-list","data-testid":"location-list"},Ko={key:0,class:"location-list__label"},Xo={key:1,class:"location-list__items"},_o=["data-testid","onClick"],ei={class:"location-list__title"},ti={key:0,class:"location-list__description"},ai={key:1,class:"location-list__distance"},ni={key:2,class:"location-list__empty"},dt=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:c}){const n=t,o=c;function l(A){return A?.[n.titleKey]||A?.label||A?.name||"Location"}function i(A){return A?.[n.descriptionKey]||A?.description||A?.subtitle||""}function a(A,m=0){return A?typeof A!="object"?A:A.id??A.value??l(A)??m:m}function r(A,m=0){return`${a(A,m)}`.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function s(A,m=0){return a(n.modelValue)===a(A,m)}function u(A){return Number.isFinite(A)?A>=1e3?`${(A/1e3).toFixed(1)} km`:`${Math.round(A)} m`:"—"}function d(A){o("update:modelValue",A),o("select",A)}return(A,m)=>(e.openBlock(),e.createElementBlock("div",Zo,[t.label?(e.openBlock(),e.createElementBlock("p",Ko,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0),t.locations.length?(e.openBlock(),e.createElementBlock("div",Xo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.locations,(f,y)=>(e.openBlock(),e.createElementBlock("button",{key:a(f,y),type:"button",class:e.normalizeClass(["location-list__item",{"location-list__item--active":s(f,y)}]),"data-testid":`location-option-${r(f,y)}`,onClick:b=>d(f)},[e.createElementVNode("strong",ei,e.toDisplayString(l(f)),1),i(f)?(e.openBlock(),e.createElementBlock("small",ti,e.toDisplayString(i(f)),1)):e.createCommentVNode("",!0),t.showDistance&&f?.distance!==void 0&&f?.distance!==null?(e.openBlock(),e.createElementBlock("small",ai,e.toDisplayString(u(Number(f.distance)))+" away ",1)):e.createCommentVNode("",!0)],10,_o))),128))])):(e.openBlock(),e.createElementBlock("p",ni,e.toDisplayString(t.emptyText),1))]))}});function ut(t=null,c){const n=e.ref(!1),o=e.ref([]),l=e.ref([]),i=e.ref(!1),a=e.ref(!1),r=e.computed(()=>t.modelValue?.length?t.modelValue:t.src?[{type:"",src:t.src}]:l.value);async function s(b){const S=new FormData;S.append("file",b),n.value=!0;const k=await(t.customFetch||Ie.ofetch)(t.endpoint,{method:"POST",...t.customFetch?{}:{headers:{Accept:"application/json",...t.authToken?{Authorization:`Bearer ${t.authToken}`}:{}}},body:S}).catch(N=>{console.error("Error",N)});return n.value=!1,`${t.baseResponsePath||"/api/v1/assets"}/${k.path}`}function u(b){const S=typeof b=="string"?parseInt(b,10):b,p=Array.isArray(t.modelValue)&&t.modelValue.length>0,k=Array.isArray(l.value)&&l.value.length>0;if(k&&S<l.value.length&&l.value.splice(S,1),p){const h=[...t.modelValue];S<h.length&&h.splice(S,1),c?.("update:modelValue",h),t.multiple||c?.("update:src",h[0]?.src||"")}else if(k){const h=t.multiple?l.value:l.value[0];c?.("update:modelValue",h),t.multiple||c?.("update:src",l.value[0]?.src||"")}else c?.("update:modelValue",t.multiple?[]:void 0),c?.("update:src","");o.value.splice(S,1),i.value=!1}function d(b){b.preventDefault(),a.value=!0}function A(b){b.preventDefault(),a.value=!1}function m(b){b.preventDefault(),a.value=!1;const S=b.dataTransfer,p=S&&Array.from(S.files||[]);o.value=p||[]}function f(){t.dropFiles&&(["dragenter","dragover"].forEach(b=>{document.body.addEventListener(b,d,!1)}),["dragleave","drop"].forEach(b=>{document.body.addEventListener(b,A,!1)}),document.body.addEventListener("drop",m,!1))}function y(){t.dropFiles&&(["dragenter","dragover"].forEach(b=>{document.body.removeEventListener(b,d,!1)}),["dragleave","drop"].forEach(b=>{document.body.removeEventListener(b,A,!1)}),document.body.removeEventListener("drop",m,!1))}return e.onMounted(()=>{f()}),e.onBeforeUnmount(()=>{y()}),{pending:n,files:o,dataUrls:l,imgLoaded:i,isDragging:a,thumbnails:r,uploadFile:s,removeFile:u,dragStart:d,dragStop:A,dragDrop:m,setupDragAndDrop:f,cleanupDragAndDrop:y}}const li=["src"],oi=["onClick"],ii=["onClick"],ri=["for"],si=["innerHTML"],Ai={key:0,class:"file-upload__loading-spinner"},Ee=e.defineComponent({__name:"file-upload",props:{modelValue:{type:Array,default:[]},src:{type:String},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c,{pending:l,files:i,dataUrls:a,isDragging:r,thumbnails:s,uploadFile:u,removeFile:d}=ut(n,o);return e.watch(()=>i.value,async A=>{a.value=await Promise.all(A.map(async m=>({src:n.toDataUrl?await xe(m):await u(m),type:m.type})))},{deep:!0}),e.watch(()=>a.value,async A=>{const m=n.multiple?A:A[0];o("update:modelValue",m),n.multiple||o("update:src",A[0]&&A[0].src)},{deep:!0}),(A,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(s),(f,y)=>(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,li),e.createElementVNode("button",{onClick:e.withModifiers(b=>e.unref(d)(y),["prevent"]),class:"btn btn--close"},[e.createVNode(D,{symbol:"x"})],8,oi)],64)):(e.openBlock(),e.createElementBlock("button",{key:1,onClick:e.withModifiers(b=>e.unref(d)(y),["prevent"]),class:"btn btn--close btn-outline-contrast"},[e.createVNode(D,{symbol:"x"})],8,ii))],2))),128)),e.createVNode(Ye,{modelValue:e.unref(i),"onUpdate:modelValue":m[0]||(m[0]=f=>e.isRef(i)?i.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(A.$slots,"button",{},()=>[e.createElementVNode("span",{class:"btn btn-outline-contrast",innerHTML:t.label||A.$t("common.selectFile")},null,8,si)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[e.unref(l)?(e.openBlock(),e.createElementBlock("span",Ai,[...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,ri)],2))}}),ci=["onDragenter","onDragover","onDragleave","onDragend","onDrop","innerHTML"],di=["draggable","onDragstart","onDrag","onDragenter","onDragover","onDragleave","onDragend","onDrop"],ui={key:0,class:"sortable-list__drag-handle"},mi=["onDragstart","onDrag"],fi={key:0,class:"sortable-list__item"},Ze=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:c}){const n=t,o=e.ref(!1),l=e.ref(null),i=e.ref(null),a=c,r=e.computed({get(){return n.modelValue},set(h){a("update:modelValue",h)}}),s=e.ref("");function u(h){const N=h.currentTarget.closest(".sortable-list__item")??h.currentTarget;s.value=We.sanitize(N.outerHTML,{ALLOWED_TAGS:["b","i","em","strong","u","span","p","br","a","ul","ol","li","h1","h2","h3","h4","h5","h6","article","div","label","button","svg","use"],ALLOWED_ATTR:["class","id","style","href","target","rel","title","type","aria-expanded","aria-controls","aria-labelledby","data-countdown"],ALLOW_DATA_ATTR:!0})}const d=e.useSlots(),A=e.computed(()=>d["list-append"]);function m(h,N){h.dataTransfer&&(u(h),h.dataTransfer.dropEffect="move",h.dataTransfer.effectAllowed="move",h.dataTransfer.setData("index",N.toLocaleString()),o.value=!0,l.value=N)}function f(h,N){o.value=!1,l.value=null,i.value=null,s.value=""}function y(h,N){}function b(h,N){i.value=l.value!==N?N:null}function S(h,N){i.value=l.value!==N?N:null}function p(h,N){}function k(h,N){if(h.dataTransfer){h.preventDefault();const B=Number(h.dataTransfer.getData("index")),T=N,O=[...r.value];(T||T===0)&&(B||B===0)&&O.splice(T,0,O.splice(B,1)[0]),r.value=O}}return e.watch(()=>o.value,h=>{a("update:isDragging",h)},{immediate:!0}),e.watch(()=>l.value,h=>{a("update:dragIndex",h)},{immediate:!0}),e.watch(()=>i.value,h=>{a("update:dragOverIndex",h)},{immediate:!0}),(h,N)=>(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:N[0]||(N[0]=e.withModifiers(()=>{},["prevent"])),onDragenter:N[1]||(N[1]=e.withModifiers(()=>{},["prevent"]))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(B,T)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:T},[t.showPreview&&o.value&&i.value===T?(e.openBlock(),e.createElementBlock("li",{key:0,class:"sortable-list__item is-drop-target",onDragenter:O=>b(O,T),onDragover:O=>S(O,T),onDragleave:O=>void 0,onDragend:O=>f(),onDrop:O=>k(O,T),innerHTML:s.value},null,40,ci)):e.createCommentVNode("",!0),e.createElementVNode("li",{class:e.normalizeClass(["sortable-list__item d-flex",{"is-drag-item":o.value&&l.value===T,"is-drop-target":o.value&&i.value===T&&!t.showPreview,"align-items-center gap-2":t.vertical}]),draggable:!t.showDragHandle,onDragstart:O=>m(O,T),onDrag:O=>void 0,onDragenter:O=>b(O,T),onDragover:O=>S(O,T),onDragleave:O=>void 0,onDragend:O=>f(),onDrop:O=>k(O,T)},[t.showDragHandle?(e.openBlock(),e.createElementBlock("div",ui,[e.createElementVNode("button",{type:"button",class:"btn",draggable:"true",onDragstart:O=>m(O,T),onDrag:O=>void 0},[e.createVNode(D,{symbol:"drag"})],40,mi)])):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["sortable-list__item-content",{"flex-grow-1":t.vertical}])},[e.renderSlot(h.$slots,"list-item",{item:B,index:T},()=>[e.createTextVNode(e.toDisplayString(B),1)])],2)],42,di)],64))),128)),A.value?(e.openBlock(),e.createElementBlock("li",fi,[e.renderSlot(h.$slots,"list-append")])):e.createCommentVNode("",!0)]),_:3},8,["class"]))}}),pi={key:0,class:"image-editor position-relative"},gi={class:"row mb-3"},hi={class:"col"},yi={class:"row gap-2 mb-4"},bi={class:"col-12"},ki={class:"input mb-2"},wi={class:"col"},Bi={class:"input mb-0"},Ci={class:"col"},Vi={class:"input mb-0"},Ei={class:"row"},$i={class:"col d-flex justify-content-end gap-2"},Si=["disabled"],mt=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:c}){const n=c,o=e.useTemplateRef("image"),l=e.ref(1),i=e.ref(0),a=e.ref(0),r=e.ref(null),s=e.ref(0),u=e.ref(0);function d(){r.value&&(n("update:modelValue",r.value),l.value=1)}const A=()=>{if(!s.value||!u.value)return;i.value=Math.round(s.value*l.value);const f=u.value/s.value;a.value=Math.round(i.value*f);const y=o.value?.$el;if(!y)return;const b=y.querySelector("img");b&&(r.value=tt(b,i.value,a.value,"image/png"))},m=qe.debounce(A,300);return e.watch(l,()=>{s.value&&(i.value=Math.round(s.value*l.value),m())}),e.watch(i,()=>{if(!s.value||i.value===0)return;const f=i.value/s.value;Math.abs(f-l.value)>1e-4&&(l.value=Number(f.toFixed(4)));const y=u.value/s.value;a.value=Math.round(i.value*y),m()}),e.watch(a,()=>{if(!u.value||a.value===0)return;const f=a.value/u.value;Math.abs(f-l.value)>1e-4&&(l.value=Number(f.toFixed(4)));const y=s.value/u.value;i.value=Math.round(a.value*y),m()}),e.onMounted(()=>{const f=o.value?.$el;if(!f)return;const y=f.querySelector("img");if(!y)return;const b=()=>{s.value=y.naturalWidth,u.value=y.naturalHeight,A()};y.complete?b():y.addEventListener("load",b)}),(f,y)=>t.modelValue?(e.openBlock(),e.createElementBlock("div",pi,[e.createElementVNode("div",gi,[e.createElementVNode("div",hi,[e.createVNode(ae,{ref_key:"image",ref:o,class:"d-none",src:t.modelValue,animate:!1},null,8,["src"]),r.value?(e.openBlock(),e.createBlock(ae,{key:0,ref:"targetImage",class:"",src:r.value,animate:!1},null,8,["src"])):e.createCommentVNode("",!0)])]),e.createElementVNode("div",yi,[e.createElementVNode("div",bi,[e.createElementVNode("div",ki,[e.withDirectives(e.createElementVNode("input",{type:"range",class:"form-range",id:"scaleRange","onUpdate:modelValue":y[0]||(y[0]=b=>l.value=b),min:"0",max:"2",step:"0.0001"},null,512),[[e.vModelText,l.value]])])]),e.createElementVNode("div",wi,[e.createElementVNode("div",Bi,[e.createVNode(ke,{type:"number",class:"form-input mb-0",id:"targetWidth",modelValue:i.value,"onUpdate:modelValue":y[1]||(y[1]=b=>i.value=b)},null,8,["modelValue"])])]),y[3]||(y[3]=e.createElementVNode("div",{class:"col-auto d-flex align-items-center"},[e.createElementVNode("output",null,"×")],-1)),e.createElementVNode("div",Ci,[e.createElementVNode("div",Vi,[e.createVNode(ke,{type:"number",class:"form-input mb-0",id:"targetHeight",modelValue:a.value,"onUpdate:modelValue":y[2]||(y[2]=b=>a.value=b)},null,8,["modelValue"])])])]),e.createElementVNode("div",Ei,[e.createElementVNode("div",$i,[e.renderSlot(f.$slots,"actions"),e.createElementVNode("button",{class:"btn btn-sm btn-primary",disabled:!r.value,onClick:e.withModifiers(d,["prevent","stop"])},e.toDisplayString(f.$t("common.apply")),9,Si)])])])):e.createCommentVNode("",!0)}}),Ni={key:0,class:"image-crop"},vi={class:"row mb-4"},Mi={class:"col"},Di={class:"row"},Li={class:"col d-flex gap-2 justify-content-end gap-2"},ft=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:c}){const n=t,o=c,l=e.useTemplateRef("cropper"),i=e.ref(0);function a(){const{canvas:r}=l.value?.getResult(),s=r.toDataURL();o("update:modelValue",s)}return e.onBeforeMount(()=>{i.value=n.suggestedAspectRatio||0}),(r,s)=>t.modelValue?(e.openBlock(),e.createElementBlock("div",Ni,[e.createElementVNode("div",vi,[e.createElementVNode("div",Mi,[e.createVNode(e.unref(Vt.Cropper),{ref:"cropper",class:"cropper",src:t.modelValue,"stencil-props":{...i.value!==0?{aspectRatio:i.value}:{}},"resize-image":!1},null,8,["src","stencil-props"])])]),s[1]||(s[1]=e.createElementVNode("hr",null,null,-1)),e.createElementVNode("div",Di,[e.createElementVNode("div",Li,[e.createVNode(Ae,{modelValue:i.value,"onUpdate:modelValue":s[0]||(s[0]=u=>i.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(a,["prevent","stop"])},e.toDisplayString(r.$t("common.apply")),1)])])])):e.createCommentVNode("",!0)}}),Ii={key:0,class:"image-crop-resize position-relative"},Ti={class:"row"},Pi={class:"col"},xi={key:3,class:"alert alert-warning mt-4 small p-2"},zi={key:4},Fi={class:"row"},Oi={class:"col-12"},Ri={class:"d-flex"},Hi={key:0,class:"d-flex gap-3"},Qi={class:"caption"},Ui={class:"caption"},Wi={key:1,class:"ms-auto"},pt=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:c}){const n=t,o=c,l=e.ref(!1),i=e.ref(!1),a=e.computed({get:()=>n.modelValue,set:s=>o("update:modelValue",s)}),r=e.computed(()=>n.modelValue.startsWith("data:image/svg+xml"));return e.watch(()=>[l.value,a.value],(s,u)=>{s[0]&&s[0]===u[0]&&(l.value=!1)}),e.watch(()=>[i.value,a.value],(s,u)=>{s[0]&&s[0]===u[0]&&(i.value=!1)}),e.onMounted(()=>{}),(s,u)=>t.modelValue?(e.openBlock(),e.createElementBlock("div",Ii,[e.createElementVNode("div",Ti,[e.createElementVNode("div",Pi,[l.value||i.value?l.value?(e.openBlock(),e.createBlock(mt,{key:1,modelValue:a.value,"onUpdate:modelValue":u[1]||(u[1]=d=>a.value=d)},{actions:e.withCtx(()=>[e.createElementVNode("button",{class:"btn btn-outline-ccontrast",onClick:u[0]||(u[0]=e.withModifiers(d=>l.value=!1,["prevent","stop"]))},e.toDisplayString(s.$t("common.cancel")),1)]),_:1},8,["modelValue"])):i.value?(e.openBlock(),e.createBlock(ft,{key:2,modelValue:a.value,"onUpdate:modelValue":u[3]||(u[3]=d=>a.value=d),"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(d=>i.value=!1,["prevent","stop"]))},e.toDisplayString(s.$t("common.cancel")),1)]),_:1},8,["modelValue","suggested-aspect-ratio"])):e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(ae,{key:0,ref:"targetImage",class:"",animate:!1,src:t.modelValue},null,8,["src"])),r.value?(e.openBlock(),e.createElementBlock("div",xi,e.toDisplayString(s.$t("common.svgWarning")),1)):e.createCommentVNode("",!0),!i.value&&!l.value?(e.openBlock(),e.createElementBlock("hr",zi)):e.createCommentVNode("",!0),e.createElementVNode("div",Fi,[e.createElementVNode("div",Oi,[e.createElementVNode("div",Ri,[!i.value&&!l.value?(e.openBlock(),e.createElementBlock("div",Hi,[e.createElementVNode("button",{type:"button",class:"btn btn-light",onClick:u[4]||(u[4]=e.withModifiers(d=>i.value=!i.value,["prevent","stop"]))},[e.createVNode(D,{symbol:"crop"}),e.createElementVNode("span",Qi,e.toDisplayString(s.$t("common.crop")),1)]),e.createElementVNode("button",{type:"button",class:"btn btn-light",onClick:u[5]||(u[5]=e.withModifiers(d=>l.value=!l.value,["prevent","stop"]))},[e.createVNode(D,{symbol:"image-upscale"}),e.createElementVNode("span",Ui,e.toDisplayString(s.$t("common.resize")),1)])])):e.createCommentVNode("",!0),!i.value&&!l.value?(e.openBlock(),e.createElementBlock("div",Wi,[e.renderSlot(s.$slots,"submit")])):e.createCommentVNode("",!0)])])])])])])):e.createCommentVNode("",!0)}}),ji={class:"modal-dialog__content d-flex flex-column"},qi={class:"modal-dialog__header d-flex p-3 border-bottom"},Gi={key:0,class:"modal-dialog__title",id:"exampleModalLabel"},Ji={class:"modal-dialog__body"},Yi={key:0,class:"modal-dialog__footer d-flex p-3 border-top"},gt=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:c,emit:n}){const o=t,l=n,i=e.ref();function a(){document.documentElement.style.setProperty("--scroll-position",`${Math.round(document.documentElement.scrollTop)}px`),o.modal?i.value?.showModal():i.value?.show(),l("update:modelValue",!0)}function r(){const m=i.value&&new KeyframeEffect(i.value,[{translate:"0 -100%",opacity:"0"}],{duration:320,easing:"ease",direction:"normal"}),f=new Animation(m,document.timeline);f.play(),f.addEventListener("finish",()=>{i.value?.close(),s()}),l("update:modelValue",!1)}function s(){const m=getComputedStyle(document.documentElement).getPropertyValue("--scroll-position");document.documentElement.scrollTo({top:parseInt(m,10),behavior:"instant"}),l("update:modelValue",!1)}function u(m){a(),l("confirm",m)}function d(){r(),l("cancel")}function A(m){const f=m.target;f&&f.nodeName==="DIALOG"&&r()}return e.watch(()=>o.modelValue,(m,f)=>{m&&m!==f?a():f&&r()},{immediate:!0}),e.onMounted(()=>{i.value?.addEventListener("cancel",m=>{m.preventDefault(),r()}),o.dismiss&&document.addEventListener("click",A),o.modelValue&&a()}),e.onBeforeUnmount(()=>{o.dismiss&&document.removeEventListener("click",A)}),c({show:a,close:r,confirm:u,cancel:d}),(m,f)=>(e.openBlock(),e.createElementBlock("dialog",{ref_key:"dialog",ref:i,class:e.normalizeClass(["modal-dialog",{[`modal-dialog--${t.size}`]:t.size}]),onClose:s},[e.createElementVNode("div",ji,[e.createElementVNode("div",qi,[t.title?(e.openBlock(),e.createElementBlock("h5",Gi,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",Ji,[e.renderSlot(m.$slots,"default")]),t.footer?(e.openBlock(),e.createElementBlock("div",Yi,[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))}}),Zi={class:"image-upload__controls"},Ki={class:"d-flex gap-1 align-items-center"},Xi={key:1,class:"image-upload__controls"},_i=["for"],er=["innerHTML"],tr={key:0,class:"image-upload__loading-spinner"},$e=e.defineComponent({__name:"image-upload",props:{modelValue:{type:Object,default:void 0},src:{type:String},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c,l=e.ref(!1),i=e.ref(null),a=e.ref(null),r=e.ref(null),{pending:s,files:u,imgLoaded:d,isDragging:A,uploadFile:m,setupDragAndDrop:f,cleanupDragAndDrop:y}=ut(n,o),b=e.computed(()=>n.modelValue?n.modelValue:n.src?{type:"",src:n.src}:i.value);function S(){i.value=null,u.value=[],d.value=!1,o("update:modelValue",void 0),o("update:src","")}function p(){S()}e.watch(()=>u.value,async N=>{if(!N||!N.length||!N[0])return;d.value=!1;const B=await zt(N[0],n.maxImageWidth);n.enableReview?(a.value={src:await xe(B),type:B.type},l.value=!0):i.value={src:n.toDataUrl?await xe(B):await m(B),type:B.type}}),e.watch(()=>i.value,N=>{o("update:modelValue",N||void 0),o("update:src",N?.src||"")}),e.watch(()=>r.value,async N=>{N&&(i.value={src:await m(N),type:N.type},r.value=null)}),e.watch(()=>l.value,(N,B)=>{!N&&B&&a.value&&(a.value=null,p())}),e.watch(()=>n.src,N=>{!N&&i.value&&p()});function k(N,B){a.value={src:N,type:B},l.value=!0}async function h(){a.value&&(r.value=await et(a.value.src,"file",a.value.type)),a.value=null,l.value=!1}return e.onMounted(()=>{f()}),e.onBeforeUnmount(()=>{y()}),(N,B)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["image-upload",{"has-dragging":t.dropFiles,"is-dragging":e.unref(A)}])},[!l.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(ae,{src:`${b.value.src}${t.previewWidth?`?width=${t.previewWidth}`:""}`,class:"img-thumbnail rounded",ready:e.unref(d),"onUpdate:ready":B[0]||(B[0]=T=>e.isRef(d)?d.value=T:null),animate:!1,style:e.normalizeStyle({maxWidth:t.previewWidth?`${t.previewWidth}px`:"auto",height:"auto"})},null,8,["src","ready","style"]),e.createElementVNode("div",Zi,[e.createElementVNode("div",Ki,[e.createElementVNode("button",{type:"button",onClick:B[1]||(B[1]=e.withModifiers(T=>k(b.value.src,b.value.type),["prevent","stop"])),class:"btn btn--edit btn-sm btn-light"},[e.createVNode(D,{symbol:"edit-2"})]),e.createElementVNode("button",{type:"button",onClick:B[2]||(B[2]=e.withModifiers(T=>S(),["prevent","stop"])),class:"btn btn--close btn-sm btn-light"},[e.createVNode(D,{symbol:"x"})])])])],64)):(e.openBlock(),e.createElementBlock("div",Xi,[e.createElementVNode("button",{onClick:B[3]||(B[3]=e.withModifiers(T=>S(),["prevent","stop"])),class:"btn btn--close btn-outline-contrast"},[e.createVNode(D,{symbol:"x"})])]))],2)):e.createCommentVNode("",!0),e.createVNode(Ye,{modelValue:e.unref(u),"onUpdate:modelValue":B[4]||(B[4]=T=>e.isRef(u)?u.value=T: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,er)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[e.unref(s)?(e.openBlock(),e.createElementBlock("span",tr,[...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,_i)),e.createVNode(gt,{modelValue:l.value,"onUpdate:modelValue":B[6]||(B[6]=T=>l.value=T),footer:!1},{default:e.withCtx(()=>[l.value&&a.value?(e.openBlock(),e.createBlock(pt,{key:0,modelValue:a.value.src,"onUpdate:modelValue":B[5]||(B[5]=T=>a.value.src=T),"aspect-ratio":t.aspectRatio},{submit:e.withCtx(()=>[e.createElementVNode("button",{class:"btn btn-primary",onClick:e.withModifiers(h,["prevent","stop"])},e.toDisplayString(N.$t("common.save")),1)]),_:1},8,["modelValue","aspect-ratio"])):e.createCommentVNode("",!0)]),_:1},8,["modelValue"])],2))}}),ar={class:"upload-group"},nr=["innerHTML"],lr={class:"upload-group__list"},or={class:"img-container"},ir=["src"],rr={class:"item-overlay"},sr=["onClick"],Ar={role:"button",class:"img-thumbnail d-flex justify-content-center align-items-center"},cr={role:"button",class:"img-thumbnail d-flex justify-content-center align-items-center"},ht=e.defineComponent({__name:"upload-group",props:{modelValue:{type:Array,default:()=>[]},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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:c}){const n=t,o=c,l=e.ref(""),i=e.computed({get(){return n.modelValue},set(r){o("update:modelValue",r)}});function a(r){i.value.splice(r,1),o("update:modelValue",i.value)}return e.watch(l,async(r,s)=>{r&&s!==r&&(o("update:modelValue",[...i.value,r]),await e.nextTick(),l.value="")}),(r,s)=>(e.openBlock(),e.createElementBlock("div",ar,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,innerHTML:e.unref(Y)(t.label)},null,8,nr)):e.createCommentVNode("",!0),e.createElementVNode("div",lr,[e.createVNode(Ze,{modelValue:i.value,"onUpdate:modelValue":s[2]||(s[2]=u=>i.value=u),vertical:!1,class:"mb-3"},{"list-item":e.withCtx(({item:u,index:d})=>[e.createElementVNode("div",or,[e.createElementVNode("img",{src:`${u}${t.previewWidth?`?width=${t.previewWidth}`:""}`,class:"img-thumbnail"},null,8,ir),e.createElementVNode("div",rr,[e.createElementVNode("button",{onClick:e.withModifiers(A=>a(d),["prevent"]),class:"btn btn--close"},[e.createVNode(D,{symbol:"x"})],8,sr),e.renderSlot(r.$slots,"item-overlay",{item:u,index:d})])])]),"list-append":e.withCtx(()=>[t.useImageUpload?(e.openBlock(),e.createBlock($e,{key:0,src:l.value,"onUpdate:src":s[0]||(s[0]=u=>l.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",Ar,[e.createVNode(D,{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(Ee,{key:1,src:l.value,"onUpdate:src":s[1]||(s[1]=u=>l.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",cr,[e.createVNode(D,{symbol:"plus"})])]),_:1},8,["src","endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","max-image-width"]))]),_:3},8,["modelValue"])])]))}}),dr={class:"asset-uploader"},ur=["innerHTML"],mr=e.defineComponent({__name:"asset-uploader",props:{modelValue:{type:Array,default:()=>[]},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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,showTypeDropdown:{type:Boolean,default:!1},typeOptions:{type:Array,default:()=>["background","overlay","object"]}},emits:["update:modelValue"],setup(t,{emit:c}){const n=t,o=c,l=e.computed({get(){return n.modelValue.map(a=>a.src)},set(a){o("update:modelValue",a.map((r,s)=>{const u=n.showTypeDropdown&&n.modelValue[s]?.type||n.type;return{mediaType:n.modelValue[s]&&n.modelValue[s].mediaType||r.includes("data:image")?r.includes("data:image/svg")?"Svg":"Image":n.mediaTypeMap[r.split(".")[1]],src:r,name:n.modelValue[s]&&n.modelValue[s].name||`${n.name}-${s}`,...u?{type:u}:{}}}))}});function i(a,r){o("update:modelValue",n.modelValue.map((s,u)=>u===a?{...s,type:r}:s))}return(a,r)=>(e.openBlock(),e.createElementBlock("div",dr,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,innerHTML:e.unref(Y)(t.label)},null,8,ur)):e.createCommentVNode("",!0),e.createVNode(ht,{modelValue:l.value,"onUpdate:modelValue":r[0]||(r[0]=s=>l.value=s),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},e.createSlots({_:2},[t.showTypeDropdown?{name:"item-overlay",fn:e.withCtx(({index:s})=>[e.createVNode(Ae,{name:`${t.name}-type-${s}`,options:t.typeOptions,"model-value":t.modelValue[s]?.type||null,placeholder:"type","onUpdate:modelValue":u=>i(s,u)},null,8,["name","options","model-value","onUpdate:modelValue"])]),key:"0"}:void 0]),1032,["modelValue","endpoint","custom-fetch","auth-token","disabled","preview-width","base-response-path","accept","max-file-size","use-image-upload","max-image-width","aspect-ratio"])]))}}),fr=["id","popover"],he=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:c}){const n=t,o=c,l=e.ref(),i=e.ref(),a=e.ref(!1),r=e.computed(()=>"ontouchstart"in window||navigator.maxTouchPoints>0);function s(){clearTimeout(i.value),n.hover&&l.value?.showPopover()}function u(){a.value=!0,clearTimeout(i.value),s()}function d(){a.value=!1,(n.hover||n.closeTimeout)&&(i.value=setTimeout(()=>{l.value?.hidePopover()},n.closeTimeout||n.hoverDelay))}e.watch(()=>n.modelValue,(m,f)=>{m&&!f?l.value?.matches(":popover-open")||l.value?.showPopover():!m&&f&&l.value?.matches(":popover-open")&&l.value?.hidePopover()});function A(m){m.newState==="open"?(n.closeTimeout&&!a.value&&(clearTimeout(i.value),i.value=setTimeout(()=>{a.value||l.value?.hidePopover()},n.closeTimeout)),n.modelValue||o("update:modelValue",!0)):m.newState==="closed"&&(a.value=!1,n.modelValue&&o("update:modelValue",!1))}return e.onMounted(()=>{if(l.value?.addEventListener("toggle",A),n.modelValue&&l.value?.showPopover(),!r.value){l.value?.addEventListener("mouseenter",u),l.value?.addEventListener("mouseleave",d);const m=document.querySelector(`[popovertarget="${n.id}"]`);m&&(m.addEventListener("mouseenter",u),m.addEventListener("mouseleave",d))}}),e.onBeforeUnmount(()=>{if(clearTimeout(i.value),l.value?.removeEventListener("toggle",A),!r.value){l.value?.removeEventListener("mouseenter",u),l.value?.removeEventListener("mouseleave",d);const m=document.querySelector(`[popovertarget="${n.id}"]`);m&&(m.removeEventListener("mouseenter",u),m.removeEventListener("mouseleave",d))}}),(m,f)=>(e.openBlock(),e.createElementBlock("span",{class:"popover-dialog",id:t.id,popover:t.type,ref_key:"popover",ref:l},[e.renderSlot(m.$slots,"default",{},()=>[f[0]||(f[0]=e.createTextVNode(" Popover content goes here. ",-1))])],8,fr))}}),pr={class:"preset-uploader"},gr=["innerHTML"],hr={class:"preset-uploader__list"},yr=["popovertarget"],br=["src"],kr=["onClick"],wr={class:"preset-uploader__popover p-2 d-flex gap-2 align-items-start"},Br=["popovertarget"],Cr=["src"],Vr={class:"d-flex flex-column gap-2"},Er={role:"button",class:"btn btn-sm w-100 d-inline-flex align-items-center"},$r={role:"button",class:"btn btn-sm w-100 d-inline-flex align-items-center"},Sr={key:1,class:"preset-group border border-2 rounded d-flex gap-1 p-1"},Nr=["popovertarget"],vr=["src"],Mr=["src"],Dr=["onClick"],Lr={class:"preset-uploader__popover p-2 d-flex gap-2 align-items-start"},Ir=["popovertarget"],Tr=["src"],Pr={class:"d-flex flex-column gap-2"},xr={role:"button",class:"img-thumbnail text-dark d-flex justify-content-center align-items-center"},zr={role:"button",class:"img-thumbnail text-dark d-flex justify-content-center align-items-center"},Fr={class:"preset-uploader__popover p-2 d-flex gap-2 align-items-start"},Or=["onClick"],Rr={role:"button",class:"img-thumbnail d-flex justify-content-center align-items-center"},Hr={role:"button",class:"img-thumbnail text-dark d-flex justify-content-center align-items-center"},Qr=e.defineComponent({__name:"preset-uploader",props:{modelValue:{type:Array,default:()=>[]},name:{type:String,default:()=>H()},id:{type:String,default:()=>H()},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",jpeg:"Image",webp:"Image",mp4:"Video",webm:"Video"})},baseResponsePath:{type:String,default:"/api/v1/assets"},previewWidth:{type:Number,default:0},useImageUpload:{type:Boolean,default:!1},maxImageWidth:{type:Number,default:0},aspectRatio:Number,showTypeDropdown:{type:Boolean,default:!1},typeOptions:{type:Array,default:()=>["background","overlay","object"]}},emits:["update:modelValue"],setup(t,{emit:c}){const n=t,o=c;function l($){return $?.type==="preset"}function i($){if($.includes("data:image"))return $.includes("data:image/svg")?"Svg":"Image";const P=$.split(".").pop()?.split("?")[0]?.toLowerCase()??"";return n.mediaTypeMap[P]??""}const a=e.computed({get(){return n.modelValue},set($){o("update:modelValue",$)}}),r=e.ref("");e.watch(r,async($,P)=>{if($&&P!==$){const z={src:$,name:`${n.name}-${n.modelValue.length}`,mediaType:i($)};n.type&&n.typeOptions.includes(n.type)&&(z.type=n.type),o("update:modelValue",[...n.modelValue,z]),await e.nextTick(),r.value=""}});const s=e.reactive({}),u=e.reactive({}),d=e.reactive({}),A=e.reactive({}),m=e.reactive({}),f=e.reactive({}),y=e.reactive({});e.watch(m,$=>{for(const[P,z]of Object.entries($))if(!z){const L=Number(P);delete s[L],delete u[L]}},{deep:!0}),e.watch(f,$=>{for(const[P,z]of Object.entries($))if(!z){const L=Number(P);delete d[L],delete A[L]}},{deep:!0});function b($,P){P&&(s[$]=P)}function S($,P){P&&(d[$]=P,f[$]=!0)}function p($){const P=[...n.modelValue];P.splice($,1),o("update:modelValue",P)}function k($,P){o("update:modelValue",n.modelValue.map((z,L)=>L===$?{...z,type:P}:z))}function h($,P,z){const L=n.modelValue[$];o("update:modelValue",n.modelValue.map((v,Q)=>Q===$?{...v,items:{...v.items,[P]:{...L.items[P],type:z}}}:v))}function N($,P){u[$]=P,B($)}function B($){const P=n.modelValue[$],z=P.type||n.type||"item",L=s[$],v=u[$],Q={type:"preset",items:{[z]:{src:P.src,thumbnail:P.src,type:z,mediaType:P.mediaType||i(P.src)},[v]:{src:L,thumbnail:L,type:v,mediaType:i(L)}}};delete s[$],delete u[$],m[$]=!1,o("update:modelValue",n.modelValue.map((C,F)=>F===$?Q:C))}function T($,P){A[$]=P,O($)}function O($){const P=d[$],z=A[$],L=n.modelValue[$],v={...L,items:{...L.items,[z]:{src:P,thumbnail:P,type:z,mediaType:i(P)}}};delete d[$],delete A[$],f[$]=!1,o("update:modelValue",n.modelValue.map((Q,C)=>C===$?v:Q))}function X($,P){const z=n.modelValue[$],L=Object.keys(z.items).filter(v=>v!==P);if(L.length<=1){const v=L[0],Q=v?z.items[v]:null;if(Q){const C={src:Q.src,name:`${n.name}-${$}`,type:Q.type,mediaType:Q.mediaType};o("update:modelValue",n.modelValue.map((F,I)=>I===$?C:F))}else p($)}else{const v={...z.items};delete v[P],o("update:modelValue",n.modelValue.map((Q,C)=>C===$?{...z,items:v}:Q))}}return($,P)=>(e.openBlock(),e.createElementBlock("div",pr,[t.label?(e.openBlock(),e.createElementBlock("label",{key:0,innerHTML:e.unref(Y)(t.label)},null,8,gr)):e.createCommentVNode("",!0),e.createElementVNode("div",hr,[e.createVNode(Ze,{modelValue:a.value,"onUpdate:modelValue":P[2]||(P[2]=z=>a.value=z),vertical:!1,class:"mb-3"},{"list-item":e.withCtx(({item:z,index:L})=>[l(z)?(e.openBlock(),e.createElementBlock("div",Sr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.items,(v,Q)=>(e.openBlock(),e.createElementBlock("div",{key:Q,class:"img-container",style:e.normalizeStyle(t.showTypeDropdown?{anchorName:`--${t.name}-si-${L}-${Q}`}:{})},[t.showTypeDropdown?(e.openBlock(),e.createElementBlock("button",{key:0,class:"img-trigger",popovertarget:`${t.name}-si-${L}-${Q}`},[e.createElementVNode("img",{src:v.thumbnail||v.src,class:"img-thumbnail border-0 p-0"},null,8,vr)],8,Nr)):(e.openBlock(),e.createElementBlock("img",{key:1,src:v.thumbnail||v.src,class:"img-thumbnail border-0 p-0"},null,8,Mr)),e.createElementVNode("button",{onClick:e.withModifiers(C=>X(L,String(Q)),["prevent"]),class:"btn btn--close"},[e.createVNode(D,{symbol:"x"})],8,Dr),t.showTypeDropdown?(e.openBlock(),e.createBlock(he,{key:2,id:`${t.name}-si-${L}-${Q}`,modelValue:y[`${L}-${Q}`],"onUpdate:modelValue":C=>y[`${L}-${Q}`]=C,class:"preset-uploader__item-popover",style:e.normalizeStyle({positionAnchor:`--${t.name}-si-${L}-${Q}`})},{default:e.withCtx(()=>[e.createElementVNode("div",Lr,[e.createElementVNode("button",{class:"img-trigger",popovertarget:`${t.name}-si-${L}-${Q}`,popovertargetaction:"hide"},[e.createElementVNode("img",{src:v.thumbnail||v.src,class:"img-thumbnail"},null,8,Tr)],8,Ir),e.createElementVNode("div",Pr,[e.createVNode(Ae,{name:`${t.name}-si-type-${L}-${Q}`,options:t.typeOptions,"model-value":v.type||null,placeholder:"layer type","onUpdate:modelValue":C=>h(L,String(Q),C)},null,8,["name","options","model-value","onUpdate:modelValue"])])])]),_:2},1032,["id","modelValue","onUpdate:modelValue","style"])):e.createCommentVNode("",!0)],4))),128)),e.createElementVNode("div",{class:"img-container img-container--add",style:e.normalizeStyle({anchorName:`--${t.name}-ap-${L}`})},[t.useImageUpload?(e.openBlock(),e.createBlock($e,{key:0,src:"",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,"onUpdate:src":v=>S(L,v)},{button:e.withCtx(()=>[e.createElementVNode("span",xr,[e.createVNode(D,{symbol:"plus"})])]),_:1},8,["endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","max-image-width","aspect-ratio","onUpdate:src"])):(e.openBlock(),e.createBlock(Ee,{key:1,src:"",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,"onUpdate:src":v=>S(L,v)},{button:e.withCtx(()=>[e.createElementVNode("span",zr,[e.createVNode(D,{symbol:"plus"})])]),_:1},8,["endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","onUpdate:src"])),e.createVNode(he,{id:`${t.name}-ap-${L}`,modelValue:f[L],"onUpdate:modelValue":v=>f[L]=v,class:"preset-uploader__anchor-popover",style:e.normalizeStyle({positionAnchor:`--${t.name}-ap-${L}`})},{default:e.withCtx(()=>[e.createElementVNode("div",Fr,[e.createVNode(Ae,{class:"mb-0",name:`${t.name}-add-type-${L}`,options:t.typeOptions,"model-value":A[L]||null,placeholder:"layer type","onUpdate:modelValue":v=>T(L,v)},null,8,["name","options","model-value","onUpdate:modelValue"])])]),_:2},1032,["id","modelValue","onUpdate:modelValue","style"])],4),e.createElementVNode("button",{onClick:e.withModifiers(v=>p(L),["prevent"]),class:"btn btn--close btn--close-preset"},[e.createVNode(D,{symbol:"x"})],8,Or)])):(e.openBlock(),e.createElementBlock("div",{key:0,class:"img-container",style:e.normalizeStyle({anchorName:`--${t.name}-pp-${L}`})},[e.createElementVNode("button",{class:"img-trigger",popovertarget:`${t.name}-pp-${L}`},[e.createElementVNode("img",{src:z.thumbnail||z.src,class:"img-thumbnail"},null,8,br)],8,yr),e.createElementVNode("button",{onClick:e.withModifiers(v=>p(L),["prevent"]),class:"btn btn--close"},[e.createVNode(D,{symbol:"x"})],8,kr),e.createVNode(he,{id:`${t.name}-pp-${L}`,modelValue:m[L],"onUpdate:modelValue":v=>m[L]=v,class:"preset-uploader__item-popover",style:e.normalizeStyle({positionAnchor:`--${t.name}-pp-${L}`})},{default:e.withCtx(()=>[e.createElementVNode("div",wr,[e.createElementVNode("button",{class:"img-trigger",popovertarget:`${t.name}-pp-${L}`,popovertargetaction:"hide"},[e.createElementVNode("img",{src:z.thumbnail||z.src,class:"img-thumbnail"},null,8,Cr)],8,Br),e.createElementVNode("div",Vr,[t.showTypeDropdown?(e.openBlock(),e.createBlock(Ae,{key:0,name:`${t.name}-type-${L}`,options:t.typeOptions,"model-value":z.type||null,placeholder:"item type","onUpdate:modelValue":v=>k(L,v)},null,8,["name","options","model-value","onUpdate:modelValue"])):e.createCommentVNode("",!0),s[L]?(e.openBlock(),e.createBlock(Ae,{key:2,name:`${t.name}-promote-type-${L}`,options:t.typeOptions,"model-value":u[L]||null,placeholder:"new layer type","onUpdate:modelValue":v=>N(L,v)},null,8,["name","options","model-value","onUpdate:modelValue"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[t.useImageUpload?(e.openBlock(),e.createBlock($e,{key:0,src:"",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,"onUpdate:src":v=>b(L,v)},{button:e.withCtx(()=>[e.createElementVNode("span",Er,[e.createVNode(D,{symbol:"plus"}),P[3]||(P[3]=e.createTextVNode(" Add layer",-1))])]),_:1},8,["endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","max-image-width","aspect-ratio","onUpdate:src"])):(e.openBlock(),e.createBlock(Ee,{key:1,src:"",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,"onUpdate:src":v=>b(L,v)},{button:e.withCtx(()=>[e.createElementVNode("span",$r,[e.createVNode(D,{symbol:"plus"}),P[4]||(P[4]=e.createTextVNode(" Add layer",-1))])]),_:1},8,["endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size","onUpdate:src"]))],64))])])]),_:2},1032,["id","modelValue","onUpdate:modelValue","style"])],4))]),"list-append":e.withCtx(()=>[t.useImageUpload?(e.openBlock(),e.createBlock($e,{key:0,src:r.value,"onUpdate:src":P[0]||(P[0]=z=>r.value=z),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",Rr,[e.createVNode(D,{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(Ee,{key:1,src:r.value,"onUpdate:src":P[1]||(P[1]=z=>r.value=z),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},{button:e.withCtx(()=>[e.createElementVNode("span",Hr,[e.createVNode(D,{symbol:"plus"})])]),_:1},8,["src","endpoint","custom-fetch","to-data-url","auth-token","disabled","base-response-path","accept","max-file-size"]))]),_:1},8,["modelValue"])])]))}}),Ur="https://router.project-osrm.org/route/v1";function yt(){const t=e.ref([]),c=e.ref(null),n=e.ref(null),o=e.ref([]),l=e.ref(!1),i=e.ref(""),a=e.computed(()=>t.value.length>1);function r(){t.value=[],c.value=null,n.value=null,o.value=[],i.value=""}async function s(u,d,A={}){if(!u||!d)return r(),null;l.value=!0;const m=A.customFetch||Ie.ofetch,f=(A.endpoint||Ur).replace(/\/$/,""),y=A.profile||"driving";try{const S=(await m(`${f}/${y}/${u.lng},${u.lat};${d.lng},${d.lat}`,{method:"GET",query:{alternatives:!1,overview:"full",steps:!0,geometries:"geojson"}}))?.routes?.[0];if(!S)throw new Error("No route available for these points.");return t.value=Array.isArray(S?.geometry?.coordinates)?S.geometry.coordinates.map(p=>[Number(p[1]),Number(p[0])]).filter(p=>Number.isFinite(p[0])&&Number.isFinite(p[1])):[],c.value=Number.isFinite(S?.distance)?Number(S.distance):null,n.value=Number.isFinite(S?.duration)?Number(S.duration):null,o.value=Array.isArray(S?.legs)?S.legs.flatMap(p=>Array.isArray(p?.steps)?p.steps.map(k=>Wr(k)):[]):[],i.value="",S}catch(b){return r(),i.value=b?.message||"Unable to load directions right now.",null}finally{l.value=!1}}return{routeCoordinates:t,distanceMeters:c,durationSeconds:n,steps:o,pending:l,error:i,hasRoute:a,fetchRoute:s,clearRoute:r}}function Wr(t){const c=`${t?.maneuver?.type||"continue"}`,n=t?.maneuver?.modifier?` ${t.maneuver.modifier}`:"",o=`${t?.name||""}`;return{instruction:`${jr(c)}${n}${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 jr(t){return t.charAt(0).toUpperCase()+t.slice(1)}const qr="https://nominatim.openstreetmap.org/search",Gr="https://nominatim.openstreetmap.org/reverse";function bt(){const t=e.ref([]),c=e.ref(!1),n=e.ref("");function o(){t.value=[],n.value=""}async function l(a,r={}){if(!a.trim())return o(),[];c.value=!0;const s=r.customFetch||Ie.ofetch;try{const u=await s(r.endpoint||qr,{method:"GET",headers:{Accept:"application/json",...r.language?{"Accept-Language":r.language}:{}},query:{q:a,format:"jsonv2",addressdetails:1,limit:r.limit||5}});return t.value=Array.isArray(u)?u.map((d,A)=>kt(d,A,"geocoder")).filter(d=>!!d):[],n.value="",t.value}catch(u){return n.value=u?.message||"Unable to search locations right now.",t.value=[],[]}finally{c.value=!1}}async function i(a,r={}){c.value=!0;const s=r.customFetch||Ie.ofetch;try{const u=await s(r.reverseEndpoint||Gr,{method:"GET",headers:{Accept:"application/json",...r.language?{"Accept-Language":r.language}:{}},query:{lat:a.lat,lon:a.lng,format:"jsonv2",addressdetails:1}}),d=kt(u,0,"reverse-geocoder");return n.value="",d}catch(u){return n.value=u?.message||"Unable to resolve this location right now.",null}finally{c.value=!1}}return{results:t,pending:c,error:n,search:l,reverse:i,clearResults:o}}function kt(t,c,n){const o=Number(t?.lat),l=Number(t?.lon??t?.lng);if(!Number.isFinite(o)||!Number.isFinite(l))return null;const i=`${t?.display_name||t?.name||"Location"}`,a=`${t?.name||i.split(",")[0]||"Location"}`.trim();return{id:`${n==="reverse-geocoder"?"reverse":"geo"}-${t?.place_id??c}`,title:a,address:i,lat:o,lng:l,source:n,raw:t}}function wt(t={}){const c=e.ref(null),n=e.ref(""),o=e.ref(!1),l=e.ref(!1),i=typeof window<"u"&&typeof navigator<"u"&&"geolocation"in navigator,a={enableHighAccuracy:!0,timeout:1e4,maximumAge:1e4,...t};let r=null;function s(f){c.value={lat:Number(f.latitude),lng:Number(f.longitude),accuracy:Number.isFinite(f.accuracy)?Number(f.accuracy):null},o.value=!1,n.value=""}function u(f){n.value=typeof f=="string"?f:f instanceof Error?f.message:f.message||"Unable to retrieve your location.",o.value=!1}async function d(){return i?(o.value=!0,new Promise(f=>{navigator.geolocation.getCurrentPosition(({coords:y})=>{s(y),f(c.value)},y=>{u(y),f(null)},a)})):(u("Geolocation is not supported in this browser."),null)}function A(){if(!i){u("Geolocation is not supported in this browser.");return}r===null&&(o.value=!0,l.value=!0,r=navigator.geolocation.watchPosition(({coords:f})=>{s(f)},f=>{u(f),l.value=!1},a))}function m(){if(!i||r===null){l.value=!1,o.value=!1;return}navigator.geolocation.clearWatch(r),r=null,l.value=!1,o.value=!1}return e.onBeforeUnmount(()=>{m()}),{supported:i,position:e.computed(()=>c.value),accuracy:e.computed(()=>c.value?.accuracy??null),error:n,pending:o,isTracking:l,locate:d,startTracking:A,stopTracking:m}}const Jr={class:"location-finder","data-testid":"location-finder"},Yr={class:"location-finder__actions"},Zr=["disabled"],Kr={key:1,class:"location-finder__notice","data-testid":"location-finder-error"},Xr={class:"location-finder__map-panel"},_r=["aria-label"],es={class:"location-finder__legend-item"},ts={class:"location-finder__legend-item"},as={class:"location-finder__legend-item"},ns={class:"location-finder__legend-item"},ls={key:0,class:"location-finder__sidebar"},os={key:1,class:"location-finder__summary","data-testid":"location-finder-directions"},is={class:"location-finder__summary-title"},rs={key:0,class:"location-finder__summary-copy"},ss={class:"location-finder__summary-grid"},As={class:"location-finder__summary-label"},cs={"data-testid":"location-finder-distance"},ds={class:"location-finder__summary-label"},us={"data-testid":"location-finder-duration"},ms={key:0,class:"location-finder__steps"},fs={key:0},ps={key:2,class:"location-finder__summary-copy"},gs=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:c}){const n={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"},l=t,i=c,{t:a,te:r}=je.useI18n({useScope:"global"}),s=wt(),u=bt(),d=yt(),A=e.ref(""),m=e.ref(re(ce(l.modelValue))),f=e.ref(re(ce(l.modelValue))?null:ce(l.modelValue)),y=e.ref(W(l.modelValue)||W(l.center)||W(l.locations[0])||n),b=e.ref(!1),S=e.computed(()=>W(l.userLocation)),p=e.computed(()=>s.position.value||S.value),k=e.computed(()=>W(f.value)),h=e.computed(()=>W(m.value)),N=e.computed(()=>p.value||k.value),B=e.computed(()=>!N.value||!h.value?null:Re(N.value,h.value)),T=e.computed(()=>W(l.modelValue)||k.value||h.value),O=e.computed(()=>s.error.value||u.error.value||d.error.value||""),X=e.computed(()=>l.showSearch||l.trackUser&&l.showTrackButton),$=e.computed(()=>l.enableDirections&&l.showDirectionsSummary),P=e.computed(()=>l.showSidebar||$.value),z=e.computed(()=>He(d.distanceMeters.value)),L=e.computed(()=>ve(d.durationSeconds.value)),v=e.computed(()=>({searchLabel:q("searchLabel",l.searchLabel),searchPlaceholder:q("searchPlaceholder",l.searchPlaceholder),resultsLabel:q("resultsLabel",l.resultsLabel),emptyText:q("emptyText",l.emptyText),locateButtonLabel:q("locateButtonLabel",l.locateButtonLabel),stopTrackingLabel:q("stopTrackingLabel",l.stopTrackingLabel),mapHelperText:q("mapHelperText",l.mapHelperText),directionsTitle:q("directionsTitle",l.directionsTitle),directionsEmptyText:q("directionsEmptyText",l.directionsEmptyText),distanceLabel:q("distanceLabel",l.distanceLabel),durationLabel:q("durationLabel",l.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")})),Q=e.computed(()=>f.value?ue(f.value):v.value.selectedLocationLabel),C=e.computed(()=>s.isTracking.value&&b.value?v.value.stopTrackingLabel:v.value.locateButtonLabel);e.watch(()=>l.modelValue,g=>{const w=ce(g),E=re(w);E?(m.value=E,f.value=null):w&&(f.value=w);const R=W(g);R&&(y.value=R)},{immediate:!0}),e.watch(()=>l.center,g=>{const w=W(g);w&&(y.value=w)},{deep:!0}),e.watch(p,g=>{g&&b.value&&(y.value=g)},{deep:!0}),e.watch(B,g=>{i("update:distance",g)},{immediate:!0}),e.watch(A,async g=>{if(i("search",g),!l.enableGeocoding){u.clearResults();return}const w=g.trim();if(w.length<l.geocodingMinQueryLength){u.clearResults();return}await u.search(w,{endpoint:l.geocodingEndpoint,customFetch:l.customGeocodingFetch,limit:l.geocodingLimit})}),e.watch(()=>({enabled:l.enableDirections,origin:p.value,destination:T.value,profile:l.routeProfile}),async({enabled:g,origin:w,destination:E,profile:R})=>{if(!g||!w||!E||me(w,E)){d.clearRoute();return}await d.fetchRoute(w,E,{endpoint:l.directionsEndpoint,profile:R,customFetch:l.customDirectionsFetch})},{immediate:!0,deep:!0}),e.onMounted(async()=>{l.autoLocate&&l.trackUser&&await ne()});const F=e.computed(()=>{const g=Ne(A.value).trim();return g?l.locations.filter(w=>[ue(w),Oe(w)].filter(Boolean).some(E=>Ne(E).includes(g))):l.locations}),I=e.computed(()=>u.results.value.map(g=>({id:g.id,title:g.title,address:g.address,lat:g.lat,lng:g.lng,source:g.source}))),U=e.computed(()=>{if(!A.value.trim())return l.locations;const g=F.value;return g.length?g:l.locations}),j=e.computed(()=>U.value),we=e.computed(()=>ye(U.value,l.enableGeocoding?I.value:[])),ee=e.computed(()=>Array.from(new Set(we.value.map(g=>se(g))))),Be=e.computed(()=>j.value.map(g=>{const w=W(g);return w?{id:de(g),label:ue(g),...w,type:h.value&&me(w,h.value)?"selected":"list"}:null}).filter(g=>!!g)),Se=e.computed(()=>b.value&&p.value?p.value:y.value||T.value||p.value||W(j.value[0])||n);function q(g,w){const E=l.messages?.[g];if(typeof E=="string"&&E.trim())return E;if(typeof w=="string"&&w.trim())return w;const R=`locationFinder.${String(g)}`;return r(R)?String(a(R)):o[g]}function W(g){if(!g)return null;const w=Number(g.lat),E=Number(g.lng);return!Number.isFinite(w)||!Number.isFinite(E)?null:{lat:w,lng:E}}function ce(g){if(!g)return null;const w=W(g);return w?{...g,...w}:null}function de(g){return g?typeof g!="object"?g:g.id??g.value??se(g):null}function re(g){return g&&l.locations.find(w=>de(w)===de(g)||me(W(w),W(g)))||null}function Ne(g){return`${g??""}`.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase()}function ue(g){return`${g.title||g.label||g.name||"Location"}`}function Oe(g){return`${g.address||g.description||g.subtitle||""}`}function se(g){const w=ue(g),E=Oe(g);return E?`${w} — ${E}`:w}function ye(g,w){const E=[...g];return w.forEach(R=>{E.some(fe=>de(fe)===de(R)||me(W(fe),W(R)))||E.push(R)}),E}function me(g,w){return!g||!w?!1:Math.abs(g.lat-w.lat)<1e-6&&Math.abs(g.lng-w.lng)<1e-6}function Re(g,w){const E=Xe=>Xe*(Math.PI/180),J=E(w.lat-g.lat),fe=E(w.lng-g.lng),pe=E(g.lat),be=E(w.lat),te=Math.sin(J/2)**2+Math.cos(pe)*Math.cos(be)*Math.sin(fe/2)**2,Ve=2*Math.atan2(Math.sqrt(te),Math.sqrt(1-te));return Math.round(6371e3*Ve)}function He(g){return g===null||!Number.isFinite(g)?"—":g>=1e3?`${(g/1e3).toFixed(1)} km`:`${Math.round(g)} m`}function ve(g){if(g===null||!Number.isFinite(g))return"—";const w=Math.max(1,Math.round(g/60));if(w<60)return`${w} min`;const E=Math.floor(w/60),R=w%60;return R?`${E} h ${R} min`:`${E} h`}function Ce(g){const w=ce(g),E=re(w);if(b.value=!1,!w){i("update:modelValue",null);return}m.value=E||w;const R=W(w);R&&(y.value=R),i("update:modelValue",w),i("select",w)}function Me(g){const w=ce(g),E=re(w);if(b.value=!1,!w){i("update:modelValue",null);return}E?(m.value=E,f.value=null):f.value=w;const R=W(w);R&&(y.value=R),i("update:modelValue",w),i("select",w)}function Qe(g){const w=we.value.find(E=>se(E)===g||ue(E)===g);if(w){if(re(w)){Ce(w),f.value=null;return}Me(w)}}function Ue(g){Ce(g)}function V(g){if(g.id==="user-location"&&p.value){y.value=p.value,b.value=!0,i("track-user",p.value);return}const w=j.value.find(E=>de(E)===g.id)||j.value.find(E=>{const R=W(E);return R&&Math.abs(R.lat-g.lat)<1e-6&&Math.abs(R.lng-g.lng)<1e-6});if(w){Ce(w);return}f.value&&(de(f.value)===g.id||me(W(f.value),{lat:g.lat,lng:g.lng}))&&Me(f.value)}async function x(g){if(y.value=g,b.value=!1,!l.interactive)return;const w=j.value.find(R=>{const J=W(R);return J&&Math.abs(J.lat-g.lat)<1e-6&&Math.abs(J.lng-g.lng)<1e-6});if(w){Ce(w);return}const E=await G(g,v.value.pinnedLocationTitle);Me(E)}async function G(g,w){if(!l.enableGeocoding)return{id:`pin-${g.lat}-${g.lng}`,title:w,lat:g.lat,lng:g.lng};const E=await u.reverse(g,{reverseEndpoint:l.reverseGeocodingEndpoint,customFetch:l.customGeocodingFetch});return E?{id:E.id,title:E.title||w,address:E.address,lat:E.lat,lng:E.lng,source:E.source}:{id:`pin-${g.lat}-${g.lng}`,title:w,lat:g.lat,lng:g.lng}}async function ne(){if(s.isTracking.value&&b.value){s.stopTracking(),b.value=!1;return}if(p.value){y.value=p.value,b.value=!0,i("track-user",p.value),!s.isTracking.value&&!S.value&&s.startTracking();return}const g=await s.locate();g&&(y.value=g,b.value=!0,i("track-user",g),s.startTracking())}return(g,w)=>(e.openBlock(),e.createElementBlock("div",Jr,[X.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["location-finder__toolbar",{"location-finder__toolbar--actions-only":!l.showSearch}])},[l.showSearch?(e.openBlock(),e.createBlock(rt,{key:0,modelValue:A.value,"onUpdate:modelValue":w[0]||(w[0]=E=>A.value=E),class:"location-finder__search",label:v.value.searchLabel,placeholder:v.value.searchPlaceholder,options:ee.value,disabled:t.disabled,"onUpdate:selection":Qe},null,8,["modelValue","label","placeholder","options","disabled"])):e.createCommentVNode("",!0),e.createElementVNode("div",Yr,[t.trackUser&&l.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(s).pending.value,"data-testid":"location-finder-locate",onClick:ne},e.toDisplayString(C.value),9,Zr)):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),O.value?(e.openBlock(),e.createElementBlock("p",Kr,e.toDisplayString(O.value),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["location-finder__layout",{"location-finder__layout--with-summary":$.value,"location-finder__layout--full-width":!P.value}])},[e.createElementVNode("div",Xr,[e.createVNode(ct,{class:"location-finder__map",center:Se.value,markers:Be.value,"model-value":k.value,"user-location":p.value,"user-location-label":v.value.userLocationLabel,"selected-location-label":Q.value,"route-coordinates":e.unref(d).routeCoordinates.value,"route-color":t.routeColor,"route-weight":t.routeWeight,"selection-radius":t.selectionRadius,"selection-radius-center":T.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":v.value.mapHelperText,"onUpdate:modelValue":x,onMarkerClick:V},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"]),l.showLegend?(e.openBlock(),e.createElementBlock("div",{key:0,class:"location-finder__legend","data-testid":"location-finder-legend","aria-label":v.value.legendAriaLabel},[e.createElementVNode("span",es,[w[2]||(w[2]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--list"},null,-1)),e.createTextVNode(" "+e.toDisplayString(v.value.legendLocations),1)]),e.createElementVNode("span",ts,[w[3]||(w[3]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--selected"},null,-1)),e.createTextVNode(" "+e.toDisplayString(v.value.legendSelected),1)]),e.createElementVNode("span",as,[w[4]||(w[4]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--search"},null,-1)),e.createTextVNode(" "+e.toDisplayString(v.value.legendSearchResult),1)]),e.createElementVNode("span",ns,[w[5]||(w[5]=e.createElementVNode("span",{class:"location-finder__legend-swatch location-finder__legend-swatch--user"},null,-1)),e.createTextVNode(" "+e.toDisplayString(v.value.userLocationLabel),1)])],8,_r)):e.createCommentVNode("",!0)]),P.value?(e.openBlock(),e.createElementBlock("aside",ls,[l.showSidebar?(e.openBlock(),e.createBlock(dt,{key:0,modelValue:m.value,"onUpdate:modelValue":w[1]||(w[1]=E=>m.value=E),class:"location-finder__results",locations:j.value,label:v.value.resultsLabel,"empty-text":v.value.emptyText,onSelect:Ue},null,8,["modelValue","locations","label","empty-text"])):e.createCommentVNode("",!0),$.value?(e.openBlock(),e.createElementBlock("div",os,[e.createElementVNode("p",is,e.toDisplayString(v.value.directionsTitle),1),e.unref(d).pending.value?(e.openBlock(),e.createElementBlock("p",rs,e.toDisplayString(v.value.loadingRoute),1)):e.unref(d).hasRoute.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",ss,[e.createElementVNode("div",null,[e.createElementVNode("p",As,e.toDisplayString(v.value.distanceLabel),1),e.createElementVNode("strong",cs,e.toDisplayString(z.value),1)]),e.createElementVNode("div",null,[e.createElementVNode("p",ds,e.toDisplayString(v.value.durationLabel),1),e.createElementVNode("strong",us,e.toDisplayString(L.value),1)])]),t.showDirectionsSteps&&e.unref(d).steps.value.length?(e.openBlock(),e.createElementBlock("ol",ms,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d).steps.value.slice(0,5),(E,R)=>(e.openBlock(),e.createElementBlock("li",{key:`${E.instruction}-${R}`},[e.createElementVNode("span",null,e.toDisplayString(E.instruction),1),E.name?(e.openBlock(),e.createElementBlock("small",fs,e.toDisplayString(E.name),1)):e.createCommentVNode("",!0)]))),128))])):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock("p",ps,e.toDisplayString(v.value.directionsEmptyText),1))])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],2)]))}}),hs={class:"carousel d-flex"},ys=["title"],bs=["onClick"],ks=["title"],Bt=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:c}){const n=c,o=e.ref(),l=e.ref();function i(){o.value.scrollTo({top:0,left:o.value.scrollLeft-o.value.clientWidth>0?o.value.scrollLeft-o.value.clientWidth:0,behavior:"smooth"})}function a(){o.value.scrollTo({top:0,left:o.value.scrollLeft-o.value.clientWidth<=l.value.clientWidth?o.value.scrollLeft+o.value.clientWidth:l.value.clientWidth,behavior:"smooth"})}function r(s){n("update:modelValue",s)}return(s,u)=>(e.openBlock(),e.createElementBlock("div",hs,[t.navigation?(e.openBlock(),e.createElementBlock("button",{key:0,class:"carousel__control btn btn-link text-light",type:"button",onClick:e.withModifiers(i,["prevent","stop"]),title:s.$t("common.backward")},[e.createVNode(D,{symbol:"chevron-left"})],8,ys)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"viewport",ref:o,class:"carousel__viewport flex-grow-1"},[e.createElementVNode("div",{ref_key:"track",ref:l,class:"carousel__track d-flex justify-center align-items-center"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(d,A)=>e.renderSlot(s.$slots,"carousel-item",{key:d.src,item:d,index:A},()=>[e.createElementVNode("div",{class:e.normalizeClass(["carousel__item",A===t.modelValue?"selected":""]),onClick:m=>r(A)},e.toDisplayString(d),11,bs)])),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(a,["prevent","stop"]),title:s.$t("common.forward")},[e.createVNode(D,{symbol:"chevron-right"})],8,ks)):e.createCommentVNode("",!0)]))}}),ws={class:"media-thumbnails"},Bs=["onClick","title"],Cs={key:0,class:"img-container"},Vs={key:0,class:"media-thumbnails__count-badge"},Es={key:2,class:"img-container"},$s=e.defineComponent({__name:"media-thumbnails",props:{modelValue:{default:null},config:{type:Object,default:null},messages:{type:Object,default:{}},assets:{type:Array,default:[]},stacked:{type:Boolean,default:!1},showCount:{type:Boolean,default:!1}},emits:["update:modelValue","select"],setup(t,{emit:c}){const n=c,o=e.ref(-1);function l(i){o.value=i,n("update:modelValue",i),n("select",i)}return(i,a)=>(e.openBlock(),e.createElementBlock("div",ws,[e.createVNode(Bt,{items:t.assets},{"carousel-item":e.withCtx(r=>[e.createElementVNode("button",{type:"button",class:e.normalizeClass(["carousel__item media-thumbnails__thumbnail",r.index===t.modelValue||r.index===o.value?"is-active":""]),onClick:s=>l(r.index),title:`${i.$t("thumbnails.thumbnail")} ${r.index+1}`},[r.item.type==="preset"&&r.item.thumbnail?(e.openBlock(),e.createElementBlock("div",Cs,[e.createVNode(ae,{src:r.item.thumbnail,class:"img-fluid"},null,8,["src"])])):r.item.type==="preset"?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["img-container img-container--multi",{"img-container--stacked":t.stacked}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.item.items,(s,u)=>(e.openBlock(),e.createBlock(ae,{key:u,src:s.thumbnail||s.src,class:"img-fluid"},null,8,["src"]))),128)),t.showCount&&Object.keys(r.item.items||{}).length?(e.openBlock(),e.createElementBlock("span",Vs,e.toDisplayString(Object.keys(r.item.items||{}).length),1)):e.createCommentVNode("",!0)],2)):(e.openBlock(),e.createElementBlock("div",Es,[e.createVNode(ae,{src:r.item.thumbnail||r.item.src,class:"img-fluid"},null,8,["src"])]))],10,Bs)]),_:1},8,["items"])]))}}),Ss={class:"progress-steps"},Ns={class:"progress-steps__list"},vs={class:"progress-step"},Ms=["checked","id","value","disabled","read-only","required","onChange"],Ds=["for"],Ls=["innerHTML"],Is=["for"],Ts=["innerHTML"],Ps=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:c}){const n=t,o=c;function l(i){o("update:modelValue",i),i>=n.progress&&o("update:progress",i)}return(i,a)=>(e.openBlock(),e.createElementBlock("div",Ss,[e.createElementVNode("ul",Ns,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.steps,(r,s)=>(e.openBlock(),e.createElementBlock("li",{key:s,class:e.normalizeClass(["progress-steps__step",{"progress-steps__step--disabled":s>t.progress+(t.reveal?1:0),"progress-steps__step--active":s===(t.modelValue||0)}])},[e.renderSlot(i.$slots,"step",{},()=>[e.createElementVNode("div",vs,[e.createElementVNode("input",{type:"radio",checked:s<=(t.progress||0),id:`step-${s}`,name:"step",class:"form-check-input",value:r.value,disabled:r.disabled||s>t.progress+(t.reveal?1:0),"read-only":r.readOnly,required:r.required,onChange:u=>l(s)},null,40,Ms),e.createElementVNode("label",{for:`step-${s}`},[e.renderSlot(i.$slots,"button",{step:r},()=>[e.createElementVNode("span",{class:"btn rounded-circle",innerHTML:e.unref(Y)(r.text||"")},null,8,Ls)])],8,Ds),e.createElementVNode("label",{for:`step-${s}`},[e.renderSlot(i.$slots,"label",{step:r},()=>[e.createElementVNode("span",{class:"form-check-label",innerHTML:e.unref(Y)(r.label||"")},null,8,Ts)])],8,Is)])])],2))),128))])]))}}),xs={class:"hint-system"},zs=["innerHTML"],Fs=["innerHTML"],Os={key:1,class:"hint-system__hint-content"},Rs=["disabled"],Hs=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:c}){const n=t,o=c,l=e.ref(n.modelValue);e.watch(()=>n.modelValue,u=>{l.value=u});const i=e.computed(()=>n.maxHints!==void 0?n.maxHints:n.hints.length),a=e.computed(()=>l.value<i.value),r=e.computed(()=>n.hints.slice(0,l.value));function s(){if(!a.value)return;const u=l.value;l.value++,o("update:modelValue",l.value),o("hint-revealed",{hint:n.hints[u],index:u,penaltyTotal:l.value*n.penalty})}return(u,d)=>(e.openBlock(),e.createElementBlock("div",xs,[t.description?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:e.unref(Y)(t.description),class:"hint-system__description"},null,8,zs)):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,(A,m)=>(e.openBlock(),e.createElementBlock("li",{key:m,class:"hint-system__hint"},[e.renderSlot(u.$slots,"hint",{hint:A,index:m,isNew:m===l.value-1},()=>[t.htmlContent?(e.openBlock(),e.createElementBlock("div",{key:0,class:"hint-system__hint-content",innerHTML:e.unref(Y)(A.content||"")},null,8,Fs)):(e.openBlock(),e.createElementBlock("div",Os,e.toDisplayString(A.content),1))])]))),128))]),_:3})):e.createCommentVNode("",!0),e.renderSlot(u.$slots,"trigger",{revealNext:s,canReveal:a.value,revealedCount:l.value,total:i.value},()=>[e.createElementVNode("button",{type:"button",class:"hint-system__trigger d-block w-100 text-center",disabled:!a.value,onClick:s},e.toDisplayString(t.label),9,Rs)])]))}}),Qs={class:"popover-tooltip"},Us=["popovertarget","disabled","aria-describedby","aria-label"],Ws={class:"popover-tooltip__content d-flex flex-column"},js={key:0,class:"popover-tooltip__header d-flex p-3 border-bottom"},qs=["innerHTML"],Gs={class:"popover-tooltip__body"},Js=["innerHTML"],Ys={key:1,class:"popover-tooltip__footer d-flex p-3 border-top"},Zs=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:c}){const n=t,o=c,l=Pe(()=>n.title),i=Pe(()=>n.content),a=e.computed({get(){return n.modelValue},set(u){o("update:modelValue",u)}}),r=e.ref(),s=e.ref();return(u,d)=>(e.openBlock(),e.createElementBlock("span",Qs,[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",{},()=>[d[3]||(d[3]=e.createElementVNode("span",{class:"popover-tooltip__trigger"}," i ",-1))])],8,Us),e.createVNode(he,{id:t.id,modelValue:a.value,"onUpdate:modelValue":d[2]||(d[2]=A=>a.value=A),hover:t.hover,"hover-delay":t.hoverDelay,ref_key:"dialog",ref:s,role:"tooltip",class:e.normalizeClass(t.size?`popover-tooltip--${t.size}`:"")},{default:e.withCtx(()=>[e.createElementVNode("div",Ws,[t.header?(e.openBlock(),e.createElementBlock("div",js,[t.title?(e.openBlock(),e.createElementBlock("h5",{key:0,class:"popover-tooltip__title",innerHTML:e.unref(l)},null,8,qs)):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",class:"btn-close ms-auto border-radius-none","aria-label":"Close",onClick:d[0]||(d[0]=A=>a.value=!1)})])):e.createCommentVNode("",!0),e.createElementVNode("div",Gs,[e.renderSlot(u.$slots,"default",{},()=>[e.createElementVNode("span",{innerHTML:e.unref(i)},null,8,Js)])]),t.footer?(e.openBlock(),e.createElementBlock("div",Ys,[e.renderSlot(u.$slots,"footer"),e.createElementVNode("button",{type:"button",class:"btn ms-auto",onClick:d[1]||(d[1]=A=>a.value=!1)},e.toDisplayString(u.$t("common.close")),1)])):e.createCommentVNode("",!0)])]),_:3},8,["id","modelValue","hover","hover-delay","class"])]))}}),Ks={class:"popover-notification__header d-flex justify-content-between mb-2"},Xs={class:"popover-notification__title"},_s=["onClick"],eA=["innerHTML"],tA=240,aA=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},collapseItems:{type:Number,default:3}},setup(t,{expose:c}){const n=t,o=e.ref([]),l=e.ref([]),i=e.ref(null),a=new Map,r=e.computed(()=>o.value.map(p=>({...p,content:Y(p.content||"")}))),s=e.ref(!1),u=e.computed(()=>s.value?[...r.value].reverse():r.value);function d(p,k){k===!1&&f(p)}function A(p){const k=a.get(p);k&&(clearTimeout(k),a.delete(p))}function m(p){const k=p.closeTimeout??n.closeTimeout;A(p.id),k&&a.set(p.id,window.setTimeout(()=>{A(p.id),f(p)},k))}function f(p){p.visible===!1&&a.has(p.id)||(A(p.id),p.visible=!1,a.set(p.id,window.setTimeout(()=>{o.value=o.value.filter(k=>k.id!==p.id),a.delete(p.id),o.value.length===0&&(s.value=!1)},tA)))}function y(p){if(n.collapsible&&o.value.length>=n.collapseItems){const h=o.value.shift();h&&A(h.id)}n.collapsible&&o.value.length+1>=n.collapseItems&&(s.value=!0),o.value.forEach(h=>{h.stackIndex=(h.stackIndex??0)+1});const k={...p,closeTimeout:p.closeTimeout??n.closeTimeout,visible:!0,stackIndex:0};o.value.push(k),m(k)}e.watch(()=>n.items,(p,k)=>{const h=p.filter(N=>!k.some(B=>B.id===N.id));h.length&&(l.value=[...l.value,...h],b())});function b(){i.value!==null||!l.value.length||(i.value=window.setTimeout(()=>{i.value=null;const p=l.value.shift();p&&y(p),l.value.length>0&&b()},o.value.length?n.debounceItem:0))}function S(p){l.value.push(p),b()}return e.onMounted(()=>{l.value=[...n.items],n.collapsible&&l.value.length>=n.collapseItems&&(s.value=!0),b()}),e.onBeforeUnmount(()=>{i.value!==null&&clearTimeout(i.value);for(const p of a.values())clearTimeout(p);a.clear()}),c({addItem:S}),(p,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["popover-notifications",{"popover-notifications--stacked":s.value}])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(h,N)=>(e.openBlock(),e.createBlock(he,{key:h.id,id:h.id,"close-timeout":0,type:"manual",class:"popover-notification",modelValue:h.visible,"onUpdate:modelValue":[B=>h.visible=B,B=>d(h,B)],style:e.normalizeStyle({"--stack-index":h.stackIndex??N})},{default:e.withCtx(()=>[e.renderSlot(p.$slots,"item",{item:h,removeItem:d},()=>[e.createElementVNode("div",Ks,[e.createElementVNode("span",Xs,e.toDisplayString(h.title),1),e.createElementVNode("button",{type:"button",class:"btn btn-close p-0",onClick:e.withModifiers(B=>d(h,!1),["stop"]),"aria-label":"Close notification"},null,8,_s)]),e.createElementVNode("span",{innerHTML:h.content},null,8,eA)])]),_:2},1032,["id","modelValue","onUpdate:modelValue","style"]))),128))],2))}}),nA=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:c}){const n=t,o=c,l=e.ref(),i=e.ref(""),a=e.ref(),r=e.ref(!0);async function s(){if(!l.value||!r.value)return"";const d=l.value;if(!d.isConnected)return"";try{n.emitPending&&o("update:pending",!0);const A=d.firstElementChild;if(!A)return"";const m=await Et(A,{backgroundColor:"rgba(0, 0, 0, 0)",scale:1,...n.options});if(!r.value||!l.value||!d.isConnected)return"";const f=m.toDataURL();if(o("update:modelValue",f),n.emitPending&&o("update:pending",!1),n.debug){const y=new Image;y.src=f,document.body.appendChild(y)}return f}catch(A){return r.value&&n.emitPending&&o("update:pending",!1),console.warn("dom-renderer: Render failed",A),""}}const u=qe.debounce(async()=>{i.value=await s()},300,{trailing:!0,leading:!1});return e.onMounted(()=>{const d=l.value;n.renderUpdates&&(a.value=new MutationObserver(async A=>{!r.value||!d.isConnected||(n.emitPending&&o("update:pending",!0),u())}),a.value.observe(d,{attributes:!0,childList:!0,characterData:!0,subtree:!0})),setTimeout(()=>{n.emitPending&&o("update:pending",!0),u()},500)}),e.onBeforeUnmount(()=>{r.value=!1,a.value&&a.value.disconnect(),u.cancel()}),(d,A)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dom-renderer",{"off-screen":!t.debug}]),ref_key:"renderer",ref:l,style:e.normalizeStyle(t.fixedWidth>0?{width:`${t.fixedWidth}px`}:{})},[e.renderSlot(d.$slots,"default")],6))}}),lA={class:"qr-code"},oA=["innerHTML"],iA=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:c,emit:n}){const o=t,l=e.ref(),i=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 a(s=null,u=null){typeof window<"u"&&(l.value&&(l.value.innerHTML=""),new _e(s||i.value).append(l.value))}function r(){new _e({...i.value,width:1200,height:1200}).download({name:o.filename,extension:"png"})}return e.watch(()=>i.value,a,{deep:!0,immediate:!0}),e.onMounted(()=>{typeof window<"u"&&a()}),c({download:r}),(s,u)=>(e.openBlock(),e.createElementBlock("div",lA,[o.download?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn btn-outline-contrast mb-3",onClick:r,innerHTML:s.$t("qrlink.download")},null,8,oA)):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"canvas",ref:l},null,512))]))}}),rA={class:"link-sharing"},sA={key:0,class:"link-sharing__links container"},AA={class:"row"},cA={key:0,class:"col-12 col-md-6"},dA=["href"],uA={class:"caption"},mA={key:1,class:"col-12 col-md-6"},fA=["href"],pA={class:"caption"},gA={key:2,class:"col-12 col-md-6"},hA={class:"caption"},yA={key:3,class:"col-12 col-md-6"},bA=["href"],kA={class:"caption"},wA={key:4,class:"col-12 col-md-6"},BA=["href"],CA={class:"caption"},VA={key:5,class:"col-12 col-md-6"},EA={class:"caption"},$A={key:6,class:"col-12 col-md-6"},SA=["href"],NA={class:"caption"},vA={key:1,class:"link-sharing__instructions pt-5"},MA={class:"row"},DA={class:"col-12 text-center py-0"},LA={class:"mb-5"},IA=t=>t.replace(/<(?:.|\n)*?>/gm,""),TA=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 c=t,n=e.ref(!1),o=e.computed(()=>encodeURIComponent(c.url));e.computed(()=>encodeURIComponent(c.media));const l=e.computed(()=>IA(c.text)),i=e.computed(()=>!!(navigator&&navigator.userAgent&&/Mobi|Android/i.test(navigator.userAgent)));async function a(){const r=document.createElement("textarea");document.body.appendChild(r),r.value=c.url,r.select(),r.setSelectionRange(0,99999),navigator.clipboard.writeText(r.value),document.body.removeChild(r)}return(r,s)=>(e.openBlock(),e.createElementBlock("div",rA,[n.value?(e.openBlock(),e.createElementBlock("div",vA,[e.createElementVNode("div",MA,[e.createElementVNode("div",DA,[e.createElementVNode("div",LA,[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:s[1]||(s[1]=e.withModifiers(u=>n.value=!n.value,["prevent"]))},[e.createVNode(D,{symbol:"arrow-left"}),e.createTextVNode(" "+e.toDisplayString(r.$t("common.back")),1)])])])])])):(e.openBlock(),e.createElementBlock("div",sA,[e.createElementVNode("div",AA,[t.services.facebook?(e.openBlock(),e.createElementBlock("div",cA,[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(D,{symbol:"facebook"}),e.createElementVNode("span",uA,e.toDisplayString(r.$t("sharing.facebook")),1)],8,dA)])):e.createCommentVNode("",!0),t.services.bluesky?(e.openBlock(),e.createElementBlock("div",mA,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`https://bsky.app/intent/compose?text=${l.value}${l.value?"%20":""}${t.url}`,target:"_blank",rel:"noopener"},[e.createVNode(D,{symbol:"bluesky-logo"}),e.createElementVNode("span",pA,e.toDisplayString(r.$t("sharing.bluesky")),1)],8,fA)])):e.createCommentVNode("",!0),t.services.instagram?(e.openBlock(),e.createElementBlock("div",gA,[e.createElementVNode("button",{type:"button",class:"link-sharing__link btn btn-primary",onClick:s[0]||(s[0]=e.withModifiers(u=>n.value=!n.value,["prevent"]))},[e.createVNode(D,{symbol:"instagram"}),e.createElementVNode("span",hA,e.toDisplayString(r.$t("sharing.instagram")),1)])])):e.createCommentVNode("",!0),t.services.linkedin?(e.openBlock(),e.createElementBlock("div",yA,[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(D,{symbol:"linkedin"}),e.createElementVNode("span",kA,e.toDisplayString(r.$t("sharing.linkedin")),1)],8,bA)])):e.createCommentVNode("",!0),t.services.whatsapp&&i.value?(e.openBlock(),e.createElementBlock("div",wA,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`whatsapp://send?text=${o.value}`,target:"_blank",rel:"noopener"},[e.createVNode(D,{symbol:"whatsapp"}),e.createElementVNode("span",CA,e.toDisplayString(r.$t("sharing.whatsapp")),1)],8,BA)])):e.createCommentVNode("",!0),t.services.clipboard?(e.openBlock(),e.createElementBlock("div",VA,[e.createElementVNode("button",{type:"button",class:"link-sharing__link btn btn-primary",onClick:e.withModifiers(a,["prevent","stop"])},[e.createVNode(D,{symbol:"copy"}),e.createElementVNode("span",EA,e.toDisplayString(r.$t("sharing.clipboard")),1)])])):e.createCommentVNode("",!0),t.services.mailto?(e.openBlock(),e.createElementBlock("div",$A,[e.createElementVNode("a",{class:"link-sharing__link btn btn-primary",href:`mailto:?subject=${t.subject}&body=${l.value}%0D%0A${t.url}`,target:"_blank",rel:"noopener"},[e.createVNode(D,{symbol:"mail"}),e.createElementVNode("span",NA,e.toDisplayString(r.$t("sharing.mailto")),1)],8,SA)])):e.createCommentVNode("",!0)])]))]))}}),PA={class:"base-form"},xA=e.defineComponent({__name:"base-form",props:{id:{},name:{},variant:{},disabled:{type:Boolean},pending:{type:Boolean}},setup(t){function c(l){console.log("input",l)}function n(l){console.log("reset",l)}function o(l){console.log("submit",l)}return(l,i)=>(e.openBlock(),e.createElementBlock("div",PA,[e.createElementVNode("form",{ref:"form",onInput:c,onReset:n,onSubmit:e.withModifiers(o,["prevent"])},[e.renderSlot(l.$slots,"default")],544)]))}}),zA={class:"touch-wrapper__controls"},FA={class:"btn-group",role:"group"},OA=e.defineComponent({__name:"touch-wrapper",props:{modelValue:{type:Number,default:1}},emits:["update:modelValue"],setup(t,{emit:c}){const o=e.getCurrentInstance()?.appContext?.config?.globalProperties?.$config||{iconSprite:"/symbol-defs.svg"},l=t,i=c,a=e.ref();function r(d){const A=l.modelValue+d;i("update:modelValue",d===0?1:A>=1?A:1)}function s(d){if(d.ctrlKey){d.preventDefault();const A=0-d.deltaY*.01;r(A)}}function u(d){d.preventDefault();const{scale:A}=d,m=A>1?A*.01:0-A;r(m)}return e.onMounted(()=>{a.value&&(a.value.addEventListener("wheel",s,!1),a.value.addEventListener("gesturestart",u,!1),a.value.addEventListener("gesturechange",u,!1),a.value.addEventListener("gestureend",u,!1))}),(d,A)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"touchElement",ref:a,class:"touch-wrapper"},[e.renderSlot(d.$slots,"controls",{on:{setScale:r}},()=>[e.createElementVNode("div",zA,[e.createElementVNode("div",FA,[e.createElementVNode("button",{type:"button",class:"btn",onClick:A[0]||(A[0]=m=>r(-1))},[e.createVNode(D,{symbol:"minus","base-path":e.unref(o).iconSprite},null,8,["base-path"])]),e.createElementVNode("button",{type:"button",class:"btn",onClick:A[1]||(A[1]=m=>r(0))},[e.createVNode(D,{symbol:"maximize","base-path":e.unref(o).iconSprite},null,8,["base-path"])]),e.createElementVNode("button",{type:"button",class:"btn",onClick:A[2]||(A[2]=m=>r(1))},[e.createVNode(D,{symbol:"plus","base-path":e.unref(o).iconSprite},null,8,["base-path"])])])])]),e.renderSlot(d.$slots,"default")],512))}});let Fe=null;async function RA(){if(typeof window>"u")return null;if(Fe)return Fe;const t=await import("canvas-confetti");return Fe=t.default||t,Fe}const Ct={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:Ke(55,125),spread:Ke(50,70),particleCount:Ke(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 Ke(t,c){return Math.random()*(c-t)+t}const HA=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 c=t,n=e.ref(null),o=e.computed(()=>({...Ct[c.preset],items:Ct[c.preset].items.map((a,r)=>({...a,...c.items[r],...c.colors.length?{colors:c.colors}:{}}))}));async function l(a){return new Promise(r=>{(typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):u=>setTimeout(u,16))(()=>n.value?.confetti?.(JSON.parse(JSON.stringify(a)))),setTimeout(()=>r(),0)})}async function i(){await Promise.all(o.value.items.map(a=>new Promise(r=>setTimeout(()=>{r(l(a))},a.timeout||0)))),c.loop&&i()}return e.onMounted(async()=>{if(typeof window<"u"&&n.value){const a=await RA();if(!a)return;n.value.confetti=n.value?.confetti||a.create(n.value,{resize:!0}),i()}}),(a,r)=>(e.openBlock(),e.createElementBlock("canvas",{class:"canvas-confetti",ref_key:"canvas",ref:n},null,512))}}),QA=["popovertarget"],UA=["src","alt"],WA=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:0},focusHeight:{type:Number,default:0},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 c=t,n=e.ref(null),o=e.ref(null),l=e.ref(null),i=e.ref(!1),a=e.ref(!1),r=e.ref(!1),s=e.ref(!1),u=e.ref(null),d=e.ref(0),A=e.ref(0),m=e.ref(0),f=e.ref(0),y=e.computed(()=>Number.isFinite(c.focusWidth)&&c.focusWidth>0&&Number.isFinite(c.focusHeight)&&c.focusHeight>0&&m.value>0&&f.value>0&&c.focusWidth<=m.value&&c.focusHeight<=f.value),b=e.computed(()=>m.value>0&&f.value>0&&!y.value),S=e.computed(()=>r.value&&!a.value&&m.value>0&&f.value>0),p=e.computed(()=>b.value?{width:`${m.value}px`,height:`${f.value}px`,left:"0px",top:"0px"}:{width:`${c.focusWidth}px`,height:`${c.focusHeight}px`,left:`${d.value}px`,top:`${A.value}px`}),k=e.computed(()=>{const I=m.value*c.zoom,U=f.value*c.zoom;return{width:`${I}px`,height:`${U}px`,transform:y.value&&!a.value?`translate(${-d.value*c.zoom}px, ${-A.value*c.zoom}px)`:"none",transformOrigin:"top left"}});function h(){if(!o.value)return;const I=o.value.getBoundingClientRect();m.value=I.width,f.value=I.height}function N(){u.value&&(clearTimeout(u.value),u.value=null)}function B(){N(),i.value=!0}function T(){N(),u.value=setTimeout(()=>{!r.value&&!s.value&&!a.value&&(i.value=!1),u.value=null},c.hoverDelay||100)}function O(I,U){if(!o.value)return;if(b.value){d.value=0,A.value=0;return}const j=o.value.getBoundingClientRect(),we=I-j.left,ee=U-j.top,Be=Math.min(Math.max(we-c.focusWidth/2,0),Math.max(j.width-c.focusWidth,0)),Se=Math.min(Math.max(ee-c.focusHeight/2,0),Math.max(j.height-c.focusHeight,0));d.value=Be,A.value=Se}function X(){if(!l.value||!a.value||b.value)return;const I=l.value.getBoundingClientRect(),U=Math.max(0,d.value*c.zoom-I.width/2+c.focusWidth*c.zoom/2),j=Math.max(0,A.value*c.zoom-I.height/2+c.focusHeight*c.zoom/2);l.value.scrollTo({left:U,top:j})}function $(I){h(),O(I.clientX,I.clientY)}function P(I){r.value=!0,h(),O(I.clientX,I.clientY),a.value||B()}function z(){r.value=!1,a.value||T()}function L(I){a.value&&(i.value=!0,h(),O(I.clientX,I.clientY))}function v(){a.value&&e.nextTick(X)}function Q(){s.value=!0,B()}function C(){s.value=!1,T()}function F(I){a.value&&(i.value=!i.value,I instanceof MouseEvent&&O(I.clientX,I.clientY))}return e.onMounted(()=>{a.value="ontouchstart"in window||navigator.maxTouchPoints>0,h()}),e.watch(i,async I=>{I&&a.value&&(await e.nextTick(),X())}),(I,U)=>(e.openBlock(),e.createElementBlock("span",{class:"image-zoom",popovertarget:t.popoverId,ref_key:"wrapper",ref:n},[e.createElementVNode("div",{class:"image-zoom__target",ref_key:"target",ref:o,onPointermove:$,onPointerenter:P,onPointerleave:z,onPointerdown:L,onPointerup:v,onPointercancel:z,onClick:e.withModifiers(F,["prevent"])},[e.renderSlot(I.$slots,"image",{src:t.src,alt:t.alt,spinner:t.spinner,animate:!1},()=>[e.createVNode(ae,{class:"image-zoom__image",src:t.src,alt:t.alt,spinner:t.spinner,animate:!1},null,8,["src","alt","spinner"])]),S.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"image-zoom__focus",style:e.normalizeStyle(p.value)},null,4)):e.createCommentVNode("",!0)],544),e.createVNode(he,{id:t.popoverId,modelValue:i.value,"onUpdate:modelValue":U[0]||(U[0]=j=>i.value=j),hover:!1,"hover-delay":t.hoverDelay,"close-timeout":t.closeTimeout,class:e.normalizeClass(["image-zoom__popover",{"image-zoom__popover--full":b.value}]),role:"tooltip",onMouseenter:Q,onMouseleave:C},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["image-zoom__preview-wrapper",{"image-zoom__preview-wrapper--full":b.value}])},[e.createElementVNode("div",{class:e.normalizeClass(["image-zoom__preview",{"image-zoom__preview--full":b.value}]),ref_key:"preview",ref:l},[e.createElementVNode("img",{class:e.normalizeClass(["image-zoom__preview-image",{"image-zoom__preview-image--full":b.value}]),src:t.src,alt:t.alt,style:e.normalizeStyle(k.value),draggable:"false"},null,14,UA)],2)],2)]),_:1},8,["id","modelValue","hover-delay","close-timeout","class"])],8,QA))}});M.Accordion=Yt,M.AccordionItem=Wt,M.AssetUploader=mr,M.AutoSuggest=rt,M.BaseButton=nt,M.BaseCamera=qo,M.BaseCarousel=Bt,M.BaseForm=xA,M.BaseHeadline=Dt,M.BaseImage=ae,M.BaseInput=ke,M.BaseMap=ct,M.BaseParagraph=It,M.CanvasConfetti=HA,M.CheckGroup=ul,M.ColorPalette=no,M.CustomHtml=vl,M.DomRenderer=nA,M.FileUpload=Ee,M.HintSystem=Hs,M.ImageCrop=ft,M.ImageCropResize=pt,M.ImageResize=mt,M.ImageUpload=$e,M.ImageZoom=WA,M.InputCheckbox=sa,M.InputColor=eo,M.InputDatepicker=ll,M.InputDatetime=ua,M.InputDropdown=Ae,M.InputFile=Ye,M.InputPasscode=sl,M.InputPassword=it,M.InputTextarea=la,M.LinkSharing=TA,M.LoadingSpinner=Te,M.LocationFinder=gs,M.LocationList=dt,M.MediaThumbnails=$s,M.ModalDialog=gt,M.PopoverDialog=he,M.PopoverNotifications=aA,M.PopoverTooltip=Zs,M.PresetUploader=Qr,M.ProgressSteps=Ps,M.QrCode=iA,M.RadioButtons=bl,M.RadioGroup=ze,M.RteEditor=Zl,M.SelectMedia=Ll,M.SortableList=Ze,M.SvgIcon=D,M.TouchWrapper=OA,M.UploadGroup=ht,M.useCameraFilter=st,M.useDirections=yt,M.useGeocoding=bt,M.useGeolocation=wt,Object.defineProperty(M,Symbol.toStringTag,{value:"Module"})}));
|