formeo 4.1.2 → 4.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,13 +1,13 @@
1
1
 
2
2
  /**
3
3
  formeo - https://formeo.io
4
- Version: 4.1.1
4
+ Version: 4.1.3
5
5
  Author: Draggable https://draggable.io
6
6
  */
7
7
 
8
8
  (function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const p of document.querySelectorAll('link[rel="modulepreload"]'))n(p);new MutationObserver(p=>{for(const d of p)if(d.type==="childList")for(const g of d.addedNodes)g.tagName==="LINK"&&g.rel==="modulepreload"&&n(g)}).observe(document,{childList:!0,subtree:!0});function t(p){const d={};return p.integrity&&(d.integrity=p.integrity),p.referrerPolicy&&(d.referrerPolicy=p.referrerPolicy),p.crossOrigin==="use-credentials"?d.credentials="include":p.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function n(p){if(p.ep)return;p.ep=!0;const d=t(p);fetch(p.href,d)}})();async function nd(c){try{const e=await fetch(c);if(!e.ok)throw new Error(`HTTP error! status: ${e.status}`);const t=c.endsWith(".lang")?"text":"json";return await e[t]()}catch(e){throw console.error("There has been a problem with your fetch operation:",e),e}}const ra={extension:".lang",location:"assets/lang/",langs:["en-US"],locale:"en-US",override:{}};class Gt{constructor(e=ra){this.langs=Object.create(null),this.loaded=[],this.processConfig(e)}processConfig(e){const{location:t,...n}={...ra,...e},p=t.replace(/\/?$/,"/");this.config={location:p,...n};const{override:d,preloaded:g={}}=this.config,m=Object.entries(this.langs).concat(Object.entries(d||g));this.langs=m.reduce((l,[f,r])=>(l[f]=this.applyLanguage(f,r),l),{}),this.locale=this.config.locale||this.config.langs[0]}init(e){return this.processConfig({...this.config,...e}),this.setCurrent(this.locale)}addLanguage(e,t={}){t=typeof t=="string"?Gt.processFile(t):t,this.applyLanguage(e,t),this.config.langs.push("locale")}getValue(e,t=this.locale){var n;return((n=this.langs[t])==null?void 0:n[e])||this.getFallbackValue(e)}getFallbackValue(e){const t=Object.values(this.langs).find(n=>n[e]);return t?.[e]}makeSafe(e){const t={"{":"\\{","}":"\\}","|":"\\|"};return e=e.replace(/[{}|]/g,n=>t[n]),new RegExp(e,"g")}put(e,t){return this.current[e]=t,t}get(e,t){const n=this;let p=this.getValue(e);if(!p)return;const d=p.match(/\{[^}]+?\}/g);if(t&&d)if(typeof t=="object")for(const g of d){const m=g.substring(1,g.length-1);p=p.replace(n.makeSafe(g),t[m]||"")}else p=p.replace(/\{[^}]+?\}/g,t);return p}static processFile(e){return Gt.fromFile(e.replace(/\n\n/g,`
9
9
  `))}static fromFile(e){const t=e.split(`
10
- `),n={};for(let p,d=0;d<t.length;d++)p=/^(.+?) *?= *?([^\n]+)/.exec(t[d]),p&&(n[p[1]]=p[2].replace(/(^\s+|\s+$)/g,""));return n}loadLang(e,t=!0){const n=this;return new Promise(function(p,d){if(n.loaded.indexOf(e)!==-1&&t)return n.applyLanguage(n.langs[e]),p(n.langs[e]);{const g=[n.config.location,e,n.config.extension].join("");return nd(g).then(m=>{const l=Gt.processFile(m);return n.applyLanguage(e,l),n.loaded.push(e),p(n.langs[e])}).catch(m=>{console.error(m);const l=n.applyLanguage(e);p(l)})}})}applyLanguage(e,t={}){const n=this.config.override[e]||{},p=this.langs[e]||{};return this.langs[e]={...p,...t,...n},this.langs[e]}get getLangs(){return this.config.langs}async setCurrent(e="en-US"){return await this.loadLang(e),this.locale=e,this.current=this.langs[e],this.current}}const Q=new Gt;(function(){try{if(typeof document<"u"){var c=document.createElement("style");c.appendChild(document.createTextNode('._3x4ZIcu-{position:absolute;background:#1f2937;color:#fff;padding:.75rem;border-radius:.375rem;max-width:200px;z-index:50;visibility:hidden;opacity:0;transition:opacity .2s;pointer-events:none;left:0;top:0}._3x4ZIcu-.JIt36hCJ{visibility:visible;opacity:1;pointer-events:all}._3x4ZIcu-:before{content:"";position:absolute;width:0;height:0;border:6px solid transparent}._3x4ZIcu-[data-position=top]:before{border-top-color:#1f2937;bottom:-12px;left:50%;transform:translate(-50%)}._3x4ZIcu-[data-position=bottom]:before{border-bottom-color:#1f2937;top:-12px;left:50%;transform:translate(-50%)}._3x4ZIcu-[data-position=left]:before{border-left-color:#1f2937;right:-12px;top:50%;transform:translateY(-50%)}._3x4ZIcu-[data-position=right]:before{border-right-color:#1f2937;left:-12px;top:50%;transform:translateY(-50%)}._3x4ZIcu-[data-position=top-left]:before{border-top-color:#1f2937;bottom:-12px;left:12px;transform:none}._3x4ZIcu-[data-position=top-right]:before{border-top-color:#1f2937;bottom:-12px;right:12px;left:auto;transform:none}._3x4ZIcu-[data-position=bottom-left]:before{border-bottom-color:#1f2937;top:-12px;left:12px;transform:none}._3x4ZIcu-[data-position=bottom-right]:before{border-bottom-color:#1f2937;top:-12px;right:12px;left:auto;transform:none}')),document.head.appendChild(c)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();var id=Object.defineProperty,rd=(c,e,t)=>e in c?id(c,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):c[e]=t,Ve=(c,e,t)=>rd(c,typeof e!="symbol"?e+"":e,t);const od="_3x4ZIcu-",sd="JIt36hCJ",Dt={tooltip:od,visible:sd},ad={triggerName:"tooltip"};class ku{constructor(e=ad){Ve(this,"triggerName"),Ve(this,"tooltip"),Ve(this,"activeTriggerType",null),Ve(this,"spacing",12),Ve(this,"handleClick",t=>{const n=this.triggerName,p=t.target.closest(`[${n}][${n}-type="click"]`);if(p)if(this.isVisible())this.hide();else{const d=p.getAttribute(`${n}`);this.show(p,d),this.activeTriggerType="click"}else this.hide()}),Ve(this,"handleMouseOver",t=>{const n=this.triggerName,p=t.target.closest(`[${n}]`);if(this.activeTriggerType!=="click"&&p?.getAttribute(`${n}-type`)!=="click"){const d=p?.getAttribute(`${n}`);d&&(this.show(p,d),this.activeTriggerType="hover")}}),Ve(this,"handleMouseOut",t=>{const n=this.triggerName,p=t.target.closest(`[${n}]`);this.activeTriggerType!=="click"&&p?.getAttribute(`${n}-type`)!=="click"&&this.hide()}),Ve(this,"handleResize",()=>{this.isVisible()&&this.hide()}),Ve(this,"handleScroll",()=>{this.isVisible()&&this.hide()}),this.triggerName=`data-${e.triggerName}`,this.tooltip=document.createElement("div"),this.tooltip.className=`d-tooltip ${Dt.tooltip}`,document.body.appendChild(this.tooltip),this.setupEventListeners()}setupEventListeners(){document.addEventListener("mouseover",this.handleMouseOver),document.addEventListener("mouseout",this.handleMouseOut),document.addEventListener("touchstart",this.handleMouseOver),document.addEventListener("touchend",this.handleMouseOut),document.addEventListener("click",this.handleClick),window.addEventListener("resize",this.handleResize),window.addEventListener("scroll",this.handleScroll,!0)}isVisible(){return this.tooltip.classList.contains(Dt.visible)}calculatePosition(e){const t=e.getBoundingClientRect(),n=this.tooltip.getBoundingClientRect(),p=[{name:"top",x:t.left+(t.width-n.width)/2,y:t.top-n.height-this.spacing},{name:"bottom",x:t.left+(t.width-n.width)/2,y:t.bottom+this.spacing},{name:"left",x:t.left-n.width-this.spacing,y:t.top+(t.height-n.height)/2},{name:"right",x:t.right+this.spacing,y:t.top+(t.height-n.height)/2},{name:"top-left",x:t.left,y:t.top-n.height-this.spacing},{name:"top-right",x:t.right-n.width,y:t.top-n.height-this.spacing},{name:"bottom-left",x:t.left,y:t.bottom+this.spacing},{name:"bottom-right",x:t.right-n.width,y:t.bottom+this.spacing}];return p.find(d=>this.fitsInViewport(d,n))||p[0]}fitsInViewport(e,t){return e.x>=0&&e.y>=0&&e.x+t.width<=window.innerWidth&&e.y+t.height<=window.innerHeight?[[e.x,e.y],[e.x+t.width,e.y],[e.x,e.y+t.height],[e.x+t.width,e.y+t.height],[e.x+t.width/2,e.y+t.height/2]].flatMap(([m,l])=>Array.from(document.elementsFromPoint(m,l))).filter(m=>{if(this.tooltip.contains(m)||m===this.tooltip||m.classList.contains(Dt.tooltip)||getComputedStyle(m).pointerEvents==="none")return!1}).length===0:!1}show(e,t){this.tooltip.innerHTML=t??"",this.tooltip.classList.add(Dt.visible);const n=this.calculatePosition(e);this.tooltip.style.left=`${n.x}px`,this.tooltip.style.top=`${n.y}px`,this.tooltip.dataset.position=n.name}hide(){this.tooltip.classList.remove(Dt.visible),this.activeTriggerType=null}destroy(){document.removeEventListener("mouseover",this.handleMouseOver),document.removeEventListener("mouseout",this.handleMouseOut),document.removeEventListener("touchstart",this.handleMouseOver),document.removeEventListener("touchend",this.handleMouseOut),document.removeEventListener("click",this.handleClick),window.removeEventListener("resize",this.handleResize),window.removeEventListener("scroll",this.handleScroll,!0),this.tooltip.remove()}}window!==void 0&&(window.SmartTooltip=ku);const ld="formeo",cd="4.1.1",Iu={name:ld,version:cd};var sn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Lt(c){return c&&c.__esModule&&Object.prototype.hasOwnProperty.call(c,"default")?c.default:c}var Jn,oa;function ud(){if(oa)return Jn;oa=1;function c(){this.__data__=[],this.size=0}return Jn=c,Jn}var ei,sa;function tn(){if(sa)return ei;sa=1;function c(e,t){return e===t||e!==e&&t!==t}return ei=c,ei}var ti,aa;function Dn(){if(aa)return ti;aa=1;var c=tn();function e(t,n){for(var p=t.length;p--;)if(c(t[p][0],n))return p;return-1}return ti=e,ti}var ni,la;function hd(){if(la)return ni;la=1;var c=Dn(),e=Array.prototype,t=e.splice;function n(p){var d=this.__data__,g=c(d,p);if(g<0)return!1;var m=d.length-1;return g==m?d.pop():t.call(d,g,1),--this.size,!0}return ni=n,ni}var ii,ca;function dd(){if(ca)return ii;ca=1;var c=Dn();function e(t){var n=this.__data__,p=c(n,t);return p<0?void 0:n[p][1]}return ii=e,ii}var ri,ua;function fd(){if(ua)return ri;ua=1;var c=Dn();function e(t){return c(this.__data__,t)>-1}return ri=e,ri}var oi,ha;function pd(){if(ha)return oi;ha=1;var c=Dn();function e(t,n){var p=this.__data__,d=c(p,t);return d<0?(++this.size,p.push([t,n])):p[d][1]=n,this}return oi=e,oi}var si,da;function Nn(){if(da)return si;da=1;var c=ud(),e=hd(),t=dd(),n=fd(),p=pd();function d(g){var m=-1,l=g==null?0:g.length;for(this.clear();++m<l;){var f=g[m];this.set(f[0],f[1])}}return d.prototype.clear=c,d.prototype.delete=e,d.prototype.get=t,d.prototype.has=n,d.prototype.set=p,si=d,si}var ai,fa;function gd(){if(fa)return ai;fa=1;var c=Nn();function e(){this.__data__=new c,this.size=0}return ai=e,ai}var li,pa;function md(){if(pa)return li;pa=1;function c(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}return li=c,li}var ci,ga;function vd(){if(ga)return ci;ga=1;function c(e){return this.__data__.get(e)}return ci=c,ci}var ui,ma;function yd(){if(ma)return ui;ma=1;function c(e){return this.__data__.has(e)}return ui=c,ui}var hi,va;function Ou(){if(va)return hi;va=1;var c=typeof sn=="object"&&sn&&sn.Object===Object&&sn;return hi=c,hi}var di,ya;function Ge(){if(ya)return di;ya=1;var c=Ou(),e=typeof self=="object"&&self&&self.Object===Object&&self,t=c||e||Function("return this")();return di=t,di}var fi,ba;function Fn(){if(ba)return fi;ba=1;var c=Ge(),e=c.Symbol;return fi=e,fi}var pi,wa;function bd(){if(wa)return pi;wa=1;var c=Fn(),e=Object.prototype,t=e.hasOwnProperty,n=e.toString,p=c?c.toStringTag:void 0;function d(g){var m=t.call(g,p),l=g[p];try{g[p]=void 0;var f=!0}catch{}var r=n.call(g);return f&&(m?g[p]=l:delete g[p]),r}return pi=d,pi}var gi,Ca;function wd(){if(Ca)return gi;Ca=1;var c=Object.prototype,e=c.toString;function t(n){return e.call(n)}return gi=t,gi}var mi,Sa;function Rt(){if(Sa)return mi;Sa=1;var c=Fn(),e=bd(),t=wd(),n="[object Null]",p="[object Undefined]",d=c?c.toStringTag:void 0;function g(m){return m==null?m===void 0?p:n:d&&d in Object(m)?e(m):t(m)}return mi=g,mi}var vi,Aa;function lt(){if(Aa)return vi;Aa=1;function c(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}return vi=c,vi}var yi,$a;function xs(){if($a)return yi;$a=1;var c=Rt(),e=lt(),t="[object AsyncFunction]",n="[object Function]",p="[object GeneratorFunction]",d="[object Proxy]";function g(m){if(!e(m))return!1;var l=c(m);return l==n||l==p||l==t||l==d}return yi=g,yi}var bi,Ea;function Cd(){if(Ea)return bi;Ea=1;var c=Ge(),e=c["__core-js_shared__"];return bi=e,bi}var wi,Ta;function Sd(){if(Ta)return wi;Ta=1;var c=Cd(),e=(function(){var n=/[^.]+$/.exec(c&&c.keys&&c.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""})();function t(n){return!!e&&e in n}return wi=t,wi}var Ci,Ma;function Du(){if(Ma)return Ci;Ma=1;var c=Function.prototype,e=c.toString;function t(n){if(n!=null){try{return e.call(n)}catch{}try{return n+""}catch{}}return""}return Ci=t,Ci}var Si,_a;function Ad(){if(_a)return Si;_a=1;var c=xs(),e=Sd(),t=lt(),n=Du(),p=/[\\^$.*+?()[\]{}|]/g,d=/^\[object .+?Constructor\]$/,g=Function.prototype,m=Object.prototype,l=g.toString,f=m.hasOwnProperty,r=RegExp("^"+l.call(f).replace(p,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function o(s){if(!t(s)||e(s))return!1;var a=c(s)?r:d;return a.test(n(s))}return Si=o,Si}var Ai,xa;function $d(){if(xa)return Ai;xa=1;function c(e,t){return e?.[t]}return Ai=c,Ai}var $i,La;function vt(){if(La)return $i;La=1;var c=Ad(),e=$d();function t(n,p){var d=e(n,p);return c(d)?d:void 0}return $i=t,$i}var Ei,Ra;function Ls(){if(Ra)return Ei;Ra=1;var c=vt(),e=Ge(),t=c(e,"Map");return Ei=t,Ei}var Ti,ka;function Pn(){if(ka)return Ti;ka=1;var c=vt(),e=c(Object,"create");return Ti=e,Ti}var Mi,Ia;function Ed(){if(Ia)return Mi;Ia=1;var c=Pn();function e(){this.__data__=c?c(null):{},this.size=0}return Mi=e,Mi}var _i,Oa;function Td(){if(Oa)return _i;Oa=1;function c(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}return _i=c,_i}var xi,Da;function Md(){if(Da)return xi;Da=1;var c=Pn(),e="__lodash_hash_undefined__",t=Object.prototype,n=t.hasOwnProperty;function p(d){var g=this.__data__;if(c){var m=g[d];return m===e?void 0:m}return n.call(g,d)?g[d]:void 0}return xi=p,xi}var Li,Na;function _d(){if(Na)return Li;Na=1;var c=Pn(),e=Object.prototype,t=e.hasOwnProperty;function n(p){var d=this.__data__;return c?d[p]!==void 0:t.call(d,p)}return Li=n,Li}var Ri,Fa;function xd(){if(Fa)return Ri;Fa=1;var c=Pn(),e="__lodash_hash_undefined__";function t(n,p){var d=this.__data__;return this.size+=this.has(n)?0:1,d[n]=c&&p===void 0?e:p,this}return Ri=t,Ri}var ki,Pa;function Ld(){if(Pa)return ki;Pa=1;var c=Ed(),e=Td(),t=Md(),n=_d(),p=xd();function d(g){var m=-1,l=g==null?0:g.length;for(this.clear();++m<l;){var f=g[m];this.set(f[0],f[1])}}return d.prototype.clear=c,d.prototype.delete=e,d.prototype.get=t,d.prototype.has=n,d.prototype.set=p,ki=d,ki}var Ii,Wa;function Rd(){if(Wa)return Ii;Wa=1;var c=Ld(),e=Nn(),t=Ls();function n(){this.size=0,this.__data__={hash:new c,map:new(t||e),string:new c}}return Ii=n,Ii}var Oi,Ba;function kd(){if(Ba)return Oi;Ba=1;function c(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}return Oi=c,Oi}var Di,Ha;function Wn(){if(Ha)return Di;Ha=1;var c=kd();function e(t,n){var p=t.__data__;return c(n)?p[typeof n=="string"?"string":"hash"]:p.map}return Di=e,Di}var Ni,za;function Id(){if(za)return Ni;za=1;var c=Wn();function e(t){var n=c(this,t).delete(t);return this.size-=n?1:0,n}return Ni=e,Ni}var Fi,ja;function Od(){if(ja)return Fi;ja=1;var c=Wn();function e(t){return c(this,t).get(t)}return Fi=e,Fi}var Pi,Ua;function Dd(){if(Ua)return Pi;Ua=1;var c=Wn();function e(t){return c(this,t).has(t)}return Pi=e,Pi}var Wi,Ga;function Nd(){if(Ga)return Wi;Ga=1;var c=Wn();function e(t,n){var p=c(this,t),d=p.size;return p.set(t,n),this.size+=p.size==d?0:1,this}return Wi=e,Wi}var Bi,Va;function Rs(){if(Va)return Bi;Va=1;var c=Rd(),e=Id(),t=Od(),n=Dd(),p=Nd();function d(g){var m=-1,l=g==null?0:g.length;for(this.clear();++m<l;){var f=g[m];this.set(f[0],f[1])}}return d.prototype.clear=c,d.prototype.delete=e,d.prototype.get=t,d.prototype.has=n,d.prototype.set=p,Bi=d,Bi}var Hi,Ka;function Fd(){if(Ka)return Hi;Ka=1;var c=Nn(),e=Ls(),t=Rs(),n=200;function p(d,g){var m=this.__data__;if(m instanceof c){var l=m.__data__;if(!e||l.length<n-1)return l.push([d,g]),this.size=++m.size,this;m=this.__data__=new t(l)}return m.set(d,g),this.size=m.size,this}return Hi=p,Hi}var zi,qa;function Nu(){if(qa)return zi;qa=1;var c=Nn(),e=gd(),t=md(),n=vd(),p=yd(),d=Fd();function g(m){var l=this.__data__=new c(m);this.size=l.size}return g.prototype.clear=e,g.prototype.delete=t,g.prototype.get=n,g.prototype.has=p,g.prototype.set=d,zi=g,zi}var ji,Ya;function Fu(){if(Ya)return ji;Ya=1;var c=vt(),e=(function(){try{var t=c(Object,"defineProperty");return t({},"",{}),t}catch{}})();return ji=e,ji}var Ui,Xa;function ks(){if(Xa)return Ui;Xa=1;var c=Fu();function e(t,n,p){n=="__proto__"&&c?c(t,n,{configurable:!0,enumerable:!0,value:p,writable:!0}):t[n]=p}return Ui=e,Ui}var Gi,Qa;function Pu(){if(Qa)return Gi;Qa=1;var c=ks(),e=tn();function t(n,p,d){(d!==void 0&&!e(n[p],d)||d===void 0&&!(p in n))&&c(n,p,d)}return Gi=t,Gi}var Vi,Za;function Pd(){if(Za)return Vi;Za=1;function c(e){return function(t,n,p){for(var d=-1,g=Object(t),m=p(t),l=m.length;l--;){var f=m[e?l:++d];if(n(g[f],f,g)===!1)break}return t}}return Vi=c,Vi}var Ki,Ja;function Wd(){if(Ja)return Ki;Ja=1;var c=Pd(),e=c();return Ki=e,Ki}var Wt={exports:{}};Wt.exports;var el;function Bd(){return el||(el=1,(function(c,e){var t=Ge(),n=e&&!e.nodeType&&e,p=n&&!0&&c&&!c.nodeType&&c,d=p&&p.exports===n,g=d?t.Buffer:void 0,m=g?g.allocUnsafe:void 0;function l(f,r){if(r)return f.slice();var o=f.length,s=m?m(o):new f.constructor(o);return f.copy(s),s}c.exports=l})(Wt,Wt.exports)),Wt.exports}var qi,tl;function Wu(){if(tl)return qi;tl=1;var c=Ge(),e=c.Uint8Array;return qi=e,qi}var Yi,nl;function Hd(){if(nl)return Yi;nl=1;var c=Wu();function e(t){var n=new t.constructor(t.byteLength);return new c(n).set(new c(t)),n}return Yi=e,Yi}var Xi,il;function zd(){if(il)return Xi;il=1;var c=Hd();function e(t,n){var p=n?c(t.buffer):t.buffer;return new t.constructor(p,t.byteOffset,t.length)}return Xi=e,Xi}var Qi,rl;function jd(){if(rl)return Qi;rl=1;function c(e,t){var n=-1,p=e.length;for(t||(t=Array(p));++n<p;)t[n]=e[n];return t}return Qi=c,Qi}var Zi,ol;function Ud(){if(ol)return Zi;ol=1;var c=lt(),e=Object.create,t=(function(){function n(){}return function(p){if(!c(p))return{};if(e)return e(p);n.prototype=p;var d=new n;return n.prototype=void 0,d}})();return Zi=t,Zi}var Ji,sl;function Bu(){if(sl)return Ji;sl=1;function c(e,t){return function(n){return e(t(n))}}return Ji=c,Ji}var er,al;function Hu(){if(al)return er;al=1;var c=Bu(),e=c(Object.getPrototypeOf,Object);return er=e,er}var tr,ll;function Is(){if(ll)return tr;ll=1;var c=Object.prototype;function e(t){var n=t&&t.constructor,p=typeof n=="function"&&n.prototype||c;return t===p}return tr=e,tr}var nr,cl;function Gd(){if(cl)return nr;cl=1;var c=Ud(),e=Hu(),t=Is();function n(p){return typeof p.constructor=="function"&&!t(p)?c(e(p)):{}}return nr=n,nr}var ir,ul;function yt(){if(ul)return ir;ul=1;function c(e){return e!=null&&typeof e=="object"}return ir=c,ir}var rr,hl;function Vd(){if(hl)return rr;hl=1;var c=Rt(),e=yt(),t="[object Arguments]";function n(p){return e(p)&&c(p)==t}return rr=n,rr}var or,dl;function zu(){if(dl)return or;dl=1;var c=Vd(),e=yt(),t=Object.prototype,n=t.hasOwnProperty,p=t.propertyIsEnumerable,d=c((function(){return arguments})())?c:function(g){return e(g)&&n.call(g,"callee")&&!p.call(g,"callee")};return or=d,or}var sr,fl;function bt(){if(fl)return sr;fl=1;var c=Array.isArray;return sr=c,sr}var ar,pl;function ju(){if(pl)return ar;pl=1;var c=9007199254740991;function e(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=c}return ar=e,ar}var lr,gl;function Bn(){if(gl)return lr;gl=1;var c=xs(),e=ju();function t(n){return n!=null&&e(n.length)&&!c(n)}return lr=t,lr}var cr,ml;function Kd(){if(ml)return cr;ml=1;var c=Bn(),e=yt();function t(n){return e(n)&&c(n)}return cr=t,cr}var Bt={exports:{}},ur,vl;function qd(){if(vl)return ur;vl=1;function c(){return!1}return ur=c,ur}Bt.exports;var yl;function Os(){return yl||(yl=1,(function(c,e){var t=Ge(),n=qd(),p=e&&!e.nodeType&&e,d=p&&!0&&c&&!c.nodeType&&c,g=d&&d.exports===p,m=g?t.Buffer:void 0,l=m?m.isBuffer:void 0,f=l||n;c.exports=f})(Bt,Bt.exports)),Bt.exports}var hr,bl;function Yd(){if(bl)return hr;bl=1;var c=Rt(),e=Hu(),t=yt(),n="[object Object]",p=Function.prototype,d=Object.prototype,g=p.toString,m=d.hasOwnProperty,l=g.call(Object);function f(r){if(!t(r)||c(r)!=n)return!1;var o=e(r);if(o===null)return!0;var s=m.call(o,"constructor")&&o.constructor;return typeof s=="function"&&s instanceof s&&g.call(s)==l}return hr=f,hr}var dr,wl;function Xd(){if(wl)return dr;wl=1;var c=Rt(),e=ju(),t=yt(),n="[object Arguments]",p="[object Array]",d="[object Boolean]",g="[object Date]",m="[object Error]",l="[object Function]",f="[object Map]",r="[object Number]",o="[object Object]",s="[object RegExp]",a="[object Set]",i="[object String]",u="[object WeakMap]",h="[object ArrayBuffer]",y="[object DataView]",b="[object Float32Array]",T="[object Float64Array]",$="[object Int8Array]",A="[object Int16Array]",S="[object Int32Array]",M="[object Uint8Array]",R="[object Uint8ClampedArray]",L="[object Uint16Array]",_="[object Uint32Array]",I={};I[b]=I[T]=I[$]=I[A]=I[S]=I[M]=I[R]=I[L]=I[_]=!0,I[n]=I[p]=I[h]=I[d]=I[y]=I[g]=I[m]=I[l]=I[f]=I[r]=I[o]=I[s]=I[a]=I[i]=I[u]=!1;function w(v){return t(v)&&e(v.length)&&!!I[c(v)]}return dr=w,dr}var fr,Cl;function Qd(){if(Cl)return fr;Cl=1;function c(e){return function(t){return e(t)}}return fr=c,fr}var Ht={exports:{}};Ht.exports;var Sl;function Zd(){return Sl||(Sl=1,(function(c,e){var t=Ou(),n=e&&!e.nodeType&&e,p=n&&!0&&c&&!c.nodeType&&c,d=p&&p.exports===n,g=d&&t.process,m=(function(){try{var l=p&&p.require&&p.require("util").types;return l||g&&g.binding&&g.binding("util")}catch{}})();c.exports=m})(Ht,Ht.exports)),Ht.exports}var pr,Al;function Ds(){if(Al)return pr;Al=1;var c=Xd(),e=Qd(),t=Zd(),n=t&&t.isTypedArray,p=n?e(n):c;return pr=p,pr}var gr,$l;function Uu(){if($l)return gr;$l=1;function c(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}return gr=c,gr}var mr,El;function Gu(){if(El)return mr;El=1;var c=ks(),e=tn(),t=Object.prototype,n=t.hasOwnProperty;function p(d,g,m){var l=d[g];(!(n.call(d,g)&&e(l,m))||m===void 0&&!(g in d))&&c(d,g,m)}return mr=p,mr}var vr,Tl;function Jd(){if(Tl)return vr;Tl=1;var c=Gu(),e=ks();function t(n,p,d,g){var m=!d;d||(d={});for(var l=-1,f=p.length;++l<f;){var r=p[l],o=g?g(d[r],n[r],r,d,n):void 0;o===void 0&&(o=n[r]),m?e(d,r,o):c(d,r,o)}return d}return vr=t,vr}var yr,Ml;function ef(){if(Ml)return yr;Ml=1;function c(e,t){for(var n=-1,p=Array(e);++n<e;)p[n]=t(n);return p}return yr=c,yr}var br,_l;function Ns(){if(_l)return br;_l=1;var c=9007199254740991,e=/^(?:0|[1-9]\d*)$/;function t(n,p){var d=typeof n;return p=p??c,!!p&&(d=="number"||d!="symbol"&&e.test(n))&&n>-1&&n%1==0&&n<p}return br=t,br}var wr,xl;function Vu(){if(xl)return wr;xl=1;var c=ef(),e=zu(),t=bt(),n=Os(),p=Ns(),d=Ds(),g=Object.prototype,m=g.hasOwnProperty;function l(f,r){var o=t(f),s=!o&&e(f),a=!o&&!s&&n(f),i=!o&&!s&&!a&&d(f),u=o||s||a||i,h=u?c(f.length,String):[],y=h.length;for(var b in f)(r||m.call(f,b))&&!(u&&(b=="length"||a&&(b=="offset"||b=="parent")||i&&(b=="buffer"||b=="byteLength"||b=="byteOffset")||p(b,y)))&&h.push(b);return h}return wr=l,wr}var Cr,Ll;function tf(){if(Ll)return Cr;Ll=1;function c(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}return Cr=c,Cr}var Sr,Rl;function nf(){if(Rl)return Sr;Rl=1;var c=lt(),e=Is(),t=tf(),n=Object.prototype,p=n.hasOwnProperty;function d(g){if(!c(g))return t(g);var m=e(g),l=[];for(var f in g)f=="constructor"&&(m||!p.call(g,f))||l.push(f);return l}return Sr=d,Sr}var Ar,kl;function Ku(){if(kl)return Ar;kl=1;var c=Vu(),e=nf(),t=Bn();function n(p){return t(p)?c(p,!0):e(p)}return Ar=n,Ar}var $r,Il;function rf(){if(Il)return $r;Il=1;var c=Jd(),e=Ku();function t(n){return c(n,e(n))}return $r=t,$r}var Er,Ol;function of(){if(Ol)return Er;Ol=1;var c=Pu(),e=Bd(),t=zd(),n=jd(),p=Gd(),d=zu(),g=bt(),m=Kd(),l=Os(),f=xs(),r=lt(),o=Yd(),s=Ds(),a=Uu(),i=rf();function u(h,y,b,T,$,A,S){var M=a(h,b),R=a(y,b),L=S.get(R);if(L){c(h,b,L);return}var _=A?A(M,R,b+"",h,y,S):void 0,I=_===void 0;if(I){var w=g(R),v=!w&&l(R),C=!w&&!v&&s(R);_=R,w||v||C?g(M)?_=M:m(M)?_=n(M):v?(I=!1,_=e(R,!0)):C?(I=!1,_=t(R,!0)):_=[]:o(R)||d(R)?(_=M,d(M)?_=i(M):(!r(M)||f(M))&&(_=p(R))):I=!1}I&&(S.set(R,_),$(_,R,T,A,S),S.delete(R)),c(h,b,_)}return Er=u,Er}var Tr,Dl;function sf(){if(Dl)return Tr;Dl=1;var c=Nu(),e=Pu(),t=Wd(),n=of(),p=lt(),d=Ku(),g=Uu();function m(l,f,r,o,s){l!==f&&t(f,function(a,i){if(s||(s=new c),p(a))n(l,f,i,r,m,o,s);else{var u=o?o(g(l,i),a,i+"",l,f,s):void 0;u===void 0&&(u=a),e(l,i,u)}},d)}return Tr=m,Tr}var Mr,Nl;function qu(){if(Nl)return Mr;Nl=1;function c(e){return e}return Mr=c,Mr}var _r,Fl;function af(){if(Fl)return _r;Fl=1;function c(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}return _r=c,_r}var xr,Pl;function lf(){if(Pl)return xr;Pl=1;var c=af(),e=Math.max;function t(n,p,d){return p=e(p===void 0?n.length-1:p,0),function(){for(var g=arguments,m=-1,l=e(g.length-p,0),f=Array(l);++m<l;)f[m]=g[p+m];m=-1;for(var r=Array(p+1);++m<p;)r[m]=g[m];return r[p]=d(f),c(n,this,r)}}return xr=t,xr}var Lr,Wl;function cf(){if(Wl)return Lr;Wl=1;function c(e){return function(){return e}}return Lr=c,Lr}var Rr,Bl;function uf(){if(Bl)return Rr;Bl=1;var c=cf(),e=Fu(),t=qu(),n=e?function(p,d){return e(p,"toString",{configurable:!0,enumerable:!1,value:c(d),writable:!0})}:t;return Rr=n,Rr}var kr,Hl;function hf(){if(Hl)return kr;Hl=1;var c=800,e=16,t=Date.now;function n(p){var d=0,g=0;return function(){var m=t(),l=e-(m-g);if(g=m,l>0){if(++d>=c)return arguments[0]}else d=0;return p.apply(void 0,arguments)}}return kr=n,kr}var Ir,zl;function df(){if(zl)return Ir;zl=1;var c=uf(),e=hf(),t=e(c);return Ir=t,Ir}var Or,jl;function ff(){if(jl)return Or;jl=1;var c=qu(),e=lf(),t=df();function n(p,d){return t(e(p,d,c),p+"")}return Or=n,Or}var Dr,Ul;function pf(){if(Ul)return Dr;Ul=1;var c=tn(),e=Bn(),t=Ns(),n=lt();function p(d,g,m){if(!n(m))return!1;var l=typeof g;return(l=="number"?e(m)&&t(g,m.length):l=="string"&&g in m)?c(m[g],d):!1}return Dr=p,Dr}var Nr,Gl;function gf(){if(Gl)return Nr;Gl=1;var c=ff(),e=pf();function t(n){return c(function(p,d){var g=-1,m=d.length,l=m>1?d[m-1]:void 0,f=m>2?d[2]:void 0;for(l=n.length>3&&typeof l=="function"?(m--,l):void 0,f&&e(d[0],d[1],f)&&(l=m<3?void 0:l,m=1),p=Object(p);++g<m;){var r=d[g];r&&n(p,r,g,l)}return p})}return Nr=t,Nr}var Fr,Vl;function mf(){if(Vl)return Fr;Vl=1;var c=sf(),e=gf(),t=e(function(n,p,d,g){c(n,p,d,g)});return Fr=t,Fr}var vf=mf();const yf=Lt(vf),bf=()=>crypto.randomUUID().slice(0,8),wf=()=>bf().slice(0,8),Kl=(c="",e)=>{if(!e)return console.warn("utils.match missing argument 2."),!1;const t=/[|\\{}()[\]^*$+?.]/g;let n=typeof e=="string"?[e]:e;n=n.map(d=>d==="*"?"":d.replace(t,"\\$&"));let p=!0;return n.length&&(p=!new RegExp(n.join("|"),"i").exec(c)),p},Cf=(c,e)=>{const t=c.indexOf(e);t!==-1&&c.splice(t,1)},Le=c=>{const e=c.className?.match(Of);return e&&kf[e[0]]},pt=c=>Array.from(new Set(c)),We=c=>c?.attrs?.id||c?.id||wf(),ze=(c,e)=>yf({},c,e,(n,p)=>{if(Array.isArray(n))return p!=null?pt(n.concat(p)):p;if(Array.isArray(p))return n!=null?pt(p.concat(n)):p}),Ye=c=>{let e;const t=c instanceof Promise;if(c===null||!(typeof c=="object")||t)return c;if(c instanceof Date)return e=new Date,e.setTime(c.getTime()),e;if(Array.isArray(c)){e=[];for(let p=0,d=c.length;p<d;p++)e[p]=Ye(c[p]);return e}if(c instanceof Object){e={};for(const p in c)Object.hasOwn(c,p)&&(e[p]=Ye(c[p]));return e}throw new Error("Unable to copy Object, type not supported.")},Pr=(c,e)=>c/e*100,ys=c=>`${c.toString()}%`,Yu=Object.create(null,{get:{value:c=>{const e=window.sessionStorage?.getItem(c);try{return JSON.parse(e)}catch{return e}}},set:{value:(c,e)=>{try{return window.sessionStorage?.setItem(c,JSON.stringify(e))}catch(t){console.error(t)}}}}),Pe=c=>/^(stage|row|column|field)s./.test(c),Sf=c=>_f.test(c);function Af(c,e=zs){let t=0;return function(...n){const p=Date.now();p-t>=e&&(t=p,c.apply(this,n))}}function An(c,e=gt){let t;return function(...n){t&&clearTimeout(t),t=setTimeout(()=>c.apply(this,n),e)}}function bs(c){return c}function ws(){}function Hn(c=Object.create(null)){if(typeof c=="string")try{return JSON.parse(c)}catch(e){return console.error("Invalid JSON string provided:",e),Object.create(null)}return c}const Vt=c=>c?Ye(Hn(c)):$n();function Xu(c,e,t,n={}){if(!e||!c[t][e])return n;const p=`${t}.${e}`;n[p]=c[t][e];const d=Ff.get(t);if(d){const g=c[t][e].data?.children||[];for(const m of g)Xu(c,m,d,n)}return n}const Fs=Iu.name,Ps=Iu.version,zn=Fs,ot="formeo-sprite",ql=[{name:"cssPreload",src:"//cdnjs.cloudflare.com/ajax/libs/loadCSS/2.0.1/cssrelpreload.min.js"},{name:"mutationObserver",src:"//cdn.jsdelivr.net/npm/mutationobserver-shim/dist/mutationobserver.min.js"},{name:"fetch",src:"https://unpkg.com/unfetch/polyfill"}],Yl=`../../lib/icons/${ot}.svg`;typeof import.meta.resolve=="function"&&import.meta.resolve(Yl);const Qu=`https://cdn.jsdelivr.net/npm/formeo@${Ps}/dist/${ot}.svg`,$f=`https://draggable.github.io/formeo/assets/img/${ot}.svg`,Ef=`https://cdn.jsdelivr.net/npm/formeo@${Ps}/dist/formeo.min.css`,Tf="https://draggable.github.io/formeo/assets/css/formeo.min.css",Zu="f-panel",rt="control-group",kt=`${zn}-stage`,Xe=`${zn}-row`,Qe=`${zn}-column`,It=`${zn}-field`,Cs="custom-column-widths",Ju="column-preset",Wr="resizing-columns",Mf=new Map([[kt,Xe],[Xe,Qe],[Qe,It]]),Ws=["stage","row","column","field"],Bs=Ws.map(c=>`${c}s`);new Map(Bs.map((c,e)=>[c,Ws[e]]));const _f=new RegExp(`^${Bs.join("|")}.`),eh=[...Ws],xf=[...Bs],Lf=new Map(xf.map((c,e)=>[c,eh[e]])),Br=eh.reduce((c,e)=>(c[e]=e,c),{}),Rf=[{name:"controls",className:rt},{name:"stage",className:kt},{name:"row",className:Xe},{name:"column",className:Qe},{name:"field",className:It}],Hs={controls:rt,stage:kt,row:Xe,column:Qe,field:It},kf=Object.entries(Hs).reduce((c,[e,t])=>(c[t]=e,c),{}),If=Object.values(Hs),Of=new RegExp(`${If.join("|")}`,"g"),{childTypeMapVals:th,childTypeIndexMapVals:Df}=Rf.reduce((c,{name:e},t,n)=>{const{name:p}=n[t+1]||{};return p&&(c.childTypeMapVals.push([e,p]),c.childTypeIndexMapVals.push([`${e}s`,`${p}s`])),c},{childTypeMapVals:[],childTypeIndexMapVals:[]}),Nf=th.slice().map(c=>c.slice().reverse()).reverse(),Xl=new Map(th),Ff=new Map(Df),Pf=new Map(Nf.slice()),Wf=[[{value:"100.0",label:"100%"}],[{value:"50.0,50.0",label:"50 | 50"},{value:"33.3,66.6",label:"33 | 66"},{value:"66.6,33.3",label:"66 | 33"}],[{value:"33.3,33.3,33.3",label:"33 | 33 | 33"},{value:"25.0,25.0,50.0",label:"25 | 25 | 50"},{value:"50.0,25.0,25.0",label:"50 | 25 | 25"},{value:"25.0,50.0,25.0",label:"25 | 50 | 25"}],[{value:"25.0,25.0,25.0,25.0",label:"25 | 25 | 25 | 25"}],[{value:"20.0,20.0,20.0,20.0,20.0",label:"20 | 20 | 20 | 20 | 20"}],[{value:"16.66,16.66,16.66,16.66,16.66,16.66",label:"16.66 | 16.66 | 16.66 | 16.66 | 16.66 | 16.66"}]],Bf=new Map(Wf.reduce((c,e,t)=>(c.push([t,e]),c),[])),nh=`${Fs}-formData`,Ql=`${Fs}-locale`,Ke=333,gt=Math.round(Ke/2),zs=Math.round(Ke*2),ih="formeoSaved",jn="formeoUpdated",Hf="formeoUpdatedStage",zf="formeoUpdatedRow",jf="formeoUpdatedColumn",Uf="formeoUpdatedField",Gf="formeoCleared",rh="formeoOnRender",Vf="formeoConditionUpdated",oh={equals:"==",notEquals:"!=",contains:"⊃",notContains:"!⊃"},Kf={and:"&&",or:"||"},sh={equals:"="},qf=["logical","source","sourceProperty","comparison","target","targetProperty","assignment","value"],Zl=["isChecked","isNotChecked"],Jl=["isVisible","isNotVisible"],fn=["value"],Yf={comparison:oh,assignment:sh,logical:Kf},ah="if",Xf="then",js=()=>({[ah]:[{source:"",sourceProperty:"",comparison:"",target:"",targetProperty:""}],[Xf]:[{target:"",targetProperty:"",assignment:"",value:""}]}),Qf=/(\b[0-9a-f]{8}\b-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-\b[0-9a-f]{12}\b)|(\b[0-9a-f]{8}\b)/g,Ss=/\bcol-\w+-\d+/g,lh="f-i-",$n=()=>({id:We(),stages:{[We()]:{}},rows:{},columns:{},fields:{}}),En=["selected","checked"],Zf=En.toReversed(),Jf="a an and as at but by for for from in into near nor of on onto or the to with".split(" ").map(c=>`\\s${c}\\s`),ep=new RegExp(`(?!${Jf.join("|")})\\w\\S*`,"g"),tp=/\s+/g;function st(c){return typeof c!="string"||c.trim().match(tp)?c:c.replace(ep,t=>t.charAt(0).toUpperCase()+t.substring(1).replace(/[A-Z]/g,n=>` ${n}`))}const ch=(c,e="-")=>c.toString().normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().trim().replace(/[^a-z0-9 -]/g,"").replace(/\s+/g,e),mt=c=>{if(Array.isArray(c))return c;const e=/[.[\]]/g,t=[];let n=0,p=e.exec(c);for(;p!==null;)t.push(c.slice(n,p.index)),n=p.index+p[0].length,p=e.exec(c);return n<c.length&&t.push(c.slice(n)),t.filter(Boolean)},ec=(c,e="-")=>mt(c).join(e),np=c=>{const e=document.createElement("div");return e.innerHTML=c,e.textContent||e.innerText||""},ip=(c,e,t="…")=>{if(c.length<=e)return c;const n=c.slice(0,e),p=n.lastIndexOf(" ");let d=`${p>0?n.slice(0,p):n}`;return t&&(d+=t),d};var Hr,tc;function Us(){if(tc)return Hr;tc=1;var c=Rt(),e=yt(),t="[object Symbol]";function n(p){return typeof p=="symbol"||e(p)&&c(p)==t}return Hr=n,Hr}var zr,nc;function rp(){if(nc)return zr;nc=1;var c=bt(),e=Us(),t=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;function p(d,g){if(c(d))return!1;var m=typeof d;return m=="number"||m=="symbol"||m=="boolean"||d==null||e(d)?!0:n.test(d)||!t.test(d)||g!=null&&d in Object(g)}return zr=p,zr}var jr,ic;function op(){if(ic)return jr;ic=1;var c=Rs(),e="Expected a function";function t(n,p){if(typeof n!="function"||p!=null&&typeof p!="function")throw new TypeError(e);var d=function(){var g=arguments,m=p?p.apply(this,g):g[0],l=d.cache;if(l.has(m))return l.get(m);var f=n.apply(this,g);return d.cache=l.set(m,f)||l,f};return d.cache=new(t.Cache||c),d}return t.Cache=c,jr=t,jr}var Ur,rc;function sp(){if(rc)return Ur;rc=1;var c=op(),e=500;function t(n){var p=c(n,function(g){return d.size===e&&d.clear(),g}),d=p.cache;return p}return Ur=t,Ur}var Gr,oc;function ap(){if(oc)return Gr;oc=1;var c=sp(),e=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,t=/\\(\\)?/g,n=c(function(p){var d=[];return p.charCodeAt(0)===46&&d.push(""),p.replace(e,function(g,m,l,f){d.push(l?f.replace(t,"$1"):m||g)}),d});return Gr=n,Gr}var Vr,sc;function lp(){if(sc)return Vr;sc=1;function c(e,t){for(var n=-1,p=e==null?0:e.length,d=Array(p);++n<p;)d[n]=t(e[n],n,e);return d}return Vr=c,Vr}var Kr,ac;function cp(){if(ac)return Kr;ac=1;var c=Fn(),e=lp(),t=bt(),n=Us(),p=c?c.prototype:void 0,d=p?p.toString:void 0;function g(m){if(typeof m=="string")return m;if(t(m))return e(m,g)+"";if(n(m))return d?d.call(m):"";var l=m+"";return l=="0"&&1/m==-1/0?"-0":l}return Kr=g,Kr}var qr,lc;function Un(){if(lc)return qr;lc=1;var c=cp();function e(t){return t==null?"":c(t)}return qr=e,qr}var Yr,cc;function uh(){if(cc)return Yr;cc=1;var c=bt(),e=rp(),t=ap(),n=Un();function p(d,g){return c(d)?d:e(d,g)?[d]:t(n(d))}return Yr=p,Yr}var Xr,uc;function hh(){if(uc)return Xr;uc=1;var c=Us();function e(t){if(typeof t=="string"||c(t))return t;var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}return Xr=e,Xr}var Qr,hc;function up(){if(hc)return Qr;hc=1;var c=uh(),e=hh();function t(n,p){p=c(p,n);for(var d=0,g=p.length;n!=null&&d<g;)n=n[e(p[d++])];return d&&d==g?n:void 0}return Qr=t,Qr}var Zr,dc;function hp(){if(dc)return Zr;dc=1;var c=up();function e(t,n,p){var d=t==null?void 0:c(t,n);return d===void 0?p:d}return Zr=e,Zr}var dp=hp();const fp=Lt(dp);var Jr,fc;function pp(){if(fc)return Jr;fc=1;var c=Gu(),e=uh(),t=Ns(),n=lt(),p=hh();function d(g,m,l,f){if(!n(g))return g;m=e(m,g);for(var r=-1,o=m.length,s=o-1,a=g;a!=null&&++r<o;){var i=p(m[r]),u=l;if(i==="__proto__"||i==="constructor"||i==="prototype")return g;if(r!=s){var h=a[i];u=f?f(h,i,a):void 0,u===void 0&&(u=n(h)?h:t(m[r+1])?[]:{})}c(a,i,u),a=a[i]}return g}return Jr=d,Jr}var eo,pc;function gp(){if(pc)return eo;pc=1;var c=pp();function e(t,n,p){return t==null?t:c(t,n,p)}return eo=e,eo}var mp=gp();const vp=Lt(mp),De=fp,Gn=vp;function yp(c,e={}){const t={...c};for(const n in e)Object.hasOwn(e,n)&&(Object.hasOwn(t,n)?Array.isArray(t[n])?t[n].push(e[n]):t[n]=[t[n],e[n]]:t[n]=e[n]);return t}function pn(...c){return c.flat().reduce((e,t)=>(e[t]=t,e),{})}var to,gc;function bp(){if(gc)return to;gc=1;var c="__lodash_hash_undefined__";function e(t){return this.__data__.set(t,c),this}return to=e,to}var no,mc;function wp(){if(mc)return no;mc=1;function c(e){return this.__data__.has(e)}return no=c,no}var io,vc;function Cp(){if(vc)return io;vc=1;var c=Rs(),e=bp(),t=wp();function n(p){var d=-1,g=p==null?0:p.length;for(this.__data__=new c;++d<g;)this.add(p[d])}return n.prototype.add=n.prototype.push=e,n.prototype.has=t,io=n,io}var ro,yc;function Sp(){if(yc)return ro;yc=1;function c(e,t){for(var n=-1,p=e==null?0:e.length;++n<p;)if(t(e[n],n,e))return!0;return!1}return ro=c,ro}var oo,bc;function Ap(){if(bc)return oo;bc=1;function c(e,t){return e.has(t)}return oo=c,oo}var so,wc;function dh(){if(wc)return so;wc=1;var c=Cp(),e=Sp(),t=Ap(),n=1,p=2;function d(g,m,l,f,r,o){var s=l&n,a=g.length,i=m.length;if(a!=i&&!(s&&i>a))return!1;var u=o.get(g),h=o.get(m);if(u&&h)return u==m&&h==g;var y=-1,b=!0,T=l&p?new c:void 0;for(o.set(g,m),o.set(m,g);++y<a;){var $=g[y],A=m[y];if(f)var S=s?f(A,$,y,m,g,o):f($,A,y,g,m,o);if(S!==void 0){if(S)continue;b=!1;break}if(T){if(!e(m,function(M,R){if(!t(T,R)&&($===M||r($,M,l,f,o)))return T.push(R)})){b=!1;break}}else if(!($===A||r($,A,l,f,o))){b=!1;break}}return o.delete(g),o.delete(m),b}return so=d,so}var ao,Cc;function $p(){if(Cc)return ao;Cc=1;function c(e){var t=-1,n=Array(e.size);return e.forEach(function(p,d){n[++t]=[d,p]}),n}return ao=c,ao}var lo,Sc;function Ep(){if(Sc)return lo;Sc=1;function c(e){var t=-1,n=Array(e.size);return e.forEach(function(p){n[++t]=p}),n}return lo=c,lo}var co,Ac;function Tp(){if(Ac)return co;Ac=1;var c=Fn(),e=Wu(),t=tn(),n=dh(),p=$p(),d=Ep(),g=1,m=2,l="[object Boolean]",f="[object Date]",r="[object Error]",o="[object Map]",s="[object Number]",a="[object RegExp]",i="[object Set]",u="[object String]",h="[object Symbol]",y="[object ArrayBuffer]",b="[object DataView]",T=c?c.prototype:void 0,$=T?T.valueOf:void 0;function A(S,M,R,L,_,I,w){switch(R){case b:if(S.byteLength!=M.byteLength||S.byteOffset!=M.byteOffset)return!1;S=S.buffer,M=M.buffer;case y:return!(S.byteLength!=M.byteLength||!I(new e(S),new e(M)));case l:case f:case s:return t(+S,+M);case r:return S.name==M.name&&S.message==M.message;case a:case u:return S==M+"";case o:var v=p;case i:var C=L&g;if(v||(v=d),S.size!=M.size&&!C)return!1;var E=w.get(S);if(E)return E==M;L|=m,w.set(S,M);var x=n(v(S),v(M),L,_,I,w);return w.delete(S),x;case h:if($)return $.call(S)==$.call(M)}return!1}return co=A,co}var uo,$c;function Mp(){if($c)return uo;$c=1;function c(e,t){for(var n=-1,p=t.length,d=e.length;++n<p;)e[d+n]=t[n];return e}return uo=c,uo}var ho,Ec;function _p(){if(Ec)return ho;Ec=1;var c=Mp(),e=bt();function t(n,p,d){var g=p(n);return e(n)?g:c(g,d(n))}return ho=t,ho}var fo,Tc;function xp(){if(Tc)return fo;Tc=1;function c(e,t){for(var n=-1,p=e==null?0:e.length,d=0,g=[];++n<p;){var m=e[n];t(m,n,e)&&(g[d++]=m)}return g}return fo=c,fo}var po,Mc;function Lp(){if(Mc)return po;Mc=1;function c(){return[]}return po=c,po}var go,_c;function Rp(){if(_c)return go;_c=1;var c=xp(),e=Lp(),t=Object.prototype,n=t.propertyIsEnumerable,p=Object.getOwnPropertySymbols,d=p?function(g){return g==null?[]:(g=Object(g),c(p(g),function(m){return n.call(g,m)}))}:e;return go=d,go}var mo,xc;function kp(){if(xc)return mo;xc=1;var c=Bu(),e=c(Object.keys,Object);return mo=e,mo}var vo,Lc;function Ip(){if(Lc)return vo;Lc=1;var c=Is(),e=kp(),t=Object.prototype,n=t.hasOwnProperty;function p(d){if(!c(d))return e(d);var g=[];for(var m in Object(d))n.call(d,m)&&m!="constructor"&&g.push(m);return g}return vo=p,vo}var yo,Rc;function Op(){if(Rc)return yo;Rc=1;var c=Vu(),e=Ip(),t=Bn();function n(p){return t(p)?c(p):e(p)}return yo=n,yo}var bo,kc;function Dp(){if(kc)return bo;kc=1;var c=_p(),e=Rp(),t=Op();function n(p){return c(p,t,e)}return bo=n,bo}var wo,Ic;function Np(){if(Ic)return wo;Ic=1;var c=Dp(),e=1,t=Object.prototype,n=t.hasOwnProperty;function p(d,g,m,l,f,r){var o=m&e,s=c(d),a=s.length,i=c(g),u=i.length;if(a!=u&&!o)return!1;for(var h=a;h--;){var y=s[h];if(!(o?y in g:n.call(g,y)))return!1}var b=r.get(d),T=r.get(g);if(b&&T)return b==g&&T==d;var $=!0;r.set(d,g),r.set(g,d);for(var A=o;++h<a;){y=s[h];var S=d[y],M=g[y];if(l)var R=o?l(M,S,y,g,d,r):l(S,M,y,d,g,r);if(!(R===void 0?S===M||f(S,M,m,l,r):R)){$=!1;break}A||(A=y=="constructor")}if($&&!A){var L=d.constructor,_=g.constructor;L!=_&&"constructor"in d&&"constructor"in g&&!(typeof L=="function"&&L instanceof L&&typeof _=="function"&&_ instanceof _)&&($=!1)}return r.delete(d),r.delete(g),$}return wo=p,wo}var Co,Oc;function Fp(){if(Oc)return Co;Oc=1;var c=vt(),e=Ge(),t=c(e,"DataView");return Co=t,Co}var So,Dc;function Pp(){if(Dc)return So;Dc=1;var c=vt(),e=Ge(),t=c(e,"Promise");return So=t,So}var Ao,Nc;function Wp(){if(Nc)return Ao;Nc=1;var c=vt(),e=Ge(),t=c(e,"Set");return Ao=t,Ao}var $o,Fc;function Bp(){if(Fc)return $o;Fc=1;var c=vt(),e=Ge(),t=c(e,"WeakMap");return $o=t,$o}var Eo,Pc;function Hp(){if(Pc)return Eo;Pc=1;var c=Fp(),e=Ls(),t=Pp(),n=Wp(),p=Bp(),d=Rt(),g=Du(),m="[object Map]",l="[object Object]",f="[object Promise]",r="[object Set]",o="[object WeakMap]",s="[object DataView]",a=g(c),i=g(e),u=g(t),h=g(n),y=g(p),b=d;return(c&&b(new c(new ArrayBuffer(1)))!=s||e&&b(new e)!=m||t&&b(t.resolve())!=f||n&&b(new n)!=r||p&&b(new p)!=o)&&(b=function(T){var $=d(T),A=$==l?T.constructor:void 0,S=A?g(A):"";if(S)switch(S){case a:return s;case i:return m;case u:return f;case h:return r;case y:return o}return $}),Eo=b,Eo}var To,Wc;function zp(){if(Wc)return To;Wc=1;var c=Nu(),e=dh(),t=Tp(),n=Np(),p=Hp(),d=bt(),g=Os(),m=Ds(),l=1,f="[object Arguments]",r="[object Array]",o="[object Object]",s=Object.prototype,a=s.hasOwnProperty;function i(u,h,y,b,T,$){var A=d(u),S=d(h),M=A?r:p(u),R=S?r:p(h);M=M==f?o:M,R=R==f?o:R;var L=M==o,_=R==o,I=M==R;if(I&&g(u)){if(!g(h))return!1;A=!0,L=!1}if(I&&!L)return $||($=new c),A||m(u)?e(u,h,y,b,T,$):t(u,h,M,y,b,T,$);if(!(y&l)){var w=L&&a.call(u,"__wrapped__"),v=_&&a.call(h,"__wrapped__");if(w||v){var C=w?u.value():u,E=v?h.value():h;return $||($=new c),T(C,E,y,b,$)}}return I?($||($=new c),n(u,h,y,b,T,$)):!1}return To=i,To}var Mo,Bc;function jp(){if(Bc)return Mo;Bc=1;var c=zp(),e=yt();function t(n,p,d,g,m){return n===p?!0:n==null||p==null||!e(n)&&!e(p)?n!==n&&p!==p:c(n,p,d,g,t,m)}return Mo=t,Mo}var _o,Hc;function Up(){if(Hc)return _o;Hc=1;var c=jp();function e(t,n){return c(t,n)}return _o=e,_o}var Gp=Up();const As=Lt(Gp),Vp=(c,e)=>c===void 0?"added":e===void 0?"removed":As(c,e)?"unchanged":"changed";class Gs{constructor(e,t=Object.create(null)){this.name=e,this.data=t,this.dataPath=""}get size(){return Object.keys(this.data).length}get js(){return this.data}get json(){return this.data}toJSON=(e,t)=>JSON.stringify(e,null,t);get=e=>De(this.data,e);set(e,t){const n=De(this.data,e),p=Gn(this.data,e,t),d=Array.isArray(e)?e.join("."):e,g=Object.keys(this.setCallbacks).filter(l=>new RegExp(l).test(d)),m={newVal:t,oldVal:n,path:e};for(const l of g)for(const f of this.setCallbacks[l])f(m);if(!this.disableEvents){const l={entity:this,dataPath:this.dataPath.replace(/\.+$/,""),changePath:this.dataPath+e,value:t,data:p,changeType:Vp(n,t),src:this.dom};n&&(l.previousValue=n),le.formeoUpdated(l)}return p}addSetCallback(e,t){this.setCallbacks[e]?this.setCallbacks[e].push(t):this.setCallbacks[e]=[t]}removeSetCallback(e,t){this.setCallbacks[e]=this.setCallbacks[e].filter(n=>n!==t)}add=(e,t=Object.create(null))=>{const{id:n}=t,p=e||n||We();return this.set(p,t)};remove=e=>{const t=mt(e),n=t.pop(),p=this.get(t);return Array.isArray(p)?p.splice(Number(n),1):p&&delete p[n],p};empty(){this.data=Object.create(null)}getData=()=>Object.entries(this.data).reduce((e,[t,n])=>(e[t]=n?.data?n.getData():n,e),{});setCallbacks={};configVal=Object.create(null)}class Vn extends Gs{load=e=>{const t=Hn(e);this.empty();for(const[n,p]of Object.entries(t))this.add(n,p);return this.data};get=e=>e?De(this.data,e):this.add();add=(e,t=Object.create(null))=>{const n=e||We(),p=this.Component({...t,id:n});return this.data[n]=p,this.active=p,p};remove=e=>{if(Array.isArray(e))for(const t of e)this.get(t).remove();else this.get(e).remove();return this.data};delete=e=>(delete this.data[e],e);clearAll=(e=!0)=>{const t=Object.values(this.data).map(n=>n.empty(e));return Promise.all(t)};set config(e){this.configVal=ze(this.configVal,Ye(e))}get config(){return this.configVal}conditionMap=new Map}function zc(c,e){var t=Object.keys(c);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(c);e&&(n=n.filter(function(p){return Object.getOwnPropertyDescriptor(c,p).enumerable})),t.push.apply(t,n)}return t}function Ue(c){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zc(Object(t),!0).forEach(function(n){Kp(c,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(t)):zc(Object(t)).forEach(function(n){Object.defineProperty(c,n,Object.getOwnPropertyDescriptor(t,n))})}return c}function gn(c){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?gn=function(e){return typeof e}:gn=function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},gn(c)}function Kp(c,e,t){return e in c?Object.defineProperty(c,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):c[e]=t,c}function Ze(){return Ze=Object.assign||function(c){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(c[n]=t[n])}return c},Ze.apply(this,arguments)}function qp(c,e){if(c==null)return{};var t={},n=Object.keys(c),p,d;for(d=0;d<n.length;d++)p=n[d],!(e.indexOf(p)>=0)&&(t[p]=c[p]);return t}function Yp(c,e){if(c==null)return{};var t=qp(c,e),n,p;if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(c);for(p=0;p<d.length;p++)n=d[p],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(c,n)&&(t[n]=c[n])}return t}var Xp="1.15.3";function qe(c){if(typeof window<"u"&&window.navigator)return!!navigator.userAgent.match(c)}var et=qe(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),nn=qe(/Edge/i),jc=qe(/firefox/i),Kt=qe(/safari/i)&&!qe(/chrome/i)&&!qe(/android/i),fh=qe(/iP(ad|od|hone)/i),ph=qe(/chrome/i)&&qe(/android/i),gh={capture:!1,passive:!1};function oe(c,e,t){c.addEventListener(e,t,!et&&gh)}function re(c,e,t){c.removeEventListener(e,t,!et&&gh)}function Tn(c,e){if(e){if(e[0]===">"&&(e=e.substring(1)),c)try{if(c.matches)return c.matches(e);if(c.msMatchesSelector)return c.msMatchesSelector(e);if(c.webkitMatchesSelector)return c.webkitMatchesSelector(e)}catch{return!1}return!1}}function mh(c){return c.host&&c!==document&&c.host.nodeType?c.host:c.parentNode}function He(c,e,t,n){if(c){t=t||document;do{if(e!=null&&(e[0]===">"?c.parentNode===t&&Tn(c,e):Tn(c,e))||n&&c===t)return c;if(c===t)break}while(c=mh(c))}return null}var Uc=/\s+/g;function Ie(c,e,t){if(c&&e)if(c.classList)c.classList[t?"add":"remove"](e);else{var n=(" "+c.className+" ").replace(Uc," ").replace(" "+e+" "," ");c.className=(n+(t?" "+e:"")).replace(Uc," ")}}function te(c,e,t){var n=c&&c.style;if(n){if(t===void 0)return document.defaultView&&document.defaultView.getComputedStyle?t=document.defaultView.getComputedStyle(c,""):c.currentStyle&&(t=c.currentStyle),e===void 0?t:t[e];!(e in n)&&e.indexOf("webkit")===-1&&(e="-webkit-"+e),n[e]=t+(typeof t=="string"?"":"px")}}function Tt(c,e){var t="";if(typeof c=="string")t=c;else do{var n=te(c,"transform");n&&n!=="none"&&(t=n+" "+t)}while(!e&&(c=c.parentNode));var p=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return p&&new p(t)}function vh(c,e,t){if(c){var n=c.getElementsByTagName(e),p=0,d=n.length;if(t)for(;p<d;p++)t(n[p],p);return n}return[]}function je(){var c=document.scrollingElement;return c||document.documentElement}function we(c,e,t,n,p){if(!(!c.getBoundingClientRect&&c!==window)){var d,g,m,l,f,r,o;if(c!==window&&c.parentNode&&c!==je()?(d=c.getBoundingClientRect(),g=d.top,m=d.left,l=d.bottom,f=d.right,r=d.height,o=d.width):(g=0,m=0,l=window.innerHeight,f=window.innerWidth,r=window.innerHeight,o=window.innerWidth),(e||t)&&c!==window&&(p=p||c.parentNode,!et))do if(p&&p.getBoundingClientRect&&(te(p,"transform")!=="none"||t&&te(p,"position")!=="static")){var s=p.getBoundingClientRect();g-=s.top+parseInt(te(p,"border-top-width")),m-=s.left+parseInt(te(p,"border-left-width")),l=g+d.height,f=m+d.width;break}while(p=p.parentNode);if(n&&c!==window){var a=Tt(p||c),i=a&&a.a,u=a&&a.d;a&&(g/=u,m/=i,o/=i,r/=u,l=g+r,f=m+o)}return{top:g,left:m,bottom:l,right:f,width:o,height:r}}}function Gc(c,e,t){for(var n=it(c,!0),p=we(c)[e];n;){var d=we(n)[t],g=void 0;if(g=p>=d,!g)return n;if(n===je())break;n=it(n,!1)}return!1}function Mt(c,e,t,n){for(var p=0,d=0,g=c.children;d<g.length;){if(g[d].style.display!=="none"&&g[d]!==ee.ghost&&(n||g[d]!==ee.dragged)&&He(g[d],t.draggable,c,!1)){if(p===e)return g[d];p++}d++}return null}function Vs(c,e){for(var t=c.lastElementChild;t&&(t===ee.ghost||te(t,"display")==="none"||e&&!Tn(t,e));)t=t.previousElementSibling;return t||null}function Fe(c,e){var t=0;if(!c||!c.parentNode)return-1;for(;c=c.previousElementSibling;)c.nodeName.toUpperCase()!=="TEMPLATE"&&c!==ee.clone&&(!e||Tn(c,e))&&t++;return t}function Vc(c){var e=0,t=0,n=je();if(c)do{var p=Tt(c),d=p.a,g=p.d;e+=c.scrollLeft*d,t+=c.scrollTop*g}while(c!==n&&(c=c.parentNode));return[e,t]}function Qp(c,e){for(var t in c)if(c.hasOwnProperty(t)){for(var n in e)if(e.hasOwnProperty(n)&&e[n]===c[t][n])return Number(t)}return-1}function it(c,e){if(!c||!c.getBoundingClientRect)return je();var t=c,n=!1;do if(t.clientWidth<t.scrollWidth||t.clientHeight<t.scrollHeight){var p=te(t);if(t.clientWidth<t.scrollWidth&&(p.overflowX=="auto"||p.overflowX=="scroll")||t.clientHeight<t.scrollHeight&&(p.overflowY=="auto"||p.overflowY=="scroll")){if(!t.getBoundingClientRect||t===document.body)return je();if(n||e)return t;n=!0}}while(t=t.parentNode);return je()}function Zp(c,e){if(c&&e)for(var t in e)e.hasOwnProperty(t)&&(c[t]=e[t]);return c}function xo(c,e){return Math.round(c.top)===Math.round(e.top)&&Math.round(c.left)===Math.round(e.left)&&Math.round(c.height)===Math.round(e.height)&&Math.round(c.width)===Math.round(e.width)}var qt;function yh(c,e){return function(){if(!qt){var t=arguments,n=this;t.length===1?c.call(n,t[0]):c.apply(n,t),qt=setTimeout(function(){qt=void 0},e)}}}function Jp(){clearTimeout(qt),qt=void 0}function bh(c,e,t){c.scrollLeft+=e,c.scrollTop+=t}function wh(c){var e=window.Polymer,t=window.jQuery||window.Zepto;return e&&e.dom?e.dom(c).cloneNode(!0):t?t(c).clone(!0)[0]:c.cloneNode(!0)}function Ch(c,e,t){var n={};return Array.from(c.children).forEach(function(p){var d,g,m,l;if(!(!He(p,e.draggable,c,!1)||p.animated||p===t)){var f=we(p);n.left=Math.min((d=n.left)!==null&&d!==void 0?d:1/0,f.left),n.top=Math.min((g=n.top)!==null&&g!==void 0?g:1/0,f.top),n.right=Math.max((m=n.right)!==null&&m!==void 0?m:-1/0,f.right),n.bottom=Math.max((l=n.bottom)!==null&&l!==void 0?l:-1/0,f.bottom)}}),n.width=n.right-n.left,n.height=n.bottom-n.top,n.x=n.left,n.y=n.top,n}var Re="Sortable"+new Date().getTime();function eg(){var c=[],e;return{captureAnimationState:function(){if(c=[],!!this.options.animation){var n=[].slice.call(this.el.children);n.forEach(function(p){if(!(te(p,"display")==="none"||p===ee.ghost)){c.push({target:p,rect:we(p)});var d=Ue({},c[c.length-1].rect);if(p.thisAnimationDuration){var g=Tt(p,!0);g&&(d.top-=g.f,d.left-=g.e)}p.fromRect=d}})}},addAnimationState:function(n){c.push(n)},removeAnimationState:function(n){c.splice(Qp(c,{target:n}),1)},animateAll:function(n){var p=this;if(!this.options.animation){clearTimeout(e),typeof n=="function"&&n();return}var d=!1,g=0;c.forEach(function(m){var l=0,f=m.target,r=f.fromRect,o=we(f),s=f.prevFromRect,a=f.prevToRect,i=m.rect,u=Tt(f,!0);u&&(o.top-=u.f,o.left-=u.e),f.toRect=o,f.thisAnimationDuration&&xo(s,o)&&!xo(r,o)&&(i.top-o.top)/(i.left-o.left)===(r.top-o.top)/(r.left-o.left)&&(l=ng(i,s,a,p.options)),xo(o,r)||(f.prevFromRect=r,f.prevToRect=o,l||(l=p.options.animation),p.animate(f,i,o,l)),l&&(d=!0,g=Math.max(g,l),clearTimeout(f.animationResetTimer),f.animationResetTimer=setTimeout(function(){f.animationTime=0,f.prevFromRect=null,f.fromRect=null,f.prevToRect=null,f.thisAnimationDuration=null},l),f.thisAnimationDuration=l)}),clearTimeout(e),d?e=setTimeout(function(){typeof n=="function"&&n()},g):typeof n=="function"&&n(),c=[]},animate:function(n,p,d,g){if(g){te(n,"transition",""),te(n,"transform","");var m=Tt(this.el),l=m&&m.a,f=m&&m.d,r=(p.left-d.left)/(l||1),o=(p.top-d.top)/(f||1);n.animatingX=!!r,n.animatingY=!!o,te(n,"transform","translate3d("+r+"px,"+o+"px,0)"),this.forRepaintDummy=tg(n),te(n,"transition","transform "+g+"ms"+(this.options.easing?" "+this.options.easing:"")),te(n,"transform","translate3d(0,0,0)"),typeof n.animated=="number"&&clearTimeout(n.animated),n.animated=setTimeout(function(){te(n,"transition",""),te(n,"transform",""),n.animated=!1,n.animatingX=!1,n.animatingY=!1},g)}}}}function tg(c){return c.offsetWidth}function ng(c,e,t,n){return Math.sqrt(Math.pow(e.top-c.top,2)+Math.pow(e.left-c.left,2))/Math.sqrt(Math.pow(e.top-t.top,2)+Math.pow(e.left-t.left,2))*n.animation}var wt=[],Lo={initializeByDefault:!0},rn={mount:function(e){for(var t in Lo)Lo.hasOwnProperty(t)&&!(t in e)&&(e[t]=Lo[t]);wt.forEach(function(n){if(n.pluginName===e.pluginName)throw"Sortable: Cannot mount plugin ".concat(e.pluginName," more than once")}),wt.push(e)},pluginEvent:function(e,t,n){var p=this;this.eventCanceled=!1,n.cancel=function(){p.eventCanceled=!0};var d=e+"Global";wt.forEach(function(g){t[g.pluginName]&&(t[g.pluginName][d]&&t[g.pluginName][d](Ue({sortable:t},n)),t.options[g.pluginName]&&t[g.pluginName][e]&&t[g.pluginName][e](Ue({sortable:t},n)))})},initializePlugins:function(e,t,n,p){wt.forEach(function(m){var l=m.pluginName;if(!(!e.options[l]&&!m.initializeByDefault)){var f=new m(e,t,e.options);f.sortable=e,f.options=e.options,e[l]=f,Ze(n,f.defaults)}});for(var d in e.options)if(e.options.hasOwnProperty(d)){var g=this.modifyOption(e,d,e.options[d]);typeof g<"u"&&(e.options[d]=g)}},getEventProperties:function(e,t){var n={};return wt.forEach(function(p){typeof p.eventProperties=="function"&&Ze(n,p.eventProperties.call(t[p.pluginName],e))}),n},modifyOption:function(e,t,n){var p;return wt.forEach(function(d){e[d.pluginName]&&d.optionListeners&&typeof d.optionListeners[t]=="function"&&(p=d.optionListeners[t].call(e[d.pluginName],n))}),p}};function ig(c){var e=c.sortable,t=c.rootEl,n=c.name,p=c.targetEl,d=c.cloneEl,g=c.toEl,m=c.fromEl,l=c.oldIndex,f=c.newIndex,r=c.oldDraggableIndex,o=c.newDraggableIndex,s=c.originalEvent,a=c.putSortable,i=c.extraEventProperties;if(e=e||t&&t[Re],!!e){var u,h=e.options,y="on"+n.charAt(0).toUpperCase()+n.substr(1);window.CustomEvent&&!et&&!nn?u=new CustomEvent(n,{bubbles:!0,cancelable:!0}):(u=document.createEvent("Event"),u.initEvent(n,!0,!0)),u.to=g||t,u.from=m||t,u.item=p||t,u.clone=d,u.oldIndex=l,u.newIndex=f,u.oldDraggableIndex=r,u.newDraggableIndex=o,u.originalEvent=s,u.pullMode=a?a.lastPutMode:void 0;var b=Ue(Ue({},i),rn.getEventProperties(n,e));for(var T in b)u[T]=b[T];t&&t.dispatchEvent(u),h[y]&&h[y].call(e,u)}}var rg=["evt"],xe=function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},p=n.evt,d=Yp(n,rg);rn.pluginEvent.bind(ee)(e,t,Ue({dragEl:K,parentEl:ve,ghostEl:ne,rootEl:fe,nextEl:ft,lastDownEl:mn,cloneEl:pe,cloneHidden:nt,dragStarted:zt,putSortable:Se,activeSortable:ee.active,originalEvent:p,oldIndex:$t,oldDraggableIndex:Yt,newIndex:Oe,newDraggableIndex:tt,hideGhostForTarget:Eh,unhideGhostForTarget:Th,cloneNowHidden:function(){nt=!0},cloneNowShown:function(){nt=!1},dispatchSortableEvent:function(m){Ee({sortable:t,name:m,originalEvent:p})}},d))};function Ee(c){ig(Ue({putSortable:Se,cloneEl:pe,targetEl:K,rootEl:fe,oldIndex:$t,oldDraggableIndex:Yt,newIndex:Oe,newDraggableIndex:tt},c))}var K,ve,ne,fe,ft,mn,pe,nt,$t,Oe,Yt,tt,an,Se,St=!1,Mn=!1,_n=[],ht,Be,Ro,ko,Kc,qc,zt,Ct,Xt,Qt=!1,ln=!1,vn,Ae,Io=[],$s=!1,xn=[],Kn=typeof document<"u",cn=fh,Yc=nn||et?"cssFloat":"float",og=Kn&&!ph&&!fh&&"draggable"in document.createElement("div"),Sh=(function(){if(Kn){if(et)return!1;var c=document.createElement("x");return c.style.cssText="pointer-events:auto",c.style.pointerEvents==="auto"}})(),Ah=function(e,t){var n=te(e),p=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),d=Mt(e,0,t),g=Mt(e,1,t),m=d&&te(d),l=g&&te(g),f=m&&parseInt(m.marginLeft)+parseInt(m.marginRight)+we(d).width,r=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+we(g).width;if(n.display==="flex")return n.flexDirection==="column"||n.flexDirection==="column-reverse"?"vertical":"horizontal";if(n.display==="grid")return n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(d&&m.float&&m.float!=="none"){var o=m.float==="left"?"left":"right";return g&&(l.clear==="both"||l.clear===o)?"vertical":"horizontal"}return d&&(m.display==="block"||m.display==="flex"||m.display==="table"||m.display==="grid"||f>=p&&n[Yc]==="none"||g&&n[Yc]==="none"&&f+r>p)?"vertical":"horizontal"},sg=function(e,t,n){var p=n?e.left:e.top,d=n?e.right:e.bottom,g=n?e.width:e.height,m=n?t.left:t.top,l=n?t.right:t.bottom,f=n?t.width:t.height;return p===m||d===l||p+g/2===m+f/2},ag=function(e,t){var n;return _n.some(function(p){var d=p[Re].options.emptyInsertThreshold;if(!(!d||Vs(p))){var g=we(p),m=e>=g.left-d&&e<=g.right+d,l=t>=g.top-d&&t<=g.bottom+d;if(m&&l)return n=p}}),n},$h=function(e){function t(d,g){return function(m,l,f,r){var o=m.options.group.name&&l.options.group.name&&m.options.group.name===l.options.group.name;if(d==null&&(g||o))return!0;if(d==null||d===!1)return!1;if(g&&d==="clone")return d;if(typeof d=="function")return t(d(m,l,f,r),g)(m,l,f,r);var s=(g?m:l).options.group.name;return d===!0||typeof d=="string"&&d===s||d.join&&d.indexOf(s)>-1}}var n={},p=e.group;(!p||gn(p)!="object")&&(p={name:p}),n.name=p.name,n.checkPull=t(p.pull,!0),n.checkPut=t(p.put),n.revertClone=p.revertClone,e.group=n},Eh=function(){!Sh&&ne&&te(ne,"display","none")},Th=function(){!Sh&&ne&&te(ne,"display","")};Kn&&!ph&&document.addEventListener("click",function(c){if(Mn)return c.preventDefault(),c.stopPropagation&&c.stopPropagation(),c.stopImmediatePropagation&&c.stopImmediatePropagation(),Mn=!1,!1},!0);var dt=function(e){if(K){e=e.touches?e.touches[0]:e;var t=ag(e.clientX,e.clientY);if(t){var n={};for(var p in e)e.hasOwnProperty(p)&&(n[p]=e[p]);n.target=n.rootEl=t,n.preventDefault=void 0,n.stopPropagation=void 0,t[Re]._onDragOver(n)}}},lg=function(e){K&&K.parentNode[Re]._isOutsideThisEl(e.target)};function ee(c,e){if(!(c&&c.nodeType&&c.nodeType===1))throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(c));this.el=c,this.options=e=Ze({},e),c[Re]=this;var t={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(c.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return Ah(c,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(g,m){g.setData("Text",m.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:ee.supportPointer!==!1&&"PointerEvent"in window&&!Kt,emptyInsertThreshold:5};rn.initializePlugins(this,c,t);for(var n in t)!(n in e)&&(e[n]=t[n]);$h(e);for(var p in this)p.charAt(0)==="_"&&typeof this[p]=="function"&&(this[p]=this[p].bind(this));this.nativeDraggable=e.forceFallback?!1:og,this.nativeDraggable&&(this.options.touchStartThreshold=1),e.supportPointer?oe(c,"pointerdown",this._onTapStart):(oe(c,"mousedown",this._onTapStart),oe(c,"touchstart",this._onTapStart)),this.nativeDraggable&&(oe(c,"dragover",this),oe(c,"dragenter",this)),_n.push(this.el),e.store&&e.store.get&&this.sort(e.store.get(this)||[]),Ze(this,eg())}ee.prototype={constructor:ee,_isOutsideThisEl:function(e){!this.el.contains(e)&&e!==this.el&&(Ct=null)},_getDirection:function(e,t){return typeof this.options.direction=="function"?this.options.direction.call(this,e,t,K):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,n=this.el,p=this.options,d=p.preventOnFilter,g=e.type,m=e.touches&&e.touches[0]||e.pointerType&&e.pointerType==="touch"&&e,l=(m||e).target,f=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||l,r=p.filter;if(mg(n),!K&&!(/mousedown|pointerdown/.test(g)&&e.button!==0||p.disabled)&&!f.isContentEditable&&!(!this.nativeDraggable&&Kt&&l&&l.tagName.toUpperCase()==="SELECT")&&(l=He(l,p.draggable,n,!1),!(l&&l.animated)&&mn!==l)){if($t=Fe(l),Yt=Fe(l,p.draggable),typeof r=="function"){if(r.call(this,e,l,this)){Ee({sortable:t,rootEl:f,name:"filter",targetEl:l,toEl:n,fromEl:n}),xe("filter",t,{evt:e}),d&&e.cancelable&&e.preventDefault();return}}else if(r&&(r=r.split(",").some(function(o){if(o=He(f,o.trim(),n,!1),o)return Ee({sortable:t,rootEl:o,name:"filter",targetEl:l,fromEl:n,toEl:n}),xe("filter",t,{evt:e}),!0}),r)){d&&e.cancelable&&e.preventDefault();return}p.handle&&!He(f,p.handle,n,!1)||this._prepareDragStart(e,m,l)}}},_prepareDragStart:function(e,t,n){var p=this,d=p.el,g=p.options,m=d.ownerDocument,l;if(n&&!K&&n.parentNode===d){var f=we(n);if(fe=d,K=n,ve=K.parentNode,ft=K.nextSibling,mn=n,an=g.group,ee.dragged=K,ht={target:K,clientX:(t||e).clientX,clientY:(t||e).clientY},Kc=ht.clientX-f.left,qc=ht.clientY-f.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,K.style["will-change"]="all",l=function(){if(xe("delayEnded",p,{evt:e}),ee.eventCanceled){p._onDrop();return}p._disableDelayedDragEvents(),!jc&&p.nativeDraggable&&(K.draggable=!0),p._triggerDragStart(e,t),Ee({sortable:p,name:"choose",originalEvent:e}),Ie(K,g.chosenClass,!0)},g.ignore.split(",").forEach(function(r){vh(K,r.trim(),Oo)}),oe(m,"dragover",dt),oe(m,"mousemove",dt),oe(m,"touchmove",dt),oe(m,"mouseup",p._onDrop),oe(m,"touchend",p._onDrop),oe(m,"touchcancel",p._onDrop),jc&&this.nativeDraggable&&(this.options.touchStartThreshold=4,K.draggable=!0),xe("delayStart",this,{evt:e}),g.delay&&(!g.delayOnTouchOnly||t)&&(!this.nativeDraggable||!(nn||et))){if(ee.eventCanceled){this._onDrop();return}oe(m,"mouseup",p._disableDelayedDrag),oe(m,"touchend",p._disableDelayedDrag),oe(m,"touchcancel",p._disableDelayedDrag),oe(m,"mousemove",p._delayedDragTouchMoveHandler),oe(m,"touchmove",p._delayedDragTouchMoveHandler),g.supportPointer&&oe(m,"pointermove",p._delayedDragTouchMoveHandler),p._dragStartTimer=setTimeout(l,g.delay)}else l()}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){K&&Oo(K),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;re(e,"mouseup",this._disableDelayedDrag),re(e,"touchend",this._disableDelayedDrag),re(e,"touchcancel",this._disableDelayedDrag),re(e,"mousemove",this._delayedDragTouchMoveHandler),re(e,"touchmove",this._delayedDragTouchMoveHandler),re(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||e.pointerType=="touch"&&e,!this.nativeDraggable||t?this.options.supportPointer?oe(document,"pointermove",this._onTouchMove):t?oe(document,"touchmove",this._onTouchMove):oe(document,"mousemove",this._onTouchMove):(oe(K,"dragend",this),oe(fe,"dragstart",this._onDragStart));try{document.selection?yn(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(e,t){if(St=!1,fe&&K){xe("dragStarted",this,{evt:t}),this.nativeDraggable&&oe(document,"dragover",lg);var n=this.options;!e&&Ie(K,n.dragClass,!1),Ie(K,n.ghostClass,!0),ee.active=this,e&&this._appendGhost(),Ee({sortable:this,name:"start",originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(Be){this._lastX=Be.clientX,this._lastY=Be.clientY,Eh();for(var e=document.elementFromPoint(Be.clientX,Be.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(Be.clientX,Be.clientY),e!==t);)t=e;if(K.parentNode[Re]._isOutsideThisEl(e),t)do{if(t[Re]){var n=void 0;if(n=t[Re]._onDragOver({clientX:Be.clientX,clientY:Be.clientY,target:e,rootEl:t}),n&&!this.options.dragoverBubble)break}e=t}while(t=mh(t));Th()}},_onTouchMove:function(e){if(ht){var t=this.options,n=t.fallbackTolerance,p=t.fallbackOffset,d=e.touches?e.touches[0]:e,g=ne&&Tt(ne,!0),m=ne&&g&&g.a,l=ne&&g&&g.d,f=cn&&Ae&&Vc(Ae),r=(d.clientX-ht.clientX+p.x)/(m||1)+(f?f[0]-Io[0]:0)/(m||1),o=(d.clientY-ht.clientY+p.y)/(l||1)+(f?f[1]-Io[1]:0)/(l||1);if(!ee.active&&!St){if(n&&Math.max(Math.abs(d.clientX-this._lastX),Math.abs(d.clientY-this._lastY))<n)return;this._onDragStart(e,!0)}if(ne){g?(g.e+=r-(Ro||0),g.f+=o-(ko||0)):g={a:1,b:0,c:0,d:1,e:r,f:o};var s="matrix(".concat(g.a,",").concat(g.b,",").concat(g.c,",").concat(g.d,",").concat(g.e,",").concat(g.f,")");te(ne,"webkitTransform",s),te(ne,"mozTransform",s),te(ne,"msTransform",s),te(ne,"transform",s),Ro=r,ko=o,Be=d}e.cancelable&&e.preventDefault()}},_appendGhost:function(){if(!ne){var e=this.options.fallbackOnBody?document.body:fe,t=we(K,!0,cn,!0,e),n=this.options;if(cn){for(Ae=e;te(Ae,"position")==="static"&&te(Ae,"transform")==="none"&&Ae!==document;)Ae=Ae.parentNode;Ae!==document.body&&Ae!==document.documentElement?(Ae===document&&(Ae=je()),t.top+=Ae.scrollTop,t.left+=Ae.scrollLeft):Ae=je(),Io=Vc(Ae)}ne=K.cloneNode(!0),Ie(ne,n.ghostClass,!1),Ie(ne,n.fallbackClass,!0),Ie(ne,n.dragClass,!0),te(ne,"transition",""),te(ne,"transform",""),te(ne,"box-sizing","border-box"),te(ne,"margin",0),te(ne,"top",t.top),te(ne,"left",t.left),te(ne,"width",t.width),te(ne,"height",t.height),te(ne,"opacity","0.8"),te(ne,"position",cn?"absolute":"fixed"),te(ne,"zIndex","100000"),te(ne,"pointerEvents","none"),ee.ghost=ne,e.appendChild(ne),te(ne,"transform-origin",Kc/parseInt(ne.style.width)*100+"% "+qc/parseInt(ne.style.height)*100+"%")}},_onDragStart:function(e,t){var n=this,p=e.dataTransfer,d=n.options;if(xe("dragStart",this,{evt:e}),ee.eventCanceled){this._onDrop();return}xe("setupClone",this),ee.eventCanceled||(pe=wh(K),pe.removeAttribute("id"),pe.draggable=!1,pe.style["will-change"]="",this._hideClone(),Ie(pe,this.options.chosenClass,!1),ee.clone=pe),n.cloneId=yn(function(){xe("clone",n),!ee.eventCanceled&&(n.options.removeCloneOnHide||fe.insertBefore(pe,K),n._hideClone(),Ee({sortable:n,name:"clone"}))}),!t&&Ie(K,d.dragClass,!0),t?(Mn=!0,n._loopId=setInterval(n._emulateDragOver,50)):(re(document,"mouseup",n._onDrop),re(document,"touchend",n._onDrop),re(document,"touchcancel",n._onDrop),p&&(p.effectAllowed="move",d.setData&&d.setData.call(n,p,K)),oe(document,"drop",n),te(K,"transform","translateZ(0)")),St=!0,n._dragStartId=yn(n._dragStarted.bind(n,t,e)),oe(document,"selectstart",n),zt=!0,Kt&&te(document.body,"user-select","none")},_onDragOver:function(e){var t=this.el,n=e.target,p,d,g,m=this.options,l=m.group,f=ee.active,r=an===l,o=m.sort,s=Se||f,a,i=this,u=!1;if($s)return;function h(O,D){xe(O,i,Ue({evt:e,isOwner:r,axis:a?"vertical":"horizontal",revert:g,dragRect:p,targetRect:d,canSort:o,fromSortable:s,target:n,completed:b,onMove:function(P,z){return un(fe,t,K,p,P,we(P),e,z)},changed:T},D))}function y(){h("dragOverAnimationCapture"),i.captureAnimationState(),i!==s&&s.captureAnimationState()}function b(O){return h("dragOverCompleted",{insertion:O}),O&&(r?f._hideClone():f._showClone(i),i!==s&&(Ie(K,Se?Se.options.ghostClass:f.options.ghostClass,!1),Ie(K,m.ghostClass,!0)),Se!==i&&i!==ee.active?Se=i:i===ee.active&&Se&&(Se=null),s===i&&(i._ignoreWhileAnimating=n),i.animateAll(function(){h("dragOverAnimationComplete"),i._ignoreWhileAnimating=null}),i!==s&&(s.animateAll(),s._ignoreWhileAnimating=null)),(n===K&&!K.animated||n===t&&!n.animated)&&(Ct=null),!m.dragoverBubble&&!e.rootEl&&n!==document&&(K.parentNode[Re]._isOutsideThisEl(e.target),!O&&dt(e)),!m.dragoverBubble&&e.stopPropagation&&e.stopPropagation(),u=!0}function T(){Oe=Fe(K),tt=Fe(K,m.draggable),Ee({sortable:i,name:"change",toEl:t,newIndex:Oe,newDraggableIndex:tt,originalEvent:e})}if(e.preventDefault!==void 0&&e.cancelable&&e.preventDefault(),n=He(n,m.draggable,t,!0),h("dragOver"),ee.eventCanceled)return u;if(K.contains(e.target)||n.animated&&n.animatingX&&n.animatingY||i._ignoreWhileAnimating===n)return b(!1);if(Mn=!1,f&&!m.disabled&&(r?o||(g=ve!==fe):Se===this||(this.lastPutMode=an.checkPull(this,f,K,e))&&l.checkPut(this,f,K,e))){if(a=this._getDirection(e,n)==="vertical",p=we(K),h("dragOverValid"),ee.eventCanceled)return u;if(g)return ve=fe,y(),this._hideClone(),h("revert"),ee.eventCanceled||(ft?fe.insertBefore(K,ft):fe.appendChild(K)),b(!0);var $=Vs(t,m.draggable);if(!$||dg(e,a,this)&&!$.animated){if($===K)return b(!1);if($&&t===e.target&&(n=$),n&&(d=we(n)),un(fe,t,K,p,n,d,e,!!n)!==!1)return y(),$&&$.nextSibling?t.insertBefore(K,$.nextSibling):t.appendChild(K),ve=t,T(),b(!0)}else if($&&hg(e,a,this)){var A=Mt(t,0,m,!0);if(A===K)return b(!1);if(n=A,d=we(n),un(fe,t,K,p,n,d,e,!1)!==!1)return y(),t.insertBefore(K,A),ve=t,T(),b(!0)}else if(n.parentNode===t){d=we(n);var S=0,M,R=K.parentNode!==t,L=!sg(K.animated&&K.toRect||p,n.animated&&n.toRect||d,a),_=a?"top":"left",I=Gc(n,"top","top")||Gc(K,"top","top"),w=I?I.scrollTop:void 0;Ct!==n&&(M=d[_],Qt=!1,ln=!L&&m.invertSwap||R),S=fg(e,n,d,a,L?1:m.swapThreshold,m.invertedSwapThreshold==null?m.swapThreshold:m.invertedSwapThreshold,ln,Ct===n);var v;if(S!==0){var C=Fe(K);do C-=S,v=ve.children[C];while(v&&(te(v,"display")==="none"||v===ne))}if(S===0||v===n)return b(!1);Ct=n,Xt=S;var E=n.nextElementSibling,x=!1;x=S===1;var k=un(fe,t,K,p,n,d,e,x);if(k!==!1)return(k===1||k===-1)&&(x=k===1),$s=!0,setTimeout(ug,30),y(),x&&!E?t.appendChild(K):n.parentNode.insertBefore(K,x?E:n),I&&bh(I,0,w-I.scrollTop),ve=K.parentNode,M!==void 0&&!ln&&(vn=Math.abs(M-we(n)[_])),T(),b(!0)}if(t.contains(K))return b(!1)}return!1},_ignoreWhileAnimating:null,_offMoveEvents:function(){re(document,"mousemove",this._onTouchMove),re(document,"touchmove",this._onTouchMove),re(document,"pointermove",this._onTouchMove),re(document,"dragover",dt),re(document,"mousemove",dt),re(document,"touchmove",dt)},_offUpEvents:function(){var e=this.el.ownerDocument;re(e,"mouseup",this._onDrop),re(e,"touchend",this._onDrop),re(e,"pointerup",this._onDrop),re(e,"touchcancel",this._onDrop),re(document,"selectstart",this)},_onDrop:function(e){var t=this.el,n=this.options;if(Oe=Fe(K),tt=Fe(K,n.draggable),xe("drop",this,{evt:e}),ve=K&&K.parentNode,Oe=Fe(K),tt=Fe(K,n.draggable),ee.eventCanceled){this._nulling();return}St=!1,ln=!1,Qt=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),Es(this.cloneId),Es(this._dragStartId),this.nativeDraggable&&(re(document,"drop",this),re(t,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),Kt&&te(document.body,"user-select",""),te(K,"transform",""),e&&(zt&&(e.cancelable&&e.preventDefault(),!n.dropBubble&&e.stopPropagation()),ne&&ne.parentNode&&ne.parentNode.removeChild(ne),(fe===ve||Se&&Se.lastPutMode!=="clone")&&pe&&pe.parentNode&&pe.parentNode.removeChild(pe),K&&(this.nativeDraggable&&re(K,"dragend",this),Oo(K),K.style["will-change"]="",zt&&!St&&Ie(K,Se?Se.options.ghostClass:this.options.ghostClass,!1),Ie(K,this.options.chosenClass,!1),Ee({sortable:this,name:"unchoose",toEl:ve,newIndex:null,newDraggableIndex:null,originalEvent:e}),fe!==ve?(Oe>=0&&(Ee({rootEl:ve,name:"add",toEl:ve,fromEl:fe,originalEvent:e}),Ee({sortable:this,name:"remove",toEl:ve,originalEvent:e}),Ee({rootEl:ve,name:"sort",toEl:ve,fromEl:fe,originalEvent:e}),Ee({sortable:this,name:"sort",toEl:ve,originalEvent:e})),Se&&Se.save()):Oe!==$t&&Oe>=0&&(Ee({sortable:this,name:"update",toEl:ve,originalEvent:e}),Ee({sortable:this,name:"sort",toEl:ve,originalEvent:e})),ee.active&&((Oe==null||Oe===-1)&&(Oe=$t,tt=Yt),Ee({sortable:this,name:"end",toEl:ve,originalEvent:e}),this.save()))),this._nulling()},_nulling:function(){xe("nulling",this),fe=K=ve=ne=ft=pe=mn=nt=ht=Be=zt=Oe=tt=$t=Yt=Ct=Xt=Se=an=ee.dragged=ee.ghost=ee.clone=ee.active=null,xn.forEach(function(e){e.checked=!0}),xn.length=Ro=ko=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":K&&(this._onDragOver(e),cg(e));break;case"selectstart":e.preventDefault();break}},toArray:function(){for(var e=[],t,n=this.el.children,p=0,d=n.length,g=this.options;p<d;p++)t=n[p],He(t,g.draggable,this.el,!1)&&e.push(t.getAttribute(g.dataIdAttr)||gg(t));return e},sort:function(e,t){var n={},p=this.el;this.toArray().forEach(function(d,g){var m=p.children[g];He(m,this.options.draggable,p,!1)&&(n[d]=m)},this),t&&this.captureAnimationState(),e.forEach(function(d){n[d]&&(p.removeChild(n[d]),p.appendChild(n[d]))}),t&&this.animateAll()},save:function(){var e=this.options.store;e&&e.set&&e.set(this)},closest:function(e,t){return He(e,t||this.options.draggable,this.el,!1)},option:function(e,t){var n=this.options;if(t===void 0)return n[e];var p=rn.modifyOption(this,e,t);typeof p<"u"?n[e]=p:n[e]=t,e==="group"&&$h(n)},destroy:function(){xe("destroy",this);var e=this.el;e[Re]=null,re(e,"mousedown",this._onTapStart),re(e,"touchstart",this._onTapStart),re(e,"pointerdown",this._onTapStart),this.nativeDraggable&&(re(e,"dragover",this),re(e,"dragenter",this)),Array.prototype.forEach.call(e.querySelectorAll("[draggable]"),function(t){t.removeAttribute("draggable")}),this._onDrop(),this._disableDelayedDragEvents(),_n.splice(_n.indexOf(this.el),1),this.el=e=null},_hideClone:function(){if(!nt){if(xe("hideClone",this),ee.eventCanceled)return;te(pe,"display","none"),this.options.removeCloneOnHide&&pe.parentNode&&pe.parentNode.removeChild(pe),nt=!0}},_showClone:function(e){if(e.lastPutMode!=="clone"){this._hideClone();return}if(nt){if(xe("showClone",this),ee.eventCanceled)return;K.parentNode==fe&&!this.options.group.revertClone?fe.insertBefore(pe,K):ft?fe.insertBefore(pe,ft):fe.appendChild(pe),this.options.group.revertClone&&this.animate(K,pe),te(pe,"display",""),nt=!1}}};function cg(c){c.dataTransfer&&(c.dataTransfer.dropEffect="move"),c.cancelable&&c.preventDefault()}function un(c,e,t,n,p,d,g,m){var l,f=c[Re],r=f.options.onMove,o;return window.CustomEvent&&!et&&!nn?l=new CustomEvent("move",{bubbles:!0,cancelable:!0}):(l=document.createEvent("Event"),l.initEvent("move",!0,!0)),l.to=e,l.from=c,l.dragged=t,l.draggedRect=n,l.related=p||e,l.relatedRect=d||we(e),l.willInsertAfter=m,l.originalEvent=g,c.dispatchEvent(l),r&&(o=r.call(f,l,g)),o}function Oo(c){c.draggable=!1}function ug(){$s=!1}function hg(c,e,t){var n=we(Mt(t.el,0,t.options,!0)),p=Ch(t.el,t.options,ne),d=10;return e?c.clientX<p.left-d||c.clientY<n.top&&c.clientX<n.right:c.clientY<p.top-d||c.clientY<n.bottom&&c.clientX<n.left}function dg(c,e,t){var n=we(Vs(t.el,t.options.draggable)),p=Ch(t.el,t.options,ne),d=10;return e?c.clientX>p.right+d||c.clientY>n.bottom&&c.clientX>n.left:c.clientY>p.bottom+d||c.clientX>n.right&&c.clientY>n.top}function fg(c,e,t,n,p,d,g,m){var l=n?c.clientY:c.clientX,f=n?t.height:t.width,r=n?t.top:t.left,o=n?t.bottom:t.right,s=!1;if(!g){if(m&&vn<f*p){if(!Qt&&(Xt===1?l>r+f*d/2:l<o-f*d/2)&&(Qt=!0),Qt)s=!0;else if(Xt===1?l<r+vn:l>o-vn)return-Xt}else if(l>r+f*(1-p)/2&&l<o-f*(1-p)/2)return pg(e)}return s=s||g,s&&(l<r+f*d/2||l>o-f*d/2)?l>r+f/2?1:-1:0}function pg(c){return Fe(K)<Fe(c)?1:-1}function gg(c){for(var e=c.tagName+c.className+c.src+c.href+c.textContent,t=e.length,n=0;t--;)n+=e.charCodeAt(t);return n.toString(36)}function mg(c){xn.length=0;for(var e=c.getElementsByTagName("input"),t=e.length;t--;){var n=e[t];n.checked&&xn.push(n)}}function yn(c){return setTimeout(c,0)}function Es(c){return clearTimeout(c)}Kn&&oe(document,"touchmove",function(c){(ee.active||St)&&c.cancelable&&c.preventDefault()});ee.utils={on:oe,off:re,css:te,find:vh,is:function(e,t){return!!He(e,t,e,!1)},extend:Zp,throttle:yh,closest:He,toggleClass:Ie,clone:wh,index:Fe,nextTick:yn,cancelNextTick:Es,detectDirection:Ah,getChild:Mt,expando:Re};ee.get=function(c){return c[Re]};ee.mount=function(){for(var c=arguments.length,e=new Array(c),t=0;t<c;t++)e[t]=arguments[t];e[0].constructor===Array&&(e=e[0]),e.forEach(function(n){if(!n.prototype||!n.prototype.constructor)throw"Sortable: Mounted plugin must be a constructor function, not ".concat({}.toString.call(n));n.utils&&(ee.utils=Ue(Ue({},ee.utils),n.utils)),rn.mount(n)})};ee.create=function(c,e){return new ee(c,e)};ee.version=Xp;var be=[],jt,Ts,Ms=!1,Do,No,Ln,Ut;function vg(){function c(){this.defaults={scroll:!0,forceAutoScrollFallback:!1,scrollSensitivity:30,scrollSpeed:10,bubbleScroll:!0};for(var e in this)e.charAt(0)==="_"&&typeof this[e]=="function"&&(this[e]=this[e].bind(this))}return c.prototype={dragStarted:function(t){var n=t.originalEvent;this.sortable.nativeDraggable?oe(document,"dragover",this._handleAutoScroll):this.options.supportPointer?oe(document,"pointermove",this._handleFallbackAutoScroll):n.touches?oe(document,"touchmove",this._handleFallbackAutoScroll):oe(document,"mousemove",this._handleFallbackAutoScroll)},dragOverCompleted:function(t){var n=t.originalEvent;!this.options.dragOverBubble&&!n.rootEl&&this._handleAutoScroll(n)},drop:function(){this.sortable.nativeDraggable?re(document,"dragover",this._handleAutoScroll):(re(document,"pointermove",this._handleFallbackAutoScroll),re(document,"touchmove",this._handleFallbackAutoScroll),re(document,"mousemove",this._handleFallbackAutoScroll)),Xc(),bn(),Jp()},nulling:function(){Ln=Ts=jt=Ms=Ut=Do=No=null,be.length=0},_handleFallbackAutoScroll:function(t){this._handleAutoScroll(t,!0)},_handleAutoScroll:function(t,n){var p=this,d=(t.touches?t.touches[0]:t).clientX,g=(t.touches?t.touches[0]:t).clientY,m=document.elementFromPoint(d,g);if(Ln=t,n||this.options.forceAutoScrollFallback||nn||et||Kt){Fo(t,this.options,m,n);var l=it(m,!0);Ms&&(!Ut||d!==Do||g!==No)&&(Ut&&Xc(),Ut=setInterval(function(){var f=it(document.elementFromPoint(d,g),!0);f!==l&&(l=f,bn()),Fo(t,p.options,f,n)},10),Do=d,No=g)}else{if(!this.options.bubbleScroll||it(m,!0)===je()){bn();return}Fo(t,this.options,it(m,!1),!1)}}},Ze(c,{pluginName:"scroll",initializeByDefault:!0})}function bn(){be.forEach(function(c){clearInterval(c.pid)}),be=[]}function Xc(){clearInterval(Ut)}var Fo=yh(function(c,e,t,n){if(e.scroll){var p=(c.touches?c.touches[0]:c).clientX,d=(c.touches?c.touches[0]:c).clientY,g=e.scrollSensitivity,m=e.scrollSpeed,l=je(),f=!1,r;Ts!==t&&(Ts=t,bn(),jt=e.scroll,r=e.scrollFn,jt===!0&&(jt=it(t,!0)));var o=0,s=jt;do{var a=s,i=we(a),u=i.top,h=i.bottom,y=i.left,b=i.right,T=i.width,$=i.height,A=void 0,S=void 0,M=a.scrollWidth,R=a.scrollHeight,L=te(a),_=a.scrollLeft,I=a.scrollTop;a===l?(A=T<M&&(L.overflowX==="auto"||L.overflowX==="scroll"||L.overflowX==="visible"),S=$<R&&(L.overflowY==="auto"||L.overflowY==="scroll"||L.overflowY==="visible")):(A=T<M&&(L.overflowX==="auto"||L.overflowX==="scroll"),S=$<R&&(L.overflowY==="auto"||L.overflowY==="scroll"));var w=A&&(Math.abs(b-p)<=g&&_+T<M)-(Math.abs(y-p)<=g&&!!_),v=S&&(Math.abs(h-d)<=g&&I+$<R)-(Math.abs(u-d)<=g&&!!I);if(!be[o])for(var C=0;C<=o;C++)be[C]||(be[C]={});(be[o].vx!=w||be[o].vy!=v||be[o].el!==a)&&(be[o].el=a,be[o].vx=w,be[o].vy=v,clearInterval(be[o].pid),(w!=0||v!=0)&&(f=!0,be[o].pid=setInterval((function(){n&&this.layer===0&&ee.active._onTouchMove(Ln);var E=be[this.layer].vy?be[this.layer].vy*m:0,x=be[this.layer].vx?be[this.layer].vx*m:0;typeof r=="function"&&r.call(ee.dragged.parentNode[Re],x,E,c,Ln,be[this.layer].el)!=="continue"||bh(be[this.layer].el,x,E)}).bind({layer:o}),24))),o++}while(e.bubbleScroll&&s!==l&&(s=it(s,!1)));Ms=f}},30),Mh=function(e){var t=e.originalEvent,n=e.putSortable,p=e.dragEl,d=e.activeSortable,g=e.dispatchSortableEvent,m=e.hideGhostForTarget,l=e.unhideGhostForTarget;if(t){var f=n||d;m();var r=t.changedTouches&&t.changedTouches.length?t.changedTouches[0]:t,o=document.elementFromPoint(r.clientX,r.clientY);l(),f&&!f.el.contains(o)&&(g("spill"),this.onSpill({dragEl:p,putSortable:n}))}};function Ks(){}Ks.prototype={startIndex:null,dragStart:function(e){var t=e.oldDraggableIndex;this.startIndex=t},onSpill:function(e){var t=e.dragEl,n=e.putSortable;this.sortable.captureAnimationState(),n&&n.captureAnimationState();var p=Mt(this.sortable.el,this.startIndex,this.options);p?this.sortable.el.insertBefore(t,p):this.sortable.el.appendChild(t),this.sortable.animateAll(),n&&n.animateAll()},drop:Mh};Ze(Ks,{pluginName:"revertOnSpill"});function qs(){}qs.prototype={onSpill:function(e){var t=e.dragEl,n=e.putSortable,p=n||this.sortable;p.captureAnimationState(),t.parentNode&&t.parentNode.removeChild(t),p.animateAll()},drop:Mh};Ze(qs,{pluginName:"removeOnSpill"});ee.mount(new vg);ee.mount(qs,Ks);const $e={getStyle:(c,e=!1)=>{let t;return window.getComputedStyle?t=window.getComputedStyle(c,null):c.currentStyle&&(t=c.currentStyle),e?t[e]:t},fadeOut:(c,e=250)=>{const t=1/(e/60);c.style.opacity=1,(function n(){const p=Number(c.style.opacity)-t;p>0?(c.style.opacity=p,window.requestAnimationFrame(n)):c.remove()})()},slideDown:(c,e=250,t=!1)=>{c.style.display="block";const n=$e.getStyle(c),p=Number.parseInt(n.height,10),d=p/(e/60);c.style.height="0px",(function g(){const m=Number.parseFloat(c.style.height),l=m+d;m<p?(c.style.height=`${l}px`,window.requestAnimationFrame(g)):(c.style.height="auto",t&&t(c))})()},slideUp:(c,e=250,t=!1)=>{const n=$e.getStyle(c),p=Number.parseInt(n.height,10),d=n.overflow;c.style.overflow="hidden",c.style.height=`${p}px`;const g=n.minHeight;c.style.minHeight="auto";const m=parseFloat(p/(e/60)).toFixed(2);(function l(){const r=Number.parseInt(c.style.height,10)-m;r>0?(c.style.height=`${r}px`,window.requestAnimationFrame(l)):(c.style.overflow=d,c.style.display="none",c.style.minHeight=g,delete c.style.height,t&&t(c))})()},slideToggle:(c,e=250,t=$e.getStyle(c,"display")==="none")=>{t?$e.slideDown(c,e):$e.slideUp(c,e)}},_h=c=>Number.isInteger(Number(c)),at=c=>{let e=0,t=c;for(;t?.previousElementSibling;)t=t.previousElementSibling,e++;return e},Rn=(c,e,t)=>{const n=t.split("||"),d=pt(e).map(g=>c.find(m=>{const l=n.find(f=>!!De(m,f));return l&&De(m,l)===g})).filter(Boolean).concat(c);return pt(d)},qn=(c,e,t)=>{for(let n=0;n<c.length;n++)e.call(t,c[n],n)},Ys=(c,e)=>{const t=[];return qn(c,(n,p)=>t.push(e(n,p))),t},Po={},xh=c=>{const e={className:"class"};if(Po[c])return Po[c];const n=(e[c]||c).replace(/^\d+/,"").replace(/[^a-zA-Z0-9-:]/g,"");return Po[c]=n,n},Lh=c=>c.replace(/\b\w/g,e=>e.toUpperCase()),yg=c=>window.JSON.parse(window.JSON.stringify(c)),bg=(c,e)=>e.filter(t=>!~c.indexOf(t)),Rh=()=>window.navigator.userAgent.indexOf("MSIE ")!==-1,Ne={capitalize:Lh,safeAttrName:xh,forEach:qn,copyObj:yg,map:Ys,subtract:bg,indexOfNode:at,isInt:_h,get:De,orderObjectsBy:Rn,isIE:Rh},wg={glyphicons:c=>`<span class="glyphicon glyphicon-${c}" aria-hidden="true"></span>`,"font-awesome":c=>{const[e,t]=c.split(" ");return`<i class="${e} fa-${t}"></i>`},fontello:c=>`<i class="${lh}${c}">${c}</i>`},Cg=new Set(["input","textarea","select"]),Sg=(c={})=>{let e=c?.attrs?.name||c?.name;if(e)return e;const t=We(c);let n=c.config?.label||c.attrs?.label||c?.label;return n&&(typeof n=="object"&&(n=U.create(n).textContent),/^<.+>.+<.+>$/gim.test(n)&&(n=np(n)),e=`${t}-${ch(ip(n,24,null))}`),e||t};class Ag{constructor(e=Object.create(null)){this.options=e}set setOptions(e){this.options=ze(this.options,e)}processElemArg(e){let t=e,n;if(typeof t=="string")return n=t,t={tag:n},t;if(t.attrs){const{tag:p,...d}=t.attrs;p&&(typeof p=="string"?n=p:n=(p.find(m=>m.selected===!0)||p[0]).value),t.attrs=d}return t.tag=n||t.tag||"div",t}render=e=>(e.id=`f-${e.id||We()}`,this.create(e));create=(e,t=!1)=>{if(!e)return;if(this.isDOMElement(e))return e;const n=this,p=["children","content"],{className:d,options:g,dataset:m,...l}=this.processElemArg(e);p.push("tag");let f;const{tag:r}=l;let o;const s={attrs:{},className:[Ne.get(l,"config.inputWrap")],children:[],config:{}};let a=document.createElement(r);const i={string:h=>{a.innerHTML+=h},object:h=>h&&a.appendChild(n.create(h,t)),node:h=>a.appendChild(h),component:h=>a.appendChild(h.dom),array:h=>{for(const y of h)f=n.childType(y),i[f](y)},function:h=>{h=h(),f=n.childType(h),i[f](h)},undefined:()=>null,boolean:()=>null};if(d&&(l.attrs=ze(l.attrs,{className:d})),g){const h=this.processOptions(g,l,t);if(this.holdsContent(a)&&r!=="button")i.array.call(this,h),l.content=void 0;else return Ne.forEach(h,y=>{s.children.push(n.create(y,t))}),l.attrs.className&&(s.className=l.attrs.className),s.id=l.id,s.config={...l.config},this.create(s,t);p.push("options")}if(l.attrs&&(n.processAttrs(l,a,t),p.push("attrs")),l.config){if(l.config.label&&(l.config.label&&r!=="button"||["radio","checkbox"].includes(Ne.get(l,"attrs.type")))&&!t){const h=n.label(l);if(!l.config.hideLabel){const y=[h,a];n.labelAfter(l)&&y.reverse(),s.children.push(y)}}p.push("config")}if(l.content||l.children){const h=l.content||l.children;f=n.childType(h),i[f]||console.error(`childType: ${f} is not supported`),i[f].call(this,h)}if(m){for(const h in m)Object.hasOwn(m,h)&&(a.dataset[h]=typeof m[h]=="function"?m[h]():m[h]);p.push("dataset")}l.action&&(this.actionHandler(a,l.action),p.push("action"));const u=Ne.subtract(p,Object.keys(l));for(o=u.length-1;o>=0;o--)a[u[o]]=l[u[o]];return s.children.length&&(a=this.create(s)),a};onRender=(e,t,n=Ke)=>{const p=Date.now(),d=()=>{!e.parentElement&&Date.now()-p<n?window.requestAnimationFrame(d):e.parentElement&&t(e)};d()};actionHandler(e,t){const n={onRender:U.onRender,render:U.onRender},p=["focus","blur"],d=g=>(m,l)=>m.addEventListener(g,l,p.includes(g));return Object.entries(t).map(([g,m])=>(Array.isArray(m)?m:[m]).map(f=>(n[g]||d(g))(e,f)))}get icons(){if(this.iconSymbols)return this.iconSymbols;const e=document.querySelectorAll(`#${ot} svg symbol`),t=n=>({tag:"svg",attrs:{className:["svg-icon",n]},children:[{tag:"use",attrs:{"xmlns:xlink":"http://www.w3.org/1999/xlink","xlink:href":`#${n}`}}]});return this.iconSymbols=Array.from(e).reduce((n,p)=>{const d=p.id.replace(lh,"");return n[d]=t(p.id),n},{}),this.cachedIcons={},this.iconSymbols}icon(e,t){if(!e)return;const n=`${e}?${new URLSearchParams(t).toString()}`;if(this.cachedIcons?.[n])return this.cachedIcons[n];const p=this.icons[e];if(p){if(t){const d=ze(p,t);return this.cachedIcons[n]=U.create(d).outerHTML,this.cachedIcons[n]}return this.cachedIcons[n]=U.create(p).outerHTML,this.cachedIcons[n]}return wg[U.options.iconFont]?.(e)||e}processAttrs(e,t,n){const{attrs:p={}}=e;if(!n&&!p.name&&p.name!==null&&this.isInput(e.tag)){const d=Sg(e);d&&t.setAttribute("name",d)}for(const d of Object.keys(p)){const g=Ne.safeAttrName(d),m=this.processAttrValue(p[d]);m!==!1&&t.setAttribute(g,m)}}processAttrValue(e){if(typeof e=="function")return e();if(typeof e=="boolean")return e&&"";let t=e||"";if(Array.isArray(t))if(typeof t[0]=="object"){const n=t.filter(p=>p.selected===!0);t=n.length?n[0].value:t[0].value}else t=t.join(" ");return t}toggleElementsByStr=(e,t)=>{const n=[],p=(d,g)=>{g?(d.style.display="block",n.push(d)):d.style.display="none"};return U.elementsContainText(e,t,p),n};elementsContainText=(e,t,n)=>{const p=[];return qn(e,d=>{const m=d.textContent.toLowerCase().indexOf(t.toLowerCase())!==-1;n?.(d,m),m&&p.push(d)}),p};generateOption=({type:e="option",label:t,value:n,i:p=0,selected:d})=>({tag:e==="option"?"option":"input",attrs:{type:e,value:n||`${e}-${p}`,[e==="option"?"selected":"checked"]:d||!p},config:{label:t||Q.get("labelCount",{label:Q.get("option"),count:p})}});processOptions(e,t,n){const{action:p,attrs:d={}}=t,g=d.type||t.tag,m=d.id||t.id,l=(r,o)=>{const{label:s,value:a,...i}=r,u=()=>{const y={tag:"input",attrs:{name:m,type:g,value:a||"",id:`${m}-${o}`,...i},action:p},b={tag:"label",attrs:{for:`${m}-${o}`},children:s},T={children:[y,b],className:[`f-${g}`]};return d.className&&(t.config.inputWrap=d.className),t.config.inline&&T.className.push(`f-${g}-inline`),r.selected&&(y.attrs.checked=!0),n&&(b.attrs.contenteditable=!0),T};return{select:()=>{const y=r.attrs||r,b={attrs:y,...r,...y},{label:T,checked:$,selected:A,attrs:S}=b;return{tag:"option",attrs:{...S,selected:!!($||A)},children:T}},button:y=>{const{type:b,label:T,className:$,id:A}=y;return{...t,attrs:{type:b},className:$,id:A||We(),options:void 0,children:T,action:t.action}},checkbox:u,radio:u}[g]?.(r)};return e.map(l)}holdsContent(e){return e.outerHTML.indexOf("/")!==-1}isBlockInput(e){return!this.isInput(e)&&this.holdsContent(e)}isInput(e){let t=e;return typeof t!="string"&&(t=t.tagName),Cg.has(t)}parsedHtml(e){const t=document.createElement("textarea");return t.innerHTML=e,t.textContent}labelAfter(e){const t=Ne.get(e,"attrs.type"),n=Ne.get(e,"config.labelAfter");return n!==void 0?n:t==="checkbox"||t==="radio"}requiredMark=()=>({tag:"span",className:"text-error",children:"*"});label(e,t){const n=Ne.get(e,"attrs.required");let{config:{label:p=""}}=e;const{id:d,attrs:g}=e;typeof p=="function"&&(p=p());const m={tag:"label",attrs:{for:d||g?.id},className:[],children:[p,n&&this.requiredMark()],action:{}};return t&&(m.attrs.for=void 0,m.attrs.contenteditable=!0,m.fMap=t),m}childType(e){return e===void 0?e:[["array",t=>Array.isArray(t)],["node",t=>t instanceof window.Node||t instanceof window.HTMLElement],["component",()=>e?.dom],[typeof e,()=>!0]].find(t=>t[1](e))[0]}getStyle(e,t=!1){let n;return window.getComputedStyle?n=window.getComputedStyle(e,null):e.currentStyle&&(n=e.currentStyle),t?n[t]:n}getElement(e){const t={node:()=>e,object:()=>document.getElementById(e.id),string:()=>document.getElementById(e)},n=this.childType(e);return t[n]()}empty(e){for(;e.firstChild;)this.remove(e.firstChild);return e}removeEmpty=e=>{const t=e.parentElement,n=Le(e),p=t.getElementsByClassName(`formeo-${n}`);if(this.remove(e),!p.length)return this.isStage(t)?this.emptyClass(t):this.removeEmpty(t)};remove(e){const t=Le(e);return t?ce.remove(`${t}s.${e.id}`):e.parentElement.removeChild(e)}removeClasses(e,t){const n={string:p=>p.classList.remove(t),array:p=>{for(const d of t)p.classList.remove(d)}};n.object=n.string,Ne.forEach(e,n[this.childType(t)])}addClasses(e,t){const n={string:p=>p.classList.add(t),array:p=>{for(const d of t)p.classList.add(d)}};Ne.forEach(e,n[this.childType(t)])}formGroup(e,t=""){return{className:["f-field-group",t],children:e}}coords(e){const t=e.getBoundingClientRect(),n=document.body.getBoundingClientRect();return{pageX:t.left+t.width/2,pageY:t.top-n.top-t.height/2}}clearStage(e){e.classList.add("removing-all-fields");const t=()=>{U.empty(e),e.classList.remove("removing-all-fields"),U.emptyClass(e),$e.slideDown(e,300)};$e.slideUp(e,600,t)}toggleSortable(e,t){let n=t;const p=Le(e);if(!p)return;const d=Le(e.parentElement),g=U[p].get(e.id).sortable;n||(n=!g.option("disabled")),g.option("disabled",n),d&&["rows","columns","stages"].includes(d)&&this.toggleSortable(e.parentElement,n)}emptyClass(e){const t=e.getElementsByClassName(Mf.get(e.classList.item(0)));e.classList.toggle("empty",!t.length)}btnTemplate=({title:e="",...t})=>({tag:"button",attrs:{type:"button",title:e},...t});isControls=e=>Le(e)===rt;isStage=e=>Le(e)===kt;isRow=e=>Le(e)===Xe;isColumn=e=>Le(e)===Qe;isField=e=>Le(e)===It;asComponent=e=>ce[`${Le(e)}s`].get(e.id);isDOMElement(e){return e instanceof window.Element||e instanceof window.HTMLElement||!!(e&&typeof e=="object"&&e.nodeType===1&&typeof e.nodeName=="string")}}const U=new Ag,$g="modulepreload",Eg=function(c){return"/formeo/"+c},Qc={},At=function(e,t,n){let p=Promise.resolve();if(t&&t.length>0){let l=function(f){return Promise.all(f.map(r=>Promise.resolve(r).then(o=>({status:"fulfilled",value:o}),o=>({status:"rejected",reason:o}))))};document.getElementsByTagName("link");const g=document.querySelector("meta[property=csp-nonce]"),m=g?.nonce||g?.getAttribute("nonce");p=l(t.map(f=>{if(f=Eg(f),f in Qc)return;Qc[f]=!0;const r=f.endsWith(".css"),o=r?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${f}"]${o}`))return;const s=document.createElement("link");if(s.rel=r?"stylesheet":$g,r||(s.as="script"),s.crossOrigin="",s.href=f,m&&s.setAttribute("nonce",m),document.head.appendChild(s),r)return new Promise((a,i)=>{s.addEventListener("load",a),s.addEventListener("error",()=>i(new Error(`Unable to preload CSS for ${f}`)))})}))}function d(g){const m=new Event("vite:preloadError",{cancelable:!0});if(m.payload=g,window.dispatchEvent(m),!m.defaultPrevented)throw g}return p.then(g=>{for(const m of g||[])m.status==="rejected"&&d(m.reason);return e().catch(d)})},Et="f-autocomplete",Tg=`${Et}-display-field`,Xs=`${Et}-list`,Nt="highlight-component",kn=`${Xs}-item`,Mg=(c,e)=>{const t=c.reduce((n,p)=>n+(p===e),0);return t>1?`(${t})`:""},kh=["config.label","config.controlId"],_g=["config.legend","name"],xg=[...kh,..._g],Wo=c=>kh.reduce((e,t)=>e||c.get(t),null),Zc=c=>xg.reduce((e,t)=>e||c.get(t),null)||st(c.name),Lg=new Map([["condition.source",Wo],["if.condition.source",Wo],["if.condition.target",Wo],["then.condition.target",Zc],["condition.target",Zc]]),Ih=({id:c,...e},t)=>{const{name:n,label:p}=e;return n?Lg.get(t)(e):p},Rg=({selectedId:c,...e})=>(e.value===c&&(e.selected=!0),e),Bo=c=>(c.classList.contains(kn)||(c=c.parentElement),c),Oh=({value:c,textLabel:e,htmlLabel:t,componentType:n,depth:p=0},d)=>{const g={tag:"li",children:t,dataset:{value:c,label:e},className:[kn,`${kn}-depth-${p}`,`component-type-${n}`],action:{mousedown:({target:m})=>{m=Bo(m),d.setValue(m),d.selectOption(m),d.hideList()},mouseover:({target:m})=>{m=Bo(m),d.removeHighlight(),d.highlightComponent(m)},mouseleave:({target:m})=>{m=Bo(m),d.removeHighlight()}}};return U.create(g)},kg=(c,e)=>{const t=c.data.options.map((p,d)=>{const g=`${c.address}.options[${d}]`,m=p.label,l=p.label;return Oh({value:g,textLabel:m,htmlLabel:l,componentType:"option",depth:1},e)});return U.create({tag:"ul",attrs:{className:[Xs,"options-list"]},children:t})},Ig=c=>{const e=c.value,t=[],n=ce.flatList();return Object.entries(n).reduce((d,[g,m])=>{const l=Ih(m,c.key);if(l){const f=m.name,r={tag:"span",content:` ${st(f)}`,className:"component-type"},o=`${f}.${l}`;t.push(o);const s=Mg(t,o),a={tag:"span",content:s,className:"component-label-count"},i=[`${l} `,a,r],u=[l,s].join(" ").trim();if(m.isCheckable){const y=kg(m,c);i.push(y)}const h=Rg({value:g,textLabel:u,htmlLabel:i,componentType:f,selectedId:e});d.push(Oh(h,c))}return d},[])};class Og{lastCache=Date.now();optionsCache=null;constructor({key:e,value:t,className:n,onChange:p=ws}){this.key=e,this.className=[n||this.key.replace(/\./g,"-")].flat(),this.value=t,this.onChange=p||ws,this.events=[],this.build()}createProxy(){return new Proxy(this,{get(e,t){if(t in e)return e[t];if(t in e.dom){const n=e.dom[t];return typeof n=="function"?n.bind(e.dom):n}},set(e,t,n){return t in e?e[t]=n:e.dom[t]=n,!0}})}get isAddress(){return Pe(this.value)}get valueComponent(){return Pe(this.value)&&ce.getAddress(this.value)}build(){const e=n=>{const p=this.list,d=this.getActiveOption();let m=new Map([[38,()=>{const l=this.getPreviousOption(d);l&&this.selectOption(l)}],[40,()=>{const l=this.getNextOption(d);l&&this.selectOption(l)}],[13,()=>{d&&(this.selectOption(d),this.setValue(d),p.style.display==="none"?this.showList(d):this.hideList()),n.preventDefault()}],[27,()=>{this.hideList()}]]).get(n.keyCode);return m||(m=()=>!1),m()},t={focus:({target:n})=>{this.updateOptions(),n.parentElement.classList.add(`${Et}-focused`);const p=U.toggleElementsByStr(this.list.querySelectorAll(`.${kn}-depth-0`),n.value);n.addEventListener("keydown",e);const d=this.list.querySelector(".active-option")||p[0];this.showList(d)},blur:({target:n})=>{n.parentElement.classList.remove(`${Et}-focused`),n.removeEventListener("keydown",e),this.hideList()},input:n=>{const{value:p}=n.target,d=U.toggleElementsByStr(this.list.querySelectorAll("li"),p);if(p.length===0&&this.clearValue(),d.length===0)this.hideList();else{const g=this.getActiveOption()||d[0];this.showList(g)}this.setValue({dataset:{label:p,value:p}})}};return this.displayField=U.create({tag:"input",autocomplete:"off",action:t,attrs:{type:"text",className:Tg,value:this.label||this.value,placeholder:Q.get(`${this.key}.placeholder`)}}),this.hiddenField=U.create({tag:"input",attrs:{type:"hidden",className:Et,value:this.value}}),this.list=U.create({tag:"ul",attrs:{className:Xs}}),this.clearButton=U.create({tag:"span",content:U.icon("remove"),className:"clear-button hidden",action:{click:()=>this.clearValue()}}),this.dom=U.create({children:[this.displayField,this.clearButton,this.hiddenField],className:[Et,this.className].flat(),action:{onRender:n=>{this.stage=n.closest(".formeo-stage"),this.value&&(this.displayField.value=this.label),this.clearButton.classList.toggle("hidden",!this.value.length)}}}),this.dom}get label(){if(!Pe(this.value))return this.value;const e=this.value&&ce.getAddress(this.value);return e&&Ih(e,`${this.key}`)||this.value}updateOptions(){let e=this.optionsCache;const t=Date.now();(t-this.lastCache>zs*5||!e)&&(U.empty(this.list),e=this.generateOptions(),this.lastCache=t),this.list.children.length||this.list.append(...e)}generateOptions(){return this.optionsCache=Ig(this),this.optionsCache}setListPosition(){const{offsetHeight:e,offsetWidth:t}=this.displayField,n=this.displayField.closest(".formeo-stage").getBoundingClientRect(),p=this.displayField.getBoundingClientRect(),d={position:"absolute",top:`${p.y+e-n.y}px`,left:`${p.x+window.scrollX-n.x+2}px`,width:`${t}px`};Object.assign(this.list.style,d)}showList(e,t=this.list){this.stage.contains(this.list)||this.stage.appendChild(this.list),this.setListPosition(),this.selectOption(e),$e.slideDown(t,gt)}hideList(e=this.list){$e.slideUp(e,gt),this.removeHighlight(),this.stage.contains(this.list)&&this.stage.removeChild(this.list)}getActiveOption(e=this.list){const t=e.querySelector(".active-option");return t?.style.display!=="none"?t:null}getPreviousOption(e){let t=e;do t=t?t.previousSibling:null;while(t!=null&&t.style.display==="none");return t}getNextOption(e){let t=e;do t=t?t.nextSibling:null;while(t!=null&&t.style.display==="none");return t}selectOption(e,t=this.list){const n=t.querySelectorAll("li");for(const p of n){const{dataset:{value:d}}=p;p.classList.remove("active-option"),Pe(d)&&ce.getAddress(d)?.dom?.classList.remove(Nt)}e&&(e.classList.add("active-option"),this.highlightComponent(e))}removeHighlight(){const e=document.getElementsByClassName(Nt);for(const t of e)t.classList.remove(Nt)}highlightComponent(e){const{dataset:{value:t}}=e;if(Pe(t)){const{componentAddress:n,isOptionAddress:p,optionIndex:d}=mt(t).reduce((m,l)=>l==="options"?(m.isOptionAddress=!0,m):m.isOptionAddress?(m.optionIndex=+l,m):(m.componentAddress.push(l),m),{componentAddress:[],optionIndex:null,isOptionAddress:!1}),g=ce.getAddress(n);g?.dom&&(g.dom.classList.add(Nt),p&&g.dom.querySelectorAll(".field-preview .f-checkbox, .field-preview .f-radio")[d]?.classList.add(Nt))}}clearValue(){this.selectOption(null),this.setValue({dataset:{label:"",value:""}}),this.displayField.focus()}setValue(e){const{label:t,value:n}=e.dataset;this.displayField.value=t,this.hiddenField.value=n,this.value=n,this.clearButton.classList.toggle("hidden",!n.length),this.onChange?.({target:this.hiddenField})}}function Ho({key:c,value:e,type:t="text",checked:n}){const p={tag:"input",attrs:{type:t,value:e,placeholder:Q.get(`${c}.placeholder`)||st(c)},className:[c.replace(/\./g,"-")],config:{}};return n&&(p.attrs.checked=!0),p}function Dh(c){const e=Q.get(c);if(e)return e;const t=c.split(".");return Q.get(t[t.length-1])}const _t={autocomplete:(...c)=>new Og(...c).createProxy(),string:({key:c,value:e})=>Ho({key:c,value:e}),boolean:({key:c,value:e})=>Ho({key:c,value:e,type:c==="selected"?"radio":"checkbox",checked:!!e}),number:({key:c,value:e})=>Ho({key:c,value:e,type:"number"}),array:({key:c,value:e})=>({tag:"select",attrs:{placeholder:Dh(`placeholder.${c}`)},className:[c.replace(/\./g,"-")],options:e}),object:c=>Object.entries(c).map(([e,t])=>_t[U.childType(t)]({key:e,value:t}))},Dg={boolean:(c,e)=>({click:({target:t})=>{if(t.type==="radio"){const n=e.data.options.map(p=>({...p,selected:!1}));e.set("options",n)}e.set(c,t.checked),e.updatePreview()}}),string:(c,e)=>({input:({target:{value:t}})=>{e.set(c,t),e.debouncedUpdatePreview()}}),number:(c,e)=>({input:({target:{value:t}})=>{e.set(c,Number(t)),e.debouncedUpdatePreview()}}),array:(c,e)=>({change:({target:{value:t}})=>{e.set(c,t),e.debouncedUpdatePreview()}}),object:()=>({})},Nh="hidden-property",Ng="hidden-option",zo=/\.options\[\d+\]$/,Fg={"if-sourceProperty":pn(fn,Zl,Jl),"if-targetProperty":pn(fn),"then-targetProperty":pn(fn,Zl,Jl),...Object.entries(Yf).reduce((c,[e,t])=>(c[`if-${e}`]=t,c[`then-${e}`]=t,c),{})},Fh={assignment:Ft,comparison:Ft,logical:Ft,source:({key:c,value:e,onChange:t,conditionType:n})=>_t.autocomplete({key:`${n}.condition.${c}`,value:e,onChange:t,className:`condition-${c}`}),sourceProperty:Ft,targetProperty:Ft,target:c=>Fh.source(c),value:({key:c,value:e,onChange:t},n)=>{const p=_t.string({key:`condition.${c}`,value:e});return p.action={input:t},p}};function Pg({key:c,value:e,conditionType:t}){const n=`${t}-${c}`,p=Fg[n];return Object.entries(p||{}).map(([d,g])=>Wg({fieldName:c,fieldValue:e,key:d,optionValue:g}))}function Wg({fieldName:c,fieldValue:e,key:t,optionValue:n}){return{label:Q.get(`${c}.${t}`)||st(t).toLowerCase(),value:n,selected:n===e}}function Ft({key:c,value:e,onChange:t,conditionType:n}){const p=Pg({key:c,value:e,conditionType:n}),d=_t.array({key:`condition.${c}`,value:p});return d.action={change:t},d}const Bg=c=>!c?.classList.contains(Nh),Hg={sourceProperty:c=>{const e=c.get("source"),t=c.get("sourceProperty"),n=!!e.value,p=!!e.value.match(zo);return eu(p,t),!n},comparison:c=>{const e=c.get("source"),t=c.get("sourceProperty"),n=!!e.value,p=!!e.value.match(zo);return!n||p||t.value!=="value"},assignment:c=>{const e=c.get("target"),t=c.get("targetProperty");return!!!e.value||t.value.startsWith("is")},targetProperty:c=>{const e=c.get("target"),t=c.get("targetProperty"),n=!!e.value.match(zo);return eu(n,t),!Sf(e.value)},target:c=>{const e=c.get("source"),t=c.get("sourceProperty"),n=!!e?.value;return t&&!n?!0:t&&t?.value!=="value"},value:c=>{const e=c.get("target"),t=c.get("targetProperty");return t===void 0?!1:e&&!e.value||!Bg(c.get("comparison"))||t.value===Ph?!0:t.value.startsWith("is")}},Jc=c=>{for(const[e,t]of c){const n=!!Hg[e]?.(c)||!1;t.classList.toggle(Nh,n)}},Ph="isChecked",jo=c=>c.value.endsWith("Checked"),eu=(c,e)=>{if(c&&jo(e))return null;const t=Array.from(e.querySelectorAll("option")),n=[];for(const p of t){const d=jo(p),g=c?!d:d;g&&n.push(p.value),p.classList.toggle(Ng,g)}n.includes(e.value)&&(e.value=c?Ph:t.find(p=>!jo(p))?.value||e.value)};function zg(c,e=qf){return e.reduce((t,n)=>(c[n]!==void 0&&t.push([n,c[n]]),t),[])}class jg{constructor({conditionValues:e,conditionType:t,conditionCount:n,index:p},d){this.values=new Map(zg(e)),this.conditionType=t,this.parent=d,this.baseAddress=`${d.address}.${t}`,this.fields=new Map,this.conditionCount=n,this.index=p,this.dom=this.generateDom()}setConditionIndex(e){this.index=e}get address(){return`${this.baseAddress}[${this.index}]`}destroy(){const e=ce.getAddress(this.baseAddress);e.splice(this.index,1),ce.setAddress(this.baseAddress,e),$e.slideUp(this.dom,gt,()=>{this.dom.remove()})}label(){return this.index?null:{tag:"label",className:`condition-label ${this.conditionType}-condition-label`,content:Q.get(`condition.type.${this.conditionType}`)}}generateDom(){const e=[];for(const[p,d]of this.values){const g=r=>this.onChangeCondition({key:p,target:r.target}),m={key:p,value:d,conditionType:this.conditionType,onChange:g},l=Fh[p](m,this.values),f=l.dom||U.create(l);this.fields.set(p,l.dom?l:f),e.push(f)}const n={children:[this.label(),...e,...this.generateConditionTypeActionButtons()],className:`f-condition-row ${this.conditionType}-condition-row display-none`,action:{onRender:p=>{this.processUiState()}}};return U.create(n)}generateConditionTypeActionButtons(){const e=[],t="manage-condition-type",n=g=>`${g}-condition-type`,p=U.btnTemplate({title:Q.get(`remove${this.conditionType}Condition`),className:[t,n("remove")],content:U.icon("minus"),action:{click:()=>this.destroy(),mouseover:g=>{this.dom.classList.add("to-remove")},mouseout:g=>{this.dom.classList.remove("to-remove")}}});e.push(p);const d=U.btnTemplate({title:Q.get(`add${this.conditionType}Condition`),className:[t,n("add")],content:U.icon("plus"),action:{click:()=>{const g=this.parent.addConditionType(this.conditionType),m={changedProperty:null,dataPath:g.address,value:g.value,src:g.dom};this.updateDataDebounced(m)}}});return e.push(d),e}get value(){return Array.from(this.fields).reduce((e,[t,n])=>(e[t]=n.value,e),{})}processUiState(){Jc(this.fields),this.dom.classList.remove("display-none")}updateDataDebounced=An(e=>{le.formeoUpdated(e),ce.setAddress(e.dataPath,e.value)});onChangeCondition=({key:e,target:t})=>{const n={changedProperty:e,dataPath:this.address,value:this.value,src:t};Jc(this.fields),this.updateDataDebounced(n)}}const Ug=new Map([["attrs",({itemKey:c})=>c],["options",({itemKey:c,key:e})=>`${c}.${e}`]]),Wh=(c,e)=>{if(e.controlId==="select"){const t=e.editPanels.get("options"),[n,p]=c?En:Zf,d=t.data.map(({[n]:g,...m})=>({[p]:g,...m}));t.setData(d)}},Gg=new Map([["attrs-multiple",c=>({change:({target:e})=>{c.field.controlId==="select"&&Wh(e.checked,c.field)}})]]);class hn{constructor({key:e,index:t,field:n,panel:p,data:d}){this.field=n,this.itemKey=e,this.itemIndex=t,this.panel=p,this.panelName=p.name,this.isDisabled=n.isDisabledProp(e,this.panelName),this.isHidden=this.isDisabled&&n.config.panels[this.panelName].hideDisabled,this.isLocked=n.isLockedProp(e,this.panelName),this.address=`${n.indexName}.${n.id}.${e}`,this.itemSlug=ec(e),this.conditionTypeWrap=new Map,d!==void 0&&this.field.get(this.itemKey)===void 0&&this.field.set(this.itemKey,d);const g=[`field-${this.itemSlug}`,"prop-wrap"];this.isHidden&&g.push("hidden-property"),this.dom=U.create({tag:"li",className:g,children:{className:"component-prop",children:[this.itemInputs(),this.itemControls]}})}get itemValues(){const e=this.field.get(this.itemKey);return e?.constructor===Object?Rn(Object.entries(e),En,"0"):[[this.itemKey,e]]}findOrCreateConditionTypeWrap(e){let t=this.conditionTypeWrap.get(e);return t||(t=U.create({className:`type-conditions-wrap ${e}-conditions-wrap`}),this.conditionTypeWrap.set(e,t),t)}itemInputs(){const e=U.create({className:`${this.panelName}-prop-inputs prop-inputs f-input-group`,children:this.itemValues.map(([t,n])=>this.panelName==="conditions"?this.generateConditionFields(t,n):this.itemInput(t,n))});return this.inputs&&this.inputs.replaceWith(e),this.inputs=e,e}addConditionType=(e,t)=>{const n=this.findOrCreateConditionTypeWrap(e);let p=t;if(!p){const[g]=js()[e],m=n.children.length;e===ah&&(g.logical="||"),p={conditionValues:g,conditionCount:m,index:m}}const d=new jg({conditionType:e,...p},this);return n.appendChild(d.dom),d};removeConditionType=(e,t)=>{const n=this.conditionTypeWrap.get(e),p=n.children[t];p.destroy(),n.removeChild(p.dom)};generateConditionFields=(e,t)=>(this.conditions=new Map,t.forEach((n,p)=>{const d=this.addConditionType(e,{index:p,conditionCount:t.length,conditionValues:n});this.conditions.set(p,d)}),this.findOrCreateConditionTypeWrap(e));get itemControls(){if(this.isLocked)return{className:`${this.panelName}-prop-controls prop-controls`,content:[]};const e={tag:"button",attrs:{type:"button",className:"prop-remove prop-control"},action:{click:()=>{$e.slideUp(this.dom,Ke,n=>{this.field.remove(this.itemKey),n.remove(),this.panel.updateProps()})},mouseover:n=>{this.dom.classList.add("to-remove")},mouseout:n=>{this.dom.classList.remove("to-remove")}},content:U.icon("remove")};return{className:`${this.panelName}-prop-controls prop-controls`,content:[e]}}itemInput(e,t){const n=U.childType(t)||"string",p=Ug.get(this.panelName)?.({itemKey:this.itemKey,key:e})||this.itemKey,d=p.split(".").filter(Number.isNaN).join(".")||e,g=_t[n]({key:e,value:t}),m=`${this.field.shortId}-${ec(p).replace(/-\d+-(selected)/g,"-$1")}`,l={label:this.panelName!=="options"&&(Dh(d)||st(d)),labelAfter:!1},f={name:g.attrs.type==="checkbox"?`${m}[]`:m};f.disabled=this.isDisabled,f.locked=this.isLocked;const r=Gg.get(this.itemSlug)?.(this),o=yp(Dg[n](p,this.field),r||{}),s=ze(_t[n]({key:e,value:t}),{action:o,attrs:f,config:l});return En.includes(e)?{className:"f-addon",children:s}:s}}const Vg={multiple:(c,e)=>{Wh(!!c,e)}};class Kg{constructor(e,t,n){this.type=U.childType(e),this.name=t,this.component=n,this.panelConfig=this.getPanelConfig(this.data)}get data(){const e=this.component.get(this.name);return this.type==="object"?Object.entries(e):e}getPanelConfig(e){return this.props=this.createProps(e),this.editButtons=this.createEditButtons(),{config:{label:Q.get(`panel.label.${this.name}`)},attrs:{className:`${Zu} ${this.name}-panel`},children:[this.props,this.editButtons]}}createProps(e=this.data){this.editPanelItems=Array.from(e).map((n,p)=>{const d=this.type==="array",g=d?`[${p}]`:`.${n[0]}`,m=d?n:{[n[0]]:n[1]};return new hn({key:`${this.name}${g}`,data:m,field:this.component,index:p,panel:this})});const t={tag:"ul",attrs:{className:["edit-group",`${this.component.name}-edit-group`,`${this.component.name}-edit-${this.name}`]},editGroup:this.name,isSortable:this.name==="options",content:this.editPanelItems};return U.create(t)}updateProps(){const e=this.createProps();this.props.replaceWith(e),this.props=e}createEditButtons(){const e=this.name,t=Q.get(`panelEditButtons.${e}`),n={attrs:this.addAttribute,options:this.addOption,conditions:this.addCondition},p=[];if(e==="conditions"){Q.current.clearAll||Q.put("clearAll","Clear All");const m={...U.btnTemplate({content:[U.icon("bin"),Q.get("clearAll")],title:Q.get("clearAll")}),className:`clear-all-${e}`,action:{click:()=>{this.clearAllItems()}}};p.push(m)}const d={...U.btnTemplate({content:t,title:t}),className:`add-${e}`,action:{click:m=>{const l={btnCoords:U.coords(m.target),addAction:n[e]};e==="attrs"&&(l.isDisabled=this.component.isDisabledProp,l.isLocked=this.component.isLockedProp,l.message={attr:Q.get(`action.add.${e}.attr`),value:Q.get(`action.add.${e}.value`)});const f=st(e),r=new window.CustomEvent(`onAdd${f}`,{detail:l});Te.add[e](l),document.dispatchEvent(r)}}};return p.push(d),{className:"panel-action-buttons",content:p}}addAttribute=(e,t)=>{let n=t;const p=xh(e),d=`attrs.${p}`;Q.current[d]||Q.put(d,Lh(e)),typeof n=="string"&&["true","false"].includes(n)&&(n=JSON.parse(n)),this.component.set(`attrs.${e}`,n),Vg[p]?.(n,this.component);const g=this.props.querySelector(`.${this.component.name}-attrs-${p}`),m=new hn({key:d,data:{[p]:n},field:this.component,panel:this});g?g.replaceWith(m.dom):this.props.appendChild(m.dom),this.component.resizePanelWrap()};addOption=()=>{const e=this.component.data.config.controlId,t=this.component.get("options"),n=e==="select"?"option":e,p=Q.get("newOptionLabel",{type:n})||"New Option",d=`${this.name}[${this.data.length}]`,g=t[t.length-1],l={...t.length?g:{},label:p};e!=="button"&&(l.value=ch(p));const f=new hn({key:d,data:l,field:this.component,index:this.props.children.length,panel:this});this.editPanelItems.push(f),this.props.appendChild(f.dom),this.component.debouncedUpdatePreview(),this.component.resizePanelWrap()};addCondition=e=>{const n=`conditions[${this.component.get("conditions").length}]`,p=new hn({key:n,data:e.template,field:this.component,panel:this});this.props.appendChild(p.dom),this.component.set(n,e.template),this.component.resizePanelWrap()};clearAllItems=()=>{const e=this.type==="array"?[]:{},t={type:this.name,removeAction:()=>{this.component.set(this.name,e),this.updateProps()}};Te.remove[this.name](t);const n=st(this.name),p=new window.CustomEvent(`onRemove${n}`,{detail:t});document.dispatchEvent(p)};setData(e){this.data=e,this.component.set(this.name,e),this.updateProps()}}const tu=Object.freeze({type:"field",displayType:"slider"}),dn=c=>({transform:`translateX(${c?`${c}px`:0})`});class Bh{constructor(e){this.opts=ze(tu,e),this.panelDisplay=this.opts.displayType,this.activePanelIndex=0,this.panelNav=this.createPanelNav();const t=this.createPanelsWrap();this.nav=this.navActions(),this.nav.groupChange(this.activePanelIndex);const n=new window.ResizeObserver(([{contentRect:{width:d}}])=>{this.currentWidth!==d&&(this.toggleTabbedLayout(),this.currentWidth=d,this.nav.setTranslateX(this.activePanelIndex,!1))}),p=window.setTimeout(()=>{n.observe(t),window.clearTimeout(p)},zs)}getPanelDisplay(){const e=this.panelsWrap,n=Number.parseInt(U.getStyle(e,"width"),10)>390?"tabbed":"slider",p=this.opts.displayType==="auto";return this.panelDisplay=p?n:this.opts.displayType||tu.displayType,this.panelDisplay}toggleTabbedLayout=()=>{this.getPanelDisplay();const e=this.isTabbed;return this.panelsWrap.parentElement?.classList.toggle("tabbed-panels",e),e&&this.panelNav.removeAttribute("style"),e};resizePanels=()=>{this.toggleTabbedLayout()};createPanelsWrap(){const e=U.create({className:"panels",content:this.opts.panels.map(({config:t,...n})=>n)});return this.opts.type==="field"&&this.sortableProperties(e),this.panelsWrap=e,this.panels=e.children,this.currentPanel=this.panels[this.activePanelIndex],e}sortableProperties(e){const t=e.getElementsByClassName("field-edit-group");return Ne.forEach(t,n=>{n.fieldId=this.opts.id,n.isSortable&&ee.create(n,{animation:150,group:{name:`edit-${n.editGroup}`,pull:!0,put:["properties"]},sort:!0,handle:".prop-order",onSort:p=>{this.propertySave(p.to),this.resizePanels()}})})}createPanelNavLabels(){const e=this.opts.panels.map(p=>({tag:"h5",action:{click:d=>{const g=at(d.target);this.nav.setTranslateX(g,!1),this.nav.groupChange(g)}},content:p.config.label})),t={className:"panel-labels",content:{content:e}},[n]=e;return n.className="active-tab",U.create(t)}createPanelNav(){this.labels=this.createPanelNavLabels();const e={tag:"button",attrs:{className:"next-group",title:Q.get("controlGroups.nextGroup"),type:"button"},dataset:{toggle:"tooltip",placement:"top"},action:{click:n=>this.nav.nextGroup(n)},content:U.icon("triangle-right")},t={tag:"button",attrs:{className:"prev-group",title:Q.get("controlGroups.prevGroup"),type:"button"},dataset:{toggle:"tooltip",placement:"top"},action:{click:n=>this.nav.prevGroup(n)},content:U.icon("triangle-left")};return U.create({tag:"nav",attrs:{className:"panel-nav"},content:[t,this.labels,e]})}get isTabbed(){return this.panelDisplay==="tabbed"}navActions(){const e={},t=this.currentPanel.parentElement,n=this.labels.firstChild,p=n.children,d=this.currentPanel.parentElement.childNodes;this.activePanelIndex=at(this.currentPanel);let g={nav:0,panel:0},m={...g};e.groupChange=r=>(this.activePanelIndex=r,this.currentPanel=d[r],U.removeClasses(d,"active-panel"),U.removeClasses(p,"active-tab"),this.currentPanel.classList.add("active-panel"),p[r].classList.add("active-tab"),this.currentPanel);const l=r=>({nav:-n.offsetWidth*r,panel:-t.offsetWidth*r}),f=({offset:r,reset:o,duration:s=gt,animate:a=!this.isTabbed})=>{const i=[dn(m.panel),dn(r.panel)],u=[dn(m.nav),dn(this.isTabbed?0:r.nav)];if(o){const[T]=i,[$]=u;i.push(T),u.push($)}const h={easing:"ease-in-out",duration:a?s:0,fill:"forwards"},y=t.animate(i,h);n.animate(u,h);const b=()=>{y.removeEventListener("finish",b),o||(m=r)};y.addEventListener("finish",b)};return e.setTranslateX=(r=this.activePanelIndex,o=!0)=>{g=l(r),f({offset:g,animate:o})},e.refresh=(r=this.activePanelIndex)=>{this.activePanelIndex!==r&&e.groupChange(r),e.setTranslateX(this.activePanelIndex,!1),this.resizePanels()},e.nextGroup=()=>{const r=this.activePanelIndex+1;if(r!==d.length){const o=d[r];g={nav:-n.offsetWidth*r,panel:-o.offsetLeft},f({offset:g}),e.groupChange(r)}else g={nav:m.nav-8,panel:m.panel-8},f({offset:g,reset:!0});return this.currentPanel},e.prevGroup=()=>{if(this.activePanelIndex!==0){const r=this.activePanelIndex-1,o=d[r];g={nav:-n.offsetWidth*r,panel:-o.offsetLeft},f({offset:g}),e.groupChange(r)}else g={nav:8,panel:8},f({offset:g,reset:!0})},e}}let Uo=null;const Go=pn(fn);class Yn extends Gs{constructor(e,t={}){const n={...t,id:t.id||We()};super(e,n),this.id=n.id,this.shortId=this.id.slice(0,this.id.indexOf("-")),this.name=e,this.indexName=`${e}s`,this.config=ce[`${this.name}s`].config,ze(this.config,n.config),this.address=`${this.name}s.${this.id}`,this.dataPath=`${this.address}.`,this.editPanels=new Map,this.eventListeners=new Map,this.initEventHandlers()}initEventHandlers(){this.config.events&&Object.entries(this.config.events).forEach(([e,t])=>{this.addEventListener(e,t)})}addEventListener(e,t){this.eventListeners.has(e)||this.eventListeners.set(e,[]),this.eventListeners.get(e).push(t)}removeEventListener(e,t){if(!this.eventListeners?.has(e))return;const n=this.eventListeners.get(e),p=n.indexOf(t);p>-1&&n.splice(p,1)}dispatchComponentEvent(e,t={}){const n={component:this,type:e,timestamp:Date.now(),...t};return this.eventListeners?.has(e)&&this.eventListeners.get(e).forEach(p=>{try{typeof p=="function"&&p(n)}catch(d){console.error(`Error in ${e} event handler for ${this.name} ${this.id}:`,d)}}),n}set(e,t){const n=this.get(e),p=super.set(e,t);return n!==t&&this.dom&&this.dispatchComponentEvent("onUpdate",{path:e,oldValue:n,newValue:t}),p}get js(){return this.data}get json(){return this.data}remove=e=>{if(e){const p=mt(e),d=p.pop(),g=this.get(p);return Array.isArray(g)?_h(d)?g.splice(Number(d),1):this.set(p,g.filter(m=>m!==d)):delete g[d],g}if(this.name==="stage")return null;const t=this.parent,n=this.children;return this.dispatchComponentEvent("onRemove",{path:e,parent:t,children:[...n]}),qn(n,p=>p.remove()),this.dom.parentElement.removeChild(this.dom),Cf(ce.getAddress(`${t.name}s.${t.id}.children`),this.id),t.children.length||t.emptyClass(),t.name==="row"&&t.autoColumnWidths(),ce[`${this.name}s`].delete(this.id)};empty(){const e=this.children.map(t=>(t.remove(),t));return this.dom.classList.add("empty"),e}emptyClass=()=>this.dom.classList.toggle("empty",!this.children.length);getActionButtons(){const e=[`hovering-${this.name}`,"hovering"];return{className:[`${this.name}-actions`,"group-actions"],action:{mouseenter:()=>{ce.stages.active.dom.classList.add(`active-hover-${this.name}`),this.dom.classList.add(...e)},mouseleave:({target:t})=>{this.dom.classList.remove(...e),ce.stages.active.dom.classList.remove(`active-hover-${this.name}`),t.removeAttribute("style")}},children:[{...U.btnTemplate({content:U.icon(`handle-${this.name}`)}),className:["component-handle",`${this.name}-handle`]},{className:["action-btn-wrap",`${this.name}-action-btn-wrap`],children:this.buttons}]}}getComponentTag=()=>U.create({tag:"span",className:["component-tag",`${this.name}-tag`],children:[(this.isColumn||this.isField)&&U.icon("component-corner",{className:"bottom-left"}),U.icon(`handle-${this.name}`),st(this.name),(this.isColumn||this.isRow)&&U.icon("component-corner",{className:"bottom-right"})].filter(Boolean)});toggleEdit(e=!this.isEditing){this.isEditing=e;const t=this.dom,n="editing",p=`${n}-${this.name}`,d=this.dom.querySelector(`.${this.name}-edit`);$e.slideToggle(d,Ke,e),this.name==="field"&&($e.slideToggle(this.preview,Ke,!e),t.parentElement.classList.toggle(`column-${p}`,e)),t.classList.toggle(n,e),t.classList.toggle(p,e)}get buttons(){if(this.actionButtons)return this.actionButtons;const e={handle:(g=`handle-${this.name}`)=>({...U.btnTemplate({content:U.icon(g)}),className:["component-handle"]}),move:(g="move")=>({...U.btnTemplate({content:U.icon(g)}),className:["item-move"],meta:{id:"move"}}),edit:(g="edit")=>({...U.btnTemplate({content:U.icon(g)}),className:["edit-toggle"],meta:{id:"edit"},action:{click:()=>{this.toggleEdit()}}}),remove:(g="remove")=>({...U.btnTemplate({content:U.icon(g)}),className:["item-remove"],meta:{id:"remove"},action:{click:()=>{$e.slideUp(this.dom,Ke,()=>{this.name==="column"?(this.parent.autoColumnWidths(),this.remove()):this.remove()})}}}),clone:(g="copy")=>({...U.btnTemplate({content:U.icon(g)}),className:["item-clone"],meta:{id:"clone"},action:{click:()=>{this.clone(this.parent),this.name==="column"&&this.parent.autoColumnWidths()}}})},{buttons:t,disabled:n}=this.config.actionButtons,d=t.filter(g=>!n.includes(g)).map(g=>e[g]?.()||g);return this.actionButtons=d,this.actionButtons}get index(){return at(this.dom)}removeClasses=e=>{const t={string:()=>this.dom.classList.remove(e),array:()=>e.map(n=>this.dom.classList.remove(n))};return t.object=t.string,t[U.childType(e)](this.dom)};get parentType(){return Pf.get(this.name)}get parent(){const e=this.parentType;if(!this.dom||!e)return null;const t=this.dom.closest(`.${Hs[e]}`);return t&&U.asComponent(t)}get children(){if(!this.dom)return[];const e=this.domChildren,t=Xl.get(this.name);return Ys(e,n=>ce.getAddress(`${t}s.${n.id}`)).filter(Boolean)}loadChildren=(e=this.data.children)=>e.map(t=>this.addChild({id:t}));get domChildren(){const e=this.dom.querySelector(".children");return e?e.children:[]}addChild(e={},t=this.domChildren.length){let n=e;typeof e!="object"&&(n={id:n});const p=this.dom.querySelector(".children"),{id:d=We()}=n,g=Xl.get(this.name);if(!g)return null;const m=`${g}s`,l=ce.getAddress(`${m}.${d}`)||ce[m].add(d,n);t>=p.children.length?p.appendChild(l.dom):p.children[t].before(l.dom),this.dispatchComponentEvent("onAddChild",{parent:this,target:l,child:l,index:t}),l.dispatchComponentEvent("onAdd",{parent:this,target:l,index:t,addedVia:"addChild"}),this.config.events?.onAddChild?.({parent:this,child:l});const f=l.get("children");return f?.length&&l.loadChildren(f),this.removeClasses("empty"),this.saveChildOrder(),l}saveChildOrder=()=>{if(this.render)return;const e=this.children.map(({id:t})=>t);return this.set("children",e),e};onAdd({from:e,to:t,item:n,newIndex:p}){e.classList.contains(rt)||(e=e.parentElement);const d=Le(e),g=Le(t.parentElement),m=()=>{this.saveChildOrder(),this.removeClasses("empty")},l=new Map([[-2,()=>{const o=this.addChild({},p).addChild();return o.addChild.bind(o)}],[-1,()=>{const o=this.addChild({},p);return o.addChild.bind(o)}],[0,()=>this.addChild.bind(this)],[1,o=>{const s=at(this.dom);return()=>this.parent.addChild(o,s+1)}],[2,o=>()=>this.parent.parent.addChild(o)]]),r={controls:async()=>{if(!Uo){const{default:b}=await At(async()=>{const{default:T}=await Promise.resolve().then(()=>mm);return{default:T}},void 0);Uo=b}const{controlData:{meta:{id:o},...s}}=Uo.get(n.id);Gn(s,"config.controlId",o);const a=o.startsWith("layout-")?o.replace(/^layout-/,""):"field",u=De({stage:{row:0,column:-1,field:-2},row:{row:1,column:0,field:-1},column:{row:2,column:1,field:0},field:1},`${this.name}.${a}`),h=l.get(u)();return U.remove(n),h(s,p)},row:()=>{const o={stage:-1,row:0,column:1};return(l.get(o[g])||bs)()?.({id:n.id},p)},column:()=>{const o={stage:-2,row:-1};return(l.get(o[g])||bs)()?.(n.id)}}[d]?.(n,p);return this.dispatchComponentEvent("onAdd",{from:e,to:t,item:n,newIndex:p,fromType:d,toType:g,addedComponent:r,addedVia:"dragDrop"}),m(),r}onSort=()=>this.saveChildOrder();onRemove({from:{parentElement:e}}){return e.classList.contains(Qe)&&e.classList.remove("column-editing-field"),this.name!=="stage"&&!this.children.length?this.remove():(this.emptyClass(),this.saveChildOrder())}onEnd=({to:{parentElement:e},from:{parentElement:t}})=>{e?.classList.remove(`hovering-${Le(e)}`),t?.classList.remove(`hovering-${Le(t)}`)};onRender(){this.dispatchComponentEvent("onRender",{dom:this.dom});const{events:e}=this.config;if(!e)return null;e.onRender&&U.onRender(this.dom,e.onRender)}set config(e){const t=De(e,"all"),n=De(this.data,"config.controlId"),p=n&&De(e,n),d=De(e,this.id),g=[t,p,d].reduce((m,l)=>l?ze(m,l):m,this.configVal);this.configVal=g}get config(){return this.configVal}runConditions=()=>{const e=this.get("conditions");return e?.length?e.map(n=>{const p=this.processConditions(n.if),d=this.processResults(n.then);return p.map(g=>this.evaluateConditions(g)&&this.execResults(d))}):null};getComponent(e){const[t,n]=e.split("."),p=ce[t];return n===this.id?this:p?.get(n)}value=(e,t)=>{const n=e.split("."),p=this.getComponent(e),d=p&&n.slice(2,n.length).join(".");return[!p,!d,!Go[d]].some(Boolean)?e:t?p.set(Go[d],t):p.get(Go[d])};getResult=e=>({"=":(n,p,d)=>n.set(p,d)})[e];processResults=e=>e.map(({operator:t,target:n,value:p})=>{const d=this.getComponent(n),g=d&&n.split(".").slice(2,n.length).join(".");return{target:d,propertyPath:g,action:this.getResult(t),value:this.value(p)}});execResults=e=>{const t=e.map(n=>this.execResult(n));return Promise.all(t)};execResult=({target:e,action:t,value:n,_propertyPath:p})=>new Promise((d,g)=>{try{return d(t(e,n))}catch(m){return g(m)}});cloneData=()=>{const e={...Ye(this.data),id:We()};return this.name!=="field"&&(e.children=[]),e};clone=(e=this.parent)=>{const t=e.addChild(this.cloneData(),this.index+1);return this.name!=="field"&&this.cloneChildren(t),this.dispatchComponentEvent("onClone",{original:this,clone:t,parent:e}),t};cloneChildren(e){for(const t of this.children)t?.clone(e)}createChildWrap=e=>U.create({tag:"ul",attrs:{className:"children"},children:e});get isRow(){return this.name===Br.row}get isColumn(){return this.name===Br.column}get isField(){return this.name===Br.field}isDisabledProp=(e,t="attrs")=>{const n=this.config.panels[t];return n?n.disabled.concat(this.get("config.disabled")).includes(e):!1};isLockedProp=(e,t="attrs")=>{const n=this.config.panels[t];return n?n.locked.concat(this.get("config.locked")).includes(e):!1};get editWindow(){const e={className:["component-edit",`${this.name}-edit`,"slide-toggle","formeo-panels-wrap"]},t=this.editPanels.size;return t&&(e.className.push(`panel-count-${t}`),e.content=[this.panels.panelNav,this.panels.panelsWrap],this.panelNav=this.panels.nav,this.resizePanelWrap=this.panels.nav.refresh),e.action={onRender:()=>{if(t===0){const n=this.dom.querySelector(".edit-toggle"),p=this.dom.querySelector(`.${this.name}-actions`),d=p.getElementsByTagName("button");p.style.maxWidth=`${d.length*d[0].clientWidth}px`,U.remove(n)}else this.resizePanelWrap()}},U.create(e)}updateEditPanels=()=>{if(!this.config)return null;const e=["object","array"],t=pt([...this.config.panels.order,...Object.keys(this.data)]),n=["children","config","meta","action","events",...this.config.panels.disabled],p=t.filter(g=>!n.includes(g));for(const g of p){const m=this.get(g),l=U.childType(m);if(e.includes(l)){const f=new Kg(m,g,this);this.editPanels.set(f.name,f)}}const d={panels:Array.from(this.editPanels.values()).map(({panelConfig:g})=>g),id:this.id,displayType:"auto"};this.panels=new Bh(d),this.dom&&(this.dom.querySelector(".panel-nav").replaceWith(this.panels.panelNav),this.dom.querySelector(".panels").replaceWith(this.panels.panelsWrap))}}class qg{constructor(){this.onMove=this.onMove.bind(this),this.onStop=this.onStop.bind(this),this.cleanup=this.cleanup.bind(this)}getRowWidth(e){const t=e.querySelector(".children");if(!t)return 0;const n=t.children.length,p=U.getStyle(t,"gap")||"0px",d=parseFloat(p,10)||0;return this.totalGapWidth=d*(n-1),t.offsetWidth-this.totalGapWidth}validateResizeTarget(e,t){return e&&t&&e.offsetWidth&&t.offsetWidth}onStart(e){if(e.preventDefault(),this.resized=!1,e.button!==0)return;const t=e.target.parentElement,n=t.nextSibling||t.previousSibling,p=t.closest(`.${Xe}`);if(!this.validateResizeTarget(t,n)){console.warn("Invalid resize targets"),this.cleanup();return}if(this.startX=e.type==="touchstart"?e.touches[0].clientX:e.clientX,p.classList.add(Wr),this.columnPreset=p.querySelector(`.${Ju}`),this.originalColumnClass=t.className,this.originalSiblingClass=n.className,t.className=t.className.replace(Ss,""),n.className=n.className.replace(Ss,""),this.colStartWidth=t.offsetWidth,this.sibStartWidth=n.offsetWidth,this.rowWidth=this.getRowWidth(p),this.rowWidth<=0){console.warn("Invalid row width calculated"),this.cleanup();return}this.column=t,this.sibling=n,this.row=p;try{window.addEventListener("pointermove",this.onMove,!1),window.addEventListener("pointerup",this.onStop,!1)}catch(d){console.error("Failed to initialize resize listeners:",d),this.cleanup()}}calculateNewWidths(e){const t=this.colStartWidth+e-this.startX,n=this.sibStartWidth-e+this.startX,p=parseFloat(Pr(t,this.rowWidth)),d=parseFloat(Pr(n,this.rowWidth));return p<10||d<10?null:{colWidth:ys(p.toFixed(1)),siblingColWidth:ys(d.toFixed(1))}}onMove(e){e.preventDefault();const{column:t,sibling:n}=this,p=e.type==="touchmove"?e.touches[0].clientX:e.clientX,d=this.calculateNewWidths(p);if(!d)return;const{colWidth:g,siblingColWidth:m}=d;t.dataset.colWidth=g,n.dataset.colWidth=m,t.style.width=g,n.style.width=m,this.resized=!0}onStop(){const{column:e,sibling:t}=this;window.removeEventListener("pointermove",this.onMove),window.removeEventListener("pointerup",this.onStop),this.resized&&(this.setCustomWidthValue(),ce.setAddress(`columns.${e.id}.config.width`,e.dataset.colWidth),ce.setAddress(`columns.${t.id}.config.width`,t.dataset.colWidth),this.row.classList.remove(Wr),this.resized=!1,this.cleanup())}cleanup(){this.column&&this.originalColumnClass&&(this.column.className=this.originalColumnClass),this.sibling&&this.originalSiblingClass&&(this.sibling.className=this.originalSiblingClass),this.row&&this.row.classList.remove(Wr),window.removeEventListener("pointermove",this.onMove),window.removeEventListener("pointerup",this.onStop)}setCustomWidthValue(){const e=this.columnPreset;let t=e.querySelector(`.${Cs}`);const n=this.row.querySelector(".children").children,p=Ys(n,m=>Pr(m.clientWidth,this.rowWidth).toFixed(1)),d=p.join(","),g=p.join(" | ");return t||(t=U.create({tag:"option",attrs:{className:Cs,value:d,selected:!0},content:g}),e.append(t)),t.value=d,t.textContent=g,d}}const Yg=()=>Object.freeze({config:{width:"100%"},children:[],className:[Qe]}),nu={resizeHandle:c=>({className:"resize-x-handle",action:{pointerdown:c.onStart.bind(c)},content:[U.icon("triangle-down"),U.icon("triangle-up")]}),editWindow:()=>({className:"column-edit group-config"})};class Xg extends Yn{constructor(e){super("column",{...Yg(),...e});const t=this.createChildWrap();this.dom=U.create({tag:"li",className:[Qe,"empty"],dataset:{hoverTag:Q.get("column")},id:this.id,content:[this.getComponentTag(),this.getActionButtons(),nu.editWindow(),nu.resizeHandle(new qg),t]}),this.processConfig(),le.columnResized=new window.CustomEvent("columnResized",{detail:{column:this.dom,instance:this}}),ee.create(t,{animation:150,fallbackClass:"field-moving",group:{name:"column",pull:!0,put:["column","controls"]},sort:!0,disabled:!1,onEnd:this.onEnd.bind(this),onAdd:this.onAdd.bind(this),onSort:this.onSort.bind(this),onRemove:this.onRemove.bind(this),onMove:n=>{n.from!==n.to&&n.from.classList.remove("hovering-column")},draggable:`.${It}`,handle:".item-move"})}processConfig(){const e=Ne.get(this.data,"config.width");e&&this.setDomWidth(e)}refreshFieldPanels=()=>{for(const e of this.children)e.panels.nav.refresh()};setDomWidth=e=>{this.dom.dataset.colWidth=e,this.dom.style.width=e};setWidth=e=>(this.setDomWidth(e),this.set("config.width",e))}const Qg={actionButtons:{buttons:["clone","move","remove"],disabled:[]}};let Zg=class extends Vn{constructor(e){super("columns",e),this.config={all:Qg}}Component(e){return new Xg(e)}};const Hh=new Zg,Jg=()=>Object.freeze({config:{fieldset:!1,legend:"",inputGroup:!1},children:[],className:[Xe]});class em extends Yn{constructor(e){super("row",{...Jg(),...e});const t=this.createChildWrap();this.dom=U.create({tag:"li",className:[Xe,"empty"],dataset:{hoverTag:Q.get("row"),editingHoverTag:Q.get("editing.row")},id:this.id,content:[this.getComponentTag(),this.getActionButtons(),this.editWindow,t]}),ee.create(t,{animation:150,fallbackClass:"column-moving",group:{name:"row",pull:!0,put:["row","column","controls"]},sort:!0,disabled:!1,onRemove:this.onRemove.bind(this),onEnd:this.onEnd.bind(this),onAdd:this.onAdd.bind(this),onSort:this.onSort.bind(this),draggable:`.${Qe}`,handle:".item-move"})}get editWindow(){const e={tag:"input",id:`${this.id}-fieldset`,attrs:{type:"checkbox",checked:this.get("config.fieldset"),ariaLabel:Q.get("row.settings.fieldsetWrap.aria")},action:{click:({target:{checked:s}})=>{this.set("config.fieldset",!!s)}},config:{label:Q.get("row.settings.fieldsetWrap")}},t={tag:"input",id:`${this.id}-inputGroup`,attrs:{type:"checkbox",checked:this.get("config.inputGroup"),ariaLabel:Q.get("row.settings.inputGroup.aria")},action:{click:({target:{checked:s}})=>this.set("config.inputGroup",s)},config:{label:Q.get("row.makeInputGroup"),description:Q.get("row.makeInputGroupDesc")}},n={tag:"span",content:" ⓘ",dataset:{tooltip:"Row title will be used as the legend for the fieldset"}},d={className:"input-group",content:{tag:"input",attrs:{type:"text",ariaLabel:"Legend for fieldset",value:this.get("config.legend"),placeholder:"Title"},config:{label:{children:["Row Title",n]}},action:{input:({target:{value:s}})=>this.set("config.legend",s)},className:""}},g=U.formGroup([e,d]),m={tag:"label",content:Q.get("defineColumnWidths"),className:"col-sm-4 form-control-label"};this.columnPresetControl=U.create(this.columnPresetControlConfig);const l={className:"col-sm-8",content:this.columnPresetControl,action:{onRender:()=>{this.updateColumnPreset()}}},f=U.formGroup([m,l],"row"),r=[t,"hr",g,"hr",f];return U.create({className:`${this.name}-edit group-config`,action:{onRender:s=>{const a=r.map(i=>U.create(i));s.append(...a)}}})}onAdd(...e){super.onAdd(...e),this.autoColumnWidths()}onRemove(...e){super.onRemove(...e),this.autoColumnWidths()}autoColumnWidths=()=>{const e=this.children;if(!e.length)return;const t=Number.parseFloat((100/e.length).toFixed(1))/1;for(const n of e){n.removeClasses(Ss);const p=n.dom,d=ys(t);n.set("config.width",d),p.style.width=d,p.dataset.colWidth=d;const g=setTimeout(()=>{clearTimeout(g),n.refreshFieldPanels()},gt);document.dispatchEvent(le.columnResized)}this.updateColumnPreset()};updateColumnPreset=()=>{this.columnPresetControl.innerHTML="";const e=this.getColumnPresetOptions.map(({label:t,...n})=>U.create({tag:"option",content:t,attrs:n}));this.columnPresetControl.append(...e)};setColumnWidths=e=>{typeof e=="string"&&(e=e.split(",")),this.children.forEach((t,n)=>{t.setWidth(`${e[n]}%`),t.refreshFieldPanels()})};get getColumnPresetOptions(){const e=this.children,n=Bf.get(e.length-1)||[],p=e.map(d=>{const g=d.get("config.width")||"";return Number(g.replace("%","")).toFixed(1)}).join(",");if(n.length){const d=n.slice();return!d.find(m=>m.value===p)&&d.push({value:p,label:p.replace(/,/g," | "),className:Cs}),d.map(m=>{const l={...m};return l.selected=m.value===p,l})}return[]}get columnPresetControlConfig(){return{tag:"select",attrs:{ariaLabel:Q.get("defineColumnLayout"),className:Ju},action:{change:({target:t})=>{const{value:n}=t;this.setColumnWidths(n)}},options:this.getColumnPresetOptions}}}const tm={actionButtons:{buttons:["move","edit","clone","remove"],disabled:[]}};let nm=class extends Vn{constructor(e){super("rows",e),this.config={all:tm}}Component(e){return new em(e)}};const Qs=new nm,im=()=>({conditions:[js()],children:[]});class rm extends Yn{constructor(e){super("stage",{...im(),...e}),this.updateEditPanels(),this.debouncedUpdateEditPanels=An(this.updateEditPanels),Q.get("Untitled Form"),Q.get("Untitled Form"),Q.get("Form Title"),Q.get("Form novalidate"),Q.get("Tags");const t=this.createChildWrap();this.dom=U.create({attrs:{className:[kt,"empty"],id:this.id},children:[this.getComponentTag(),this.getActionButtons(),this.editWindow,t]}),ee.create(t,{animation:150,fallbackClass:"row-moving",group:{name:"stage",pull:!0,put:["row","column","controls"]},sort:!0,disabled:!1,onAdd:this.onAdd.bind(this),onRemove:this.onRemove.bind(this),onStart:()=>{Jt.active=this},onSort:this.onSort.bind(this),draggable:`.${Xe}`,handle:".item-move"})}empty(e=!0){return new Promise(t=>{e?(this.dom.classList.add("removing-all-fields"),$e.slideUp(this.dom,Ke,()=>{t(super.empty(e)),this.dom.classList.remove("removing-all-fields"),$e.slideDown(this.dom,Ke)})):t(super.empty())})}onAdd(...e){const t=super.onAdd(...e);t&&t.name==="column"&&t.parent.autoColumnWidths()}}const om=()=>({actionButtons:{buttons:["edit"],disabled:[]},panels:{disabled:[],order:["attrs","options","conditions"]}});let sm=class extends Vn{constructor(e){super("stages",e),this.config={all:om()}}Component(e){return new rm(e)}};const Jt=new sm,In={js:new Set,css:new Set},iu=(c,e,t=ws)=>new Promise(n=>fetch(c).then(p=>{if(!p.ok)return n(t(p));n(e?e(p):p)}).catch(p=>t(p))),zh=(c,e)=>{c.removeEventListener("load",zh),e(c.src)},jh=(c,e)=>{c.removeEventListener("load",jh),e(c.src)},Uh=c=>new Promise((e,t)=>{if(In.js.has(c))return e(c);In.js.add(c);const n=U.create({tag:"script",attrs:{type:"text/javascript",async:!0,src:c},action:{load:()=>jh(n,e),error:()=>t(new Error(`${c} failed to load.`))}});document.head.appendChild(n)}),_s=c=>{c=Array.isArray(c)?c:[c];const e=c.map(t=>new Promise((n,p)=>{if(In.css.has(t))return n(t);In.css.add(t);const d=U.create({tag:"link",attrs:{rel:"stylesheet",href:t},action:{load:()=>zh(d,n),error:()=>p(new Error(`${(void 0).src} failed to load.`))}});document.head.appendChild(d)}));return Promise.all(e)},am=c=>{c=Array.isArray(c)?c:[c];const e=c.map(t=>Uh(t));return Promise.all(e)},lm=c=>{c=Array.isArray(c)?c:[c];const e=c.map(t=>_s(t));return Promise.all(e)},cm=c=>{let e=document.getElementById(ot);return e||(e=U.create({id:ot,children:c,attrs:{hidden:!0,style:"display: none;"}}),document.body.insertBefore(e,document.body.childNodes[0])),e},um=async(c=Qu)=>{if(document.getElementById(ot))return;const t=async n=>cm(await n.text());return iu(c,t,()=>iu($f,t))},hm=c=>{const e=Array.isArray(c)?ql.filter(({name:t})=>c.indexOf(t)!==-1):ql;return Promise.all(e.map(({src:t})=>Uh(t)))},dm={js:am,css:lm},Gh=c=>{const e=Object.entries(c).map(([t,n])=>dm[t](n));return Promise.all(e)},ru=()=>{const c=document.getElementById(ot);return window.getComputedStyle(c).visibility==="hidden"},fm=async c=>{if(!ru()&&(await _s(c),!ru()))return await _s(Tf)};class pm{controlCache=new Set;constructor({events:e={},dependencies:t={},controlAction:n,...p}){this.events=e,this.controlData=p,this.controlAction=n,this.dependencies=t,this.id=p.id||We()}get controlId(){return this.controlData.meta?.id||this.controlData.config?.controlId}get dom(){const{meta:e,config:t}=this.controlData,n=this.i18n(t.label)||t.label,p={tag:"button",attrs:{type:"button"},content:[{tag:"span",className:"control-icon",children:U.icon(e.icon)},{tag:"span",className:"control-label",content:n}],action:{focus:({target:d})=>{const g=d.closest(`.${rt}`);return g&&xt.panels.nav.refresh(at(g))},click:({target:d})=>{const g=d.closest(".field-control")?.id;g&&xt.addElement(g)}}};return U.create({tag:"li",id:this.id,className:["field-control",`${e.group}-control`,`${e.id}-control`],content:p,meta:e,action:this.controlAction})}promise(){return Gh(this.dependencies)}i18n(e,t){const n=Q.locale,d=this.definition?.i18n?.[n]||{};return(d[e]?.()??d[e])||Q.get(e,t)}}const gm=Object.freeze({sortable:!0,elementOrder:{},groupOrder:[],groups:[{id:"layout",label:"controls.groups.layout",elementOrder:["row","column"]},{id:"common",label:"controls.groups.form",elementOrder:["button","checkbox"]},{id:"html",label:"controls.groups.html",elementOrder:["header","block-text"]}],disable:{groups:[],elements:[],formActions:[]},elements:[],container:null,panels:{displayType:"slider"}});let Vh=class{constructor(){this.data=new Map,this.buttonActions={focus:({target:e})=>{const t=e.closest(`.${rt}`);return t&&this.panels.nav.refresh(at(t))},click:({target:e})=>{this.addElement(e.parentElement.id)}}}async init(e,t=!1){return await this.applyOptions(e),this.buildDOM(t),this}registerControls(e){return this.controls=[],e.map(t=>{const p=typeof t=="function"?new t:new pm(t);return this.add(p),this.controls.push(p.dom),p.promise()})}groupLabel=e=>Q.get(e)||e||"";groupElements(){let e=this.options.groups.slice(),t=this.controls.slice(),n=[];const p=[];return e=Rn(e,this.groupOrder,"id"),e=e.filter(d=>Kl(d.id,this.options.disable.groups)),n=e.map(d=>{const g={tag:"ul",attrs:{className:[rt,Zu],id:`${d.id}-${rt}`},config:{label:this.groupLabel(d.label)}};if(this.options.elementOrder[d.id]){const m=this.options.elementOrder[d.id],l=pt(m.concat(d.elementOrder));d.elementOrder=l}return t=Rn(t,d.elementOrder,"meta.id"),g.content=t.filter(m=>{const{controlData:l}=this.get(m.id),f=l.meta.id||"",r=[Kl(f,this.options.disable.elements),l.meta.group===d.id,!p.includes(f)];let o=!0;return o=r.every(s=>s===!0),o&&p.push(f),o}),g}),n}add(e=Object.create(null)){const t=Ye(e);return this.data.set(t.id,t),t.controlData.meta.id&&this.data.set(t.controlData.meta.id,t.controlData),t}get(e){return Ye(this.data.get(e))}formActions(){if(this.options.disable.formActions===!0)return null;const e={...U.btnTemplate({content:[U.icon("bin"),Q.get("clear")],title:Q.get("clearAll")}),className:["clear-form"],action:{click:p=>{Qs.size?(le.confirmClearAll=new window.CustomEvent("confirmClearAll",{detail:{confirmationMessage:Q.get("confirmClearAll"),clearAllAction:()=>{Jt.clearAll().then(()=>{const d={src:p.target};le.formeoCleared(d)})},btnCoords:U.coords(p.target)}}),document.dispatchEvent(le.confirmClearAll)):window.alert(Q.get("cannotClearFields"))}}},t={...U.btnTemplate({content:[U.icon("floppy-disk"),Q.get("save")],title:Q.get("save")}),className:["save-form"],action:{click:async({target:p})=>{const{default:d}=await At(async()=>{const{default:l}=await Promise.resolve().then(()=>$m);return{default:l}},void 0),{formData:g}=d,m={action:()=>{},coords:U.coords(p),message:"",button:p};return Te.click.btn(m),Te.save.form(g)}}};return{className:"form-actions f-btn-group",content:Object.entries({clearBtn:e,saveBtn:t}).reduce((p,[d,g])=>(this.options.disable.formActions.includes(d)||p.push(g),p),[])}}buildDOM(e){const t=this.groupElements(),n=this.formActions(),{displayType:p}=this.options.panels;this.panels=new Bh({panels:t,type:"controls",displayType:p});const d=["control-groups","formeo-panels-wrap",`panel-count-${t.length}`],g=U.create({className:d,content:[this.panels.panelNav,this.panels.panelsWrap]}),m=["formeo-controls"];e&&m.push("formeo-sticky");const l=U.create({className:m,content:[g,n]}),f=l.getElementsByClassName("control-group");this.dom=l,this.groups=f;const[r]=f;this.currentGroup=r,this.actions={filter:o=>{const s=o!=="",a=this.controls;let i=g.querySelector(".filtered-term");if(U.toggleElementsByStr(a,o),s){const u=Q.get("controls.filteringTerm",o);l.classList.add("filtered"),i?i.textContent=u:(i=U.create({tag:"h5",className:"filtered-term",content:u}),g.insertBefore(i,g.firstChild))}else i&&(l.classList.remove("filtered"),i.remove())},addElement:this.addElement,addGroup:o=>console.log(o)};for(let o=f.length-1;o>=0;o--){const s=`formeo-controls-${f[o]}`;this.options.sortable||window.localStorage.removeItem(s),ee.create(f[o],{animation:150,forceFallback:!0,fallbackClass:"control-moving",fallbackOnBody:!0,group:{name:"controls",pull:"clone",put:!1},onStart:async({item:a})=>{const{controlData:i}=this.get(a.id);if(this.options.ghostPreview){const{default:u}=await At(async()=>{const{default:h}=await Promise.resolve().then(()=>wm);return{default:h}},void 0);a.innerHTML="",a.appendChild(new u(i).preview)}},onEnd:({from:a,item:i,clone:u})=>{a.contains(u)&&a.replaceChild(i,u)},sort:this.options.sortable,store:{get:()=>{const a=window.localStorage.getItem(s);return a?a.split("|"):[]},set:a=>{const i=a.toArray();window.localStorage.setItem(s,i.join("|"))}}})}return l}layoutTypes={row:()=>Jt.active.addChild(),column:()=>this.layoutTypes.row().addChild(),field:e=>this.layoutTypes.column().addChild(e)};addElement=e=>{const{meta:{group:t,id:n},...p}=De(this.get(e),"controlData");return Gn(p,"config.controlId",n),t==="layout"?this.layoutTypes[n.replace("layout-","")]():this.layoutTypes.field(p)};applyOptions=async(e={})=>{const{container:t,elements:n,groupOrder:p,...d}=ze(gm,e);this.container=t,this.groupOrder=pt(p.concat(["common","html","layout"])),this.options=d;const[g,m,l]=await Promise.all([At(()=>import("./index.min.js"),[]),At(()=>import("./index.min2.js"),[]),At(()=>import("./index.min3.js"),[])]),f=[g.default,m.default,l.default].flat();return Promise.all(this.registerControls([...f,...n]))}};const xt=new Vh,mm=Object.freeze(Object.defineProperty({__proto__:null,Controls:Vh,default:xt},Symbol.toStringTag,{value:"Module"})),vm=()=>({}),ym=new Set(["checkbox","radio"]),bm=new Set(["radio","checkbox","select-one","select-multiple"]);class Kh extends Yn{constructor(e=Object.create(null)){super("field",{...vm(),...e}),this.debouncedUpdateEditPanels=An(this.updateEditPanels),this.debouncedUpdatePreview=An(this.updatePreview),this.label=U.create(this.labelConfig),this.preview=this.fieldPreview(),this.controlId=this.get("config.controlId")||this.get("meta.id");const t=this.getActionButtons(),n=this.actionButtons.some(d=>d.meta?.id==="edit");this.updateEditPanels();const p=U.create({tag:"li",attrs:{className:It},id:this.id,children:[this.label,this.getComponentTag(),t,n&&this.editWindow,this.preview].filter(Boolean),panelNav:this.panelNav,dataset:{hoverTag:Q.get("field")}});this.dom=p,this.isEditing=!1}get labelConfig(){if(!!this.get("config.hideLabel"))return null;const t=this.get("config.editorLabel")||this.get("config.label"),n=this.get("attrs.required"),p=this.config.label.disableHTML;return{className:"prev-label",children:[{...(()=>{const l={tag:"label",attrs:{}};return p?(l.tag="input",l.attrs.value=t,l):(l.attrs.contenteditable=!0,l.children=t,l)})(),action:{input:({target:{innerHTML:l,innerText:f}})=>{super.set("config.label",p?f:l)}}},n&&U.requiredMark()]}}setData=(e,t)=>super.set(e,t);set(e,t){const n=this.setData(e,t);return this.debouncedUpdatePreview(),n}updateLabel(){if(!this.label)return null;const e=U.create(this.labelConfig);this.label.replaceWith(e),this.label=e}updatePreview=()=>{this.updateLabel();const e=this.fieldPreview();this.preview.replaceWith(e),this.preview=e};get defaultPreviewActions(){return{change:e=>{const{target:t}=e,{type:n}=t;if(bm.has(n)){const p=this.preview.querySelectorAll(":checked"),d=this.get("options"),g=d?.[0]?.selected!==void 0?"selected":"checked",m=d.reduce((l,f)=>(l[f.value]=f,l[f.value][g]=!1,l),{});for(const l of p)m[l.value][g]=l.value===m[l.value].value;return super.set("options",Object.values(m)),this.debouncedUpdateEditPanels()}},click:e=>{e.target.contentEditable==="true"&&e.preventDefault()},input:({target:e})=>{if(["input","meter","progress","button"].includes(e.tagName.toLowerCase()))return super.set("attrs.value",e.value),this.debouncedUpdateEditPanels();if(e.contentEditable&&!e.type?.startsWith("select-")){const t=e.parentElement.classList;if(t.contains("f-checkbox")||t.contains("f-radio")){const p=e.parentElement,d=at(p);return this.setData(`options[${d}].label`,e.innerHTML),this.debouncedUpdateEditPanels()}this.setData("content",e.innerHTML||e.value)}}}}fieldPreview(){const{action:e={},...t}=Ye(this.data);t.id=`prev-${this.id}`,t.action=Object.entries(e).reduce((p,[d,g])=>(p[d]=g.bind(this),p),{}),this.data?.config.editableContent&&(t.attrs={...t.attrs,contenteditable:!0});const n={attrs:{className:"field-preview",style:this.isEditing&&"display: none;"},content:U.create(t,!0),action:this.defaultPreviewActions};return U.create(n,!0)}get isCheckable(){return ym.has(this.get("config.controlId"))}}const wm=Object.freeze(Object.defineProperty({__proto__:null,default:Kh},Symbol.toStringTag,{value:"Module"})),Cm=()=>({actionButtons:{buttons:["move","edit","clone","remove"],disabled:[]},panels:{disabled:[],attrs:{disabled:["type"],hideDisabled:!0,locked:[]},order:["attrs","options","conditions"]},label:{disableHTML:!1}});let Sm=class extends Vn{constructor(e){super("fields",e),this.config={all:Cm()}}Component(e){return new Kh(e)}get=e=>{let t=e&&De(this.data,e);if(!t){const n=xt.get(e);n&&(t=this.add(null,n.controlData))}return t};getData=()=>Object.entries(this.data).reduce((e,[t,n])=>{const{conditions:p,...d}=n?.getData()||n;if(p?.length){let g=!0;if(p.length===1){const[m]=p;g=!!m.if[0].source}g&&(d.conditions=p)}return e[t]=d,e},{});load=(e=Object.create(null))=>{const t=Hn(e);this.empty();for(const[n,p]of Object.entries(t)){const{meta:d,...g}=p;d?.id&&Gn(g,"config.controlId",d?.id),this.add(n,g)}return this.data}};const qh=new Sm,wn=Jt,Cn=Qs,Zt=Hh,Sn=qh,On=xt,Am=(c,e=!1)=>c?Ye(Hn(c)):e&&Yu.get(nh)||$n();class Yh extends Gs{constructor(){super("components"),this.disableEvents=!0,this.stages=wn,this.rows=Cn,this.columns=Zt,this.fields=Sn,this.controls=On}load=(e,t)=>{this.empty();const n=Am(e,t.sessionStorage);this.opts=t,this.set("id",n.id),this.add("stages",wn.load(n.stages)),this.add("rows",Cn.load(n.rows)),this.add("columns",Zt.load(n.columns)),this.add("fields",Sn.load(n.fields));for(const p of Object.values(this.get("stages")))p.loadChildren();return this.data};flatList(){const e={};for(const t of Object.keys(this.data.stages))Xu(this.data,t,"stages",e);return e}getChildData=({type:e,id:t})=>{const n=this.get(e,t);if(n)return n.getData()};get json(){return window.JSON.stringify({$schema:`https://cdn.jsdelivr.net/npm/formeo@${Ps}/dist/formData_schema.json`,...this.formData})}get formData(){return{id:this.get("id"),stages:Jt.getData(),rows:Qs.getData(),columns:Hh.getData(),fields:qh.getData()}}set config(e){const{stages:t,rows:n,columns:p,fields:d}=e;wn.config=t,Cn.config=n,Zt.config=p,Sn.config=d}getIndex(e){return this[e]||this[Lf.get(e)]}setAddress(e,t){if(!Pe(e))return;const[n,p,...d]=Array.isArray(e)?e:mt(e),m=this.getIndex(n).get(p);return m?.set(d,t),m}getAddress(e){if(!Pe(e))return;const[t,n,...p]=Array.isArray(e)?e:mt(e),g=this.getIndex(t).get(n);if(!(p.length&&!g))return p.length?g.get(p):g}}const ce=new Yh,$m=Object.freeze(Object.defineProperty({__proto__:null,Columns:Zt,Components:Yh,Controls:On,Fields:Sn,Rows:Cn,Stages:wn,default:ce},Symbol.toStringTag,{value:"Module"})),ou="no-transition",Xh={debug:!1,bubbles:!0,formeoLoaded:c=>{},onAdd:()=>{},onChange:(...c)=>Xh.onUpdate(...c),onUpdate:c=>le.opts?.debug&&console.log(c),onUpdateStage:c=>le.opts?.debug&&console.log(c),onUpdateRow:c=>le.opts?.debug&&console.log(c),onUpdateColumn:c=>le.opts?.debug&&console.log(c),onUpdateField:c=>le.opts?.debug&&console.log(c),onRender:c=>le.opts?.debug&&console.log(c),onSave:c=>{},confirmClearAll:c=>{window.confirm(c.confirmationMessage)&&c.clearAllAction(c)}},Pt=({src:c,...e},t=jn)=>{const n=new window.CustomEvent(t,{detail:e,bubbles:le.opts?.debug||le.opts?.bubbles});return n.data=(c||document).dispatchEvent(n),n},le={init:function(c){return this.opts={...Xh,...c},this},formeoSaved:c=>Pt(c,ih),formeoUpdated:c=>Pt(c,jn),formeoCleared:c=>Pt(c,Gf),formeoOnRender:c=>Pt(c,rh),formeoConditionUpdated:c=>Pt(c,Vf)},Em=Af(()=>{le.opts.onUpdate({timeStamp:window.performance.now(),type:jn,detail:ce.formData})},gt);document.addEventListener(jn,Em);document.addEventListener(Hf,c=>{const{timeStamp:e,type:t,detail:n}=c;le.opts.onUpdate({timeStamp:e,type:t,detail:n})});document.addEventListener(zf,c=>{const{timeStamp:e,type:t,detail:n}=c;le.opts.onUpdate({timeStamp:e,type:t,detail:n})});document.addEventListener(jf,c=>{const{timeStamp:e,type:t,detail:n}=c;le.opts.onUpdate({timeStamp:e,type:t,detail:n})});document.addEventListener(Uf,c=>{const{timeStamp:e,type:t,detail:n}=c;le.opts.onUpdate({timeStamp:e,type:t,detail:n})});document.addEventListener(rh,c=>{const{timeStamp:e,type:t,detail:n}=c;le.opts.onRender({timeStamp:e,type:t,detail:n})});document.addEventListener("confirmClearAll",c=>{c={timeStamp:c.timeStamp,type:c.type,confirmationMessage:c.detail.confirmationMessage,clearAllAction:c.detail.clearAllAction,btnCoords:c.detail.btnCoords},le.opts.confirmClearAll(c)});document.addEventListener(ih,({timeStamp:c,type:e,detail:{formData:t}})=>{const n={timeStamp:c,type:e,formData:t};le.opts.onSave(n)});document.addEventListener("formeoLoaded",c=>{le.opts.formeoLoaded(c.detail.formeo)});let Vo;function Tm(){Vo=Vo||window.requestAnimationFrame(()=>{Vo=!1;for(const c of Object.values(Zt.data))c.dom.classList.add(ou),On.dom.classList.add(ou),On.panels.nav.refresh(),c.refreshFieldPanels()})}window.addEventListener("resize",Tm);const su={add:{attr:c=>{const e=window.prompt(c.message.attr);if(e&&c.isDisabled(e))return window.alert(Q.get("attributeNotPermitted",e||"")),Te.add.attrs(c);let t;e&&(t=String(window.prompt(c.message.value,"")),c.addAction(e,t))},option:c=>{c.addAction()},condition:c=>{c.addAction(c)}},remove:{attrs:c=>{c.removeAction()},options:c=>{c.removeAction()},conditions:c=>{c.removeAction()}},click:{btn:c=>{c.action()}},save:{form:bs}},Te={init:function(c){const e=Object.keys(su);return this.opts=e.reduce((t,n)=>(t[n]={...su[n],...c[n]},t),c),this},add:{attrs:c=>Te.opts.add.attr(c),options:c=>Te.opts.add.option(c),conditions:c=>(c.template=c.template||js(),Te.opts.add.condition(c))},remove:{attrs:c=>Te.opts.remove.attrs(c),options:c=>Te.opts.remove.options(c),conditions:c=>Te.opts.remove.conditions(c)},click:{btn:c=>Te.opts.click.btn(c)},save:{form:c=>(Te.opts.sessionStorage&&Yu.set(nh,c),le.formeoSaved({formData:c}),Te.opts.save.form(c))}};var Mm={"en-US":"English",dir:"ltr","af-ZA":"Afrikaans (South Africa)","ar-TN":"Arabic (Tunisia)","cs-CZ":"Czech (Czechia)","de-DE":"German (Germany)","es-ES":"European Spanish","fa-IR":"Persian (Iran)","fi-FI":"Finnish (Finland)","fr-FR":"French (France)","hu-HU":"Hungarian (Hungary)","it-IT":"Italian (Italy)","ja-JP":"Japanese (Japan)","nb-NO":"Norwegian Bokmål (Norway)","pl-PL":"Polish (Poland)","pt-BR":"Brazilian Portuguese","pt-PT":"European Portuguese","ro-RO":"Romanian (Romania)","ru-RU":"Russian (Russia)","th-TH":"Thai (Thailand)","tr-TR":"Turkish (Türkiye)","zh-CN":"Chinese (China)","zh-HK":"Chinese (Hong Kong SAR China)","action.add.attrs.attr":"What attribute would you like to add?","action.add.attrs.value":"Default Value",addOption:"Add Option",allFieldsRemoved:"All fields were removed.",allowSelect:"Allow Select",and:"and",attribute:"Attribute",attributeNotPermitted:'Attribute "{attribute}" is not permitted, please choose another.',attributes:"Attributes","attrs.class":"Class","attrs.className":"Class","attrs.dir":"Direction","attrs.id":"Id","attrs.required":"Required","attrs.style":"Style","attrs.title":"Title","attrs.type":"Type","attrs.value":"Value",autocomplete:"Autocomplete",button:"Button",cannotBeEmpty:"This field cannot be empty",cannotClearFields:"There are no fields to clear",checkbox:"Checkbox",checkboxes:"Checkboxes",class:"Class",clear:"Clear",clearAllMessage:"Are you sure you want to clear all fields?",close:"Close",column:"Column","condition.target.placeholder":"target","condition.type.and":"And","condition.type.if":"If","condition.type.or":"Or","condition.type.then":"Then","condition.value.placeholder":"value",confirmClearAll:"Are you sure you want to remove all fields?",content:"Content",control:"Control","controlGroups.nextGroup":"Next Group","controlGroups.prevGroup":"Previous Group","controls.filteringTerm":'Filtering "{term}"',"controls.form.button":"Button","controls.form.checkbox-group":"Checkbox Group","controls.form.input.date":"Date","controls.form.input.email":"Email","controls.form.input.file":"File Upload","controls.form.input.hidden":"Hidden Input","controls.form.input.number":"Number","controls.form.input.text":"Text Input","controls.form.radio-group":"Radio Group","controls.form.select":"Select","controls.form.textarea":"TextArea","controls.groups.form":"Form Fields","controls.groups.html":"HTML Elements","controls.groups.layout":"Layout","controls.html.divider":"Divider","controls.html.header":"Header","controls.html.paragraph":"Paragraph","controls.layout.column":"Column","controls.layout.row":"Row",copy:"Copy To Clipboard",danger:"Danger",defineColumnLayout:"Define a column layout",defineColumnWidths:"Define column widths",description:"Help Text",descriptionField:"Description","editing.row":"Editing Row",editorTitle:"Form Elements",field:"Field","field.property.invalid":"not valid","field.property.isChecked":"is checked","field.property.isNotVisible":"is not visible","field.property.isVisible":"is visible","field.property.label":"label","field.property.valid":"valid","field.property.value":"value",fieldNonEditable:"This field cannot be edited.",fieldRemoveWarning:"Are you sure you want to remove this field?",fileUpload:"File Upload",formUpdated:"Form Updated",getStarted:"Drag a field from the right to get started.",group:"Group",grouped:"Grouped",hidden:"Hidden Input",hide:"Edit",htmlElements:"HTML Elements",if:"If","if.condition.source.placeholder":"source","if.condition.target.placeholder":"target / value",info:"Info","input.date":"Date","input.text":"Text",label:"Label",labelCount:"{label} {count}",labelEmpty:"Field Label cannot be empty","lang.af":"Afrikaans","lang.ar":"Arabic","lang.cs":"Czech","lang.de":"German","lang.en":"English","lang.es":"Spanish","lang.fa":"Persian","lang.fi":"Finnish","lang.fr":"French","lang.hu":"Hungarian","lang.it":"Italian","lang.ja":"Japanese","lang.nb":"Norwegian Bokmål","lang.pl":"Polish","lang.pt":"Portuguese","lang.ro":"Romanian","lang.ru":"Russian","lang.th":"Thai","lang.tr":"Turkish","lang.zh":"Chinese",layout:"Layout",limitRole:"Limit access to one or more of the following roles:",mandatory:"Mandatory",maxlength:"Max Length","meta.group":"Group","meta.icon":"Ico","meta.label":"Label",minOptionMessage:"This field requires a minimum of 2 options",name:"Name",newOptionLabel:"New {type}",no:"No",number:"Number",off:"Off",on:"On","operator.contains":"contains","operator.equals":"equals","operator.notContains":"not contains","operator.notEquals":"not equal","operator.notVisible":"not visible","operator.visible":"visible",option:"Option",optional:"optional",optionEmpty:"Option value required",optionLabel:"Option {count}",options:"Options",or:"or",order:"Order","panel.label.attrs":"Attributes","panel.label.conditions":"Conditions","panel.label.config":"Configuration","panel.label.meta":"Meta","panel.label.options":"Options","panelEditButtons.attrs":"+ Attribute","panelEditButtons.conditions":"+ Condition","panelEditButtons.options":"+ Option",placeholder:"Placeholder","placeholder.className":"space separated classes","placeholder.email":"Enter you email","placeholder.label":"Label","placeholder.password":"Enter your password","placeholder.placeholder":"Placeholder","placeholder.text":"Enter some Text","placeholder.textarea":"Enter a lot of text","placeholder.value":"Value",preview:"Preview",primary:"Primary",remove:"Remove",removeMessage:"Remove Element",removeType:"Remove {type}",required:"Required",reset:"Reset",richText:"Rich Text Editor",roles:"Access",row:"Row","row.makeInputGroup":"Make this row an input group.","row.makeInputGroupDesc":"Input Groups enable users to add sets of inputs at a time.","row.settings.fieldsetWrap":"Wrap row in a &lt;fieldset&gt; tag","row.settings.fieldsetWrap.aria":"Wrap Row in Fieldset",save:"Save",secondary:"Secondary",select:"Select",selectColor:"Select Color",selectionsMessage:"Allow Multiple Selections",selectOptions:"Options",separator:"Separator",settings:"Settings",size:"Size",sizes:"Sizes","sizes.lg":"Large","sizes.m":"Default","sizes.sm":"Small","sizes.xs":"Extra Small",style:"Style",styles:"Styles","styles.btn":"Button Style","styles.btn.danger":"Danger","styles.btn.default":"Default","styles.btn.info":"Info","styles.btn.primary":"Primary","styles.btn.success":"Success","styles.btn.warning":"Warning",subtype:"Type",success:"Success",text:"Text Field",then:"Then","then.condition.target.placeholder":"target",toggle:"Toggle",ungrouped:"Un-Grouped",warning:"Warning",yes:"Yes"};const _m=Mm;Q.addLanguage("en-US",_m);const xm={get editor(){return{stickyControls:!1,allowEdit:!0,dataType:"json",debug:!1,sessionStorage:!1,editorContainer:null,svgSprite:Qu,style:Ef,iconFont:null,config:{},events:{},actions:{},controls:{},polyfills:Rh(),i18n:{location:"https://draggable.github.io/formeo/assets/lang/"},onLoad:()=>{}}}};let Qh=class{constructor({formData:e,...t},n){const p=ze(xm.editor,t),{actions:d,events:g,debug:m,config:l,editorContainer:f,...r}=p;f&&(this.editorContainer=typeof f=="string"?document.querySelector(f):f),this.opts=r,U.setOptions=r,ce.config=l,this.userFormData=n||e,this.Components=ce,this.dom=U,le.init({debug:m,...g}),Te.init({debug:m,sessionStorage:r.sessionStorage,...d}),this.tooltip=new ku,document.readyState==="loading"?document.addEventListener("DOMContentLoaded",this.loadResources.bind(this)):this.loadResources()}get formData(){return this.Components.formData}set formData(e={}){this.userFormData=Vt(e),this.load(this.userFormData,this.opts)}get json(){return this.Components.json}clear(){this.userFormData=$n(),this.Components.load(this.userFormData,this.opts),this.render()}async loadResources(){document.removeEventListener("DOMContentLoaded",this.loadResources);const e=[];this.opts.polyfills&&hm(this.opts.polyfills),await um(this.opts.svgSprite),e.push(fm(this.opts.style)),e.push(Q.init({...this.opts.i18n,locale:window.sessionStorage?.getItem(Ql)}));const t=await Promise.all(e);return this.opts.allowEdit&&this.init(),t}init(){return xt.init(this.opts.controls,this.opts.stickyControls).then(e=>{this.controls=e,this.load(this.userFormData,this.opts),this.formId=ce.get("id"),this.i18n={setLang:t=>{window.sessionStorage?.setItem(Ql,t),Q.setCurrent(t).then(()=>{this.init()},console.error)}},this.opts.onLoad?.(this)})}load(e=this.userFormData,t=this.opts){this.Components.load(e,t),this.render()}render(){if(!this.controls)return window.requestAnimationFrame(()=>this.render());if(this.stages=Object.values(ce.get("stages")),this.opts.controlOnLeft)for(const n of this.stages)n.dom.style.order=1;const e={attrs:{className:"formeo formeo-editor",id:this.formId},content:[this.stages.map(({dom:n})=>n)]};Q.current.dir&&(e.attrs.dir=Q.current.dir,U.dir=Q.current.dir),this.editor=U.create(e),(this.controls.container||this.editor).appendChild(this.controls.dom),this.editorContainer&&(U.empty(this.editorContainer),this.editorContainer.appendChild(this.editor)),le.formeoLoaded=new window.CustomEvent("formeoLoaded",{detail:{formeo:this}}),document.dispatchEvent(le.formeoLoaded)}};const Ko="f-",au=c=>typeof c=="string"?document.querySelector(c):c,Lm=({editorContainer:c,renderContainer:e,formData:t,...n})=>{const p={renderContainer:au(e),editorContainer:au(c),formData:Vt(t)};return{elements:{},...n,...p}},qo=c=>c.match(Qf)?.[0]||c``,lu=c=>{if(!c||c.hasAttribute("hidden")||c.parentElement.hasAttribute("hidden"))return!1;const e=window.getComputedStyle(c);return!(e.display==="none"||e.visibility==="hidden"||e.opacity==="0")},Rm={isChecked:c=>c.checked,isNotChecked:c=>!c.checked,value:c=>c.value,isVisible:c=>lu(c),isNotVisible:c=>!lu(c)},km=()=>U.btnTemplate({className:"remove-input-group",children:U.icon("remove"),action:{mouseover:({target:c})=>c.parentElement.classList.add("will-remove"),mouseleave:({target:c})=>c.parentElement.classList.remove("will-remove"),click:({target:c})=>c.parentElement.remove()}}),cu={equals:As,notEquals:(c,e)=>!As(c,e),contains:(c,e)=>c.includes(e),notContains:(c,e)=>!c.includes(e)},Im=Object.entries(oh).reduce((c,[e,t])=>(c[t]=cu[e],c[e]=cu[e],c),{}),uu={equals:(c,{targetProperty:e,value:t})=>{c[`_${e}`]=c[e],c[e]=t}},Om=Object.entries(sh).reduce((c,[e,t])=>(c[t]=uu[e],c[e]=uu[e],c),{}),Dm={isChecked:c=>{c.checked=!0},isNotChecked:c=>{c.checked=!1},value:(c,{assignment:e,...t})=>{const n=Om[e]?.(c,t),p=new Event("input",{bubbles:!0});return c.dispatchEvent(p),n},isNotVisible:c=>{c?._required===void 0&&(c._required=c.required),c.parentElement.setAttribute("hidden",!0),c.required=!1},isVisible:c=>{c.parentElement.removeAttribute("hidden"),c.required=c._required}};let Zh=class{constructor(e,t){const{renderContainer:n,elements:p,formData:d}=Lm(e);this.container=n,this.form=Vt(t||d),this.dom=U,this.components=Object.create(null),this.elements=p}get formData(){return this.form}set formData(e){this.form=Vt(e)}get userData(){const e=new FormData(this.renderedForm),t={};for(const[n,p]of e.entries())t[n]?Array.isArray(t[n])?t[n].push(p):t[n]=[t[n],p]:t[n]=p;return t}set userData(e={}){const t=this.container.querySelector("form");for(const n of Object.keys(e)){const p=t.elements[n];if(p.length&&p[0].type==="checkbox"){const d=Array.isArray(e[n])?e[n]:[e[n]];for(const g of p)g.checked=d.includes(g.value)}else if(p.length&&p[0].type==="radio")for(const d of p)d.checked=d.value===e[n];else p.type&&(p.value=e[n])}}render(e=this.form){const t=this.getRenderedForm(e),n=this.container.querySelector(".formeo-render");n?n.replaceWith(t):this.container.appendChild(t)}getRenderedForm(e=this.form){this.form=Vt(e);const t=document.getElementsByClassName("formeo-render").length,n={tag:"form",id:this.form.id,className:`formeo-render formeo formeo-rendered-${t}`,children:this.processedData};return this.renderedForm=U.render(n),this.applyConditions(),this.renderedForm}get html(){return(this.renderedForm||this.getRenderedForm()).outerHTML}orderChildren=(e,t)=>t.reduce((n,p)=>(n.push(this.form[e][p]),n),[]);prefixId=e=>Ko+e;processColumn=({id:e,...t})=>({...t,id:this.prefixId(e),children:this.processFields(t.children),style:`width: ${t.config.width||"100%"}`});processRows=e=>this.orderChildren("rows",this.form.stages[e].children).reduce((t,n)=>(n&&t.push(this.processRow(n)),t),[]);cacheComponent=e=>(this.components[qo(e.id)]=e,e);processRow=(e,t="row")=>{const{config:n,id:p}=e,d=[`formeo-${t}-wrap`],g={...e,children:this.processColumns(e.id),id:this.prefixId(p)};this.cacheComponent(g);const l=[{condition:n.legend,result:()=>({tag:n.fieldset?"legend":"h3",children:n.legend})},{condition:!0,result:()=>g},{condition:n.inputGroup,result:()=>this.addButton(p)}].reduce((f,{condition:r,result:o})=>(r&&f.push(o()),f),[]);return n.inputGroup&&d.push(`${Ko}input-group-wrap`),{tag:n.fieldset?"fieldset":"div",className:d,children:l}};cloneComponentData=e=>{const{children:t=[],id:n,...p}=this.components[e];return{...p,id:We(n),children:t?.length&&t.map(({id:d})=>this.cloneComponentData(qo(d)))}};addButton=e=>({tag:"button",attrs:{className:"add-input-group btn pull-right",type:"button"},children:"Add +",action:{click:t=>{const n=t.target.parentElement,p=U.create(this.cloneComponentData(e));n.insertBefore(p,n.lastChild);const d=U.create(km());p.appendChild(d)}}});processColumns=e=>this.orderChildren("columns",this.form.rows[e].children).map(t=>this.cacheComponent(this.processColumn(t)));processFields=e=>this.orderChildren("fields",e).map(({id:t,...n})=>{const p=n.config?.controlId||n.meta?.id,{action:d={},dependencies:g={}}=this.elements[p]||{};g&&Gh(g);const m=ze({action:d},n);return this.cacheComponent({...m,id:this.prefixId(t)})});get processedData(){return Object.values(this.form.stages).map(e=>(e.children=this.processRows(e.id),e.className=kt,this.components[qo(e.id)]=e,e))}handleComponentCondition=(e,t,n)=>{if(e.length){for(const g of e)this.handleComponentCondition(g,t,n);return}const p=Nm(e);p&&e.addEventListener(p,g=>{if(this.evaluateCondition(t,g))for(const m of n)this.execResult(m,g)},!1);const d={target:e};if(this.evaluateCondition(t,d))for(const g of n)this.execResult(g,d)};applyConditions=()=>{for(const{conditions:e}of Object.values(this.components))if(e)for(const t of e){const{if:n,then:p}=t;for(const d of n){const{source:g,target:m}=d;if(Pe(g)){const{component:l,options:f}=this.getComponent(g),r=f||l;this.handleComponentCondition(r,d,p)}if(Pe(m)){const{component:l,options:f}=this.getComponent(m),r=f||l;this.handleComponentCondition(r,d,p)}}}};evaluateCondition=({source:e,sourceProperty:t,targetProperty:n,comparison:p,target:d})=>{const g=this.getComponentProperty(e,t);if(typeof g=="boolean")return g;const m=String(Pe(d)?this.getComponentProperty(d,n):d);return Im[p]?.(g,m)};execResult=({target:e,targetProperty:t,assignment:n,value:p})=>{if(Pe(e)){const{component:d,option:g}=this.getComponent(e),m=g||d;Dm[t]?.(m,{targetProperty:t,assignment:n,value:p})}};getComponentProperty=(e,t)=>{const{component:n,option:p}=this.getComponent(e),d=p||n;return Rm[t]?.(d)||d[t]};getComponent=e=>{const t={component:null};if(!Pe(e))return null;const[,n,p,d]=mt(e),g=this.renderedForm.querySelector(`#${Ko}${n}`);if(!g)return t;if(t.component=g,p){const m=g.querySelectorAll("input"),l=m[d];return t.options=m,t.option=l,t}return t};getComponents=e=>{const t=[],n=e.slice(e.indexOf(".")+1);return t.push(...this.renderedForm.querySelectorAll(`[name=f-${n}]`)),t}};const Nm=c=>{const e=[["input",n=>["textarea","text"].includes(n.type)],["change",n=>["select"].includes(n.tagName.toLowerCase())||["checkbox","radio"].includes(n.type)]],[t]=e.find(n=>n[1](c))||[!1];return t};window!==void 0&&(window.FormeoEditor=Qh,window.FormeoRenderer=Zh);const Zs=Qh,Js=Zh,Fm={rows:{all:{events:{onAdd:c=>{if(console.log(`You just added a new row with the id "${c.target.id}"`,c.index),c.index===2){const e=c.target.dom.querySelector(".action-btn-wrap"),t=document.createElement("button");t.type="button",t.className="btn btn-sm btn-secondary",t.textContent="Add Column",t.style.border="1px solid #ccc",t.style.width="auto",t.addEventListener("click",()=>{c.target.addChild()}),e.appendChild(t)}}}}},fields:{checkbox:{actionButtons:{},panels:{attrs:{hideDisabled:!0}}}}},Pm={sortable:!1,groupOrder:["common","html"],disable:{},elements:[{tag:"input",config:{label:"Email",disabledAttrs:["type"],lockedAttrs:["required","className"]},meta:{group:"common",id:"email",icon:"@"},attrs:{className:"custom-email",type:"email",required:!0}}],elementOrder:{common:["button","checkbox","date-input","hidden","upload","number","radio","select","text-input","textarea"]}},Wm=".build-form",Bm=".render-form",en={editorContainer:Wm,i18n:{location:"./assets/lang"},actions:{},controls:Pm,config:Fm,events:{onSave:console.log,onChange:console.log},sessionStorage:!0,editPanelOrder:["attrs","options"],onLoad:()=>{console.log("demo loaded")}},ea={renderContainer:Bm,elements:{tinymce:{action:{onRender:c=>{if(c.id){const e=`#${c.id}`;window.tinymce.remove(e),window.tinymce.init({selector:e})}}}}}};async function Hm(c){c.innerHTML=`
10
+ `),n={};for(let p,d=0;d<t.length;d++)p=/^(.+?) *?= *?([^\n]+)/.exec(t[d]),p&&(n[p[1]]=p[2].replace(/(^\s+|\s+$)/g,""));return n}loadLang(e,t=!0){const n=this;return new Promise(function(p,d){if(n.loaded.indexOf(e)!==-1&&t)return n.applyLanguage(n.langs[e]),p(n.langs[e]);{const g=[n.config.location,e,n.config.extension].join("");return nd(g).then(m=>{const l=Gt.processFile(m);return n.applyLanguage(e,l),n.loaded.push(e),p(n.langs[e])}).catch(m=>{console.error(m);const l=n.applyLanguage(e);p(l)})}})}applyLanguage(e,t={}){const n=this.config.override[e]||{},p=this.langs[e]||{};return this.langs[e]={...p,...t,...n},this.langs[e]}get getLangs(){return this.config.langs}async setCurrent(e="en-US"){return await this.loadLang(e),this.locale=e,this.current=this.langs[e],this.current}}const Q=new Gt;(function(){try{if(typeof document<"u"){var c=document.createElement("style");c.appendChild(document.createTextNode('._3x4ZIcu-{position:absolute;background:#1f2937;color:#fff;padding:.75rem;border-radius:.375rem;max-width:200px;z-index:50;visibility:hidden;opacity:0;transition:opacity .2s;pointer-events:none;left:0;top:0}._3x4ZIcu-.JIt36hCJ{visibility:visible;opacity:1;pointer-events:all}._3x4ZIcu-:before{content:"";position:absolute;width:0;height:0;border:6px solid transparent}._3x4ZIcu-[data-position=top]:before{border-top-color:#1f2937;bottom:-12px;left:50%;transform:translate(-50%)}._3x4ZIcu-[data-position=bottom]:before{border-bottom-color:#1f2937;top:-12px;left:50%;transform:translate(-50%)}._3x4ZIcu-[data-position=left]:before{border-left-color:#1f2937;right:-12px;top:50%;transform:translateY(-50%)}._3x4ZIcu-[data-position=right]:before{border-right-color:#1f2937;left:-12px;top:50%;transform:translateY(-50%)}._3x4ZIcu-[data-position=top-left]:before{border-top-color:#1f2937;bottom:-12px;left:12px;transform:none}._3x4ZIcu-[data-position=top-right]:before{border-top-color:#1f2937;bottom:-12px;right:12px;left:auto;transform:none}._3x4ZIcu-[data-position=bottom-left]:before{border-bottom-color:#1f2937;top:-12px;left:12px;transform:none}._3x4ZIcu-[data-position=bottom-right]:before{border-bottom-color:#1f2937;top:-12px;right:12px;left:auto;transform:none}')),document.head.appendChild(c)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();var id=Object.defineProperty,rd=(c,e,t)=>e in c?id(c,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):c[e]=t,Ve=(c,e,t)=>rd(c,typeof e!="symbol"?e+"":e,t);const od="_3x4ZIcu-",sd="JIt36hCJ",Dt={tooltip:od,visible:sd},ad={triggerName:"tooltip"};class ku{constructor(e=ad){Ve(this,"triggerName"),Ve(this,"tooltip"),Ve(this,"activeTriggerType",null),Ve(this,"spacing",12),Ve(this,"handleClick",t=>{const n=this.triggerName,p=t.target.closest(`[${n}][${n}-type="click"]`);if(p)if(this.isVisible())this.hide();else{const d=p.getAttribute(`${n}`);this.show(p,d),this.activeTriggerType="click"}else this.hide()}),Ve(this,"handleMouseOver",t=>{const n=this.triggerName,p=t.target.closest(`[${n}]`);if(this.activeTriggerType!=="click"&&p?.getAttribute(`${n}-type`)!=="click"){const d=p?.getAttribute(`${n}`);d&&(this.show(p,d),this.activeTriggerType="hover")}}),Ve(this,"handleMouseOut",t=>{const n=this.triggerName,p=t.target.closest(`[${n}]`);this.activeTriggerType!=="click"&&p?.getAttribute(`${n}-type`)!=="click"&&this.hide()}),Ve(this,"handleResize",()=>{this.isVisible()&&this.hide()}),Ve(this,"handleScroll",()=>{this.isVisible()&&this.hide()}),this.triggerName=`data-${e.triggerName}`,this.tooltip=document.createElement("div"),this.tooltip.className=`d-tooltip ${Dt.tooltip}`,document.body.appendChild(this.tooltip),this.setupEventListeners()}setupEventListeners(){document.addEventListener("mouseover",this.handleMouseOver),document.addEventListener("mouseout",this.handleMouseOut),document.addEventListener("touchstart",this.handleMouseOver),document.addEventListener("touchend",this.handleMouseOut),document.addEventListener("click",this.handleClick),window.addEventListener("resize",this.handleResize),window.addEventListener("scroll",this.handleScroll,!0)}isVisible(){return this.tooltip.classList.contains(Dt.visible)}calculatePosition(e){const t=e.getBoundingClientRect(),n=this.tooltip.getBoundingClientRect(),p=[{name:"top",x:t.left+(t.width-n.width)/2,y:t.top-n.height-this.spacing},{name:"bottom",x:t.left+(t.width-n.width)/2,y:t.bottom+this.spacing},{name:"left",x:t.left-n.width-this.spacing,y:t.top+(t.height-n.height)/2},{name:"right",x:t.right+this.spacing,y:t.top+(t.height-n.height)/2},{name:"top-left",x:t.left,y:t.top-n.height-this.spacing},{name:"top-right",x:t.right-n.width,y:t.top-n.height-this.spacing},{name:"bottom-left",x:t.left,y:t.bottom+this.spacing},{name:"bottom-right",x:t.right-n.width,y:t.bottom+this.spacing}];return p.find(d=>this.fitsInViewport(d,n))||p[0]}fitsInViewport(e,t){return e.x>=0&&e.y>=0&&e.x+t.width<=window.innerWidth&&e.y+t.height<=window.innerHeight?[[e.x,e.y],[e.x+t.width,e.y],[e.x,e.y+t.height],[e.x+t.width,e.y+t.height],[e.x+t.width/2,e.y+t.height/2]].flatMap(([m,l])=>Array.from(document.elementsFromPoint(m,l))).filter(m=>{if(this.tooltip.contains(m)||m===this.tooltip||m.classList.contains(Dt.tooltip)||getComputedStyle(m).pointerEvents==="none")return!1}).length===0:!1}show(e,t){this.tooltip.innerHTML=t??"",this.tooltip.classList.add(Dt.visible);const n=this.calculatePosition(e);this.tooltip.style.left=`${n.x}px`,this.tooltip.style.top=`${n.y}px`,this.tooltip.dataset.position=n.name}hide(){this.tooltip.classList.remove(Dt.visible),this.activeTriggerType=null}destroy(){document.removeEventListener("mouseover",this.handleMouseOver),document.removeEventListener("mouseout",this.handleMouseOut),document.removeEventListener("touchstart",this.handleMouseOver),document.removeEventListener("touchend",this.handleMouseOut),document.removeEventListener("click",this.handleClick),window.removeEventListener("resize",this.handleResize),window.removeEventListener("scroll",this.handleScroll,!0),this.tooltip.remove()}}window!==void 0&&(window.SmartTooltip=ku);const ld="formeo",cd="4.1.3",Iu={name:ld,version:cd};var sn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Lt(c){return c&&c.__esModule&&Object.prototype.hasOwnProperty.call(c,"default")?c.default:c}var Jn,oa;function ud(){if(oa)return Jn;oa=1;function c(){this.__data__=[],this.size=0}return Jn=c,Jn}var ei,sa;function tn(){if(sa)return ei;sa=1;function c(e,t){return e===t||e!==e&&t!==t}return ei=c,ei}var ti,aa;function Dn(){if(aa)return ti;aa=1;var c=tn();function e(t,n){for(var p=t.length;p--;)if(c(t[p][0],n))return p;return-1}return ti=e,ti}var ni,la;function hd(){if(la)return ni;la=1;var c=Dn(),e=Array.prototype,t=e.splice;function n(p){var d=this.__data__,g=c(d,p);if(g<0)return!1;var m=d.length-1;return g==m?d.pop():t.call(d,g,1),--this.size,!0}return ni=n,ni}var ii,ca;function dd(){if(ca)return ii;ca=1;var c=Dn();function e(t){var n=this.__data__,p=c(n,t);return p<0?void 0:n[p][1]}return ii=e,ii}var ri,ua;function fd(){if(ua)return ri;ua=1;var c=Dn();function e(t){return c(this.__data__,t)>-1}return ri=e,ri}var oi,ha;function pd(){if(ha)return oi;ha=1;var c=Dn();function e(t,n){var p=this.__data__,d=c(p,t);return d<0?(++this.size,p.push([t,n])):p[d][1]=n,this}return oi=e,oi}var si,da;function Nn(){if(da)return si;da=1;var c=ud(),e=hd(),t=dd(),n=fd(),p=pd();function d(g){var m=-1,l=g==null?0:g.length;for(this.clear();++m<l;){var f=g[m];this.set(f[0],f[1])}}return d.prototype.clear=c,d.prototype.delete=e,d.prototype.get=t,d.prototype.has=n,d.prototype.set=p,si=d,si}var ai,fa;function gd(){if(fa)return ai;fa=1;var c=Nn();function e(){this.__data__=new c,this.size=0}return ai=e,ai}var li,pa;function md(){if(pa)return li;pa=1;function c(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}return li=c,li}var ci,ga;function vd(){if(ga)return ci;ga=1;function c(e){return this.__data__.get(e)}return ci=c,ci}var ui,ma;function yd(){if(ma)return ui;ma=1;function c(e){return this.__data__.has(e)}return ui=c,ui}var hi,va;function Ou(){if(va)return hi;va=1;var c=typeof sn=="object"&&sn&&sn.Object===Object&&sn;return hi=c,hi}var di,ya;function Ge(){if(ya)return di;ya=1;var c=Ou(),e=typeof self=="object"&&self&&self.Object===Object&&self,t=c||e||Function("return this")();return di=t,di}var fi,ba;function Fn(){if(ba)return fi;ba=1;var c=Ge(),e=c.Symbol;return fi=e,fi}var pi,wa;function bd(){if(wa)return pi;wa=1;var c=Fn(),e=Object.prototype,t=e.hasOwnProperty,n=e.toString,p=c?c.toStringTag:void 0;function d(g){var m=t.call(g,p),l=g[p];try{g[p]=void 0;var f=!0}catch{}var r=n.call(g);return f&&(m?g[p]=l:delete g[p]),r}return pi=d,pi}var gi,Ca;function wd(){if(Ca)return gi;Ca=1;var c=Object.prototype,e=c.toString;function t(n){return e.call(n)}return gi=t,gi}var mi,Sa;function Rt(){if(Sa)return mi;Sa=1;var c=Fn(),e=bd(),t=wd(),n="[object Null]",p="[object Undefined]",d=c?c.toStringTag:void 0;function g(m){return m==null?m===void 0?p:n:d&&d in Object(m)?e(m):t(m)}return mi=g,mi}var vi,Aa;function lt(){if(Aa)return vi;Aa=1;function c(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}return vi=c,vi}var yi,$a;function xs(){if($a)return yi;$a=1;var c=Rt(),e=lt(),t="[object AsyncFunction]",n="[object Function]",p="[object GeneratorFunction]",d="[object Proxy]";function g(m){if(!e(m))return!1;var l=c(m);return l==n||l==p||l==t||l==d}return yi=g,yi}var bi,Ea;function Cd(){if(Ea)return bi;Ea=1;var c=Ge(),e=c["__core-js_shared__"];return bi=e,bi}var wi,Ta;function Sd(){if(Ta)return wi;Ta=1;var c=Cd(),e=(function(){var n=/[^.]+$/.exec(c&&c.keys&&c.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""})();function t(n){return!!e&&e in n}return wi=t,wi}var Ci,Ma;function Du(){if(Ma)return Ci;Ma=1;var c=Function.prototype,e=c.toString;function t(n){if(n!=null){try{return e.call(n)}catch{}try{return n+""}catch{}}return""}return Ci=t,Ci}var Si,_a;function Ad(){if(_a)return Si;_a=1;var c=xs(),e=Sd(),t=lt(),n=Du(),p=/[\\^$.*+?()[\]{}|]/g,d=/^\[object .+?Constructor\]$/,g=Function.prototype,m=Object.prototype,l=g.toString,f=m.hasOwnProperty,r=RegExp("^"+l.call(f).replace(p,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function o(s){if(!t(s)||e(s))return!1;var a=c(s)?r:d;return a.test(n(s))}return Si=o,Si}var Ai,xa;function $d(){if(xa)return Ai;xa=1;function c(e,t){return e?.[t]}return Ai=c,Ai}var $i,La;function vt(){if(La)return $i;La=1;var c=Ad(),e=$d();function t(n,p){var d=e(n,p);return c(d)?d:void 0}return $i=t,$i}var Ei,Ra;function Ls(){if(Ra)return Ei;Ra=1;var c=vt(),e=Ge(),t=c(e,"Map");return Ei=t,Ei}var Ti,ka;function Pn(){if(ka)return Ti;ka=1;var c=vt(),e=c(Object,"create");return Ti=e,Ti}var Mi,Ia;function Ed(){if(Ia)return Mi;Ia=1;var c=Pn();function e(){this.__data__=c?c(null):{},this.size=0}return Mi=e,Mi}var _i,Oa;function Td(){if(Oa)return _i;Oa=1;function c(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}return _i=c,_i}var xi,Da;function Md(){if(Da)return xi;Da=1;var c=Pn(),e="__lodash_hash_undefined__",t=Object.prototype,n=t.hasOwnProperty;function p(d){var g=this.__data__;if(c){var m=g[d];return m===e?void 0:m}return n.call(g,d)?g[d]:void 0}return xi=p,xi}var Li,Na;function _d(){if(Na)return Li;Na=1;var c=Pn(),e=Object.prototype,t=e.hasOwnProperty;function n(p){var d=this.__data__;return c?d[p]!==void 0:t.call(d,p)}return Li=n,Li}var Ri,Fa;function xd(){if(Fa)return Ri;Fa=1;var c=Pn(),e="__lodash_hash_undefined__";function t(n,p){var d=this.__data__;return this.size+=this.has(n)?0:1,d[n]=c&&p===void 0?e:p,this}return Ri=t,Ri}var ki,Pa;function Ld(){if(Pa)return ki;Pa=1;var c=Ed(),e=Td(),t=Md(),n=_d(),p=xd();function d(g){var m=-1,l=g==null?0:g.length;for(this.clear();++m<l;){var f=g[m];this.set(f[0],f[1])}}return d.prototype.clear=c,d.prototype.delete=e,d.prototype.get=t,d.prototype.has=n,d.prototype.set=p,ki=d,ki}var Ii,Wa;function Rd(){if(Wa)return Ii;Wa=1;var c=Ld(),e=Nn(),t=Ls();function n(){this.size=0,this.__data__={hash:new c,map:new(t||e),string:new c}}return Ii=n,Ii}var Oi,Ba;function kd(){if(Ba)return Oi;Ba=1;function c(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}return Oi=c,Oi}var Di,Ha;function Wn(){if(Ha)return Di;Ha=1;var c=kd();function e(t,n){var p=t.__data__;return c(n)?p[typeof n=="string"?"string":"hash"]:p.map}return Di=e,Di}var Ni,za;function Id(){if(za)return Ni;za=1;var c=Wn();function e(t){var n=c(this,t).delete(t);return this.size-=n?1:0,n}return Ni=e,Ni}var Fi,ja;function Od(){if(ja)return Fi;ja=1;var c=Wn();function e(t){return c(this,t).get(t)}return Fi=e,Fi}var Pi,Ua;function Dd(){if(Ua)return Pi;Ua=1;var c=Wn();function e(t){return c(this,t).has(t)}return Pi=e,Pi}var Wi,Ga;function Nd(){if(Ga)return Wi;Ga=1;var c=Wn();function e(t,n){var p=c(this,t),d=p.size;return p.set(t,n),this.size+=p.size==d?0:1,this}return Wi=e,Wi}var Bi,Va;function Rs(){if(Va)return Bi;Va=1;var c=Rd(),e=Id(),t=Od(),n=Dd(),p=Nd();function d(g){var m=-1,l=g==null?0:g.length;for(this.clear();++m<l;){var f=g[m];this.set(f[0],f[1])}}return d.prototype.clear=c,d.prototype.delete=e,d.prototype.get=t,d.prototype.has=n,d.prototype.set=p,Bi=d,Bi}var Hi,Ka;function Fd(){if(Ka)return Hi;Ka=1;var c=Nn(),e=Ls(),t=Rs(),n=200;function p(d,g){var m=this.__data__;if(m instanceof c){var l=m.__data__;if(!e||l.length<n-1)return l.push([d,g]),this.size=++m.size,this;m=this.__data__=new t(l)}return m.set(d,g),this.size=m.size,this}return Hi=p,Hi}var zi,qa;function Nu(){if(qa)return zi;qa=1;var c=Nn(),e=gd(),t=md(),n=vd(),p=yd(),d=Fd();function g(m){var l=this.__data__=new c(m);this.size=l.size}return g.prototype.clear=e,g.prototype.delete=t,g.prototype.get=n,g.prototype.has=p,g.prototype.set=d,zi=g,zi}var ji,Ya;function Fu(){if(Ya)return ji;Ya=1;var c=vt(),e=(function(){try{var t=c(Object,"defineProperty");return t({},"",{}),t}catch{}})();return ji=e,ji}var Ui,Xa;function ks(){if(Xa)return Ui;Xa=1;var c=Fu();function e(t,n,p){n=="__proto__"&&c?c(t,n,{configurable:!0,enumerable:!0,value:p,writable:!0}):t[n]=p}return Ui=e,Ui}var Gi,Qa;function Pu(){if(Qa)return Gi;Qa=1;var c=ks(),e=tn();function t(n,p,d){(d!==void 0&&!e(n[p],d)||d===void 0&&!(p in n))&&c(n,p,d)}return Gi=t,Gi}var Vi,Za;function Pd(){if(Za)return Vi;Za=1;function c(e){return function(t,n,p){for(var d=-1,g=Object(t),m=p(t),l=m.length;l--;){var f=m[e?l:++d];if(n(g[f],f,g)===!1)break}return t}}return Vi=c,Vi}var Ki,Ja;function Wd(){if(Ja)return Ki;Ja=1;var c=Pd(),e=c();return Ki=e,Ki}var Wt={exports:{}};Wt.exports;var el;function Bd(){return el||(el=1,(function(c,e){var t=Ge(),n=e&&!e.nodeType&&e,p=n&&!0&&c&&!c.nodeType&&c,d=p&&p.exports===n,g=d?t.Buffer:void 0,m=g?g.allocUnsafe:void 0;function l(f,r){if(r)return f.slice();var o=f.length,s=m?m(o):new f.constructor(o);return f.copy(s),s}c.exports=l})(Wt,Wt.exports)),Wt.exports}var qi,tl;function Wu(){if(tl)return qi;tl=1;var c=Ge(),e=c.Uint8Array;return qi=e,qi}var Yi,nl;function Hd(){if(nl)return Yi;nl=1;var c=Wu();function e(t){var n=new t.constructor(t.byteLength);return new c(n).set(new c(t)),n}return Yi=e,Yi}var Xi,il;function zd(){if(il)return Xi;il=1;var c=Hd();function e(t,n){var p=n?c(t.buffer):t.buffer;return new t.constructor(p,t.byteOffset,t.length)}return Xi=e,Xi}var Qi,rl;function jd(){if(rl)return Qi;rl=1;function c(e,t){var n=-1,p=e.length;for(t||(t=Array(p));++n<p;)t[n]=e[n];return t}return Qi=c,Qi}var Zi,ol;function Ud(){if(ol)return Zi;ol=1;var c=lt(),e=Object.create,t=(function(){function n(){}return function(p){if(!c(p))return{};if(e)return e(p);n.prototype=p;var d=new n;return n.prototype=void 0,d}})();return Zi=t,Zi}var Ji,sl;function Bu(){if(sl)return Ji;sl=1;function c(e,t){return function(n){return e(t(n))}}return Ji=c,Ji}var er,al;function Hu(){if(al)return er;al=1;var c=Bu(),e=c(Object.getPrototypeOf,Object);return er=e,er}var tr,ll;function Is(){if(ll)return tr;ll=1;var c=Object.prototype;function e(t){var n=t&&t.constructor,p=typeof n=="function"&&n.prototype||c;return t===p}return tr=e,tr}var nr,cl;function Gd(){if(cl)return nr;cl=1;var c=Ud(),e=Hu(),t=Is();function n(p){return typeof p.constructor=="function"&&!t(p)?c(e(p)):{}}return nr=n,nr}var ir,ul;function yt(){if(ul)return ir;ul=1;function c(e){return e!=null&&typeof e=="object"}return ir=c,ir}var rr,hl;function Vd(){if(hl)return rr;hl=1;var c=Rt(),e=yt(),t="[object Arguments]";function n(p){return e(p)&&c(p)==t}return rr=n,rr}var or,dl;function zu(){if(dl)return or;dl=1;var c=Vd(),e=yt(),t=Object.prototype,n=t.hasOwnProperty,p=t.propertyIsEnumerable,d=c((function(){return arguments})())?c:function(g){return e(g)&&n.call(g,"callee")&&!p.call(g,"callee")};return or=d,or}var sr,fl;function bt(){if(fl)return sr;fl=1;var c=Array.isArray;return sr=c,sr}var ar,pl;function ju(){if(pl)return ar;pl=1;var c=9007199254740991;function e(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=c}return ar=e,ar}var lr,gl;function Bn(){if(gl)return lr;gl=1;var c=xs(),e=ju();function t(n){return n!=null&&e(n.length)&&!c(n)}return lr=t,lr}var cr,ml;function Kd(){if(ml)return cr;ml=1;var c=Bn(),e=yt();function t(n){return e(n)&&c(n)}return cr=t,cr}var Bt={exports:{}},ur,vl;function qd(){if(vl)return ur;vl=1;function c(){return!1}return ur=c,ur}Bt.exports;var yl;function Os(){return yl||(yl=1,(function(c,e){var t=Ge(),n=qd(),p=e&&!e.nodeType&&e,d=p&&!0&&c&&!c.nodeType&&c,g=d&&d.exports===p,m=g?t.Buffer:void 0,l=m?m.isBuffer:void 0,f=l||n;c.exports=f})(Bt,Bt.exports)),Bt.exports}var hr,bl;function Yd(){if(bl)return hr;bl=1;var c=Rt(),e=Hu(),t=yt(),n="[object Object]",p=Function.prototype,d=Object.prototype,g=p.toString,m=d.hasOwnProperty,l=g.call(Object);function f(r){if(!t(r)||c(r)!=n)return!1;var o=e(r);if(o===null)return!0;var s=m.call(o,"constructor")&&o.constructor;return typeof s=="function"&&s instanceof s&&g.call(s)==l}return hr=f,hr}var dr,wl;function Xd(){if(wl)return dr;wl=1;var c=Rt(),e=ju(),t=yt(),n="[object Arguments]",p="[object Array]",d="[object Boolean]",g="[object Date]",m="[object Error]",l="[object Function]",f="[object Map]",r="[object Number]",o="[object Object]",s="[object RegExp]",a="[object Set]",i="[object String]",u="[object WeakMap]",h="[object ArrayBuffer]",y="[object DataView]",b="[object Float32Array]",T="[object Float64Array]",$="[object Int8Array]",A="[object Int16Array]",S="[object Int32Array]",M="[object Uint8Array]",R="[object Uint8ClampedArray]",L="[object Uint16Array]",_="[object Uint32Array]",I={};I[b]=I[T]=I[$]=I[A]=I[S]=I[M]=I[R]=I[L]=I[_]=!0,I[n]=I[p]=I[h]=I[d]=I[y]=I[g]=I[m]=I[l]=I[f]=I[r]=I[o]=I[s]=I[a]=I[i]=I[u]=!1;function w(v){return t(v)&&e(v.length)&&!!I[c(v)]}return dr=w,dr}var fr,Cl;function Qd(){if(Cl)return fr;Cl=1;function c(e){return function(t){return e(t)}}return fr=c,fr}var Ht={exports:{}};Ht.exports;var Sl;function Zd(){return Sl||(Sl=1,(function(c,e){var t=Ou(),n=e&&!e.nodeType&&e,p=n&&!0&&c&&!c.nodeType&&c,d=p&&p.exports===n,g=d&&t.process,m=(function(){try{var l=p&&p.require&&p.require("util").types;return l||g&&g.binding&&g.binding("util")}catch{}})();c.exports=m})(Ht,Ht.exports)),Ht.exports}var pr,Al;function Ds(){if(Al)return pr;Al=1;var c=Xd(),e=Qd(),t=Zd(),n=t&&t.isTypedArray,p=n?e(n):c;return pr=p,pr}var gr,$l;function Uu(){if($l)return gr;$l=1;function c(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}return gr=c,gr}var mr,El;function Gu(){if(El)return mr;El=1;var c=ks(),e=tn(),t=Object.prototype,n=t.hasOwnProperty;function p(d,g,m){var l=d[g];(!(n.call(d,g)&&e(l,m))||m===void 0&&!(g in d))&&c(d,g,m)}return mr=p,mr}var vr,Tl;function Jd(){if(Tl)return vr;Tl=1;var c=Gu(),e=ks();function t(n,p,d,g){var m=!d;d||(d={});for(var l=-1,f=p.length;++l<f;){var r=p[l],o=g?g(d[r],n[r],r,d,n):void 0;o===void 0&&(o=n[r]),m?e(d,r,o):c(d,r,o)}return d}return vr=t,vr}var yr,Ml;function ef(){if(Ml)return yr;Ml=1;function c(e,t){for(var n=-1,p=Array(e);++n<e;)p[n]=t(n);return p}return yr=c,yr}var br,_l;function Ns(){if(_l)return br;_l=1;var c=9007199254740991,e=/^(?:0|[1-9]\d*)$/;function t(n,p){var d=typeof n;return p=p??c,!!p&&(d=="number"||d!="symbol"&&e.test(n))&&n>-1&&n%1==0&&n<p}return br=t,br}var wr,xl;function Vu(){if(xl)return wr;xl=1;var c=ef(),e=zu(),t=bt(),n=Os(),p=Ns(),d=Ds(),g=Object.prototype,m=g.hasOwnProperty;function l(f,r){var o=t(f),s=!o&&e(f),a=!o&&!s&&n(f),i=!o&&!s&&!a&&d(f),u=o||s||a||i,h=u?c(f.length,String):[],y=h.length;for(var b in f)(r||m.call(f,b))&&!(u&&(b=="length"||a&&(b=="offset"||b=="parent")||i&&(b=="buffer"||b=="byteLength"||b=="byteOffset")||p(b,y)))&&h.push(b);return h}return wr=l,wr}var Cr,Ll;function tf(){if(Ll)return Cr;Ll=1;function c(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}return Cr=c,Cr}var Sr,Rl;function nf(){if(Rl)return Sr;Rl=1;var c=lt(),e=Is(),t=tf(),n=Object.prototype,p=n.hasOwnProperty;function d(g){if(!c(g))return t(g);var m=e(g),l=[];for(var f in g)f=="constructor"&&(m||!p.call(g,f))||l.push(f);return l}return Sr=d,Sr}var Ar,kl;function Ku(){if(kl)return Ar;kl=1;var c=Vu(),e=nf(),t=Bn();function n(p){return t(p)?c(p,!0):e(p)}return Ar=n,Ar}var $r,Il;function rf(){if(Il)return $r;Il=1;var c=Jd(),e=Ku();function t(n){return c(n,e(n))}return $r=t,$r}var Er,Ol;function of(){if(Ol)return Er;Ol=1;var c=Pu(),e=Bd(),t=zd(),n=jd(),p=Gd(),d=zu(),g=bt(),m=Kd(),l=Os(),f=xs(),r=lt(),o=Yd(),s=Ds(),a=Uu(),i=rf();function u(h,y,b,T,$,A,S){var M=a(h,b),R=a(y,b),L=S.get(R);if(L){c(h,b,L);return}var _=A?A(M,R,b+"",h,y,S):void 0,I=_===void 0;if(I){var w=g(R),v=!w&&l(R),C=!w&&!v&&s(R);_=R,w||v||C?g(M)?_=M:m(M)?_=n(M):v?(I=!1,_=e(R,!0)):C?(I=!1,_=t(R,!0)):_=[]:o(R)||d(R)?(_=M,d(M)?_=i(M):(!r(M)||f(M))&&(_=p(R))):I=!1}I&&(S.set(R,_),$(_,R,T,A,S),S.delete(R)),c(h,b,_)}return Er=u,Er}var Tr,Dl;function sf(){if(Dl)return Tr;Dl=1;var c=Nu(),e=Pu(),t=Wd(),n=of(),p=lt(),d=Ku(),g=Uu();function m(l,f,r,o,s){l!==f&&t(f,function(a,i){if(s||(s=new c),p(a))n(l,f,i,r,m,o,s);else{var u=o?o(g(l,i),a,i+"",l,f,s):void 0;u===void 0&&(u=a),e(l,i,u)}},d)}return Tr=m,Tr}var Mr,Nl;function qu(){if(Nl)return Mr;Nl=1;function c(e){return e}return Mr=c,Mr}var _r,Fl;function af(){if(Fl)return _r;Fl=1;function c(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}return _r=c,_r}var xr,Pl;function lf(){if(Pl)return xr;Pl=1;var c=af(),e=Math.max;function t(n,p,d){return p=e(p===void 0?n.length-1:p,0),function(){for(var g=arguments,m=-1,l=e(g.length-p,0),f=Array(l);++m<l;)f[m]=g[p+m];m=-1;for(var r=Array(p+1);++m<p;)r[m]=g[m];return r[p]=d(f),c(n,this,r)}}return xr=t,xr}var Lr,Wl;function cf(){if(Wl)return Lr;Wl=1;function c(e){return function(){return e}}return Lr=c,Lr}var Rr,Bl;function uf(){if(Bl)return Rr;Bl=1;var c=cf(),e=Fu(),t=qu(),n=e?function(p,d){return e(p,"toString",{configurable:!0,enumerable:!1,value:c(d),writable:!0})}:t;return Rr=n,Rr}var kr,Hl;function hf(){if(Hl)return kr;Hl=1;var c=800,e=16,t=Date.now;function n(p){var d=0,g=0;return function(){var m=t(),l=e-(m-g);if(g=m,l>0){if(++d>=c)return arguments[0]}else d=0;return p.apply(void 0,arguments)}}return kr=n,kr}var Ir,zl;function df(){if(zl)return Ir;zl=1;var c=uf(),e=hf(),t=e(c);return Ir=t,Ir}var Or,jl;function ff(){if(jl)return Or;jl=1;var c=qu(),e=lf(),t=df();function n(p,d){return t(e(p,d,c),p+"")}return Or=n,Or}var Dr,Ul;function pf(){if(Ul)return Dr;Ul=1;var c=tn(),e=Bn(),t=Ns(),n=lt();function p(d,g,m){if(!n(m))return!1;var l=typeof g;return(l=="number"?e(m)&&t(g,m.length):l=="string"&&g in m)?c(m[g],d):!1}return Dr=p,Dr}var Nr,Gl;function gf(){if(Gl)return Nr;Gl=1;var c=ff(),e=pf();function t(n){return c(function(p,d){var g=-1,m=d.length,l=m>1?d[m-1]:void 0,f=m>2?d[2]:void 0;for(l=n.length>3&&typeof l=="function"?(m--,l):void 0,f&&e(d[0],d[1],f)&&(l=m<3?void 0:l,m=1),p=Object(p);++g<m;){var r=d[g];r&&n(p,r,g,l)}return p})}return Nr=t,Nr}var Fr,Vl;function mf(){if(Vl)return Fr;Vl=1;var c=sf(),e=gf(),t=e(function(n,p,d,g){c(n,p,d,g)});return Fr=t,Fr}var vf=mf();const yf=Lt(vf),bf=()=>crypto.randomUUID().slice(0,8),wf=()=>bf().slice(0,8),Kl=(c="",e)=>{if(!e)return console.warn("utils.match missing argument 2."),!1;const t=/[|\\{}()[\]^*$+?.]/g;let n=typeof e=="string"?[e]:e;n=n.map(d=>d==="*"?"":d.replace(t,"\\$&"));let p=!0;return n.length&&(p=!new RegExp(n.join("|"),"i").exec(c)),p},Cf=(c,e)=>{const t=c.indexOf(e);t!==-1&&c.splice(t,1)},Le=c=>{const e=c.className?.match(Of);return e&&kf[e[0]]},pt=c=>Array.from(new Set(c)),We=c=>c?.attrs?.id||c?.id||wf(),ze=(c,e)=>yf({},c,e,(n,p)=>{if(Array.isArray(n))return p!=null?pt(n.concat(p)):p;if(Array.isArray(p))return n!=null?pt(p.concat(n)):p}),Ye=c=>{let e;const t=c instanceof Promise;if(c===null||!(typeof c=="object")||t)return c;if(c instanceof Date)return e=new Date,e.setTime(c.getTime()),e;if(Array.isArray(c)){e=[];for(let p=0,d=c.length;p<d;p++)e[p]=Ye(c[p]);return e}if(c instanceof Object){e={};for(const p in c)Object.hasOwn(c,p)&&(e[p]=Ye(c[p]));return e}throw new Error("Unable to copy Object, type not supported.")},Pr=(c,e)=>c/e*100,ys=c=>`${c.toString()}%`,Yu=Object.create(null,{get:{value:c=>{const e=window.sessionStorage?.getItem(c);try{return JSON.parse(e)}catch{return e}}},set:{value:(c,e)=>{try{return window.sessionStorage?.setItem(c,JSON.stringify(e))}catch(t){console.error(t)}}}}),Pe=c=>/^(stage|row|column|field)s./.test(c),Sf=c=>_f.test(c);function Af(c,e=zs){let t=0;return function(...n){const p=Date.now();p-t>=e&&(t=p,c.apply(this,n))}}function An(c,e=gt){let t;return function(...n){t&&clearTimeout(t),t=setTimeout(()=>c.apply(this,n),e)}}function bs(c){return c}function ws(){}function Hn(c=Object.create(null)){if(typeof c=="string")try{return JSON.parse(c)}catch(e){return console.error("Invalid JSON string provided:",e),Object.create(null)}return c}const Vt=c=>c?Ye(Hn(c)):$n();function Xu(c,e,t,n={}){if(!e||!c[t][e])return n;const p=`${t}.${e}`;n[p]=c[t][e];const d=Ff.get(t);if(d){const g=c[t][e].data?.children||[];for(const m of g)Xu(c,m,d,n)}return n}const Fs=Iu.name,Ps=Iu.version,zn=Fs,ot="formeo-sprite",ql=[{name:"cssPreload",src:"//cdnjs.cloudflare.com/ajax/libs/loadCSS/2.0.1/cssrelpreload.min.js"},{name:"mutationObserver",src:"//cdn.jsdelivr.net/npm/mutationobserver-shim/dist/mutationobserver.min.js"},{name:"fetch",src:"https://unpkg.com/unfetch/polyfill"}],Yl=`../../lib/icons/${ot}.svg`;typeof import.meta.resolve=="function"&&import.meta.resolve(Yl);const Qu=`https://cdn.jsdelivr.net/npm/formeo@${Ps}/dist/${ot}.svg`,$f=`https://draggable.github.io/formeo/assets/img/${ot}.svg`,Ef=`https://cdn.jsdelivr.net/npm/formeo@${Ps}/dist/formeo.min.css`,Tf="https://draggable.github.io/formeo/assets/css/formeo.min.css",Zu="f-panel",rt="control-group",kt=`${zn}-stage`,Xe=`${zn}-row`,Qe=`${zn}-column`,It=`${zn}-field`,Cs="custom-column-widths",Ju="column-preset",Wr="resizing-columns",Mf=new Map([[kt,Xe],[Xe,Qe],[Qe,It]]),Ws=["stage","row","column","field"],Bs=Ws.map(c=>`${c}s`);new Map(Bs.map((c,e)=>[c,Ws[e]]));const _f=new RegExp(`^${Bs.join("|")}.`),eh=[...Ws],xf=[...Bs],Lf=new Map(xf.map((c,e)=>[c,eh[e]])),Br=eh.reduce((c,e)=>(c[e]=e,c),{}),Rf=[{name:"controls",className:rt},{name:"stage",className:kt},{name:"row",className:Xe},{name:"column",className:Qe},{name:"field",className:It}],Hs={controls:rt,stage:kt,row:Xe,column:Qe,field:It},kf=Object.entries(Hs).reduce((c,[e,t])=>(c[t]=e,c),{}),If=Object.values(Hs),Of=new RegExp(`${If.join("|")}`,"g"),{childTypeMapVals:th,childTypeIndexMapVals:Df}=Rf.reduce((c,{name:e},t,n)=>{const{name:p}=n[t+1]||{};return p&&(c.childTypeMapVals.push([e,p]),c.childTypeIndexMapVals.push([`${e}s`,`${p}s`])),c},{childTypeMapVals:[],childTypeIndexMapVals:[]}),Nf=th.slice().map(c=>c.slice().reverse()).reverse(),Xl=new Map(th),Ff=new Map(Df),Pf=new Map(Nf.slice()),Wf=[[{value:"100.0",label:"100%"}],[{value:"50.0,50.0",label:"50 | 50"},{value:"33.3,66.6",label:"33 | 66"},{value:"66.6,33.3",label:"66 | 33"}],[{value:"33.3,33.3,33.3",label:"33 | 33 | 33"},{value:"25.0,25.0,50.0",label:"25 | 25 | 50"},{value:"50.0,25.0,25.0",label:"50 | 25 | 25"},{value:"25.0,50.0,25.0",label:"25 | 50 | 25"}],[{value:"25.0,25.0,25.0,25.0",label:"25 | 25 | 25 | 25"}],[{value:"20.0,20.0,20.0,20.0,20.0",label:"20 | 20 | 20 | 20 | 20"}],[{value:"16.66,16.66,16.66,16.66,16.66,16.66",label:"16.66 | 16.66 | 16.66 | 16.66 | 16.66 | 16.66"}]],Bf=new Map(Wf.reduce((c,e,t)=>(c.push([t,e]),c),[])),nh=`${Fs}-formData`,Ql=`${Fs}-locale`,Ke=333,gt=Math.round(Ke/2),zs=Math.round(Ke*2),ih="formeoSaved",jn="formeoUpdated",Hf="formeoUpdatedStage",zf="formeoUpdatedRow",jf="formeoUpdatedColumn",Uf="formeoUpdatedField",Gf="formeoCleared",rh="formeoOnRender",Vf="formeoConditionUpdated",oh={equals:"==",notEquals:"!=",contains:"⊃",notContains:"!⊃"},Kf={and:"&&",or:"||"},sh={equals:"="},qf=["logical","source","sourceProperty","comparison","target","targetProperty","assignment","value"],Zl=["isChecked","isNotChecked"],Jl=["isVisible","isNotVisible"],fn=["value"],Yf={comparison:oh,assignment:sh,logical:Kf},ah="if",Xf="then",js=()=>({[ah]:[{source:"",sourceProperty:"",comparison:"",target:"",targetProperty:""}],[Xf]:[{target:"",targetProperty:"",assignment:"",value:""}]}),Qf=/(\b[0-9a-f]{8}\b-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-\b[0-9a-f]{12}\b)|(\b[0-9a-f]{8}\b)/g,Ss=/\bcol-\w+-\d+/g,lh="f-i-",$n=()=>({id:We(),stages:{[We()]:{}},rows:{},columns:{},fields:{}}),En=["selected","checked"],Zf=En.toReversed(),Jf="a an and as at but by for for from in into near nor of on onto or the to with".split(" ").map(c=>`\\s${c}\\s`),ep=new RegExp(`(?!${Jf.join("|")})\\w\\S*`,"g"),tp=/\s+/g;function st(c){return typeof c!="string"||c.trim().match(tp)?c:c.replace(ep,t=>t.charAt(0).toUpperCase()+t.substring(1).replace(/[A-Z]/g,n=>` ${n}`))}const ch=(c,e="-")=>c.toString().normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().trim().replace(/[^a-z0-9 -]/g,"").replace(/\s+/g,e),mt=c=>{if(Array.isArray(c))return c;const e=/[.[\]]/g,t=[];let n=0,p=e.exec(c);for(;p!==null;)t.push(c.slice(n,p.index)),n=p.index+p[0].length,p=e.exec(c);return n<c.length&&t.push(c.slice(n)),t.filter(Boolean)},ec=(c,e="-")=>mt(c).join(e),np=c=>{const e=document.createElement("div");return e.innerHTML=c,e.textContent||e.innerText||""},ip=(c,e,t="…")=>{if(c.length<=e)return c;const n=c.slice(0,e),p=n.lastIndexOf(" ");let d=`${p>0?n.slice(0,p):n}`;return t&&(d+=t),d};var Hr,tc;function Us(){if(tc)return Hr;tc=1;var c=Rt(),e=yt(),t="[object Symbol]";function n(p){return typeof p=="symbol"||e(p)&&c(p)==t}return Hr=n,Hr}var zr,nc;function rp(){if(nc)return zr;nc=1;var c=bt(),e=Us(),t=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;function p(d,g){if(c(d))return!1;var m=typeof d;return m=="number"||m=="symbol"||m=="boolean"||d==null||e(d)?!0:n.test(d)||!t.test(d)||g!=null&&d in Object(g)}return zr=p,zr}var jr,ic;function op(){if(ic)return jr;ic=1;var c=Rs(),e="Expected a function";function t(n,p){if(typeof n!="function"||p!=null&&typeof p!="function")throw new TypeError(e);var d=function(){var g=arguments,m=p?p.apply(this,g):g[0],l=d.cache;if(l.has(m))return l.get(m);var f=n.apply(this,g);return d.cache=l.set(m,f)||l,f};return d.cache=new(t.Cache||c),d}return t.Cache=c,jr=t,jr}var Ur,rc;function sp(){if(rc)return Ur;rc=1;var c=op(),e=500;function t(n){var p=c(n,function(g){return d.size===e&&d.clear(),g}),d=p.cache;return p}return Ur=t,Ur}var Gr,oc;function ap(){if(oc)return Gr;oc=1;var c=sp(),e=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,t=/\\(\\)?/g,n=c(function(p){var d=[];return p.charCodeAt(0)===46&&d.push(""),p.replace(e,function(g,m,l,f){d.push(l?f.replace(t,"$1"):m||g)}),d});return Gr=n,Gr}var Vr,sc;function lp(){if(sc)return Vr;sc=1;function c(e,t){for(var n=-1,p=e==null?0:e.length,d=Array(p);++n<p;)d[n]=t(e[n],n,e);return d}return Vr=c,Vr}var Kr,ac;function cp(){if(ac)return Kr;ac=1;var c=Fn(),e=lp(),t=bt(),n=Us(),p=c?c.prototype:void 0,d=p?p.toString:void 0;function g(m){if(typeof m=="string")return m;if(t(m))return e(m,g)+"";if(n(m))return d?d.call(m):"";var l=m+"";return l=="0"&&1/m==-1/0?"-0":l}return Kr=g,Kr}var qr,lc;function Un(){if(lc)return qr;lc=1;var c=cp();function e(t){return t==null?"":c(t)}return qr=e,qr}var Yr,cc;function uh(){if(cc)return Yr;cc=1;var c=bt(),e=rp(),t=ap(),n=Un();function p(d,g){return c(d)?d:e(d,g)?[d]:t(n(d))}return Yr=p,Yr}var Xr,uc;function hh(){if(uc)return Xr;uc=1;var c=Us();function e(t){if(typeof t=="string"||c(t))return t;var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}return Xr=e,Xr}var Qr,hc;function up(){if(hc)return Qr;hc=1;var c=uh(),e=hh();function t(n,p){p=c(p,n);for(var d=0,g=p.length;n!=null&&d<g;)n=n[e(p[d++])];return d&&d==g?n:void 0}return Qr=t,Qr}var Zr,dc;function hp(){if(dc)return Zr;dc=1;var c=up();function e(t,n,p){var d=t==null?void 0:c(t,n);return d===void 0?p:d}return Zr=e,Zr}var dp=hp();const fp=Lt(dp);var Jr,fc;function pp(){if(fc)return Jr;fc=1;var c=Gu(),e=uh(),t=Ns(),n=lt(),p=hh();function d(g,m,l,f){if(!n(g))return g;m=e(m,g);for(var r=-1,o=m.length,s=o-1,a=g;a!=null&&++r<o;){var i=p(m[r]),u=l;if(i==="__proto__"||i==="constructor"||i==="prototype")return g;if(r!=s){var h=a[i];u=f?f(h,i,a):void 0,u===void 0&&(u=n(h)?h:t(m[r+1])?[]:{})}c(a,i,u),a=a[i]}return g}return Jr=d,Jr}var eo,pc;function gp(){if(pc)return eo;pc=1;var c=pp();function e(t,n,p){return t==null?t:c(t,n,p)}return eo=e,eo}var mp=gp();const vp=Lt(mp),De=fp,Gn=vp;function yp(c,e={}){const t={...c};for(const n in e)Object.hasOwn(e,n)&&(Object.hasOwn(t,n)?Array.isArray(t[n])?t[n].push(e[n]):t[n]=[t[n],e[n]]:t[n]=e[n]);return t}function pn(...c){return c.flat().reduce((e,t)=>(e[t]=t,e),{})}var to,gc;function bp(){if(gc)return to;gc=1;var c="__lodash_hash_undefined__";function e(t){return this.__data__.set(t,c),this}return to=e,to}var no,mc;function wp(){if(mc)return no;mc=1;function c(e){return this.__data__.has(e)}return no=c,no}var io,vc;function Cp(){if(vc)return io;vc=1;var c=Rs(),e=bp(),t=wp();function n(p){var d=-1,g=p==null?0:p.length;for(this.__data__=new c;++d<g;)this.add(p[d])}return n.prototype.add=n.prototype.push=e,n.prototype.has=t,io=n,io}var ro,yc;function Sp(){if(yc)return ro;yc=1;function c(e,t){for(var n=-1,p=e==null?0:e.length;++n<p;)if(t(e[n],n,e))return!0;return!1}return ro=c,ro}var oo,bc;function Ap(){if(bc)return oo;bc=1;function c(e,t){return e.has(t)}return oo=c,oo}var so,wc;function dh(){if(wc)return so;wc=1;var c=Cp(),e=Sp(),t=Ap(),n=1,p=2;function d(g,m,l,f,r,o){var s=l&n,a=g.length,i=m.length;if(a!=i&&!(s&&i>a))return!1;var u=o.get(g),h=o.get(m);if(u&&h)return u==m&&h==g;var y=-1,b=!0,T=l&p?new c:void 0;for(o.set(g,m),o.set(m,g);++y<a;){var $=g[y],A=m[y];if(f)var S=s?f(A,$,y,m,g,o):f($,A,y,g,m,o);if(S!==void 0){if(S)continue;b=!1;break}if(T){if(!e(m,function(M,R){if(!t(T,R)&&($===M||r($,M,l,f,o)))return T.push(R)})){b=!1;break}}else if(!($===A||r($,A,l,f,o))){b=!1;break}}return o.delete(g),o.delete(m),b}return so=d,so}var ao,Cc;function $p(){if(Cc)return ao;Cc=1;function c(e){var t=-1,n=Array(e.size);return e.forEach(function(p,d){n[++t]=[d,p]}),n}return ao=c,ao}var lo,Sc;function Ep(){if(Sc)return lo;Sc=1;function c(e){var t=-1,n=Array(e.size);return e.forEach(function(p){n[++t]=p}),n}return lo=c,lo}var co,Ac;function Tp(){if(Ac)return co;Ac=1;var c=Fn(),e=Wu(),t=tn(),n=dh(),p=$p(),d=Ep(),g=1,m=2,l="[object Boolean]",f="[object Date]",r="[object Error]",o="[object Map]",s="[object Number]",a="[object RegExp]",i="[object Set]",u="[object String]",h="[object Symbol]",y="[object ArrayBuffer]",b="[object DataView]",T=c?c.prototype:void 0,$=T?T.valueOf:void 0;function A(S,M,R,L,_,I,w){switch(R){case b:if(S.byteLength!=M.byteLength||S.byteOffset!=M.byteOffset)return!1;S=S.buffer,M=M.buffer;case y:return!(S.byteLength!=M.byteLength||!I(new e(S),new e(M)));case l:case f:case s:return t(+S,+M);case r:return S.name==M.name&&S.message==M.message;case a:case u:return S==M+"";case o:var v=p;case i:var C=L&g;if(v||(v=d),S.size!=M.size&&!C)return!1;var E=w.get(S);if(E)return E==M;L|=m,w.set(S,M);var x=n(v(S),v(M),L,_,I,w);return w.delete(S),x;case h:if($)return $.call(S)==$.call(M)}return!1}return co=A,co}var uo,$c;function Mp(){if($c)return uo;$c=1;function c(e,t){for(var n=-1,p=t.length,d=e.length;++n<p;)e[d+n]=t[n];return e}return uo=c,uo}var ho,Ec;function _p(){if(Ec)return ho;Ec=1;var c=Mp(),e=bt();function t(n,p,d){var g=p(n);return e(n)?g:c(g,d(n))}return ho=t,ho}var fo,Tc;function xp(){if(Tc)return fo;Tc=1;function c(e,t){for(var n=-1,p=e==null?0:e.length,d=0,g=[];++n<p;){var m=e[n];t(m,n,e)&&(g[d++]=m)}return g}return fo=c,fo}var po,Mc;function Lp(){if(Mc)return po;Mc=1;function c(){return[]}return po=c,po}var go,_c;function Rp(){if(_c)return go;_c=1;var c=xp(),e=Lp(),t=Object.prototype,n=t.propertyIsEnumerable,p=Object.getOwnPropertySymbols,d=p?function(g){return g==null?[]:(g=Object(g),c(p(g),function(m){return n.call(g,m)}))}:e;return go=d,go}var mo,xc;function kp(){if(xc)return mo;xc=1;var c=Bu(),e=c(Object.keys,Object);return mo=e,mo}var vo,Lc;function Ip(){if(Lc)return vo;Lc=1;var c=Is(),e=kp(),t=Object.prototype,n=t.hasOwnProperty;function p(d){if(!c(d))return e(d);var g=[];for(var m in Object(d))n.call(d,m)&&m!="constructor"&&g.push(m);return g}return vo=p,vo}var yo,Rc;function Op(){if(Rc)return yo;Rc=1;var c=Vu(),e=Ip(),t=Bn();function n(p){return t(p)?c(p):e(p)}return yo=n,yo}var bo,kc;function Dp(){if(kc)return bo;kc=1;var c=_p(),e=Rp(),t=Op();function n(p){return c(p,t,e)}return bo=n,bo}var wo,Ic;function Np(){if(Ic)return wo;Ic=1;var c=Dp(),e=1,t=Object.prototype,n=t.hasOwnProperty;function p(d,g,m,l,f,r){var o=m&e,s=c(d),a=s.length,i=c(g),u=i.length;if(a!=u&&!o)return!1;for(var h=a;h--;){var y=s[h];if(!(o?y in g:n.call(g,y)))return!1}var b=r.get(d),T=r.get(g);if(b&&T)return b==g&&T==d;var $=!0;r.set(d,g),r.set(g,d);for(var A=o;++h<a;){y=s[h];var S=d[y],M=g[y];if(l)var R=o?l(M,S,y,g,d,r):l(S,M,y,d,g,r);if(!(R===void 0?S===M||f(S,M,m,l,r):R)){$=!1;break}A||(A=y=="constructor")}if($&&!A){var L=d.constructor,_=g.constructor;L!=_&&"constructor"in d&&"constructor"in g&&!(typeof L=="function"&&L instanceof L&&typeof _=="function"&&_ instanceof _)&&($=!1)}return r.delete(d),r.delete(g),$}return wo=p,wo}var Co,Oc;function Fp(){if(Oc)return Co;Oc=1;var c=vt(),e=Ge(),t=c(e,"DataView");return Co=t,Co}var So,Dc;function Pp(){if(Dc)return So;Dc=1;var c=vt(),e=Ge(),t=c(e,"Promise");return So=t,So}var Ao,Nc;function Wp(){if(Nc)return Ao;Nc=1;var c=vt(),e=Ge(),t=c(e,"Set");return Ao=t,Ao}var $o,Fc;function Bp(){if(Fc)return $o;Fc=1;var c=vt(),e=Ge(),t=c(e,"WeakMap");return $o=t,$o}var Eo,Pc;function Hp(){if(Pc)return Eo;Pc=1;var c=Fp(),e=Ls(),t=Pp(),n=Wp(),p=Bp(),d=Rt(),g=Du(),m="[object Map]",l="[object Object]",f="[object Promise]",r="[object Set]",o="[object WeakMap]",s="[object DataView]",a=g(c),i=g(e),u=g(t),h=g(n),y=g(p),b=d;return(c&&b(new c(new ArrayBuffer(1)))!=s||e&&b(new e)!=m||t&&b(t.resolve())!=f||n&&b(new n)!=r||p&&b(new p)!=o)&&(b=function(T){var $=d(T),A=$==l?T.constructor:void 0,S=A?g(A):"";if(S)switch(S){case a:return s;case i:return m;case u:return f;case h:return r;case y:return o}return $}),Eo=b,Eo}var To,Wc;function zp(){if(Wc)return To;Wc=1;var c=Nu(),e=dh(),t=Tp(),n=Np(),p=Hp(),d=bt(),g=Os(),m=Ds(),l=1,f="[object Arguments]",r="[object Array]",o="[object Object]",s=Object.prototype,a=s.hasOwnProperty;function i(u,h,y,b,T,$){var A=d(u),S=d(h),M=A?r:p(u),R=S?r:p(h);M=M==f?o:M,R=R==f?o:R;var L=M==o,_=R==o,I=M==R;if(I&&g(u)){if(!g(h))return!1;A=!0,L=!1}if(I&&!L)return $||($=new c),A||m(u)?e(u,h,y,b,T,$):t(u,h,M,y,b,T,$);if(!(y&l)){var w=L&&a.call(u,"__wrapped__"),v=_&&a.call(h,"__wrapped__");if(w||v){var C=w?u.value():u,E=v?h.value():h;return $||($=new c),T(C,E,y,b,$)}}return I?($||($=new c),n(u,h,y,b,T,$)):!1}return To=i,To}var Mo,Bc;function jp(){if(Bc)return Mo;Bc=1;var c=zp(),e=yt();function t(n,p,d,g,m){return n===p?!0:n==null||p==null||!e(n)&&!e(p)?n!==n&&p!==p:c(n,p,d,g,t,m)}return Mo=t,Mo}var _o,Hc;function Up(){if(Hc)return _o;Hc=1;var c=jp();function e(t,n){return c(t,n)}return _o=e,_o}var Gp=Up();const As=Lt(Gp),Vp=(c,e)=>c===void 0?"added":e===void 0?"removed":As(c,e)?"unchanged":"changed";class Gs{constructor(e,t=Object.create(null)){this.name=e,this.data=t,this.dataPath=""}get size(){return Object.keys(this.data).length}get js(){return this.data}get json(){return this.data}toJSON=(e,t)=>JSON.stringify(e,null,t);get=e=>De(this.data,e);set(e,t){const n=De(this.data,e),p=Gn(this.data,e,t),d=Array.isArray(e)?e.join("."):e,g=Object.keys(this.setCallbacks).filter(l=>new RegExp(l).test(d)),m={newVal:t,oldVal:n,path:e};for(const l of g)for(const f of this.setCallbacks[l])f(m);if(!this.disableEvents){const l={entity:this,dataPath:this.dataPath.replace(/\.+$/,""),changePath:this.dataPath+e,value:t,data:p,changeType:Vp(n,t),src:this.dom};n&&(l.previousValue=n),le.formeoUpdated(l)}return p}addSetCallback(e,t){this.setCallbacks[e]?this.setCallbacks[e].push(t):this.setCallbacks[e]=[t]}removeSetCallback(e,t){this.setCallbacks[e]=this.setCallbacks[e].filter(n=>n!==t)}add=(e,t=Object.create(null))=>{const{id:n}=t,p=e||n||We();return this.set(p,t)};remove=e=>{const t=mt(e),n=t.pop(),p=this.get(t);return Array.isArray(p)?p.splice(Number(n),1):p&&delete p[n],p};empty(){this.data=Object.create(null)}getData=()=>Object.entries(this.data).reduce((e,[t,n])=>(e[t]=n?.data?n.getData():n,e),{});setCallbacks={};configVal=Object.create(null)}class Vn extends Gs{load=e=>{const t=Hn(e);this.empty();for(const[n,p]of Object.entries(t))this.add(n,p);return this.data};get=e=>e?De(this.data,e):this.add();add=(e,t=Object.create(null))=>{const n=e||We(),p=this.Component({...t,id:n});return this.data[n]=p,this.active=p,p};remove=e=>{if(Array.isArray(e))for(const t of e)this.get(t).remove();else this.get(e).remove();return this.data};delete=e=>(delete this.data[e],e);clearAll=(e=!0)=>{const t=Object.values(this.data).map(n=>n.empty(e));return Promise.all(t)};set config(e){this.configVal=ze(this.configVal,Ye(e))}get config(){return this.configVal}conditionMap=new Map}function zc(c,e){var t=Object.keys(c);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(c);e&&(n=n.filter(function(p){return Object.getOwnPropertyDescriptor(c,p).enumerable})),t.push.apply(t,n)}return t}function Ue(c){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?zc(Object(t),!0).forEach(function(n){Kp(c,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(t)):zc(Object(t)).forEach(function(n){Object.defineProperty(c,n,Object.getOwnPropertyDescriptor(t,n))})}return c}function gn(c){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?gn=function(e){return typeof e}:gn=function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},gn(c)}function Kp(c,e,t){return e in c?Object.defineProperty(c,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):c[e]=t,c}function Ze(){return Ze=Object.assign||function(c){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(c[n]=t[n])}return c},Ze.apply(this,arguments)}function qp(c,e){if(c==null)return{};var t={},n=Object.keys(c),p,d;for(d=0;d<n.length;d++)p=n[d],!(e.indexOf(p)>=0)&&(t[p]=c[p]);return t}function Yp(c,e){if(c==null)return{};var t=qp(c,e),n,p;if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(c);for(p=0;p<d.length;p++)n=d[p],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(c,n)&&(t[n]=c[n])}return t}var Xp="1.15.3";function qe(c){if(typeof window<"u"&&window.navigator)return!!navigator.userAgent.match(c)}var et=qe(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),nn=qe(/Edge/i),jc=qe(/firefox/i),Kt=qe(/safari/i)&&!qe(/chrome/i)&&!qe(/android/i),fh=qe(/iP(ad|od|hone)/i),ph=qe(/chrome/i)&&qe(/android/i),gh={capture:!1,passive:!1};function oe(c,e,t){c.addEventListener(e,t,!et&&gh)}function re(c,e,t){c.removeEventListener(e,t,!et&&gh)}function Tn(c,e){if(e){if(e[0]===">"&&(e=e.substring(1)),c)try{if(c.matches)return c.matches(e);if(c.msMatchesSelector)return c.msMatchesSelector(e);if(c.webkitMatchesSelector)return c.webkitMatchesSelector(e)}catch{return!1}return!1}}function mh(c){return c.host&&c!==document&&c.host.nodeType?c.host:c.parentNode}function He(c,e,t,n){if(c){t=t||document;do{if(e!=null&&(e[0]===">"?c.parentNode===t&&Tn(c,e):Tn(c,e))||n&&c===t)return c;if(c===t)break}while(c=mh(c))}return null}var Uc=/\s+/g;function Ie(c,e,t){if(c&&e)if(c.classList)c.classList[t?"add":"remove"](e);else{var n=(" "+c.className+" ").replace(Uc," ").replace(" "+e+" "," ");c.className=(n+(t?" "+e:"")).replace(Uc," ")}}function te(c,e,t){var n=c&&c.style;if(n){if(t===void 0)return document.defaultView&&document.defaultView.getComputedStyle?t=document.defaultView.getComputedStyle(c,""):c.currentStyle&&(t=c.currentStyle),e===void 0?t:t[e];!(e in n)&&e.indexOf("webkit")===-1&&(e="-webkit-"+e),n[e]=t+(typeof t=="string"?"":"px")}}function Tt(c,e){var t="";if(typeof c=="string")t=c;else do{var n=te(c,"transform");n&&n!=="none"&&(t=n+" "+t)}while(!e&&(c=c.parentNode));var p=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return p&&new p(t)}function vh(c,e,t){if(c){var n=c.getElementsByTagName(e),p=0,d=n.length;if(t)for(;p<d;p++)t(n[p],p);return n}return[]}function je(){var c=document.scrollingElement;return c||document.documentElement}function we(c,e,t,n,p){if(!(!c.getBoundingClientRect&&c!==window)){var d,g,m,l,f,r,o;if(c!==window&&c.parentNode&&c!==je()?(d=c.getBoundingClientRect(),g=d.top,m=d.left,l=d.bottom,f=d.right,r=d.height,o=d.width):(g=0,m=0,l=window.innerHeight,f=window.innerWidth,r=window.innerHeight,o=window.innerWidth),(e||t)&&c!==window&&(p=p||c.parentNode,!et))do if(p&&p.getBoundingClientRect&&(te(p,"transform")!=="none"||t&&te(p,"position")!=="static")){var s=p.getBoundingClientRect();g-=s.top+parseInt(te(p,"border-top-width")),m-=s.left+parseInt(te(p,"border-left-width")),l=g+d.height,f=m+d.width;break}while(p=p.parentNode);if(n&&c!==window){var a=Tt(p||c),i=a&&a.a,u=a&&a.d;a&&(g/=u,m/=i,o/=i,r/=u,l=g+r,f=m+o)}return{top:g,left:m,bottom:l,right:f,width:o,height:r}}}function Gc(c,e,t){for(var n=it(c,!0),p=we(c)[e];n;){var d=we(n)[t],g=void 0;if(g=p>=d,!g)return n;if(n===je())break;n=it(n,!1)}return!1}function Mt(c,e,t,n){for(var p=0,d=0,g=c.children;d<g.length;){if(g[d].style.display!=="none"&&g[d]!==ee.ghost&&(n||g[d]!==ee.dragged)&&He(g[d],t.draggable,c,!1)){if(p===e)return g[d];p++}d++}return null}function Vs(c,e){for(var t=c.lastElementChild;t&&(t===ee.ghost||te(t,"display")==="none"||e&&!Tn(t,e));)t=t.previousElementSibling;return t||null}function Fe(c,e){var t=0;if(!c||!c.parentNode)return-1;for(;c=c.previousElementSibling;)c.nodeName.toUpperCase()!=="TEMPLATE"&&c!==ee.clone&&(!e||Tn(c,e))&&t++;return t}function Vc(c){var e=0,t=0,n=je();if(c)do{var p=Tt(c),d=p.a,g=p.d;e+=c.scrollLeft*d,t+=c.scrollTop*g}while(c!==n&&(c=c.parentNode));return[e,t]}function Qp(c,e){for(var t in c)if(c.hasOwnProperty(t)){for(var n in e)if(e.hasOwnProperty(n)&&e[n]===c[t][n])return Number(t)}return-1}function it(c,e){if(!c||!c.getBoundingClientRect)return je();var t=c,n=!1;do if(t.clientWidth<t.scrollWidth||t.clientHeight<t.scrollHeight){var p=te(t);if(t.clientWidth<t.scrollWidth&&(p.overflowX=="auto"||p.overflowX=="scroll")||t.clientHeight<t.scrollHeight&&(p.overflowY=="auto"||p.overflowY=="scroll")){if(!t.getBoundingClientRect||t===document.body)return je();if(n||e)return t;n=!0}}while(t=t.parentNode);return je()}function Zp(c,e){if(c&&e)for(var t in e)e.hasOwnProperty(t)&&(c[t]=e[t]);return c}function xo(c,e){return Math.round(c.top)===Math.round(e.top)&&Math.round(c.left)===Math.round(e.left)&&Math.round(c.height)===Math.round(e.height)&&Math.round(c.width)===Math.round(e.width)}var qt;function yh(c,e){return function(){if(!qt){var t=arguments,n=this;t.length===1?c.call(n,t[0]):c.apply(n,t),qt=setTimeout(function(){qt=void 0},e)}}}function Jp(){clearTimeout(qt),qt=void 0}function bh(c,e,t){c.scrollLeft+=e,c.scrollTop+=t}function wh(c){var e=window.Polymer,t=window.jQuery||window.Zepto;return e&&e.dom?e.dom(c).cloneNode(!0):t?t(c).clone(!0)[0]:c.cloneNode(!0)}function Ch(c,e,t){var n={};return Array.from(c.children).forEach(function(p){var d,g,m,l;if(!(!He(p,e.draggable,c,!1)||p.animated||p===t)){var f=we(p);n.left=Math.min((d=n.left)!==null&&d!==void 0?d:1/0,f.left),n.top=Math.min((g=n.top)!==null&&g!==void 0?g:1/0,f.top),n.right=Math.max((m=n.right)!==null&&m!==void 0?m:-1/0,f.right),n.bottom=Math.max((l=n.bottom)!==null&&l!==void 0?l:-1/0,f.bottom)}}),n.width=n.right-n.left,n.height=n.bottom-n.top,n.x=n.left,n.y=n.top,n}var Re="Sortable"+new Date().getTime();function eg(){var c=[],e;return{captureAnimationState:function(){if(c=[],!!this.options.animation){var n=[].slice.call(this.el.children);n.forEach(function(p){if(!(te(p,"display")==="none"||p===ee.ghost)){c.push({target:p,rect:we(p)});var d=Ue({},c[c.length-1].rect);if(p.thisAnimationDuration){var g=Tt(p,!0);g&&(d.top-=g.f,d.left-=g.e)}p.fromRect=d}})}},addAnimationState:function(n){c.push(n)},removeAnimationState:function(n){c.splice(Qp(c,{target:n}),1)},animateAll:function(n){var p=this;if(!this.options.animation){clearTimeout(e),typeof n=="function"&&n();return}var d=!1,g=0;c.forEach(function(m){var l=0,f=m.target,r=f.fromRect,o=we(f),s=f.prevFromRect,a=f.prevToRect,i=m.rect,u=Tt(f,!0);u&&(o.top-=u.f,o.left-=u.e),f.toRect=o,f.thisAnimationDuration&&xo(s,o)&&!xo(r,o)&&(i.top-o.top)/(i.left-o.left)===(r.top-o.top)/(r.left-o.left)&&(l=ng(i,s,a,p.options)),xo(o,r)||(f.prevFromRect=r,f.prevToRect=o,l||(l=p.options.animation),p.animate(f,i,o,l)),l&&(d=!0,g=Math.max(g,l),clearTimeout(f.animationResetTimer),f.animationResetTimer=setTimeout(function(){f.animationTime=0,f.prevFromRect=null,f.fromRect=null,f.prevToRect=null,f.thisAnimationDuration=null},l),f.thisAnimationDuration=l)}),clearTimeout(e),d?e=setTimeout(function(){typeof n=="function"&&n()},g):typeof n=="function"&&n(),c=[]},animate:function(n,p,d,g){if(g){te(n,"transition",""),te(n,"transform","");var m=Tt(this.el),l=m&&m.a,f=m&&m.d,r=(p.left-d.left)/(l||1),o=(p.top-d.top)/(f||1);n.animatingX=!!r,n.animatingY=!!o,te(n,"transform","translate3d("+r+"px,"+o+"px,0)"),this.forRepaintDummy=tg(n),te(n,"transition","transform "+g+"ms"+(this.options.easing?" "+this.options.easing:"")),te(n,"transform","translate3d(0,0,0)"),typeof n.animated=="number"&&clearTimeout(n.animated),n.animated=setTimeout(function(){te(n,"transition",""),te(n,"transform",""),n.animated=!1,n.animatingX=!1,n.animatingY=!1},g)}}}}function tg(c){return c.offsetWidth}function ng(c,e,t,n){return Math.sqrt(Math.pow(e.top-c.top,2)+Math.pow(e.left-c.left,2))/Math.sqrt(Math.pow(e.top-t.top,2)+Math.pow(e.left-t.left,2))*n.animation}var wt=[],Lo={initializeByDefault:!0},rn={mount:function(e){for(var t in Lo)Lo.hasOwnProperty(t)&&!(t in e)&&(e[t]=Lo[t]);wt.forEach(function(n){if(n.pluginName===e.pluginName)throw"Sortable: Cannot mount plugin ".concat(e.pluginName," more than once")}),wt.push(e)},pluginEvent:function(e,t,n){var p=this;this.eventCanceled=!1,n.cancel=function(){p.eventCanceled=!0};var d=e+"Global";wt.forEach(function(g){t[g.pluginName]&&(t[g.pluginName][d]&&t[g.pluginName][d](Ue({sortable:t},n)),t.options[g.pluginName]&&t[g.pluginName][e]&&t[g.pluginName][e](Ue({sortable:t},n)))})},initializePlugins:function(e,t,n,p){wt.forEach(function(m){var l=m.pluginName;if(!(!e.options[l]&&!m.initializeByDefault)){var f=new m(e,t,e.options);f.sortable=e,f.options=e.options,e[l]=f,Ze(n,f.defaults)}});for(var d in e.options)if(e.options.hasOwnProperty(d)){var g=this.modifyOption(e,d,e.options[d]);typeof g<"u"&&(e.options[d]=g)}},getEventProperties:function(e,t){var n={};return wt.forEach(function(p){typeof p.eventProperties=="function"&&Ze(n,p.eventProperties.call(t[p.pluginName],e))}),n},modifyOption:function(e,t,n){var p;return wt.forEach(function(d){e[d.pluginName]&&d.optionListeners&&typeof d.optionListeners[t]=="function"&&(p=d.optionListeners[t].call(e[d.pluginName],n))}),p}};function ig(c){var e=c.sortable,t=c.rootEl,n=c.name,p=c.targetEl,d=c.cloneEl,g=c.toEl,m=c.fromEl,l=c.oldIndex,f=c.newIndex,r=c.oldDraggableIndex,o=c.newDraggableIndex,s=c.originalEvent,a=c.putSortable,i=c.extraEventProperties;if(e=e||t&&t[Re],!!e){var u,h=e.options,y="on"+n.charAt(0).toUpperCase()+n.substr(1);window.CustomEvent&&!et&&!nn?u=new CustomEvent(n,{bubbles:!0,cancelable:!0}):(u=document.createEvent("Event"),u.initEvent(n,!0,!0)),u.to=g||t,u.from=m||t,u.item=p||t,u.clone=d,u.oldIndex=l,u.newIndex=f,u.oldDraggableIndex=r,u.newDraggableIndex=o,u.originalEvent=s,u.pullMode=a?a.lastPutMode:void 0;var b=Ue(Ue({},i),rn.getEventProperties(n,e));for(var T in b)u[T]=b[T];t&&t.dispatchEvent(u),h[y]&&h[y].call(e,u)}}var rg=["evt"],xe=function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},p=n.evt,d=Yp(n,rg);rn.pluginEvent.bind(ee)(e,t,Ue({dragEl:K,parentEl:ve,ghostEl:ne,rootEl:fe,nextEl:ft,lastDownEl:mn,cloneEl:pe,cloneHidden:nt,dragStarted:zt,putSortable:Se,activeSortable:ee.active,originalEvent:p,oldIndex:$t,oldDraggableIndex:Yt,newIndex:Oe,newDraggableIndex:tt,hideGhostForTarget:Eh,unhideGhostForTarget:Th,cloneNowHidden:function(){nt=!0},cloneNowShown:function(){nt=!1},dispatchSortableEvent:function(m){Ee({sortable:t,name:m,originalEvent:p})}},d))};function Ee(c){ig(Ue({putSortable:Se,cloneEl:pe,targetEl:K,rootEl:fe,oldIndex:$t,oldDraggableIndex:Yt,newIndex:Oe,newDraggableIndex:tt},c))}var K,ve,ne,fe,ft,mn,pe,nt,$t,Oe,Yt,tt,an,Se,St=!1,Mn=!1,_n=[],ht,Be,Ro,ko,Kc,qc,zt,Ct,Xt,Qt=!1,ln=!1,vn,Ae,Io=[],$s=!1,xn=[],Kn=typeof document<"u",cn=fh,Yc=nn||et?"cssFloat":"float",og=Kn&&!ph&&!fh&&"draggable"in document.createElement("div"),Sh=(function(){if(Kn){if(et)return!1;var c=document.createElement("x");return c.style.cssText="pointer-events:auto",c.style.pointerEvents==="auto"}})(),Ah=function(e,t){var n=te(e),p=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),d=Mt(e,0,t),g=Mt(e,1,t),m=d&&te(d),l=g&&te(g),f=m&&parseInt(m.marginLeft)+parseInt(m.marginRight)+we(d).width,r=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+we(g).width;if(n.display==="flex")return n.flexDirection==="column"||n.flexDirection==="column-reverse"?"vertical":"horizontal";if(n.display==="grid")return n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(d&&m.float&&m.float!=="none"){var o=m.float==="left"?"left":"right";return g&&(l.clear==="both"||l.clear===o)?"vertical":"horizontal"}return d&&(m.display==="block"||m.display==="flex"||m.display==="table"||m.display==="grid"||f>=p&&n[Yc]==="none"||g&&n[Yc]==="none"&&f+r>p)?"vertical":"horizontal"},sg=function(e,t,n){var p=n?e.left:e.top,d=n?e.right:e.bottom,g=n?e.width:e.height,m=n?t.left:t.top,l=n?t.right:t.bottom,f=n?t.width:t.height;return p===m||d===l||p+g/2===m+f/2},ag=function(e,t){var n;return _n.some(function(p){var d=p[Re].options.emptyInsertThreshold;if(!(!d||Vs(p))){var g=we(p),m=e>=g.left-d&&e<=g.right+d,l=t>=g.top-d&&t<=g.bottom+d;if(m&&l)return n=p}}),n},$h=function(e){function t(d,g){return function(m,l,f,r){var o=m.options.group.name&&l.options.group.name&&m.options.group.name===l.options.group.name;if(d==null&&(g||o))return!0;if(d==null||d===!1)return!1;if(g&&d==="clone")return d;if(typeof d=="function")return t(d(m,l,f,r),g)(m,l,f,r);var s=(g?m:l).options.group.name;return d===!0||typeof d=="string"&&d===s||d.join&&d.indexOf(s)>-1}}var n={},p=e.group;(!p||gn(p)!="object")&&(p={name:p}),n.name=p.name,n.checkPull=t(p.pull,!0),n.checkPut=t(p.put),n.revertClone=p.revertClone,e.group=n},Eh=function(){!Sh&&ne&&te(ne,"display","none")},Th=function(){!Sh&&ne&&te(ne,"display","")};Kn&&!ph&&document.addEventListener("click",function(c){if(Mn)return c.preventDefault(),c.stopPropagation&&c.stopPropagation(),c.stopImmediatePropagation&&c.stopImmediatePropagation(),Mn=!1,!1},!0);var dt=function(e){if(K){e=e.touches?e.touches[0]:e;var t=ag(e.clientX,e.clientY);if(t){var n={};for(var p in e)e.hasOwnProperty(p)&&(n[p]=e[p]);n.target=n.rootEl=t,n.preventDefault=void 0,n.stopPropagation=void 0,t[Re]._onDragOver(n)}}},lg=function(e){K&&K.parentNode[Re]._isOutsideThisEl(e.target)};function ee(c,e){if(!(c&&c.nodeType&&c.nodeType===1))throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(c));this.el=c,this.options=e=Ze({},e),c[Re]=this;var t={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(c.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return Ah(c,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(g,m){g.setData("Text",m.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:ee.supportPointer!==!1&&"PointerEvent"in window&&!Kt,emptyInsertThreshold:5};rn.initializePlugins(this,c,t);for(var n in t)!(n in e)&&(e[n]=t[n]);$h(e);for(var p in this)p.charAt(0)==="_"&&typeof this[p]=="function"&&(this[p]=this[p].bind(this));this.nativeDraggable=e.forceFallback?!1:og,this.nativeDraggable&&(this.options.touchStartThreshold=1),e.supportPointer?oe(c,"pointerdown",this._onTapStart):(oe(c,"mousedown",this._onTapStart),oe(c,"touchstart",this._onTapStart)),this.nativeDraggable&&(oe(c,"dragover",this),oe(c,"dragenter",this)),_n.push(this.el),e.store&&e.store.get&&this.sort(e.store.get(this)||[]),Ze(this,eg())}ee.prototype={constructor:ee,_isOutsideThisEl:function(e){!this.el.contains(e)&&e!==this.el&&(Ct=null)},_getDirection:function(e,t){return typeof this.options.direction=="function"?this.options.direction.call(this,e,t,K):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,n=this.el,p=this.options,d=p.preventOnFilter,g=e.type,m=e.touches&&e.touches[0]||e.pointerType&&e.pointerType==="touch"&&e,l=(m||e).target,f=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||l,r=p.filter;if(mg(n),!K&&!(/mousedown|pointerdown/.test(g)&&e.button!==0||p.disabled)&&!f.isContentEditable&&!(!this.nativeDraggable&&Kt&&l&&l.tagName.toUpperCase()==="SELECT")&&(l=He(l,p.draggable,n,!1),!(l&&l.animated)&&mn!==l)){if($t=Fe(l),Yt=Fe(l,p.draggable),typeof r=="function"){if(r.call(this,e,l,this)){Ee({sortable:t,rootEl:f,name:"filter",targetEl:l,toEl:n,fromEl:n}),xe("filter",t,{evt:e}),d&&e.cancelable&&e.preventDefault();return}}else if(r&&(r=r.split(",").some(function(o){if(o=He(f,o.trim(),n,!1),o)return Ee({sortable:t,rootEl:o,name:"filter",targetEl:l,fromEl:n,toEl:n}),xe("filter",t,{evt:e}),!0}),r)){d&&e.cancelable&&e.preventDefault();return}p.handle&&!He(f,p.handle,n,!1)||this._prepareDragStart(e,m,l)}}},_prepareDragStart:function(e,t,n){var p=this,d=p.el,g=p.options,m=d.ownerDocument,l;if(n&&!K&&n.parentNode===d){var f=we(n);if(fe=d,K=n,ve=K.parentNode,ft=K.nextSibling,mn=n,an=g.group,ee.dragged=K,ht={target:K,clientX:(t||e).clientX,clientY:(t||e).clientY},Kc=ht.clientX-f.left,qc=ht.clientY-f.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,K.style["will-change"]="all",l=function(){if(xe("delayEnded",p,{evt:e}),ee.eventCanceled){p._onDrop();return}p._disableDelayedDragEvents(),!jc&&p.nativeDraggable&&(K.draggable=!0),p._triggerDragStart(e,t),Ee({sortable:p,name:"choose",originalEvent:e}),Ie(K,g.chosenClass,!0)},g.ignore.split(",").forEach(function(r){vh(K,r.trim(),Oo)}),oe(m,"dragover",dt),oe(m,"mousemove",dt),oe(m,"touchmove",dt),oe(m,"mouseup",p._onDrop),oe(m,"touchend",p._onDrop),oe(m,"touchcancel",p._onDrop),jc&&this.nativeDraggable&&(this.options.touchStartThreshold=4,K.draggable=!0),xe("delayStart",this,{evt:e}),g.delay&&(!g.delayOnTouchOnly||t)&&(!this.nativeDraggable||!(nn||et))){if(ee.eventCanceled){this._onDrop();return}oe(m,"mouseup",p._disableDelayedDrag),oe(m,"touchend",p._disableDelayedDrag),oe(m,"touchcancel",p._disableDelayedDrag),oe(m,"mousemove",p._delayedDragTouchMoveHandler),oe(m,"touchmove",p._delayedDragTouchMoveHandler),g.supportPointer&&oe(m,"pointermove",p._delayedDragTouchMoveHandler),p._dragStartTimer=setTimeout(l,g.delay)}else l()}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){K&&Oo(K),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;re(e,"mouseup",this._disableDelayedDrag),re(e,"touchend",this._disableDelayedDrag),re(e,"touchcancel",this._disableDelayedDrag),re(e,"mousemove",this._delayedDragTouchMoveHandler),re(e,"touchmove",this._delayedDragTouchMoveHandler),re(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||e.pointerType=="touch"&&e,!this.nativeDraggable||t?this.options.supportPointer?oe(document,"pointermove",this._onTouchMove):t?oe(document,"touchmove",this._onTouchMove):oe(document,"mousemove",this._onTouchMove):(oe(K,"dragend",this),oe(fe,"dragstart",this._onDragStart));try{document.selection?yn(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(e,t){if(St=!1,fe&&K){xe("dragStarted",this,{evt:t}),this.nativeDraggable&&oe(document,"dragover",lg);var n=this.options;!e&&Ie(K,n.dragClass,!1),Ie(K,n.ghostClass,!0),ee.active=this,e&&this._appendGhost(),Ee({sortable:this,name:"start",originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(Be){this._lastX=Be.clientX,this._lastY=Be.clientY,Eh();for(var e=document.elementFromPoint(Be.clientX,Be.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(Be.clientX,Be.clientY),e!==t);)t=e;if(K.parentNode[Re]._isOutsideThisEl(e),t)do{if(t[Re]){var n=void 0;if(n=t[Re]._onDragOver({clientX:Be.clientX,clientY:Be.clientY,target:e,rootEl:t}),n&&!this.options.dragoverBubble)break}e=t}while(t=mh(t));Th()}},_onTouchMove:function(e){if(ht){var t=this.options,n=t.fallbackTolerance,p=t.fallbackOffset,d=e.touches?e.touches[0]:e,g=ne&&Tt(ne,!0),m=ne&&g&&g.a,l=ne&&g&&g.d,f=cn&&Ae&&Vc(Ae),r=(d.clientX-ht.clientX+p.x)/(m||1)+(f?f[0]-Io[0]:0)/(m||1),o=(d.clientY-ht.clientY+p.y)/(l||1)+(f?f[1]-Io[1]:0)/(l||1);if(!ee.active&&!St){if(n&&Math.max(Math.abs(d.clientX-this._lastX),Math.abs(d.clientY-this._lastY))<n)return;this._onDragStart(e,!0)}if(ne){g?(g.e+=r-(Ro||0),g.f+=o-(ko||0)):g={a:1,b:0,c:0,d:1,e:r,f:o};var s="matrix(".concat(g.a,",").concat(g.b,",").concat(g.c,",").concat(g.d,",").concat(g.e,",").concat(g.f,")");te(ne,"webkitTransform",s),te(ne,"mozTransform",s),te(ne,"msTransform",s),te(ne,"transform",s),Ro=r,ko=o,Be=d}e.cancelable&&e.preventDefault()}},_appendGhost:function(){if(!ne){var e=this.options.fallbackOnBody?document.body:fe,t=we(K,!0,cn,!0,e),n=this.options;if(cn){for(Ae=e;te(Ae,"position")==="static"&&te(Ae,"transform")==="none"&&Ae!==document;)Ae=Ae.parentNode;Ae!==document.body&&Ae!==document.documentElement?(Ae===document&&(Ae=je()),t.top+=Ae.scrollTop,t.left+=Ae.scrollLeft):Ae=je(),Io=Vc(Ae)}ne=K.cloneNode(!0),Ie(ne,n.ghostClass,!1),Ie(ne,n.fallbackClass,!0),Ie(ne,n.dragClass,!0),te(ne,"transition",""),te(ne,"transform",""),te(ne,"box-sizing","border-box"),te(ne,"margin",0),te(ne,"top",t.top),te(ne,"left",t.left),te(ne,"width",t.width),te(ne,"height",t.height),te(ne,"opacity","0.8"),te(ne,"position",cn?"absolute":"fixed"),te(ne,"zIndex","100000"),te(ne,"pointerEvents","none"),ee.ghost=ne,e.appendChild(ne),te(ne,"transform-origin",Kc/parseInt(ne.style.width)*100+"% "+qc/parseInt(ne.style.height)*100+"%")}},_onDragStart:function(e,t){var n=this,p=e.dataTransfer,d=n.options;if(xe("dragStart",this,{evt:e}),ee.eventCanceled){this._onDrop();return}xe("setupClone",this),ee.eventCanceled||(pe=wh(K),pe.removeAttribute("id"),pe.draggable=!1,pe.style["will-change"]="",this._hideClone(),Ie(pe,this.options.chosenClass,!1),ee.clone=pe),n.cloneId=yn(function(){xe("clone",n),!ee.eventCanceled&&(n.options.removeCloneOnHide||fe.insertBefore(pe,K),n._hideClone(),Ee({sortable:n,name:"clone"}))}),!t&&Ie(K,d.dragClass,!0),t?(Mn=!0,n._loopId=setInterval(n._emulateDragOver,50)):(re(document,"mouseup",n._onDrop),re(document,"touchend",n._onDrop),re(document,"touchcancel",n._onDrop),p&&(p.effectAllowed="move",d.setData&&d.setData.call(n,p,K)),oe(document,"drop",n),te(K,"transform","translateZ(0)")),St=!0,n._dragStartId=yn(n._dragStarted.bind(n,t,e)),oe(document,"selectstart",n),zt=!0,Kt&&te(document.body,"user-select","none")},_onDragOver:function(e){var t=this.el,n=e.target,p,d,g,m=this.options,l=m.group,f=ee.active,r=an===l,o=m.sort,s=Se||f,a,i=this,u=!1;if($s)return;function h(O,D){xe(O,i,Ue({evt:e,isOwner:r,axis:a?"vertical":"horizontal",revert:g,dragRect:p,targetRect:d,canSort:o,fromSortable:s,target:n,completed:b,onMove:function(P,z){return un(fe,t,K,p,P,we(P),e,z)},changed:T},D))}function y(){h("dragOverAnimationCapture"),i.captureAnimationState(),i!==s&&s.captureAnimationState()}function b(O){return h("dragOverCompleted",{insertion:O}),O&&(r?f._hideClone():f._showClone(i),i!==s&&(Ie(K,Se?Se.options.ghostClass:f.options.ghostClass,!1),Ie(K,m.ghostClass,!0)),Se!==i&&i!==ee.active?Se=i:i===ee.active&&Se&&(Se=null),s===i&&(i._ignoreWhileAnimating=n),i.animateAll(function(){h("dragOverAnimationComplete"),i._ignoreWhileAnimating=null}),i!==s&&(s.animateAll(),s._ignoreWhileAnimating=null)),(n===K&&!K.animated||n===t&&!n.animated)&&(Ct=null),!m.dragoverBubble&&!e.rootEl&&n!==document&&(K.parentNode[Re]._isOutsideThisEl(e.target),!O&&dt(e)),!m.dragoverBubble&&e.stopPropagation&&e.stopPropagation(),u=!0}function T(){Oe=Fe(K),tt=Fe(K,m.draggable),Ee({sortable:i,name:"change",toEl:t,newIndex:Oe,newDraggableIndex:tt,originalEvent:e})}if(e.preventDefault!==void 0&&e.cancelable&&e.preventDefault(),n=He(n,m.draggable,t,!0),h("dragOver"),ee.eventCanceled)return u;if(K.contains(e.target)||n.animated&&n.animatingX&&n.animatingY||i._ignoreWhileAnimating===n)return b(!1);if(Mn=!1,f&&!m.disabled&&(r?o||(g=ve!==fe):Se===this||(this.lastPutMode=an.checkPull(this,f,K,e))&&l.checkPut(this,f,K,e))){if(a=this._getDirection(e,n)==="vertical",p=we(K),h("dragOverValid"),ee.eventCanceled)return u;if(g)return ve=fe,y(),this._hideClone(),h("revert"),ee.eventCanceled||(ft?fe.insertBefore(K,ft):fe.appendChild(K)),b(!0);var $=Vs(t,m.draggable);if(!$||dg(e,a,this)&&!$.animated){if($===K)return b(!1);if($&&t===e.target&&(n=$),n&&(d=we(n)),un(fe,t,K,p,n,d,e,!!n)!==!1)return y(),$&&$.nextSibling?t.insertBefore(K,$.nextSibling):t.appendChild(K),ve=t,T(),b(!0)}else if($&&hg(e,a,this)){var A=Mt(t,0,m,!0);if(A===K)return b(!1);if(n=A,d=we(n),un(fe,t,K,p,n,d,e,!1)!==!1)return y(),t.insertBefore(K,A),ve=t,T(),b(!0)}else if(n.parentNode===t){d=we(n);var S=0,M,R=K.parentNode!==t,L=!sg(K.animated&&K.toRect||p,n.animated&&n.toRect||d,a),_=a?"top":"left",I=Gc(n,"top","top")||Gc(K,"top","top"),w=I?I.scrollTop:void 0;Ct!==n&&(M=d[_],Qt=!1,ln=!L&&m.invertSwap||R),S=fg(e,n,d,a,L?1:m.swapThreshold,m.invertedSwapThreshold==null?m.swapThreshold:m.invertedSwapThreshold,ln,Ct===n);var v;if(S!==0){var C=Fe(K);do C-=S,v=ve.children[C];while(v&&(te(v,"display")==="none"||v===ne))}if(S===0||v===n)return b(!1);Ct=n,Xt=S;var E=n.nextElementSibling,x=!1;x=S===1;var k=un(fe,t,K,p,n,d,e,x);if(k!==!1)return(k===1||k===-1)&&(x=k===1),$s=!0,setTimeout(ug,30),y(),x&&!E?t.appendChild(K):n.parentNode.insertBefore(K,x?E:n),I&&bh(I,0,w-I.scrollTop),ve=K.parentNode,M!==void 0&&!ln&&(vn=Math.abs(M-we(n)[_])),T(),b(!0)}if(t.contains(K))return b(!1)}return!1},_ignoreWhileAnimating:null,_offMoveEvents:function(){re(document,"mousemove",this._onTouchMove),re(document,"touchmove",this._onTouchMove),re(document,"pointermove",this._onTouchMove),re(document,"dragover",dt),re(document,"mousemove",dt),re(document,"touchmove",dt)},_offUpEvents:function(){var e=this.el.ownerDocument;re(e,"mouseup",this._onDrop),re(e,"touchend",this._onDrop),re(e,"pointerup",this._onDrop),re(e,"touchcancel",this._onDrop),re(document,"selectstart",this)},_onDrop:function(e){var t=this.el,n=this.options;if(Oe=Fe(K),tt=Fe(K,n.draggable),xe("drop",this,{evt:e}),ve=K&&K.parentNode,Oe=Fe(K),tt=Fe(K,n.draggable),ee.eventCanceled){this._nulling();return}St=!1,ln=!1,Qt=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),Es(this.cloneId),Es(this._dragStartId),this.nativeDraggable&&(re(document,"drop",this),re(t,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),Kt&&te(document.body,"user-select",""),te(K,"transform",""),e&&(zt&&(e.cancelable&&e.preventDefault(),!n.dropBubble&&e.stopPropagation()),ne&&ne.parentNode&&ne.parentNode.removeChild(ne),(fe===ve||Se&&Se.lastPutMode!=="clone")&&pe&&pe.parentNode&&pe.parentNode.removeChild(pe),K&&(this.nativeDraggable&&re(K,"dragend",this),Oo(K),K.style["will-change"]="",zt&&!St&&Ie(K,Se?Se.options.ghostClass:this.options.ghostClass,!1),Ie(K,this.options.chosenClass,!1),Ee({sortable:this,name:"unchoose",toEl:ve,newIndex:null,newDraggableIndex:null,originalEvent:e}),fe!==ve?(Oe>=0&&(Ee({rootEl:ve,name:"add",toEl:ve,fromEl:fe,originalEvent:e}),Ee({sortable:this,name:"remove",toEl:ve,originalEvent:e}),Ee({rootEl:ve,name:"sort",toEl:ve,fromEl:fe,originalEvent:e}),Ee({sortable:this,name:"sort",toEl:ve,originalEvent:e})),Se&&Se.save()):Oe!==$t&&Oe>=0&&(Ee({sortable:this,name:"update",toEl:ve,originalEvent:e}),Ee({sortable:this,name:"sort",toEl:ve,originalEvent:e})),ee.active&&((Oe==null||Oe===-1)&&(Oe=$t,tt=Yt),Ee({sortable:this,name:"end",toEl:ve,originalEvent:e}),this.save()))),this._nulling()},_nulling:function(){xe("nulling",this),fe=K=ve=ne=ft=pe=mn=nt=ht=Be=zt=Oe=tt=$t=Yt=Ct=Xt=Se=an=ee.dragged=ee.ghost=ee.clone=ee.active=null,xn.forEach(function(e){e.checked=!0}),xn.length=Ro=ko=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":K&&(this._onDragOver(e),cg(e));break;case"selectstart":e.preventDefault();break}},toArray:function(){for(var e=[],t,n=this.el.children,p=0,d=n.length,g=this.options;p<d;p++)t=n[p],He(t,g.draggable,this.el,!1)&&e.push(t.getAttribute(g.dataIdAttr)||gg(t));return e},sort:function(e,t){var n={},p=this.el;this.toArray().forEach(function(d,g){var m=p.children[g];He(m,this.options.draggable,p,!1)&&(n[d]=m)},this),t&&this.captureAnimationState(),e.forEach(function(d){n[d]&&(p.removeChild(n[d]),p.appendChild(n[d]))}),t&&this.animateAll()},save:function(){var e=this.options.store;e&&e.set&&e.set(this)},closest:function(e,t){return He(e,t||this.options.draggable,this.el,!1)},option:function(e,t){var n=this.options;if(t===void 0)return n[e];var p=rn.modifyOption(this,e,t);typeof p<"u"?n[e]=p:n[e]=t,e==="group"&&$h(n)},destroy:function(){xe("destroy",this);var e=this.el;e[Re]=null,re(e,"mousedown",this._onTapStart),re(e,"touchstart",this._onTapStart),re(e,"pointerdown",this._onTapStart),this.nativeDraggable&&(re(e,"dragover",this),re(e,"dragenter",this)),Array.prototype.forEach.call(e.querySelectorAll("[draggable]"),function(t){t.removeAttribute("draggable")}),this._onDrop(),this._disableDelayedDragEvents(),_n.splice(_n.indexOf(this.el),1),this.el=e=null},_hideClone:function(){if(!nt){if(xe("hideClone",this),ee.eventCanceled)return;te(pe,"display","none"),this.options.removeCloneOnHide&&pe.parentNode&&pe.parentNode.removeChild(pe),nt=!0}},_showClone:function(e){if(e.lastPutMode!=="clone"){this._hideClone();return}if(nt){if(xe("showClone",this),ee.eventCanceled)return;K.parentNode==fe&&!this.options.group.revertClone?fe.insertBefore(pe,K):ft?fe.insertBefore(pe,ft):fe.appendChild(pe),this.options.group.revertClone&&this.animate(K,pe),te(pe,"display",""),nt=!1}}};function cg(c){c.dataTransfer&&(c.dataTransfer.dropEffect="move"),c.cancelable&&c.preventDefault()}function un(c,e,t,n,p,d,g,m){var l,f=c[Re],r=f.options.onMove,o;return window.CustomEvent&&!et&&!nn?l=new CustomEvent("move",{bubbles:!0,cancelable:!0}):(l=document.createEvent("Event"),l.initEvent("move",!0,!0)),l.to=e,l.from=c,l.dragged=t,l.draggedRect=n,l.related=p||e,l.relatedRect=d||we(e),l.willInsertAfter=m,l.originalEvent=g,c.dispatchEvent(l),r&&(o=r.call(f,l,g)),o}function Oo(c){c.draggable=!1}function ug(){$s=!1}function hg(c,e,t){var n=we(Mt(t.el,0,t.options,!0)),p=Ch(t.el,t.options,ne),d=10;return e?c.clientX<p.left-d||c.clientY<n.top&&c.clientX<n.right:c.clientY<p.top-d||c.clientY<n.bottom&&c.clientX<n.left}function dg(c,e,t){var n=we(Vs(t.el,t.options.draggable)),p=Ch(t.el,t.options,ne),d=10;return e?c.clientX>p.right+d||c.clientY>n.bottom&&c.clientX>n.left:c.clientY>p.bottom+d||c.clientX>n.right&&c.clientY>n.top}function fg(c,e,t,n,p,d,g,m){var l=n?c.clientY:c.clientX,f=n?t.height:t.width,r=n?t.top:t.left,o=n?t.bottom:t.right,s=!1;if(!g){if(m&&vn<f*p){if(!Qt&&(Xt===1?l>r+f*d/2:l<o-f*d/2)&&(Qt=!0),Qt)s=!0;else if(Xt===1?l<r+vn:l>o-vn)return-Xt}else if(l>r+f*(1-p)/2&&l<o-f*(1-p)/2)return pg(e)}return s=s||g,s&&(l<r+f*d/2||l>o-f*d/2)?l>r+f/2?1:-1:0}function pg(c){return Fe(K)<Fe(c)?1:-1}function gg(c){for(var e=c.tagName+c.className+c.src+c.href+c.textContent,t=e.length,n=0;t--;)n+=e.charCodeAt(t);return n.toString(36)}function mg(c){xn.length=0;for(var e=c.getElementsByTagName("input"),t=e.length;t--;){var n=e[t];n.checked&&xn.push(n)}}function yn(c){return setTimeout(c,0)}function Es(c){return clearTimeout(c)}Kn&&oe(document,"touchmove",function(c){(ee.active||St)&&c.cancelable&&c.preventDefault()});ee.utils={on:oe,off:re,css:te,find:vh,is:function(e,t){return!!He(e,t,e,!1)},extend:Zp,throttle:yh,closest:He,toggleClass:Ie,clone:wh,index:Fe,nextTick:yn,cancelNextTick:Es,detectDirection:Ah,getChild:Mt,expando:Re};ee.get=function(c){return c[Re]};ee.mount=function(){for(var c=arguments.length,e=new Array(c),t=0;t<c;t++)e[t]=arguments[t];e[0].constructor===Array&&(e=e[0]),e.forEach(function(n){if(!n.prototype||!n.prototype.constructor)throw"Sortable: Mounted plugin must be a constructor function, not ".concat({}.toString.call(n));n.utils&&(ee.utils=Ue(Ue({},ee.utils),n.utils)),rn.mount(n)})};ee.create=function(c,e){return new ee(c,e)};ee.version=Xp;var be=[],jt,Ts,Ms=!1,Do,No,Ln,Ut;function vg(){function c(){this.defaults={scroll:!0,forceAutoScrollFallback:!1,scrollSensitivity:30,scrollSpeed:10,bubbleScroll:!0};for(var e in this)e.charAt(0)==="_"&&typeof this[e]=="function"&&(this[e]=this[e].bind(this))}return c.prototype={dragStarted:function(t){var n=t.originalEvent;this.sortable.nativeDraggable?oe(document,"dragover",this._handleAutoScroll):this.options.supportPointer?oe(document,"pointermove",this._handleFallbackAutoScroll):n.touches?oe(document,"touchmove",this._handleFallbackAutoScroll):oe(document,"mousemove",this._handleFallbackAutoScroll)},dragOverCompleted:function(t){var n=t.originalEvent;!this.options.dragOverBubble&&!n.rootEl&&this._handleAutoScroll(n)},drop:function(){this.sortable.nativeDraggable?re(document,"dragover",this._handleAutoScroll):(re(document,"pointermove",this._handleFallbackAutoScroll),re(document,"touchmove",this._handleFallbackAutoScroll),re(document,"mousemove",this._handleFallbackAutoScroll)),Xc(),bn(),Jp()},nulling:function(){Ln=Ts=jt=Ms=Ut=Do=No=null,be.length=0},_handleFallbackAutoScroll:function(t){this._handleAutoScroll(t,!0)},_handleAutoScroll:function(t,n){var p=this,d=(t.touches?t.touches[0]:t).clientX,g=(t.touches?t.touches[0]:t).clientY,m=document.elementFromPoint(d,g);if(Ln=t,n||this.options.forceAutoScrollFallback||nn||et||Kt){Fo(t,this.options,m,n);var l=it(m,!0);Ms&&(!Ut||d!==Do||g!==No)&&(Ut&&Xc(),Ut=setInterval(function(){var f=it(document.elementFromPoint(d,g),!0);f!==l&&(l=f,bn()),Fo(t,p.options,f,n)},10),Do=d,No=g)}else{if(!this.options.bubbleScroll||it(m,!0)===je()){bn();return}Fo(t,this.options,it(m,!1),!1)}}},Ze(c,{pluginName:"scroll",initializeByDefault:!0})}function bn(){be.forEach(function(c){clearInterval(c.pid)}),be=[]}function Xc(){clearInterval(Ut)}var Fo=yh(function(c,e,t,n){if(e.scroll){var p=(c.touches?c.touches[0]:c).clientX,d=(c.touches?c.touches[0]:c).clientY,g=e.scrollSensitivity,m=e.scrollSpeed,l=je(),f=!1,r;Ts!==t&&(Ts=t,bn(),jt=e.scroll,r=e.scrollFn,jt===!0&&(jt=it(t,!0)));var o=0,s=jt;do{var a=s,i=we(a),u=i.top,h=i.bottom,y=i.left,b=i.right,T=i.width,$=i.height,A=void 0,S=void 0,M=a.scrollWidth,R=a.scrollHeight,L=te(a),_=a.scrollLeft,I=a.scrollTop;a===l?(A=T<M&&(L.overflowX==="auto"||L.overflowX==="scroll"||L.overflowX==="visible"),S=$<R&&(L.overflowY==="auto"||L.overflowY==="scroll"||L.overflowY==="visible")):(A=T<M&&(L.overflowX==="auto"||L.overflowX==="scroll"),S=$<R&&(L.overflowY==="auto"||L.overflowY==="scroll"));var w=A&&(Math.abs(b-p)<=g&&_+T<M)-(Math.abs(y-p)<=g&&!!_),v=S&&(Math.abs(h-d)<=g&&I+$<R)-(Math.abs(u-d)<=g&&!!I);if(!be[o])for(var C=0;C<=o;C++)be[C]||(be[C]={});(be[o].vx!=w||be[o].vy!=v||be[o].el!==a)&&(be[o].el=a,be[o].vx=w,be[o].vy=v,clearInterval(be[o].pid),(w!=0||v!=0)&&(f=!0,be[o].pid=setInterval((function(){n&&this.layer===0&&ee.active._onTouchMove(Ln);var E=be[this.layer].vy?be[this.layer].vy*m:0,x=be[this.layer].vx?be[this.layer].vx*m:0;typeof r=="function"&&r.call(ee.dragged.parentNode[Re],x,E,c,Ln,be[this.layer].el)!=="continue"||bh(be[this.layer].el,x,E)}).bind({layer:o}),24))),o++}while(e.bubbleScroll&&s!==l&&(s=it(s,!1)));Ms=f}},30),Mh=function(e){var t=e.originalEvent,n=e.putSortable,p=e.dragEl,d=e.activeSortable,g=e.dispatchSortableEvent,m=e.hideGhostForTarget,l=e.unhideGhostForTarget;if(t){var f=n||d;m();var r=t.changedTouches&&t.changedTouches.length?t.changedTouches[0]:t,o=document.elementFromPoint(r.clientX,r.clientY);l(),f&&!f.el.contains(o)&&(g("spill"),this.onSpill({dragEl:p,putSortable:n}))}};function Ks(){}Ks.prototype={startIndex:null,dragStart:function(e){var t=e.oldDraggableIndex;this.startIndex=t},onSpill:function(e){var t=e.dragEl,n=e.putSortable;this.sortable.captureAnimationState(),n&&n.captureAnimationState();var p=Mt(this.sortable.el,this.startIndex,this.options);p?this.sortable.el.insertBefore(t,p):this.sortable.el.appendChild(t),this.sortable.animateAll(),n&&n.animateAll()},drop:Mh};Ze(Ks,{pluginName:"revertOnSpill"});function qs(){}qs.prototype={onSpill:function(e){var t=e.dragEl,n=e.putSortable,p=n||this.sortable;p.captureAnimationState(),t.parentNode&&t.parentNode.removeChild(t),p.animateAll()},drop:Mh};Ze(qs,{pluginName:"removeOnSpill"});ee.mount(new vg);ee.mount(qs,Ks);const $e={getStyle:(c,e=!1)=>{let t;return window.getComputedStyle?t=window.getComputedStyle(c,null):c.currentStyle&&(t=c.currentStyle),e?t[e]:t},fadeOut:(c,e=250)=>{const t=1/(e/60);c.style.opacity=1,(function n(){const p=Number(c.style.opacity)-t;p>0?(c.style.opacity=p,window.requestAnimationFrame(n)):c.remove()})()},slideDown:(c,e=250,t=!1)=>{c.style.display="block";const n=$e.getStyle(c),p=Number.parseInt(n.height,10),d=p/(e/60);c.style.height="0px",(function g(){const m=Number.parseFloat(c.style.height),l=m+d;m<p?(c.style.height=`${l}px`,window.requestAnimationFrame(g)):(c.style.height="auto",t&&t(c))})()},slideUp:(c,e=250,t=!1)=>{const n=$e.getStyle(c),p=Number.parseInt(n.height,10),d=n.overflow;c.style.overflow="hidden",c.style.height=`${p}px`;const g=n.minHeight;c.style.minHeight="auto";const m=parseFloat(p/(e/60)).toFixed(2);(function l(){const r=Number.parseInt(c.style.height,10)-m;r>0?(c.style.height=`${r}px`,window.requestAnimationFrame(l)):(c.style.overflow=d,c.style.display="none",c.style.minHeight=g,delete c.style.height,t&&t(c))})()},slideToggle:(c,e=250,t=$e.getStyle(c,"display")==="none")=>{t?$e.slideDown(c,e):$e.slideUp(c,e)}},_h=c=>Number.isInteger(Number(c)),at=c=>{let e=0,t=c;for(;t?.previousElementSibling;)t=t.previousElementSibling,e++;return e},Rn=(c,e,t)=>{const n=t.split("||"),d=pt(e).map(g=>c.find(m=>{const l=n.find(f=>!!De(m,f));return l&&De(m,l)===g})).filter(Boolean).concat(c);return pt(d)},qn=(c,e,t)=>{for(let n=0;n<c.length;n++)e.call(t,c[n],n)},Ys=(c,e)=>{const t=[];return qn(c,(n,p)=>t.push(e(n,p))),t},Po={},xh=c=>{const e={className:"class"};if(Po[c])return Po[c];const n=(e[c]||c).replace(/^\d+/,"").replace(/[^a-zA-Z0-9-:]/g,"");return Po[c]=n,n},Lh=c=>c.replace(/\b\w/g,e=>e.toUpperCase()),yg=c=>window.JSON.parse(window.JSON.stringify(c)),bg=(c,e)=>e.filter(t=>!~c.indexOf(t)),Rh=()=>window.navigator.userAgent.indexOf("MSIE ")!==-1,Ne={capitalize:Lh,safeAttrName:xh,forEach:qn,copyObj:yg,map:Ys,subtract:bg,indexOfNode:at,isInt:_h,get:De,orderObjectsBy:Rn,isIE:Rh},wg={glyphicons:c=>`<span class="glyphicon glyphicon-${c}" aria-hidden="true"></span>`,"font-awesome":c=>{const[e,t]=c.split(" ");return`<i class="${e} fa-${t}"></i>`},fontello:c=>`<i class="${lh}${c}">${c}</i>`},Cg=new Set(["input","textarea","select"]),Sg=(c={})=>{let e=c?.attrs?.name||c?.name;if(e)return e;const t=We(c);let n=c.config?.label||c.attrs?.label||c?.label;return n&&(typeof n=="object"&&(n=U.create(n).textContent),/^<.+>.+<.+>$/gim.test(n)&&(n=np(n)),e=`${t}-${ch(ip(n,24,null))}`),e||t};class Ag{constructor(e=Object.create(null)){this.options=e}set setOptions(e){this.options=ze(this.options,e)}processElemArg(e){let t=e,n;if(typeof t=="string")return n=t,t={tag:n},t;if(t.attrs){const{tag:p,...d}=t.attrs;p&&(typeof p=="string"?n=p:n=(p.find(m=>m.selected===!0)||p[0]).value),t.attrs=d}return t.tag=n||t.tag||"div",t}render=e=>(e.id=`f-${e.id||We()}`,this.create(e));create=(e,t=!1)=>{if(!e)return;if(this.isDOMElement(e))return e;const n=this,p=["children","content"],{className:d,options:g,dataset:m,...l}=this.processElemArg(e);p.push("tag");let f;const{tag:r}=l;let o;const s={attrs:{},className:[Ne.get(l,"config.inputWrap")],children:[],config:{}};let a=document.createElement(r);const i={string:h=>{a.innerHTML+=h},object:h=>h&&a.appendChild(n.create(h,t)),node:h=>a.appendChild(h),component:h=>a.appendChild(h.dom),array:h=>{for(const y of h)f=n.childType(y),i[f](y)},function:h=>{h=h(),f=n.childType(h),i[f](h)},undefined:()=>null,boolean:()=>null};if(d&&(l.attrs=ze(l.attrs,{className:d})),g){const h=this.processOptions(g,l,t);if(this.holdsContent(a)&&r!=="button")i.array.call(this,h),l.content=void 0;else return Ne.forEach(h,y=>{s.children.push(n.create(y,t))}),l.attrs.className&&(s.className=l.attrs.className),s.id=l.id,s.config={...l.config},this.create(s,t);p.push("options")}if(l.attrs&&(n.processAttrs(l,a,t),p.push("attrs")),l.config){if(l.config.label&&(l.config.label&&r!=="button"||["radio","checkbox"].includes(Ne.get(l,"attrs.type")))&&!t){const h=n.label(l);if(!l.config.hideLabel){const y=[h,a];n.labelAfter(l)&&y.reverse(),s.children.push(y)}}p.push("config")}if(l.content||l.children){const h=l.content||l.children;f=n.childType(h),i[f]||console.error(`childType: ${f} is not supported`),i[f].call(this,h)}if(m){for(const h in m)Object.hasOwn(m,h)&&(a.dataset[h]=typeof m[h]=="function"?m[h]():m[h]);p.push("dataset")}l.action&&(this.actionHandler(a,l.action),p.push("action"));const u=Ne.subtract(p,Object.keys(l));for(o=u.length-1;o>=0;o--)a[u[o]]=l[u[o]];return s.children.length&&(a=this.create(s)),a};onRender=(e,t,n=Ke)=>{const p=Date.now(),d=()=>{!e.parentElement&&Date.now()-p<n?window.requestAnimationFrame(d):e.parentElement&&t(e)};d()};actionHandler(e,t){const n={onRender:U.onRender,render:U.onRender},p=["focus","blur"],d=g=>(m,l)=>m.addEventListener(g,l,p.includes(g));return Object.entries(t).map(([g,m])=>(Array.isArray(m)?m:[m]).map(f=>(n[g]||d(g))(e,f)))}get icons(){if(this.iconSymbols)return this.iconSymbols;const e=document.querySelectorAll(`#${ot} svg symbol`),t=n=>({tag:"svg",attrs:{className:["svg-icon",n]},children:[{tag:"use",attrs:{"xmlns:xlink":"http://www.w3.org/1999/xlink","xlink:href":`#${n}`}}]});return this.iconSymbols=Array.from(e).reduce((n,p)=>{const d=p.id.replace(lh,"");return n[d]=t(p.id),n},{}),this.cachedIcons={},this.iconSymbols}icon(e,t){if(!e)return;const n=`${e}?${new URLSearchParams(t).toString()}`;if(this.cachedIcons?.[n])return this.cachedIcons[n];const p=this.icons[e];if(p){if(t){const d=ze(p,t);return this.cachedIcons[n]=U.create(d).outerHTML,this.cachedIcons[n]}return this.cachedIcons[n]=U.create(p).outerHTML,this.cachedIcons[n]}return wg[U.options.iconFont]?.(e)||e}processAttrs(e,t,n){const{attrs:p={}}=e;if(!n&&!p.name&&p.name!==null&&this.isInput(e.tag)){const d=Sg(e);d&&t.setAttribute("name",d)}for(const d of Object.keys(p)){const g=Ne.safeAttrName(d),m=this.processAttrValue(p[d]);m!==!1&&t.setAttribute(g,m)}}processAttrValue(e){if(typeof e=="function")return e();if(typeof e=="boolean")return e&&"";let t=e||"";if(Array.isArray(t))if(typeof t[0]=="object"){const n=t.filter(p=>p.selected===!0);t=n.length?n[0].value:t[0].value}else t=t.join(" ");return t}toggleElementsByStr=(e,t)=>{const n=[],p=(d,g)=>{g?(d.style.display="block",n.push(d)):d.style.display="none"};return U.elementsContainText(e,t,p),n};elementsContainText=(e,t,n)=>{const p=[];return qn(e,d=>{const m=d.textContent.toLowerCase().indexOf(t.toLowerCase())!==-1;n?.(d,m),m&&p.push(d)}),p};generateOption=({type:e="option",label:t,value:n,i:p=0,selected:d})=>({tag:e==="option"?"option":"input",attrs:{type:e,value:n||`${e}-${p}`,[e==="option"?"selected":"checked"]:d||!p},config:{label:t||Q.get("labelCount",{label:Q.get("option"),count:p})}});processOptions(e,t,n){const{action:p,attrs:d={}}=t,g=d.type||t.tag,m=d.id||t.id,l=(r,o)=>{const{label:s,value:a,...i}=r,u=()=>{const y={tag:"input",attrs:{name:m,type:g,value:a||"",id:`${m}-${o}`,...i},action:p},b={tag:"label",attrs:{for:`${m}-${o}`},children:s},T={children:[y,b],className:[`f-${g}`]};return d.className&&(t.config.inputWrap=d.className),t.config.inline&&T.className.push(`f-${g}-inline`),r.selected&&(y.attrs.checked=!0),n&&(b.attrs.contenteditable=!0),T};return{select:()=>{const y=r.attrs||r,b={attrs:y,...r,...y},{label:T,checked:$,selected:A,attrs:S}=b;return{tag:"option",attrs:{...S,selected:!!($||A)},children:T}},button:y=>{const{type:b,label:T,className:$,id:A}=y;return{...t,attrs:{type:b},className:$,id:A||We(),options:void 0,children:T,action:t.action}},checkbox:u,radio:u}[g]?.(r)};return e.map(l)}holdsContent(e){return e.outerHTML.indexOf("/")!==-1}isBlockInput(e){return!this.isInput(e)&&this.holdsContent(e)}isInput(e){let t=e;return typeof t!="string"&&(t=t.tagName),Cg.has(t)}parsedHtml(e){const t=document.createElement("textarea");return t.innerHTML=e,t.textContent}labelAfter(e){const t=Ne.get(e,"attrs.type"),n=Ne.get(e,"config.labelAfter");return n!==void 0?n:t==="checkbox"||t==="radio"}requiredMark=()=>({tag:"span",className:"text-error",children:"*"});label(e,t){const n=Ne.get(e,"attrs.required");let{config:{label:p=""}}=e;const{id:d,attrs:g}=e;typeof p=="function"&&(p=p());const m={tag:"label",attrs:{for:d||g?.id},className:[],children:[p,n&&this.requiredMark()],action:{}};return t&&(m.attrs.for=void 0,m.attrs.contenteditable=!0,m.fMap=t),m}childType(e){return e===void 0?e:[["array",t=>Array.isArray(t)],["node",t=>t instanceof window.Node||t instanceof window.HTMLElement],["component",()=>e?.dom],[typeof e,()=>!0]].find(t=>t[1](e))[0]}getStyle(e,t=!1){let n;return window.getComputedStyle?n=window.getComputedStyle(e,null):e.currentStyle&&(n=e.currentStyle),t?n[t]:n}getElement(e){const t={node:()=>e,object:()=>document.getElementById(e.id),string:()=>document.getElementById(e)},n=this.childType(e);return t[n]()}empty(e){for(;e.firstChild;)this.remove(e.firstChild);return e}removeEmpty=e=>{const t=e.parentElement,n=Le(e),p=t.getElementsByClassName(`formeo-${n}`);if(this.remove(e),!p.length)return this.isStage(t)?this.emptyClass(t):this.removeEmpty(t)};remove(e){const t=Le(e);return t?ce.remove(`${t}s.${e.id}`):e.parentElement.removeChild(e)}removeClasses(e,t){const n={string:p=>p.classList.remove(t),array:p=>{for(const d of t)p.classList.remove(d)}};n.object=n.string,Ne.forEach(e,n[this.childType(t)])}addClasses(e,t){const n={string:p=>p.classList.add(t),array:p=>{for(const d of t)p.classList.add(d)}};Ne.forEach(e,n[this.childType(t)])}formGroup(e,t=""){return{className:["f-field-group",t],children:e}}coords(e){const t=e.getBoundingClientRect(),n=document.body.getBoundingClientRect();return{pageX:t.left+t.width/2,pageY:t.top-n.top-t.height/2}}clearStage(e){e.classList.add("removing-all-fields");const t=()=>{U.empty(e),e.classList.remove("removing-all-fields"),U.emptyClass(e),$e.slideDown(e,300)};$e.slideUp(e,600,t)}toggleSortable(e,t){let n=t;const p=Le(e);if(!p)return;const d=Le(e.parentElement),g=U[p].get(e.id).sortable;n||(n=!g.option("disabled")),g.option("disabled",n),d&&["rows","columns","stages"].includes(d)&&this.toggleSortable(e.parentElement,n)}emptyClass(e){const t=e.getElementsByClassName(Mf.get(e.classList.item(0)));e.classList.toggle("empty",!t.length)}btnTemplate=({title:e="",...t})=>({tag:"button",attrs:{type:"button",title:e},...t});isControls=e=>Le(e)===rt;isStage=e=>Le(e)===kt;isRow=e=>Le(e)===Xe;isColumn=e=>Le(e)===Qe;isField=e=>Le(e)===It;asComponent=e=>ce[`${Le(e)}s`].get(e.id);isDOMElement(e){return e instanceof window.Element||e instanceof window.HTMLElement||!!(e&&typeof e=="object"&&e.nodeType===1&&typeof e.nodeName=="string")}}const U=new Ag,$g="modulepreload",Eg=function(c){return"/formeo/"+c},Qc={},At=function(e,t,n){let p=Promise.resolve();if(t&&t.length>0){let l=function(f){return Promise.all(f.map(r=>Promise.resolve(r).then(o=>({status:"fulfilled",value:o}),o=>({status:"rejected",reason:o}))))};document.getElementsByTagName("link");const g=document.querySelector("meta[property=csp-nonce]"),m=g?.nonce||g?.getAttribute("nonce");p=l(t.map(f=>{if(f=Eg(f),f in Qc)return;Qc[f]=!0;const r=f.endsWith(".css"),o=r?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${f}"]${o}`))return;const s=document.createElement("link");if(s.rel=r?"stylesheet":$g,r||(s.as="script"),s.crossOrigin="",s.href=f,m&&s.setAttribute("nonce",m),document.head.appendChild(s),r)return new Promise((a,i)=>{s.addEventListener("load",a),s.addEventListener("error",()=>i(new Error(`Unable to preload CSS for ${f}`)))})}))}function d(g){const m=new Event("vite:preloadError",{cancelable:!0});if(m.payload=g,window.dispatchEvent(m),!m.defaultPrevented)throw g}return p.then(g=>{for(const m of g||[])m.status==="rejected"&&d(m.reason);return e().catch(d)})},Et="f-autocomplete",Tg=`${Et}-display-field`,Xs=`${Et}-list`,Nt="highlight-component",kn=`${Xs}-item`,Mg=(c,e)=>{const t=c.reduce((n,p)=>n+(p===e),0);return t>1?`(${t})`:""},kh=["config.label","config.controlId"],_g=["config.legend","name"],xg=[...kh,..._g],Wo=c=>kh.reduce((e,t)=>e||c.get(t),null),Zc=c=>xg.reduce((e,t)=>e||c.get(t),null)||st(c.name),Lg=new Map([["condition.source",Wo],["if.condition.source",Wo],["if.condition.target",Wo],["then.condition.target",Zc],["condition.target",Zc]]),Ih=({id:c,...e},t)=>{const{name:n,label:p}=e;return n?Lg.get(t)(e):p},Rg=({selectedId:c,...e})=>(e.value===c&&(e.selected=!0),e),Bo=c=>(c.classList.contains(kn)||(c=c.parentElement),c),Oh=({value:c,textLabel:e,htmlLabel:t,componentType:n,depth:p=0},d)=>{const g={tag:"li",children:t,dataset:{value:c,label:e},className:[kn,`${kn}-depth-${p}`,`component-type-${n}`],action:{mousedown:({target:m})=>{m=Bo(m),d.setValue(m),d.selectOption(m),d.hideList()},mouseover:({target:m})=>{m=Bo(m),d.removeHighlight(),d.highlightComponent(m)},mouseleave:({target:m})=>{m=Bo(m),d.removeHighlight()}}};return U.create(g)},kg=(c,e)=>{const t=c.data.options.map((p,d)=>{const g=`${c.address}.options[${d}]`,m=p.label,l=p.label;return Oh({value:g,textLabel:m,htmlLabel:l,componentType:"option",depth:1},e)});return U.create({tag:"ul",attrs:{className:[Xs,"options-list"]},children:t})},Ig=c=>{const e=c.value,t=[],n=ce.flatList();return Object.entries(n).reduce((d,[g,m])=>{const l=Ih(m,c.key);if(l){const f=m.name,r={tag:"span",content:` ${st(f)}`,className:"component-type"},o=`${f}.${l}`;t.push(o);const s=Mg(t,o),a={tag:"span",content:s,className:"component-label-count"},i=[`${l} `,a,r],u=[l,s].join(" ").trim();if(m.isCheckable){const y=kg(m,c);i.push(y)}const h=Rg({value:g,textLabel:u,htmlLabel:i,componentType:f,selectedId:e});d.push(Oh(h,c))}return d},[])};class Og{lastCache=Date.now();optionsCache=null;constructor({key:e,value:t,className:n,onChange:p=ws}){this.key=e,this.className=[n||this.key.replace(/\./g,"-")].flat(),this.value=t,this.onChange=p||ws,this.events=[],this.build()}createProxy(){return new Proxy(this,{get(e,t){if(t in e)return e[t];if(t in e.dom){const n=e.dom[t];return typeof n=="function"?n.bind(e.dom):n}},set(e,t,n){return t in e?e[t]=n:e.dom[t]=n,!0}})}get isAddress(){return Pe(this.value)}get valueComponent(){return Pe(this.value)&&ce.getAddress(this.value)}build(){const e=n=>{const p=this.list,d=this.getActiveOption();let m=new Map([[38,()=>{const l=this.getPreviousOption(d);l&&this.selectOption(l)}],[40,()=>{const l=this.getNextOption(d);l&&this.selectOption(l)}],[13,()=>{d&&(this.selectOption(d),this.setValue(d),p.style.display==="none"?this.showList(d):this.hideList()),n.preventDefault()}],[27,()=>{this.hideList()}]]).get(n.keyCode);return m||(m=()=>!1),m()},t={focus:({target:n})=>{this.updateOptions(),n.parentElement.classList.add(`${Et}-focused`);const p=U.toggleElementsByStr(this.list.querySelectorAll(`.${kn}-depth-0`),n.value);n.addEventListener("keydown",e);const d=this.list.querySelector(".active-option")||p[0];this.showList(d)},blur:({target:n})=>{n.parentElement.classList.remove(`${Et}-focused`),n.removeEventListener("keydown",e),this.hideList()},input:n=>{const{value:p}=n.target,d=U.toggleElementsByStr(this.list.querySelectorAll("li"),p);if(p.length===0&&this.clearValue(),d.length===0)this.hideList();else{const g=this.getActiveOption()||d[0];this.showList(g)}this.setValue({dataset:{label:p,value:p}})}};return this.displayField=U.create({tag:"input",autocomplete:"off",action:t,attrs:{type:"text",className:Tg,value:this.label||this.value,placeholder:Q.get(`${this.key}.placeholder`)}}),this.hiddenField=U.create({tag:"input",attrs:{type:"hidden",className:Et,value:this.value}}),this.list=U.create({tag:"ul",attrs:{className:Xs}}),this.clearButton=U.create({tag:"span",content:U.icon("remove"),className:"clear-button hidden",action:{click:()=>this.clearValue()}}),this.dom=U.create({children:[this.displayField,this.clearButton,this.hiddenField],className:[Et,this.className].flat(),action:{onRender:n=>{this.stage=n.closest(".formeo-stage"),this.value&&(this.displayField.value=this.label),this.clearButton.classList.toggle("hidden",!this.value.length)}}}),this.dom}get label(){if(!Pe(this.value))return this.value;const e=this.value&&ce.getAddress(this.value);return e&&Ih(e,`${this.key}`)||this.value}updateOptions(){let e=this.optionsCache;const t=Date.now();(t-this.lastCache>zs*5||!e)&&(U.empty(this.list),e=this.generateOptions(),this.lastCache=t),this.list.children.length||this.list.append(...e)}generateOptions(){return this.optionsCache=Ig(this),this.optionsCache}setListPosition(){const{offsetHeight:e,offsetWidth:t}=this.displayField,n=this.displayField.closest(".formeo-stage").getBoundingClientRect(),p=this.displayField.getBoundingClientRect(),d={position:"absolute",top:`${p.y+e-n.y}px`,left:`${p.x+window.scrollX-n.x+2}px`,width:`${t}px`};Object.assign(this.list.style,d)}showList(e,t=this.list){this.stage.contains(this.list)||this.stage.appendChild(this.list),this.setListPosition(),this.selectOption(e),$e.slideDown(t,gt)}hideList(e=this.list){$e.slideUp(e,gt),this.removeHighlight(),this.stage.contains(this.list)&&this.stage.removeChild(this.list)}getActiveOption(e=this.list){const t=e.querySelector(".active-option");return t?.style.display!=="none"?t:null}getPreviousOption(e){let t=e;do t=t?t.previousSibling:null;while(t!=null&&t.style.display==="none");return t}getNextOption(e){let t=e;do t=t?t.nextSibling:null;while(t!=null&&t.style.display==="none");return t}selectOption(e,t=this.list){const n=t.querySelectorAll("li");for(const p of n){const{dataset:{value:d}}=p;p.classList.remove("active-option"),Pe(d)&&ce.getAddress(d)?.dom?.classList.remove(Nt)}e&&(e.classList.add("active-option"),this.highlightComponent(e))}removeHighlight(){const e=document.getElementsByClassName(Nt);for(const t of e)t.classList.remove(Nt)}highlightComponent(e){const{dataset:{value:t}}=e;if(Pe(t)){const{componentAddress:n,isOptionAddress:p,optionIndex:d}=mt(t).reduce((m,l)=>l==="options"?(m.isOptionAddress=!0,m):m.isOptionAddress?(m.optionIndex=+l,m):(m.componentAddress.push(l),m),{componentAddress:[],optionIndex:null,isOptionAddress:!1}),g=ce.getAddress(n);g?.dom&&(g.dom.classList.add(Nt),p&&g.dom.querySelectorAll(".field-preview .f-checkbox, .field-preview .f-radio")[d]?.classList.add(Nt))}}clearValue(){this.selectOption(null),this.setValue({dataset:{label:"",value:""}}),this.displayField.focus()}setValue(e){const{label:t,value:n}=e.dataset;this.displayField.value=t,this.hiddenField.value=n,this.value=n,this.clearButton.classList.toggle("hidden",!n.length),this.onChange?.({target:this.hiddenField})}}function Ho({key:c,value:e,type:t="text",checked:n}){const p={tag:"input",attrs:{type:t,value:e,placeholder:Q.get(`${c}.placeholder`)||st(c)},className:[c.replace(/\./g,"-")],config:{}};return n&&(p.attrs.checked=!0),p}function Dh(c){const e=Q.get(c);if(e)return e;const t=c.split(".");return Q.get(t[t.length-1])}const _t={autocomplete:(...c)=>new Og(...c).createProxy(),string:({key:c,value:e})=>Ho({key:c,value:e}),boolean:({key:c,value:e})=>Ho({key:c,value:e,type:c==="selected"?"radio":"checkbox",checked:!!e}),number:({key:c,value:e})=>Ho({key:c,value:e,type:"number"}),array:({key:c,value:e})=>({tag:"select",attrs:{placeholder:Dh(`placeholder.${c}`)},className:[c.replace(/\./g,"-")],options:e}),object:c=>Object.entries(c).map(([e,t])=>_t[U.childType(t)]({key:e,value:t}))},Dg={boolean:(c,e)=>({click:({target:t})=>{if(t.type==="radio"){const n=e.data.options.map(p=>({...p,selected:!1}));e.set("options",n)}e.set(c,t.checked),e.updatePreview()}}),string:(c,e)=>({input:({target:{value:t}})=>{e.set(c,t),e.debouncedUpdatePreview()}}),number:(c,e)=>({input:({target:{value:t}})=>{e.set(c,Number(t)),e.debouncedUpdatePreview()}}),array:(c,e)=>({change:({target:{value:t}})=>{e.set(c,t),e.debouncedUpdatePreview()}}),object:()=>({})},Nh="hidden-property",Ng="hidden-option",zo=/\.options\[\d+\]$/,Fg={"if-sourceProperty":pn(fn,Zl,Jl),"if-targetProperty":pn(fn),"then-targetProperty":pn(fn,Zl,Jl),...Object.entries(Yf).reduce((c,[e,t])=>(c[`if-${e}`]=t,c[`then-${e}`]=t,c),{})},Fh={assignment:Ft,comparison:Ft,logical:Ft,source:({key:c,value:e,onChange:t,conditionType:n})=>_t.autocomplete({key:`${n}.condition.${c}`,value:e,onChange:t,className:`condition-${c}`}),sourceProperty:Ft,targetProperty:Ft,target:c=>Fh.source(c),value:({key:c,value:e,onChange:t},n)=>{const p=_t.string({key:`condition.${c}`,value:e});return p.action={input:t},p}};function Pg({key:c,value:e,conditionType:t}){const n=`${t}-${c}`,p=Fg[n];return Object.entries(p||{}).map(([d,g])=>Wg({fieldName:c,fieldValue:e,key:d,optionValue:g}))}function Wg({fieldName:c,fieldValue:e,key:t,optionValue:n}){return{label:Q.get(`${c}.${t}`)||st(t).toLowerCase(),value:n,selected:n===e}}function Ft({key:c,value:e,onChange:t,conditionType:n}){const p=Pg({key:c,value:e,conditionType:n}),d=_t.array({key:`condition.${c}`,value:p});return d.action={change:t},d}const Bg=c=>!c?.classList.contains(Nh),Hg={sourceProperty:c=>{const e=c.get("source"),t=c.get("sourceProperty"),n=!!e.value,p=!!e.value.match(zo);return eu(p,t),!n},comparison:c=>{const e=c.get("source"),t=c.get("sourceProperty"),n=!!e.value,p=!!e.value.match(zo);return!n||p||t.value!=="value"},assignment:c=>{const e=c.get("target"),t=c.get("targetProperty");return!!!e.value||t.value.startsWith("is")},targetProperty:c=>{const e=c.get("target"),t=c.get("targetProperty"),n=!!e.value.match(zo);return eu(n,t),!Sf(e.value)},target:c=>{const e=c.get("source"),t=c.get("sourceProperty"),n=!!e?.value;return t&&!n?!0:t&&t?.value!=="value"},value:c=>{const e=c.get("target"),t=c.get("targetProperty");return t===void 0?!1:e&&!e.value||!Bg(c.get("comparison"))||t.value===Ph?!0:t.value.startsWith("is")}},Jc=c=>{for(const[e,t]of c){const n=!!Hg[e]?.(c)||!1;t.classList.toggle(Nh,n)}},Ph="isChecked",jo=c=>c.value.endsWith("Checked"),eu=(c,e)=>{if(c&&jo(e))return null;const t=Array.from(e.querySelectorAll("option")),n=[];for(const p of t){const d=jo(p),g=c?!d:d;g&&n.push(p.value),p.classList.toggle(Ng,g)}n.includes(e.value)&&(e.value=c?Ph:t.find(p=>!jo(p))?.value||e.value)};function zg(c,e=qf){return e.reduce((t,n)=>(c[n]!==void 0&&t.push([n,c[n]]),t),[])}class jg{constructor({conditionValues:e,conditionType:t,conditionCount:n,index:p},d){this.values=new Map(zg(e)),this.conditionType=t,this.parent=d,this.baseAddress=`${d.address}.${t}`,this.fields=new Map,this.conditionCount=n,this.index=p,this.dom=this.generateDom()}setConditionIndex(e){this.index=e}get address(){return`${this.baseAddress}[${this.index}]`}destroy(){const e=ce.getAddress(this.baseAddress);e.splice(this.index,1),ce.setAddress(this.baseAddress,e),$e.slideUp(this.dom,gt,()=>{this.dom.remove()})}label(){return this.index?null:{tag:"label",className:`condition-label ${this.conditionType}-condition-label`,content:Q.get(`condition.type.${this.conditionType}`)}}generateDom(){const e=[];for(const[p,d]of this.values){const g=r=>this.onChangeCondition({key:p,target:r.target}),m={key:p,value:d,conditionType:this.conditionType,onChange:g},l=Fh[p](m,this.values),f=l.dom||U.create(l);this.fields.set(p,l.dom?l:f),e.push(f)}const n={children:[this.label(),...e,...this.generateConditionTypeActionButtons()],className:`f-condition-row ${this.conditionType}-condition-row display-none`,action:{onRender:p=>{this.processUiState()}}};return U.create(n)}generateConditionTypeActionButtons(){const e=[],t="manage-condition-type",n=g=>`${g}-condition-type`,p=U.btnTemplate({title:Q.get(`remove${this.conditionType}Condition`),className:[t,n("remove")],content:U.icon("minus"),action:{click:()=>this.destroy(),mouseover:g=>{this.dom.classList.add("to-remove")},mouseout:g=>{this.dom.classList.remove("to-remove")}}});e.push(p);const d=U.btnTemplate({title:Q.get(`add${this.conditionType}Condition`),className:[t,n("add")],content:U.icon("plus"),action:{click:()=>{const g=this.parent.addConditionType(this.conditionType),m={changedProperty:null,dataPath:g.address,value:g.value,src:g.dom};this.updateDataDebounced(m)}}});return e.push(d),e}get value(){return Array.from(this.fields).reduce((e,[t,n])=>(e[t]=n.value,e),{})}processUiState(){Jc(this.fields),this.dom.classList.remove("display-none")}updateDataDebounced=An(e=>{le.formeoUpdated(e),ce.setAddress(e.dataPath,e.value)});onChangeCondition=({key:e,target:t})=>{const n={changedProperty:e,dataPath:this.address,value:this.value,src:t};Jc(this.fields),this.updateDataDebounced(n)}}const Ug=new Map([["attrs",({itemKey:c})=>c],["options",({itemKey:c,key:e})=>`${c}.${e}`]]),Wh=(c,e)=>{if(e.controlId==="select"){const t=e.editPanels.get("options"),[n,p]=c?En:Zf,d=t.data.map(({[n]:g,...m})=>({[p]:g,...m}));t.setData(d)}},Gg=new Map([["attrs-multiple",c=>({change:({target:e})=>{c.field.controlId==="select"&&Wh(e.checked,c.field)}})]]);class hn{constructor({key:e,index:t,field:n,panel:p,data:d}){this.field=n,this.itemKey=e,this.itemIndex=t,this.panel=p,this.panelName=p.name,this.isDisabled=n.isDisabledProp(e,this.panelName),this.isHidden=this.isDisabled&&n.config.panels[this.panelName].hideDisabled,this.isLocked=n.isLockedProp(e,this.panelName),this.address=`${n.indexName}.${n.id}.${e}`,this.itemSlug=ec(e),this.conditionTypeWrap=new Map,d!==void 0&&this.field.get(this.itemKey)===void 0&&this.field.set(this.itemKey,d);const g=[`field-${this.itemSlug}`,"prop-wrap"];this.isHidden&&g.push("hidden-property"),this.dom=U.create({tag:"li",className:g,children:{className:"component-prop",children:[this.itemInputs(),this.itemControls]}})}get itemValues(){const e=this.field.get(this.itemKey);return e?.constructor===Object?Rn(Object.entries(e),En,"0"):[[this.itemKey,e]]}findOrCreateConditionTypeWrap(e){let t=this.conditionTypeWrap.get(e);return t||(t=U.create({className:`type-conditions-wrap ${e}-conditions-wrap`}),this.conditionTypeWrap.set(e,t),t)}itemInputs(){const e=U.create({className:`${this.panelName}-prop-inputs prop-inputs f-input-group`,children:this.itemValues.map(([t,n])=>this.panelName==="conditions"?this.generateConditionFields(t,n):this.itemInput(t,n))});return this.inputs&&this.inputs.replaceWith(e),this.inputs=e,e}addConditionType=(e,t)=>{const n=this.findOrCreateConditionTypeWrap(e);let p=t;if(!p){const[g]=js()[e],m=n.children.length;e===ah&&(g.logical="||"),p={conditionValues:g,conditionCount:m,index:m}}const d=new jg({conditionType:e,...p},this);return n.appendChild(d.dom),d};removeConditionType=(e,t)=>{const n=this.conditionTypeWrap.get(e),p=n.children[t];p.destroy(),n.removeChild(p.dom)};generateConditionFields=(e,t)=>(this.conditions=new Map,t.forEach((n,p)=>{const d=this.addConditionType(e,{index:p,conditionCount:t.length,conditionValues:n});this.conditions.set(p,d)}),this.findOrCreateConditionTypeWrap(e));get itemControls(){if(this.isLocked)return{className:`${this.panelName}-prop-controls prop-controls`,content:[]};const e={tag:"button",attrs:{type:"button",className:"prop-remove prop-control"},action:{click:()=>{$e.slideUp(this.dom,Ke,n=>{this.field.remove(this.itemKey),n.remove(),this.panel.updateProps()})},mouseover:n=>{this.dom.classList.add("to-remove")},mouseout:n=>{this.dom.classList.remove("to-remove")}},content:U.icon("remove")};return{className:`${this.panelName}-prop-controls prop-controls`,content:[e]}}itemInput(e,t){const n=U.childType(t)||"string",p=Ug.get(this.panelName)?.({itemKey:this.itemKey,key:e})||this.itemKey,d=p.split(".").filter(Number.isNaN).join(".")||e,g=_t[n]({key:e,value:t}),m=`${this.field.shortId}-${ec(p).replace(/-\d+-(selected)/g,"-$1")}`,l={label:this.panelName!=="options"&&(Dh(d)||st(d)),labelAfter:!1},f={name:g.attrs.type==="checkbox"?`${m}[]`:m};f.disabled=this.isDisabled,f.locked=this.isLocked;const r=Gg.get(this.itemSlug)?.(this),o=yp(Dg[n](p,this.field),r||{}),s=ze(_t[n]({key:e,value:t}),{action:o,attrs:f,config:l});return En.includes(e)?{className:"f-addon",children:s}:s}}const Vg={multiple:(c,e)=>{Wh(!!c,e)}};class Kg{constructor(e,t,n){this.type=U.childType(e),this.name=t,this.component=n,this.panelConfig=this.getPanelConfig(this.data)}get data(){const e=this.component.get(this.name);return this.type==="object"?Object.entries(e):e}getPanelConfig(e){return this.props=this.createProps(e),this.editButtons=this.createEditButtons(),{config:{label:Q.get(`panel.label.${this.name}`)},attrs:{className:`${Zu} ${this.name}-panel`},children:[this.props,this.editButtons]}}createProps(e=this.data){this.editPanelItems=Array.from(e).map((n,p)=>{const d=this.type==="array",g=d?`[${p}]`:`.${n[0]}`,m=d?n:{[n[0]]:n[1]};return new hn({key:`${this.name}${g}`,data:m,field:this.component,index:p,panel:this})});const t={tag:"ul",attrs:{className:["edit-group",`${this.component.name}-edit-group`,`${this.component.name}-edit-${this.name}`]},editGroup:this.name,isSortable:this.name==="options",content:this.editPanelItems};return U.create(t)}updateProps(){const e=this.createProps();this.props.replaceWith(e),this.props=e}createEditButtons(){const e=this.name,t=Q.get(`panelEditButtons.${e}`),n={attrs:this.addAttribute,options:this.addOption,conditions:this.addCondition},p=[];if(e==="conditions"){Q.current.clearAll||Q.put("clearAll","Clear All");const m={...U.btnTemplate({content:[U.icon("bin"),Q.get("clearAll")],title:Q.get("clearAll")}),className:`clear-all-${e}`,action:{click:()=>{this.clearAllItems()}}};p.push(m)}const d={...U.btnTemplate({content:t,title:t}),className:`add-${e}`,action:{click:m=>{const l={btnCoords:U.coords(m.target),addAction:n[e]};e==="attrs"&&(l.isDisabled=this.component.isDisabledProp,l.isLocked=this.component.isLockedProp,l.message={attr:Q.get(`action.add.${e}.attr`),value:Q.get(`action.add.${e}.value`)});const f=st(e),r=new window.CustomEvent(`onAdd${f}`,{detail:l});Te.add[e](l),document.dispatchEvent(r)}}};return p.push(d),{className:"panel-action-buttons",content:p}}addAttribute=(e,t)=>{let n=t;const p=xh(e),d=`attrs.${p}`;Q.current[d]||Q.put(d,Lh(e)),typeof n=="string"&&["true","false"].includes(n)&&(n=JSON.parse(n)),this.component.set(`attrs.${e}`,n),Vg[p]?.(n,this.component);const g=this.props.querySelector(`.${this.component.name}-attrs-${p}`),m=new hn({key:d,data:{[p]:n},field:this.component,panel:this});g?g.replaceWith(m.dom):this.props.appendChild(m.dom),this.component.resizePanelWrap()};addOption=()=>{const e=this.component.data.config.controlId,t=this.component.get("options"),n=e==="select"?"option":e,p=Q.get("newOptionLabel",{type:n})||"New Option",d=`${this.name}[${this.data.length}]`,g=t[t.length-1],l={...t.length?g:{},label:p};e!=="button"&&(l.value=ch(p));const f=new hn({key:d,data:l,field:this.component,index:this.props.children.length,panel:this});this.editPanelItems.push(f),this.props.appendChild(f.dom),this.component.debouncedUpdatePreview(),this.component.resizePanelWrap()};addCondition=e=>{const n=`conditions[${this.component.get("conditions").length}]`,p=new hn({key:n,data:e.template,field:this.component,panel:this});this.props.appendChild(p.dom),this.component.set(n,e.template),this.component.resizePanelWrap()};clearAllItems=()=>{const e=this.type==="array"?[]:{},t={type:this.name,removeAction:()=>{this.component.set(this.name,e),this.updateProps()}};Te.remove[this.name](t);const n=st(this.name),p=new window.CustomEvent(`onRemove${n}`,{detail:t});document.dispatchEvent(p)};setData(e){this.data=e,this.component.set(this.name,e),this.updateProps()}}const tu=Object.freeze({type:"field",displayType:"slider"}),dn=c=>({transform:`translateX(${c?`${c}px`:0})`});class Bh{constructor(e){this.opts=ze(tu,e),this.panelDisplay=this.opts.displayType,this.activePanelIndex=0,this.panelNav=this.createPanelNav();const t=this.createPanelsWrap();this.nav=this.navActions(),this.nav.groupChange(this.activePanelIndex);const n=new window.ResizeObserver(([{contentRect:{width:d}}])=>{this.currentWidth!==d&&(this.toggleTabbedLayout(),this.currentWidth=d,this.nav.setTranslateX(this.activePanelIndex,!1))}),p=window.setTimeout(()=>{n.observe(t),window.clearTimeout(p)},zs)}getPanelDisplay(){const e=this.panelsWrap,n=Number.parseInt(U.getStyle(e,"width"),10)>390?"tabbed":"slider",p=this.opts.displayType==="auto";return this.panelDisplay=p?n:this.opts.displayType||tu.displayType,this.panelDisplay}toggleTabbedLayout=()=>{this.getPanelDisplay();const e=this.isTabbed;return this.panelsWrap.parentElement?.classList.toggle("tabbed-panels",e),e&&this.panelNav.removeAttribute("style"),e};resizePanels=()=>{this.toggleTabbedLayout()};createPanelsWrap(){const e=U.create({className:"panels",content:this.opts.panels.map(({config:t,...n})=>n)});return this.opts.type==="field"&&this.sortableProperties(e),this.panelsWrap=e,this.panels=e.children,this.currentPanel=this.panels[this.activePanelIndex],e}sortableProperties(e){const t=e.getElementsByClassName("field-edit-group");return Ne.forEach(t,n=>{n.fieldId=this.opts.id,n.isSortable&&ee.create(n,{animation:150,group:{name:`edit-${n.editGroup}`,pull:!0,put:["properties"]},sort:!0,handle:".prop-order",onSort:p=>{this.propertySave(p.to),this.resizePanels()}})})}createPanelNavLabels(){const e=this.opts.panels.map(p=>({tag:"h5",action:{click:d=>{const g=at(d.target);this.nav.setTranslateX(g,!1),this.nav.groupChange(g)}},content:p.config.label})),t={className:"panel-labels",content:{content:e}},[n]=e;return n.className="active-tab",U.create(t)}createPanelNav(){this.labels=this.createPanelNavLabels();const e={tag:"button",attrs:{className:"next-group",title:Q.get("controlGroups.nextGroup"),type:"button"},dataset:{toggle:"tooltip",placement:"top"},action:{click:n=>this.nav.nextGroup(n)},content:U.icon("triangle-right")},t={tag:"button",attrs:{className:"prev-group",title:Q.get("controlGroups.prevGroup"),type:"button"},dataset:{toggle:"tooltip",placement:"top"},action:{click:n=>this.nav.prevGroup(n)},content:U.icon("triangle-left")};return U.create({tag:"nav",attrs:{className:"panel-nav"},content:[t,this.labels,e]})}get isTabbed(){return this.panelDisplay==="tabbed"}navActions(){const e={},t=this.currentPanel.parentElement,n=this.labels.firstChild,p=n.children,d=this.currentPanel.parentElement.childNodes;this.activePanelIndex=at(this.currentPanel);let g={nav:0,panel:0},m={...g};e.groupChange=r=>(this.activePanelIndex=r,this.currentPanel=d[r],U.removeClasses(d,"active-panel"),U.removeClasses(p,"active-tab"),this.currentPanel.classList.add("active-panel"),p[r].classList.add("active-tab"),this.currentPanel);const l=r=>({nav:-n.offsetWidth*r,panel:-t.offsetWidth*r}),f=({offset:r,reset:o,duration:s=gt,animate:a=!this.isTabbed})=>{const i=[dn(m.panel),dn(r.panel)],u=[dn(m.nav),dn(this.isTabbed?0:r.nav)];if(o){const[T]=i,[$]=u;i.push(T),u.push($)}const h={easing:"ease-in-out",duration:a?s:0,fill:"forwards"},y=t.animate(i,h);n.animate(u,h);const b=()=>{y.removeEventListener("finish",b),o||(m=r)};y.addEventListener("finish",b)};return e.setTranslateX=(r=this.activePanelIndex,o=!0)=>{g=l(r),f({offset:g,animate:o})},e.refresh=(r=this.activePanelIndex)=>{this.activePanelIndex!==r&&e.groupChange(r),e.setTranslateX(this.activePanelIndex,!1),this.resizePanels()},e.nextGroup=()=>{const r=this.activePanelIndex+1;if(r!==d.length){const o=d[r];g={nav:-n.offsetWidth*r,panel:-o.offsetLeft},f({offset:g}),e.groupChange(r)}else g={nav:m.nav-8,panel:m.panel-8},f({offset:g,reset:!0});return this.currentPanel},e.prevGroup=()=>{if(this.activePanelIndex!==0){const r=this.activePanelIndex-1,o=d[r];g={nav:-n.offsetWidth*r,panel:-o.offsetLeft},f({offset:g}),e.groupChange(r)}else g={nav:8,panel:8},f({offset:g,reset:!0})},e}}let Uo=null;const Go=pn(fn);class Yn extends Gs{constructor(e,t={}){const n={...t,id:t.id||We()};super(e,n),this.id=n.id,this.shortId=this.id.slice(0,this.id.indexOf("-")),this.name=e,this.indexName=`${e}s`,this.config=ce[`${this.name}s`].config,ze(this.config,n.config),this.address=`${this.name}s.${this.id}`,this.dataPath=`${this.address}.`,this.editPanels=new Map,this.eventListeners=new Map,this.initEventHandlers()}initEventHandlers(){this.config.events&&Object.entries(this.config.events).forEach(([e,t])=>{this.addEventListener(e,t)})}addEventListener(e,t){this.eventListeners.has(e)||this.eventListeners.set(e,[]),this.eventListeners.get(e).push(t)}removeEventListener(e,t){if(!this.eventListeners?.has(e))return;const n=this.eventListeners.get(e),p=n.indexOf(t);p>-1&&n.splice(p,1)}dispatchComponentEvent(e,t={}){const n={component:this,type:e,timestamp:Date.now(),...t};return this.eventListeners?.has(e)&&this.eventListeners.get(e).forEach(p=>{try{typeof p=="function"&&p(n)}catch(d){console.error(`Error in ${e} event handler for ${this.name} ${this.id}:`,d)}}),n}set(e,t){const n=this.get(e),p=super.set(e,t);return n!==t&&this.dom&&this.dispatchComponentEvent("onUpdate",{path:e,oldValue:n,newValue:t}),p}get js(){return this.data}get json(){return this.data}remove=e=>{if(e){const p=mt(e),d=p.pop(),g=this.get(p);return Array.isArray(g)?_h(d)?g.splice(Number(d),1):this.set(p,g.filter(m=>m!==d)):delete g[d],g}if(this.name==="stage")return null;const t=this.parent,n=this.children;return this.dispatchComponentEvent("onRemove",{path:e,parent:t,children:[...n]}),qn(n,p=>p.remove()),this.dom.parentElement.removeChild(this.dom),Cf(ce.getAddress(`${t.name}s.${t.id}.children`),this.id),t.children.length||t.emptyClass(),t.name==="row"&&t.autoColumnWidths(),ce[`${this.name}s`].delete(this.id)};empty(){const e=this.children.map(t=>(t.remove(),t));return this.dom.classList.add("empty"),e}emptyClass=()=>this.dom.classList.toggle("empty",!this.children.length);getActionButtons(){const e=[`hovering-${this.name}`,"hovering"];return{className:[`${this.name}-actions`,"group-actions"],action:{mouseenter:()=>{ce.stages.active.dom.classList.add(`active-hover-${this.name}`),this.dom.classList.add(...e)},mouseleave:({target:t})=>{this.dom.classList.remove(...e),ce.stages.active.dom.classList.remove(`active-hover-${this.name}`),t.removeAttribute("style")}},children:[{...U.btnTemplate({content:U.icon(`handle-${this.name}`)}),className:["component-handle",`${this.name}-handle`]},{className:["action-btn-wrap",`${this.name}-action-btn-wrap`],children:this.buttons}]}}getComponentTag=()=>U.create({tag:"span",className:["component-tag",`${this.name}-tag`],children:[(this.isColumn||this.isField)&&U.icon("component-corner",{className:"bottom-left"}),U.icon(`handle-${this.name}`),st(this.name),(this.isColumn||this.isRow)&&U.icon("component-corner",{className:"bottom-right"})].filter(Boolean)});toggleEdit(e=!this.isEditing){this.isEditing=e;const t=this.dom,n="editing",p=`${n}-${this.name}`,d=this.dom.querySelector(`.${this.name}-edit`);$e.slideToggle(d,Ke,e),this.name==="field"&&($e.slideToggle(this.preview,Ke,!e),t.parentElement.classList.toggle(`column-${p}`,e)),t.classList.toggle(n,e),t.classList.toggle(p,e)}get buttons(){if(this.actionButtons)return this.actionButtons;const e={handle:(g=`handle-${this.name}`)=>({...U.btnTemplate({content:U.icon(g)}),className:["component-handle"]}),move:(g="move")=>({...U.btnTemplate({content:U.icon(g)}),className:["item-move"],meta:{id:"move"}}),edit:(g="edit")=>({...U.btnTemplate({content:U.icon(g)}),className:["edit-toggle"],meta:{id:"edit"},action:{click:()=>{this.toggleEdit()}}}),remove:(g="remove")=>({...U.btnTemplate({content:U.icon(g)}),className:["item-remove"],meta:{id:"remove"},action:{click:()=>{$e.slideUp(this.dom,Ke,()=>{this.name==="column"?(this.parent.autoColumnWidths(),this.remove()):this.remove()})}}}),clone:(g="copy")=>({...U.btnTemplate({content:U.icon(g)}),className:["item-clone"],meta:{id:"clone"},action:{click:()=>{this.clone(this.parent),this.name==="column"&&this.parent.autoColumnWidths()}}})},{buttons:t,disabled:n}=this.config.actionButtons,d=t.filter(g=>!n.includes(g)).map(g=>e[g]?.()||g);return this.actionButtons=d,this.actionButtons}get index(){return at(this.dom)}removeClasses=e=>{const t={string:()=>this.dom.classList.remove(e),array:()=>e.map(n=>this.dom.classList.remove(n))};return t.object=t.string,t[U.childType(e)](this.dom)};get parentType(){return Pf.get(this.name)}get parent(){const e=this.parentType;if(!this.dom||!e)return null;const t=this.dom.closest(`.${Hs[e]}`);return t&&U.asComponent(t)}get children(){if(!this.dom)return[];const e=this.domChildren,t=Xl.get(this.name);return Ys(e,n=>ce.getAddress(`${t}s.${n.id}`)).filter(Boolean)}loadChildren=(e=this.data.children)=>e.map(t=>this.addChild({id:t}));get domChildren(){const e=this.dom.querySelector(".children");return e?e.children:[]}addChild(e={},t=this.domChildren.length){let n=e;typeof e!="object"&&(n={id:n});const p=this.dom.querySelector(".children"),{id:d=We()}=n,g=Xl.get(this.name);if(!g)return null;const m=`${g}s`,l=ce.getAddress(`${m}.${d}`)||ce[m].add(d,n);t>=p.children.length?p.appendChild(l.dom):p.children[t].before(l.dom),this.dispatchComponentEvent("onAddChild",{parent:this,target:l,child:l,index:t}),l.dispatchComponentEvent("onAdd",{parent:this,target:l,index:t,addedVia:"addChild"}),this.config.events?.onAddChild?.({parent:this,child:l});const f=l.get("children");return f?.length&&l.loadChildren(f),this.removeClasses("empty"),this.saveChildOrder(),l}saveChildOrder=()=>{if(this.render)return;const e=this.children.map(({id:t})=>t);return this.set("children",e),e};onAdd({from:e,to:t,item:n,newIndex:p}){e.classList.contains(rt)||(e=e.parentElement);const d=Le(e),g=Le(t.parentElement),m=()=>{this.saveChildOrder(),this.removeClasses("empty")},l=new Map([[-2,()=>{const o=this.addChild({},p).addChild();return o.addChild.bind(o)}],[-1,()=>{const o=this.addChild({},p);return o.addChild.bind(o)}],[0,()=>this.addChild.bind(this)],[1,o=>{const s=at(this.dom);return()=>this.parent.addChild(o,s+1)}],[2,o=>()=>this.parent.parent.addChild(o)]]),r={controls:async()=>{if(!Uo){const{default:b}=await At(async()=>{const{default:T}=await Promise.resolve().then(()=>mm);return{default:T}},void 0);Uo=b}const{controlData:{meta:{id:o},...s}}=Uo.get(n.id);Gn(s,"config.controlId",o);const a=o.startsWith("layout-")?o.replace(/^layout-/,""):"field",u=De({stage:{row:0,column:-1,field:-2},row:{row:1,column:0,field:-1},column:{row:2,column:1,field:0},field:1},`${this.name}.${a}`),h=l.get(u)();return U.remove(n),h(s,p)},row:()=>{const o={stage:-1,row:0,column:1};return(l.get(o[g])||bs)()?.({id:n.id},p)},column:()=>{const o={stage:-2,row:-1};return(l.get(o[g])||bs)()?.(n.id)}}[d]?.(n,p);return this.dispatchComponentEvent("onAdd",{from:e,to:t,item:n,newIndex:p,fromType:d,toType:g,addedComponent:r,addedVia:"dragDrop"}),m(),r}onSort=()=>this.saveChildOrder();onRemove({from:{parentElement:e}}){return e.classList.contains(Qe)&&e.classList.remove("column-editing-field"),this.name!=="stage"&&!this.children.length?this.remove():(this.emptyClass(),this.saveChildOrder())}onEnd=({to:{parentElement:e},from:{parentElement:t}})=>{e?.classList.remove(`hovering-${Le(e)}`),t?.classList.remove(`hovering-${Le(t)}`)};onRender(){this.dispatchComponentEvent("onRender",{dom:this.dom});const{events:e}=this.config;if(!e)return null;e.onRender&&U.onRender(this.dom,e.onRender)}set config(e){const t=De(e,"all"),n=De(this.data,"config.controlId"),p=n&&De(e,n),d=De(e,this.id),g=[t,p,d].reduce((m,l)=>l?ze(m,l):m,this.configVal);this.configVal=g}get config(){return this.configVal}runConditions=()=>{const e=this.get("conditions");return e?.length?e.map(n=>{const p=this.processConditions(n.if),d=this.processResults(n.then);return p.map(g=>this.evaluateConditions(g)&&this.execResults(d))}):null};getComponent(e){const[t,n]=e.split("."),p=ce[t];return n===this.id?this:p?.get(n)}value=(e,t)=>{const n=e.split("."),p=this.getComponent(e),d=p&&n.slice(2,n.length).join(".");return[!p,!d,!Go[d]].some(Boolean)?e:t?p.set(Go[d],t):p.get(Go[d])};getResult=e=>({"=":(n,p,d)=>n.set(p,d)})[e];processResults=e=>e.map(({operator:t,target:n,value:p})=>{const d=this.getComponent(n),g=d&&n.split(".").slice(2,n.length).join(".");return{target:d,propertyPath:g,action:this.getResult(t),value:this.value(p)}});execResults=e=>{const t=e.map(n=>this.execResult(n));return Promise.all(t)};execResult=({target:e,action:t,value:n,_propertyPath:p})=>new Promise((d,g)=>{try{return d(t(e,n))}catch(m){return g(m)}});cloneData=()=>{const e={...Ye(this.data),id:We()};return this.name!=="field"&&(e.children=[]),e};clone=(e=this.parent)=>{const t=e.addChild(this.cloneData(),this.index+1);return this.name!=="field"&&this.cloneChildren(t),this.dispatchComponentEvent("onClone",{original:this,clone:t,parent:e}),t};cloneChildren(e){for(const t of this.children)t?.clone(e)}createChildWrap=e=>U.create({tag:"ul",attrs:{className:"children"},children:e});get isRow(){return this.name===Br.row}get isColumn(){return this.name===Br.column}get isField(){return this.name===Br.field}isDisabledProp=(e,t="attrs")=>{const n=this.config.panels[t];return n?n.disabled.concat(this.get("config.disabled")).includes(e):!1};isLockedProp=(e,t="attrs")=>{const n=this.config.panels[t];return n?n.locked.concat(this.get("config.locked")).includes(e):!1};get editWindow(){const e={className:["component-edit",`${this.name}-edit`,"slide-toggle","formeo-panels-wrap"]},t=this.editPanels.size;return t&&(e.className.push(`panel-count-${t}`),e.content=[this.panels.panelNav,this.panels.panelsWrap],this.panelNav=this.panels.nav,this.resizePanelWrap=this.panels.nav.refresh),e.action={onRender:()=>{if(t===0){const n=this.dom.querySelector(".edit-toggle"),p=this.dom.querySelector(`.${this.name}-actions`),d=p.getElementsByTagName("button");p.style.maxWidth=`${d.length*d[0].clientWidth}px`,U.remove(n)}else this.resizePanelWrap()}},U.create(e)}updateEditPanels=()=>{if(!this.config)return null;const e=["object","array"],t=pt([...this.config.panels.order,...Object.keys(this.data)]),n=["children","config","meta","action","events",...this.config.panels.disabled],p=t.filter(g=>!n.includes(g));for(const g of p){const m=this.get(g),l=U.childType(m);if(e.includes(l)){const f=new Kg(m,g,this);this.editPanels.set(f.name,f)}}const d={panels:Array.from(this.editPanels.values()).map(({panelConfig:g})=>g),id:this.id,displayType:"auto"};this.panels=new Bh(d),this.dom&&(this.dom.querySelector(".panel-nav").replaceWith(this.panels.panelNav),this.dom.querySelector(".panels").replaceWith(this.panels.panelsWrap))}}class qg{constructor(){this.onMove=this.onMove.bind(this),this.onStop=this.onStop.bind(this),this.cleanup=this.cleanup.bind(this)}getRowWidth(e){const t=e.querySelector(".children");if(!t)return 0;const n=t.children.length,p=U.getStyle(t,"gap")||"0px",d=parseFloat(p,10)||0;return this.totalGapWidth=d*(n-1),t.offsetWidth-this.totalGapWidth}validateResizeTarget(e,t){return e&&t&&e.offsetWidth&&t.offsetWidth}onStart(e){if(e.preventDefault(),this.resized=!1,e.button!==0)return;const t=e.target.parentElement,n=t.nextSibling||t.previousSibling,p=t.closest(`.${Xe}`);if(!this.validateResizeTarget(t,n)){console.warn("Invalid resize targets"),this.cleanup();return}if(this.startX=e.type==="touchstart"?e.touches[0].clientX:e.clientX,p.classList.add(Wr),this.columnPreset=p.querySelector(`.${Ju}`),this.originalColumnClass=t.className,this.originalSiblingClass=n.className,t.className=t.className.replace(Ss,""),n.className=n.className.replace(Ss,""),this.colStartWidth=t.offsetWidth,this.sibStartWidth=n.offsetWidth,this.rowWidth=this.getRowWidth(p),this.rowWidth<=0){console.warn("Invalid row width calculated"),this.cleanup();return}this.column=t,this.sibling=n,this.row=p;try{window.addEventListener("pointermove",this.onMove,!1),window.addEventListener("pointerup",this.onStop,!1)}catch(d){console.error("Failed to initialize resize listeners:",d),this.cleanup()}}calculateNewWidths(e){const t=this.colStartWidth+e-this.startX,n=this.sibStartWidth-e+this.startX,p=parseFloat(Pr(t,this.rowWidth)),d=parseFloat(Pr(n,this.rowWidth));return p<10||d<10?null:{colWidth:ys(p.toFixed(1)),siblingColWidth:ys(d.toFixed(1))}}onMove(e){e.preventDefault();const{column:t,sibling:n}=this,p=e.type==="touchmove"?e.touches[0].clientX:e.clientX,d=this.calculateNewWidths(p);if(!d)return;const{colWidth:g,siblingColWidth:m}=d;t.dataset.colWidth=g,n.dataset.colWidth=m,t.style.width=g,n.style.width=m,this.resized=!0}onStop(){const{column:e,sibling:t}=this;window.removeEventListener("pointermove",this.onMove),window.removeEventListener("pointerup",this.onStop),this.resized&&(this.setCustomWidthValue(),ce.setAddress(`columns.${e.id}.config.width`,e.dataset.colWidth),ce.setAddress(`columns.${t.id}.config.width`,t.dataset.colWidth),this.row.classList.remove(Wr),this.resized=!1,this.cleanup())}cleanup(){this.column&&this.originalColumnClass&&(this.column.className=this.originalColumnClass),this.sibling&&this.originalSiblingClass&&(this.sibling.className=this.originalSiblingClass),this.row&&this.row.classList.remove(Wr),window.removeEventListener("pointermove",this.onMove),window.removeEventListener("pointerup",this.onStop)}setCustomWidthValue(){const e=this.columnPreset;let t=e.querySelector(`.${Cs}`);const n=this.row.querySelector(".children").children,p=Ys(n,m=>Pr(m.clientWidth,this.rowWidth).toFixed(1)),d=p.join(","),g=p.join(" | ");return t||(t=U.create({tag:"option",attrs:{className:Cs,value:d,selected:!0},content:g}),e.append(t)),t.value=d,t.textContent=g,d}}const Yg=()=>Object.freeze({config:{width:"100%"},children:[],className:[Qe]}),nu={resizeHandle:c=>({className:"resize-x-handle",action:{pointerdown:c.onStart.bind(c)},content:[U.icon("triangle-down"),U.icon("triangle-up")]}),editWindow:()=>({className:"column-edit group-config"})};class Xg extends Yn{constructor(e){super("column",{...Yg(),...e});const t=this.createChildWrap();this.dom=U.create({tag:"li",className:[Qe,"empty"],dataset:{hoverTag:Q.get("column")},id:this.id,content:[this.getComponentTag(),this.getActionButtons(),nu.editWindow(),nu.resizeHandle(new qg),t]}),this.processConfig(),le.columnResized=new window.CustomEvent("columnResized",{detail:{column:this.dom,instance:this}}),ee.create(t,{animation:150,fallbackClass:"field-moving",group:{name:"column",pull:!0,put:["column","controls"]},sort:!0,disabled:!1,onEnd:this.onEnd.bind(this),onAdd:this.onAdd.bind(this),onSort:this.onSort.bind(this),onRemove:this.onRemove.bind(this),onMove:n=>{n.from!==n.to&&n.from.classList.remove("hovering-column")},draggable:`.${It}`,handle:".item-move"})}processConfig(){const e=Ne.get(this.data,"config.width");e&&this.setDomWidth(e)}refreshFieldPanels=()=>{for(const e of this.children)e.panels.nav.refresh()};setDomWidth=e=>{this.dom.dataset.colWidth=e,this.dom.style.width=e};setWidth=e=>(this.setDomWidth(e),this.set("config.width",e))}const Qg={actionButtons:{buttons:["clone","move","remove"],disabled:[]}};let Zg=class extends Vn{constructor(e){super("columns",e),this.config={all:Qg}}Component(e){return new Xg(e)}};const Hh=new Zg,Jg=()=>Object.freeze({config:{fieldset:!1,legend:"",inputGroup:!1},children:[],className:[Xe]});class em extends Yn{constructor(e){super("row",{...Jg(),...e});const t=this.createChildWrap();this.dom=U.create({tag:"li",className:[Xe,"empty"],dataset:{hoverTag:Q.get("row"),editingHoverTag:Q.get("editing.row")},id:this.id,content:[this.getComponentTag(),this.getActionButtons(),this.editWindow,t]}),ee.create(t,{animation:150,fallbackClass:"column-moving",group:{name:"row",pull:!0,put:["row","column","controls"]},sort:!0,disabled:!1,onRemove:this.onRemove.bind(this),onEnd:this.onEnd.bind(this),onAdd:this.onAdd.bind(this),onSort:this.onSort.bind(this),draggable:`.${Qe}`,handle:".item-move"})}get editWindow(){const e={tag:"input",id:`${this.id}-fieldset`,attrs:{type:"checkbox",checked:this.get("config.fieldset"),ariaLabel:Q.get("row.settings.fieldsetWrap.aria")},action:{click:({target:{checked:s}})=>{this.set("config.fieldset",!!s)}},config:{label:Q.get("row.settings.fieldsetWrap")}},t={tag:"input",id:`${this.id}-inputGroup`,attrs:{type:"checkbox",checked:this.get("config.inputGroup"),ariaLabel:Q.get("row.settings.inputGroup.aria")},action:{click:({target:{checked:s}})=>this.set("config.inputGroup",s)},config:{label:Q.get("row.makeInputGroup"),description:Q.get("row.makeInputGroupDesc")}},n={tag:"span",content:" ⓘ",dataset:{tooltip:"Row title will be used as the legend for the fieldset"}},d={className:"input-group",content:{tag:"input",attrs:{type:"text",ariaLabel:"Legend for fieldset",value:this.get("config.legend"),placeholder:"Title"},config:{label:{children:["Row Title",n]}},action:{input:({target:{value:s}})=>this.set("config.legend",s)},className:""}},g=U.formGroup([e,d]),m={tag:"label",content:Q.get("defineColumnWidths"),className:"col-sm-4 form-control-label"};this.columnPresetControl=U.create(this.columnPresetControlConfig);const l={className:"col-sm-8",content:this.columnPresetControl,action:{onRender:()=>{this.updateColumnPreset()}}},f=U.formGroup([m,l],"row"),r=[t,"hr",g,"hr",f];return U.create({className:`${this.name}-edit group-config`,action:{onRender:s=>{const a=r.map(i=>U.create(i));s.append(...a)}}})}onAdd(...e){super.onAdd(...e),this.autoColumnWidths()}onRemove(...e){super.onRemove(...e),this.autoColumnWidths()}autoColumnWidths=()=>{const e=this.children;if(!e.length)return;const t=Number.parseFloat((100/e.length).toFixed(1))/1;for(const n of e){n.removeClasses(Ss);const p=n.dom,d=ys(t);n.set("config.width",d),p.style.width=d,p.dataset.colWidth=d;const g=setTimeout(()=>{clearTimeout(g),n.refreshFieldPanels()},gt);document.dispatchEvent(le.columnResized)}this.updateColumnPreset()};updateColumnPreset=()=>{this.columnPresetControl.innerHTML="";const e=this.getColumnPresetOptions.map(({label:t,...n})=>U.create({tag:"option",content:t,attrs:n}));this.columnPresetControl.append(...e)};setColumnWidths=e=>{typeof e=="string"&&(e=e.split(",")),this.children.forEach((t,n)=>{t.setWidth(`${e[n]}%`),t.refreshFieldPanels()})};get getColumnPresetOptions(){const e=this.children,n=Bf.get(e.length-1)||[],p=e.map(d=>{const g=d.get("config.width")||"";return Number(g.replace("%","")).toFixed(1)}).join(",");if(n.length){const d=n.slice();return!d.find(m=>m.value===p)&&d.push({value:p,label:p.replace(/,/g," | "),className:Cs}),d.map(m=>{const l={...m};return l.selected=m.value===p,l})}return[]}get columnPresetControlConfig(){return{tag:"select",attrs:{ariaLabel:Q.get("defineColumnLayout"),className:Ju},action:{change:({target:t})=>{const{value:n}=t;this.setColumnWidths(n)}},options:this.getColumnPresetOptions}}}const tm={actionButtons:{buttons:["move","edit","clone","remove"],disabled:[]}};let nm=class extends Vn{constructor(e){super("rows",e),this.config={all:tm}}Component(e){return new em(e)}};const Qs=new nm,im=()=>({conditions:[js()],children:[]});class rm extends Yn{constructor(e){super("stage",{...im(),...e}),this.updateEditPanels(),this.debouncedUpdateEditPanels=An(this.updateEditPanels),Q.get("Untitled Form"),Q.get("Untitled Form"),Q.get("Form Title"),Q.get("Form novalidate"),Q.get("Tags");const t=this.createChildWrap();this.dom=U.create({attrs:{className:[kt,"empty"],id:this.id},children:[this.getComponentTag(),this.getActionButtons(),this.editWindow,t]}),ee.create(t,{animation:150,fallbackClass:"row-moving",group:{name:"stage",pull:!0,put:["row","column","controls"]},sort:!0,disabled:!1,onAdd:this.onAdd.bind(this),onRemove:this.onRemove.bind(this),onStart:()=>{Jt.active=this},onSort:this.onSort.bind(this),draggable:`.${Xe}`,handle:".item-move"})}empty(e=!0){return new Promise(t=>{e?(this.dom.classList.add("removing-all-fields"),$e.slideUp(this.dom,Ke,()=>{t(super.empty(e)),this.dom.classList.remove("removing-all-fields"),$e.slideDown(this.dom,Ke)})):t(super.empty())})}onAdd(...e){const t=super.onAdd(...e);t&&t.name==="column"&&t.parent.autoColumnWidths()}}const om=()=>({actionButtons:{buttons:["edit"],disabled:[]},panels:{disabled:[],order:["attrs","options","conditions"]}});let sm=class extends Vn{constructor(e){super("stages",e),this.config={all:om()}}Component(e){return new rm(e)}};const Jt=new sm,In={js:new Set,css:new Set},iu=(c,e,t=ws)=>new Promise(n=>fetch(c).then(p=>{if(!p.ok)return n(t(p));n(e?e(p):p)}).catch(p=>t(p))),zh=(c,e)=>{c.removeEventListener("load",zh),e(c.src)},jh=(c,e)=>{c.removeEventListener("load",jh),e(c.src)},Uh=c=>new Promise((e,t)=>{if(In.js.has(c))return e(c);In.js.add(c);const n=U.create({tag:"script",attrs:{type:"text/javascript",async:!0,src:c},action:{load:()=>jh(n,e),error:()=>t(new Error(`${c} failed to load.`))}});document.head.appendChild(n)}),_s=c=>{c=Array.isArray(c)?c:[c];const e=c.map(t=>new Promise((n,p)=>{if(In.css.has(t))return n(t);In.css.add(t);const d=U.create({tag:"link",attrs:{rel:"stylesheet",href:t},action:{load:()=>zh(d,n),error:()=>p(new Error(`${(void 0).src} failed to load.`))}});document.head.appendChild(d)}));return Promise.all(e)},am=c=>{c=Array.isArray(c)?c:[c];const e=c.map(t=>Uh(t));return Promise.all(e)},lm=c=>{c=Array.isArray(c)?c:[c];const e=c.map(t=>_s(t));return Promise.all(e)},cm=c=>{let e=document.getElementById(ot);return e||(e=U.create({id:ot,children:c,attrs:{hidden:!0,style:"display: none;"}}),document.body.insertBefore(e,document.body.childNodes[0])),e},um=async(c=Qu)=>{if(document.getElementById(ot))return;const t=async n=>cm(await n.text());return iu(c,t,()=>iu($f,t))},hm=c=>{const e=Array.isArray(c)?ql.filter(({name:t})=>c.indexOf(t)!==-1):ql;return Promise.all(e.map(({src:t})=>Uh(t)))},dm={js:am,css:lm},Gh=c=>{const e=Object.entries(c).map(([t,n])=>dm[t](n));return Promise.all(e)},ru=()=>{const c=document.getElementById(ot);return window.getComputedStyle(c).visibility==="hidden"},fm=async c=>{if(!ru()&&(await _s(c),!ru()))return await _s(Tf)};class pm{controlCache=new Set;constructor({events:e={},dependencies:t={},controlAction:n,...p}){this.events=e,this.controlData=p,this.controlAction=n,this.dependencies=t,this.id=p.id||We()}get controlId(){return this.controlData.meta?.id||this.controlData.config?.controlId}get dom(){const{meta:e,config:t}=this.controlData,n=this.i18n(t.label)||t.label,p={tag:"button",attrs:{type:"button"},content:[{tag:"span",className:"control-icon",children:U.icon(e.icon)},{tag:"span",className:"control-label",content:n}],action:{focus:({target:d})=>{const g=d.closest(`.${rt}`);return g&&xt.panels.nav.refresh(at(g))},click:({target:d})=>{const g=d.closest(".field-control")?.id;g&&xt.addElement(g)}}};return U.create({tag:"li",id:this.id,className:["field-control",`${e.group}-control`,`${e.id}-control`],content:p,meta:e,action:this.controlAction})}promise(){return Gh(this.dependencies)}i18n(e,t){const n=Q.locale,d=this.definition?.i18n?.[n]||{};return(d[e]?.()??d[e])||Q.get(e,t)}}const gm=Object.freeze({sortable:!0,elementOrder:{},groupOrder:[],groups:[{id:"layout",label:"controls.groups.layout",elementOrder:["row","column"]},{id:"common",label:"controls.groups.form",elementOrder:["button","checkbox"]},{id:"html",label:"controls.groups.html",elementOrder:["header","block-text"]}],disable:{groups:[],elements:[],formActions:[]},elements:[],container:null,panels:{displayType:"slider"}});let Vh=class{constructor(){this.data=new Map,this.buttonActions={focus:({target:e})=>{const t=e.closest(`.${rt}`);return t&&this.panels.nav.refresh(at(t))},click:({target:e})=>{this.addElement(e.parentElement.id)}}}async init(e,t=!1){return await this.applyOptions(e),this.buildDOM(t),this}registerControls(e){return this.controls=[],e.map(t=>{const p=typeof t=="function"?new t:new pm(t);return this.add(p),this.controls.push(p.dom),p.promise()})}groupLabel=e=>Q.get(e)||e||"";groupElements(){let e=this.options.groups.slice(),t=this.controls.slice(),n=[];const p=[];return e=Rn(e,this.groupOrder,"id"),e=e.filter(d=>Kl(d.id,this.options.disable.groups)),n=e.map(d=>{const g={tag:"ul",attrs:{className:[rt,Zu],id:`${d.id}-${rt}`},config:{label:this.groupLabel(d.label)}};if(this.options.elementOrder[d.id]){const m=this.options.elementOrder[d.id],l=pt(m.concat(d.elementOrder));d.elementOrder=l}return t=Rn(t,d.elementOrder,"meta.id"),g.content=t.filter(m=>{const{controlData:l}=this.get(m.id),f=l.meta.id||"",r=[Kl(f,this.options.disable.elements),l.meta.group===d.id,!p.includes(f)];let o=!0;return o=r.every(s=>s===!0),o&&p.push(f),o}),g}),n}add(e=Object.create(null)){const t=Ye(e);return this.data.set(t.id,t),t.controlData.meta.id&&this.data.set(t.controlData.meta.id,t.controlData),t}get(e){return Ye(this.data.get(e))}formActions(){if(this.options.disable.formActions===!0)return null;const e={...U.btnTemplate({content:[U.icon("bin"),Q.get("clear")],title:Q.get("clearAll")}),className:["clear-form"],action:{click:p=>{Qs.size?(le.confirmClearAll=new window.CustomEvent("confirmClearAll",{detail:{confirmationMessage:Q.get("confirmClearAll"),clearAllAction:()=>{Jt.clearAll().then(()=>{const d={src:p.target};le.formeoCleared(d)})},btnCoords:U.coords(p.target)}}),document.dispatchEvent(le.confirmClearAll)):window.alert(Q.get("cannotClearFields"))}}},t={...U.btnTemplate({content:[U.icon("floppy-disk"),Q.get("save")],title:Q.get("save")}),className:["save-form"],action:{click:async({target:p})=>{const{default:d}=await At(async()=>{const{default:l}=await Promise.resolve().then(()=>$m);return{default:l}},void 0),{formData:g}=d,m={action:()=>{},coords:U.coords(p),message:"",button:p};return Te.click.btn(m),Te.save.form(g)}}};return{className:"form-actions f-btn-group",content:Object.entries({clearBtn:e,saveBtn:t}).reduce((p,[d,g])=>(this.options.disable.formActions.includes(d)||p.push(g),p),[])}}buildDOM(e){const t=this.groupElements(),n=this.formActions(),{displayType:p}=this.options.panels;this.panels=new Bh({panels:t,type:"controls",displayType:p});const d=["control-groups","formeo-panels-wrap",`panel-count-${t.length}`],g=U.create({className:d,content:[this.panels.panelNav,this.panels.panelsWrap]}),m=["formeo-controls"];e&&m.push("formeo-sticky");const l=U.create({className:m,content:[g,n]}),f=l.getElementsByClassName("control-group");this.dom=l,this.groups=f;const[r]=f;this.currentGroup=r,this.actions={filter:o=>{const s=o!=="",a=this.controls;let i=g.querySelector(".filtered-term");if(U.toggleElementsByStr(a,o),s){const u=Q.get("controls.filteringTerm",o);l.classList.add("filtered"),i?i.textContent=u:(i=U.create({tag:"h5",className:"filtered-term",content:u}),g.insertBefore(i,g.firstChild))}else i&&(l.classList.remove("filtered"),i.remove())},addElement:this.addElement,addGroup:o=>console.log(o)};for(let o=f.length-1;o>=0;o--){const s=`formeo-controls-${f[o]}`;this.options.sortable||window.localStorage.removeItem(s),ee.create(f[o],{animation:150,forceFallback:!0,fallbackClass:"control-moving",fallbackOnBody:!0,group:{name:"controls",pull:"clone",put:!1},onStart:async({item:a})=>{const{controlData:i}=this.get(a.id);if(this.options.ghostPreview){const{default:u}=await At(async()=>{const{default:h}=await Promise.resolve().then(()=>wm);return{default:h}},void 0);a.innerHTML="",a.appendChild(new u(i).preview)}},onEnd:({from:a,item:i,clone:u})=>{a.contains(u)&&a.replaceChild(i,u)},sort:this.options.sortable,store:{get:()=>{const a=window.localStorage.getItem(s);return a?a.split("|"):[]},set:a=>{const i=a.toArray();window.localStorage.setItem(s,i.join("|"))}}})}return l}layoutTypes={row:()=>Jt.active.addChild(),column:()=>this.layoutTypes.row().addChild(),field:e=>this.layoutTypes.column().addChild(e)};addElement=e=>{const{meta:{group:t,id:n},...p}=De(this.get(e),"controlData");return Gn(p,"config.controlId",n),t==="layout"?this.layoutTypes[n.replace("layout-","")]():this.layoutTypes.field(p)};applyOptions=async(e={})=>{const{container:t,elements:n,groupOrder:p,...d}=ze(gm,e);this.container=t,this.groupOrder=pt(p.concat(["common","html","layout"])),this.options=d;const[g,m,l]=await Promise.all([At(()=>import("./index.min.js"),[]),At(()=>import("./index.min2.js"),[]),At(()=>import("./index.min3.js"),[])]),f=[g.default,m.default,l.default].flat();return Promise.all(this.registerControls([...f,...n]))}};const xt=new Vh,mm=Object.freeze(Object.defineProperty({__proto__:null,Controls:Vh,default:xt},Symbol.toStringTag,{value:"Module"})),vm=()=>({}),ym=new Set(["checkbox","radio"]),bm=new Set(["radio","checkbox","select-one","select-multiple"]);class Kh extends Yn{constructor(e=Object.create(null)){super("field",{...vm(),...e}),this.debouncedUpdateEditPanels=An(this.updateEditPanels),this.debouncedUpdatePreview=An(this.updatePreview),this.label=U.create(this.labelConfig),this.preview=this.fieldPreview(),this.controlId=this.get("config.controlId")||this.get("meta.id");const t=this.getActionButtons(),n=this.actionButtons.some(d=>d.meta?.id==="edit");this.updateEditPanels();const p=U.create({tag:"li",attrs:{className:It},id:this.id,children:[this.label,this.getComponentTag(),t,n&&this.editWindow,this.preview].filter(Boolean),panelNav:this.panelNav,dataset:{hoverTag:Q.get("field")}});this.dom=p,this.isEditing=!1}get labelConfig(){if(!!this.get("config.hideLabel"))return null;const t=this.get("config.editorLabel")||this.get("config.label"),n=this.get("attrs.required"),p=this.config.label.disableHTML;return{className:"prev-label",children:[{...(()=>{const l={tag:"label",attrs:{}};return p?(l.tag="input",l.attrs.value=t,l):(l.attrs.contenteditable=!0,l.children=t,l)})(),action:{input:({target:{innerHTML:l,innerText:f}})=>{super.set("config.label",p?f:l)}}},n&&U.requiredMark()]}}setData=(e,t)=>super.set(e,t);set(e,t){const n=this.setData(e,t);return this.debouncedUpdatePreview(),n}updateLabel(){if(!this.label)return null;const e=U.create(this.labelConfig);this.label.replaceWith(e),this.label=e}updatePreview=()=>{this.updateLabel();const e=this.fieldPreview();this.preview.replaceWith(e),this.preview=e};get defaultPreviewActions(){return{change:e=>{const{target:t}=e,{type:n}=t;if(bm.has(n)){const p=this.preview.querySelectorAll(":checked"),d=this.get("options"),g=d?.[0]?.selected!==void 0?"selected":"checked",m=d.reduce((l,f)=>(l[f.value]=f,l[f.value][g]=!1,l),{});for(const l of p)m[l.value][g]=l.value===m[l.value].value;return super.set("options",Object.values(m)),this.debouncedUpdateEditPanels()}},click:e=>{e.target.contentEditable==="true"&&e.preventDefault()},input:({target:e})=>{if(["input","meter","progress","button"].includes(e.tagName.toLowerCase()))return super.set("attrs.value",e.value),this.debouncedUpdateEditPanels();if(e.contentEditable&&!e.type?.startsWith("select-")){const t=e.parentElement.classList;if(t.contains("f-checkbox")||t.contains("f-radio")){const p=e.parentElement,d=at(p);return this.setData(`options[${d}].label`,e.innerHTML),this.debouncedUpdateEditPanels()}this.setData("content",e.innerHTML||e.value)}}}}fieldPreview(){const{action:e={},...t}=Ye(this.data);t.id=`prev-${this.id}`,t.action=Object.entries(e).reduce((p,[d,g])=>(p[d]=g.bind(this),p),{}),this.data?.config.editableContent&&(t.attrs={...t.attrs,contenteditable:!0});const n={attrs:{className:"field-preview",style:this.isEditing&&"display: none;"},content:U.create(t,!0),action:this.defaultPreviewActions};return U.create(n,!0)}get isCheckable(){return ym.has(this.get("config.controlId"))}}const wm=Object.freeze(Object.defineProperty({__proto__:null,default:Kh},Symbol.toStringTag,{value:"Module"})),Cm=()=>({actionButtons:{buttons:["move","edit","clone","remove"],disabled:[]},panels:{disabled:[],attrs:{disabled:["type"],hideDisabled:!0,locked:[]},order:["attrs","options","conditions"]},label:{disableHTML:!1}});let Sm=class extends Vn{constructor(e){super("fields",e),this.config={all:Cm()}}Component(e){return new Kh(e)}get=e=>{let t=e&&De(this.data,e);if(!t){const n=xt.get(e);n&&(t=this.add(null,n.controlData))}return t};getData=()=>Object.entries(this.data).reduce((e,[t,n])=>{const{conditions:p,...d}=n?.getData()||n;if(p?.length){let g=!0;if(p.length===1){const[m]=p;g=!!m.if[0].source}g&&(d.conditions=p)}return e[t]=d,e},{});load=(e=Object.create(null))=>{const t=Hn(e);this.empty();for(const[n,p]of Object.entries(t)){const{meta:d,...g}=p;d?.id&&Gn(g,"config.controlId",d?.id),this.add(n,g)}return this.data}};const qh=new Sm,wn=Jt,Cn=Qs,Zt=Hh,Sn=qh,On=xt,Am=(c,e=!1)=>c?Ye(Hn(c)):e&&Yu.get(nh)||$n();class Yh extends Gs{constructor(){super("components"),this.disableEvents=!0,this.stages=wn,this.rows=Cn,this.columns=Zt,this.fields=Sn,this.controls=On}load=(e,t)=>{this.empty();const n=Am(e,t.sessionStorage);this.opts=t,this.set("id",n.id),this.add("stages",wn.load(n.stages)),this.add("rows",Cn.load(n.rows)),this.add("columns",Zt.load(n.columns)),this.add("fields",Sn.load(n.fields));for(const p of Object.values(this.get("stages")))p.loadChildren();return this.data};flatList(){const e={};for(const t of Object.keys(this.data.stages))Xu(this.data,t,"stages",e);return e}getChildData=({type:e,id:t})=>{const n=this.get(e,t);if(n)return n.getData()};get json(){return window.JSON.stringify({$schema:`https://cdn.jsdelivr.net/npm/formeo@${Ps}/dist/formData_schema.json`,...this.formData})}get formData(){return{id:this.get("id"),stages:Jt.getData(),rows:Qs.getData(),columns:Hh.getData(),fields:qh.getData()}}set config(e){const{stages:t,rows:n,columns:p,fields:d}=e;wn.config=t,Cn.config=n,Zt.config=p,Sn.config=d}getIndex(e){return this[e]||this[Lf.get(e)]}setAddress(e,t){if(!Pe(e))return;const[n,p,...d]=Array.isArray(e)?e:mt(e),m=this.getIndex(n).get(p);return m?.set(d,t),m}getAddress(e){if(!Pe(e))return;const[t,n,...p]=Array.isArray(e)?e:mt(e),g=this.getIndex(t).get(n);if(!(p.length&&!g))return p.length?g.get(p):g}}const ce=new Yh,$m=Object.freeze(Object.defineProperty({__proto__:null,Columns:Zt,Components:Yh,Controls:On,Fields:Sn,Rows:Cn,Stages:wn,default:ce},Symbol.toStringTag,{value:"Module"})),ou="no-transition",Xh={debug:!1,bubbles:!0,formeoLoaded:c=>{},onAdd:()=>{},onChange:(...c)=>Xh.onUpdate(...c),onUpdate:c=>le.opts?.debug&&console.log(c),onUpdateStage:c=>le.opts?.debug&&console.log(c),onUpdateRow:c=>le.opts?.debug&&console.log(c),onUpdateColumn:c=>le.opts?.debug&&console.log(c),onUpdateField:c=>le.opts?.debug&&console.log(c),onRender:c=>le.opts?.debug&&console.log(c),onSave:c=>{},confirmClearAll:c=>{window.confirm(c.confirmationMessage)&&c.clearAllAction(c)}},Pt=({src:c,...e},t=jn)=>{const n=new window.CustomEvent(t,{detail:e,bubbles:le.opts?.debug||le.opts?.bubbles});return n.data=(c||document).dispatchEvent(n),n},le={init:function(c){return this.opts={...Xh,...c},this},formeoSaved:c=>Pt(c,ih),formeoUpdated:c=>Pt(c,jn),formeoCleared:c=>Pt(c,Gf),formeoOnRender:c=>Pt(c,rh),formeoConditionUpdated:c=>Pt(c,Vf)},Em=Af(()=>{le.opts.onUpdate({timeStamp:window.performance.now(),type:jn,detail:ce.formData})},gt);document.addEventListener(jn,Em);document.addEventListener(Hf,c=>{const{timeStamp:e,type:t,detail:n}=c;le.opts.onUpdate({timeStamp:e,type:t,detail:n})});document.addEventListener(zf,c=>{const{timeStamp:e,type:t,detail:n}=c;le.opts.onUpdate({timeStamp:e,type:t,detail:n})});document.addEventListener(jf,c=>{const{timeStamp:e,type:t,detail:n}=c;le.opts.onUpdate({timeStamp:e,type:t,detail:n})});document.addEventListener(Uf,c=>{const{timeStamp:e,type:t,detail:n}=c;le.opts.onUpdate({timeStamp:e,type:t,detail:n})});document.addEventListener(rh,c=>{const{timeStamp:e,type:t,detail:n}=c;le.opts.onRender({timeStamp:e,type:t,detail:n})});document.addEventListener("confirmClearAll",c=>{c={timeStamp:c.timeStamp,type:c.type,confirmationMessage:c.detail.confirmationMessage,clearAllAction:c.detail.clearAllAction,btnCoords:c.detail.btnCoords},le.opts.confirmClearAll(c)});document.addEventListener(ih,({timeStamp:c,type:e,detail:{formData:t}})=>{const n={timeStamp:c,type:e,formData:t};le.opts.onSave(n)});document.addEventListener("formeoLoaded",c=>{le.opts.formeoLoaded(c.detail.formeo)});let Vo;function Tm(){Vo=Vo||window.requestAnimationFrame(()=>{Vo=!1;for(const c of Object.values(Zt.data))c.dom.classList.add(ou),On.dom.classList.add(ou),On.panels.nav.refresh(),c.refreshFieldPanels()})}window.addEventListener("resize",Tm);const su={add:{attr:c=>{const e=window.prompt(c.message.attr);if(e&&c.isDisabled(e))return window.alert(Q.get("attributeNotPermitted",e||"")),Te.add.attrs(c);let t;e&&(t=String(window.prompt(c.message.value,"")),c.addAction(e,t))},option:c=>{c.addAction()},condition:c=>{c.addAction(c)}},remove:{attrs:c=>{c.removeAction()},options:c=>{c.removeAction()},conditions:c=>{c.removeAction()}},click:{btn:c=>{c.action()}},save:{form:bs}},Te={init:function(c){const e=Object.keys(su);return this.opts=e.reduce((t,n)=>(t[n]={...su[n],...c[n]},t),c),this},add:{attrs:c=>Te.opts.add.attr(c),options:c=>Te.opts.add.option(c),conditions:c=>(c.template=c.template||js(),Te.opts.add.condition(c))},remove:{attrs:c=>Te.opts.remove.attrs(c),options:c=>Te.opts.remove.options(c),conditions:c=>Te.opts.remove.conditions(c)},click:{btn:c=>Te.opts.click.btn(c)},save:{form:c=>(Te.opts.sessionStorage&&Yu.set(nh,c),le.formeoSaved({formData:c}),Te.opts.save.form(c))}};var Mm={"en-US":"English",dir:"ltr","af-ZA":"Afrikaans (South Africa)","ar-TN":"Arabic (Tunisia)","cs-CZ":"Czech (Czechia)","de-DE":"German (Germany)","es-ES":"European Spanish","fa-IR":"Persian (Iran)","fi-FI":"Finnish (Finland)","fr-FR":"French (France)","hu-HU":"Hungarian (Hungary)","it-IT":"Italian (Italy)","ja-JP":"Japanese (Japan)","nb-NO":"Norwegian Bokmål (Norway)","pl-PL":"Polish (Poland)","pt-BR":"Brazilian Portuguese","pt-PT":"European Portuguese","ro-RO":"Romanian (Romania)","ru-RU":"Russian (Russia)","th-TH":"Thai (Thailand)","tr-TR":"Turkish (Türkiye)","zh-CN":"Chinese (China)","zh-HK":"Chinese (Hong Kong SAR China)","action.add.attrs.attr":"What attribute would you like to add?","action.add.attrs.value":"Default Value",addOption:"Add Option",allFieldsRemoved:"All fields were removed.",allowSelect:"Allow Select",and:"and",attribute:"Attribute",attributeNotPermitted:'Attribute "{attribute}" is not permitted, please choose another.',attributes:"Attributes","attrs.class":"Class","attrs.className":"Class","attrs.dir":"Direction","attrs.id":"Id","attrs.required":"Required","attrs.style":"Style","attrs.title":"Title","attrs.type":"Type","attrs.value":"Value",autocomplete:"Autocomplete",button:"Button",cannotBeEmpty:"This field cannot be empty",cannotClearFields:"There are no fields to clear",checkbox:"Checkbox",checkboxes:"Checkboxes",class:"Class",clear:"Clear",clearAllMessage:"Are you sure you want to clear all fields?",close:"Close",column:"Column","condition.target.placeholder":"target","condition.type.and":"And","condition.type.if":"If","condition.type.or":"Or","condition.type.then":"Then","condition.value.placeholder":"value",confirmClearAll:"Are you sure you want to remove all fields?",content:"Content",control:"Control","controlGroups.nextGroup":"Next Group","controlGroups.prevGroup":"Previous Group","controls.filteringTerm":'Filtering "{term}"',"controls.form.button":"Button","controls.form.checkbox-group":"Checkbox Group","controls.form.input.date":"Date","controls.form.input.email":"Email","controls.form.input.file":"File Upload","controls.form.input.hidden":"Hidden Input","controls.form.input.number":"Number","controls.form.input.text":"Text Input","controls.form.radio-group":"Radio Group","controls.form.select":"Select","controls.form.textarea":"TextArea","controls.groups.form":"Form Fields","controls.groups.html":"HTML Elements","controls.groups.layout":"Layout","controls.html.divider":"Divider","controls.html.header":"Header","controls.html.paragraph":"Paragraph","controls.layout.column":"Column","controls.layout.row":"Row",copy:"Copy To Clipboard",danger:"Danger",defineColumnLayout:"Define a column layout",defineColumnWidths:"Define column widths",description:"Help Text",descriptionField:"Description","editing.row":"Editing Row",editorTitle:"Form Elements",field:"Field","field.property.invalid":"not valid","field.property.isChecked":"is checked","field.property.isNotVisible":"is not visible","field.property.isVisible":"is visible","field.property.label":"label","field.property.valid":"valid","field.property.value":"value",fieldNonEditable:"This field cannot be edited.",fieldRemoveWarning:"Are you sure you want to remove this field?",fileUpload:"File Upload",formUpdated:"Form Updated",getStarted:"Drag a field from the right to get started.",group:"Group",grouped:"Grouped",hidden:"Hidden Input",hide:"Edit",htmlElements:"HTML Elements",if:"If","if.condition.source.placeholder":"source","if.condition.target.placeholder":"target / value",info:"Info","input.date":"Date","input.text":"Text",label:"Label",labelCount:"{label} {count}",labelEmpty:"Field Label cannot be empty","lang.af":"Afrikaans","lang.ar":"Arabic","lang.cs":"Czech","lang.de":"German","lang.en":"English","lang.es":"Spanish","lang.fa":"Persian","lang.fi":"Finnish","lang.fr":"French","lang.hu":"Hungarian","lang.it":"Italian","lang.ja":"Japanese","lang.nb":"Norwegian Bokmål","lang.pl":"Polish","lang.pt":"Portuguese","lang.ro":"Romanian","lang.ru":"Russian","lang.th":"Thai","lang.tr":"Turkish","lang.zh":"Chinese",layout:"Layout",limitRole:"Limit access to one or more of the following roles:",mandatory:"Mandatory",maxlength:"Max Length","meta.group":"Group","meta.icon":"Ico","meta.label":"Label",minOptionMessage:"This field requires a minimum of 2 options",name:"Name",newOptionLabel:"New {type}",no:"No",number:"Number",off:"Off",on:"On","operator.contains":"contains","operator.equals":"equals","operator.notContains":"not contains","operator.notEquals":"not equal","operator.notVisible":"not visible","operator.visible":"visible",option:"Option",optional:"optional",optionEmpty:"Option value required",optionLabel:"Option {count}",options:"Options",or:"or",order:"Order","panel.label.attrs":"Attributes","panel.label.conditions":"Conditions","panel.label.config":"Configuration","panel.label.meta":"Meta","panel.label.options":"Options","panelEditButtons.attrs":"+ Attribute","panelEditButtons.conditions":"+ Condition","panelEditButtons.options":"+ Option",placeholder:"Placeholder","placeholder.className":"space separated classes","placeholder.email":"Enter you email","placeholder.label":"Label","placeholder.password":"Enter your password","placeholder.placeholder":"Placeholder","placeholder.text":"Enter some Text","placeholder.textarea":"Enter a lot of text","placeholder.value":"Value",preview:"Preview",primary:"Primary",remove:"Remove",removeMessage:"Remove Element",removeType:"Remove {type}",required:"Required",reset:"Reset",richText:"Rich Text Editor",roles:"Access",row:"Row","row.makeInputGroup":"Make this row an input group.","row.makeInputGroupDesc":"Input Groups enable users to add sets of inputs at a time.","row.settings.fieldsetWrap":"Wrap row in a &lt;fieldset&gt; tag","row.settings.fieldsetWrap.aria":"Wrap Row in Fieldset",save:"Save",secondary:"Secondary",select:"Select",selectColor:"Select Color",selectionsMessage:"Allow Multiple Selections",selectOptions:"Options",separator:"Separator",settings:"Settings",size:"Size",sizes:"Sizes","sizes.lg":"Large","sizes.m":"Default","sizes.sm":"Small","sizes.xs":"Extra Small",style:"Style",styles:"Styles","styles.btn":"Button Style","styles.btn.danger":"Danger","styles.btn.default":"Default","styles.btn.info":"Info","styles.btn.primary":"Primary","styles.btn.success":"Success","styles.btn.warning":"Warning",subtype:"Type",success:"Success",text:"Text Field",then:"Then","then.condition.target.placeholder":"target",toggle:"Toggle",ungrouped:"Un-Grouped",warning:"Warning",yes:"Yes"};const _m=Mm;Q.addLanguage("en-US",_m);const xm={get editor(){return{stickyControls:!1,allowEdit:!0,dataType:"json",debug:!1,sessionStorage:!1,editorContainer:null,svgSprite:Qu,style:Ef,iconFont:null,config:{},events:{},actions:{},controls:{},polyfills:Rh(),i18n:{location:"https://draggable.github.io/formeo/assets/lang/"},onLoad:()=>{}}}};let Qh=class{constructor({formData:e,...t},n){const p=ze(xm.editor,t),{actions:d,events:g,debug:m,config:l,editorContainer:f,...r}=p;f&&(this.editorContainer=typeof f=="string"?document.querySelector(f):f),this.opts=r,U.setOptions=r,ce.config=l,this.userFormData=n||e,this.Components=ce,this.dom=U,le.init({debug:m,...g}),Te.init({debug:m,sessionStorage:r.sessionStorage,...d}),this.tooltip=new ku,document.readyState==="loading"?document.addEventListener("DOMContentLoaded",this.loadResources.bind(this)):this.loadResources()}get formData(){return this.Components.formData}set formData(e={}){this.userFormData=Vt(e),this.load(this.userFormData,this.opts)}get json(){return this.Components.json}clear(){this.userFormData=$n(),this.Components.load(this.userFormData,this.opts),this.render()}async loadResources(){document.removeEventListener("DOMContentLoaded",this.loadResources);const e=[];this.opts.polyfills&&hm(this.opts.polyfills),await um(this.opts.svgSprite),e.push(fm(this.opts.style)),e.push(Q.init({...this.opts.i18n,locale:window.sessionStorage?.getItem(Ql)}));const t=await Promise.all(e);return this.opts.allowEdit&&this.init(),t}init(){return xt.init(this.opts.controls,this.opts.stickyControls).then(e=>{this.controls=e,this.load(this.userFormData,this.opts),this.formId=ce.get("id"),this.i18n={setLang:t=>{window.sessionStorage?.setItem(Ql,t),Q.setCurrent(t).then(()=>{this.init()},console.error)}},this.opts.onLoad?.(this)})}load(e=this.userFormData,t=this.opts){this.Components.load(e,t),this.render()}render(){if(!this.controls)return window.requestAnimationFrame(()=>this.render());if(this.stages=Object.values(ce.get("stages")),this.opts.controlOnLeft)for(const n of this.stages)n.dom.style.order=1;const e={attrs:{className:"formeo formeo-editor",id:this.formId},content:[this.stages.map(({dom:n})=>n)]};Q.current.dir&&(e.attrs.dir=Q.current.dir,U.dir=Q.current.dir),this.editor=U.create(e),(this.controls.container||this.editor).appendChild(this.controls.dom),this.editorContainer&&(U.empty(this.editorContainer),this.editorContainer.appendChild(this.editor)),le.formeoLoaded=new window.CustomEvent("formeoLoaded",{detail:{formeo:this}}),document.dispatchEvent(le.formeoLoaded)}};const Ko="f-",au=c=>typeof c=="string"?document.querySelector(c):c,Lm=({editorContainer:c,renderContainer:e,formData:t,...n})=>{const p={renderContainer:au(e),editorContainer:au(c),formData:Vt(t)};return{elements:{},...n,...p}},qo=c=>c.match(Qf)?.[0]||c``,lu=c=>{if(!c||c.hasAttribute("hidden")||c.parentElement.hasAttribute("hidden"))return!1;const e=window.getComputedStyle(c);return!(e.display==="none"||e.visibility==="hidden"||e.opacity==="0")},Rm={isChecked:c=>c.checked,isNotChecked:c=>!c.checked,value:c=>c.value,isVisible:c=>lu(c),isNotVisible:c=>!lu(c)},km=()=>U.btnTemplate({className:"remove-input-group",children:U.icon("remove"),action:{mouseover:({target:c})=>c.parentElement.classList.add("will-remove"),mouseleave:({target:c})=>c.parentElement.classList.remove("will-remove"),click:({target:c})=>c.parentElement.remove()}}),cu={equals:As,notEquals:(c,e)=>!As(c,e),contains:(c,e)=>c.includes(e),notContains:(c,e)=>!c.includes(e)},Im=Object.entries(oh).reduce((c,[e,t])=>(c[t]=cu[e],c[e]=cu[e],c),{}),uu={equals:(c,{targetProperty:e,value:t})=>{c[`_${e}`]=c[e],c[e]=t}},Om=Object.entries(sh).reduce((c,[e,t])=>(c[t]=uu[e],c[e]=uu[e],c),{}),Dm={isChecked:c=>{c.checked=!0},isNotChecked:c=>{c.checked=!1},value:(c,{assignment:e,...t})=>{const n=Om[e]?.(c,t),p=new Event("input",{bubbles:!0});return c.dispatchEvent(p),n},isNotVisible:c=>{c?._required===void 0&&(c._required=c.required),c.parentElement.setAttribute("hidden",!0),c.required=!1},isVisible:c=>{c.parentElement.removeAttribute("hidden"),c.required=c._required}};let Zh=class{constructor(e,t){const{renderContainer:n,elements:p,formData:d}=Lm(e);this.container=n,this.form=Vt(t||d),this.dom=U,this.components=Object.create(null),this.elements=p}get formData(){return this.form}set formData(e){this.form=Vt(e)}get userData(){const e=new FormData(this.renderedForm),t={};for(const[n,p]of e.entries())t[n]?Array.isArray(t[n])?t[n].push(p):t[n]=[t[n],p]:t[n]=p;return t}set userData(e={}){const t=this.container.querySelector("form");for(const n of Object.keys(e)){const p=t.elements[n];if(p.length&&p[0].type==="checkbox"){const d=Array.isArray(e[n])?e[n]:[e[n]];for(const g of p)g.checked=d.includes(g.value)}else if(p.length&&p[0].type==="radio")for(const d of p)d.checked=d.value===e[n];else p.type&&(p.value=e[n])}}render(e=this.form){const t=this.getRenderedForm(e),n=this.container.querySelector(".formeo-render");n?n.replaceWith(t):this.container.appendChild(t)}getRenderedForm(e=this.form){this.form=Vt(e);const t=document.getElementsByClassName("formeo-render").length,n={tag:"form",id:this.form.id,className:`formeo-render formeo formeo-rendered-${t}`,children:this.processedData};return this.renderedForm=U.render(n),this.applyConditions(),this.renderedForm}get html(){return(this.renderedForm||this.getRenderedForm()).outerHTML}orderChildren=(e,t)=>t.reduce((n,p)=>(n.push(this.form[e][p]),n),[]);prefixId=e=>Ko+e;processColumn=({id:e,...t})=>({...t,id:this.prefixId(e),children:this.processFields(t.children),style:`width: ${t.config.width||"100%"}`});processRows=e=>this.orderChildren("rows",this.form.stages[e].children).reduce((t,n)=>(n&&t.push(this.processRow(n)),t),[]);cacheComponent=e=>(this.components[qo(e.id)]=e,e);processRow=(e,t="row")=>{const{config:n,id:p}=e,d=[`formeo-${t}-wrap`],g={...e,children:this.processColumns(e.id),id:this.prefixId(p)};this.cacheComponent(g);const l=[{condition:n.legend,result:()=>({tag:n.fieldset?"legend":"h3",children:n.legend})},{condition:!0,result:()=>g},{condition:n.inputGroup,result:()=>this.addButton(p)}].reduce((f,{condition:r,result:o})=>(r&&f.push(o()),f),[]);return n.inputGroup&&d.push(`${Ko}input-group-wrap`),{tag:n.fieldset?"fieldset":"div",className:d,children:l}};cloneComponentData=e=>{const{children:t=[],id:n,...p}=this.components[e];return{...p,id:We(n),children:t?.length&&t.map(({id:d})=>this.cloneComponentData(qo(d)))}};addButton=e=>({tag:"button",attrs:{className:"add-input-group btn pull-right",type:"button"},children:"Add +",action:{click:t=>{const n=t.target.parentElement,p=U.create(this.cloneComponentData(e));n.insertBefore(p,n.lastChild);const d=U.create(km());p.appendChild(d)}}});processColumns=e=>this.orderChildren("columns",this.form.rows[e].children).map(t=>this.cacheComponent(this.processColumn(t)));processFields=e=>this.orderChildren("fields",e).map(({id:t,...n})=>{const p=n.config?.controlId||n.meta?.id,{action:d={},dependencies:g={}}=this.elements[p]||{};g&&Gh(g);const m=ze({action:d},n);return this.cacheComponent({...m,id:this.prefixId(t)})});get processedData(){return Object.values(this.form.stages).map(e=>(e.children=this.processRows(e.id),e.className=kt,this.components[qo(e.id)]=e,e))}handleComponentCondition=(e,t,n)=>{if(e.length){for(const g of e)this.handleComponentCondition(g,t,n);return}const p=Nm(e);p&&e.addEventListener(p,g=>{if(this.evaluateCondition(t,g))for(const m of n)this.execResult(m,g)},!1);const d={target:e};if(this.evaluateCondition(t,d))for(const g of n)this.execResult(g,d)};applyConditions=()=>{for(const{conditions:e}of Object.values(this.components))if(e)for(const t of e){const{if:n,then:p}=t;for(const d of n){const{source:g,target:m}=d;if(Pe(g)){const{component:l,options:f}=this.getComponent(g),r=f||l;this.handleComponentCondition(r,d,p)}if(Pe(m)){const{component:l,options:f}=this.getComponent(m),r=f||l;this.handleComponentCondition(r,d,p)}}}};evaluateCondition=({source:e,sourceProperty:t,targetProperty:n,comparison:p,target:d})=>{const g=this.getComponentProperty(e,t);if(typeof g=="boolean")return g;const m=String(Pe(d)?this.getComponentProperty(d,n):d);return Im[p]?.(g,m)};execResult=({target:e,targetProperty:t,assignment:n,value:p})=>{if(Pe(e)){const{component:d,option:g}=this.getComponent(e),m=g||d;Dm[t]?.(m,{targetProperty:t,assignment:n,value:p})}};getComponentProperty=(e,t)=>{const{component:n,option:p}=this.getComponent(e),d=p||n;return Rm[t]?.(d)||d[t]};getComponent=e=>{const t={component:null};if(!Pe(e))return null;const[,n,p,d]=mt(e),g=this.renderedForm.querySelector(`#${Ko}${n}`);if(!g)return t;if(t.component=g,p){const m=g.querySelectorAll("input"),l=m[d];return t.options=m,t.option=l,t}return t};getComponents=e=>{const t=[],n=e.slice(e.indexOf(".")+1);return t.push(...this.renderedForm.querySelectorAll(`[name=f-${n}]`)),t}};const Nm=c=>{const e=[["input",n=>["textarea","text"].includes(n.type)],["change",n=>["select"].includes(n.tagName.toLowerCase())||["checkbox","radio"].includes(n.type)]],[t]=e.find(n=>n[1](c))||[!1];return t};window!==void 0&&(window.FormeoEditor=Qh,window.FormeoRenderer=Zh);const Zs=Qh,Js=Zh,Fm={rows:{all:{events:{onAdd:c=>{if(console.log(`You just added a new row with the id "${c.target.id}"`,c.index),c.index===2){const e=c.target.dom.querySelector(".action-btn-wrap"),t=document.createElement("button");t.type="button",t.className="btn btn-sm btn-secondary",t.textContent="Add Column",t.style.border="1px solid #ccc",t.style.width="auto",t.addEventListener("click",()=>{c.target.addChild()}),e.appendChild(t)}}}}},fields:{checkbox:{actionButtons:{},panels:{attrs:{hideDisabled:!0}}}}},Pm={sortable:!1,groupOrder:["common","html"],disable:{},elements:[{tag:"input",config:{label:"Email",disabledAttrs:["type"],lockedAttrs:["required","className"]},meta:{group:"common",id:"email",icon:"@"},attrs:{className:"custom-email",type:"email",required:!0}}],elementOrder:{common:["button","checkbox","date-input","hidden","upload","number","radio","select","text-input","textarea"]}},Wm=".build-form",Bm=".render-form",en={editorContainer:Wm,i18n:{location:"./assets/lang"},actions:{},controls:Pm,config:Fm,events:{onSave:console.log,onChange:console.log},sessionStorage:!0,editPanelOrder:["attrs","options"],onLoad:()=>{console.log("demo loaded")}},ea={renderContainer:Bm,elements:{tinymce:{action:{onRender:c=>{if(c.id){const e=`#${c.id}`;window.tinymce.remove(e),window.tinymce.init({selector:e})}}}}}};async function Hm(c){c.innerHTML=`
11
11
  <div class="angular-demo">
12
12
  <h3>Angular Integration Demo</h3>
13
13
  <p>Demonstrating Formeo integration patterns for Angular applications</p>