@bluepic/embed 0.4.0-next.208 → 0.4.0-next.209
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bluepic-embed.iife.js +1 -1
- package/dist/bluepic-embed.umd.js +1 -1
- package/dist/main.cjs +42 -42
- package/dist/main.mjs +1202 -1199
- package/dist/style.css +1 -1
- package/package.json +1 -1
|
@@ -167,7 +167,7 @@ list should be an Array.`),T.length===0)return new v(0);if(T.length===1)return T
|
|
|
167
167
|
`).slice(0,n.maxLines??1/0).map(ue=>ue.slice(0,n.maxLineLength??1/0)).join(`
|
|
168
168
|
`).slice(0,n.maxLength??1/0));s.watch(o,X=>{Ba(X,g.value)||(c.value=X)}),s.watch(c,X=>{if(typeof X=="object"&&X!==null){const ae=_S(X,0,n.maxLength);o.value=ae}else{const ue=String(X).split(`
|
|
169
169
|
`);o.value!==g.value&&(o.value=g.value),n.maxLineLength!==1/0&&n.maxLineLength!==null&&(l.value=ue.filter(Ce=>Ce.length>(n.maxLineLength??1/0)).map(Ce=>({index:ue.indexOf(Ce),length:Ce.length}))),n.maxLines!==1/0&&n.maxLines!==null&&(u.value=Math.max(0,String(X).split(`
|
|
170
|
-
`).length-(n.maxLines??1/0))),n.maxLength!==1/0&&n.maxLength!==null&&(f.value=String(X).length-n.maxLength)}});const p=s.computed({get(){return mp(A.value)},set(X){n.richtext?c.value=[{text:X,format:{}}]:c.value=X}}),A=s.computed({get(){return RS(c.value)},set(X){n.richtext?c.value=X:c.value=mp(X)}}),v=s.ref(),C=mi("bx-input-count"),w=s.computed(()=>n.state==="error"||d.value),y=s.computed(()=>n.showWordCount?C:void 0),x=s.ref();let E;const k=s.ref(!1);s.watch(k,()=>{k.value?a("focus"):a("blur",E)});function S(X){k.value=!0}function B(X){E=X,k.value=!1}s.watch(x,(X,ae)=>{X&&(ae&&(ae.removeEventListener("focus",S),ae.removeEventListener("blur",B)),X.addEventListener("focus",S),X.addEventListener("blur",B))});const N=s.computed(()=>String(Math.max(1,n.maxRows)));function R(){if(n.type!=="textarea")return;const X=x.value;!X||X.tagName!=="TEXTAREA"||(X.style.height="auto",X.style.height=`${X.scrollHeight}px`)}s.watch([x,p,()=>n.type,()=>n.minHeight,()=>n.maxHeight,N],async()=>{await s.nextTick(),R()},{immediate:!0,flush:"post"}),window.addEventListener("blur",B);const z=()=>{var X;n.disabled||n.readonly||(X=x.value)==null||X.focus()},L=X=>{X.key==="Enter"&&a("enter",X)},m=s.ref(""),j=s.computed(()=>{const X=n.richtext?m.value:c.value;return[...new Intl.Segmenter().segment(X)].length}),V=s.computed(()=>n.richtext?m.value.length>0:String(c.value).length>0);function Q(X){return X.en}const F=s.ref(),D=s.ref({start:0,length:0}),Z=s.computed({get(){var ie,T;const X=(ie=v.value)==null?void 0:ie.richTextInstance;if(!X)return;const ue=X.resolveFeatures(D.value.start,D.value.length).flat(),Ce=W(ue);if(Ce!==void 0)return Ce===null?"multiple":(T=M.value.find(O=>Ba(O.value,Ce)))==null?void 0:T.value},set(X){var ue;const ae=(ue=v.value)==null?void 0:ue.richTextInstance;ae&&X!=="multiple"&&(X===void 0?ae.applyFormat(D.value.start,D.value.length,{}):(ae.resolveFeatures(D.value.start,D.value.length),ae.applyFormat(D.value.start,D.value.length,X)),P.value.closePopover())}});s.watch(F,()=>{F.value&&(D.value=F.value)});const M=s.computed(()=>n.richtext?[{label:Q(n.richtext.noStyleLabel),value:void 0},...n.richtext.options.map((X,ae)=>({label:X.label,value:X.style}))]:[]),P=s.ref();function W(X){let ae=!1,ue;for(const Ce of X)if(!ue)ue=Ce.format;else if(!Ba(ue,Ce.format)){ae=!0;break}return ae?null:ue}function re(){n.richtext?A.value=[{text:"",format:{}}]:o.value=""}return s.onUnmounted(()=>{l.value=[],u.value=0,f.value=0}),t({inputEelRef:x,setFocus(X){var ae,ue;X?(ae=x.value)==null||ae.focus():(ue=x.value)==null||ue.blur()}}),(X,ae)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["bx-input",{readonly:e.readonly,bordered:e.bordered,"is-textarea":e.type==="textarea"}])},[e.richtext?(s.openBlock(),s.createBlock(ai,{key:0,ref_key:"bxSelectRef",ref:P,class:"select-richtext",modelValue:Z.value,"onUpdate:modelValue":ae[0]||(ae[0]=ue=>Z.value=ue),options:M.value,disabled:!D.value||D.value.length===0},{label:s.withCtx(({label:ue})=>[s.createTextVNode(s.toDisplayString(ue??"Multiple"),1)]),_:1},8,["modelValue","options","disabled"])):s.createCommentVNode("",!0),s.createElementVNode("div",{class:s.normalizeClass(["bx-input-wrapper",{focus:k.value&&!e.readonly,round:e.round,ring:e.ring,bordered:e.bordered,["size-"+e.size]:e.size,disabled:e.disabled,readonly:e.readonly,"rich-text":e.richtext,error:d.value,"state-active":e.state==="active","state-success":e.state==="success","state-error":e.state==="error","state-warning":e.state==="warning",ghost:e.ghost}]),style:s.normalizeStyle({"--max-height":e.richtext?"auto":e.maxHeight,"--min-height":e.minHeight,"--textarea-max-lines":N.value}),onClick:z},[i.prefix?(s.openBlock(),s.createElementBlock("div",Lue,[s.renderSlot(X.$slots,"prefix",{},void 0,!0)])):s.createCommentVNode("",!0),s.createElementVNode("div",{class:s.normalizeClass(["bx-input__input",{"swiper-no-swiping":k.value,"has-prefix":!!i.prefix}])},[e.richtext?(s.openBlock(),s.createBlock(OS,{key:0,ref_key:"bxRichTextInstance",ref:v,modelValue:A.value,"onUpdate:modelValue":ae[1]||(ae[1]=ue=>A.value=ue),selection:F.value,"onUpdate:selection":ae[2]||(ae[2]=ue=>F.value=ue),"raw-text":m.value,"onUpdate:rawText":ae[3]||(ae[3]=ue=>m.value=ue),focus:k.value,"onUpdate:focus":ae[4]||(ae[4]=ue=>k.value=ue),"aria-label":e.ariaLabelledby?void 0:e.ariaLabel,"aria-labelledby":e.ariaLabelledby},null,8,["modelValue","selection","raw-text","focus","aria-label","aria-labelledby"])):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[e.type==="textarea"?s.withDirectives((s.openBlock(),s.createElementBlock("textarea",{key:0,ref_key:"inputEelRef",ref:x,rows:"1",class:s.normalizeClass({resizeable:e.resizeable}),"onUpdate:modelValue":ae[5]||(ae[5]=ue=>p.value=ue),placeholder:e.placeholder,onKeydown:L,readonly:e.readonly,title:e.readonly?e.readonlyMessage:void 0,"aria-label":e.ariaLabelledby?void 0:e.ariaLabel,"aria-labelledby":e.ariaLabelledby,"aria-invalid":w.value?"true":void 0,"aria-describedby":y.value},null,42,Gue)),[[s.vModelText,p.value]]):s.withDirectives((s.openBlock(),s.createElementBlock("input",{key:1,ref_key:"inputEelRef",ref:x,"onUpdate:modelValue":ae[6]||(ae[6]=ue=>p.value=ue),readonly:e.readonly,placeholder:e.placeholder,type:e.type,onKeydown:L,title:e.readonly?e.readonlyMessage:void 0,"aria-label":e.ariaLabelledby?void 0:e.ariaLabel,"aria-labelledby":e.ariaLabelledby,"aria-invalid":w.value?"true":void 0,"aria-describedby":y.value},null,40,Mue)),[[s.vModelDynamic,p.value]])],64))],2),i.suffix||e.clearable||e.showWordCount||i.loading||e.loading||d.value?(s.openBlock(),s.createElementBlock("div",{key:1,"data-suffix":!!i.suffix,class:"bx-input__suffix"},[i.loading||e.loading?(s.openBlock(),s.createElementBlock("div",Que,[i.loading?s.renderSlot(X.$slots,"loading",{},void 0,!0,0):(s.openBlock(),s.createBlock(nc,{key:1,size:"small"}))])):s.createCommentVNode("",!0),s.renderSlot(X.$slots,"suffix",{},void 0,!0),e.showWordCount?(s.openBlock(),s.createElementBlock("div",{key:1,id:s.unref(C),class:"bx-input__word-count"},[e.maxLength&&e.maxLength!==1/0?(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createTextVNode(s.toDisplayString(j.value)+" / "+s.toDisplayString(e.maxLength),1)],64)):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[s.createTextVNode(s.toDisplayString(j.value),1)],64))],8,Wue)):s.createCommentVNode("",!0),d.value?(s.openBlock(),s.createBlock(i1,{key:2,trigger:"hover","custom-popover-classes":["text-overflow-tooltip"],"allowed-placements":["bottom","top","right"]},{trigger:s.withCtx(()=>[s.createVNode(Et,{circle:"",size:"tiny",secondary:"",state:"error",class:"errors-button","aria-label":"Show input warnings"},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(U7))]),_:1})]),_:1})]),content:s.withCtx(()=>{var ue,Ce,ie;return[s.createElementVNode("div",Pue,[(ue=h.value)!=null&&ue.overflowingCharacters?(s.openBlock(),s.createElementBlock("div",Yue,[s.createElementVNode("span",jue,s.toDisplayString(e.maxLength+f.value)+" / "+s.toDisplayString(e.maxLength),1),ae[7]||(ae[7]=s.createTextVNode(" characters ",-1))])):s.createCommentVNode("",!0),(Ce=h.value)!=null&&Ce.overlowingLines?(s.openBlock(),s.createElementBlock("div",Uue,[s.createElementVNode("span",$ue,s.toDisplayString(e.maxLines+u.value)+" / "+s.toDisplayString(e.maxLines),1),ae[8]||(ae[8]=s.createTextVNode(" lines ",-1))])):s.createCommentVNode("",!0),(ie=h.value)!=null&&ie.lineOverflows?(s.openBlock(),s.createElementBlock("div",Hue,[ae[9]||(ae[9]=s.createTextVNode(" Lines are too long: ",-1)),s.createElementVNode("ul",null,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(h.value.lineOverflows,({index:T,length:O})=>(s.openBlock(),s.createElementBlock("li",null,[s.createElementVNode("span",Xue,"("+s.toDisplayString(T+1)+")",1),s.createElementVNode("span",Jue,s.toDisplayString(O)+" / "+s.toDisplayString(e.maxLineLength),1)]))),256))])])):s.createCommentVNode("",!0)])]}),_:1})):s.createCommentVNode("",!0),e.clearable&&V.value?(s.openBlock(),s.createElementBlock("button",{key:3,type:"button",class:"bx-input__clear-btn",onClick:s.withModifiers(re,["stop"]),title:"Clear","aria-label":"Clear"},[s.createVNode(ft,{size:12},{default:s.withCtx(()=>[s.createVNode(s.unref(bs))]),_:1})])):s.createCommentVNode("",!0)],8,Oue)):s.createCommentVNode("",!0)],6)],2))}}),[["__scopeId","data-v-e7f10bcd"]]);function Cy(e){return new URLSearchParams(Object.fromEntries(Object.entries(e).map(([t,r])=>[t,String(r)]))).toString()}function Kue(e){const t=s.ref([]),r=s.ref(0);let n=25;async function a(i,o){o=o??t.value.length??0;const l=await(await fetch(`https://api.pexels.com/v1/search?${Cy({page:Math.ceil(o/n),query:i,per_page:n})}`,{headers:{Authorization:e}})).json();if("error"in l)throw new Error(l.error);r.value=l.total_results,t.value=[...t.value.slice(0,o),...l.photos]}return{photos:t,total:r,searchPhotos:a}}const que=s.defineComponent({__name:"LazyLoadingItemWrapper",emits:["update:visible"],setup(e,{emit:t}){s.ref();const r=t,n=s.ref(),a=yJ(n);return r("update:visible",a.value),s.watch(a,(i,o)=>{!o&&i&&r("update:visible",a.value)}),(i,o)=>(s.openBlock(),s.createElementBlock("div",{class:"item-wrapper",ref_key:"itemWrapperRef",ref:n},[s.renderSlot(i.$slots,"default")],512))}}),e0e=s.defineComponent({__name:"LazyLoading",props:{items:{},total:{},fetch:{type:Function},visibleTriggerOffset:{}},setup(e){s.ref();const t=e;t.fetch(0);const r=(n,a)=>{a&&n>=t.items.length-t.visibleTriggerOffset-1&&t.total>t.items.length&&t.fetch()};return(n,a)=>(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.items,(i,o)=>(s.openBlock(),s.createBlock(que,{key:o,class:"item-wrapper",item:i,index:o,"onUpdate:visible":c=>r(o,c)},{default:s.withCtx(()=>[s.renderSlot(n.$slots,"item",{item:i,index:o})]),_:2},1032,["item","index","onUpdate:visible"]))),128))}}),t0e={class:"bx-empty-icon"},r0e={key:1,viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n0e={key:0,class:"bx-empty-description"},a0e={key:1,class:"bx-empty-extra"},yy=dt(s.defineComponent({__name:"BxEmpty",props:{description:{default:"No Data"},size:{default:"medium"}},setup(e){const t=s.useSlots();return(r,n)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["bx-empty",{[`size-${e.size}`]:!0}])},[s.createElementVNode("div",t0e,[t.icon?s.renderSlot(r.$slots,"icon",{},void 0,!0,0):(s.openBlock(),s.createElementBlock("svg",r0e,[...n[0]||(n[0]=[s.createElementVNode("path",{d:"M26 7.5C26 11.0899 23.0899 14 19.5 14C15.9101 14 13 11.0899 13 7.5C13 3.91015 15.9101 1 19.5 1C23.0899 1 26 3.91015 26 7.5ZM14 7.5C14 3.91015 11.0899 1 7.5 1C3.91015 1 1 3.91015 1 7.5C1 11.0899 3.91015 14 7.5 14C11.0899 14 14 11.0899 14 7.5ZM14 19.5C14 15.9101 11.0899 13 7.5 13C3.91015 13 1 15.9101 1 19.5C1 23.0899 3.91015 26 7.5 26C11.0899 26 14 23.0899 14 19.5Z",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round",opacity:"0.4"},null,-1),s.createElementVNode("circle",{cx:"19.5",cy:"19.5",r:"6.5",stroke:"currentColor","stroke-width":"1.5","stroke-dasharray":"3 3",opacity:"0.25"},null,-1)])]))]),e.description||t.description?(s.openBlock(),s.createElementBlock("div",n0e,[t.description?s.renderSlot(r.$slots,"description",{},void 0,!0,0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[s.createTextVNode(s.toDisplayString(e.description),1)],64))])):s.createCommentVNode("",!0),t.default?(s.openBlock(),s.createElementBlock("div",a0e,[s.renderSlot(r.$slots,"default",{},void 0,!0)])):s.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-d66bc5e4"]]),i0e={class:"image-library-pexels"},o0e={class:"search-bar-wrapper"},s0e={key:0,class:"photos"},l0e=["onClick"],c0e=["src"],u0e={key:0,class:"loading-wrapper"},d0e={key:1,class:"loading-wrapper"},f0e=s.defineComponent({__name:"Pexels",props:{apiKey:{},width:{},height:{},uploadContext:{},uploadImageAsset:{type:Function}},emits:["select"],setup(e,{emit:t}){const r=rc(),n=e,a=t,i=s.ref("city"),{searchPhotos:o,photos:c,total:l}=Kue(n.apiKey),u=s.ref(),f=s.ref(!1);async function h(){i.value.length>0&&(f.value=!0,l.value=25,c.value=[],await o(i.value),u.value=i.value,f.value=!1)}async function d(A,v){await o(i.value,A)}const g=s.ref();async function p(A){g.value=A.id;const v=await n.uploadImageAsset({blob:await fetch(r(A.src.original)).then(C=>C.blob()),context:n.uploadContext,width:n.width,height:n.height,key:`pexels-${A.id}`,name:A.id.toString(),onProgress(C){console.log("upload progress",C)}});g.value=void 0,a("select",v.src)}return(A,v)=>(s.openBlock(),s.createElementBlock("div",i0e,[s.createElementVNode("header",null,[s.createElementVNode("div",o0e,[s.createVNode(rl,{modelValue:i.value,"onUpdate:modelValue":v[0]||(v[0]=C=>i.value=C),round:"",placeholder:"Search...",size:"medium",onEnter:h},null,8,["modelValue"]),s.createVNode(Et,{active:"",onClick:h},{default:s.withCtx(()=>[...v[1]||(v[1]=[s.createTextVNode("Search",-1)])]),_:1})])]),s.createElementVNode("main",null,[u.value?(s.openBlock(),s.createElementBlock("div",s0e,[s.createVNode(e0e,{items:s.unref(c),total:s.unref(l),fetch:d,"visible-trigger-offset":0},{item:s.withCtx(({item:C})=>[(s.openBlock(),s.createElementBlock("div",{key:C.id,class:"photo-wrapper",onClick:w=>p(C)},[s.createElementVNode("div",{class:s.normalizeClass(["preview",{loading:g.value===C.id}])},[s.createElementVNode("img",{src:s.unref(r)(C.src.tiny)},null,8,c0e),g.value===C.id?(s.openBlock(),s.createElementBlock("div",u0e,[s.createVNode(nc)])):s.createCommentVNode("",!0)],2)],8,l0e))]),_:1},8,["items","total"])])):f.value?(s.openBlock(),s.createElementBlock("div",d0e,[s.createVNode(nc)])):(s.openBlock(),s.createBlock(yy,{key:2,description:"Search for images on Pexels"},{icon:s.withCtx(()=>[s.createVNode(s.unref(lle))]),_:1}))])]))}});function h0e(e,t,r){return e.map(n=>({src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(n["@microsoft.graph.downloadUrl"])}&w=${t}&h=${r}&fit=cover&quality=80&format=png`,key:n.id,width:n.image.width,height:n.image.height,previews:{small:{src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(n["@microsoft.graph.downloadUrl"])}&h=200&fit=cover&quality=80&format=png`,width:n.image.width,height:n.image.height},medium:{src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(n["@microsoft.graph.downloadUrl"])}&h=400&fit=cover&quality=80&format=png`,width:n.image.width,height:n.image.height}}}))}function g0e(e,t,r){return e.map(({thumbnailLink:n,webContentLink:a,sha256Checksum:i,imageMediaMetadata:o})=>({src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(a)}&w=${t}&h=${r}&fit=cover&quality=80&format=png`,key:i,width:(o==null?void 0:o.width)??0,height:(o==null?void 0:o.height)??0,previews:{small:{src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(n)}&h=200&fit=cover&quality=80&format=png`,width:(o==null?void 0:o.width)??0,height:(o==null?void 0:o.height)??0},medium:{src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(n)}&h=400&fit=cover&quality=80&format=png`,width:(o==null?void 0:o.width)??0,height:(o==null?void 0:o.height)??0}}}))}function m0e(e,t,r,n){const a=s.ref();return{sharedItems:a,fetchSharedDrive:async()=>{if(e==="onedrive"){const o=`https://shared-drive.bluepic.io/onedrive?${Cy({sharing:t})}`,l=await(await fetch(o)).json();a.value=h0e(l.children,r,n)}else if(e==="googledrive"){const o=`https://shared-drive.bluepic.io/googledrive?${Cy({sharing:t})}`,l=await(await fetch(o)).json();a.value=g0e(l.files,r,n)}}}}const p0e={class:"image-library-shared-drive"},A0e={key:0,class:"photos"},b0e=["onClick"],v0e={class:"preview"},C0e=["src"],y0e={key:1,class:"loading-wrapper"},w0e=dt(s.defineComponent({__name:"SharedDrive",props:{service:{},sharedUrl:{},width:{},height:{}},emits:["select"],setup(e,{emit:t}){const r=rc(),n=e,a=t,{fetchSharedDrive:i,sharedItems:o}=m0e(n.service,n.sharedUrl,n.width,n.height);i();function c(l){a("select",l.src)}return(l,u)=>(s.openBlock(),s.createElementBlock("div",p0e,[s.unref(o)?(s.openBlock(),s.createElementBlock("div",A0e,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(s.unref(o),f=>(s.openBlock(),s.createElementBlock("div",{class:"photo-wrapper",onClick:h=>c(f)},[s.createElementVNode("div",v0e,[s.createElementVNode("img",{src:s.unref(r)(f.previews.small.src)},null,8,C0e)])],8,b0e))),256))])):(s.openBlock(),s.createElementBlock("div",y0e,[s.createVNode(nc)]))]))}}),[["__scopeId","data-v-6b7dadc2"]]),I0e={class:"image-library-custom"},x0e=s.defineComponent({__name:"Custom",props:{controller:{},label:{},name:{},props:{}},setup(e){const t=e,r=import(t.controller),n=s.ref();return r.then(a=>{n.value=new a.default(t.props)}),(a,i)=>(s.openBlock(),s.createElementBlock("div",I0e,"JAJAJA"))}}),E0e={class:"image-library-wrapper"},B0e={key:0,class:"nav-view-wrapper"},k0e={class:"icon-wrapper"},S0e={class:"label"},_0e={key:1,class:"library-view-wrapper"},WS=dt(s.defineComponent({__name:"ImageLibraryWrapper",props:{options:{},activeKey:{},imageLibraries:{},convertTo:{},quality:{},width:{},height:{},bridge:{},field:{}},emits:["select","update:active-key"],setup(e,{emit:t}){const r=e,n=t,a=s.ref(r.activeKey);s.watch(a,()=>{r.activeKey!==a.value&&n("update:active-key",a.value)}),s.watch(()=>r.activeKey,()=>{r.activeKey!==a.value&&(a.value=r.activeKey)});function i(p){a.value=p}const o=s.computed(()=>{var p;return(p=r.imageLibraries.find(A=>A.type==="pexels"))==null?void 0:p.apiKey}),c=s.computed(()=>r.imageLibraries.find(p=>p.type==="sharedDrive"&&p.service===a.value).sharedUrl),l=s.computed(()=>{var p;return(p=r.imageLibraries.find(A=>A.type===a.value))==null?void 0:p.label}),u=s.computed(()=>{var p;return(p=r.imageLibraries.find(A=>A.type===a.value))==null?void 0:p.name}),f=s.computed(()=>{var p;return(p=r.imageLibraries.find(A=>A.type===a.value))==null?void 0:p.controller}),h=s.computed(()=>{var p;return(p=r.imageLibraries.find(A=>A.type===a.value))==null?void 0:p.props});function d(p){const A=p[0];A&&g(A.src)}function g(p){n("select",p)}return(p,A)=>(s.openBlock(),s.createElementBlock("div",E0e,[s.createVNode(s.Transition,{name:"slide-library"},{default:s.withCtx(()=>[a.value===void 0?(s.openBlock(),s.createElementBlock("div",B0e,[s.createElementVNode("div",{class:"image-library-source-navigation",style:s.normalizeStyle({"--options-length":e.options.length})},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(r.options,v=>(s.openBlock(),s.createBlock(t1,{key:v.key,bordered:!0,onClick:C=>i(v.key)},{default:s.withCtx(()=>[s.createElementVNode("div",k0e,[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(v.icon)))]),s.createElementVNode("div",S0e,s.toDisplayString(v.label),1)]),_:2},1032,["onClick"]))),128))],4)])):(s.openBlock(),s.createElementBlock("div",_0e,[a.value==="upload"?(s.openBlock(),s.createBlock(Hce,{key:0,width:e.width,height:e.height,"convert-to":e.convertTo,quality:e.quality,field:e.field,"handle-upload":e.bridge.handleUpload,onUpload:d},null,8,["width","height","convert-to","quality","field","handle-upload"])):a.value==="pexels"?(s.openBlock(),s.createBlock(f0e,{key:1,"api-key":o.value,width:e.width,height:e.height,"upload-image-asset":e.bridge.handleUpload,"upload-context":{field:e.field},onSelect:g},null,8,["api-key","width","height","upload-image-asset","upload-context"])):a.value==="googledrive"||a.value==="onedrive"||a.value==="icloud"||a.value==="dropbox"?(s.openBlock(),s.createBlock(w0e,{key:2,service:a.value,"shared-url":c.value,width:e.width,height:e.height,onSelect:g},null,8,["service","shared-url","width","height"])):a.value==="custom"?(s.openBlock(),s.createBlock(x0e,{key:3,label:l.value??"Custom Library",name:u.value,controller:f.value,props:h.value},null,8,["label","name","controller","props"])):s.createCommentVNode("",!0)]))]),_:1})]))}}),[["__scopeId","data-v-61c69114"]]),PS=dt(s.defineComponent({__name:"BxList",props:{divider:{type:Boolean,default:!0},bordered:{type:Boolean,default:!1},variant:{default:"plain"}},setup(e){return s.useSlots(),(t,r)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["bx-list",{"has-divider":e.divider&&e.variant==="plain",bordered:e.bordered,[`variant-${e.variant}`]:!0}])},[s.renderSlot(t.$slots,"default",{},void 0,!0)],2))}}),[["__scopeId","data-v-53785398"]]),R0e={class:"bx-list-item__inner"},N0e={key:0,class:"bx-list-item__prefix"},D0e={class:"bx-list-item__content"},F0e={key:1,class:"bx-list-item__suffix"},YS=dt(s.defineComponent({__name:"BxListItem",props:{interactive:{type:Boolean,default:!0}},setup(e){const t=s.useSlots(),r=s.computed(()=>!!t.prefix),n=s.computed(()=>!!t.suffix);return(a,i)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["bx-list-item",{"has-prefix":r.value,"has-suffix":n.value,interactive:e.interactive}])},[s.createElementVNode("div",R0e,[t.prefix?(s.openBlock(),s.createElementBlock("div",N0e,[s.renderSlot(a.$slots,"prefix",{},void 0,!0)])):s.createCommentVNode("",!0),s.createElementVNode("div",D0e,[s.renderSlot(a.$slots,"default",{},void 0,!0)]),t.suffix?(s.openBlock(),s.createElementBlock("div",F0e,[s.renderSlot(a.$slots,"suffix",{},void 0,!0)])):s.createCommentVNode("",!0)])],2))}}),[["__scopeId","data-v-1048af22"]]),Z0e=["aria-label"],z0e=["onClick"],T0e={class:"icon"},L0e={class:"label"},G0e={class:"pullup-menu"},M0e={class:"icon"},o1=dt(s.defineComponent({__name:"BxDropdown",props:s.mergeModels({options:{},allowedPlacements:{},mobileLayout:{type:Boolean,default:!1},ariaLabel:{default:"Menu"}},{show:{type:Boolean,required:!1,default:!1},showModifiers:{}}),emits:s.mergeModels(["select"],["update:show"]),setup(e,{emit:t}){const r=e,n=t,a=s.useModel(e,"show");function i(w){a.value=!1,n("select",w.value)}const o=s.useSlots(),c=mi("bx-dropdown-menu"),{setSlotRef:l,vNodes:u,slotElements:f}=hp(o.trigger);function h(w){(w.key==="ArrowDown"||w.key==="ArrowUp")&&(w.preventDefault(),a.value||(a.value=!0),v(0))}let d;s.watch(f,(w,y)=>{for(const E of y??[])E instanceof HTMLElement&&E.removeEventListener("keydown",h);d=void 0;const x=w[0];x instanceof HTMLElement&&(x.setAttribute("aria-haspopup","menu"),x.setAttribute("aria-controls",c),x.setAttribute("aria-expanded",String(a.value)),x.addEventListener("keydown",h),d=x)},{immediate:!0});const g=s.ref(0),p=[];function A(w,y){if(!w){p[y]=void 0;return}const x=w instanceof HTMLElement?w:w.$el;p[y]=x instanceof HTMLElement?x:void 0}function v(w){if(r.options.length===0)return;const y=(w+r.options.length)%r.options.length;g.value=y,s.nextTick(()=>{var x;return(x=p[y])==null?void 0:x.focus()})}function C(w){const y=r.options.length;if(y!==0)switch(w.key){case"ArrowDown":w.preventDefault(),v(g.value+1);break;case"ArrowUp":w.preventDefault(),v(g.value-1);break;case"Home":w.preventDefault(),v(0);break;case"End":w.preventDefault(),v(y-1);break;case"Enter":case" ":w.preventDefault(),i(r.options[g.value]),d==null||d.focus();break;case"Escape":w.preventDefault(),w.stopPropagation(),a.value=!1,d==null||d.focus();break;case"Tab":a.value=!1;break}}return s.watch(a,w=>{d==null||d.setAttribute("aria-expanded",String(w)),w&&(g.value=0,s.nextTick(()=>{var y;return(y=p[0])==null?void 0:y.focus()}))}),s.onUnmounted(()=>{d&&d.removeEventListener("keydown",h)}),(w,y)=>e.mobileLayout?(s.openBlock(),s.createBlock(_u,{key:0,show:a.value,"onUpdate:show":y[1]||(y[1]=x=>a.value=x),"disable-background-effect":"","custom-classes":["bx-dropdown-mobile-layout-popup"],closeable:!1},{trigger:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(s.unref(u),(x,E)=>(s.openBlock(),s.createBlock(s.resolveDynamicComponent(x),{key:E,ref_for:!0,ref:s.unref(l)(E)},null,512))),128))]),content:s.withCtx(()=>[s.createElementVNode("div",{class:s.normalizeClass(["pullup-menu-wrapper",{}])},[s.createElementVNode("div",{class:"pullup-menu",role:"menu","aria-label":e.ariaLabel},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.options,x=>(s.openBlock(),s.createElementBlock("button",{type:"button",role:"menuitem",class:"select-button",onClick:E=>i(x)},[s.createElementVNode("div",T0e,[s.createVNode(ft,null,{default:s.withCtx(()=>[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(x.icon)))]),_:2},1024)]),s.createElementVNode("div",L0e,[o.optionLabel?s.renderSlot(w.$slots,"optionLabel",{option:x},void 0,!0,0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[s.createTextVNode(s.toDisplayString(x.label),1)],64))])],8,z0e))),256))],8,Z0e),s.createElementVNode("div",G0e,[s.createElementVNode("button",{type:"button",class:"select-button","aria-label":"Close menu",onClick:y[0]||(y[0]=x=>a.value=!1)},[s.createElementVNode("div",M0e,[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(bs))]),_:1})]),y[3]||(y[3]=s.createElementVNode("div",{class:"label"},"Close",-1))])])])]),_:3},8,["show"])):(s.openBlock(),s.createBlock(dd,{key:1,show:a.value,"onUpdate:show":y[2]||(y[2]=x=>a.value=x),trigger:"click","allowed-placements":e.allowedPlacements??["bottom","top"],arrow:!0,"custom-styles":{},"custom-classes":["dropdown-popover"],"disable-background-effect":""},{trigger:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(s.unref(u),(x,E)=>(s.openBlock(),s.createBlock(s.resolveDynamicComponent(x),{key:E,ref_for:!0,ref:s.unref(l)(E)},null,512))),128))]),content:s.withCtx(()=>[s.createVNode(PS,{id:s.unref(c),role:"menu","aria-label":e.ariaLabel,onKeydown:C},{default:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.options,(x,E)=>(s.openBlock(),s.createBlock(YS,{key:x.value,ref_for:!0,ref:k=>A(k,E),role:"menuitem",tabindex:E===g.value?0:-1,onClick:k=>i(x)},s.createSlots({default:s.withCtx(()=>[o.optionLabel?s.renderSlot(w.$slots,"optionLabel",{option:x},void 0,!0,0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[s.createTextVNode(s.toDisplayString(x.label),1)],64))]),_:2},[x.icon?{name:"prefix",fn:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(x.icon)))]),_:2},1024)]),key:"0"}:void 0]),1032,["tabindex","onClick"]))),128))]),_:3},8,["id","aria-label"])]),_:3},8,["show","allowed-placements"]))}}),[["__scopeId","data-v-74e3b672"]]);function fd(e){return new Promise(function(t,r){if(typeof e!="string"&&!(e instanceof Blob)){r({err:"no image source"});return}const n=new Image;n.addEventListener("load",a=>{t({width:n.width,height:n.height,ratio:n.height/n.width})}),n.addEventListener("error",()=>r({err:"image corrupted"})),n.src=typeof e=="string"?e:URL.createObjectURL(e)})}function VS({height:e,left:t,top:r,width:n},a,i){const o=1/Math.max((n??0)/a,(e??0)/i),c=[Math.min(1,Ro(Math.max(1e-6,t??0)/(a-(n??0)),6)),Math.min(1,Ro(Math.max(1e-6,r??0)/(i-(e??0)),6))],l=[Math.max(-1,Math.min(1,(c[0]-.5)*2)),Math.max(-1,Math.min(1,(c[1]-.5)*2))];return{scale:o,innerPos:l}}function Cp(e,t,r,n){const a=e.innerPos[0]/2+.5,i=e.innerPos[1]/2+.5,o=t/r>n?r*n:t,c=t/r>n?r:t/n,l=o/e.scale,u=c/e.scale,f=t-l,h=r-u,d=f*a,g=h*i;return{left:d,top:g,width:l,height:u}}var O0e=Object.defineProperty,Q0e=(e,t,r)=>t in e?O0e(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ka=(e,t,r)=>Q0e(e,typeof t!="symbol"?t+"":t,r);function W0e(e){return e*Math.PI/180}function jS(e,t,r){return Math.min(Math.max(e,t),r)}function yp(e,t,r){const[n,a]=e,[i,o]=t,c=Math.cos(r)*(n-i)-Math.sin(r)*(a-o)+i,l=Math.sin(r)*(n-i)+Math.cos(r)*(a-o)+o;return[c,l]}function P0e(e){return e.deltaMode===0}let Y0e=class extends EventTarget{constructor(t,r,n,a,i,o,c=.1,l=10,u=!1,f=!0){super(),ka(this,"wrapperBounds",{x:0,y:0,width:100,height:100}),ka(this,"canvasBounds",{x:0,y:0,width:100,height:100}),ka(this,"translateSpeed",1),ka(this,"zoomSpeed",1),ka(this,"translateSpeedAppleTrackpad",1),ka(this,"zoomSpeedAppleTrackpad",1),ka(this,"isGestureActive",!1),ka(this,"roElement",null),ka(this,"roCanvas",null),ka(this,"ancestorMotionCleanup",null),ka(this,"gestureStartRotate",0),ka(this,"dragStart",null),ka(this,"dragStartFrozenX",null),ka(this,"dragStartFrozenY",null),ka(this,"touchStarts",null),ka(this,"touchStartTranslateX",0),ka(this,"touchStartTranslateY",0),this.element=t,this.offset=r,this.translateX=n,this.translateY=a,this.scale=i,this.rotate=o,this.minScale=c,this.maxScale=l,this.clampBounds=u,this.rotation=f,this.roElement=new ResizeObserver(()=>{const{x:h,y:d,width:g,height:p}=this.element.getBoundingClientRect();this.wrapperBounds={x:h,y:d,width:g,height:p},this.update()}),this.roCanvas=new ResizeObserver(h=>{const{width:d,height:g}=h[0].contentRect;(d!==this.canvasBounds.width||g!==this.canvasBounds.height)&&(this.canvasBounds={...this.canvasBounds,width:d,height:g},this.isGestureActive||this.update())}),requestAnimationFrame(()=>{this.wrapperBounds=this.element.getBoundingClientRect(),this.canvasBounds=this.canvasElement.getBoundingClientRect(),this.update(),this.dispatchEvent(new Event("init"))}),this.roCanvas.observe(this.canvasElement),this.roElement.observe(this.element),this.installAncestorMotionListeners()}installAncestorMotionListeners(){const t=()=>{const{x:i,y:o,width:c,height:l}=this.element.getBoundingClientRect();i===this.wrapperBounds.x&&o===this.wrapperBounds.y&&c===this.wrapperBounds.width&&l===this.wrapperBounds.height||(this.wrapperBounds={x:i,y:o,width:c,height:l},this.update())},r=i=>!(i instanceof Node)||i===this.element?!1:i.contains(this.element),n=i=>{r(i.target)&&t()},a=["transitionrun","transitionend","transitioncancel","animationend","animationcancel"];for(const i of a)document.addEventListener(i,n,!0);this.ancestorMotionCleanup=()=>{for(const i of a)document.removeEventListener(i,n,!0)}}get canvasElement(){return this.element.querySelector(".canvas")}get wrapperInnerX(){return this.wrapperBounds.x+this.offset.left}get wrapperInnerY(){return this.wrapperBounds.y+this.offset.top}get wrapperInnerWidth(){return this.wrapperBounds.width-this.offset.left-this.offset.right}get wrapperInnerHeight(){return this.wrapperBounds.height-this.offset.top-this.offset.bottom}get wrapperInnerRatio(){return this.wrapperInnerWidth/this.wrapperInnerHeight}get canvasNaturalRatio(){return this.canvasBounds.width/this.canvasBounds.height}get naturalScale(){return this.canvasNaturalRatio>=this.wrapperInnerRatio?this.wrapperInnerWidth/this.canvasBounds.width:this.wrapperInnerHeight/this.canvasBounds.height}setTranslateFromUserGesture(t,r){if(this.clampBounds){const n=this.clampTranslate({translateX:t,translateY:r,scale:this.scale,rotate:this.rotate});this.translateX=n.translateX,this.translateY=n.translateY,this.rotate=0}else this.translateX=t,this.translateY=r}handleGesturestart(t){this.gestureStartRotate=this.rotate}handleGesturechange(t){const{clientX:r,clientY:n}=t,a=t.rotation;if(a===0||!this.rotation)return;const i=this.normalizeClientCoords(r,n);this.rotateCanvas(i[0],i[1],this.gestureStartRotate+W0e(a))}handleGestureend(t){}handleMousedown(t){t.preventDefault(),this.dragStart=[t.clientX,t.clientY],this.dragStartFrozenX=this.translateX,this.dragStartFrozenY=this.translateY}handleMouseup(t){t.preventDefault(),this.dragStart=null,this.dragStartFrozenX=null,this.dragStartFrozenY=null}handleMousemove(t){if(t.preventDefault(),this.dragStart&&this.dragStartFrozenX!==null&&this.dragStartFrozenY!==null){const r=t.clientX-this.dragStart[0],n=t.clientY-this.dragStart[1],a=this.dragStartFrozenX- -r,i=this.dragStartFrozenY- -n;this.setTranslateFromUserGesture(a,i),this.update()}}handleWheel(t){let{deltaX:r,deltaY:n,ctrlKey:a}=t;const i=P0e(t);i||(Math.abs(n)>=100&&(n=Math.sign(n)*(Math.abs(n)/120)),Math.abs(r)>=100&&(r=Math.sign(r)*(Math.abs(r)/120)));const o=this.scale;if(a){const c=i?.01*this.zoomSpeedAppleTrackpad:.1*this.zoomSpeed,l=1+-n*c;let u=o*l;if(u=jS(u,this.minScale,this.maxScale),(u===this.minScale||u===this.maxScale)&&(u===this.minScale&&l<1||u===this.maxScale&&l>1)){t.preventDefault();return}const f=this.relativeWrapperCoordinatesFromClientCoords(t.clientX,t.clientY),[h,d]=this.calcProjectionTranslate(u,f,this.normalizeMatrixCoordinates(t.clientX,t.clientY));this.setTranslateFromUserGesture(h,d),this.scale=u}else{const c=i?1*this.translateSpeedAppleTrackpad:25*this.translateSpeed;this.setTranslateFromUserGesture(this.translateX-r*c,this.translateY-n*c)}this.update(),t.preventDefault()}freezeTouches(t){return Array.from(t).map(r=>{const n=this.clientCoordsToWrapperCoords(r.clientX,r.clientY);return{client:[r.clientX,r.clientY],canvasRel:this.getCanvasCoordsRel(n[0],n[1])}})}handleTouchstart(t){this.touchStarts=this.freezeTouches(t.touches),this.touchStartTranslateX=this.translateX,this.touchStartTranslateY=this.translateY,this.isGestureActive=!0,t.preventDefault()}handleTouchmove(t){t.preventDefault();const r=Array.from(t.touches).map(n=>this.clientCoordsToWrapperCoords(n.clientX,n.clientY));if(this.touchStarts){if(r.length>=2&&this.touchStarts.length>=2){const n=[this.touchStarts[0].canvasRel[0]*this.canvasBounds.width,this.touchStarts[0].canvasRel[1]*this.canvasBounds.height],a=[this.touchStarts[1].canvasRel[0]*this.canvasBounds.width,this.touchStarts[1].canvasRel[1]*this.canvasBounds.height],i=Math.sqrt(Math.pow(n[0]-a[0],2)+Math.pow(n[1]-a[1],2)),o=Math.sqrt(Math.pow(r[0][0]-r[1][0],2)+Math.pow(r[0][1]-r[1][1],2))/this.naturalScale,c=jS(o/i,this.minScale,this.maxScale),l=[r[0][0]/this.wrapperInnerWidth,r[0][1]/this.wrapperInnerHeight],u=this.touchStarts[0].canvasRel,[f,h]=this.calcProjectionTranslate(c,l,u,0);if(this.rotation){let d=0,g=0,p=0;const A=Math.atan2(a[1]-n[1],a[0]-n[0]);p=Math.atan2(r[1][1]-r[0][1],r[1][0]-r[0][0])-A;const v=(x,E)=>[this.offset.left+this.canvasBounds.width*x*this.naturalScale*c+f,this.offset.top+this.canvasBounds.height*E*this.naturalScale*c+h],C=v(0,0),w=v(this.touchStarts[0].canvasRel[0],this.touchStarts[0].canvasRel[1]),y=yp(C,w,p);d=y[0]-C[0],g=y[1]-C[1],this.scale=c,this.rotate=p,this.setTranslateFromUserGesture(f+d,h+g)}else this.scale=c,this.setTranslateFromUserGesture(f,h)}else{const n=t.touches[0].clientX-this.touchStarts[0].client[0],a=t.touches[0].clientY-this.touchStarts[0].client[1],i=this.touchStartTranslateX+n,o=this.touchStartTranslateY+a;this.setTranslateFromUserGesture(i,o)}this.update()}}handleTouchend(t){t.touches.length===0?this.touchStarts=null:(this.touchStarts=this.freezeTouches(t.touches),this.touchStartTranslateX=this.translateX,this.touchStartTranslateY=this.translateY),this.isGestureActive=!1}calcProjectionTranslate(t,r,n,a){const i=this.canvasBounds.width*this.naturalScale,o=this.canvasBounds.height*this.naturalScale,c=n[0]*i*t,l=n[1]*o*t,u=yp([c,l],[0,0],a??this.rotate),f=r[0]*this.wrapperInnerWidth,h=r[1]*this.wrapperInnerHeight,d=f-u[0],g=h-u[1];return[d,g]}applyTransform(t,r,n){const a=this.calcProjectionTranslate(t,r,n,0);this.scale=t,this.setTranslateFromUserGesture(a[0],a[1]),this.update()}composeRelPoint(t,r,n,a,i,o){n=n??this.scale,a=a??this.translateX,i=i??this.translateY,o=o??this.rotate;const c=[this.offset.left,this.offset.top],l=[this.offset.left+this.canvasBounds.width*(n*this.naturalScale)*t,this.offset.top+this.canvasBounds.height*(n*this.naturalScale)*r],u=yp(l,c,o);return[u[0]+a,u[1]+i]}composePoint(t,r){const n=t/this.canvasBounds.width,a=r/this.canvasBounds.height;return this.composeRelPoint(n,a)}getAnchorOffset(t,r,n,a,i=[.5,.5]){const o=this.calcProjectionTranslate(t,i,i,0),c=[this.offset.left+o[0]+this.canvasBounds.width*(t*this.naturalScale)*i[0],this.offset.top+o[1]+this.canvasBounds.height*(t*this.naturalScale)*i[1]],l=this.composeRelPoint(i[0],i[1],t,r,n,a),u=l[0]-c[0],f=l[1]-c[1];return[u,f]}getCanvasCoordsRel(t,r){const n=[0,0],a=[t-this.translateX,r-this.translateY],i=yp(a,n,-this.rotate),o=[i[0]/this.renderinScale,i[1]/this.renderinScale];return[o[0]/this.canvasBounds.width,o[1]/this.canvasBounds.height]}clientCoordsToWrapperCoords(t,r){const{x:n,y:a}=this.element.getBoundingClientRect();return[t-n-this.offset.left,r-a-this.offset.top]}relativeWrapperCoordinatesFromClientCoords(t,r){const[n,a]=this.clientCoordsToWrapperCoords(t,r);return[n/this.wrapperInnerWidth,a/this.wrapperInnerHeight]}normalizeMatrixCoordinates(t,r){const n=this.clientCoordsToWrapperCoords(t,r);return this.getCanvasCoordsRel(n[0],n[1])}normalizeClientCoords(t,r){const[n,a]=this.normalizeMatrixCoordinates(t,r);return[n*this.canvasBounds.width,a*this.canvasBounds.height]}rotateCanvas(t,r,n){const a=t/this.canvasBounds.width,i=r/this.canvasBounds.height,o=this.composeRelPoint(a,i,this.scale,0,0,n),c=this.composeRelPoint(a,i);this.setTranslateFromUserGesture(c[0]-o[0],c[1]-o[1]),this.rotate=n,this.update()}get renderinScale(){return this.naturalScale*this.scale}get renderingTranslateX(){return this.offset.left+this.translateX}get renderingTranslateY(){return this.offset.top+this.translateY}get renderingRotate(){return this.rotate}clampTranslate(t,r=[.5,.5]){const n=this.canvasBounds.width*this.naturalScale*t.scale,a=this.canvasBounds.height*this.naturalScale*t.scale,i=n-this.wrapperInnerWidth,o=a-this.wrapperInnerHeight,c=i>0?-i:0,l=Math.min(0,Math.max(t.translateX,c)),u=o>0?-o:0,f=Math.min(0,Math.max(t.translateY,u)),h=-Math.min(0,i)*r[0],d=-Math.min(0,o)*r[1];return{translateX:l+h,translateY:f+d}}update(){this.canvasElement.style.transformOrigin="top left",this.canvasElement.style.transform=`translateX(${this.renderingTranslateX}px) translateY(${this.renderingTranslateY}px) scale(${this.renderinScale}) rotate(${this.renderingRotate}rad)`,this.dispatchEvent(new Event("update"))}destroy(){var t,r,n;(t=this.roElement)==null||t.disconnect(),this.roElement=null,(r=this.roCanvas)==null||r.disconnect(),this.roCanvas=null,(n=this.ancestorMotionCleanup)==null||n.call(this),this.ancestorMotionCleanup=null}};const V0e={class:"canvas"},j0e={class:"matrix"},U0e=s.defineComponent({__name:"Zoompinch",props:{transform:{default:()=>({translateX:0,translateY:0,scale:1,rotate:0})},offset:{default:()=>({left:0,top:0,right:0,bottom:0})},maxScale:{default:10},minScale:{default:.5},clampBounds:{type:Boolean,default:!1},rotation:{type:Boolean,default:!0},mouse:{type:Boolean,default:!0},wheel:{type:Boolean,default:!0},touch:{type:Boolean,default:!0},gesture:{type:Boolean,default:!0},zoomSpeed:{},translateSpeed:{},zoomSpeedAppleTrackpad:{},translateSpeedAppleTrackpad:{}},emits:["update:transform","init","dragGestureStart","dragGestureEnd"],setup(e,{expose:t,emit:r}){const n=e,a=r,i=s.ref(),o=s.ref(),c=s.ref(!1);window.zoompinchEngine=o;const l=s.ref(()=>{throw new Error("Not initialized yet")}),u=s.ref(0),f=s.ref(0);s.onMounted(()=>{i.value&&(o.value=new Y0e(i.value,n.offset,n.transform.translateX,n.transform.translateY,n.transform.scale,n.transform.rotate,n.minScale,n.maxScale,n.clampBounds,n.rotation),n.zoomSpeed!==void 0&&(o.value.zoomSpeed=n.zoomSpeed),n.translateSpeed!==void 0&&(o.value.translateSpeed=n.translateSpeed),n.zoomSpeedAppleTrackpad!==void 0&&(o.value.zoomSpeedAppleTrackpad=n.zoomSpeedAppleTrackpad),n.translateSpeedAppleTrackpad!==void 0&&(o.value.translateSpeedAppleTrackpad=n.translateSpeedAppleTrackpad),o.value.addEventListener("init",()=>{a("init")}),o.value.addEventListener("update",()=>{if(!o.value)return;const B={translateX:o.value.translateX,translateY:o.value.translateY,scale:o.value.scale,rotate:o.value.rotate};(B.translateX!==n.transform.translateX||B.translateY!==n.transform.translateY||B.scale!==n.transform.scale||B.rotate!==n.transform.rotate)&&a("update:transform",B),l.value=(N,R)=>o.value.composePoint(N,R),u.value=o.value.canvasBounds.width,f.value=o.value.canvasBounds.height}),o.value.addEventListener("init",()=>{c.value=!0}))}),s.watch(()=>n.transform,()=>{o.value&&(o.value.translateX!==n.transform.translateX||o.value.translateY!==n.transform.translateY||o.value.scale!==n.transform.scale||o.value.rotate!==n.transform.rotate)&&(o.value.translateX=n.transform.translateX,o.value.translateY=n.transform.translateY,o.value.scale=n.transform.scale,o.value.rotate=n.transform.rotate,o.value.update())},{deep:!0}),s.watch(()=>n.offset,B=>{o.value&&(o.value.offset=B,o.value.update())},{deep:!0}),s.watch(()=>n.minScale,B=>{o.value&&(o.value.minScale=B,o.value.update())}),s.watch(()=>n.maxScale,B=>{o.value&&(o.value.maxScale=B,o.value.update())}),s.watch(()=>n.clampBounds,B=>{o.value&&(o.value.clampBounds=B,o.value.setTranslateFromUserGesture(o.value.translateX,o.value.translateY),o.value.update())}),s.watch(()=>n.rotation,B=>{o.value&&(o.value.rotation=B,o.value.update())}),s.watch(()=>n.zoomSpeed,()=>{!o.value||n.zoomSpeed===void 0||(o.value.zoomSpeed=n.zoomSpeed)}),s.watch(()=>n.translateSpeed,()=>{!o.value||n.translateSpeed===void 0||(o.value.translateSpeed=n.translateSpeed)}),s.watch(()=>n.zoomSpeedAppleTrackpad,()=>{!o.value||n.zoomSpeedAppleTrackpad===void 0||(o.value.zoomSpeedAppleTrackpad=n.zoomSpeedAppleTrackpad)}),s.watch(()=>n.translateSpeedAppleTrackpad,()=>{!o.value||n.translateSpeedAppleTrackpad===void 0||(o.value.translateSpeedAppleTrackpad=n.translateSpeedAppleTrackpad)});const h=(B,N,R,z)=>{o.value&&(z!==void 0&&(o.value.rotate=z),o.value.applyTransform(B,N,R))},d=B=>{o.value&&n.wheel&&o.value.handleWheel(B)},g=B=>{o.value&&n.gesture&&o.value.handleGesturestart(B)},p=B=>{o.value&&n.gesture&&o.value.handleGesturechange(B)},A=B=>{o.value&&n.gesture&&o.value.handleGestureend(B)},v=B=>{o.value&&n.mouse&&o.value.handleMousedown(B)},C=B=>{o.value&&n.mouse&&o.value.handleMousemove(B)},w=B=>{o.value&&n.mouse&&o.value.handleMouseup(B)},y=B=>{o.value&&n.touch&&o.value.handleTouchstart(B)},x=B=>{o.value&&n.touch&&o.value.handleTouchmove(B)},E=B=>{o.value&&n.touch&&o.value.handleTouchend(B)};window.addEventListener("gesturechange",p),window.addEventListener("gestureend",A),window.addEventListener("mousemove",C),window.addEventListener("mouseup",w),window.addEventListener("touchmove",x),window.addEventListener("touchend",E),s.onUnmounted(()=>{window.removeEventListener("gesturechange",p),window.removeEventListener("gestureend",A),window.removeEventListener("mousemove",C),window.removeEventListener("mouseup",w),window.removeEventListener("touchmove",x),window.removeEventListener("touchend",E)});const k=(B,N)=>{if(!o.value)throw new Error("Zoompinch engine not initialized");return o.value.normalizeClientCoords(B,N)},S=(B,N,R)=>{o.value&&o.value.rotateCanvas(B,N,R)};return s.useSlots(),t({applyTransform:h,composePoint:l,normalizeClientCoords:k,zoompinchEngine:o,canvasWidth:u,canvasHeight:f,rotateCanvas:S}),(B,N)=>(s.openBlock(),s.createElementBlock("div",{ref_key:"zoompinchRef",ref:i,class:"zoompinch",onWheel:d,onGesturestart:g,onMousedown:v,onTouchstart:y},[s.createElementVNode("div",V0e,[s.renderSlot(B.$slots,"default",{},void 0,!0)]),s.createElementVNode("div",j0e,[c.value&&l.value?s.renderSlot(B.$slots,"matrix",{key:0,composePoint:l.value,normalizeClientCoords:k,canvasWidth:u.value,canvasHeight:f.value},void 0,!0):s.createCommentVNode("",!0)])],544))}}),$0e=(e,t)=>{const r=e.__vccOpts||e;for(const[n,a]of t)r[n]=a;return r},US=$0e(U0e,[["__scopeId","data-v-fbdbcf7c"]]),s1=new Set;requestAnimationFrame(function e(){s1.forEach(t=>t()),requestAnimationFrame(e)});function $S(e,t,r){let n;const a=()=>{const o=e instanceof Function?e():e.value,c=n;o!==n&&(n=o,t(o,c))};return s1.add(a),()=>{s1.delete(a)}}function wy(e,t){let r=null;const n=this;return()=>{clearTimeout(r);var a=arguments;r=setTimeout(()=>{e.apply(n,a)},t)}}const H0e=["x","y","width","height"],X0e=["cx","cy","r"],J0e=["cx","cy","r"],K0e=["cx","cy","r"],q0e=["cx","cy","r"],ede=["cx","cy","r"],tde=["cx","cy","r"],rde=["cx","cy","r"],nde=["cx","cy","r"],ade=["cx","cy","r"],ide=["cx","cy","r"],ode=["cx","cy","r"],sde=["cx","cy","r"],lde=["cx","cy","r"],cde=["cx","cy","r"],ude=["cx","cy","r"],dde=["cx","cy","r"],fde=dt(s.defineComponent({__name:"CropSkeleton",props:{x:{},y:{},width:{},height:{},aspectRatio:{},clamp:{}},emits:["update","effectiveHandleChange"],setup(e,{emit:t}){const r=e,n=t,a=s.ref(5),i=s.computed(()=>{const D=Math.min(r.width,r.height);return D>=a.value*8?a.value*4:Math.max(D/2,a.value)}),o=s.computed(()=>({x:r.x,y:r.y})),c=s.computed(()=>({x:r.x+r.width,y:r.y})),l=s.computed(()=>({x:r.x+r.width,y:r.y+r.height})),u=s.computed(()=>({x:r.x,y:r.y+r.height})),f=s.computed(()=>({x:r.x+r.width/2,y:r.y})),h=s.computed(()=>({x:r.x+r.width,y:r.y+r.height/2})),d=s.computed(()=>({x:r.x+r.width/2,y:r.y+r.height})),g=s.computed(()=>({x:r.x,y:r.y+r.height/2})),p=s.computed(()=>r.width>a.value*4&&r.height>a.value*4),A=s.ref(null),v=s.ref(null),C=s.ref(null),w=s.ref(null),y=s.ref(null),x=s.ref(null),E=s.ref(null);s.watch(x,D=>{n("effectiveHandleChange",D)});function k(D,Z){console.log("handleThumbMouseDown",D,Z),y.value=Z,x.value=Z,E.value=null,C.value={x:r.x,y:r.y,width:r.width,height:r.height},w.value={x:D.clientX,y:D.clientY},D.preventDefault(),D.stopPropagation()}function S(D,Z){console.log("handleThumbTouchstart",D,Z);const M=D.touches[0];y.value=Z,x.value=Z,E.value=null,C.value={x:r.x,y:r.y,width:r.width,height:r.height},w.value={x:M.clientX,y:M.clientY},D.preventDefault(),D.stopPropagation()}const B=()=>{y.value=null,x.value=null,E.value=null,C.value=null,w.value=null,A.value=null,v.value=null},N=()=>{y.value=null,x.value=null,E.value=null,C.value=null,w.value=null,A.value=null,v.value=null},R=D=>{if(A.value){if(!C.value)return;const Z=D.clientX-A.value.x,M=D.clientY-A.value.y;v.value={x:C.value.x+Z,y:C.value.y+M,width:C.value.width,height:C.value.height}}else y.value&&(E.value={x:D.clientX,y:D.clientY})},z=D=>{const Z=D.touches[0];if(A.value){if(!C.value)return;const M=Z.clientX-A.value.x,P=Z.clientY-A.value.y;v.value={x:C.value.x+M,y:C.value.y+P,width:C.value.width,height:C.value.height}}else y.value&&(E.value={x:Z.clientX,y:Z.clientY})};function L(D){A.value={x:D.clientX,y:D.clientY},w.value={x:D.clientX,y:D.clientY},C.value={x:r.x,y:r.y,width:r.width,height:r.height},D.preventDefault(),D.stopPropagation()}function m(D){const Z=D.touches[0];A.value={x:Z.clientX,y:Z.clientY},w.value={x:Z.clientX,y:Z.clientY},C.value={x:r.x,y:r.y,width:r.width,height:r.height},D.preventDefault(),D.stopPropagation()}function j(D){var re,X;const Z=((re=r.clamp)==null?void 0:re.x)??-1/0,M=((X=r.clamp)==null?void 0:X.y)??-1/0,P=r.clamp?r.clamp.x+r.clamp.width:1/0,W=r.clamp?r.clamp.y+r.clamp.height:1/0;return{x:Math.min(Math.max(D.x,Z),P-D.width),y:Math.min(Math.max(D.y,M),W-D.height),width:D.width,height:D.height}}function V(D){const Z=D.shiftKey?10:4;let M=0,P=0;switch(D.key){case"ArrowLeft":M=-Z;break;case"ArrowRight":M=Z;break;case"ArrowUp":P=-Z;break;case"ArrowDown":P=Z;break;default:return}D.preventDefault();const W={x:r.x,y:r.y,width:r.width,height:r.height};if(D.shiftKey)if(r.aspectRatio!=null){const X=D.key==="ArrowRight"||D.key==="ArrowDown"?Z:-Z,{bbox:ae}=F("br",W,X,X,r.aspectRatio,r.clamp);n("update",ae)}else{const{bbox:re}=F("br",W,M,P,void 0,r.clamp);n("update",re)}else n("update",j({...W,x:W.x+M,y:W.y+P}))}function Q(D,Z,M){const P={tl:"tr",tr:"tl",bl:"br",br:"bl",l:"r",r:"l"},W={tl:"bl",bl:"tl",tr:"br",br:"tr",t:"b",b:"t"};let re=D;return Z&&(re=P[re]??re),M&&(re=W[re]??re),re}function F(D,Z,M,P,W,re){let X=Z.x,ae=Z.y,ue=Z.x+Z.width,Ce=Z.y+Z.height;switch(D){case"tl":X+=M,ae+=P;break;case"t":ae+=P;break;case"tr":ue+=M,ae+=P;break;case"r":ue+=M;break;case"br":ue+=M,Ce+=P;break;case"b":Ce+=P;break;case"bl":X+=M,Ce+=P;break;case"l":X+=M;break}const ie=X>ue,T=ae>Ce,O=Q(D,ie,T),U=(re==null?void 0:re.x)??-1/0,ee=(re==null?void 0:re.y)??-1/0,de=re?re.x+re.width:1/0,fe=re?re.y+re.height:1/0;if(W!=null)if(D==="tl"||D==="tr"||D==="bl"||D==="br"){const Se=D==="tl"||D==="bl"?ue:X,ve=D==="tl"||D==="tr"?Ce:ae,Ee=D==="tl"||D==="bl"?X:ue,Ue=D==="tl"||D==="tr"?ae:Ce,$e=Ee>=Se,Ye=Ue>=ve;let Xe=Math.max(Math.abs(Ee-Se),1),ye=Math.max(Math.abs(Ue-ve),1);if(Xe/ye>W?Xe=ye*W:ye=Xe/W,re){const Ne=$e?de-Se:Se-U,He=Ye?fe-ve:ve-ee;(Xe>Ne||ye>He)&&(Ne/He>W?(ye=Math.min(ye,He),Xe=ye*W):(Xe=Math.min(Xe,Ne),ye=Xe/W))}$e?(X=Se,ue=Se+Xe):(ue=Se,X=Se-Xe),Ye?(ae=ve,Ce=ve+ye):(Ce=ve,ae=ve-ye)}else if(D==="r"||D==="l"){const ve=D==="r"?Z.x:Z.x+Z.width,Ee=D==="r"?ue:X,Ue=Z.y+Z.height/2,$e=Ee>=ve;let Ye=Math.max(Math.abs(Ee-ve),1);if(re){const ye=$e?de-ve:ve-U,Ne=Math.min(Ue-ee,fe-Ue)*2;Ye=Math.max(Math.min(Ye,ye,Ne*W),1)}const Xe=Ye/W;$e?(X=ve,ue=ve+Ye):(ue=ve,X=ve-Ye),ae=Ue-Xe/2,Ce=Ue+Xe/2}else{const ve=D==="b"?Z.y:Z.y+Z.height,Ee=D==="b"?Ce:ae,Ue=Z.x+Z.width/2,$e=Ee>=ve;let Ye=Math.max(Math.abs(Ee-ve),1);if(re){const ye=$e?fe-ve:ve-ee,Ne=Math.min(Ue-U,de-Ue)*2;Ye=Math.max(Math.min(Ye,ye,Ne/W),1)}const Xe=Ye*W;$e?(ae=ve,Ce=ve+Ye):(Ce=ve,ae=ve-Ye),X=Ue-Xe/2,ue=Ue+Xe/2}else{const we=Math.min(X,ue),Se=Math.min(ae,Ce),ve=Math.max(X,ue),Ee=Math.max(ae,Ce);X=we,ae=Se,ue=ve,Ce=Ee,re&&(X=Math.max(X,U),ae=Math.max(ae,ee),ue=Math.min(ue,de),Ce=Math.min(Ce,fe))}return{bbox:{x:X,y:ae,width:ue-X,height:Ce-ae},effectiveHandle:O}}return $S(v,()=>{var D,Z;if(v.value){const M=((D=r.clamp)==null?void 0:D.x)??-1/0,P=((Z=r.clamp)==null?void 0:Z.y)??-1/0,W=r.clamp?r.clamp.x+r.clamp.width:1/0,re=r.clamp?r.clamp.y+r.clamp.height:1/0;v.value.x<M&&(v.value.x=M),v.value.y<P&&(v.value.y=P),v.value.x+v.value.width>W&&(v.value.x=W-v.value.width),v.value.y+v.value.height>re&&(v.value.y=re-v.value.height),n("update",v.value)}}),$S(E,()=>{if(!y.value||!E.value||!w.value||!C.value)return;const D=E.value.x-w.value.x,Z=E.value.y-w.value.y,{bbox:M,effectiveHandle:P}=F(y.value,C.value,D,Z,r.aspectRatio,r.clamp);x.value=P,n("update",M)}),window.addEventListener("mouseup",B),window.addEventListener("touchend",N),window.addEventListener("mousemove",R),window.addEventListener("touchmove",z),s.onUnmounted(()=>{window.removeEventListener("mouseup",B),window.removeEventListener("touchend",N),window.removeEventListener("mousemove",R),window.removeEventListener("touchmove",z)}),(D,Z)=>(s.openBlock(),s.createElementBlock("g",null,[s.createElementVNode("rect",{x:e.x,y:e.y,width:e.width,height:e.height,class:"skeleton-rect",tabindex:"0",role:"application","aria-roledescription":"Crop area","aria-label":"Crop area. Use arrow keys to move, Shift plus arrow keys to resize.",onMousedown:L,onTouchstart:m,onKeydown:V},null,40,H0e),s.createElementVNode("g",{class:s.normalizeClass({inactive:!p.value})},[s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:f.value.x,cy:f.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-t",onMousedown:Z[0]||(Z[0]=M=>k(M,"t")),onTouchstart:Z[1]||(Z[1]=M=>S(M,"t"))},null,40,X0e),s.createElementVNode("circle",{cx:f.value.x,cy:f.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="t"}])},null,10,J0e)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:h.value.x,cy:h.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-r",onMousedown:Z[2]||(Z[2]=M=>k(M,"r")),onTouchstart:Z[3]||(Z[3]=M=>S(M,"r"))},null,40,K0e),s.createElementVNode("circle",{cx:h.value.x,cy:h.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="r"}])},null,10,q0e)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:d.value.x,cy:d.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-b",onMousedown:Z[4]||(Z[4]=M=>k(M,"b")),onTouchstart:Z[5]||(Z[5]=M=>S(M,"b"))},null,40,ede),s.createElementVNode("circle",{cx:d.value.x,cy:d.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="b"}])},null,10,tde)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:g.value.x,cy:g.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-l",onMousedown:Z[6]||(Z[6]=M=>k(M,"l")),onTouchstart:Z[7]||(Z[7]=M=>S(M,"l"))},null,40,rde),s.createElementVNode("circle",{cx:g.value.x,cy:g.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="l"}])},null,10,nde)])],2),s.createElementVNode("g",null,[s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:o.value.x,cy:o.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-tl",onMousedown:Z[8]||(Z[8]=M=>k(M,"tl")),onTouchstart:Z[9]||(Z[9]=M=>S(M,"tl"))},null,40,ade),s.createElementVNode("circle",{cx:o.value.x,cy:o.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="tl"}])},null,10,ide)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:c.value.x,cy:c.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-tr",onMousedown:Z[10]||(Z[10]=M=>k(M,"tr")),onTouchstart:Z[11]||(Z[11]=M=>S(M,"tr"))},null,40,ode),s.createElementVNode("circle",{cx:c.value.x,cy:c.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="tr"}])},null,10,sde)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:u.value.x,cy:u.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-bl",onMousedown:Z[12]||(Z[12]=M=>k(M,"bl")),onTouchstart:Z[13]||(Z[13]=M=>S(M,"bl"))},null,40,lde),s.createElementVNode("circle",{cx:u.value.x,cy:u.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="bl"}])},null,10,cde)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:l.value.x,cy:l.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-br",onMousedown:Z[14]||(Z[14]=M=>k(M,"br")),onTouchstart:Z[15]||(Z[15]=M=>S(M,"br"))},null,40,ude),s.createElementVNode("circle",{cx:l.value.x,cy:l.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="br"}])},null,10,dde)])])]))}}),[["__scopeId","data-v-ab8c8451"]]);function hd(e,t,r){return Math.min(Math.max(e,t),r)}function hde(e,t){const r=hd(e.x,t.x,t.x+t.width),n=hd(e.y,t.y,t.y+t.height),a=hd(e.x+e.width,t.x,t.x+t.width),i=hd(e.y+e.height,t.y,t.y+t.height);return{x:r,y:n,width:a-r,height:i-n}}function gde(e,t,r){if(r==null)return hde(e,t);let n=e.width,a=e.height;n>t.width&&(n=t.width,a=n/r),a>t.height&&(a=t.height,n=a*r);const i=hd(e.x,t.x,t.x+t.width-n),o=hd(e.y,t.y,t.y+t.height-a);return{x:i,y:o,width:n,height:a}}function mde(e){return new Promise((t,r)=>{if(e.complete&&e.naturalWidth!==0){console.log("[0] getBoundingClientRect",e.getBoundingClientRect()),t();return}const n=()=>{e.naturalWidth*e.naturalHeight>0&&(console.log("[1] getBoundingClientRect",e.getBoundingClientRect()),setTimeout(()=>{console.log("[2] getBoundingClientRect",e.getBoundingClientRect()),t()}),s1.delete(n))};s1.add(n),e.addEventListener("error",()=>r(new Error("Failed to load image")),{once:!0})})}const pde={class:"bx-cropper"},Ade={xmlns:"http://www.w3.org/2000/svg",width:"100%",height:"100%",class:"matrix-svg"},bde={key:0,class:"layer loading-layer"},vde={class:"layer"},HS=dt(s.defineComponent({__name:"BxCropper",props:{crop:{},aspectRatio:{},offset:{default:()=>({top:10,right:10,bottom:10,left:10})},mirrorX:{type:Boolean,default:!1},mirrorY:{type:Boolean,default:!1}},emits:["update:crop"],setup(e,{emit:t}){const r=e,n=t;s.useSlots();const a=s.ref(),i=s.ref({translateX:0,translateY:0,scale:1,rotate:0}),o=s.ref(),c=s.ref();function l(v){let{left:C,top:w,width:y,height:x}=v;return r.mirrorX&&a.value&&(C=a.value.canvasWidth-C-y),r.mirrorY&&a.value&&(w=a.value.canvasHeight-w-x),{left:C,top:w,width:y,height:x}}function u(v){if(!a.value)throw new Error("Zoompinch ref not available");const C=l(v),[w,y]=a.value.composePoint(C.left,C.top),[x,E]=a.value.composePoint(C.left+C.width,C.top+C.height),k=x-w,S=E-y;return{x:w,y,width:k,height:S}}function f(v){if(!a.value||!a.value.zoompinchEngine)throw new Error("Zoompinch ref or engine not available");const C=v.x+(a.value.zoompinchEngine.wrapperInnerX-r.offset.left),w=v.y+(a.value.zoompinchEngine.wrapperInnerY-r.offset.top),[y,x]=a.value.normalizeClientCoords(C,w),[E,k]=a.value.normalizeClientCoords(C+v.width,w+v.height),S=E-y,B=k-x;return{left:Math.round(y),top:Math.round(x),width:Math.round(S),height:Math.round(B)}}const h=s.ref(!1);async function d(){var w;if(!((w=a.value)!=null&&w.zoompinchEngine))return;const v=Array.from(a.value.zoompinchEngine.canvasElement.children);for(const y of v)y.tagName==="IMG"&&await mde(y);h.value=!0,a.value.applyTransform(1,[.5,.5],[.5,.5]);const C=r.crop??(()=>{const y=a.value.canvasWidth,x=a.value.canvasHeight,E=y/x;if(r.aspectRatio){const k=E>r.aspectRatio?x*r.aspectRatio:y,S=E>r.aspectRatio?x:y/r.aspectRatio;return{left:(y-k)/2,top:(x-S)/2,width:k,height:S}}else return{left:0,top:0,width:y,height:x}})();c.value=C,o.value=u(C)}const g=s.ref(null);window.test=()=>f(o.value);const p=s.computed(()=>{if(i.value,!a.value)throw new Error("Zoompinch ref not available");return u({left:0,top:0,width:a.value.canvasWidth,height:a.value.canvasHeight})});function A(v){o.value=v}return s.watch(i,()=>{!o.value||!a.value||(o.value=gde(o.value,p.value,r.aspectRatio))}),s.watch(o,v=>{if(!v)return;const C=f(v),w=l(C);c.value=w,n("update:crop",w)}),s.watch([()=>r.mirrorX,()=>r.mirrorY],()=>{!h.value||!c.value||!a.value||(o.value=u(c.value))}),(v,C)=>(s.openBlock(),s.createElementBlock("div",pde,[s.createVNode(s.unref(US),{ref_key:"zoompinchRef",ref:a,transform:i.value,"onUpdate:transform":C[1]||(C[1]=w=>i.value=w),rotation:!1,"min-scale":1,offset:e.offset,"clamp-bounds":"",onInit:d,class:s.normalizeClass({[`effective-handle-${g.value}`]:g.value!==null})},{default:s.withCtx(()=>[s.renderSlot(v.$slots,"default",{},void 0,!0)]),matrix:s.withCtx(()=>[(s.openBlock(),s.createElementBlock("svg",Ade,[o.value?(s.openBlock(),s.createBlock(fde,s.mergeProps({key:0},o.value,{"aspect-ratio":e.aspectRatio,clamp:p.value,onUpdate:A,onEffectiveHandleChange:C[0]||(C[0]=w=>g.value=w)}),null,16,["aspect-ratio","clamp"])):s.createCommentVNode("",!0)])),h.value?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",bde,[s.createVNode(nc)])),s.createElementVNode("div",vde,[s.renderSlot(v.$slots,"layer",{},void 0,!0)])]),_:3},8,["transform","offset","class"])]))}}),[["__scopeId","data-v-8d2848fa"]]),Cde={class:"bx-image-cropper"},yde=["src"],wde={class:"actions-left"},Ide={class:"actions-right"},XS=dt(s.defineComponent({__name:"BxImageCropper",props:s.mergeModels({src:{},aspectRatio:{},offset:{}},{crop:{required:!1},cropModifiers:{},mirrorX:{type:Boolean,required:!1,default:!1},mirrorXModifiers:{},mirrorY:{type:Boolean,required:!1,default:!1},mirrorYModifiers:{}}),emits:s.mergeModels(["cancel","done"],["update:crop","update:mirrorX","update:mirrorY"]),setup(e,{emit:t}){const r=s.useModel(e,"crop"),n=s.useModel(e,"mirrorX"),a=s.useModel(e,"mirrorY"),i=t;function o(){n.value=!n.value}function c(){a.value=!a.value}return(l,u)=>(s.openBlock(),s.createElementBlock("div",Cde,[s.createVNode(HS,{"aspect-ratio":e.aspectRatio,crop:r.value,"onUpdate:crop":u[4]||(u[4]=f=>r.value=f),offset:e.offset,"mirror-x":n.value,"mirror-y":a.value},{layer:s.withCtx(()=>[s.createElementVNode("div",{class:"actions-wrapper",onTouchstart:u[2]||(u[2]=s.withModifiers(()=>{},["stop"])),onTouchend:u[3]||(u[3]=s.withModifiers(()=>{},["stop"]))},[s.createElementVNode("div",wde,[s.createVNode(Et,{onClick:o,class:s.normalizeClass({active:!0}),"aria-label":"Mirror horizontally"},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[...u[5]||(u[5]=[s.createElementVNode("svg",{fill:"none",viewBox:"0 0 24 24","data-fpl-icon-size":"24"},[s.createElementVNode("g",{style:{"transform-origin":"center center",transform:"scale(1.5)"}},[s.createElementVNode("path",{style:{fill:"currentColor","fill-rule":"evenodd"},d:"M12.5 6.5a.5.5 0 0 0-1 0v11a.5.5 0 0 0 1 0zM6 9.104a.75.75 0 0 1 1.28-.53L10 11.292a1 1 0 0 1 0 1.414l-2.72 2.72a.75.75 0 0 1-1.28-.53zm1 .603v4.586L9.293 12zm11-.603a.75.75 0 0 0-1.28-.53L14 11.292a1 1 0 0 0 0 1.414l2.72 2.72a.75.75 0 0 0 1.28-.53zm-1 .603v4.586L14.707 12z","clip-rule":"evenodd"})])],-1)])]),_:1})]),_:1}),s.createVNode(Et,{onClick:c,class:s.normalizeClass({active:!0}),"aria-label":"Mirror vertically"},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[...u[6]||(u[6]=[s.createElementVNode("svg",{fill:"none",viewBox:"0 0 24 24","data-fpl-icon-size":"24"},[s.createElementVNode("g",{style:{"transform-origin":"center center",transform:"scale(1.5)"}},[s.createElementVNode("path",{style:{fill:"currentColor","fill-rule":"evenodd"},d:"M17.5 12.5a.5.5 0 0 0 0-1h-11a.5.5 0 0 0 0 1zM14.896 18a.75.75 0 0 0 .53-1.28L12.708 14a1 1 0 0 0-1.414 0l-2.72 2.72a.75.75 0 0 0 .53 1.28zm-.603-1H9.707L12 14.707zm.603-11a.75.75 0 0 1 .53 1.28L12.708 10a1 1 0 0 1-1.414 0l-2.72-2.72A.75.75 0 0 1 9.103 6zm-.603 1H9.707L12 9.293z","clip-rule":"evenodd"})])],-1)])]),_:1})]),_:1})]),s.createElementVNode("div",Ide,[s.createVNode(Et,{secondary:"",onClick:u[0]||(u[0]=f=>i("cancel"))},{default:s.withCtx(()=>[...u[7]||(u[7]=[s.createTextVNode(" Cancel ",-1)])]),_:1}),s.createVNode(Et,{active:"",onClick:u[1]||(u[1]=f=>i("done"))},{default:s.withCtx(()=>[...u[8]||(u[8]=[s.createTextVNode(" Done ",-1)])]),_:1})])],32)]),default:s.withCtx(()=>[s.createElementVNode("img",{src:e.src,class:s.normalizeClass(["image",{"mirror-x":n.value,"mirror-y":a.value}])},null,10,yde)]),_:1},8,["aspect-ratio","crop","offset","mirror-x","mirror-y"])]))}}),[["__scopeId","data-v-0924dbd3"]]),JS=.6,KS=.4,qS=.6,e_=(e,t,r)=>Math.min(r,Math.max(t,e));function t_(e){const{faces:t,natural:r,aspectRatio:n,cropMode:a,zoom:i=!1}=e;if(a!=="cover"||!Number.isFinite(n)||n<=0||!(r.width>0)||!(r.height>0))return null;const o=t.filter(E=>E.score>=JS&&E.width>0&&E.height>0);if(o.length===0)return null;const c=Math.min(...o.map(E=>E.x)),l=Math.min(...o.map(E=>E.y)),u=Math.max(...o.map(E=>E.x+E.width)),f=Math.max(...o.map(E=>E.y+E.height)),h=(c+u)/2,d=(l+f)/2,g=r.width/r.height,p=g>n?r.height*n:r.width,A=g>n?r.height:r.width/n;let v=p,C=A;if(i){const E=(u-c)*(1+2*qS),k=(f-l)*(1+2*qS),S=Math.max(E,k*n),B=S/n;v=Math.min(p,S),C=Math.min(A,B)}const w=h-v/2,y=d-C*KS,x={left:e_(w,0,Math.max(0,r.width-v)),top:e_(y,0,Math.max(0,r.height-C)),width:v,height:C};return x.left===0&&x.top===0&&Math.abs(x.width-r.width)<.5&&Math.abs(x.height-r.height)<.5?null:x}let wp=null;function xde(e){wp=e}function r_(){return wp!==null}async function Ede(e){if(!wp)return[];try{const t=await wp(e);return Array.isArray(t)?t:[]}catch(t){return console.warn("[autoCrop] face detection failed, skipping auto-crop",t),[]}}const Bde=640;function kde(e){return new Promise(t=>{const r=new Image;r.crossOrigin="anonymous",r.addEventListener("load",()=>t(r)),r.addEventListener("error",()=>t(null)),r.src=e})}function Sde(e){const t=e.naturalWidth||e.width,r=e.naturalHeight||e.height;if(!(t>0)||!(r>0))return null;const n=Math.min(1,Bde/Math.max(t,r)),a=document.createElement("canvas");a.width=Math.max(1,Math.round(t*n)),a.height=Math.max(1,Math.round(r*n));const i=a.getContext("2d",{willReadFrequently:!0});if(!i)return null;i.drawImage(e,0,0,a.width,a.height);try{i.getImageData(0,0,1,1)}catch{return null}return{canvas:a,scale:n}}async function n_(e){if(!r_()||e.cropMode!=="cover")return null;const t=await kde(e.src);if(!t)return null;const r=Sde(t);if(!r)return null;const n=await Ede(r.canvas);if(n.length===0)return null;const a=1/r.scale,i=n.map(o=>({x:o.x*a,y:o.y*a,width:o.width*a,height:o.height*a,score:o.score}));return t_({faces:i,natural:e.natural,aspectRatio:e.aspectRatio,cropMode:e.cropMode,zoom:e.zoom})}const _de=["aria-labelledby","aria-label"],Rde=["src","alt"],Nde={class:"actions"},Dde={key:2,class:"padding-input-wrapper"},Fde=["id"],Ip=dt(s.defineComponent({__name:"ImageEdit",props:s.mergeModels({allowUploadFromDevice:{type:Boolean},width:{},height:{},allowedTypes:{},convertTo:{},quality:{},imageLibraries:{},uploadLabel:{default:"Select image"},editLabel:{},actionsLabel:{default:"More"},maxSize:{default:1/0},bridge:{},mobile:{type:Boolean,default:!1},compact:{type:Boolean,default:!1},field:{},allowCropImage:{type:Boolean},aspectRatio:{},resetCropOnChange:{type:Boolean,default:!0},allowPadding:{type:Boolean,default:!1},autoCrop:{type:Boolean,default:!1},autoCropZoom:{type:Boolean,default:!1},labelId:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=rc(),r=s.inject(Yh),n=e,a=s.useModel(e,"modelValue"),i=s.computed(()=>{var j,V;const m=(j=a.value)==null?void 0:j.src;return m&&Di.withBackgroundRemoval(m,((V=a.value)==null?void 0:V.removeBackground)===!0)}),o=s.computed({get:()=>{var m;return(m=a.value)==null?void 0:m.src},set:m=>{!a.value||typeof a.value!="object"?a.value={src:m,innerRotate:0,cropMode:"cover",innerAlign:"center",crop:null,innerPos:[0,0],mirrorX:!1,mirrorY:!1,scale:1}:(a.value.src=m,a.value.crop=null,a.value.innerPos=[0,0],a.value.scale=1,a.value.innerRotate=0,a.value.mirrorX=!1,a.value.mirrorY=!1),(async()=>{const j=await fd(o.value);if(N.value=j,console.log("newImageInfo",j,n,a.value),n.autoCrop&&a.value.cropMode==="cover"){const V=await n_({src:o.value,natural:j,aspectRatio:n.aspectRatio,cropMode:a.value.cropMode,zoom:!0});if(console.log("autoCrop suggested",V),V&&a.value.src===o.value){c.value=V;return}}n.resetCropOnChange&&(a.value.cropMode==="cover"?(console.log("resetting crop on change with cover mode"),c.value=Cp({scale:a.value.scale??1,innerPos:a.value.innerPos??[0,0]},j.width,j.height,n.aspectRatio)):c.value={top:0,left:0,width:j.width,height:j.height})})()}}),c=s.computed({get:()=>a.value.crop?a.value.crop:N.value?Cp({scale:a.value.scale??1,innerPos:a.value.innerPos??[0,0]},N.value.width,N.value.height,n.aspectRatio):{top:0,left:0,width:10,height:10},set:async m=>{var Q,F;console.log("cropProxy.set()",m);const{scale:j,innerPos:V}=VS(m,N.value.width,N.value.height);a.value={...ta(a.value),scale:j,innerPos:V,crop:m,cropMode:((Q=a.value)==null?void 0:Q.cropMode)??"cover",innerAlign:((F=a.value)==null?void 0:F.innerAlign)??"center"}}});s.watch(o,m=>{m&&fd(m).then(j=>{N.value=j}).catch(()=>{})},{immediate:!0});const l=mi("bx-image-padding-label"),u=s.computed(()=>(n.editLabel??n.uploadLabel)||"Image"),f=s.computed(()=>Math.max(1,Math.min(n.width,n.height)/2)),h=s.computed({get(){var j;const m=(((j=a.value)==null?void 0:j.padding)??[0])[0]??0;return Math.round(Math.min(100,m/f.value*100))},set(m){const j=Math.max(0,Math.min(100,m))/100*f.value;a.value={...a.value,padding:[j,j,j,j]}}}),d=s.ref(!1);s.ref(!1);const g=s.computed(()=>n.allowCropImage?1:2),{uploadFiles:p,uploadProgresses:A,uploading:v}=ih(s.toRef(n,"width"),s.toRef(n,"height"),s.toRef(n,"convertTo"),s.toRef(n,"quality"),n.bridge.handleUpload,s.toRef(n,"field"));async function C(){const m=await q2({types:n.allowedTypes,maxSize:n.maxSize,multiple:!0}),j=qh({title:"Uploading images",content:()=>[s.h(Su,{value:A.value.reduce((F,D)=>F+D,0)/A.value.length})],closeable:!1,icon:()=>s.h(ep),disableBackgroundEffect:!0}),V=await p(m);j.close();const Q=V[0];Q&&(N.value={width:Q.width,height:Q.height,ratio:Q.width/Q.height},k(Q.src))}const w=s.computed(()=>[...n.allowUploadFromDevice?[{label:n.uploadLabel,action:C,icon:()=>s.h(oc),key:"upload"}]:[],...n.imageLibraries.map(j=>({label:j.label,icon:()=>{if(j.type==="sharedDrive")switch(j.service){case"googledrive":return s.h("img",{src:"https://upload.wikimedia.org/wikipedia/commons/1/12/Google_Drive_icon_%282020%29.svg"});case"onedrive":return s.h("img",{src:"https://upload.wikimedia.org/wikipedia/commons/e/e7/Microsoft_OneDrive_Icon_%282025_-_present%29.svg"});default:return s.h(oc)}else return j.type==="pexels"?s.h("img",{src:"https://www.drupal.org/files/project-images/pexels_logo_0.png"}):s.h(oc)},key:j.type==="sharedDrive"?j.service:j.type==="custom"?"custom":j.type,lib:j}))]),y=s.ref(),x=s.computed(()=>w.value.slice(g.value===1?g.value:g.value-1).map(m=>({label:m.label,value:m.key,icon:n.mobile?m.icon:()=>s.h(ft,{},m.icon)})));function E(m){m==="upload"?w.value.length>1?(y.value=void 0,d.value=!0):C():(y.value=m,d.value=!0)}function k(m){console.log("handleImageSelection",m),o.value=m,d.value=!1}function S(){if(n.allowUploadFromDevice){C();return}y.value=void 0,d.value=!0}O6(()=>n.field,S);function B(m){n.imageLibraries.length===0&&n.allowUploadFromDevice&&(C(),m.stopImmediatePropagation(),m.stopPropagation(),s.nextTick(()=>{d.value=!1}))}const N=s.ref(),R=s.ref(!1);function z(m){E(m),R.value=!1}function L(){let m=ta(c.value),j=a.value.mirrorX,V=a.value.mirrorY,Q=c.value;fd(o.value).then(Z=>{N.value=Z});const F=a.value.cropMode==="cover"?n.aspectRatio:void 0,D=ES(()=>s.h("div",{class:"cropper-popover-wrapper"},[s.h(XS,{src:Ks(i.value??o.value,r==null?void 0:r.value),crop:c.value,"onUpdate:crop"(Z){Z&&(Q=Z)},mirrorX:a.value.mirrorX,"onUpdate:mirrorX"(Z){a.value={...a.value,mirrorX:Z}},mirrorY:a.value.mirrorY,"onUpdate:mirrorY"(Z){a.value={...a.value,mirrorY:Z}},aspectRatio:F,offset:{top:20,right:20,bottom:20,left:20},style:{width:"100%",height:"100%"},onCancel(){setTimeout(()=>{c.value=m,a.value={...a.value,mirrorX:j,mirrorY:V}},50),D.destroy()},onDone(){setTimeout(()=>{c.value=Q},50),D.destroy()}})]))}return(m,j)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["image-edit-field",{"has-single-action":x.value.length===0&&!e.allowCropImage,compact:e.compact}])},[s.createVNode(_u,{closeable:!1,show:d.value,"onUpdate:show":j[3]||(j[3]=V=>d.value=V),type:"layer",trigger:"click",fullscreen:""},{title:s.withCtx(()=>[y.value?(s.openBlock(),s.createBlock(Et,{key:0,circle:"","aria-label":"Back",onClick:j[0]||(j[0]=V=>y.value=void 0)},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(q5))]),_:1})]),_:1})):s.createCommentVNode("",!0)]),"header-actions":s.withCtx(()=>[s.createVNode(Et,{circle:"","aria-label":"Close",onClick:j[1]||(j[1]=V=>d.value=!1)},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(bs))]),_:1})]),_:1})]),trigger:s.withCtx(()=>[s.createElementVNode("button",{type:"button",class:"image-preview","aria-labelledby":e.labelId,"aria-label":e.labelId?void 0:e.editLabel??e.uploadLabel,onClick:B},[i.value?(s.openBlock(),s.createElementBlock("img",{key:0,src:s.unref(t)(i.value),alt:u.value},null,8,Rde)):(s.openBlock(),s.createBlock(ft,{key:1,class:"image-placeholder","aria-hidden":"true"},{default:s.withCtx(()=>[s.createVNode(s.unref(oc))]),_:1}))],8,_de)]),content:s.withCtx(()=>[s.createVNode(WS,{"active-key":y.value,"onUpdate:activeKey":j[2]||(j[2]=V=>y.value=V),options:w.value,"image-libraries":e.imageLibraries,width:e.width,height:e.height,quality:e.quality,"convert-to":e.convertTo,bridge:e.bridge,field:e.field,onSelect:k},null,8,["active-key","options","image-libraries","width","height","quality","convert-to","bridge","field"])]),_:1},8,["show"]),s.createElementVNode("div",Nde,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(w.value.slice(0,w.value.length>g.value?g.value-1:g.value),(V,Q)=>(s.openBlock(),s.createBlock(Et,{tertiary:!0,active:Q===0,size:e.compact?"small":"medium","aria-label":e.compact?V.label:void 0,onClick:F=>E(V.key)},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(V.icon)))]),_:2},1024)]),default:s.withCtx(()=>[e.compact?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createTextVNode(s.toDisplayString(V.label),1)],64))]),_:2},1032,["active","size","aria-label","onClick"]))),256)),x.value.length>0&&w.value.length>g.value?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(e.mobile?o1:ai),{key:0,trigger:"manual",options:x.value,onSelect:E,"model-value":void 0,"onUpdate:modelValue":z,"mobile-layout":e.mobile,show:R.value,"onUpdate:show":j[5]||(j[5]=V=>R.value=V)},{trigger:s.withCtx(()=>[g.value===1?(s.openBlock(),s.createBlock(Et,{key:0,tertiary:"",active:"",size:e.compact?"small":"medium","aria-label":e.compact?w.value[0].label:void 0,onClick:j[4]||(j[4]=V=>E(w.value[0].key))},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(w.value[0].icon)))]),_:1})]),default:s.withCtx(()=>[e.compact?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createTextVNode(s.toDisplayString(w.value[0].label),1)],64))]),_:1},8,["size","aria-label"])):(s.openBlock(),s.createBlock(Et,{key:1,size:e.compact?"small":"medium","aria-label":e.compact?e.actionsLabel:void 0},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(J7))]),_:1})]),default:s.withCtx(()=>[e.compact?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createTextVNode(s.toDisplayString(e.actionsLabel),1)],64))]),_:1},8,["size","aria-label"]))]),_:1},40,["options","mobile-layout","show"])):s.createCommentVNode("",!0),n.allowCropImage?(s.openBlock(),s.createBlock(Et,{key:1,tertiary:"",size:e.compact?"small":"medium","aria-label":e.compact?e.editLabel??"Edit Image":void 0,onClick:L},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(ny))]),_:1})]),default:s.withCtx(()=>[e.compact?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createTextVNode(s.toDisplayString(e.editLabel??"Edit Image"),1)],64))]),_:1},8,["size","aria-label"])):s.createCommentVNode("",!0),e.allowPadding&&a.value.cropMode==="contain"?(s.openBlock(),s.createElementBlock("div",Dde,[s.createElementVNode("span",{class:"label",id:s.unref(l)},"Padding",8,Fde),s.createVNode(M0,{modelValue:h.value,"onUpdate:modelValue":j[6]||(j[6]=V=>h.value=V),min:0,max:100,step:1,"aria-labelledby":s.unref(l),"aria-valuetext":`${h.value}%`},null,8,["modelValue","aria-labelledby","aria-valuetext"])])):s.createCommentVNode("",!0)])],2))}}),[["__scopeId","data-v-d61e6697"]]),Zde=["src","alt"],zde={key:0,class:"actions"},l1=2,a_=dt(s.defineComponent({__name:"Image",props:s.mergeModels({layout:{},allowUploadFromDevice:{type:Boolean},width:{},height:{},allowedTypes:{},convertTo:{},quality:{},imageLibraries:{},uploadLabel:{default:"Select image"},actionsLabel:{default:"More"},maxSize:{default:1/0},bridge:{},mobile:{type:Boolean,default:!1},field:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=rc(),r=s.useModel(e,"modelValue"),n=s.computed(()=>{var C;return typeof r.value=="string"?r.value:(C=r.value)==null?void 0:C.src}),a=e,i=s.ref(!1),{uploadFiles:o,uploadProgresses:c,uploading:l}=ih(s.toRef(a,"width"),s.toRef(a,"height"),s.toRef(a,"convertTo"),s.toRef(a,"quality"),a.bridge.handleUpload,s.toRef(a,"field"));async function u(){const C=await q2({types:a.allowedTypes,maxSize:a.maxSize,multiple:!0}),w=qh({title:"Uploading images",content:()=>[s.h(Su,{value:c.value.reduce((E,k)=>E+k,0)/c.value.length})],closeable:!1,icon:()=>s.h(ep),disableBackgroundEffect:!0}),y=await o(C);w.close();const x=y[0];x&&p(x.src)}const f=s.computed(()=>[...a.allowUploadFromDevice?[{label:a.uploadLabel,action:u,icon:()=>s.h(oc),key:"upload"}]:[],...a.imageLibraries.map(w=>({label:w.label,icon:()=>{if(w.type==="sharedDrive")switch(w.service){case"googledrive":return s.h("img",{src:"https://upload.wikimedia.org/wikipedia/commons/1/12/Google_Drive_icon_%282020%29.svg"});case"onedrive":return s.h("img",{src:"https://upload.wikimedia.org/wikipedia/commons/e/e7/Microsoft_OneDrive_Icon_%282025_-_present%29.svg"});default:return s.h(oc)}else return w.type==="pexels"?s.h("img",{src:"https://www.drupal.org/files/project-images/pexels_logo_0.png"}):s.h(oc)},key:w.type==="sharedDrive"?w.service:w.type==="custom"?"custom":w.type,lib:w}))]),h=s.ref(),d=s.computed(()=>f.value.slice(l1-1).map(C=>({label:C.label,value:C.key,icon:C.icon})));function g(C){C==="upload"?u():(h.value=C,i.value=!0)}function p(C){typeof r.value=="object"&&r.value!==null?r.value={...ta(r.value),src:C,crop:null,naturalWidth:void 0,naturalHeight:void 0}:r.value=C,i.value=!1}function A(){if(a.allowUploadFromDevice){u();return}h.value=void 0,i.value=!0}O6(()=>a.field,A);function v(C){a.imageLibraries.length===0&&a.allowUploadFromDevice&&(u(),C.stopImmediatePropagation(),C.stopPropagation(),s.nextTick(()=>{i.value=!1}))}return(C,w)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["image-field",{["layout-"+e.layout]:!0}])},[s.createVNode(_u,{show:i.value,"onUpdate:show":w[2]||(w[2]=y=>i.value=y),type:"layer",trigger:"click",fullscreen:""},{title:s.withCtx(()=>[h.value?(s.openBlock(),s.createBlock(Et,{key:0,circle:"",tertiary:"",onClick:w[0]||(w[0]=y=>h.value=void 0)},{icon:s.withCtx(()=>[s.createVNode(ft,{size:"small"},{default:s.withCtx(()=>[s.createVNode(s.unref(q5))]),_:1})]),_:1})):s.createCommentVNode("",!0),w[3]||(w[3]=s.createElementVNode("h3",null,"Select image",-1))]),trigger:s.withCtx(()=>[s.createElementVNode("div",{class:s.normalizeClass(["image-preview",{"single-button-height":f.value.length<=1}]),onClick:v},[n.value?(s.openBlock(),s.createElementBlock("img",{key:0,src:s.unref(t)(n.value),alt:e.uploadLabel},null,8,Zde)):(s.openBlock(),s.createBlock(ft,{key:1,class:"image-placeholder","aria-hidden":"true"},{default:s.withCtx(()=>[s.createVNode(s.unref(oc))]),_:1}))],2)]),content:s.withCtx(()=>[s.createVNode(WS,{"active-key":h.value,"onUpdate:activeKey":w[1]||(w[1]=y=>h.value=y),options:f.value,"image-libraries":e.imageLibraries,width:e.width,height:e.height,quality:e.quality,"convert-to":e.convertTo,bridge:e.bridge,field:e.field,onSelect:p},null,8,["active-key","options","image-libraries","width","height","quality","convert-to","bridge","field"])]),_:1},8,["show"]),e.layout!=="compact"?(s.openBlock(),s.createElementBlock("div",zde,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(f.value.slice(0,f.value.length>l1?l1-1:l1),y=>(s.openBlock(),s.createElementBlock(s.Fragment,null,[s.createVNode(Et,{onClick:x=>g(y.key)},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(y.icon)))]),_:2},1024)]),default:s.withCtx(()=>[s.createTextVNode(" "+s.toDisplayString(y.label),1)]),_:2},1032,["onClick"]),s.createVNode(o1,{trigger:"click",options:d.value,onSelect:g,"mobile-layout":e.mobile,"aria-label":e.actionsLabel},{trigger:s.withCtx(()=>[f.value.length>l1?(s.openBlock(),s.createBlock(Et,{key:0},{icon:s.withCtx(()=>[s.createVNode(ft,{size:"small"},{default:s.withCtx(()=>[s.createVNode(s.unref(J7))]),_:1})]),default:s.withCtx(()=>[s.createTextVNode(" "+s.toDisplayString(e.actionsLabel),1)]),_:1})):s.createCommentVNode("",!0)]),_:1},8,["options","mobile-layout","aria-label"])],64))),256))])):s.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-975527df"]]),Tde={key:0,class:"title-wrapper"},Lde={key:0,class:"root-index"},Gde={key:1,class:"title"},Mde={type:"button",class:"help-trigger","aria-label":"More information"},i_=dt(s.defineComponent({__name:"Group",props:{layout:{},isRoot:{type:Boolean,default:!1},index:{default:0},fields:{},card:{type:Boolean},description:{},detailedDescription:{},bridge:{}},setup(e){return(t,r)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["group-field",{}])},[s.createVNode(t1,{transculent:!e.card,class:s.normalizeClass({"no-card":e.card===!1}),dividers:!1},{default:s.withCtx(()=>[e.description||e.detailedDescription?(s.openBlock(),s.createElementBlock("div",Tde,[e.isRoot?(s.openBlock(),s.createElementBlock("div",Lde,s.toDisplayString(e.index),1)):s.createCommentVNode("",!0),e.description?(s.openBlock(),s.createElementBlock("h4",Gde,s.toDisplayString(e.description),1)):s.createCommentVNode("",!0),e.detailedDescription?(s.openBlock(),s.createBlock(i1,{key:2,trigger:"hover"},{trigger:s.withCtx(()=>[s.createElementVNode("button",Mde,[s.createVNode(ft,{size:16},{default:s.withCtx(()=>[s.createVNode(s.unref(K7))]),_:1})])]),content:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(e.detailedDescription),1)]),_:1})):s.createCommentVNode("",!0)])):s.createCommentVNode("",!0),s.createVNode(iR,{fields:e.fields,bridge:e.bridge,layout:e.layout,"is-root":!1},null,8,["fields","bridge","layout"])]),_:1},8,["transculent","class"])]))}}),[["__scopeId","data-v-6023598b"]]),Ode={class:"text-field"},Qde="calc(2*1.2em + 5px * 2)",o_=dt(s.defineComponent({__name:"Text",props:s.mergeModels({maxLength:{},maxLines:{},maxLineLength:{},showWordCount:{type:Boolean},clearable:{type:Boolean},multiline:{type:Boolean},uppercase:{type:Boolean},placeholder:{},richtext:{},bridge:{},maxHeight:{},labelId:{},minWidth:{},maxWidth:{}},{modelValue:{type:[String,Number,Boolean,Array],required:!1,default:"Hello world"},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=s.useModel(e,"modelValue");function r(i){t.value=i}const n=e,a=s.computed(()=>!n.maxHeight||n.maxHeight===Qde?void 0:n.maxHeight);return(i,o)=>(s.openBlock(),s.createElementBlock("div",Ode,[s.createVNode(rl,{type:e.multiline?"textarea":"text","model-value":t.value,"onUpdate:modelValue":r,"show-word-count":e.showWordCount,clearable:e.clearable,"max-length":e.maxLength??1/0,"max-line-length":e.maxLineLength??1/0,"max-lines":e.maxLines??1/0,placeholder:e.placeholder||"Text Field...",resizeable:!1,richtext:e.richtext.enabled?e.richtext:void 0,"max-height":a.value,"max-rows":20,"aria-labelledby":e.labelId,ring:"",bordered:""},null,8,["type","model-value","show-word-count","clearable","max-length","max-line-length","max-lines","placeholder","richtext","max-height","aria-labelledby"])]))}}),[["__scopeId","data-v-ceacb5b8"]]),Wde={class:"field-image-adjust"},s_=dt(s.defineComponent({__name:"ImageAdjust",props:s.mergeModels({minX:{},maxX:{},minY:{},maxY:{},minScale:{},maxScale:{},type:{},aspectRatio:{},bridge:{}},{image:{required:!0},imageModifiers:{},adjust:{required:!0},adjustModifiers:{}}),emits:["update:image","update:adjust"],setup(e){s.inject(Yh);const t=s.useModel(e,"image"),r=s.useModel(e,"adjust"),n=e,a=s.ref();return s.watchEffect(async()=>{t.value&&(a.value=await fd(t.value))}),s.computed(()=>Cp(r.value,a.value.width,a.value.height,n.aspectRatio)),(i,o)=>(s.openBlock(),s.createElementBlock("div",Wde,[s.createVNode(Et,null,{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(ny))]),_:1})]),default:s.withCtx(()=>[o[0]||(o[0]=s.createTextVNode(" Crop ",-1))]),_:1})]))}}),[["__scopeId","data-v-9e4c42cb"]]),Pde=["aria-labelledby"],Yde=["aria-checked","aria-label","tabindex","onClick"],Vde={class:"image-card"},jde={class:"label-image-proxy"},Ude=["src"],$de={key:0,class:"label"},l_=dt(s.defineComponent({__name:"Select",props:s.mergeModels({options:{},layout:{},cardSize:{},showLabels:{type:Boolean},labelId:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=e,r=s.useModel(e,"modelValue"),n=rc(),a=s.computed(()=>t.layout==="grid"||t.layout==="cards");function i(h){r.value=h.value}const o=s.ref([]);function c(h,d){o.value[d]=h}const l=s.computed(()=>{const h=t.options.findIndex(d=>d.value===r.value);return h>=0?h:0});function u(h){var A;const d=t.options.length;if(d===0)return;const g=o.value.findIndex(v=>v===document.activeElement);let p;switch(h.key){case"ArrowRight":case"ArrowDown":p=g<0?0:(g+1)%d;break;case"ArrowLeft":case"ArrowUp":p=g<0?d-1:(g-1+d)%d;break;case"Home":p=0;break;case"End":p=d-1;break;case"Enter":case" ":g>=0&&(h.preventDefault(),i(t.options[g]));return;default:return}h.preventDefault(),(A=o.value[p])==null||A.focus(),i(t.options[p])}const f=s.computed(()=>t.options.map(h=>({label:h.label,value:h.value,icon:h.image?()=>s.h(ft,{},()=>s.h("img",{src:h.image,style:{"object-fit":"cover",width:"24px",height:"24px"}})):void 0})));return(h,d)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["select-field",{"grid-layout":a.value,"horizontal-scroll":e.layout==="cards"}])},[a.value?(s.openBlock(),s.createElementBlock("div",{key:0,class:s.normalizeClass(["select-grid",{["size-"+e.cardSize]:!0,"horizontal-scroll":e.layout==="cards"}]),role:"radiogroup","aria-labelledby":e.labelId,onKeydown:u},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.options,(g,p)=>(s.openBlock(),s.createElementBlock("div",{key:p,ref_for:!0,ref:A=>c(A,p),class:s.normalizeClass(["option-item",{active:g.value===r.value}]),role:"radio","aria-checked":g.value===r.value?"true":"false","aria-label":g.label,tabindex:p===l.value?0:-1,onClick:A=>i(g)},[s.createElementVNode("div",Vde,[s.createElementVNode("div",jde,[s.createElementVNode("span",null,s.toDisplayString(g.label),1)]),g.image?(s.openBlock(),s.createElementBlock("img",{key:0,src:s.unref(n)(g.image)},null,8,Ude)):s.createCommentVNode("",!0)]),e.showLabels?(s.openBlock(),s.createElementBlock("div",$de,s.toDisplayString(g.label),1)):s.createCommentVNode("",!0)],10,Yde))),128))],42,Pde)):(s.openBlock(),s.createBlock(ai,{key:1,modelValue:r.value,"onUpdate:modelValue":d[0]||(d[0]=g=>r.value=g),options:f.value,"aria-labelledby":e.labelId,bordered:""},null,8,["modelValue","options","aria-labelledby"]))],2))}}),[["__scopeId","data-v-9bc0926e"]]);function c_(e){const t=s.computed(()=>{const n=s.toValue(e.disabled)??!1,a=s.toValue(e.labelledBy);return{role:e.role,tabindex:n?-1:0,"aria-checked":s.toValue(e.checked)?"true":"false","aria-disabled":n?"true":void 0,"aria-labelledby":a,"aria-label":a?void 0:s.toValue(e.label)}});function r(n){s.toValue(e.disabled)||(n.key===" "||n.key==="Enter")&&(n.preventDefault(),e.toggle())}return{attrs:t,onKeydown:r}}const Nu=dt(s.defineComponent({__name:"BxCheckbox",props:s.mergeModels({label:{},ariaLabel:{},ariaLabelledby:{},size:{default:"medium"},disabled:{type:Boolean,default:!1},secondary:{type:Boolean,default:!1}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=e,r=s.useModel(e,"modelValue"),n=()=>{t.disabled||(r.value=!r.value)},{attrs:a,onKeydown:i}=c_({role:"checkbox",checked:()=>r.value,disabled:()=>t.disabled,label:()=>t.ariaLabel??t.label,labelledBy:()=>t.ariaLabelledby,toggle:n});return(o,c)=>(s.openBlock(),s.createElementBlock("div",s.mergeProps({class:["bx-checkbox",{checked:r.value,disabled:e.disabled,secondary:e.secondary}]},s.unref(a),{onClick:n,onKeydown:c[0]||(c[0]=(...l)=>s.unref(i)&&s.unref(i)(...l))}),[...c[1]||(c[1]=[s.createElementVNode("div",{class:"checkbox-box"},[s.createElementVNode("div",{class:"checkbox-symbol"},[s.createElementVNode("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",class:"check-icon","aria-hidden":"true"},[s.createElementVNode("path",{d:"M12.1875 3.75L5.625 11.25L2.8125 8.4375",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})])])],-1)])],16))}}),[["__scopeId","data-v-6cd2378e"]]),Hde={class:"label"},Xde=["id"],u_=dt(s.defineComponent({__name:"Checkbox",props:s.mergeModels({description:{},detailedDescription:{},label:{},mobile:{type:Boolean,default:!1},secondary:{type:Boolean,default:!1},labelId:{}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=mi("bx-checkbox-label"),r=s.useModel(e,"modelValue");return(n,a)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["checkbox-field",{mobile:e.mobile}])},[s.createVNode(Nu,{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=i=>r.value=i),size:"medium","aria-labelledby":e.label?s.unref(t):e.labelId},null,8,["modelValue","aria-labelledby"]),e.label?(s.openBlock(),s.createElementBlock("div",{key:0,class:"checkbox-label",onClick:a[1]||(a[1]=i=>r.value=!r.value)},[s.createElementVNode("div",Hde,[s.createElementVNode("span",{id:s.unref(t)},s.toDisplayString(e.label),9,Xde)])])):s.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-8852852c"]]),Jde=s.defineComponent({__name:"CollectionEntryFields",props:{bridge:{},fields:{},layout:{},data:{}},emits:["update:data"],setup(e,{emit:t}){const r=e,n=t,a=s.ref(r.data);return s.watch(()=>r.data,i=>{i!==a.value&&(a.value=i)}),s.provide("data",a),s.watch(a,()=>{n("update:data",a.value)},{deep:!0}),(i,o)=>(s.openBlock(),s.createBlock(i_,{bridge:e.bridge,fields:e.fields,card:!1,layout:e.layout},null,8,["bridge","fields","layout"]))}});/**!
|
|
170
|
+
`).length-(n.maxLines??1/0))),n.maxLength!==1/0&&n.maxLength!==null&&(f.value=String(X).length-n.maxLength)}});const p=s.computed({get(){return mp(A.value)},set(X){n.richtext?c.value=[{text:X,format:{}}]:c.value=X}}),A=s.computed({get(){return RS(c.value)},set(X){n.richtext?c.value=X:c.value=mp(X)}}),v=s.ref(),C=mi("bx-input-count"),w=s.computed(()=>n.state==="error"||d.value),y=s.computed(()=>n.showWordCount?C:void 0),x=s.ref();let E;const k=s.ref(!1);s.watch(k,()=>{k.value?a("focus"):a("blur",E)});function S(X){k.value=!0}function B(X){E=X,k.value=!1}s.watch(x,(X,ae)=>{X&&(ae&&(ae.removeEventListener("focus",S),ae.removeEventListener("blur",B)),X.addEventListener("focus",S),X.addEventListener("blur",B))});const N=s.computed(()=>String(Math.max(1,n.maxRows)));function R(){if(n.type!=="textarea")return;const X=x.value;!X||X.tagName!=="TEXTAREA"||(X.style.height="auto",X.style.height=`${X.scrollHeight}px`)}s.watch([x,p,()=>n.type,()=>n.minHeight,()=>n.maxHeight,N],async()=>{await s.nextTick(),R()},{immediate:!0,flush:"post"}),window.addEventListener("blur",B);const z=()=>{var X;n.disabled||n.readonly||(X=x.value)==null||X.focus()},L=X=>{X.key==="Enter"&&a("enter",X)},m=s.ref(""),j=s.computed(()=>{const X=n.richtext?m.value:c.value;return[...new Intl.Segmenter().segment(X)].length}),V=s.computed(()=>n.richtext?m.value.length>0:String(c.value).length>0);function Q(X){return X.en}const F=s.ref(),D=s.ref({start:0,length:0}),Z=s.computed({get(){var ie,T;const X=(ie=v.value)==null?void 0:ie.richTextInstance;if(!X)return;const ue=X.resolveFeatures(D.value.start,D.value.length).flat(),Ce=W(ue);if(Ce!==void 0)return Ce===null?"multiple":(T=M.value.find(O=>Ba(O.value,Ce)))==null?void 0:T.value},set(X){var ue;const ae=(ue=v.value)==null?void 0:ue.richTextInstance;ae&&X!=="multiple"&&(X===void 0?ae.applyFormat(D.value.start,D.value.length,{}):(ae.resolveFeatures(D.value.start,D.value.length),ae.applyFormat(D.value.start,D.value.length,X)),P.value.closePopover())}});s.watch(F,()=>{F.value&&(D.value=F.value)});const M=s.computed(()=>n.richtext?[{label:Q(n.richtext.noStyleLabel),value:void 0},...n.richtext.options.map((X,ae)=>({label:X.label,value:X.style}))]:[]),P=s.ref();function W(X){let ae=!1,ue;for(const Ce of X)if(!ue)ue=Ce.format;else if(!Ba(ue,Ce.format)){ae=!0;break}return ae?null:ue}function re(){n.richtext?A.value=[{text:"",format:{}}]:o.value=""}return s.onUnmounted(()=>{l.value=[],u.value=0,f.value=0}),t({inputEelRef:x,setFocus(X){var ae,ue;X?(ae=x.value)==null||ae.focus():(ue=x.value)==null||ue.blur()}}),(X,ae)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["bx-input",{readonly:e.readonly,bordered:e.bordered,"is-textarea":e.type==="textarea"}])},[e.richtext?(s.openBlock(),s.createBlock(ai,{key:0,ref_key:"bxSelectRef",ref:P,class:"select-richtext",modelValue:Z.value,"onUpdate:modelValue":ae[0]||(ae[0]=ue=>Z.value=ue),options:M.value,disabled:!D.value||D.value.length===0},{label:s.withCtx(({label:ue})=>[s.createTextVNode(s.toDisplayString(ue??"Multiple"),1)]),_:1},8,["modelValue","options","disabled"])):s.createCommentVNode("",!0),s.createElementVNode("div",{class:s.normalizeClass(["bx-input-wrapper",{focus:k.value&&!e.readonly,round:e.round,ring:e.ring,bordered:e.bordered,["size-"+e.size]:e.size,disabled:e.disabled,readonly:e.readonly,"rich-text":e.richtext,error:d.value,"state-active":e.state==="active","state-success":e.state==="success","state-error":e.state==="error","state-warning":e.state==="warning",ghost:e.ghost}]),style:s.normalizeStyle({"--max-height":e.richtext?"auto":e.maxHeight,"--min-height":e.minHeight,"--textarea-max-lines":N.value}),onClick:z},[i.prefix?(s.openBlock(),s.createElementBlock("div",Lue,[s.renderSlot(X.$slots,"prefix",{},void 0,!0)])):s.createCommentVNode("",!0),s.createElementVNode("div",{class:s.normalizeClass(["bx-input__input",{"swiper-no-swiping":k.value,"has-prefix":!!i.prefix}])},[e.richtext?(s.openBlock(),s.createBlock(OS,{key:0,ref_key:"bxRichTextInstance",ref:v,modelValue:A.value,"onUpdate:modelValue":ae[1]||(ae[1]=ue=>A.value=ue),selection:F.value,"onUpdate:selection":ae[2]||(ae[2]=ue=>F.value=ue),"raw-text":m.value,"onUpdate:rawText":ae[3]||(ae[3]=ue=>m.value=ue),focus:k.value,"onUpdate:focus":ae[4]||(ae[4]=ue=>k.value=ue),"aria-label":e.ariaLabelledby?void 0:e.ariaLabel,"aria-labelledby":e.ariaLabelledby},null,8,["modelValue","selection","raw-text","focus","aria-label","aria-labelledby"])):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[e.type==="textarea"?s.withDirectives((s.openBlock(),s.createElementBlock("textarea",{key:0,ref_key:"inputEelRef",ref:x,rows:"1",class:s.normalizeClass({resizeable:e.resizeable}),"onUpdate:modelValue":ae[5]||(ae[5]=ue=>p.value=ue),placeholder:e.placeholder,onKeydown:L,readonly:e.readonly,title:e.readonly?e.readonlyMessage:void 0,"aria-label":e.ariaLabelledby?void 0:e.ariaLabel,"aria-labelledby":e.ariaLabelledby,"aria-invalid":w.value?"true":void 0,"aria-describedby":y.value},null,42,Gue)),[[s.vModelText,p.value]]):s.withDirectives((s.openBlock(),s.createElementBlock("input",{key:1,ref_key:"inputEelRef",ref:x,"onUpdate:modelValue":ae[6]||(ae[6]=ue=>p.value=ue),readonly:e.readonly,placeholder:e.placeholder,type:e.type,onKeydown:L,title:e.readonly?e.readonlyMessage:void 0,"aria-label":e.ariaLabelledby?void 0:e.ariaLabel,"aria-labelledby":e.ariaLabelledby,"aria-invalid":w.value?"true":void 0,"aria-describedby":y.value},null,40,Mue)),[[s.vModelDynamic,p.value]])],64))],2),i.suffix||e.clearable||e.showWordCount||i.loading||e.loading||d.value?(s.openBlock(),s.createElementBlock("div",{key:1,"data-suffix":!!i.suffix,class:"bx-input__suffix"},[i.loading||e.loading?(s.openBlock(),s.createElementBlock("div",Que,[i.loading?s.renderSlot(X.$slots,"loading",{},void 0,!0,0):(s.openBlock(),s.createBlock(nc,{key:1,size:"small"}))])):s.createCommentVNode("",!0),s.renderSlot(X.$slots,"suffix",{},void 0,!0),e.showWordCount?(s.openBlock(),s.createElementBlock("div",{key:1,id:s.unref(C),class:"bx-input__word-count"},[e.maxLength&&e.maxLength!==1/0?(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createTextVNode(s.toDisplayString(j.value)+" / "+s.toDisplayString(e.maxLength),1)],64)):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[s.createTextVNode(s.toDisplayString(j.value),1)],64))],8,Wue)):s.createCommentVNode("",!0),d.value?(s.openBlock(),s.createBlock(i1,{key:2,trigger:"hover","custom-popover-classes":["text-overflow-tooltip"],"allowed-placements":["bottom","top","right"]},{trigger:s.withCtx(()=>[s.createVNode(Et,{circle:"",size:"tiny",secondary:"",state:"error",class:"errors-button","aria-label":"Show input warnings"},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(U7))]),_:1})]),_:1})]),content:s.withCtx(()=>{var ue,Ce,ie;return[s.createElementVNode("div",Pue,[(ue=h.value)!=null&&ue.overflowingCharacters?(s.openBlock(),s.createElementBlock("div",Yue,[s.createElementVNode("span",jue,s.toDisplayString(e.maxLength+f.value)+" / "+s.toDisplayString(e.maxLength),1),ae[7]||(ae[7]=s.createTextVNode(" characters ",-1))])):s.createCommentVNode("",!0),(Ce=h.value)!=null&&Ce.overlowingLines?(s.openBlock(),s.createElementBlock("div",Uue,[s.createElementVNode("span",$ue,s.toDisplayString(e.maxLines+u.value)+" / "+s.toDisplayString(e.maxLines),1),ae[8]||(ae[8]=s.createTextVNode(" lines ",-1))])):s.createCommentVNode("",!0),(ie=h.value)!=null&&ie.lineOverflows?(s.openBlock(),s.createElementBlock("div",Hue,[ae[9]||(ae[9]=s.createTextVNode(" Lines are too long: ",-1)),s.createElementVNode("ul",null,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(h.value.lineOverflows,({index:T,length:O})=>(s.openBlock(),s.createElementBlock("li",null,[s.createElementVNode("span",Xue,"("+s.toDisplayString(T+1)+")",1),s.createElementVNode("span",Jue,s.toDisplayString(O)+" / "+s.toDisplayString(e.maxLineLength),1)]))),256))])])):s.createCommentVNode("",!0)])]}),_:1})):s.createCommentVNode("",!0),e.clearable&&V.value?(s.openBlock(),s.createElementBlock("button",{key:3,type:"button",class:"bx-input__clear-btn",onClick:s.withModifiers(re,["stop"]),title:"Clear","aria-label":"Clear"},[s.createVNode(ft,{size:12},{default:s.withCtx(()=>[s.createVNode(s.unref(bs))]),_:1})])):s.createCommentVNode("",!0)],8,Oue)):s.createCommentVNode("",!0)],6)],2))}}),[["__scopeId","data-v-e7f10bcd"]]);function Cy(e){return new URLSearchParams(Object.fromEntries(Object.entries(e).map(([t,r])=>[t,String(r)]))).toString()}function Kue(e){const t=s.ref([]),r=s.ref(0);let n=25;async function a(i,o){o=o??t.value.length??0;const l=await(await fetch(`https://api.pexels.com/v1/search?${Cy({page:Math.ceil(o/n),query:i,per_page:n})}`,{headers:{Authorization:e}})).json();if("error"in l)throw new Error(l.error);r.value=l.total_results,t.value=[...t.value.slice(0,o),...l.photos]}return{photos:t,total:r,searchPhotos:a}}const que=s.defineComponent({__name:"LazyLoadingItemWrapper",emits:["update:visible"],setup(e,{emit:t}){s.ref();const r=t,n=s.ref(),a=yJ(n);return r("update:visible",a.value),s.watch(a,(i,o)=>{!o&&i&&r("update:visible",a.value)}),(i,o)=>(s.openBlock(),s.createElementBlock("div",{class:"item-wrapper",ref_key:"itemWrapperRef",ref:n},[s.renderSlot(i.$slots,"default")],512))}}),e0e=s.defineComponent({__name:"LazyLoading",props:{items:{},total:{},fetch:{type:Function},visibleTriggerOffset:{}},setup(e){s.ref();const t=e;t.fetch(0);const r=(n,a)=>{a&&n>=t.items.length-t.visibleTriggerOffset-1&&t.total>t.items.length&&t.fetch()};return(n,a)=>(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.items,(i,o)=>(s.openBlock(),s.createBlock(que,{key:o,class:"item-wrapper",item:i,index:o,"onUpdate:visible":c=>r(o,c)},{default:s.withCtx(()=>[s.renderSlot(n.$slots,"item",{item:i,index:o})]),_:2},1032,["item","index","onUpdate:visible"]))),128))}}),t0e={class:"bx-empty-icon"},r0e={key:1,viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n0e={key:0,class:"bx-empty-description"},a0e={key:1,class:"bx-empty-extra"},yy=dt(s.defineComponent({__name:"BxEmpty",props:{description:{default:"No Data"},size:{default:"medium"}},setup(e){const t=s.useSlots();return(r,n)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["bx-empty",{[`size-${e.size}`]:!0}])},[s.createElementVNode("div",t0e,[t.icon?s.renderSlot(r.$slots,"icon",{},void 0,!0,0):(s.openBlock(),s.createElementBlock("svg",r0e,[...n[0]||(n[0]=[s.createElementVNode("path",{d:"M26 7.5C26 11.0899 23.0899 14 19.5 14C15.9101 14 13 11.0899 13 7.5C13 3.91015 15.9101 1 19.5 1C23.0899 1 26 3.91015 26 7.5ZM14 7.5C14 3.91015 11.0899 1 7.5 1C3.91015 1 1 3.91015 1 7.5C1 11.0899 3.91015 14 7.5 14C11.0899 14 14 11.0899 14 7.5ZM14 19.5C14 15.9101 11.0899 13 7.5 13C3.91015 13 1 15.9101 1 19.5C1 23.0899 3.91015 26 7.5 26C11.0899 26 14 23.0899 14 19.5Z",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round",opacity:"0.4"},null,-1),s.createElementVNode("circle",{cx:"19.5",cy:"19.5",r:"6.5",stroke:"currentColor","stroke-width":"1.5","stroke-dasharray":"3 3",opacity:"0.25"},null,-1)])]))]),e.description||t.description?(s.openBlock(),s.createElementBlock("div",n0e,[t.description?s.renderSlot(r.$slots,"description",{},void 0,!0,0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[s.createTextVNode(s.toDisplayString(e.description),1)],64))])):s.createCommentVNode("",!0),t.default?(s.openBlock(),s.createElementBlock("div",a0e,[s.renderSlot(r.$slots,"default",{},void 0,!0)])):s.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-d66bc5e4"]]),i0e={class:"image-library-pexels"},o0e={class:"search-bar-wrapper"},s0e={key:0,class:"photos"},l0e=["onClick"],c0e=["src"],u0e={key:0,class:"loading-wrapper"},d0e={key:1,class:"loading-wrapper"},f0e=s.defineComponent({__name:"Pexels",props:{apiKey:{},width:{},height:{},uploadContext:{},uploadImageAsset:{type:Function}},emits:["select"],setup(e,{emit:t}){const r=rc(),n=e,a=t,i=s.ref("city"),{searchPhotos:o,photos:c,total:l}=Kue(n.apiKey),u=s.ref(),f=s.ref(!1);async function h(){i.value.length>0&&(f.value=!0,l.value=25,c.value=[],await o(i.value),u.value=i.value,f.value=!1)}async function d(A,v){await o(i.value,A)}const g=s.ref();async function p(A){g.value=A.id;const v=await n.uploadImageAsset({blob:await fetch(r(A.src.original)).then(C=>C.blob()),context:n.uploadContext,width:n.width,height:n.height,key:`pexels-${A.id}`,name:A.id.toString(),onProgress(C){console.log("upload progress",C)}});g.value=void 0,a("select",v.src)}return(A,v)=>(s.openBlock(),s.createElementBlock("div",i0e,[s.createElementVNode("header",null,[s.createElementVNode("div",o0e,[s.createVNode(rl,{modelValue:i.value,"onUpdate:modelValue":v[0]||(v[0]=C=>i.value=C),round:"",placeholder:"Search...",size:"medium",onEnter:h},null,8,["modelValue"]),s.createVNode(Et,{active:"",onClick:h},{default:s.withCtx(()=>[...v[1]||(v[1]=[s.createTextVNode("Search",-1)])]),_:1})])]),s.createElementVNode("main",null,[u.value?(s.openBlock(),s.createElementBlock("div",s0e,[s.createVNode(e0e,{items:s.unref(c),total:s.unref(l),fetch:d,"visible-trigger-offset":0},{item:s.withCtx(({item:C})=>[(s.openBlock(),s.createElementBlock("div",{key:C.id,class:"photo-wrapper",onClick:w=>p(C)},[s.createElementVNode("div",{class:s.normalizeClass(["preview",{loading:g.value===C.id}])},[s.createElementVNode("img",{src:s.unref(r)(C.src.tiny)},null,8,c0e),g.value===C.id?(s.openBlock(),s.createElementBlock("div",u0e,[s.createVNode(nc)])):s.createCommentVNode("",!0)],2)],8,l0e))]),_:1},8,["items","total"])])):f.value?(s.openBlock(),s.createElementBlock("div",d0e,[s.createVNode(nc)])):(s.openBlock(),s.createBlock(yy,{key:2,description:"Search for images on Pexels"},{icon:s.withCtx(()=>[s.createVNode(s.unref(lle))]),_:1}))])]))}});function h0e(e,t,r){return e.map(n=>({src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(n["@microsoft.graph.downloadUrl"])}&w=${t}&h=${r}&fit=cover&quality=80&format=png`,key:n.id,width:n.image.width,height:n.image.height,previews:{small:{src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(n["@microsoft.graph.downloadUrl"])}&h=200&fit=cover&quality=80&format=png`,width:n.image.width,height:n.image.height},medium:{src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(n["@microsoft.graph.downloadUrl"])}&h=400&fit=cover&quality=80&format=png`,width:n.image.width,height:n.image.height}}}))}function g0e(e,t,r){return e.map(({thumbnailLink:n,webContentLink:a,sha256Checksum:i,imageMediaMetadata:o})=>({src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(a)}&w=${t}&h=${r}&fit=cover&quality=80&format=png`,key:i,width:(o==null?void 0:o.width)??0,height:(o==null?void 0:o.height)??0,previews:{small:{src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(n)}&h=200&fit=cover&quality=80&format=png`,width:(o==null?void 0:o.width)??0,height:(o==null?void 0:o.height)??0},medium:{src:`https://shared-drive.bluepic.io/image?url=${encodeURIComponent(n)}&h=400&fit=cover&quality=80&format=png`,width:(o==null?void 0:o.width)??0,height:(o==null?void 0:o.height)??0}}}))}function m0e(e,t,r,n){const a=s.ref();return{sharedItems:a,fetchSharedDrive:async()=>{if(e==="onedrive"){const o=`https://shared-drive.bluepic.io/onedrive?${Cy({sharing:t})}`,l=await(await fetch(o)).json();a.value=h0e(l.children,r,n)}else if(e==="googledrive"){const o=`https://shared-drive.bluepic.io/googledrive?${Cy({sharing:t})}`,l=await(await fetch(o)).json();a.value=g0e(l.files,r,n)}}}}const p0e={class:"image-library-shared-drive"},A0e={key:0,class:"photos"},b0e=["onClick"],v0e={class:"preview"},C0e=["src"],y0e={key:1,class:"loading-wrapper"},w0e=dt(s.defineComponent({__name:"SharedDrive",props:{service:{},sharedUrl:{},width:{},height:{}},emits:["select"],setup(e,{emit:t}){const r=rc(),n=e,a=t,{fetchSharedDrive:i,sharedItems:o}=m0e(n.service,n.sharedUrl,n.width,n.height);i();function c(l){a("select",l.src)}return(l,u)=>(s.openBlock(),s.createElementBlock("div",p0e,[s.unref(o)?(s.openBlock(),s.createElementBlock("div",A0e,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(s.unref(o),f=>(s.openBlock(),s.createElementBlock("div",{class:"photo-wrapper",onClick:h=>c(f)},[s.createElementVNode("div",v0e,[s.createElementVNode("img",{src:s.unref(r)(f.previews.small.src)},null,8,C0e)])],8,b0e))),256))])):(s.openBlock(),s.createElementBlock("div",y0e,[s.createVNode(nc)]))]))}}),[["__scopeId","data-v-6b7dadc2"]]),I0e={class:"image-library-custom"},x0e=s.defineComponent({__name:"Custom",props:{controller:{},label:{},name:{},props:{}},setup(e){const t=e,r=import(t.controller),n=s.ref();return r.then(a=>{n.value=new a.default(t.props)}),(a,i)=>(s.openBlock(),s.createElementBlock("div",I0e,"JAJAJA"))}}),E0e={class:"image-library-wrapper"},B0e={key:0,class:"nav-view-wrapper"},k0e={class:"icon-wrapper"},S0e={class:"label"},_0e={key:1,class:"library-view-wrapper"},WS=dt(s.defineComponent({__name:"ImageLibraryWrapper",props:{options:{},activeKey:{},imageLibraries:{},convertTo:{},quality:{},width:{},height:{},bridge:{},field:{}},emits:["select","update:active-key"],setup(e,{emit:t}){const r=e,n=t,a=s.ref(r.activeKey);s.watch(a,()=>{r.activeKey!==a.value&&n("update:active-key",a.value)}),s.watch(()=>r.activeKey,()=>{r.activeKey!==a.value&&(a.value=r.activeKey)});function i(p){a.value=p}const o=s.computed(()=>{var p;return(p=r.imageLibraries.find(A=>A.type==="pexels"))==null?void 0:p.apiKey}),c=s.computed(()=>r.imageLibraries.find(p=>p.type==="sharedDrive"&&p.service===a.value).sharedUrl),l=s.computed(()=>{var p;return(p=r.imageLibraries.find(A=>A.type===a.value))==null?void 0:p.label}),u=s.computed(()=>{var p;return(p=r.imageLibraries.find(A=>A.type===a.value))==null?void 0:p.name}),f=s.computed(()=>{var p;return(p=r.imageLibraries.find(A=>A.type===a.value))==null?void 0:p.controller}),h=s.computed(()=>{var p;return(p=r.imageLibraries.find(A=>A.type===a.value))==null?void 0:p.props});function d(p){const A=p[0];A&&g(A.src)}function g(p){n("select",p)}return(p,A)=>(s.openBlock(),s.createElementBlock("div",E0e,[s.createVNode(s.Transition,{name:"slide-library"},{default:s.withCtx(()=>[a.value===void 0?(s.openBlock(),s.createElementBlock("div",B0e,[s.createElementVNode("div",{class:"image-library-source-navigation",style:s.normalizeStyle({"--options-length":e.options.length})},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(r.options,v=>(s.openBlock(),s.createBlock(t1,{key:v.key,bordered:!0,onClick:C=>i(v.key)},{default:s.withCtx(()=>[s.createElementVNode("div",k0e,[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(v.icon)))]),s.createElementVNode("div",S0e,s.toDisplayString(v.label),1)]),_:2},1032,["onClick"]))),128))],4)])):(s.openBlock(),s.createElementBlock("div",_0e,[a.value==="upload"?(s.openBlock(),s.createBlock(Hce,{key:0,width:e.width,height:e.height,"convert-to":e.convertTo,quality:e.quality,field:e.field,"handle-upload":e.bridge.handleUpload,onUpload:d},null,8,["width","height","convert-to","quality","field","handle-upload"])):a.value==="pexels"?(s.openBlock(),s.createBlock(f0e,{key:1,"api-key":o.value,width:e.width,height:e.height,"upload-image-asset":e.bridge.handleUpload,"upload-context":{field:e.field},onSelect:g},null,8,["api-key","width","height","upload-image-asset","upload-context"])):a.value==="googledrive"||a.value==="onedrive"||a.value==="icloud"||a.value==="dropbox"?(s.openBlock(),s.createBlock(w0e,{key:2,service:a.value,"shared-url":c.value,width:e.width,height:e.height,onSelect:g},null,8,["service","shared-url","width","height"])):a.value==="custom"?(s.openBlock(),s.createBlock(x0e,{key:3,label:l.value??"Custom Library",name:u.value,controller:f.value,props:h.value},null,8,["label","name","controller","props"])):s.createCommentVNode("",!0)]))]),_:1})]))}}),[["__scopeId","data-v-61c69114"]]),PS=dt(s.defineComponent({__name:"BxList",props:{divider:{type:Boolean,default:!0},bordered:{type:Boolean,default:!1},variant:{default:"plain"}},setup(e){return s.useSlots(),(t,r)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["bx-list",{"has-divider":e.divider&&e.variant==="plain",bordered:e.bordered,[`variant-${e.variant}`]:!0}])},[s.renderSlot(t.$slots,"default",{},void 0,!0)],2))}}),[["__scopeId","data-v-53785398"]]),R0e={class:"bx-list-item__inner"},N0e={key:0,class:"bx-list-item__prefix"},D0e={class:"bx-list-item__content"},F0e={key:1,class:"bx-list-item__suffix"},YS=dt(s.defineComponent({__name:"BxListItem",props:{interactive:{type:Boolean,default:!0}},setup(e){const t=s.useSlots(),r=s.computed(()=>!!t.prefix),n=s.computed(()=>!!t.suffix);return(a,i)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["bx-list-item",{"has-prefix":r.value,"has-suffix":n.value,interactive:e.interactive}])},[s.createElementVNode("div",R0e,[t.prefix?(s.openBlock(),s.createElementBlock("div",N0e,[s.renderSlot(a.$slots,"prefix",{},void 0,!0)])):s.createCommentVNode("",!0),s.createElementVNode("div",D0e,[s.renderSlot(a.$slots,"default",{},void 0,!0)]),t.suffix?(s.openBlock(),s.createElementBlock("div",F0e,[s.renderSlot(a.$slots,"suffix",{},void 0,!0)])):s.createCommentVNode("",!0)])],2))}}),[["__scopeId","data-v-1048af22"]]),Z0e=["aria-label"],z0e=["onClick"],T0e={class:"icon"},L0e={class:"label"},G0e={class:"pullup-menu"},M0e={class:"icon"},o1=dt(s.defineComponent({__name:"BxDropdown",props:s.mergeModels({options:{},allowedPlacements:{},mobileLayout:{type:Boolean,default:!1},ariaLabel:{default:"Menu"}},{show:{type:Boolean,required:!1,default:!1},showModifiers:{}}),emits:s.mergeModels(["select"],["update:show"]),setup(e,{emit:t}){const r=e,n=t,a=s.useModel(e,"show");function i(w){a.value=!1,n("select",w.value)}const o=s.useSlots(),c=mi("bx-dropdown-menu"),{setSlotRef:l,vNodes:u,slotElements:f}=hp(o.trigger);function h(w){(w.key==="ArrowDown"||w.key==="ArrowUp")&&(w.preventDefault(),a.value||(a.value=!0),v(0))}let d;s.watch(f,(w,y)=>{for(const E of y??[])E instanceof HTMLElement&&E.removeEventListener("keydown",h);d=void 0;const x=w[0];x instanceof HTMLElement&&(x.setAttribute("aria-haspopup","menu"),x.setAttribute("aria-controls",c),x.setAttribute("aria-expanded",String(a.value)),x.addEventListener("keydown",h),d=x)},{immediate:!0});const g=s.ref(0),p=[];function A(w,y){if(!w){p[y]=void 0;return}const x=w instanceof HTMLElement?w:w.$el;p[y]=x instanceof HTMLElement?x:void 0}function v(w){if(r.options.length===0)return;const y=(w+r.options.length)%r.options.length;g.value=y,s.nextTick(()=>{var x;return(x=p[y])==null?void 0:x.focus()})}function C(w){const y=r.options.length;if(y!==0)switch(w.key){case"ArrowDown":w.preventDefault(),v(g.value+1);break;case"ArrowUp":w.preventDefault(),v(g.value-1);break;case"Home":w.preventDefault(),v(0);break;case"End":w.preventDefault(),v(y-1);break;case"Enter":case" ":w.preventDefault(),i(r.options[g.value]),d==null||d.focus();break;case"Escape":w.preventDefault(),w.stopPropagation(),a.value=!1,d==null||d.focus();break;case"Tab":a.value=!1;break}}return s.watch(a,w=>{d==null||d.setAttribute("aria-expanded",String(w)),w&&(g.value=0,s.nextTick(()=>{var y;return(y=p[0])==null?void 0:y.focus()}))}),s.onUnmounted(()=>{d&&d.removeEventListener("keydown",h)}),(w,y)=>e.mobileLayout?(s.openBlock(),s.createBlock(_u,{key:0,show:a.value,"onUpdate:show":y[1]||(y[1]=x=>a.value=x),"disable-background-effect":"","custom-classes":["bx-dropdown-mobile-layout-popup"],closeable:!1},{trigger:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(s.unref(u),(x,E)=>(s.openBlock(),s.createBlock(s.resolveDynamicComponent(x),{key:E,ref_for:!0,ref:s.unref(l)(E)},null,512))),128))]),content:s.withCtx(()=>[s.createElementVNode("div",{class:s.normalizeClass(["pullup-menu-wrapper",{}])},[s.createElementVNode("div",{class:"pullup-menu",role:"menu","aria-label":e.ariaLabel},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.options,x=>(s.openBlock(),s.createElementBlock("button",{type:"button",role:"menuitem",class:"select-button",onClick:E=>i(x)},[s.createElementVNode("div",T0e,[s.createVNode(ft,null,{default:s.withCtx(()=>[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(x.icon)))]),_:2},1024)]),s.createElementVNode("div",L0e,[o.optionLabel?s.renderSlot(w.$slots,"optionLabel",{option:x},void 0,!0,0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[s.createTextVNode(s.toDisplayString(x.label),1)],64))])],8,z0e))),256))],8,Z0e),s.createElementVNode("div",G0e,[s.createElementVNode("button",{type:"button",class:"select-button","aria-label":"Close menu",onClick:y[0]||(y[0]=x=>a.value=!1)},[s.createElementVNode("div",M0e,[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(bs))]),_:1})]),y[3]||(y[3]=s.createElementVNode("div",{class:"label"},"Close",-1))])])])]),_:3},8,["show"])):(s.openBlock(),s.createBlock(dd,{key:1,show:a.value,"onUpdate:show":y[2]||(y[2]=x=>a.value=x),trigger:"click","allowed-placements":e.allowedPlacements??["bottom","top"],arrow:!0,"custom-styles":{},"custom-classes":["dropdown-popover"],"disable-background-effect":""},{trigger:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(s.unref(u),(x,E)=>(s.openBlock(),s.createBlock(s.resolveDynamicComponent(x),{key:E,ref_for:!0,ref:s.unref(l)(E)},null,512))),128))]),content:s.withCtx(()=>[s.createVNode(PS,{id:s.unref(c),role:"menu","aria-label":e.ariaLabel,onKeydown:C},{default:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.options,(x,E)=>(s.openBlock(),s.createBlock(YS,{key:x.value,ref_for:!0,ref:k=>A(k,E),role:"menuitem",tabindex:E===g.value?0:-1,onClick:k=>i(x)},s.createSlots({default:s.withCtx(()=>[o.optionLabel?s.renderSlot(w.$slots,"optionLabel",{option:x},void 0,!0,0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[s.createTextVNode(s.toDisplayString(x.label),1)],64))]),_:2},[x.icon?{name:"prefix",fn:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(x.icon)))]),_:2},1024)]),key:"0"}:void 0]),1032,["tabindex","onClick"]))),128))]),_:3},8,["id","aria-label"])]),_:3},8,["show","allowed-placements"]))}}),[["__scopeId","data-v-74e3b672"]]);function fd(e){return new Promise(function(t,r){if(typeof e!="string"&&!(e instanceof Blob)){r({err:"no image source"});return}const n=new Image;typeof e=="string"&&(n.crossOrigin="anonymous"),n.addEventListener("load",a=>{t({width:n.width,height:n.height,ratio:n.height/n.width})}),n.addEventListener("error",()=>r({err:"image corrupted"})),n.src=typeof e=="string"?e:URL.createObjectURL(e)})}function VS({height:e,left:t,top:r,width:n},a,i){const o=1/Math.max((n??0)/a,(e??0)/i),c=[Math.min(1,Ro(Math.max(1e-6,t??0)/(a-(n??0)),6)),Math.min(1,Ro(Math.max(1e-6,r??0)/(i-(e??0)),6))],l=[Math.max(-1,Math.min(1,(c[0]-.5)*2)),Math.max(-1,Math.min(1,(c[1]-.5)*2))];return{scale:o,innerPos:l}}function Cp(e,t,r,n){const a=e.innerPos[0]/2+.5,i=e.innerPos[1]/2+.5,o=t/r>n?r*n:t,c=t/r>n?r:t/n,l=o/e.scale,u=c/e.scale,f=t-l,h=r-u,d=f*a,g=h*i;return{left:d,top:g,width:l,height:u}}var O0e=Object.defineProperty,Q0e=(e,t,r)=>t in e?O0e(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ka=(e,t,r)=>Q0e(e,typeof t!="symbol"?t+"":t,r);function W0e(e){return e*Math.PI/180}function jS(e,t,r){return Math.min(Math.max(e,t),r)}function yp(e,t,r){const[n,a]=e,[i,o]=t,c=Math.cos(r)*(n-i)-Math.sin(r)*(a-o)+i,l=Math.sin(r)*(n-i)+Math.cos(r)*(a-o)+o;return[c,l]}function P0e(e){return e.deltaMode===0}let Y0e=class extends EventTarget{constructor(t,r,n,a,i,o,c=.1,l=10,u=!1,f=!0){super(),ka(this,"wrapperBounds",{x:0,y:0,width:100,height:100}),ka(this,"canvasBounds",{x:0,y:0,width:100,height:100}),ka(this,"translateSpeed",1),ka(this,"zoomSpeed",1),ka(this,"translateSpeedAppleTrackpad",1),ka(this,"zoomSpeedAppleTrackpad",1),ka(this,"isGestureActive",!1),ka(this,"roElement",null),ka(this,"roCanvas",null),ka(this,"ancestorMotionCleanup",null),ka(this,"gestureStartRotate",0),ka(this,"dragStart",null),ka(this,"dragStartFrozenX",null),ka(this,"dragStartFrozenY",null),ka(this,"touchStarts",null),ka(this,"touchStartTranslateX",0),ka(this,"touchStartTranslateY",0),this.element=t,this.offset=r,this.translateX=n,this.translateY=a,this.scale=i,this.rotate=o,this.minScale=c,this.maxScale=l,this.clampBounds=u,this.rotation=f,this.roElement=new ResizeObserver(()=>{const{x:h,y:d,width:g,height:p}=this.element.getBoundingClientRect();this.wrapperBounds={x:h,y:d,width:g,height:p},this.update()}),this.roCanvas=new ResizeObserver(h=>{const{width:d,height:g}=h[0].contentRect;(d!==this.canvasBounds.width||g!==this.canvasBounds.height)&&(this.canvasBounds={...this.canvasBounds,width:d,height:g},this.isGestureActive||this.update())}),requestAnimationFrame(()=>{this.wrapperBounds=this.element.getBoundingClientRect(),this.canvasBounds=this.canvasElement.getBoundingClientRect(),this.update(),this.dispatchEvent(new Event("init"))}),this.roCanvas.observe(this.canvasElement),this.roElement.observe(this.element),this.installAncestorMotionListeners()}installAncestorMotionListeners(){const t=()=>{const{x:i,y:o,width:c,height:l}=this.element.getBoundingClientRect();i===this.wrapperBounds.x&&o===this.wrapperBounds.y&&c===this.wrapperBounds.width&&l===this.wrapperBounds.height||(this.wrapperBounds={x:i,y:o,width:c,height:l},this.update())},r=i=>!(i instanceof Node)||i===this.element?!1:i.contains(this.element),n=i=>{r(i.target)&&t()},a=["transitionrun","transitionend","transitioncancel","animationend","animationcancel"];for(const i of a)document.addEventListener(i,n,!0);this.ancestorMotionCleanup=()=>{for(const i of a)document.removeEventListener(i,n,!0)}}get canvasElement(){return this.element.querySelector(".canvas")}get wrapperInnerX(){return this.wrapperBounds.x+this.offset.left}get wrapperInnerY(){return this.wrapperBounds.y+this.offset.top}get wrapperInnerWidth(){return this.wrapperBounds.width-this.offset.left-this.offset.right}get wrapperInnerHeight(){return this.wrapperBounds.height-this.offset.top-this.offset.bottom}get wrapperInnerRatio(){return this.wrapperInnerWidth/this.wrapperInnerHeight}get canvasNaturalRatio(){return this.canvasBounds.width/this.canvasBounds.height}get naturalScale(){return this.canvasNaturalRatio>=this.wrapperInnerRatio?this.wrapperInnerWidth/this.canvasBounds.width:this.wrapperInnerHeight/this.canvasBounds.height}setTranslateFromUserGesture(t,r){if(this.clampBounds){const n=this.clampTranslate({translateX:t,translateY:r,scale:this.scale,rotate:this.rotate});this.translateX=n.translateX,this.translateY=n.translateY,this.rotate=0}else this.translateX=t,this.translateY=r}handleGesturestart(t){this.gestureStartRotate=this.rotate}handleGesturechange(t){const{clientX:r,clientY:n}=t,a=t.rotation;if(a===0||!this.rotation)return;const i=this.normalizeClientCoords(r,n);this.rotateCanvas(i[0],i[1],this.gestureStartRotate+W0e(a))}handleGestureend(t){}handleMousedown(t){t.preventDefault(),this.dragStart=[t.clientX,t.clientY],this.dragStartFrozenX=this.translateX,this.dragStartFrozenY=this.translateY}handleMouseup(t){t.preventDefault(),this.dragStart=null,this.dragStartFrozenX=null,this.dragStartFrozenY=null}handleMousemove(t){if(t.preventDefault(),this.dragStart&&this.dragStartFrozenX!==null&&this.dragStartFrozenY!==null){const r=t.clientX-this.dragStart[0],n=t.clientY-this.dragStart[1],a=this.dragStartFrozenX- -r,i=this.dragStartFrozenY- -n;this.setTranslateFromUserGesture(a,i),this.update()}}handleWheel(t){let{deltaX:r,deltaY:n,ctrlKey:a}=t;const i=P0e(t);i||(Math.abs(n)>=100&&(n=Math.sign(n)*(Math.abs(n)/120)),Math.abs(r)>=100&&(r=Math.sign(r)*(Math.abs(r)/120)));const o=this.scale;if(a){const c=i?.01*this.zoomSpeedAppleTrackpad:.1*this.zoomSpeed,l=1+-n*c;let u=o*l;if(u=jS(u,this.minScale,this.maxScale),(u===this.minScale||u===this.maxScale)&&(u===this.minScale&&l<1||u===this.maxScale&&l>1)){t.preventDefault();return}const f=this.relativeWrapperCoordinatesFromClientCoords(t.clientX,t.clientY),[h,d]=this.calcProjectionTranslate(u,f,this.normalizeMatrixCoordinates(t.clientX,t.clientY));this.setTranslateFromUserGesture(h,d),this.scale=u}else{const c=i?1*this.translateSpeedAppleTrackpad:25*this.translateSpeed;this.setTranslateFromUserGesture(this.translateX-r*c,this.translateY-n*c)}this.update(),t.preventDefault()}freezeTouches(t){return Array.from(t).map(r=>{const n=this.clientCoordsToWrapperCoords(r.clientX,r.clientY);return{client:[r.clientX,r.clientY],canvasRel:this.getCanvasCoordsRel(n[0],n[1])}})}handleTouchstart(t){this.touchStarts=this.freezeTouches(t.touches),this.touchStartTranslateX=this.translateX,this.touchStartTranslateY=this.translateY,this.isGestureActive=!0,t.preventDefault()}handleTouchmove(t){t.preventDefault();const r=Array.from(t.touches).map(n=>this.clientCoordsToWrapperCoords(n.clientX,n.clientY));if(this.touchStarts){if(r.length>=2&&this.touchStarts.length>=2){const n=[this.touchStarts[0].canvasRel[0]*this.canvasBounds.width,this.touchStarts[0].canvasRel[1]*this.canvasBounds.height],a=[this.touchStarts[1].canvasRel[0]*this.canvasBounds.width,this.touchStarts[1].canvasRel[1]*this.canvasBounds.height],i=Math.sqrt(Math.pow(n[0]-a[0],2)+Math.pow(n[1]-a[1],2)),o=Math.sqrt(Math.pow(r[0][0]-r[1][0],2)+Math.pow(r[0][1]-r[1][1],2))/this.naturalScale,c=jS(o/i,this.minScale,this.maxScale),l=[r[0][0]/this.wrapperInnerWidth,r[0][1]/this.wrapperInnerHeight],u=this.touchStarts[0].canvasRel,[f,h]=this.calcProjectionTranslate(c,l,u,0);if(this.rotation){let d=0,g=0,p=0;const A=Math.atan2(a[1]-n[1],a[0]-n[0]);p=Math.atan2(r[1][1]-r[0][1],r[1][0]-r[0][0])-A;const v=(x,E)=>[this.offset.left+this.canvasBounds.width*x*this.naturalScale*c+f,this.offset.top+this.canvasBounds.height*E*this.naturalScale*c+h],C=v(0,0),w=v(this.touchStarts[0].canvasRel[0],this.touchStarts[0].canvasRel[1]),y=yp(C,w,p);d=y[0]-C[0],g=y[1]-C[1],this.scale=c,this.rotate=p,this.setTranslateFromUserGesture(f+d,h+g)}else this.scale=c,this.setTranslateFromUserGesture(f,h)}else{const n=t.touches[0].clientX-this.touchStarts[0].client[0],a=t.touches[0].clientY-this.touchStarts[0].client[1],i=this.touchStartTranslateX+n,o=this.touchStartTranslateY+a;this.setTranslateFromUserGesture(i,o)}this.update()}}handleTouchend(t){t.touches.length===0?this.touchStarts=null:(this.touchStarts=this.freezeTouches(t.touches),this.touchStartTranslateX=this.translateX,this.touchStartTranslateY=this.translateY),this.isGestureActive=!1}calcProjectionTranslate(t,r,n,a){const i=this.canvasBounds.width*this.naturalScale,o=this.canvasBounds.height*this.naturalScale,c=n[0]*i*t,l=n[1]*o*t,u=yp([c,l],[0,0],a??this.rotate),f=r[0]*this.wrapperInnerWidth,h=r[1]*this.wrapperInnerHeight,d=f-u[0],g=h-u[1];return[d,g]}applyTransform(t,r,n){const a=this.calcProjectionTranslate(t,r,n,0);this.scale=t,this.setTranslateFromUserGesture(a[0],a[1]),this.update()}composeRelPoint(t,r,n,a,i,o){n=n??this.scale,a=a??this.translateX,i=i??this.translateY,o=o??this.rotate;const c=[this.offset.left,this.offset.top],l=[this.offset.left+this.canvasBounds.width*(n*this.naturalScale)*t,this.offset.top+this.canvasBounds.height*(n*this.naturalScale)*r],u=yp(l,c,o);return[u[0]+a,u[1]+i]}composePoint(t,r){const n=t/this.canvasBounds.width,a=r/this.canvasBounds.height;return this.composeRelPoint(n,a)}getAnchorOffset(t,r,n,a,i=[.5,.5]){const o=this.calcProjectionTranslate(t,i,i,0),c=[this.offset.left+o[0]+this.canvasBounds.width*(t*this.naturalScale)*i[0],this.offset.top+o[1]+this.canvasBounds.height*(t*this.naturalScale)*i[1]],l=this.composeRelPoint(i[0],i[1],t,r,n,a),u=l[0]-c[0],f=l[1]-c[1];return[u,f]}getCanvasCoordsRel(t,r){const n=[0,0],a=[t-this.translateX,r-this.translateY],i=yp(a,n,-this.rotate),o=[i[0]/this.renderinScale,i[1]/this.renderinScale];return[o[0]/this.canvasBounds.width,o[1]/this.canvasBounds.height]}clientCoordsToWrapperCoords(t,r){const{x:n,y:a}=this.element.getBoundingClientRect();return[t-n-this.offset.left,r-a-this.offset.top]}relativeWrapperCoordinatesFromClientCoords(t,r){const[n,a]=this.clientCoordsToWrapperCoords(t,r);return[n/this.wrapperInnerWidth,a/this.wrapperInnerHeight]}normalizeMatrixCoordinates(t,r){const n=this.clientCoordsToWrapperCoords(t,r);return this.getCanvasCoordsRel(n[0],n[1])}normalizeClientCoords(t,r){const[n,a]=this.normalizeMatrixCoordinates(t,r);return[n*this.canvasBounds.width,a*this.canvasBounds.height]}rotateCanvas(t,r,n){const a=t/this.canvasBounds.width,i=r/this.canvasBounds.height,o=this.composeRelPoint(a,i,this.scale,0,0,n),c=this.composeRelPoint(a,i);this.setTranslateFromUserGesture(c[0]-o[0],c[1]-o[1]),this.rotate=n,this.update()}get renderinScale(){return this.naturalScale*this.scale}get renderingTranslateX(){return this.offset.left+this.translateX}get renderingTranslateY(){return this.offset.top+this.translateY}get renderingRotate(){return this.rotate}clampTranslate(t,r=[.5,.5]){const n=this.canvasBounds.width*this.naturalScale*t.scale,a=this.canvasBounds.height*this.naturalScale*t.scale,i=n-this.wrapperInnerWidth,o=a-this.wrapperInnerHeight,c=i>0?-i:0,l=Math.min(0,Math.max(t.translateX,c)),u=o>0?-o:0,f=Math.min(0,Math.max(t.translateY,u)),h=-Math.min(0,i)*r[0],d=-Math.min(0,o)*r[1];return{translateX:l+h,translateY:f+d}}update(){this.canvasElement.style.transformOrigin="top left",this.canvasElement.style.transform=`translateX(${this.renderingTranslateX}px) translateY(${this.renderingTranslateY}px) scale(${this.renderinScale}) rotate(${this.renderingRotate}rad)`,this.dispatchEvent(new Event("update"))}destroy(){var t,r,n;(t=this.roElement)==null||t.disconnect(),this.roElement=null,(r=this.roCanvas)==null||r.disconnect(),this.roCanvas=null,(n=this.ancestorMotionCleanup)==null||n.call(this),this.ancestorMotionCleanup=null}};const V0e={class:"canvas"},j0e={class:"matrix"},U0e=s.defineComponent({__name:"Zoompinch",props:{transform:{default:()=>({translateX:0,translateY:0,scale:1,rotate:0})},offset:{default:()=>({left:0,top:0,right:0,bottom:0})},maxScale:{default:10},minScale:{default:.5},clampBounds:{type:Boolean,default:!1},rotation:{type:Boolean,default:!0},mouse:{type:Boolean,default:!0},wheel:{type:Boolean,default:!0},touch:{type:Boolean,default:!0},gesture:{type:Boolean,default:!0},zoomSpeed:{},translateSpeed:{},zoomSpeedAppleTrackpad:{},translateSpeedAppleTrackpad:{}},emits:["update:transform","init","dragGestureStart","dragGestureEnd"],setup(e,{expose:t,emit:r}){const n=e,a=r,i=s.ref(),o=s.ref(),c=s.ref(!1);window.zoompinchEngine=o;const l=s.ref(()=>{throw new Error("Not initialized yet")}),u=s.ref(0),f=s.ref(0);s.onMounted(()=>{i.value&&(o.value=new Y0e(i.value,n.offset,n.transform.translateX,n.transform.translateY,n.transform.scale,n.transform.rotate,n.minScale,n.maxScale,n.clampBounds,n.rotation),n.zoomSpeed!==void 0&&(o.value.zoomSpeed=n.zoomSpeed),n.translateSpeed!==void 0&&(o.value.translateSpeed=n.translateSpeed),n.zoomSpeedAppleTrackpad!==void 0&&(o.value.zoomSpeedAppleTrackpad=n.zoomSpeedAppleTrackpad),n.translateSpeedAppleTrackpad!==void 0&&(o.value.translateSpeedAppleTrackpad=n.translateSpeedAppleTrackpad),o.value.addEventListener("init",()=>{a("init")}),o.value.addEventListener("update",()=>{if(!o.value)return;const B={translateX:o.value.translateX,translateY:o.value.translateY,scale:o.value.scale,rotate:o.value.rotate};(B.translateX!==n.transform.translateX||B.translateY!==n.transform.translateY||B.scale!==n.transform.scale||B.rotate!==n.transform.rotate)&&a("update:transform",B),l.value=(N,R)=>o.value.composePoint(N,R),u.value=o.value.canvasBounds.width,f.value=o.value.canvasBounds.height}),o.value.addEventListener("init",()=>{c.value=!0}))}),s.watch(()=>n.transform,()=>{o.value&&(o.value.translateX!==n.transform.translateX||o.value.translateY!==n.transform.translateY||o.value.scale!==n.transform.scale||o.value.rotate!==n.transform.rotate)&&(o.value.translateX=n.transform.translateX,o.value.translateY=n.transform.translateY,o.value.scale=n.transform.scale,o.value.rotate=n.transform.rotate,o.value.update())},{deep:!0}),s.watch(()=>n.offset,B=>{o.value&&(o.value.offset=B,o.value.update())},{deep:!0}),s.watch(()=>n.minScale,B=>{o.value&&(o.value.minScale=B,o.value.update())}),s.watch(()=>n.maxScale,B=>{o.value&&(o.value.maxScale=B,o.value.update())}),s.watch(()=>n.clampBounds,B=>{o.value&&(o.value.clampBounds=B,o.value.setTranslateFromUserGesture(o.value.translateX,o.value.translateY),o.value.update())}),s.watch(()=>n.rotation,B=>{o.value&&(o.value.rotation=B,o.value.update())}),s.watch(()=>n.zoomSpeed,()=>{!o.value||n.zoomSpeed===void 0||(o.value.zoomSpeed=n.zoomSpeed)}),s.watch(()=>n.translateSpeed,()=>{!o.value||n.translateSpeed===void 0||(o.value.translateSpeed=n.translateSpeed)}),s.watch(()=>n.zoomSpeedAppleTrackpad,()=>{!o.value||n.zoomSpeedAppleTrackpad===void 0||(o.value.zoomSpeedAppleTrackpad=n.zoomSpeedAppleTrackpad)}),s.watch(()=>n.translateSpeedAppleTrackpad,()=>{!o.value||n.translateSpeedAppleTrackpad===void 0||(o.value.translateSpeedAppleTrackpad=n.translateSpeedAppleTrackpad)});const h=(B,N,R,z)=>{o.value&&(z!==void 0&&(o.value.rotate=z),o.value.applyTransform(B,N,R))},d=B=>{o.value&&n.wheel&&o.value.handleWheel(B)},g=B=>{o.value&&n.gesture&&o.value.handleGesturestart(B)},p=B=>{o.value&&n.gesture&&o.value.handleGesturechange(B)},A=B=>{o.value&&n.gesture&&o.value.handleGestureend(B)},v=B=>{o.value&&n.mouse&&o.value.handleMousedown(B)},C=B=>{o.value&&n.mouse&&o.value.handleMousemove(B)},w=B=>{o.value&&n.mouse&&o.value.handleMouseup(B)},y=B=>{o.value&&n.touch&&o.value.handleTouchstart(B)},x=B=>{o.value&&n.touch&&o.value.handleTouchmove(B)},E=B=>{o.value&&n.touch&&o.value.handleTouchend(B)};window.addEventListener("gesturechange",p),window.addEventListener("gestureend",A),window.addEventListener("mousemove",C),window.addEventListener("mouseup",w),window.addEventListener("touchmove",x),window.addEventListener("touchend",E),s.onUnmounted(()=>{window.removeEventListener("gesturechange",p),window.removeEventListener("gestureend",A),window.removeEventListener("mousemove",C),window.removeEventListener("mouseup",w),window.removeEventListener("touchmove",x),window.removeEventListener("touchend",E)});const k=(B,N)=>{if(!o.value)throw new Error("Zoompinch engine not initialized");return o.value.normalizeClientCoords(B,N)},S=(B,N,R)=>{o.value&&o.value.rotateCanvas(B,N,R)};return s.useSlots(),t({applyTransform:h,composePoint:l,normalizeClientCoords:k,zoompinchEngine:o,canvasWidth:u,canvasHeight:f,rotateCanvas:S}),(B,N)=>(s.openBlock(),s.createElementBlock("div",{ref_key:"zoompinchRef",ref:i,class:"zoompinch",onWheel:d,onGesturestart:g,onMousedown:v,onTouchstart:y},[s.createElementVNode("div",V0e,[s.renderSlot(B.$slots,"default",{},void 0,!0)]),s.createElementVNode("div",j0e,[c.value&&l.value?s.renderSlot(B.$slots,"matrix",{key:0,composePoint:l.value,normalizeClientCoords:k,canvasWidth:u.value,canvasHeight:f.value},void 0,!0):s.createCommentVNode("",!0)])],544))}}),$0e=(e,t)=>{const r=e.__vccOpts||e;for(const[n,a]of t)r[n]=a;return r},US=$0e(U0e,[["__scopeId","data-v-fbdbcf7c"]]),s1=new Set;requestAnimationFrame(function e(){s1.forEach(t=>t()),requestAnimationFrame(e)});function $S(e,t,r){let n;const a=()=>{const o=e instanceof Function?e():e.value,c=n;o!==n&&(n=o,t(o,c))};return s1.add(a),()=>{s1.delete(a)}}function wy(e,t){let r=null;const n=this;return()=>{clearTimeout(r);var a=arguments;r=setTimeout(()=>{e.apply(n,a)},t)}}const H0e=["x","y","width","height"],X0e=["cx","cy","r"],J0e=["cx","cy","r"],K0e=["cx","cy","r"],q0e=["cx","cy","r"],ede=["cx","cy","r"],tde=["cx","cy","r"],rde=["cx","cy","r"],nde=["cx","cy","r"],ade=["cx","cy","r"],ide=["cx","cy","r"],ode=["cx","cy","r"],sde=["cx","cy","r"],lde=["cx","cy","r"],cde=["cx","cy","r"],ude=["cx","cy","r"],dde=["cx","cy","r"],fde=dt(s.defineComponent({__name:"CropSkeleton",props:{x:{},y:{},width:{},height:{},aspectRatio:{},clamp:{}},emits:["update","effectiveHandleChange"],setup(e,{emit:t}){const r=e,n=t,a=s.ref(5),i=s.computed(()=>{const D=Math.min(r.width,r.height);return D>=a.value*8?a.value*4:Math.max(D/2,a.value)}),o=s.computed(()=>({x:r.x,y:r.y})),c=s.computed(()=>({x:r.x+r.width,y:r.y})),l=s.computed(()=>({x:r.x+r.width,y:r.y+r.height})),u=s.computed(()=>({x:r.x,y:r.y+r.height})),f=s.computed(()=>({x:r.x+r.width/2,y:r.y})),h=s.computed(()=>({x:r.x+r.width,y:r.y+r.height/2})),d=s.computed(()=>({x:r.x+r.width/2,y:r.y+r.height})),g=s.computed(()=>({x:r.x,y:r.y+r.height/2})),p=s.computed(()=>r.width>a.value*4&&r.height>a.value*4),A=s.ref(null),v=s.ref(null),C=s.ref(null),w=s.ref(null),y=s.ref(null),x=s.ref(null),E=s.ref(null);s.watch(x,D=>{n("effectiveHandleChange",D)});function k(D,Z){console.log("handleThumbMouseDown",D,Z),y.value=Z,x.value=Z,E.value=null,C.value={x:r.x,y:r.y,width:r.width,height:r.height},w.value={x:D.clientX,y:D.clientY},D.preventDefault(),D.stopPropagation()}function S(D,Z){console.log("handleThumbTouchstart",D,Z);const M=D.touches[0];y.value=Z,x.value=Z,E.value=null,C.value={x:r.x,y:r.y,width:r.width,height:r.height},w.value={x:M.clientX,y:M.clientY},D.preventDefault(),D.stopPropagation()}const B=()=>{y.value=null,x.value=null,E.value=null,C.value=null,w.value=null,A.value=null,v.value=null},N=()=>{y.value=null,x.value=null,E.value=null,C.value=null,w.value=null,A.value=null,v.value=null},R=D=>{if(A.value){if(!C.value)return;const Z=D.clientX-A.value.x,M=D.clientY-A.value.y;v.value={x:C.value.x+Z,y:C.value.y+M,width:C.value.width,height:C.value.height}}else y.value&&(E.value={x:D.clientX,y:D.clientY})},z=D=>{const Z=D.touches[0];if(A.value){if(!C.value)return;const M=Z.clientX-A.value.x,P=Z.clientY-A.value.y;v.value={x:C.value.x+M,y:C.value.y+P,width:C.value.width,height:C.value.height}}else y.value&&(E.value={x:Z.clientX,y:Z.clientY})};function L(D){A.value={x:D.clientX,y:D.clientY},w.value={x:D.clientX,y:D.clientY},C.value={x:r.x,y:r.y,width:r.width,height:r.height},D.preventDefault(),D.stopPropagation()}function m(D){const Z=D.touches[0];A.value={x:Z.clientX,y:Z.clientY},w.value={x:Z.clientX,y:Z.clientY},C.value={x:r.x,y:r.y,width:r.width,height:r.height},D.preventDefault(),D.stopPropagation()}function j(D){var re,X;const Z=((re=r.clamp)==null?void 0:re.x)??-1/0,M=((X=r.clamp)==null?void 0:X.y)??-1/0,P=r.clamp?r.clamp.x+r.clamp.width:1/0,W=r.clamp?r.clamp.y+r.clamp.height:1/0;return{x:Math.min(Math.max(D.x,Z),P-D.width),y:Math.min(Math.max(D.y,M),W-D.height),width:D.width,height:D.height}}function V(D){const Z=D.shiftKey?10:4;let M=0,P=0;switch(D.key){case"ArrowLeft":M=-Z;break;case"ArrowRight":M=Z;break;case"ArrowUp":P=-Z;break;case"ArrowDown":P=Z;break;default:return}D.preventDefault();const W={x:r.x,y:r.y,width:r.width,height:r.height};if(D.shiftKey)if(r.aspectRatio!=null){const X=D.key==="ArrowRight"||D.key==="ArrowDown"?Z:-Z,{bbox:ae}=F("br",W,X,X,r.aspectRatio,r.clamp);n("update",ae)}else{const{bbox:re}=F("br",W,M,P,void 0,r.clamp);n("update",re)}else n("update",j({...W,x:W.x+M,y:W.y+P}))}function Q(D,Z,M){const P={tl:"tr",tr:"tl",bl:"br",br:"bl",l:"r",r:"l"},W={tl:"bl",bl:"tl",tr:"br",br:"tr",t:"b",b:"t"};let re=D;return Z&&(re=P[re]??re),M&&(re=W[re]??re),re}function F(D,Z,M,P,W,re){let X=Z.x,ae=Z.y,ue=Z.x+Z.width,Ce=Z.y+Z.height;switch(D){case"tl":X+=M,ae+=P;break;case"t":ae+=P;break;case"tr":ue+=M,ae+=P;break;case"r":ue+=M;break;case"br":ue+=M,Ce+=P;break;case"b":Ce+=P;break;case"bl":X+=M,Ce+=P;break;case"l":X+=M;break}const ie=X>ue,T=ae>Ce,O=Q(D,ie,T),U=(re==null?void 0:re.x)??-1/0,ee=(re==null?void 0:re.y)??-1/0,de=re?re.x+re.width:1/0,fe=re?re.y+re.height:1/0;if(W!=null)if(D==="tl"||D==="tr"||D==="bl"||D==="br"){const Se=D==="tl"||D==="bl"?ue:X,ve=D==="tl"||D==="tr"?Ce:ae,Ee=D==="tl"||D==="bl"?X:ue,Ue=D==="tl"||D==="tr"?ae:Ce,$e=Ee>=Se,Ye=Ue>=ve;let Xe=Math.max(Math.abs(Ee-Se),1),ye=Math.max(Math.abs(Ue-ve),1);if(Xe/ye>W?Xe=ye*W:ye=Xe/W,re){const Ne=$e?de-Se:Se-U,He=Ye?fe-ve:ve-ee;(Xe>Ne||ye>He)&&(Ne/He>W?(ye=Math.min(ye,He),Xe=ye*W):(Xe=Math.min(Xe,Ne),ye=Xe/W))}$e?(X=Se,ue=Se+Xe):(ue=Se,X=Se-Xe),Ye?(ae=ve,Ce=ve+ye):(Ce=ve,ae=ve-ye)}else if(D==="r"||D==="l"){const ve=D==="r"?Z.x:Z.x+Z.width,Ee=D==="r"?ue:X,Ue=Z.y+Z.height/2,$e=Ee>=ve;let Ye=Math.max(Math.abs(Ee-ve),1);if(re){const ye=$e?de-ve:ve-U,Ne=Math.min(Ue-ee,fe-Ue)*2;Ye=Math.max(Math.min(Ye,ye,Ne*W),1)}const Xe=Ye/W;$e?(X=ve,ue=ve+Ye):(ue=ve,X=ve-Ye),ae=Ue-Xe/2,Ce=Ue+Xe/2}else{const ve=D==="b"?Z.y:Z.y+Z.height,Ee=D==="b"?Ce:ae,Ue=Z.x+Z.width/2,$e=Ee>=ve;let Ye=Math.max(Math.abs(Ee-ve),1);if(re){const ye=$e?fe-ve:ve-ee,Ne=Math.min(Ue-U,de-Ue)*2;Ye=Math.max(Math.min(Ye,ye,Ne/W),1)}const Xe=Ye*W;$e?(ae=ve,Ce=ve+Ye):(Ce=ve,ae=ve-Ye),X=Ue-Xe/2,ue=Ue+Xe/2}else{const we=Math.min(X,ue),Se=Math.min(ae,Ce),ve=Math.max(X,ue),Ee=Math.max(ae,Ce);X=we,ae=Se,ue=ve,Ce=Ee,re&&(X=Math.max(X,U),ae=Math.max(ae,ee),ue=Math.min(ue,de),Ce=Math.min(Ce,fe))}return{bbox:{x:X,y:ae,width:ue-X,height:Ce-ae},effectiveHandle:O}}return $S(v,()=>{var D,Z;if(v.value){const M=((D=r.clamp)==null?void 0:D.x)??-1/0,P=((Z=r.clamp)==null?void 0:Z.y)??-1/0,W=r.clamp?r.clamp.x+r.clamp.width:1/0,re=r.clamp?r.clamp.y+r.clamp.height:1/0;v.value.x<M&&(v.value.x=M),v.value.y<P&&(v.value.y=P),v.value.x+v.value.width>W&&(v.value.x=W-v.value.width),v.value.y+v.value.height>re&&(v.value.y=re-v.value.height),n("update",v.value)}}),$S(E,()=>{if(!y.value||!E.value||!w.value||!C.value)return;const D=E.value.x-w.value.x,Z=E.value.y-w.value.y,{bbox:M,effectiveHandle:P}=F(y.value,C.value,D,Z,r.aspectRatio,r.clamp);x.value=P,n("update",M)}),window.addEventListener("mouseup",B),window.addEventListener("touchend",N),window.addEventListener("mousemove",R),window.addEventListener("touchmove",z),s.onUnmounted(()=>{window.removeEventListener("mouseup",B),window.removeEventListener("touchend",N),window.removeEventListener("mousemove",R),window.removeEventListener("touchmove",z)}),(D,Z)=>(s.openBlock(),s.createElementBlock("g",null,[s.createElementVNode("rect",{x:e.x,y:e.y,width:e.width,height:e.height,class:"skeleton-rect",tabindex:"0",role:"application","aria-roledescription":"Crop area","aria-label":"Crop area. Use arrow keys to move, Shift plus arrow keys to resize.",onMousedown:L,onTouchstart:m,onKeydown:V},null,40,H0e),s.createElementVNode("g",{class:s.normalizeClass({inactive:!p.value})},[s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:f.value.x,cy:f.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-t",onMousedown:Z[0]||(Z[0]=M=>k(M,"t")),onTouchstart:Z[1]||(Z[1]=M=>S(M,"t"))},null,40,X0e),s.createElementVNode("circle",{cx:f.value.x,cy:f.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="t"}])},null,10,J0e)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:h.value.x,cy:h.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-r",onMousedown:Z[2]||(Z[2]=M=>k(M,"r")),onTouchstart:Z[3]||(Z[3]=M=>S(M,"r"))},null,40,K0e),s.createElementVNode("circle",{cx:h.value.x,cy:h.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="r"}])},null,10,q0e)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:d.value.x,cy:d.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-b",onMousedown:Z[4]||(Z[4]=M=>k(M,"b")),onTouchstart:Z[5]||(Z[5]=M=>S(M,"b"))},null,40,ede),s.createElementVNode("circle",{cx:d.value.x,cy:d.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="b"}])},null,10,tde)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:g.value.x,cy:g.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-l",onMousedown:Z[6]||(Z[6]=M=>k(M,"l")),onTouchstart:Z[7]||(Z[7]=M=>S(M,"l"))},null,40,rde),s.createElementVNode("circle",{cx:g.value.x,cy:g.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="l"}])},null,10,nde)])],2),s.createElementVNode("g",null,[s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:o.value.x,cy:o.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-tl",onMousedown:Z[8]||(Z[8]=M=>k(M,"tl")),onTouchstart:Z[9]||(Z[9]=M=>S(M,"tl"))},null,40,ade),s.createElementVNode("circle",{cx:o.value.x,cy:o.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="tl"}])},null,10,ide)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:c.value.x,cy:c.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-tr",onMousedown:Z[10]||(Z[10]=M=>k(M,"tr")),onTouchstart:Z[11]||(Z[11]=M=>S(M,"tr"))},null,40,ode),s.createElementVNode("circle",{cx:c.value.x,cy:c.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="tr"}])},null,10,sde)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:u.value.x,cy:u.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-bl",onMousedown:Z[12]||(Z[12]=M=>k(M,"bl")),onTouchstart:Z[13]||(Z[13]=M=>S(M,"bl"))},null,40,lde),s.createElementVNode("circle",{cx:u.value.x,cy:u.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="bl"}])},null,10,cde)]),s.createElementVNode("g",null,[s.createElementVNode("circle",{cx:l.value.x,cy:l.value.y,r:i.value,class:"thumb-circle-hitbox thumb-circle-hitbox-br",onMousedown:Z[14]||(Z[14]=M=>k(M,"br")),onTouchstart:Z[15]||(Z[15]=M=>S(M,"br"))},null,40,ude),s.createElementVNode("circle",{cx:l.value.x,cy:l.value.y,r:a.value,class:s.normalizeClass(["thumb-circle",{pressing:x.value==="br"}])},null,10,dde)])])]))}}),[["__scopeId","data-v-ab8c8451"]]);function hd(e,t,r){return Math.min(Math.max(e,t),r)}function hde(e,t){const r=hd(e.x,t.x,t.x+t.width),n=hd(e.y,t.y,t.y+t.height),a=hd(e.x+e.width,t.x,t.x+t.width),i=hd(e.y+e.height,t.y,t.y+t.height);return{x:r,y:n,width:a-r,height:i-n}}function gde(e,t,r){if(r==null)return hde(e,t);let n=e.width,a=e.height;n>t.width&&(n=t.width,a=n/r),a>t.height&&(a=t.height,n=a*r);const i=hd(e.x,t.x,t.x+t.width-n),o=hd(e.y,t.y,t.y+t.height-a);return{x:i,y:o,width:n,height:a}}function mde(e){return new Promise((t,r)=>{if(e.complete&&e.naturalWidth!==0){console.log("[0] getBoundingClientRect",e.getBoundingClientRect()),t();return}const n=()=>{e.naturalWidth*e.naturalHeight>0&&(console.log("[1] getBoundingClientRect",e.getBoundingClientRect()),setTimeout(()=>{console.log("[2] getBoundingClientRect",e.getBoundingClientRect()),t()}),s1.delete(n))};s1.add(n),e.addEventListener("error",()=>r(new Error("Failed to load image")),{once:!0})})}const pde={class:"bx-cropper"},Ade={xmlns:"http://www.w3.org/2000/svg",width:"100%",height:"100%",class:"matrix-svg"},bde={key:0,class:"layer loading-layer"},vde={class:"layer"},HS=dt(s.defineComponent({__name:"BxCropper",props:{crop:{},aspectRatio:{},offset:{default:()=>({top:10,right:10,bottom:10,left:10})},mirrorX:{type:Boolean,default:!1},mirrorY:{type:Boolean,default:!1}},emits:["update:crop"],setup(e,{emit:t}){const r=e,n=t;s.useSlots();const a=s.ref(),i=s.ref({translateX:0,translateY:0,scale:1,rotate:0}),o=s.ref(),c=s.ref();function l(v){let{left:C,top:w,width:y,height:x}=v;return r.mirrorX&&a.value&&(C=a.value.canvasWidth-C-y),r.mirrorY&&a.value&&(w=a.value.canvasHeight-w-x),{left:C,top:w,width:y,height:x}}function u(v){if(!a.value)throw new Error("Zoompinch ref not available");const C=l(v),[w,y]=a.value.composePoint(C.left,C.top),[x,E]=a.value.composePoint(C.left+C.width,C.top+C.height),k=x-w,S=E-y;return{x:w,y,width:k,height:S}}function f(v){if(!a.value||!a.value.zoompinchEngine)throw new Error("Zoompinch ref or engine not available");const{x:C,y:w}=a.value.zoompinchEngine.element.getBoundingClientRect(),y=v.x+C,x=v.y+w,[E,k]=a.value.normalizeClientCoords(y,x),[S,B]=a.value.normalizeClientCoords(y+v.width,x+v.height),N=S-E,R=B-k;return{left:Math.round(E),top:Math.round(k),width:Math.round(N),height:Math.round(R)}}const h=s.ref(!1);async function d(){var w;if(!((w=a.value)!=null&&w.zoompinchEngine))return;const v=Array.from(a.value.zoompinchEngine.canvasElement.children);for(const y of v)y.tagName==="IMG"&&await mde(y);h.value=!0,a.value.applyTransform(1,[.5,.5],[.5,.5]);const C=r.crop??(()=>{const y=a.value.canvasWidth,x=a.value.canvasHeight,E=y/x;if(r.aspectRatio){const k=E>r.aspectRatio?x*r.aspectRatio:y,S=E>r.aspectRatio?x:y/r.aspectRatio;return{left:(y-k)/2,top:(x-S)/2,width:k,height:S}}else return{left:0,top:0,width:y,height:x}})();c.value=C,o.value=u(C)}const g=s.ref(null);window.test=()=>f(o.value);const p=s.computed(()=>{if(i.value,!a.value)throw new Error("Zoompinch ref not available");return u({left:0,top:0,width:a.value.canvasWidth,height:a.value.canvasHeight})});function A(v){o.value=v}return s.watch(i,()=>{!o.value||!a.value||(o.value=gde(o.value,p.value,r.aspectRatio))}),s.watch(o,v=>{if(!v)return;const C=f(v),w=l(C);c.value=w,n("update:crop",w)}),s.watch([()=>r.mirrorX,()=>r.mirrorY],()=>{!h.value||!c.value||!a.value||(o.value=u(c.value))}),(v,C)=>(s.openBlock(),s.createElementBlock("div",pde,[s.createVNode(s.unref(US),{ref_key:"zoompinchRef",ref:a,transform:i.value,"onUpdate:transform":C[1]||(C[1]=w=>i.value=w),rotation:!1,"min-scale":1,offset:e.offset,"clamp-bounds":"",onInit:d,class:s.normalizeClass({[`effective-handle-${g.value}`]:g.value!==null})},{default:s.withCtx(()=>[s.renderSlot(v.$slots,"default",{},void 0,!0)]),matrix:s.withCtx(()=>[(s.openBlock(),s.createElementBlock("svg",Ade,[o.value?(s.openBlock(),s.createBlock(fde,s.mergeProps({key:0},o.value,{"aspect-ratio":e.aspectRatio,clamp:p.value,onUpdate:A,onEffectiveHandleChange:C[0]||(C[0]=w=>g.value=w)}),null,16,["aspect-ratio","clamp"])):s.createCommentVNode("",!0)])),h.value?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",bde,[s.createVNode(nc)])),s.createElementVNode("div",vde,[s.renderSlot(v.$slots,"layer",{},void 0,!0)])]),_:3},8,["transform","offset","class"])]))}}),[["__scopeId","data-v-ea4b0863"]]),Cde={class:"bx-image-cropper"},yde=["src"],wde={class:"actions-left"},Ide={class:"actions-right"},XS=dt(s.defineComponent({__name:"BxImageCropper",props:s.mergeModels({src:{},aspectRatio:{},offset:{}},{crop:{required:!1},cropModifiers:{},mirrorX:{type:Boolean,required:!1,default:!1},mirrorXModifiers:{},mirrorY:{type:Boolean,required:!1,default:!1},mirrorYModifiers:{}}),emits:s.mergeModels(["cancel","done"],["update:crop","update:mirrorX","update:mirrorY"]),setup(e,{emit:t}){const r=s.useModel(e,"crop"),n=s.useModel(e,"mirrorX"),a=s.useModel(e,"mirrorY"),i=t;function o(){n.value=!n.value}function c(){a.value=!a.value}return(l,u)=>(s.openBlock(),s.createElementBlock("div",Cde,[s.createVNode(HS,{"aspect-ratio":e.aspectRatio,crop:r.value,"onUpdate:crop":u[4]||(u[4]=f=>r.value=f),offset:e.offset,"mirror-x":n.value,"mirror-y":a.value},{layer:s.withCtx(()=>[s.createElementVNode("div",{class:"actions-wrapper",onTouchstart:u[2]||(u[2]=s.withModifiers(()=>{},["stop"])),onTouchend:u[3]||(u[3]=s.withModifiers(()=>{},["stop"]))},[s.createElementVNode("div",wde,[s.createVNode(Et,{onClick:o,class:s.normalizeClass({active:!0}),"aria-label":"Mirror horizontally"},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[...u[5]||(u[5]=[s.createElementVNode("svg",{fill:"none",viewBox:"0 0 24 24","data-fpl-icon-size":"24"},[s.createElementVNode("g",{style:{"transform-origin":"center center",transform:"scale(1.5)"}},[s.createElementVNode("path",{style:{fill:"currentColor","fill-rule":"evenodd"},d:"M12.5 6.5a.5.5 0 0 0-1 0v11a.5.5 0 0 0 1 0zM6 9.104a.75.75 0 0 1 1.28-.53L10 11.292a1 1 0 0 1 0 1.414l-2.72 2.72a.75.75 0 0 1-1.28-.53zm1 .603v4.586L9.293 12zm11-.603a.75.75 0 0 0-1.28-.53L14 11.292a1 1 0 0 0 0 1.414l2.72 2.72a.75.75 0 0 0 1.28-.53zm-1 .603v4.586L14.707 12z","clip-rule":"evenodd"})])],-1)])]),_:1})]),_:1}),s.createVNode(Et,{onClick:c,class:s.normalizeClass({active:!0}),"aria-label":"Mirror vertically"},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[...u[6]||(u[6]=[s.createElementVNode("svg",{fill:"none",viewBox:"0 0 24 24","data-fpl-icon-size":"24"},[s.createElementVNode("g",{style:{"transform-origin":"center center",transform:"scale(1.5)"}},[s.createElementVNode("path",{style:{fill:"currentColor","fill-rule":"evenodd"},d:"M17.5 12.5a.5.5 0 0 0 0-1h-11a.5.5 0 0 0 0 1zM14.896 18a.75.75 0 0 0 .53-1.28L12.708 14a1 1 0 0 0-1.414 0l-2.72 2.72a.75.75 0 0 0 .53 1.28zm-.603-1H9.707L12 14.707zm.603-11a.75.75 0 0 1 .53 1.28L12.708 10a1 1 0 0 1-1.414 0l-2.72-2.72A.75.75 0 0 1 9.103 6zm-.603 1H9.707L12 9.293z","clip-rule":"evenodd"})])],-1)])]),_:1})]),_:1})]),s.createElementVNode("div",Ide,[s.createVNode(Et,{secondary:"",onClick:u[0]||(u[0]=f=>i("cancel"))},{default:s.withCtx(()=>[...u[7]||(u[7]=[s.createTextVNode(" Cancel ",-1)])]),_:1}),s.createVNode(Et,{active:"",onClick:u[1]||(u[1]=f=>i("done"))},{default:s.withCtx(()=>[...u[8]||(u[8]=[s.createTextVNode(" Done ",-1)])]),_:1})])],32)]),default:s.withCtx(()=>[s.createElementVNode("img",{src:e.src,crossorigin:"anonymous",class:s.normalizeClass(["image",{"mirror-x":n.value,"mirror-y":a.value}])},null,10,yde)]),_:1},8,["aspect-ratio","crop","offset","mirror-x","mirror-y"])]))}}),[["__scopeId","data-v-900cee50"]]),JS=.6,KS=.4,qS=.6,e_=(e,t,r)=>Math.min(r,Math.max(t,e));function t_(e){const{faces:t,natural:r,aspectRatio:n,cropMode:a,zoom:i=!1}=e;if(a!=="cover"||!Number.isFinite(n)||n<=0||!(r.width>0)||!(r.height>0))return null;const o=t.filter(E=>E.score>=JS&&E.width>0&&E.height>0);if(o.length===0)return null;const c=Math.min(...o.map(E=>E.x)),l=Math.min(...o.map(E=>E.y)),u=Math.max(...o.map(E=>E.x+E.width)),f=Math.max(...o.map(E=>E.y+E.height)),h=(c+u)/2,d=(l+f)/2,g=r.width/r.height,p=g>n?r.height*n:r.width,A=g>n?r.height:r.width/n;let v=p,C=A;if(i){const E=(u-c)*(1+2*qS),k=(f-l)*(1+2*qS),S=Math.max(E,k*n),B=S/n;v=Math.min(p,S),C=Math.min(A,B)}const w=h-v/2,y=d-C*KS,x={left:e_(w,0,Math.max(0,r.width-v)),top:e_(y,0,Math.max(0,r.height-C)),width:v,height:C};return x.left===0&&x.top===0&&Math.abs(x.width-r.width)<.5&&Math.abs(x.height-r.height)<.5?null:x}let wp=null;function xde(e){wp=e}function r_(){return wp!==null}async function Ede(e){if(!wp)return[];try{const t=await wp(e);return Array.isArray(t)?t:[]}catch(t){return console.warn("[autoCrop] face detection failed, skipping auto-crop",t),[]}}const Bde=640;function kde(e){return new Promise(t=>{const r=new Image;r.crossOrigin="anonymous",r.addEventListener("load",()=>t(r)),r.addEventListener("error",()=>t(null)),r.src=e})}function Sde(e){const t=e.naturalWidth||e.width,r=e.naturalHeight||e.height;if(!(t>0)||!(r>0))return null;const n=Math.min(1,Bde/Math.max(t,r)),a=document.createElement("canvas");a.width=Math.max(1,Math.round(t*n)),a.height=Math.max(1,Math.round(r*n));const i=a.getContext("2d",{willReadFrequently:!0});if(!i)return null;i.drawImage(e,0,0,a.width,a.height);try{i.getImageData(0,0,1,1)}catch{return null}return{canvas:a,scale:n}}async function n_(e){if(!r_()||e.cropMode!=="cover")return null;const t=await kde(e.src);if(!t)return null;const r=Sde(t);if(!r)return null;const n=await Ede(r.canvas);if(n.length===0)return null;const a=1/r.scale,i=n.map(o=>({x:o.x*a,y:o.y*a,width:o.width*a,height:o.height*a,score:o.score}));return t_({faces:i,natural:e.natural,aspectRatio:e.aspectRatio,cropMode:e.cropMode,zoom:e.zoom})}const _de=["aria-labelledby","aria-label"],Rde=["src","alt"],Nde={class:"actions"},Dde={key:2,class:"padding-input-wrapper"},Fde=["id"],Ip=dt(s.defineComponent({__name:"ImageEdit",props:s.mergeModels({allowUploadFromDevice:{type:Boolean},width:{},height:{},allowedTypes:{},convertTo:{},quality:{},imageLibraries:{},uploadLabel:{default:"Select image"},editLabel:{},actionsLabel:{default:"More"},maxSize:{default:1/0},bridge:{},mobile:{type:Boolean,default:!1},compact:{type:Boolean,default:!1},field:{},allowCropImage:{type:Boolean},aspectRatio:{},resetCropOnChange:{type:Boolean,default:!0},allowPadding:{type:Boolean,default:!1},autoCrop:{type:Boolean,default:!1},autoCropZoom:{type:Boolean,default:!1},labelId:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=rc(),r=s.inject(Yh),n=e,a=s.useModel(e,"modelValue"),i=s.computed(()=>{var j,V;const m=(j=a.value)==null?void 0:j.src;return m&&Di.withBackgroundRemoval(m,((V=a.value)==null?void 0:V.removeBackground)===!0)}),o=s.computed({get:()=>{var m;return(m=a.value)==null?void 0:m.src},set:m=>{!a.value||typeof a.value!="object"?a.value={src:m,innerRotate:0,cropMode:"cover",innerAlign:"center",crop:null,innerPos:[0,0],mirrorX:!1,mirrorY:!1,scale:1}:(a.value.src=m,a.value.crop=null,a.value.innerPos=[0,0],a.value.scale=1,a.value.innerRotate=0,a.value.mirrorX=!1,a.value.mirrorY=!1),(async()=>{const j=await fd(o.value);if(N.value=j,console.log("newImageInfo",j,n,a.value),n.autoCrop&&a.value.cropMode==="cover"){const V=await n_({src:o.value,natural:j,aspectRatio:n.aspectRatio,cropMode:a.value.cropMode,zoom:!0});if(console.log("autoCrop suggested",V),V&&a.value.src===o.value){c.value=V;return}}n.resetCropOnChange&&(a.value.cropMode==="cover"?(console.log("resetting crop on change with cover mode"),c.value=Cp({scale:a.value.scale??1,innerPos:a.value.innerPos??[0,0]},j.width,j.height,n.aspectRatio)):c.value={top:0,left:0,width:j.width,height:j.height})})()}}),c=s.computed({get:()=>a.value.crop?a.value.crop:N.value?Cp({scale:a.value.scale??1,innerPos:a.value.innerPos??[0,0]},N.value.width,N.value.height,n.aspectRatio):{top:0,left:0,width:10,height:10},set:async m=>{var Q,F;console.log("cropProxy.set()",m);const{scale:j,innerPos:V}=VS(m,N.value.width,N.value.height);a.value={...ta(a.value),scale:j,innerPos:V,crop:m,cropMode:((Q=a.value)==null?void 0:Q.cropMode)??"cover",innerAlign:((F=a.value)==null?void 0:F.innerAlign)??"center"}}});s.watch(o,m=>{m&&fd(m).then(j=>{N.value=j}).catch(()=>{})},{immediate:!0});const l=mi("bx-image-padding-label"),u=s.computed(()=>(n.editLabel??n.uploadLabel)||"Image"),f=s.computed(()=>Math.max(1,Math.min(n.width,n.height)/2)),h=s.computed({get(){var j;const m=(((j=a.value)==null?void 0:j.padding)??[0])[0]??0;return Math.round(Math.min(100,m/f.value*100))},set(m){const j=Math.max(0,Math.min(100,m))/100*f.value;a.value={...a.value,padding:[j,j,j,j]}}}),d=s.ref(!1);s.ref(!1);const g=s.computed(()=>n.allowCropImage?1:2),{uploadFiles:p,uploadProgresses:A,uploading:v}=ih(s.toRef(n,"width"),s.toRef(n,"height"),s.toRef(n,"convertTo"),s.toRef(n,"quality"),n.bridge.handleUpload,s.toRef(n,"field"));async function C(){const m=await q2({types:n.allowedTypes,maxSize:n.maxSize,multiple:!0}),j=qh({title:"Uploading images",content:()=>[s.h(Su,{value:A.value.reduce((F,D)=>F+D,0)/A.value.length})],closeable:!1,icon:()=>s.h(ep),disableBackgroundEffect:!0}),V=await p(m);j.close();const Q=V[0];Q&&(N.value={width:Q.width,height:Q.height,ratio:Q.width/Q.height},k(Q.src))}const w=s.computed(()=>[...n.allowUploadFromDevice?[{label:n.uploadLabel,action:C,icon:()=>s.h(oc),key:"upload"}]:[],...n.imageLibraries.map(j=>({label:j.label,icon:()=>{if(j.type==="sharedDrive")switch(j.service){case"googledrive":return s.h("img",{src:"https://upload.wikimedia.org/wikipedia/commons/1/12/Google_Drive_icon_%282020%29.svg"});case"onedrive":return s.h("img",{src:"https://upload.wikimedia.org/wikipedia/commons/e/e7/Microsoft_OneDrive_Icon_%282025_-_present%29.svg"});default:return s.h(oc)}else return j.type==="pexels"?s.h("img",{src:"https://www.drupal.org/files/project-images/pexels_logo_0.png"}):s.h(oc)},key:j.type==="sharedDrive"?j.service:j.type==="custom"?"custom":j.type,lib:j}))]),y=s.ref(),x=s.computed(()=>w.value.slice(g.value===1?g.value:g.value-1).map(m=>({label:m.label,value:m.key,icon:n.mobile?m.icon:()=>s.h(ft,{},m.icon)})));function E(m){m==="upload"?w.value.length>1?(y.value=void 0,d.value=!0):C():(y.value=m,d.value=!0)}function k(m){console.log("handleImageSelection",m),o.value=m,d.value=!1}function S(){if(n.allowUploadFromDevice){C();return}y.value=void 0,d.value=!0}O6(()=>n.field,S);function B(m){n.imageLibraries.length===0&&n.allowUploadFromDevice&&(C(),m.stopImmediatePropagation(),m.stopPropagation(),s.nextTick(()=>{d.value=!1}))}const N=s.ref(),R=s.ref(!1);function z(m){E(m),R.value=!1}function L(){let m=ta(c.value),j=a.value.mirrorX,V=a.value.mirrorY,Q=c.value;fd(o.value).then(Z=>{N.value=Z});const F=a.value.cropMode==="cover"?n.aspectRatio:void 0,D=ES(()=>s.h("div",{class:"cropper-popover-wrapper"},[s.h(XS,{src:Ks(i.value??o.value,r==null?void 0:r.value),crop:c.value,"onUpdate:crop"(Z){Z&&(Q=Z)},mirrorX:a.value.mirrorX,"onUpdate:mirrorX"(Z){a.value={...a.value,mirrorX:Z}},mirrorY:a.value.mirrorY,"onUpdate:mirrorY"(Z){a.value={...a.value,mirrorY:Z}},aspectRatio:F,offset:{top:20,right:20,bottom:20,left:20},style:{width:"100%",height:"100%"},onCancel(){setTimeout(()=>{c.value=m,a.value={...a.value,mirrorX:j,mirrorY:V}},50),D.destroy()},onDone(){setTimeout(()=>{c.value=Q},50),D.destroy()}})]))}return(m,j)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["image-edit-field",{"has-single-action":x.value.length===0&&!e.allowCropImage,compact:e.compact}])},[s.createVNode(_u,{closeable:!1,show:d.value,"onUpdate:show":j[3]||(j[3]=V=>d.value=V),type:"layer",trigger:"click",fullscreen:""},{title:s.withCtx(()=>[y.value?(s.openBlock(),s.createBlock(Et,{key:0,circle:"","aria-label":"Back",onClick:j[0]||(j[0]=V=>y.value=void 0)},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(q5))]),_:1})]),_:1})):s.createCommentVNode("",!0)]),"header-actions":s.withCtx(()=>[s.createVNode(Et,{circle:"","aria-label":"Close",onClick:j[1]||(j[1]=V=>d.value=!1)},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(bs))]),_:1})]),_:1})]),trigger:s.withCtx(()=>[s.createElementVNode("button",{type:"button",class:"image-preview","aria-labelledby":e.labelId,"aria-label":e.labelId?void 0:e.editLabel??e.uploadLabel,onClick:B},[i.value?(s.openBlock(),s.createElementBlock("img",{key:0,crossorigin:"anonymous",src:s.unref(t)(i.value),alt:u.value},null,8,Rde)):(s.openBlock(),s.createBlock(ft,{key:1,class:"image-placeholder","aria-hidden":"true"},{default:s.withCtx(()=>[s.createVNode(s.unref(oc))]),_:1}))],8,_de)]),content:s.withCtx(()=>[s.createVNode(WS,{"active-key":y.value,"onUpdate:activeKey":j[2]||(j[2]=V=>y.value=V),options:w.value,"image-libraries":e.imageLibraries,width:e.width,height:e.height,quality:e.quality,"convert-to":e.convertTo,bridge:e.bridge,field:e.field,onSelect:k},null,8,["active-key","options","image-libraries","width","height","quality","convert-to","bridge","field"])]),_:1},8,["show"]),s.createElementVNode("div",Nde,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(w.value.slice(0,w.value.length>g.value?g.value-1:g.value),(V,Q)=>(s.openBlock(),s.createBlock(Et,{tertiary:!0,active:Q===0,size:e.compact?"small":"medium","aria-label":e.compact?V.label:void 0,onClick:F=>E(V.key)},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(V.icon)))]),_:2},1024)]),default:s.withCtx(()=>[e.compact?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createTextVNode(s.toDisplayString(V.label),1)],64))]),_:2},1032,["active","size","aria-label","onClick"]))),256)),x.value.length>0&&w.value.length>g.value?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(e.mobile?o1:ai),{key:0,trigger:"manual",options:x.value,onSelect:E,"model-value":void 0,"onUpdate:modelValue":z,"mobile-layout":e.mobile,show:R.value,"onUpdate:show":j[5]||(j[5]=V=>R.value=V)},{trigger:s.withCtx(()=>[g.value===1?(s.openBlock(),s.createBlock(Et,{key:0,tertiary:"",active:"",size:e.compact?"small":"medium","aria-label":e.compact?w.value[0].label:void 0,onClick:j[4]||(j[4]=V=>E(w.value[0].key))},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(w.value[0].icon)))]),_:1})]),default:s.withCtx(()=>[e.compact?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createTextVNode(s.toDisplayString(w.value[0].label),1)],64))]),_:1},8,["size","aria-label"])):(s.openBlock(),s.createBlock(Et,{key:1,size:e.compact?"small":"medium","aria-label":e.compact?e.actionsLabel:void 0},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(J7))]),_:1})]),default:s.withCtx(()=>[e.compact?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createTextVNode(s.toDisplayString(e.actionsLabel),1)],64))]),_:1},8,["size","aria-label"]))]),_:1},40,["options","mobile-layout","show"])):s.createCommentVNode("",!0),n.allowCropImage?(s.openBlock(),s.createBlock(Et,{key:1,tertiary:"",size:e.compact?"small":"medium","aria-label":e.compact?e.editLabel??"Edit Image":void 0,onClick:L},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(ny))]),_:1})]),default:s.withCtx(()=>[e.compact?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createTextVNode(s.toDisplayString(e.editLabel??"Edit Image"),1)],64))]),_:1},8,["size","aria-label"])):s.createCommentVNode("",!0),e.allowPadding&&a.value.cropMode==="contain"?(s.openBlock(),s.createElementBlock("div",Dde,[s.createElementVNode("span",{class:"label",id:s.unref(l)},"Padding",8,Fde),s.createVNode(M0,{modelValue:h.value,"onUpdate:modelValue":j[6]||(j[6]=V=>h.value=V),min:0,max:100,step:1,"aria-labelledby":s.unref(l),"aria-valuetext":`${h.value}%`},null,8,["modelValue","aria-labelledby","aria-valuetext"])])):s.createCommentVNode("",!0)])],2))}}),[["__scopeId","data-v-97ea8970"]]),Zde=["src","alt"],zde={key:0,class:"actions"},l1=2,a_=dt(s.defineComponent({__name:"Image",props:s.mergeModels({layout:{},allowUploadFromDevice:{type:Boolean},width:{},height:{},allowedTypes:{},convertTo:{},quality:{},imageLibraries:{},uploadLabel:{default:"Select image"},actionsLabel:{default:"More"},maxSize:{default:1/0},bridge:{},mobile:{type:Boolean,default:!1},field:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=rc(),r=s.useModel(e,"modelValue"),n=s.computed(()=>{var C;return typeof r.value=="string"?r.value:(C=r.value)==null?void 0:C.src}),a=e,i=s.ref(!1),{uploadFiles:o,uploadProgresses:c,uploading:l}=ih(s.toRef(a,"width"),s.toRef(a,"height"),s.toRef(a,"convertTo"),s.toRef(a,"quality"),a.bridge.handleUpload,s.toRef(a,"field"));async function u(){const C=await q2({types:a.allowedTypes,maxSize:a.maxSize,multiple:!0}),w=qh({title:"Uploading images",content:()=>[s.h(Su,{value:c.value.reduce((E,k)=>E+k,0)/c.value.length})],closeable:!1,icon:()=>s.h(ep),disableBackgroundEffect:!0}),y=await o(C);w.close();const x=y[0];x&&p(x.src)}const f=s.computed(()=>[...a.allowUploadFromDevice?[{label:a.uploadLabel,action:u,icon:()=>s.h(oc),key:"upload"}]:[],...a.imageLibraries.map(w=>({label:w.label,icon:()=>{if(w.type==="sharedDrive")switch(w.service){case"googledrive":return s.h("img",{src:"https://upload.wikimedia.org/wikipedia/commons/1/12/Google_Drive_icon_%282020%29.svg"});case"onedrive":return s.h("img",{src:"https://upload.wikimedia.org/wikipedia/commons/e/e7/Microsoft_OneDrive_Icon_%282025_-_present%29.svg"});default:return s.h(oc)}else return w.type==="pexels"?s.h("img",{src:"https://www.drupal.org/files/project-images/pexels_logo_0.png"}):s.h(oc)},key:w.type==="sharedDrive"?w.service:w.type==="custom"?"custom":w.type,lib:w}))]),h=s.ref(),d=s.computed(()=>f.value.slice(l1-1).map(C=>({label:C.label,value:C.key,icon:C.icon})));function g(C){C==="upload"?u():(h.value=C,i.value=!0)}function p(C){typeof r.value=="object"&&r.value!==null?r.value={...ta(r.value),src:C,crop:null,naturalWidth:void 0,naturalHeight:void 0}:r.value=C,i.value=!1}function A(){if(a.allowUploadFromDevice){u();return}h.value=void 0,i.value=!0}O6(()=>a.field,A);function v(C){a.imageLibraries.length===0&&a.allowUploadFromDevice&&(u(),C.stopImmediatePropagation(),C.stopPropagation(),s.nextTick(()=>{i.value=!1}))}return(C,w)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["image-field",{["layout-"+e.layout]:!0}])},[s.createVNode(_u,{show:i.value,"onUpdate:show":w[2]||(w[2]=y=>i.value=y),type:"layer",trigger:"click",fullscreen:""},{title:s.withCtx(()=>[h.value?(s.openBlock(),s.createBlock(Et,{key:0,circle:"",tertiary:"",onClick:w[0]||(w[0]=y=>h.value=void 0)},{icon:s.withCtx(()=>[s.createVNode(ft,{size:"small"},{default:s.withCtx(()=>[s.createVNode(s.unref(q5))]),_:1})]),_:1})):s.createCommentVNode("",!0),w[3]||(w[3]=s.createElementVNode("h3",null,"Select image",-1))]),trigger:s.withCtx(()=>[s.createElementVNode("div",{class:s.normalizeClass(["image-preview",{"single-button-height":f.value.length<=1}]),onClick:v},[n.value?(s.openBlock(),s.createElementBlock("img",{key:0,crossorigin:"anonymous",src:s.unref(t)(n.value),alt:e.uploadLabel},null,8,Zde)):(s.openBlock(),s.createBlock(ft,{key:1,class:"image-placeholder","aria-hidden":"true"},{default:s.withCtx(()=>[s.createVNode(s.unref(oc))]),_:1}))],2)]),content:s.withCtx(()=>[s.createVNode(WS,{"active-key":h.value,"onUpdate:activeKey":w[1]||(w[1]=y=>h.value=y),options:f.value,"image-libraries":e.imageLibraries,width:e.width,height:e.height,quality:e.quality,"convert-to":e.convertTo,bridge:e.bridge,field:e.field,onSelect:p},null,8,["active-key","options","image-libraries","width","height","quality","convert-to","bridge","field"])]),_:1},8,["show"]),e.layout!=="compact"?(s.openBlock(),s.createElementBlock("div",zde,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(f.value.slice(0,f.value.length>l1?l1-1:l1),y=>(s.openBlock(),s.createElementBlock(s.Fragment,null,[s.createVNode(Et,{onClick:x=>g(y.key)},{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(y.icon)))]),_:2},1024)]),default:s.withCtx(()=>[s.createTextVNode(" "+s.toDisplayString(y.label),1)]),_:2},1032,["onClick"]),s.createVNode(o1,{trigger:"click",options:d.value,onSelect:g,"mobile-layout":e.mobile,"aria-label":e.actionsLabel},{trigger:s.withCtx(()=>[f.value.length>l1?(s.openBlock(),s.createBlock(Et,{key:0},{icon:s.withCtx(()=>[s.createVNode(ft,{size:"small"},{default:s.withCtx(()=>[s.createVNode(s.unref(J7))]),_:1})]),default:s.withCtx(()=>[s.createTextVNode(" "+s.toDisplayString(e.actionsLabel),1)]),_:1})):s.createCommentVNode("",!0)]),_:1},8,["options","mobile-layout","aria-label"])],64))),256))])):s.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-5ba26440"]]),Tde={key:0,class:"title-wrapper"},Lde={key:0,class:"root-index"},Gde={key:1,class:"title"},Mde={type:"button",class:"help-trigger","aria-label":"More information"},i_=dt(s.defineComponent({__name:"Group",props:{layout:{},isRoot:{type:Boolean,default:!1},index:{default:0},fields:{},card:{type:Boolean},description:{},detailedDescription:{},bridge:{}},setup(e){return(t,r)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["group-field",{}])},[s.createVNode(t1,{transculent:!e.card,class:s.normalizeClass({"no-card":e.card===!1}),dividers:!1},{default:s.withCtx(()=>[e.description||e.detailedDescription?(s.openBlock(),s.createElementBlock("div",Tde,[e.isRoot?(s.openBlock(),s.createElementBlock("div",Lde,s.toDisplayString(e.index),1)):s.createCommentVNode("",!0),e.description?(s.openBlock(),s.createElementBlock("h4",Gde,s.toDisplayString(e.description),1)):s.createCommentVNode("",!0),e.detailedDescription?(s.openBlock(),s.createBlock(i1,{key:2,trigger:"hover"},{trigger:s.withCtx(()=>[s.createElementVNode("button",Mde,[s.createVNode(ft,{size:16},{default:s.withCtx(()=>[s.createVNode(s.unref(K7))]),_:1})])]),content:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(e.detailedDescription),1)]),_:1})):s.createCommentVNode("",!0)])):s.createCommentVNode("",!0),s.createVNode(iR,{fields:e.fields,bridge:e.bridge,layout:e.layout,"is-root":!1},null,8,["fields","bridge","layout"])]),_:1},8,["transculent","class"])]))}}),[["__scopeId","data-v-6023598b"]]),Ode={class:"text-field"},Qde="calc(2*1.2em + 5px * 2)",o_=dt(s.defineComponent({__name:"Text",props:s.mergeModels({maxLength:{},maxLines:{},maxLineLength:{},showWordCount:{type:Boolean},clearable:{type:Boolean},multiline:{type:Boolean},uppercase:{type:Boolean},placeholder:{},richtext:{},bridge:{},maxHeight:{},labelId:{},minWidth:{},maxWidth:{}},{modelValue:{type:[String,Number,Boolean,Array],required:!1,default:"Hello world"},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=s.useModel(e,"modelValue");function r(i){t.value=i}const n=e,a=s.computed(()=>!n.maxHeight||n.maxHeight===Qde?void 0:n.maxHeight);return(i,o)=>(s.openBlock(),s.createElementBlock("div",Ode,[s.createVNode(rl,{type:e.multiline?"textarea":"text","model-value":t.value,"onUpdate:modelValue":r,"show-word-count":e.showWordCount,clearable:e.clearable,"max-length":e.maxLength??1/0,"max-line-length":e.maxLineLength??1/0,"max-lines":e.maxLines??1/0,placeholder:e.placeholder||"Text Field...",resizeable:!1,richtext:e.richtext.enabled?e.richtext:void 0,"max-height":a.value,"max-rows":20,"aria-labelledby":e.labelId,ring:"",bordered:""},null,8,["type","model-value","show-word-count","clearable","max-length","max-line-length","max-lines","placeholder","richtext","max-height","aria-labelledby"])]))}}),[["__scopeId","data-v-ceacb5b8"]]),Wde={class:"field-image-adjust"},s_=dt(s.defineComponent({__name:"ImageAdjust",props:s.mergeModels({minX:{},maxX:{},minY:{},maxY:{},minScale:{},maxScale:{},type:{},aspectRatio:{},bridge:{}},{image:{required:!0},imageModifiers:{},adjust:{required:!0},adjustModifiers:{}}),emits:["update:image","update:adjust"],setup(e){s.inject(Yh);const t=s.useModel(e,"image"),r=s.useModel(e,"adjust"),n=e,a=s.ref();return s.watchEffect(async()=>{t.value&&(a.value=await fd(t.value))}),s.computed(()=>Cp(r.value,a.value.width,a.value.height,n.aspectRatio)),(i,o)=>(s.openBlock(),s.createElementBlock("div",Wde,[s.createVNode(Et,null,{icon:s.withCtx(()=>[s.createVNode(ft,null,{default:s.withCtx(()=>[s.createVNode(s.unref(ny))]),_:1})]),default:s.withCtx(()=>[o[0]||(o[0]=s.createTextVNode(" Crop ",-1))]),_:1})]))}}),[["__scopeId","data-v-9e4c42cb"]]),Pde=["aria-labelledby"],Yde=["aria-checked","aria-label","tabindex","onClick"],Vde={class:"image-card"},jde={class:"label-image-proxy"},Ude=["src"],$de={key:0,class:"label"},l_=dt(s.defineComponent({__name:"Select",props:s.mergeModels({options:{},layout:{},cardSize:{},showLabels:{type:Boolean},labelId:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=e,r=s.useModel(e,"modelValue"),n=rc(),a=s.computed(()=>t.layout==="grid"||t.layout==="cards");function i(h){r.value=h.value}const o=s.ref([]);function c(h,d){o.value[d]=h}const l=s.computed(()=>{const h=t.options.findIndex(d=>d.value===r.value);return h>=0?h:0});function u(h){var A;const d=t.options.length;if(d===0)return;const g=o.value.findIndex(v=>v===document.activeElement);let p;switch(h.key){case"ArrowRight":case"ArrowDown":p=g<0?0:(g+1)%d;break;case"ArrowLeft":case"ArrowUp":p=g<0?d-1:(g-1+d)%d;break;case"Home":p=0;break;case"End":p=d-1;break;case"Enter":case" ":g>=0&&(h.preventDefault(),i(t.options[g]));return;default:return}h.preventDefault(),(A=o.value[p])==null||A.focus(),i(t.options[p])}const f=s.computed(()=>t.options.map(h=>({label:h.label,value:h.value,icon:h.image?()=>s.h(ft,{},()=>s.h("img",{src:h.image,style:{"object-fit":"cover",width:"24px",height:"24px"}})):void 0})));return(h,d)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["select-field",{"grid-layout":a.value,"horizontal-scroll":e.layout==="cards"}])},[a.value?(s.openBlock(),s.createElementBlock("div",{key:0,class:s.normalizeClass(["select-grid",{["size-"+e.cardSize]:!0,"horizontal-scroll":e.layout==="cards"}]),role:"radiogroup","aria-labelledby":e.labelId,onKeydown:u},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.options,(g,p)=>(s.openBlock(),s.createElementBlock("div",{key:p,ref_for:!0,ref:A=>c(A,p),class:s.normalizeClass(["option-item",{active:g.value===r.value}]),role:"radio","aria-checked":g.value===r.value?"true":"false","aria-label":g.label,tabindex:p===l.value?0:-1,onClick:A=>i(g)},[s.createElementVNode("div",Vde,[s.createElementVNode("div",jde,[s.createElementVNode("span",null,s.toDisplayString(g.label),1)]),g.image?(s.openBlock(),s.createElementBlock("img",{key:0,src:s.unref(n)(g.image)},null,8,Ude)):s.createCommentVNode("",!0)]),e.showLabels?(s.openBlock(),s.createElementBlock("div",$de,s.toDisplayString(g.label),1)):s.createCommentVNode("",!0)],10,Yde))),128))],42,Pde)):(s.openBlock(),s.createBlock(ai,{key:1,modelValue:r.value,"onUpdate:modelValue":d[0]||(d[0]=g=>r.value=g),options:f.value,"aria-labelledby":e.labelId,bordered:""},null,8,["modelValue","options","aria-labelledby"]))],2))}}),[["__scopeId","data-v-9bc0926e"]]);function c_(e){const t=s.computed(()=>{const n=s.toValue(e.disabled)??!1,a=s.toValue(e.labelledBy);return{role:e.role,tabindex:n?-1:0,"aria-checked":s.toValue(e.checked)?"true":"false","aria-disabled":n?"true":void 0,"aria-labelledby":a,"aria-label":a?void 0:s.toValue(e.label)}});function r(n){s.toValue(e.disabled)||(n.key===" "||n.key==="Enter")&&(n.preventDefault(),e.toggle())}return{attrs:t,onKeydown:r}}const Nu=dt(s.defineComponent({__name:"BxCheckbox",props:s.mergeModels({label:{},ariaLabel:{},ariaLabelledby:{},size:{default:"medium"},disabled:{type:Boolean,default:!1},secondary:{type:Boolean,default:!1}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=e,r=s.useModel(e,"modelValue"),n=()=>{t.disabled||(r.value=!r.value)},{attrs:a,onKeydown:i}=c_({role:"checkbox",checked:()=>r.value,disabled:()=>t.disabled,label:()=>t.ariaLabel??t.label,labelledBy:()=>t.ariaLabelledby,toggle:n});return(o,c)=>(s.openBlock(),s.createElementBlock("div",s.mergeProps({class:["bx-checkbox",{checked:r.value,disabled:e.disabled,secondary:e.secondary}]},s.unref(a),{onClick:n,onKeydown:c[0]||(c[0]=(...l)=>s.unref(i)&&s.unref(i)(...l))}),[...c[1]||(c[1]=[s.createElementVNode("div",{class:"checkbox-box"},[s.createElementVNode("div",{class:"checkbox-symbol"},[s.createElementVNode("svg",{viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",class:"check-icon","aria-hidden":"true"},[s.createElementVNode("path",{d:"M12.1875 3.75L5.625 11.25L2.8125 8.4375",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})])])],-1)])],16))}}),[["__scopeId","data-v-6cd2378e"]]),Hde={class:"label"},Xde=["id"],u_=dt(s.defineComponent({__name:"Checkbox",props:s.mergeModels({description:{},detailedDescription:{},label:{},mobile:{type:Boolean,default:!1},secondary:{type:Boolean,default:!1},labelId:{}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=mi("bx-checkbox-label"),r=s.useModel(e,"modelValue");return(n,a)=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["checkbox-field",{mobile:e.mobile}])},[s.createVNode(Nu,{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=i=>r.value=i),size:"medium","aria-labelledby":e.label?s.unref(t):e.labelId},null,8,["modelValue","aria-labelledby"]),e.label?(s.openBlock(),s.createElementBlock("div",{key:0,class:"checkbox-label",onClick:a[1]||(a[1]=i=>r.value=!r.value)},[s.createElementVNode("div",Hde,[s.createElementVNode("span",{id:s.unref(t)},s.toDisplayString(e.label),9,Xde)])])):s.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-8852852c"]]),Jde=s.defineComponent({__name:"CollectionEntryFields",props:{bridge:{},fields:{},layout:{},data:{}},emits:["update:data"],setup(e,{emit:t}){const r=e,n=t,a=s.ref(r.data);return s.watch(()=>r.data,i=>{i!==a.value&&(a.value=i)}),s.provide("data",a),s.watch(a,()=>{n("update:data",a.value)},{deep:!0}),(i,o)=>(s.openBlock(),s.createBlock(i_,{bridge:e.bridge,fields:e.fields,card:!1,layout:e.layout},null,8,["bridge","fields","layout"]))}});/**!
|
|
171
171
|
* Sortable 1.15.7
|
|
172
172
|
* @author RubaXa <trash@rubaxa.org>
|
|
173
173
|
* @author owenm <owen23355@gmail.com>
|