@5minds/node-red-dashboard-2-processcube-dynamic-form 7.7.1-develop-10e64b-ml76a1sp → 7.7.1-develop-c9bf07-mlhxn4ne

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@5minds/node-red-dashboard-2-processcube-dynamic-form",
3
- "version": "7.7.1-develop-10e64b-ml76a1sp",
3
+ "version": "7.7.1-develop-c9bf07-mlhxn4ne",
4
4
  "description": "The ui component for the ProcessCube dynamic-form",
5
5
  "keywords": [
6
6
  "processcube",
@@ -59,4 +59,4 @@ ${e}</tr>
59
59
  `}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${Ee(e,!0)}</code>`}br(e){return"<br>"}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:r}){let n=this.parser.parseInline(r),i=bs(e);if(i===null)return n;e=i;let s='<a href="'+e+'"';return t&&(s+=' title="'+Ee(t)+'"'),s+=">"+n+"</a>",s}image({href:e,title:t,text:r,tokens:n}){n&&(r=this.parser.parseInline(n,this.parser.textRenderer));let i=bs(e);if(i===null)return Ee(r);e=i;let s=`<img src="${e}" alt="${r}"`;return t&&(s+=` title="${Ee(t)}"`),s+=">",s}text(e){return"tokens"in e&&e.tokens?this.parser.parseInline(e.tokens):"escaped"in e&&e.escaped?e.text:Ee(e.text)}},ln=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return""+e}image({text:e}){return""+e}br(){return""}},Ce=class On{constructor(t){K(this,"options");K(this,"renderer");K(this,"textRenderer");this.options=t||Ge,this.options.renderer=this.options.renderer||new lr,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new ln}static parse(t,r){return new On(r).parse(t)}static parseInline(t,r){return new On(r).parseInline(t)}parse(t,r=!0){var i,s;let n="";for(let a=0;a<t.length;a++){let l=t[a];if((s=(i=this.options.extensions)==null?void 0:i.renderers)!=null&&s[l.type]){let u=l,h=this.options.extensions.renderers[u.type].call({parser:this},u);if(h!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(u.type)){n+=h||"";continue}}let c=l;switch(c.type){case"space":{n+=this.renderer.space(c);continue}case"hr":{n+=this.renderer.hr(c);continue}case"heading":{n+=this.renderer.heading(c);continue}case"code":{n+=this.renderer.code(c);continue}case"table":{n+=this.renderer.table(c);continue}case"blockquote":{n+=this.renderer.blockquote(c);continue}case"list":{n+=this.renderer.list(c);continue}case"html":{n+=this.renderer.html(c);continue}case"def":{n+=this.renderer.def(c);continue}case"paragraph":{n+=this.renderer.paragraph(c);continue}case"text":{let u=c,h=this.renderer.text(u);for(;a+1<t.length&&t[a+1].type==="text";)u=t[++a],h+=`
60
60
  `+this.renderer.text(u);r?n+=this.renderer.paragraph({type:"paragraph",raw:h,text:h,tokens:[{type:"text",raw:h,text:h,escaped:!0}]}):n+=h;continue}default:{let u='Token with "'+c.type+'" type was not found.';if(this.options.silent)return console.error(u),"";throw new Error(u)}}}return n}parseInline(t,r=this.renderer){var i,s;let n="";for(let a=0;a<t.length;a++){let l=t[a];if((s=(i=this.options.extensions)==null?void 0:i.renderers)!=null&&s[l.type]){let u=this.options.extensions.renderers[l.type].call({parser:this},l);if(u!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(l.type)){n+=u||"";continue}}let c=l;switch(c.type){case"escape":{n+=r.text(c);break}case"html":{n+=r.html(c);break}case"link":{n+=r.link(c);break}case"image":{n+=r.image(c);break}case"strong":{n+=r.strong(c);break}case"em":{n+=r.em(c);break}case"codespan":{n+=r.codespan(c);break}case"br":{n+=r.br(c);break}case"del":{n+=r.del(c);break}case"text":{n+=r.text(c);break}default:{let u='Token with "'+c.type+'" type was not found.';if(this.options.silent)return console.error(u),"";throw new Error(u)}}}return n}},Et=(pr=class{constructor(e){K(this,"options");K(this,"block");this.options=e||Ge}preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(){return this.block?xe.lex:xe.lexInline}provideParser(){return this.block?Ce.parse:Ce.parseInline}},K(pr,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens","emStrongMask"])),K(pr,"passThroughHooksRespectAsync",new Set(["preprocess","postprocess","processAllTokens"])),pr),Ff=class{constructor(...e){K(this,"defaults",Xr());K(this,"options",this.setOptions);K(this,"parse",this.parseMarkdown(!0));K(this,"parseInline",this.parseMarkdown(!1));K(this,"Parser",Ce);K(this,"Renderer",lr);K(this,"TextRenderer",ln);K(this,"Lexer",xe);K(this,"Tokenizer",ar);K(this,"Hooks",Et);this.use(...e)}walkTokens(e,t){var n,i;let r=[];for(let s of e)switch(r=r.concat(t.call(this,s)),s.type){case"table":{let a=s;for(let l of a.header)r=r.concat(this.walkTokens(l.tokens,t));for(let l of a.rows)for(let c of l)r=r.concat(this.walkTokens(c.tokens,t));break}case"list":{let a=s;r=r.concat(this.walkTokens(a.items,t));break}default:{let a=s;(i=(n=this.defaults.extensions)==null?void 0:n.childTokens)!=null&&i[a.type]?this.defaults.extensions.childTokens[a.type].forEach(l=>{let c=a[l].flat(1/0);r=r.concat(this.walkTokens(c,t))}):a.tokens&&(r=r.concat(this.walkTokens(a.tokens,t)))}}return r}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(r=>{let n={...r};if(n.async=this.defaults.async||n.async||!1,r.extensions&&(r.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){let s=t.renderers[i.name];s?t.renderers[i.name]=function(...a){let l=i.renderer.apply(this,a);return l===!1&&(l=s.apply(this,a)),l}:t.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=t[i.level];s?s.unshift(i.tokenizer):t[i.level]=[i.tokenizer],i.start&&(i.level==="block"?t.startBlock?t.startBlock.push(i.start):t.startBlock=[i.start]:i.level==="inline"&&(t.startInline?t.startInline.push(i.start):t.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(t.childTokens[i.name]=i.childTokens)}),n.extensions=t),r.renderer){let i=this.defaults.renderer||new lr(this.defaults);for(let s in r.renderer){if(!(s in i))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;let a=s,l=r.renderer[a],c=i[a];i[a]=(...u)=>{let h=l.apply(i,u);return h===!1&&(h=c.apply(i,u)),h||""}}n.renderer=i}if(r.tokenizer){let i=this.defaults.tokenizer||new ar(this.defaults);for(let s in r.tokenizer){if(!(s in i))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let a=s,l=r.tokenizer[a],c=i[a];i[a]=(...u)=>{let h=l.apply(i,u);return h===!1&&(h=c.apply(i,u)),h}}n.tokenizer=i}if(r.hooks){let i=this.defaults.hooks||new Et;for(let s in r.hooks){if(!(s in i))throw new Error(`hook '${s}' does not exist`);if(["options","block"].includes(s))continue;let a=s,l=r.hooks[a],c=i[a];Et.passThroughHooks.has(s)?i[a]=u=>{if(this.defaults.async&&Et.passThroughHooksRespectAsync.has(s))return(async()=>{let _=await l.call(i,u);return c.call(i,_)})();let h=l.call(i,u);return c.call(i,h)}:i[a]=(...u)=>{if(this.defaults.async)return(async()=>{let _=await l.apply(i,u);return _===!1&&(_=await c.apply(i,u)),_})();let h=l.apply(i,u);return h===!1&&(h=c.apply(i,u)),h}}n.hooks=i}if(r.walkTokens){let i=this.defaults.walkTokens,s=r.walkTokens;n.walkTokens=function(a){let l=[];return l.push(s.call(this,a)),i&&(l=l.concat(i.call(this,a))),l}}this.defaults={...this.defaults,...n}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return xe.lex(e,t??this.defaults)}parser(e,t){return Ce.parse(e,t??this.defaults)}parseMarkdown(e){return(t,r)=>{let n={...r},i={...this.defaults,...n},s=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&n.async===!1)return s(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof t>"u"||t===null)return s(new Error("marked(): input parameter is undefined or null"));if(typeof t!="string")return s(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));if(i.hooks&&(i.hooks.options=i,i.hooks.block=e),i.async)return(async()=>{let a=i.hooks?await i.hooks.preprocess(t):t,l=await(i.hooks?await i.hooks.provideLexer():e?xe.lex:xe.lexInline)(a,i),c=i.hooks?await i.hooks.processAllTokens(l):l;i.walkTokens&&await Promise.all(this.walkTokens(c,i.walkTokens));let u=await(i.hooks?await i.hooks.provideParser():e?Ce.parse:Ce.parseInline)(c,i);return i.hooks?await i.hooks.postprocess(u):u})().catch(s);try{i.hooks&&(t=i.hooks.preprocess(t));let a=(i.hooks?i.hooks.provideLexer():e?xe.lex:xe.lexInline)(t,i);i.hooks&&(a=i.hooks.processAllTokens(a)),i.walkTokens&&this.walkTokens(a,i.walkTokens);let l=(i.hooks?i.hooks.provideParser():e?Ce.parse:Ce.parseInline)(a,i);return i.hooks&&(l=i.hooks.postprocess(l)),l}catch(a){return s(a)}}}onError(e,t){return r=>{if(r.message+=`
61
61
  Please report this to https://github.com/markedjs/marked.`,e){let n="<p>An error occurred:</p><pre>"+Ee(r.message+"",!0)+"</pre>";return t?Promise.resolve(n):n}if(t)return Promise.reject(r);throw r}}},Ze=new Ff;function U(e,t){return Ze.parse(e,t)}U.options=U.setOptions=function(e){return Ze.setOptions(e),U.defaults=Ze.defaults,is(U.defaults),U},U.getDefaults=Xr,U.defaults=Ge,U.use=function(...e){return Ze.use(...e),U.defaults=Ze.defaults,is(U.defaults),U},U.walkTokens=function(e,t){return Ze.walkTokens(e,t)},U.parseInline=Ze.parseInline,U.Parser=Ce,U.parser=Ce.parse,U.Renderer=lr,U.TextRenderer=ln,U.Lexer=xe,U.lexer=xe.lex,U.Tokenizer=ar,U.Hooks=Et,U.parse=U,U.options,U.setOptions,U.use,U.walkTokens,U.parseInline,Ce.parse,xe.lex;/*! @license DOMPurify 3.3.1 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.3.1/LICENSE */const{entries:vs,setPrototypeOf:ws,isFrozen:Rf,getPrototypeOf:Of,getOwnPropertyDescriptor:If}=Object;let{freeze:se,seal:ye,create:on}=Object,{apply:cn,construct:un}=typeof Reflect<"u"&&Reflect;se||(se=function(t){return t}),ye||(ye=function(t){return t}),cn||(cn=function(t,r){for(var n=arguments.length,i=new Array(n>2?n-2:0),s=2;s<n;s++)i[s-2]=arguments[s];return t.apply(r,i)}),un||(un=function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];return new t(...n)});const or=le(Array.prototype.forEach),Nf=le(Array.prototype.lastIndexOf),$s=le(Array.prototype.pop),Tt=le(Array.prototype.push),Df=le(Array.prototype.splice),cr=le(String.prototype.toLowerCase),fn=le(String.prototype.toString),pn=le(String.prototype.match),Ft=le(String.prototype.replace),Pf=le(String.prototype.indexOf),Mf=le(String.prototype.trim),Ae=le(Object.prototype.hasOwnProperty),ae=le(RegExp.prototype.test),Rt=Lf(TypeError);function le(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];return cn(e,t,n)}}function Lf(e){return function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return un(e,r)}}function M(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:cr;ws&&ws(e,null);let n=t.length;for(;n--;){let i=t[n];if(typeof i=="string"){const s=r(i);s!==i&&(Rf(t)||(t[n]=s),i=s)}e[i]=!0}return e}function Vf(e){for(let t=0;t<e.length;t++)Ae(e,t)||(e[t]=null);return e}function Te(e){const t=on(null);for(const[r,n]of vs(e))Ae(e,r)&&(Array.isArray(n)?t[r]=Vf(n):n&&typeof n=="object"&&n.constructor===Object?t[r]=Te(n):t[r]=n);return t}function Ot(e,t){for(;e!==null;){const n=If(e,t);if(n){if(n.get)return le(n.get);if(typeof n.value=="function")return le(n.value)}e=Of(e)}function r(){return null}return r}const xs=se(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),mn=se(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),dn=se(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),zf=se(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),hn=se(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),Bf=se(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Cs=se(["#text"]),As=se(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),gn=se(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Ss=se(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),ur=se(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),Uf=ye(/\{\{[\w\W]*|[\w\W]*\}\}/gm),jf=ye(/<%[\w\W]*|[\w\W]*%>/gm),qf=ye(/\$\{[\w\W]*/gm),Hf=ye(/^data-[\-\w.\u00B7-\uFFFF]+$/),Wf=ye(/^aria-[\-\w]+$/),Es=ye(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Kf=ye(/^(?:\w+script|data):/i),Gf=ye(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Ts=ye(/^html$/i),Zf=ye(/^[a-z][.\w]*(-[.\w]+)+$/i);var Fs=Object.freeze({__proto__:null,ARIA_ATTR:Wf,ATTR_WHITESPACE:Gf,CUSTOM_ELEMENT:Zf,DATA_ATTR:Hf,DOCTYPE_NAME:Ts,ERB_EXPR:jf,IS_ALLOWED_URI:Es,IS_SCRIPT_OR_DATA:Kf,MUSTACHE_EXPR:Uf,TMPLIT_EXPR:qf});const It={element:1,text:3,progressingInstruction:7,comment:8,document:9},Yf=function(){return typeof window>"u"?null:window},Xf=function(t,r){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let n=null;const i="data-tt-policy-suffix";r&&r.hasAttribute(i)&&(n=r.getAttribute(i));const s="dompurify"+(n?"#"+n:"");try{return t.createPolicy(s,{createHTML(a){return a},createScriptURL(a){return a}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}},Rs=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function Os(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Yf();const t=O=>Os(O);if(t.version="3.3.1",t.removed=[],!e||!e.document||e.document.nodeType!==It.document||!e.Element)return t.isSupported=!1,t;let{document:r}=e;const n=r,i=n.currentScript,{DocumentFragment:s,HTMLTemplateElement:a,Node:l,Element:c,NodeFilter:u,NamedNodeMap:h=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:_,DOMParser:C,trustedTypes:m}=e,k=c.prototype,p=Ot(k,"cloneNode"),w=Ot(k,"remove"),v=Ot(k,"nextSibling"),A=Ot(k,"childNodes"),E=Ot(k,"parentNode");if(typeof a=="function"){const O=r.createElement("template");O.content&&O.content.ownerDocument&&(r=O.content.ownerDocument)}let $,b="";const{implementation:d,createNodeIterator:g,createDocumentFragment:P,getElementsByTagName:V}=r,{importNode:j}=n;let F=Rs();t.isSupported=typeof vs=="function"&&typeof E=="function"&&d&&d.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:y,ERB_EXPR:R,TMPLIT_EXPR:I,DATA_ATTR:W,ARIA_ATTR:H,IS_SCRIPT_OR_DATA:q,ATTR_WHITESPACE:de,CUSTOM_ELEMENT:oe}=Fs;let{IS_ALLOWED_URI:_e}=Fs,z=null;const Is=M({},[...xs,...mn,...dn,...hn,...Cs]);let ee=null;const Ns=M({},[...As,...gn,...Ss,...ur]);let Z=Object.seal(on(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Nt=null,_n=null;const ft=Object.seal(on(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Ds=!0,kn=!0,Ps=!1,Ms=!0,pt=!1,mr=!0,Ye=!1,vn=!1,wn=!1,mt=!1,dr=!1,hr=!1,Ls=!0,Vs=!1;const jp="user-content-";let $n=!0,Dt=!1,dt={},Fe=null;const xn=M({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let zs=null;const Bs=M({},["audio","video","img","source","image","track"]);let Cn=null;const Us=M({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),gr="http://www.w3.org/1998/Math/MathML",yr="http://www.w3.org/2000/svg",Me="http://www.w3.org/1999/xhtml";let ht=Me,An=!1,Sn=null;const qp=M({},[gr,yr,Me],fn);let br=M({},["mi","mo","mn","ms","mtext"]),_r=M({},["annotation-xml"]);const Hp=M({},["title","style","font","a","script"]);let Pt=null;const Wp=["application/xhtml+xml","text/html"],Kp="text/html";let X=null,gt=null;const Gp=r.createElement("form"),js=function(f){return f instanceof RegExp||f instanceof Function},En=function(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(gt&&gt===f)){if((!f||typeof f!="object")&&(f={}),f=Te(f),Pt=Wp.indexOf(f.PARSER_MEDIA_TYPE)===-1?Kp:f.PARSER_MEDIA_TYPE,X=Pt==="application/xhtml+xml"?fn:cr,z=Ae(f,"ALLOWED_TAGS")?M({},f.ALLOWED_TAGS,X):Is,ee=Ae(f,"ALLOWED_ATTR")?M({},f.ALLOWED_ATTR,X):Ns,Sn=Ae(f,"ALLOWED_NAMESPACES")?M({},f.ALLOWED_NAMESPACES,fn):qp,Cn=Ae(f,"ADD_URI_SAFE_ATTR")?M(Te(Us),f.ADD_URI_SAFE_ATTR,X):Us,zs=Ae(f,"ADD_DATA_URI_TAGS")?M(Te(Bs),f.ADD_DATA_URI_TAGS,X):Bs,Fe=Ae(f,"FORBID_CONTENTS")?M({},f.FORBID_CONTENTS,X):xn,Nt=Ae(f,"FORBID_TAGS")?M({},f.FORBID_TAGS,X):Te({}),_n=Ae(f,"FORBID_ATTR")?M({},f.FORBID_ATTR,X):Te({}),dt=Ae(f,"USE_PROFILES")?f.USE_PROFILES:!1,Ds=f.ALLOW_ARIA_ATTR!==!1,kn=f.ALLOW_DATA_ATTR!==!1,Ps=f.ALLOW_UNKNOWN_PROTOCOLS||!1,Ms=f.ALLOW_SELF_CLOSE_IN_ATTR!==!1,pt=f.SAFE_FOR_TEMPLATES||!1,mr=f.SAFE_FOR_XML!==!1,Ye=f.WHOLE_DOCUMENT||!1,mt=f.RETURN_DOM||!1,dr=f.RETURN_DOM_FRAGMENT||!1,hr=f.RETURN_TRUSTED_TYPE||!1,wn=f.FORCE_BODY||!1,Ls=f.SANITIZE_DOM!==!1,Vs=f.SANITIZE_NAMED_PROPS||!1,$n=f.KEEP_CONTENT!==!1,Dt=f.IN_PLACE||!1,_e=f.ALLOWED_URI_REGEXP||Es,ht=f.NAMESPACE||Me,br=f.MATHML_TEXT_INTEGRATION_POINTS||br,_r=f.HTML_INTEGRATION_POINTS||_r,Z=f.CUSTOM_ELEMENT_HANDLING||{},f.CUSTOM_ELEMENT_HANDLING&&js(f.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Z.tagNameCheck=f.CUSTOM_ELEMENT_HANDLING.tagNameCheck),f.CUSTOM_ELEMENT_HANDLING&&js(f.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Z.attributeNameCheck=f.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),f.CUSTOM_ELEMENT_HANDLING&&typeof f.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Z.allowCustomizedBuiltInElements=f.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),pt&&(kn=!1),dr&&(mt=!0),dt&&(z=M({},Cs),ee=[],dt.html===!0&&(M(z,xs),M(ee,As)),dt.svg===!0&&(M(z,mn),M(ee,gn),M(ee,ur)),dt.svgFilters===!0&&(M(z,dn),M(ee,gn),M(ee,ur)),dt.mathMl===!0&&(M(z,hn),M(ee,Ss),M(ee,ur))),f.ADD_TAGS&&(typeof f.ADD_TAGS=="function"?ft.tagCheck=f.ADD_TAGS:(z===Is&&(z=Te(z)),M(z,f.ADD_TAGS,X))),f.ADD_ATTR&&(typeof f.ADD_ATTR=="function"?ft.attributeCheck=f.ADD_ATTR:(ee===Ns&&(ee=Te(ee)),M(ee,f.ADD_ATTR,X))),f.ADD_URI_SAFE_ATTR&&M(Cn,f.ADD_URI_SAFE_ATTR,X),f.FORBID_CONTENTS&&(Fe===xn&&(Fe=Te(Fe)),M(Fe,f.FORBID_CONTENTS,X)),f.ADD_FORBID_CONTENTS&&(Fe===xn&&(Fe=Te(Fe)),M(Fe,f.ADD_FORBID_CONTENTS,X)),$n&&(z["#text"]=!0),Ye&&M(z,["html","head","body"]),z.table&&(M(z,["tbody"]),delete Nt.tbody),f.TRUSTED_TYPES_POLICY){if(typeof f.TRUSTED_TYPES_POLICY.createHTML!="function")throw Rt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof f.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Rt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');$=f.TRUSTED_TYPES_POLICY,b=$.createHTML("")}else $===void 0&&($=Xf(m,i)),$!==null&&typeof b=="string"&&(b=$.createHTML(""));se&&se(f),gt=f}},qs=M({},[...mn,...dn,...zf]),Hs=M({},[...hn,...Bf]),Zp=function(f){let x=E(f);(!x||!x.tagName)&&(x={namespaceURI:ht,tagName:"template"});const T=cr(f.tagName),G=cr(x.tagName);return Sn[f.namespaceURI]?f.namespaceURI===yr?x.namespaceURI===Me?T==="svg":x.namespaceURI===gr?T==="svg"&&(G==="annotation-xml"||br[G]):!!qs[T]:f.namespaceURI===gr?x.namespaceURI===Me?T==="math":x.namespaceURI===yr?T==="math"&&_r[G]:!!Hs[T]:f.namespaceURI===Me?x.namespaceURI===yr&&!_r[G]||x.namespaceURI===gr&&!br[G]?!1:!Hs[T]&&(Hp[T]||!qs[T]):!!(Pt==="application/xhtml+xml"&&Sn[f.namespaceURI]):!1},Re=function(f){Tt(t.removed,{element:f});try{E(f).removeChild(f)}catch{w(f)}},Xe=function(f,x){try{Tt(t.removed,{attribute:x.getAttributeNode(f),from:x})}catch{Tt(t.removed,{attribute:null,from:x})}if(x.removeAttribute(f),f==="is")if(mt||dr)try{Re(x)}catch{}else try{x.setAttribute(f,"")}catch{}},Ws=function(f){let x=null,T=null;if(wn)f="<remove></remove>"+f;else{const Y=pn(f,/^[\r\n\t ]+/);T=Y&&Y[0]}Pt==="application/xhtml+xml"&&ht===Me&&(f='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+f+"</body></html>");const G=$?$.createHTML(f):f;if(ht===Me)try{x=new C().parseFromString(G,Pt)}catch{}if(!x||!x.documentElement){x=d.createDocument(ht,"template",null);try{x.documentElement.innerHTML=An?b:G}catch{}}const re=x.body||x.documentElement;return f&&T&&re.insertBefore(r.createTextNode(T),re.childNodes[0]||null),ht===Me?V.call(x,Ye?"html":"body")[0]:Ye?x.documentElement:re},Ks=function(f){return g.call(f.ownerDocument||f,f,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Tn=function(f){return f instanceof _&&(typeof f.nodeName!="string"||typeof f.textContent!="string"||typeof f.removeChild!="function"||!(f.attributes instanceof h)||typeof f.removeAttribute!="function"||typeof f.setAttribute!="function"||typeof f.namespaceURI!="string"||typeof f.insertBefore!="function"||typeof f.hasChildNodes!="function")},Gs=function(f){return typeof l=="function"&&f instanceof l};function Le(O,f,x){or(O,T=>{T.call(t,f,x,gt)})}const Zs=function(f){let x=null;if(Le(F.beforeSanitizeElements,f,null),Tn(f))return Re(f),!0;const T=X(f.nodeName);if(Le(F.uponSanitizeElement,f,{tagName:T,allowedTags:z}),mr&&f.hasChildNodes()&&!Gs(f.firstElementChild)&&ae(/<[/\w!]/g,f.innerHTML)&&ae(/<[/\w!]/g,f.textContent)||f.nodeType===It.progressingInstruction||mr&&f.nodeType===It.comment&&ae(/<[/\w]/g,f.data))return Re(f),!0;if(!(ft.tagCheck instanceof Function&&ft.tagCheck(T))&&(!z[T]||Nt[T])){if(!Nt[T]&&Xs(T)&&(Z.tagNameCheck instanceof RegExp&&ae(Z.tagNameCheck,T)||Z.tagNameCheck instanceof Function&&Z.tagNameCheck(T)))return!1;if($n&&!Fe[T]){const G=E(f)||f.parentNode,re=A(f)||f.childNodes;if(re&&G){const Y=re.length;for(let ue=Y-1;ue>=0;--ue){const Ve=p(re[ue],!0);Ve.__removalCount=(f.__removalCount||0)+1,G.insertBefore(Ve,v(f))}}}return Re(f),!0}return f instanceof c&&!Zp(f)||(T==="noscript"||T==="noembed"||T==="noframes")&&ae(/<\/no(script|embed|frames)/i,f.innerHTML)?(Re(f),!0):(pt&&f.nodeType===It.text&&(x=f.textContent,or([y,R,I],G=>{x=Ft(x,G," ")}),f.textContent!==x&&(Tt(t.removed,{element:f.cloneNode()}),f.textContent=x)),Le(F.afterSanitizeElements,f,null),!1)},Ys=function(f,x,T){if(Ls&&(x==="id"||x==="name")&&(T in r||T in Gp))return!1;if(!(kn&&!_n[x]&&ae(W,x))){if(!(Ds&&ae(H,x))){if(!(ft.attributeCheck instanceof Function&&ft.attributeCheck(x,f))){if(!ee[x]||_n[x]){if(!(Xs(f)&&(Z.tagNameCheck instanceof RegExp&&ae(Z.tagNameCheck,f)||Z.tagNameCheck instanceof Function&&Z.tagNameCheck(f))&&(Z.attributeNameCheck instanceof RegExp&&ae(Z.attributeNameCheck,x)||Z.attributeNameCheck instanceof Function&&Z.attributeNameCheck(x,f))||x==="is"&&Z.allowCustomizedBuiltInElements&&(Z.tagNameCheck instanceof RegExp&&ae(Z.tagNameCheck,T)||Z.tagNameCheck instanceof Function&&Z.tagNameCheck(T))))return!1}else if(!Cn[x]){if(!ae(_e,Ft(T,de,""))){if(!((x==="src"||x==="xlink:href"||x==="href")&&f!=="script"&&Pf(T,"data:")===0&&zs[f])){if(!(Ps&&!ae(q,Ft(T,de,"")))){if(T)return!1}}}}}}}return!0},Xs=function(f){return f!=="annotation-xml"&&pn(f,oe)},Qs=function(f){Le(F.beforeSanitizeAttributes,f,null);const{attributes:x}=f;if(!x||Tn(f))return;const T={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ee,forceKeepAttr:void 0};let G=x.length;for(;G--;){const re=x[G],{name:Y,namespaceURI:ue,value:Ve}=re,yt=X(Y),Fn=Ve;let te=Y==="value"?Fn:Mf(Fn);if(T.attrName=yt,T.attrValue=te,T.keepAttr=!0,T.forceKeepAttr=void 0,Le(F.uponSanitizeAttribute,f,T),te=T.attrValue,Vs&&(yt==="id"||yt==="name")&&(Xe(Y,f),te=jp+te),mr&&ae(/((--!?|])>)|<\/(style|title|textarea)/i,te)){Xe(Y,f);continue}if(yt==="attributename"&&pn(te,"href")){Xe(Y,f);continue}if(T.forceKeepAttr)continue;if(!T.keepAttr){Xe(Y,f);continue}if(!Ms&&ae(/\/>/i,te)){Xe(Y,f);continue}pt&&or([y,R,I],ea=>{te=Ft(te,ea," ")});const Js=X(f.nodeName);if(!Ys(Js,yt,te)){Xe(Y,f);continue}if($&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!ue)switch(m.getAttributeType(Js,yt)){case"TrustedHTML":{te=$.createHTML(te);break}case"TrustedScriptURL":{te=$.createScriptURL(te);break}}if(te!==Fn)try{ue?f.setAttributeNS(ue,Y,te):f.setAttribute(Y,te),Tn(f)?Re(f):$s(t.removed)}catch{Xe(Y,f)}}Le(F.afterSanitizeAttributes,f,null)},Yp=function O(f){let x=null;const T=Ks(f);for(Le(F.beforeSanitizeShadowDOM,f,null);x=T.nextNode();)Le(F.uponSanitizeShadowNode,x,null),Zs(x),Qs(x),x.content instanceof s&&O(x.content);Le(F.afterSanitizeShadowDOM,f,null)};return t.sanitize=function(O){let f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},x=null,T=null,G=null,re=null;if(An=!O,An&&(O="<!-->"),typeof O!="string"&&!Gs(O))if(typeof O.toString=="function"){if(O=O.toString(),typeof O!="string")throw Rt("dirty is not a string, aborting")}else throw Rt("toString is not a function");if(!t.isSupported)return O;if(vn||En(f),t.removed=[],typeof O=="string"&&(Dt=!1),Dt){if(O.nodeName){const Ve=X(O.nodeName);if(!z[Ve]||Nt[Ve])throw Rt("root node is forbidden and cannot be sanitized in-place")}}else if(O instanceof l)x=Ws("<!---->"),T=x.ownerDocument.importNode(O,!0),T.nodeType===It.element&&T.nodeName==="BODY"||T.nodeName==="HTML"?x=T:x.appendChild(T);else{if(!mt&&!pt&&!Ye&&O.indexOf("<")===-1)return $&&hr?$.createHTML(O):O;if(x=Ws(O),!x)return mt?null:hr?b:""}x&&wn&&Re(x.firstChild);const Y=Ks(Dt?O:x);for(;G=Y.nextNode();)Zs(G),Qs(G),G.content instanceof s&&Yp(G.content);if(Dt)return O;if(mt){if(dr)for(re=P.call(x.ownerDocument);x.firstChild;)re.appendChild(x.firstChild);else re=x;return(ee.shadowroot||ee.shadowrootmode)&&(re=j.call(n,re,!0)),re}let ue=Ye?x.outerHTML:x.innerHTML;return Ye&&z["!doctype"]&&x.ownerDocument&&x.ownerDocument.doctype&&x.ownerDocument.doctype.name&&ae(Ts,x.ownerDocument.doctype.name)&&(ue="<!DOCTYPE "+x.ownerDocument.doctype.name+`>
62
- `+ue),pt&&or([y,R,I],Ve=>{ue=Ft(ue,Ve," ")}),$&&hr?$.createHTML(ue):ue},t.setConfig=function(){let O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};En(O),vn=!0},t.clearConfig=function(){gt=null,vn=!1},t.isValidAttribute=function(O,f,x){gt||En({});const T=X(O),G=X(f);return Ys(T,G,x)},t.addHook=function(O,f){typeof f=="function"&&Tt(F[O],f)},t.removeHook=function(O,f){if(f!==void 0){const x=Nf(F[O],f);return x===-1?void 0:Df(F[O],x,1)[0]}return $s(F[O])},t.removeHooks=function(O){F[O]=[]},t.removeAllHooks=function(){F=Rs()},t}var Qf=Os();const yn=(e,t)=>{const r=e.__vccOpts||e;for(const[n,i]of t)r[n]=i;return r},Jf={name:"UIDynamicFormFooterAction",props:{actions:{type:Array,default(){return[]}},actionCallback:{type:Function,default(e){}},formIsFinished:{type:Boolean,default(){return!1}}},computed:{leftSideActions(){const e=this.actions.filter(r=>r.alignment==="left"||!r.alignment),t=(r,n)=>{const i=r.primary==="primary",s=n.primary==="primary";return i&&!s?-1:!i&&s?1:0};return e.sort(t)},rightSideActions(){const e=this.actions.filter(r=>r.alignment==="right"),t=(r,n)=>{const i=r.primary==="primary",s=n.primary==="primary";return!i&&s?-1:i&&!s?1:0};return e.sort(t)}},methods:{getActionButtonClass(e){switch(e.primary){case"primary":return"ui-dynamic-form-footer-action-primary";case"destructive":return"ui-dynamic-form-footer-action-terminate";case"secondary":default:return"ui-dynamic-form-footer-action-secondary"}}}},ep={class:"ui-dynamic-form-footer-actions-container"},tp={class:"ui-dynamic-form-footer-actions-left"},rp={class:"ui-dynamic-form-footer-actions-right"};function np(e,t,r,n,i,s){const a=o.resolveComponent("v-btn");return o.openBlock(),o.createElementBlock("div",ep,[o.createElementVNode("div",tp,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(s.leftSideActions,(l,c)=>(o.openBlock(),o.createElementBlock("div",{key:`left-${c}`},[o.createVNode(a,{class:o.normalizeClass(["ui-dynamic-form-footer-action-button",s.getActionButtonClass(l)]),disabled:r.formIsFinished,onClick:u=>r.actionCallback(l)},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(l.label),1)]),_:2},1032,["class","disabled","onClick"])]))),128))]),o.createElementVNode("div",rp,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(s.rightSideActions,(l,c)=>(o.openBlock(),o.createElementBlock("div",{key:`right-${c}`},[o.createVNode(a,{class:o.normalizeClass(["ui-dynamic-form-footer-action-button",s.getActionButtonClass(l)]),disabled:r.formIsFinished,onClick:u=>r.actionCallback(l)},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(l.label),1)]),_:2},1032,["class","disabled","onClick"])]))),128))])])}const ip=yn(Jf,[["render",np]]),sp={name:"UIDynamicFormTitleText",props:{style:{type:String,default(){return"default"}},title:{type:String,default(){return""}},customStyles:{type:String,default(){return""}},collapsible:{type:Boolean,default(){return!1}},collapsed:{type:Boolean,default(){return!1}},titleIcon:{type:String,default(){return""}},toggleCollapse:{type:Function,default(){}}},computed:{typeSpecificStyling(){return`ui-dynamic-form-title-${this.style}`}}},ap={key:0},lp=["fill"],op=["fill"],cp=["src"],up={key:1};function fp(e,t,r,n,i,s){return r.title.length>0?(o.openBlock(),o.createElementBlock("div",ap,[o.createElementVNode("h3",{class:o.normalizeClass([s.typeSpecificStyling,"ui-dynamic-form-title-responsive"]),style:{display:"flex",gap:"25px","align-items":"center"}},[r.collapsible&&!r.collapsed?(o.openBlock(),o.createElementBlock("svg",{key:0,style:{width:"25px",height:"25px",cursor:"pointer"},xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512",onClick:t[0]||(t[0]=(...a)=>r.toggleCollapse&&r.toggleCollapse(...a))},[o.createElementVNode("path",{fill:r.style==="default"?"white":"black",d:"M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"},null,8,lp)])):o.createCommentVNode("",!0),r.collapsible&&r.collapsed?(o.openBlock(),o.createElementBlock("svg",{key:1,style:{width:"25px",height:"25px",cursor:"pointer"},xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 320 512",onClick:t[1]||(t[1]=(...a)=>r.toggleCollapse&&r.toggleCollapse(...a))},[o.createElementVNode("path",{fill:r.style==="default"?"white":"black",d:"M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z"},null,8,op)])):o.createCommentVNode("",!0),o.createElementVNode("div",{style:o.normalizeStyle({width:"fit-content",display:r.style==="default"?"":"flex"})},[r.titleIcon.length>0?(o.openBlock(),o.createElementBlock("img",{key:0,src:r.titleIcon,style:{"padding-right":"16px"}},null,8,cp)):o.createCommentVNode("",!0),o.createElementVNode("span",{style:o.normalizeStyle(r.customStyles)},o.toDisplayString(r.title),5),r.style==="default"?(o.openBlock(),o.createElementBlock("hr",up)):o.createCommentVNode("",!0)],4)],2)])):o.createCommentVNode("",!0)}const pp=yn(sp,[["render",fp]]);function fr(e,t,[r,n]){const i=e.at(`$parent.${r}`),s=i==null?void 0:i.value;return console.log("requiredIf:",{target:r,expected:n,targetVal:s,value:t}),(typeof n>"u"?!!s:String(s)===String(n))?t!=null&&String(t).trim().length>0:!0}fr.message=({name:e},[t,r])=>typeof r>"u"?`${e} ist erforderlich, wenn ${t} ausgefüllt ist.`:`${e} ist erforderlich, wenn ${t} = ${r} ist.`,fr.blocking=!0,fr.skipEmpty=!0;function bn(e){if(!e.value)return!0;const t=e.value.split(/\s*[,;]\s*/),r=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;return t.every(n=>r.test(n))}bn.blocking=!0,bn.skipEmpty=!0;function be(e,t={}){if(typeof e=="string")try{return JSON.parse(e)}catch{return t}return typeof e=="object"&&e!==null?{...e}:t}class mp extends U.Renderer{link(t){return super.link(t).replace("<a","<a target='_blank'")}html(t){const r=super.html(t);return r.startsWith("<a ")&&!r.includes("target=")?r.replace("<a ",'<a target="_blank" '):r}}class dp extends U.Hooks{postprocess(t){return Qf.sanitize(t,{ADD_ATTR:["target"]})}}function hp(e){return e?U.parse(e.toString(),{renderer:new mp,hooks:new dp}):""}const gp={name:"UIDynamicForm",components:{FormKit:Zr,UIDynamicFormFooterAction:ip,UIDynamicFormTitleText:pp},inject:["$socket"],props:{id:{type:String,required:!0},props:{type:Object,default:()=>({})},state:{type:Object,default:()=>({enabled:!1,visible:!1})}},setup(e){const r=o.getCurrentInstance().appContext.app,n=Wr({theme:"genesis",locales:{de:ql},locale:"de",rules:{requiredIf:fr,multipleEmails:bn}});r.use(Nu,n)},data(){return{actions:[],formData:{},originalFileData:{},userTask:null,theme:"",errorMsg:"",formIsFinished:!1,msg:null,collapsed:!1,firstFormFieldRef:null,fileModalOpen:!1,modalFile:null,objectUrlsByField:{},previewCache:{}}},computed:{dynamicClass(){return`ui-dynamic-form-${this.theme} ui-dynamic-form-common`},dynamicFooterClass(){return`ui-dynamic-form-footer-${this.theme} ui-dynamic-form-footer-common`},hasUserTask(){return!!this.userTask},totalOutputs(){const e=this.props.handle_confirmation_dialogs?this.props.confirm_actions?this.props.confirm_actions.length:2:0;return this.props.options.length+e+(this.props.trigger_on_change?1:0)},isConfirmDialog(){return this.userTask.userTaskConfig.formFields.some(e=>e.type==="confirm")},effectiveTitle(){return this.props.title_text_type==="str"?this.props.title_text:this.props.title_text_type==="msg"?this.msg.dynamicTitle:""}},watch:{formData:{handler(e,t){if(t&&(this.userTask&&this.userTask.userTaskConfig&&this.userTask.userTaskConfig.formFields&&this.userTask.userTaskConfig.formFields.filter(n=>n.type==="file").forEach(n=>{const i=n.id,s=e[i],a=t[i];s!==a&&this.originalFileData[i]&&this.hasActualFileObjects(s)&&(delete this.originalFileData[i],Object.keys(this.previewCache).forEach(c=>{c.startsWith(i+"_")&&delete this.previewCache[c]}),this.cleanupObjectUrls(i))}),this.props.trigger_on_change)){const r={payload:{formData:e,userTask:this.userTask}};this.send(r,this.totalOutputs-1)}},deep:!0},collapsed(e){!e&&this.hasUserTask&&o.nextTick(()=>{this.focusFirstFormField()})},userTask(e){e&&!this.collapsed&&o.nextTick(()=>{this.focusFirstFormField()})}},created(){const e=window.location.pathname,t=e.substring(e.lastIndexOf("/")),r=this.$store.state;for(const n in r.ui.pages)if(r.ui.pages[n].path===t){const i=r.ui.pages[n].theme;r.ui.themes[i].name==="ProcessCube Lightmode"?this.theme="light":r.ui.themes[i].name==="ProcessCube Darkmode"?this.theme="dark":this.theme="default";break}},mounted(){document.querySelectorAll(".formkit-input").forEach(t=>{t.classList.add("test")}),document.addEventListener("wheel",t=>{t.target.type==="number"&&document.activeElement===t.target&&t.preventDefault()},{passive:!1}),this.$socket.on("msg-input:"+this.id,t=>{this.init(t)}),this.$socket.emit("widget-load",this.id)},unmounted(){var e;(e=this.$socket)==null||e.off("msg-input:"+this.id),this.cleanupObjectUrls()},methods:{createComponent(e){const t=be(e.customForm,{}),r=t.hint,n=t.placeholder,i=t.validation,s=e.id,a=t.customProperties??[],l=this.props.readonly||this.formIsFinished||a.find(c=>["readOnly","readonly"].includes(c.name)&&c.value==="true")?"true":void 0;switch(e.type){case"long":return{type:"FormKit",props:{type:"number",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],number:"integer",min:0,validation:i?`${i}|number`:"number",help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validationVisibility:"live"}};case"number":const c=be(e.customForm).step;return{type:"FormKit",props:{type:"number",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],step:c,number:"float",validation:i?`${i}|number`:"number",help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validationVisibility:"live"}};case"date":return{type:"FormKit",props:{type:"date",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"enum":const u=e.enumValues.map(b=>({value:b.id,label:b.name}));return{type:"FormKit",props:{type:"select",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],options:u,help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"select":const h=be(e.customForm,{entries:[]}).entries.map(b=>({value:b.key,label:b.value}));return{type:"FormKit",props:{type:"select",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],options:h,placeholder:n,help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"string":return{type:"FormKit",props:{type:"text",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"confirm":return{type:"h3",innerText:e.label};case"boolean":return{type:"FormKit",props:{type:"checkbox",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"file":const _=be(e.customForm,{multiple:!1}).multiple;return{type:"div",props:{class:"ui-dynamic-form-file-wrapper"},isFileField:!0,field:e,multiple:_,isReadOnly:l,hint:r,validation:i,name:s};case"checkbox":const C=be(e.customForm,{entries:[]}).entries.map(b=>({value:b.key,label:b.value}));return{type:"FormKit",props:{type:"checkbox",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],options:C,help:r,fieldsetClass:"custom-fieldset",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"color":return{type:"FormKit",props:{type:"color",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"datetime-local":return{type:"FormKit",props:{type:"datetime-local",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"email":return{type:"FormKit",props:{type:"email",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"header":let m="h1";const k=be(e.customForm);return k&&k.style==="heading_2"&&(m="h2"),k&&k.style==="heading_3"&&(m="h3"),{type:m,innerText:this.formData[e.id]};case"hidden":return{type:"input",props:{type:"hidden",value:this.formData[e.id]}};case"month":return{type:"FormKit",props:{type:"month",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"paragraph":const p=this.formData[e.id]||e.defaultValue||e.label||"";return{type:"div",innerHTML:hp(p),class:"ui-dynamic-form-paragraph"};case"password":return{type:"FormKit",props:{type:"password",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"radio":const A=be(e.customForm,{entries:[]}).entries.map(b=>({value:b.key,label:b.value}));return{type:"FormKit",props:{type:"radio",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],options:A,help:r,fieldsetClass:"custom-fieldset",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"range":const E=be(e.customForm);return{type:"v-slider",props:{id:e.id,name:s,required:e.required,min:E.min,max:E.max,step:E.step,thumbLabel:!0,labelClass:"ui-dynamic-form-input-label",readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"tel":return{type:"FormKit",props:{type:"tel",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"textarea":const $=be(e.customForm,{}).rows;return{type:"FormKit",props:{type:"textarea",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],rows:$,help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"time":return{type:"FormKit",props:{type:"time",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"url":return{type:"FormKit",props:{type:"url",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"week":return{type:"FormKit",props:{type:"week",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};default:return{type:"FormKit",props:{type:e.type,id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}}}},toggleCollapse(){this.collapsed=!this.collapsed},getRowWidthStyling(e,t){let r="";return t===0&&(r+="margin-top: 12px;"),e.type,r+="flex-basis: 100%;",r},getForm(){return it("form")},fields(){var r;return(((r=this.userTask.userTaskConfig)==null?void 0:r.formFields)??[]).map(n=>({...n,items:yp(n.type,n)}))},send(e,t){const r=[];r[t]=e,this.$socket.emit("widget-action",this.id,r)},init(e){if(this.msg=e,!e)return;if(this.originalFileData={},this.previewCache={},this.cleanupObjectUrls(),this.actions=this.props.options,e.payload&&e.payload.userTask)this.userTask=e.payload.userTask;else{this.userTask=null,this.formData={},this.originalFileData={},this.cleanupObjectUrls();return}const r=this.userTask.userTaskConfig.formFields,n=r.map(l=>l.id),i=this.userTask.startToken,s=e.payload.formData;this.formIsFinished=!!e.payload.formData,this.formIsFinished&&(this.collapsed=this.props.collapse_when_finished);const a=r.some(l=>l.type==="confirm");r&&r.forEach(l=>{var c,u,h,_;if(this.formData[l.id]=l.defaultValue,l.type==="confirm"){const C=be(l.customForm,{}),m=C.confirmButtonText??"Confirm",k=C.declineButtonText??"Decline",p=[{alignment:((c=this.props.confirm_actions[1])==null?void 0:c.alignment)||"left",primary:((u=this.props.confirm_actions[1])==null?void 0:u.primary)||"destructive",label:k,condition:"",isConfirmAction:!0,confirmFieldId:l.id,confirmValue:!1},{alignment:((h=this.props.confirm_actions[0])==null?void 0:h.alignment)||"right",primary:((_=this.props.confirm_actions[0])==null?void 0:_.primary)||"primary",label:m,condition:"",isConfirmAction:!0,confirmFieldId:l.id,confirmValue:!0}],w=this.props.options.filter(v=>{if(!v.condition)return!0;try{const A={...this.userTask,isConfirmDialog:!0};return!!Function("fields","usertask","msg",'"use strict"; return ('+v.condition+")")(this.formData,A,this.msg)}catch(A){return console.error("Error while evaluating condition: "+A),!1}});this.actions=[...w,...p]}}),!a&&this.props.handle_confirmation_dialogs&&(this.actions=this.props.options.filter(l=>{if(!l.condition)return!0;try{const c={...this.userTask,isConfirmDialog:!1};return!!Function("fields","usertask","msg",'"use strict"; return ('+l.condition+")")(this.formData,c,this.msg)}catch(c){return console.error("Error while evaluating condition: "+c),!1}})),i&&Object.keys(i).filter(l=>n.includes(l)).forEach(l=>{const c=r.find(u=>u.id===l);c&&c.type==="file"?this.formData[l]=this.transformBase64ToFormKitFormat(i[l],c):this.formData[l]=i[l]}),this.formIsFinished&&Object.keys(s).filter(l=>n.includes(l)).forEach(l=>{const c=r.find(u=>u.id===l);c&&c.type==="file"?this.formData[l]=this.transformBase64ToFormKitFormat(s[l],c):this.formData[l]=s[l]}),o.nextTick(()=>{this.focusFirstFormField()})},async actionFn(e){if(e.isConfirmAction&&e.confirmFieldId&&(this.formData[e.confirmFieldId]=e.confirmValue),this.checkCondition(e.condition,{isConfirmDialog:this.isConfirmDialog})){this.showError("");let t={...this.formData};const r=this.userTask.userTaskConfig.formFields;try{t=await this.processFileFields(t,r)}catch{this.showError("Fehler beim Verarbeiten der Dateien");return}r.forEach(s=>{const a=t[s.id];if((s.type==="number"||s.type==="long")&&a!=null&&a!=="")if(s.type==="long"){const l=Number.parseInt(a,10);isNaN(l)||(t[s.id]=l)}else{const l=Number.parseFloat(a);isNaN(l)||(t[s.id]=l)}});const n=this.msg??{};n.payload={formData:t,userTask:this.userTask};let i;if(e.isConfirmAction){const s=e.confirmValue?1:0;i=this.props.options.length+s}else i=this.props.options.findIndex(s=>s.label===e.label);this.send(n,i)}else this.showError(e.errorMessage)},checkCondition(e,t={}){if(e==="")return!0;try{const r={...this.userTask,isConfirmDialog:t.isConfirmDialog||!1},n=this.getForm();return!!Function("fields","form","usertask","msg",'"use strict"; return ('+e+")")(this.formData,n,r,this.msg)}catch(r){return console.error("Error while evaluating condition: "+r),!1}},showError(e){this.errorMsg=e},focusFirstFormField(){if(!(this.collapsed||!this.hasUserTask)&&this.firstFormFieldRef){let e=null;this.firstFormFieldRef.node&&this.firstFormFieldRef.node.input instanceof HTMLElement?e=this.firstFormFieldRef.node.input:this.firstFormFieldRef.$el instanceof HTMLElement&&(["INPUT","TEXTAREA","SELECT"].includes(this.firstFormFieldRef.$el.tagName)?e=this.firstFormFieldRef.$el:e=this.firstFormFieldRef.$el.querySelector('input:not([type="hidden"]), textarea, select')),e?e.focus():console.warn("Could not find a focusable input element for the first form field.")}},transformBase64ToFormKitFormat(e,t){if(Array.isArray(e)&&e.length>0&&typeof e[0]=="object"&&e[0].name&&!e[0].data)return e;const r=t.id,n=be(t.customForm,{multiple:!1}).multiple;if(e&&typeof e=="object"&&e.name&&e.data){this.originalFileData[r]=e;const i={name:e.name};return n?[i]:[i]}return Array.isArray(e)?(this.originalFileData[r]=e,e.filter(s=>s&&typeof s=="object"&&s.name).map(s=>({name:s.name}))):[]},hasActualFileObjects(e){return e?Array.isArray(e)?e.some(t=>t instanceof File||t&&t.file instanceof File||t&&t.file instanceof FileList&&t.file.length>0):e instanceof File||e instanceof FileList&&e.length>0||e&&e.file instanceof File||e&&e.file instanceof FileList&&e.file.length>0:!1},async convertFileToBase64(e){return new Promise((t,r)=>{const n=new FileReader;n.onload=()=>{const i=n.result.split(",")[1];t({name:e.name,size:e.size,type:e.type,lastModified:e.lastModified,data:i})},n.onerror=r,n.readAsDataURL(e)})},async processFileFields(e,t){const r={...e};for(const n of t)if(n.type==="file"){const i=r[n.id],s=n.id;if(this.originalFileData[s]){r[s]=this.originalFileData[s];continue}if(i){const a=be(n.customForm,{multiple:!1}).multiple;if(a&&Array.isArray(i)){const l=[];for(const c of i){const u=await this.processIndividualFile(c);u&&l.push(u)}r[n.id]=l}else if(Array.isArray(i)){const l=[];for(const c of i){const u=await this.processIndividualFile(c);u&&l.push(u)}r[n.id]=a?l:l[0]||null}else if(i){const l=await this.processIndividualFile(i);l&&(r[n.id]=l)}}}return r},async processIndividualFile(e){let t=null;if(e instanceof File)t=e;else if(e instanceof FileList&&e.length>0)t=e[0];else if(e&&e.file instanceof File)t=e.file;else if(e&&e.file instanceof FileList&&e.file.length>0)t=e.file[0];else if(Array.isArray(e)&&e.length>0)e[0]instanceof File?t=e[0]:e[0]&&e[0].file instanceof File?t=e[0].file:e[0]&&e[0].file instanceof FileList&&e[0].file.length>0&&(t=e[0].file[0]);else if(typeof e=="object"&&e.data&&e.name)return e;return t instanceof File?await this.convertFileToBase64(t):(e&&typeof e=="object"&&!e.data&&console.warn("Could not process file data:",e),e)},isImageFile(e){if(!e||typeof e!="object")return!1;const t=e.type;return t?t.startsWith("image/"):!1},generateImagePreviewUrl(e){return!e||!e.data||!e.type?null:`data:${e.type};base64,${e.data}`},generateFileDownloadUrl(e){return!e||!e.data||!e.type?null:`data:${e.type};base64,${e.data}`},getFilePreviewsForField(e){const t=this.formData[e]||null,r=this.originalFileData[e]||null,n=`${e}_${JSON.stringify(t)}_${JSON.stringify(r)}`;if(this.previewCache[n])return this.previewCache[n];const i=this.formData[e],s=this.originalFileData[e];if(!i&&!s)return this.previewCache[n]=[],[];let a=[];return i&&Array.isArray(i)&&i.length>0&&this.hasActualFileObjects(i)?a=this.generatePreviewsFromCurrentFiles(i,e):s&&(a=(Array.isArray(s)?s:[s]).filter(u=>u&&u.name).map(u=>({name:u.name,url:this.isImageFile(u)?this.generateImagePreviewUrl(u):this.generateFileDownloadUrl(u),size:u.size,type:u.type,isImage:this.isImageFile(u)}))),this.previewCache[n]=a,a},generatePreviewsFromCurrentFiles(e,t=null){return t&&this.objectUrlsByField[t]?(this.objectUrlsByField[t].forEach(n=>URL.revokeObjectURL(n)),this.objectUrlsByField[t]=[]):t&&(this.objectUrlsByField[t]=[]),e.filter(n=>{let i=null;return n instanceof File?i=n:n&&n.file instanceof File?i=n.file:Array.isArray(n)&&n[0]instanceof File&&(i=n[0]),i}).map(n=>{let i=null;n instanceof File?i=n:n&&n.file instanceof File?i=n.file:Array.isArray(n)&&n[0]instanceof File&&(i=n[0]);const s=i?URL.createObjectURL(i):null;return s&&t&&(this.objectUrlsByField[t]||(this.objectUrlsByField[t]=[]),this.objectUrlsByField[t].push(s)),{name:i.name,url:s,size:i.size,type:i.type,isImage:i.type&&i.type.startsWith("image/"),isObjectUrl:!0}}).filter(n=>n.url!==null)},formatFileSize(e){if(!e)return"0 B";const t=1024,r=["B","KB","MB","GB"],n=Math.floor(Math.log(e)/Math.log(t));return parseFloat((e/Math.pow(t,n)).toFixed(2))+" "+r[n]},openImageModal(e){this.modalImage=e,this.imageModalOpen=!0},closeImageModal(){this.imageModalOpen=!1,this.modalImage=null},cleanupObjectUrls(e=null){e?(this.objectUrlsByField[e]&&(this.objectUrlsByField[e].forEach(t=>{URL.revokeObjectURL(t)}),this.objectUrlsByField[e]=[]),Object.keys(this.previewCache).forEach(t=>{t.startsWith(e+"_")&&delete this.previewCache[t]})):(Object.keys(this.objectUrlsByField).forEach(t=>{this.objectUrlsByField[t].forEach(r=>{URL.revokeObjectURL(r)})}),this.objectUrlsByField={},this.previewCache={})},getFileIcon(e){return e?e.startsWith("image/")?"mdi-image":e==="application/pdf"?"mdi-file-pdf-box":e.includes("word")||e.includes("msword")||e==="application/vnd.openxmlformats-officedocument.wordprocessingml.document"?"mdi-file-word":e.includes("excel")||e.includes("spreadsheet")||e==="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"?"mdi-file-excel":e.includes("powerpoint")||e.includes("presentation")||e==="application/vnd.openxmlformats-officedocument.presentationml.presentation"?"mdi-file-powerpoint":e==="text/plain"?"mdi-file-document":e.includes("zip")||e.includes("rar")||e.includes("7z")?"mdi-folder-zip":"mdi-file":"mdi-file"},getFileIconColor(e){return e?e.startsWith("image/")?"green":e==="application/pdf"?"red":e.includes("word")||e.includes("msword")||e==="application/vnd.openxmlformats-officedocument.wordprocessingml.document"?"blue":e.includes("excel")||e.includes("spreadsheet")||e==="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"?"green":e.includes("powerpoint")||e.includes("presentation")||e==="application/vnd.openxmlformats-officedocument.presentationml.presentation"?"orange":"grey":"grey"},getFileTypeDescription(e){return e?e==="application/pdf"?"PDF-Dokument":e.includes("word")||e.includes("msword")||e==="application/vnd.openxmlformats-officedocument.wordprocessingml.document"?"Word-Dokument":e.includes("excel")||e.includes("spreadsheet")||e==="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"?"Excel-Arbeitsmappe":e.includes("powerpoint")||e.includes("presentation")||e==="application/vnd.openxmlformats-officedocument.presentationml.presentation"?"PowerPoint-Präsentation":e==="text/plain"?"Textdatei":e.startsWith("image/")?"Bilddatei":"Datei":"Unbekannter Dateityp"},openFileModal(e){this.modalFile=e,this.fileModalOpen=!0},closeFileModal(){this.fileModalOpen=!1,this.modalFile=null},downloadFile(e){if(!e||!e.url||!e.name)return;if(e.isObjectUrl){const r=this.findFieldIdForFile(e);if(r){const n=this.formData[r],i=this.findOriginalFile(n,e.name);if(i){const s=document.createElement("a");s.href=URL.createObjectURL(i),s.download=e.name,document.body.appendChild(s),s.click(),document.body.removeChild(s),URL.revokeObjectURL(s.href);return}}}if(e.url.startsWith("data:")){const r=document.createElement("a");r.href=e.url,r.download=e.name,document.body.appendChild(r),r.click(),document.body.removeChild(r);return}const t=document.createElement("a");t.href=e.url,t.download=e.name,t.target="_blank",document.body.appendChild(t),t.click(),document.body.removeChild(t)},findFieldIdForFile(e){if(!this.userTask||!this.userTask.userTaskConfig||!this.userTask.userTaskConfig.formFields)return null;const t=this.userTask.userTaskConfig.formFields.filter(r=>r.type==="file");for(const r of t)if(this.getFilePreviewsForField(r.id).some(i=>i.name===e.name&&i.url===e.url))return r.id;return null},findOriginalFile(e,t){if(!e)return null;if(Array.isArray(e))for(const r of e){const n=this.extractFileFromItem(r);if(n&&n.name===t)return n}else{const r=this.extractFileFromItem(e);if(r&&r.name===t)return r}return null},extractFileFromItem(e){return e instanceof File?e:e&&e.file instanceof File?e.file:e instanceof FileList&&e.length>0?e[0]:e&&e.file instanceof FileList&&e.file.length>0?e.file[0]:null}}};function yp(e,t){return e==="enum"?t.enumValues.map(r=>({title:r.name,value:r.id})):null}const bp={className:"ui-dynamic-form-wrapper"},_p={key:0,style:{"margin-bottom":"0px"}},kp={key:0},vp=["data-columns"],wp={key:2},$p={class:"formkit-label"},xp={class:"formkit-help"},Cp={key:3,class:"ui-dynamic-form-file-wrapper"},Ap={key:0,class:"ui-dynamic-form-file-previews"},Sp={class:"ui-dynamic-form-preview-grid"},Ep=["onClick"],Tp=["src","alt"],Fp={key:1,class:"ui-dynamic-form-file-icon"},Rp={class:"ui-dynamic-form-preview-info"},Op={class:"ui-dynamic-form-preview-name"},Ip={class:"ui-dynamic-form-preview-size"},Np={key:1},Dp={key:1,style:{"padding-top":"32px"}},Pp={key:0},Mp=["src","alt"],Lp={key:1,class:"ui-dynamic-form-modal-file-icon"},Vp={class:"text-h6 mt-4"},zp={style:{"margin-top":"16px"}};function Bp(e,t,r,n,i,s){const a=o.resolveComponent("UIDynamicFormTitleText"),l=o.resolveComponent("v-icon"),c=o.resolveComponent("FormKit"),u=o.resolveComponent("v-col"),h=o.resolveComponent("v-row"),_=o.resolveComponent("v-alert"),C=o.resolveComponent("UIDynamicFormFooterAction"),m=o.resolveComponent("v-form"),k=o.resolveComponent("v-card-title"),p=o.resolveComponent("v-card-text"),w=o.resolveComponent("v-btn"),v=o.resolveComponent("v-spacer"),A=o.resolveComponent("v-card-actions"),E=o.resolveComponent("v-card"),$=o.resolveComponent("v-dialog");return o.openBlock(),o.createElementBlock("div",{className:"ui-dynamic-form-external-sizing-wrapper",style:o.normalizeStyle(r.props.card_size_styling)},[r.props.title_style==="outside"&&s.hasUserTask?(o.openBlock(),o.createBlock(a,{key:0,style:o.normalizeStyle(r.props.title_style),title:s.effectiveTitle,customStyles:r.props.title_custom_text_styling,titleIcon:r.props.title_icon,collapsible:r.props.collapsible||r.props.collapse_when_finished&&i.formIsFinished,collapsed:i.collapsed,toggleCollapse:s.toggleCollapse},null,8,["style","title","customStyles","titleIcon","collapsible","collapsed","toggleCollapse"])):o.createCommentVNode("",!0),o.createElementVNode("div",bp,[s.hasUserTask?(o.openBlock(),o.createElementBlock("p",_p,[o.createVNode(m,{ref:"form",modelValue:e.form,"onUpdate:modelValue":t[0]||(t[0]=b=>e.form=b),class:o.normalizeClass(s.dynamicClass)},{default:o.withCtx(()=>[r.props.title_style!="outside"?(o.openBlock(),o.createBlock(a,{key:0,style:o.normalizeStyle(r.props.title_style),title:s.effectiveTitle,customStyles:r.props.title_custom_text_styling,titleIcon:r.props.title_icon,collapsible:r.props.collapsible||r.props.collapse_when_finished&&i.formIsFinished,collapsed:i.collapsed,toggleCollapse:s.toggleCollapse},null,8,["style","title","customStyles","titleIcon","collapsible","collapsed","toggleCollapse"])):o.createCommentVNode("",!0),o.createVNode(o.Transition,{name:"cardCollapse"},{default:o.withCtx(()=>[i.collapsed?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("div",kp,[o.createElementVNode("div",{className:"ui-dynamic-form-formfield-positioner",style:o.normalizeStyle(r.props.inner_card_styling),"data-columns":r.props.form_columns||1},[o.createVNode(c,{id:"form",type:"group"},{default:o.withCtx(()=>[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(s.fields(),(b,d)=>(o.openBlock(),o.createBlock(h,{key:b,class:o.normalizeClass(b.type==="header"?"ui-dynamic-form-header-row":""),style:o.normalizeStyle(s.getRowWidthStyling(b,d))},{default:o.withCtx(()=>[o.createVNode(u,{cols:"12"},{default:o.withCtx(()=>[s.createComponent(b).innerHTML?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(s.createComponent(b).type),o.mergeProps({key:0,ref_for:!0},s.createComponent(b).props,{class:s.createComponent(b).class,innerHTML:s.createComponent(b).innerHTML,ref_for:!0,ref:g=>{d===0&&(i.firstFormFieldRef=g)}}),null,16,["class","innerHTML"])):s.createComponent(b).innerText?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(s.createComponent(b).type),o.mergeProps({key:1,ref_for:!0},s.createComponent(b).props,{ref_for:!0,ref:g=>{d===0&&(i.firstFormFieldRef=g)},modelValue:i.formData[b.id],"onUpdate:modelValue":g=>i.formData[b.id]=g}),{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(s.createComponent(b).innerText),1)]),_:2},1040,["modelValue","onUpdate:modelValue"])):s.createComponent(b).type=="v-slider"?(o.openBlock(),o.createElementBlock("div",wp,[o.createElementVNode("p",$p,o.toDisplayString(b.label),1),(o.openBlock(),o.createBlock(o.resolveDynamicComponent(s.createComponent(b).type),o.mergeProps({ref_for:!0},s.createComponent(b).props,{ref_for:!0,ref:g=>{d===0&&(i.firstFormFieldRef=g)},modelValue:b.defaultValue,"onUpdate:modelValue":g=>b.defaultValue=g}),null,16,["modelValue","onUpdate:modelValue"])),o.createElementVNode("p",xp,o.toDisplayString(b.customForm?b.customForm.hint:void 0),1)])):s.createComponent(b).isFileField?(o.openBlock(),o.createElementBlock("div",Cp,[s.getFilePreviewsForField(b.id).length>0?(o.openBlock(),o.createElementBlock("div",Ap,[t[3]||(t[3]=o.createElementVNode("h4",null,"Current files:",-1)),o.createElementVNode("div",Sp,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(s.getFilePreviewsForField(b.id),g=>(o.openBlock(),o.createElementBlock("div",{key:g.name,class:"ui-dynamic-form-preview-item",onClick:P=>s.openFileModal(g)},[g.isImage?(o.openBlock(),o.createElementBlock("img",{key:0,src:g.url,alt:g.name,class:"ui-dynamic-form-preview-image"},null,8,Tp)):(o.openBlock(),o.createElementBlock("div",Fp,[o.createVNode(l,{size:"48",color:s.getFileIconColor(g.type)},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(s.getFileIcon(g.type)),1)]),_:2},1032,["color"])])),o.createElementVNode("div",Rp,[o.createElementVNode("span",Op,o.toDisplayString(g.name),1),o.createElementVNode("span",Ip,o.toDisplayString(s.formatFileSize(g.size)),1)])],8,Ep))),128))])])):o.createCommentVNode("",!0),o.createVNode(c,{type:"file",id:b.id,name:s.createComponent(b).name,label:b.label,required:b.required,modelValue:i.formData[b.id],"onUpdate:modelValue":g=>i.formData[b.id]=g,help:s.createComponent(b).hint,innerClass:"reset-background",wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${i.theme}`,readonly:s.createComponent(b).isReadOnly,disabled:s.createComponent(b).isReadOnly,multiple:s.createComponent(b).multiple,validation:s.createComponent(b).validation,validationVisibility:"live",ref_for:!0,ref:g=>{d===0&&(i.firstFormFieldRef=g)}},null,8,["id","name","label","required","modelValue","onUpdate:modelValue","help","inputClass","readonly","disabled","multiple","validation"])])):(o.openBlock(),o.createBlock(o.resolveDynamicComponent(s.createComponent(b).type),o.mergeProps({key:4,ref_for:!0},s.createComponent(b).props,{ref_for:!0,ref:g=>{d===0&&(i.firstFormFieldRef=g)},modelValue:i.formData[b.id],"onUpdate:modelValue":g=>i.formData[b.id]=g}),null,16,["modelValue","onUpdate:modelValue"]))]),_:2},1024)]),_:2},1032,["class","style"]))),128))]),_:1})],12,vp),o.createVNode(h,{class:o.normalizeClass(s.dynamicFooterClass)},{default:o.withCtx(()=>[i.errorMsg.length>0?(o.openBlock(),o.createBlock(h,{key:0,style:{padding:"12px"}},{default:o.withCtx(()=>[o.createVNode(_,{type:"error"},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(i.errorMsg),1)]),_:1})]),_:1})):o.createCommentVNode("",!0),r.props.actions_inside_card&&s.hasUserTask&&i.actions.length>0?(o.openBlock(),o.createBlock(C,{key:1,actions:i.actions,actionCallback:s.actionFn,formIsFinished:i.formIsFinished,style:{padding:"16px","padding-top":"0px"}},null,8,["actions","actionCallback","formIsFinished"])):o.createCommentVNode("",!0)]),_:1},8,["class"])]))]),_:1})]),_:1},8,["modelValue","class"])])):(o.openBlock(),o.createElementBlock("p",Np,[r.props.waiting_info.length>0||r.props.waiting_title.length>0?(o.openBlock(),o.createBlock(_,{key:0,text:r.props.waiting_info,title:r.props.waiting_title},null,8,["text","title"])):o.createCommentVNode("",!0)]))]),!r.props.actions_inside_card&&s.hasUserTask&&i.actions.length>0?(o.openBlock(),o.createElementBlock("div",Dp,[o.createVNode(C,{actions:i.actions,actionCallback:s.actionFn},null,8,["actions","actionCallback"])])):o.createCommentVNode("",!0),o.createVNode($,{modelValue:i.fileModalOpen,"onUpdate:modelValue":t[2]||(t[2]=b=>i.fileModalOpen=b),"max-width":"800px"},{default:o.withCtx(()=>[i.modalFile?(o.openBlock(),o.createBlock(E,{key:0},{default:o.withCtx(()=>[o.createVNode(k,{class:"headline"},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(i.modalFile.name),1)]),_:1}),o.createVNode(p,null,{default:o.withCtx(()=>[i.modalFile.isImage?(o.openBlock(),o.createElementBlock("div",Pp,[o.createElementVNode("img",{src:i.modalFile.url,alt:i.modalFile.name,style:{width:"100%","max-height":"70vh","object-fit":"contain"}},null,8,Mp)])):(o.openBlock(),o.createElementBlock("div",Lp,[o.createVNode(l,{size:"120",color:s.getFileIconColor(i.modalFile.type)},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(s.getFileIcon(i.modalFile.type)),1)]),_:1},8,["color"]),o.createElementVNode("p",Vp,o.toDisplayString(s.getFileTypeDescription(i.modalFile.type)),1)])),o.createElementVNode("div",zp,[t[4]||(t[4]=o.createElementVNode("strong",null,"Size:",-1)),o.createTextVNode(" "+o.toDisplayString(s.formatFileSize(i.modalFile.size)),1),t[5]||(t[5]=o.createElementVNode("br",null,null,-1)),t[6]||(t[6]=o.createElementVNode("strong",null,"Type:",-1)),o.createTextVNode(" "+o.toDisplayString(i.modalFile.type),1)])]),_:1}),o.createVNode(A,null,{default:o.withCtx(()=>[o.createVNode(w,{variant:"tonal",rounded:"lg",onClick:t[1]||(t[1]=b=>s.downloadFile(i.modalFile))},{default:o.withCtx(()=>[...t[7]||(t[7]=[o.createTextVNode(" Herunterladen ",-1)])]),_:1}),o.createVNode(v),o.createVNode(w,{variant:"flat",rounded:"lg",onClick:s.closeFileModal},{default:o.withCtx(()=>[...t[8]||(t[8]=[o.createTextVNode("Schließen",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})):o.createCommentVNode("",!0)]),_:1},8,["modelValue"])],4)}const Up=yn(gp,[["render",Bp]]);fe.UIDynamicForm=Up,Object.defineProperty(fe,Symbol.toStringTag,{value:"Module"})});
62
+ `+ue),pt&&or([y,R,I],Ve=>{ue=Ft(ue,Ve," ")}),$&&hr?$.createHTML(ue):ue},t.setConfig=function(){let O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};En(O),vn=!0},t.clearConfig=function(){gt=null,vn=!1},t.isValidAttribute=function(O,f,x){gt||En({});const T=X(O),G=X(f);return Ys(T,G,x)},t.addHook=function(O,f){typeof f=="function"&&Tt(F[O],f)},t.removeHook=function(O,f){if(f!==void 0){const x=Nf(F[O],f);return x===-1?void 0:Df(F[O],x,1)[0]}return $s(F[O])},t.removeHooks=function(O){F[O]=[]},t.removeAllHooks=function(){F=Rs()},t}var Qf=Os();const yn=(e,t)=>{const r=e.__vccOpts||e;for(const[n,i]of t)r[n]=i;return r},Jf={name:"UIDynamicFormFooterAction",props:{actions:{type:Array,default(){return[]}},actionCallback:{type:Function,default(e){}},formIsFinished:{type:Boolean,default(){return!1}}},computed:{leftSideActions(){const e=this.actions.filter(r=>r.alignment==="left"||!r.alignment),t=(r,n)=>{const i=r.primary==="primary",s=n.primary==="primary";return i&&!s?-1:!i&&s?1:0};return e.sort(t)},rightSideActions(){const e=this.actions.filter(r=>r.alignment==="right"),t=(r,n)=>{const i=r.primary==="primary",s=n.primary==="primary";return!i&&s?-1:i&&!s?1:0};return e.sort(t)}},methods:{getActionButtonClass(e){switch(e.primary){case"primary":return"ui-dynamic-form-footer-action-primary";case"destructive":return"ui-dynamic-form-footer-action-terminate";case"secondary":default:return"ui-dynamic-form-footer-action-secondary"}}}},ep={class:"ui-dynamic-form-footer-actions-container"},tp={class:"ui-dynamic-form-footer-actions-left"},rp={class:"ui-dynamic-form-footer-actions-right"};function np(e,t,r,n,i,s){const a=o.resolveComponent("v-btn");return o.openBlock(),o.createElementBlock("div",ep,[o.createElementVNode("div",tp,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(s.leftSideActions,(l,c)=>(o.openBlock(),o.createElementBlock("div",{key:`left-${c}`},[o.createVNode(a,{class:o.normalizeClass(["ui-dynamic-form-footer-action-button",s.getActionButtonClass(l)]),disabled:r.formIsFinished,onClick:u=>r.actionCallback(l)},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(l.label),1)]),_:2},1032,["class","disabled","onClick"])]))),128))]),o.createElementVNode("div",rp,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(s.rightSideActions,(l,c)=>(o.openBlock(),o.createElementBlock("div",{key:`right-${c}`},[o.createVNode(a,{class:o.normalizeClass(["ui-dynamic-form-footer-action-button",s.getActionButtonClass(l)]),disabled:r.formIsFinished,onClick:u=>r.actionCallback(l)},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(l.label),1)]),_:2},1032,["class","disabled","onClick"])]))),128))])])}const ip=yn(Jf,[["render",np]]),sp={name:"UIDynamicFormTitleText",props:{style:{type:String,default(){return"default"}},title:{type:String,default(){return""}},customStyles:{type:String,default(){return""}},collapsible:{type:Boolean,default(){return!1}},collapsed:{type:Boolean,default(){return!1}},titleIcon:{type:String,default(){return""}},toggleCollapse:{type:Function,default(){}}},computed:{typeSpecificStyling(){return`ui-dynamic-form-title-${this.style}`}}},ap={key:0},lp=["fill"],op=["fill"],cp=["src"],up={key:1};function fp(e,t,r,n,i,s){return r.title.length>0?(o.openBlock(),o.createElementBlock("div",ap,[o.createElementVNode("h3",{class:o.normalizeClass([s.typeSpecificStyling,"ui-dynamic-form-title-responsive"]),style:{display:"flex",gap:"25px","align-items":"center"}},[r.collapsible&&!r.collapsed?(o.openBlock(),o.createElementBlock("svg",{key:0,style:{width:"25px",height:"25px",cursor:"pointer"},xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512",onClick:t[0]||(t[0]=(...a)=>r.toggleCollapse&&r.toggleCollapse(...a))},[o.createElementVNode("path",{fill:r.style==="default"?"white":"black",d:"M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"},null,8,lp)])):o.createCommentVNode("",!0),r.collapsible&&r.collapsed?(o.openBlock(),o.createElementBlock("svg",{key:1,style:{width:"25px",height:"25px",cursor:"pointer"},xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 320 512",onClick:t[1]||(t[1]=(...a)=>r.toggleCollapse&&r.toggleCollapse(...a))},[o.createElementVNode("path",{fill:r.style==="default"?"white":"black",d:"M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z"},null,8,op)])):o.createCommentVNode("",!0),o.createElementVNode("div",{style:o.normalizeStyle({width:"fit-content",display:r.style==="default"?"":"flex"})},[r.titleIcon.length>0?(o.openBlock(),o.createElementBlock("img",{key:0,src:r.titleIcon,style:{"padding-right":"16px"}},null,8,cp)):o.createCommentVNode("",!0),o.createElementVNode("span",{style:o.normalizeStyle(r.customStyles)},o.toDisplayString(r.title),5),r.style==="default"?(o.openBlock(),o.createElementBlock("hr",up)):o.createCommentVNode("",!0)],4)],2)])):o.createCommentVNode("",!0)}const pp=yn(sp,[["render",fp]]);function fr(e,t,[r,n]){const i=e.at(`$parent.${r}`),s=i==null?void 0:i.value;return console.log("requiredIf:",{target:r,expected:n,targetVal:s,value:t}),(typeof n>"u"?!!s:String(s)===String(n))?t!=null&&String(t).trim().length>0:!0}fr.message=({name:e},[t,r])=>typeof r>"u"?`${e} ist erforderlich, wenn ${t} ausgefüllt ist.`:`${e} ist erforderlich, wenn ${t} = ${r} ist.`,fr.blocking=!0,fr.skipEmpty=!0;function bn(e){if(!e.value)return!0;const t=e.value.split(/\s*[,;]\s*/),r=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;return t.every(n=>r.test(n))}bn.blocking=!0,bn.skipEmpty=!0;function be(e,t={}){if(typeof e=="string")try{return JSON.parse(e)}catch{return t}return typeof e=="object"&&e!==null?{...e}:t}class mp extends U.Renderer{link(t){return super.link(t).replace("<a","<a target='_blank'")}html(t){const r=super.html(t);return r.startsWith("<a ")&&!r.includes("target=")?r.replace("<a ",'<a target="_blank" '):r}}class dp extends U.Hooks{postprocess(t){return Qf.sanitize(t,{ADD_ATTR:["target"]})}}function hp(e){return e?U.parse(e.toString(),{renderer:new mp,hooks:new dp}):""}const gp={name:"UIDynamicForm",components:{FormKit:Zr,UIDynamicFormFooterAction:ip,UIDynamicFormTitleText:pp},inject:["$socket"],props:{id:{type:String,required:!0},props:{type:Object,default:()=>({})},state:{type:Object,default:()=>({enabled:!1,visible:!1})}},setup(e){const r=o.getCurrentInstance().appContext.app,n=Wr({theme:"genesis",locales:{de:ql},locale:"de",rules:{requiredIf:fr,multipleEmails:bn}});r.use(Nu,n)},data(){return{actions:[],formData:{},originalFileData:{},userTask:null,theme:"",errorMsg:"",formIsFinished:!1,msg:null,collapsed:!1,firstFormFieldRef:null,fileModalOpen:!1,modalFile:null,objectUrlsByField:{},previewCache:{}}},computed:{dynamicClass(){return`ui-dynamic-form-${this.theme} ui-dynamic-form-common`},dynamicFooterClass(){return`ui-dynamic-form-footer-${this.theme} ui-dynamic-form-footer-common`},hasUserTask(){return!!this.userTask},totalOutputs(){const e=this.props.handle_confirmation_dialogs?this.props.confirm_actions?this.props.confirm_actions.length:2:0;return this.props.options.length+e+(this.props.trigger_on_change?1:0)},isConfirmDialog(){return this.userTask.userTaskConfig.formFields.some(e=>e.type==="confirm")},effectiveTitle(){return this.props.title_text_type==="str"?this.props.title_text:this.props.title_text_type==="msg"?this.msg.dynamicTitle:""}},watch:{formData:{handler(e,t){if(t&&(this.userTask&&this.userTask.userTaskConfig&&this.userTask.userTaskConfig.formFields&&this.userTask.userTaskConfig.formFields.filter(n=>n.type==="file").forEach(n=>{const i=n.id,s=e[i],a=t[i];s!==a&&this.originalFileData[i]&&this.hasActualFileObjects(s)&&(delete this.originalFileData[i],Object.keys(this.previewCache).forEach(c=>{c.startsWith(i+"_")&&delete this.previewCache[c]}),this.cleanupObjectUrls(i))}),this.props.trigger_on_change)){const r={payload:{formData:e,userTask:this.userTask}};this.send(r,this.totalOutputs-1)}},deep:!0},collapsed(e){!e&&this.hasUserTask&&o.nextTick(()=>{this.focusFirstFormField()})},userTask(e){e&&!this.collapsed&&o.nextTick(()=>{this.focusFirstFormField()})}},created(){const e=window.location.pathname,t=e.substring(e.lastIndexOf("/")),r=this.$store.state;for(const n in r.ui.pages)if(r.ui.pages[n].path===t){const i=r.ui.pages[n].theme;r.ui.themes[i].name==="ProcessCube Lightmode"?this.theme="light":r.ui.themes[i].name==="ProcessCube Darkmode"?this.theme="dark":this.theme="default";break}},mounted(){document.querySelectorAll(".formkit-input").forEach(t=>{t.classList.add("test")}),this.wheelHandler=t=>{t.target.type==="number"&&t.target.blur()},document.addEventListener("wheel",this.wheelHandler,{passive:!0}),this.$socket.on("msg-input:"+this.id,t=>{this.init(t)}),this.$socket.emit("widget-load",this.id)},unmounted(){var e;(e=this.$socket)==null||e.off("msg-input:"+this.id),this.cleanupObjectUrls(),this.wheelHandler&&document.removeEventListener("wheel",this.wheelHandler)},methods:{createComponent(e){const t=be(e.customForm,{}),r=t.hint,n=t.placeholder,i=t.validation,s=e.id,a=t.customProperties??[],l=this.props.readonly||this.formIsFinished||a.find(c=>["readOnly","readonly"].includes(c.name)&&c.value==="true")?"true":void 0;switch(e.type){case"long":return{type:"FormKit",props:{type:"number",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],number:"integer",min:0,validation:i?`${i}|number`:"number",help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validationVisibility:"live"}};case"number":const c=be(e.customForm).step;return{type:"FormKit",props:{type:"number",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],step:c,number:"float",validation:i?`${i}|number`:"number",help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validationVisibility:"live"}};case"date":return{type:"FormKit",props:{type:"date",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"enum":const u=e.enumValues.map(b=>({value:b.id,label:b.name}));return{type:"FormKit",props:{type:"select",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],options:u,help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"select":const h=be(e.customForm,{entries:[]}).entries.map(b=>({value:b.key,label:b.value}));return{type:"FormKit",props:{type:"select",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],options:h,placeholder:n,help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"string":return{type:"FormKit",props:{type:"text",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"confirm":return{type:"h3",innerText:e.label};case"boolean":return{type:"FormKit",props:{type:"checkbox",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"file":const _=be(e.customForm,{multiple:!1}).multiple;return{type:"div",props:{class:"ui-dynamic-form-file-wrapper"},isFileField:!0,field:e,multiple:_,isReadOnly:l,hint:r,validation:i,name:s};case"checkbox":const C=be(e.customForm,{entries:[]}).entries.map(b=>({value:b.key,label:b.value}));return{type:"FormKit",props:{type:"checkbox",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],options:C,help:r,fieldsetClass:"custom-fieldset",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"color":return{type:"FormKit",props:{type:"color",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"datetime-local":return{type:"FormKit",props:{type:"datetime-local",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"email":return{type:"FormKit",props:{type:"email",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"header":let m="h1";const k=be(e.customForm);return k&&k.style==="heading_2"&&(m="h2"),k&&k.style==="heading_3"&&(m="h3"),{type:m,innerText:this.formData[e.id]};case"hidden":return{type:"input",props:{type:"hidden",value:this.formData[e.id]}};case"month":return{type:"FormKit",props:{type:"month",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"paragraph":const p=this.formData[e.id]||e.defaultValue||e.label||"";return{type:"div",innerHTML:hp(p),class:"ui-dynamic-form-paragraph"};case"password":return{type:"FormKit",props:{type:"password",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"radio":const A=be(e.customForm,{entries:[]}).entries.map(b=>({value:b.key,label:b.value}));return{type:"FormKit",props:{type:"radio",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],options:A,help:r,fieldsetClass:"custom-fieldset",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"range":const E=be(e.customForm);return{type:"v-slider",props:{id:e.id,name:s,required:e.required,min:E.min,max:E.max,step:E.step,thumbLabel:!0,labelClass:"ui-dynamic-form-input-label",readonly:l,disabled:l,validation:i,validationVisibility:"live"}};case"tel":return{type:"FormKit",props:{type:"tel",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"textarea":const $=be(e.customForm,{}).rows;return{type:"FormKit",props:{type:"textarea",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],rows:$,help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"time":return{type:"FormKit",props:{type:"time",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"url":return{type:"FormKit",props:{type:"url",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};case"week":return{type:"FormKit",props:{type:"week",id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,placeholder:n,wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}};default:return{type:"FormKit",props:{type:e.type,id:e.id,name:s,label:e.label,required:e.required,value:this.formData[e.id],help:r,labelClass:"ui-dynamic-form-input-label",inputClass:`input-${this.theme}`,innerClass:`ui-dynamic-form-input-outlines ${this.theme==="dark"?"$remove:formkit-inner":""}`,readonly:l,validation:i,validationVisibility:"live"}}}},toggleCollapse(){this.collapsed=!this.collapsed},getRowWidthStyling(e,t){let r="";return t===0&&(r+="margin-top: 12px;"),e.type,r+="flex-basis: 100%;",r},getForm(){return it("form")},fields(){var r;return(((r=this.userTask.userTaskConfig)==null?void 0:r.formFields)??[]).map(n=>({...n,items:yp(n.type,n)}))},send(e,t){const r=[];r[t]=e,this.$socket.emit("widget-action",this.id,r)},init(e){if(this.msg=e,!e)return;if(this.originalFileData={},this.previewCache={},this.cleanupObjectUrls(),this.actions=this.props.options,e.payload&&e.payload.userTask)this.userTask=e.payload.userTask;else{this.userTask=null,this.formData={},this.originalFileData={},this.cleanupObjectUrls();return}const r=this.userTask.userTaskConfig.formFields,n=r.map(l=>l.id),i=this.userTask.startToken,s=e.payload.formData;this.formIsFinished=!!e.payload.formData,this.formIsFinished&&(this.collapsed=this.props.collapse_when_finished);const a=r.some(l=>l.type==="confirm");r&&r.forEach(l=>{var c,u,h,_;if(this.formData[l.id]=l.defaultValue,l.type==="confirm"){const C=be(l.customForm,{}),m=C.confirmButtonText??"Confirm",k=C.declineButtonText??"Decline",p=[{alignment:((c=this.props.confirm_actions[1])==null?void 0:c.alignment)||"left",primary:((u=this.props.confirm_actions[1])==null?void 0:u.primary)||"destructive",label:k,condition:"",isConfirmAction:!0,confirmFieldId:l.id,confirmValue:!1},{alignment:((h=this.props.confirm_actions[0])==null?void 0:h.alignment)||"right",primary:((_=this.props.confirm_actions[0])==null?void 0:_.primary)||"primary",label:m,condition:"",isConfirmAction:!0,confirmFieldId:l.id,confirmValue:!0}],w=this.props.options.filter(v=>{if(!v.condition)return!0;try{const A={...this.userTask,isConfirmDialog:!0};return!!Function("fields","usertask","msg",'"use strict"; return ('+v.condition+")")(this.formData,A,this.msg)}catch(A){return console.error("Error while evaluating condition: "+A),!1}});this.actions=[...w,...p]}}),!a&&this.props.handle_confirmation_dialogs&&(this.actions=this.props.options.filter(l=>{if(!l.condition)return!0;try{const c={...this.userTask,isConfirmDialog:!1};return!!Function("fields","usertask","msg",'"use strict"; return ('+l.condition+")")(this.formData,c,this.msg)}catch(c){return console.error("Error while evaluating condition: "+c),!1}})),i&&Object.keys(i).filter(l=>n.includes(l)).forEach(l=>{const c=r.find(u=>u.id===l);c&&c.type==="file"?this.formData[l]=this.transformBase64ToFormKitFormat(i[l],c):this.formData[l]=i[l]}),this.formIsFinished&&Object.keys(s).filter(l=>n.includes(l)).forEach(l=>{const c=r.find(u=>u.id===l);c&&c.type==="file"?this.formData[l]=this.transformBase64ToFormKitFormat(s[l],c):this.formData[l]=s[l]}),o.nextTick(()=>{this.focusFirstFormField()})},async actionFn(e){if(e.isConfirmAction&&e.confirmFieldId&&(this.formData[e.confirmFieldId]=e.confirmValue),this.checkCondition(e.condition,{isConfirmDialog:this.isConfirmDialog})){this.showError("");let t={...this.formData};const r=this.userTask.userTaskConfig.formFields;try{t=await this.processFileFields(t,r)}catch{this.showError("Fehler beim Verarbeiten der Dateien");return}r.forEach(s=>{const a=t[s.id];if((s.type==="number"||s.type==="long")&&a!=null&&a!=="")if(s.type==="long"){const l=Number.parseInt(a,10);isNaN(l)||(t[s.id]=l)}else{const l=Number.parseFloat(a);isNaN(l)||(t[s.id]=l)}});const n=this.msg??{};n.payload={formData:t,userTask:this.userTask};let i;if(e.isConfirmAction){const s=e.confirmValue?1:0;i=this.props.options.length+s}else i=this.props.options.findIndex(s=>s.label===e.label);this.send(n,i)}else this.showError(e.errorMessage)},checkCondition(e,t={}){if(e==="")return!0;try{const r={...this.userTask,isConfirmDialog:t.isConfirmDialog||!1},n=this.getForm();return!!Function("fields","form","usertask","msg",'"use strict"; return ('+e+")")(this.formData,n,r,this.msg)}catch(r){return console.error("Error while evaluating condition: "+r),!1}},showError(e){this.errorMsg=e},focusFirstFormField(){if(!(this.collapsed||!this.hasUserTask)&&this.firstFormFieldRef){let e=null;this.firstFormFieldRef.node&&this.firstFormFieldRef.node.input instanceof HTMLElement?e=this.firstFormFieldRef.node.input:this.firstFormFieldRef.$el instanceof HTMLElement&&(["INPUT","TEXTAREA","SELECT"].includes(this.firstFormFieldRef.$el.tagName)?e=this.firstFormFieldRef.$el:e=this.firstFormFieldRef.$el.querySelector('input:not([type="hidden"]), textarea, select')),e?e.focus():console.warn("Could not find a focusable input element for the first form field.")}},transformBase64ToFormKitFormat(e,t){if(Array.isArray(e)&&e.length>0&&typeof e[0]=="object"&&e[0].name&&!e[0].data)return e;const r=t.id,n=be(t.customForm,{multiple:!1}).multiple;if(e&&typeof e=="object"&&e.name&&e.data){this.originalFileData[r]=e;const i={name:e.name};return n?[i]:[i]}return Array.isArray(e)?(this.originalFileData[r]=e,e.filter(s=>s&&typeof s=="object"&&s.name).map(s=>({name:s.name}))):[]},hasActualFileObjects(e){return e?Array.isArray(e)?e.some(t=>t instanceof File||t&&t.file instanceof File||t&&t.file instanceof FileList&&t.file.length>0):e instanceof File||e instanceof FileList&&e.length>0||e&&e.file instanceof File||e&&e.file instanceof FileList&&e.file.length>0:!1},async convertFileToBase64(e){return new Promise((t,r)=>{const n=new FileReader;n.onload=()=>{const i=n.result.split(",")[1];t({name:e.name,size:e.size,type:e.type,lastModified:e.lastModified,data:i})},n.onerror=r,n.readAsDataURL(e)})},async processFileFields(e,t){const r={...e};for(const n of t)if(n.type==="file"){const i=r[n.id],s=n.id;if(this.originalFileData[s]){r[s]=this.originalFileData[s];continue}if(i){const a=be(n.customForm,{multiple:!1}).multiple;if(a&&Array.isArray(i)){const l=[];for(const c of i){const u=await this.processIndividualFile(c);u&&l.push(u)}r[n.id]=l}else if(Array.isArray(i)){const l=[];for(const c of i){const u=await this.processIndividualFile(c);u&&l.push(u)}r[n.id]=a?l:l[0]||null}else if(i){const l=await this.processIndividualFile(i);l&&(r[n.id]=l)}}}return r},async processIndividualFile(e){let t=null;if(e instanceof File)t=e;else if(e instanceof FileList&&e.length>0)t=e[0];else if(e&&e.file instanceof File)t=e.file;else if(e&&e.file instanceof FileList&&e.file.length>0)t=e.file[0];else if(Array.isArray(e)&&e.length>0)e[0]instanceof File?t=e[0]:e[0]&&e[0].file instanceof File?t=e[0].file:e[0]&&e[0].file instanceof FileList&&e[0].file.length>0&&(t=e[0].file[0]);else if(typeof e=="object"&&e.data&&e.name)return e;return t instanceof File?await this.convertFileToBase64(t):(e&&typeof e=="object"&&!e.data&&console.warn("Could not process file data:",e),e)},isImageFile(e){if(!e||typeof e!="object")return!1;const t=e.type;return t?t.startsWith("image/"):!1},generateImagePreviewUrl(e){return!e||!e.data||!e.type?null:`data:${e.type};base64,${e.data}`},generateFileDownloadUrl(e){return!e||!e.data||!e.type?null:`data:${e.type};base64,${e.data}`},getFilePreviewsForField(e){const t=this.formData[e]||null,r=this.originalFileData[e]||null,n=`${e}_${JSON.stringify(t)}_${JSON.stringify(r)}`;if(this.previewCache[n])return this.previewCache[n];const i=this.formData[e],s=this.originalFileData[e];if(!i&&!s)return this.previewCache[n]=[],[];let a=[];return i&&Array.isArray(i)&&i.length>0&&this.hasActualFileObjects(i)?a=this.generatePreviewsFromCurrentFiles(i,e):s&&(a=(Array.isArray(s)?s:[s]).filter(u=>u&&u.name).map(u=>({name:u.name,url:this.isImageFile(u)?this.generateImagePreviewUrl(u):this.generateFileDownloadUrl(u),size:u.size,type:u.type,isImage:this.isImageFile(u)}))),this.previewCache[n]=a,a},generatePreviewsFromCurrentFiles(e,t=null){return t&&this.objectUrlsByField[t]?(this.objectUrlsByField[t].forEach(n=>URL.revokeObjectURL(n)),this.objectUrlsByField[t]=[]):t&&(this.objectUrlsByField[t]=[]),e.filter(n=>{let i=null;return n instanceof File?i=n:n&&n.file instanceof File?i=n.file:Array.isArray(n)&&n[0]instanceof File&&(i=n[0]),i}).map(n=>{let i=null;n instanceof File?i=n:n&&n.file instanceof File?i=n.file:Array.isArray(n)&&n[0]instanceof File&&(i=n[0]);const s=i?URL.createObjectURL(i):null;return s&&t&&(this.objectUrlsByField[t]||(this.objectUrlsByField[t]=[]),this.objectUrlsByField[t].push(s)),{name:i.name,url:s,size:i.size,type:i.type,isImage:i.type&&i.type.startsWith("image/"),isObjectUrl:!0}}).filter(n=>n.url!==null)},formatFileSize(e){if(!e)return"0 B";const t=1024,r=["B","KB","MB","GB"],n=Math.floor(Math.log(e)/Math.log(t));return parseFloat((e/Math.pow(t,n)).toFixed(2))+" "+r[n]},openImageModal(e){this.modalImage=e,this.imageModalOpen=!0},closeImageModal(){this.imageModalOpen=!1,this.modalImage=null},cleanupObjectUrls(e=null){e?(this.objectUrlsByField[e]&&(this.objectUrlsByField[e].forEach(t=>{URL.revokeObjectURL(t)}),this.objectUrlsByField[e]=[]),Object.keys(this.previewCache).forEach(t=>{t.startsWith(e+"_")&&delete this.previewCache[t]})):(Object.keys(this.objectUrlsByField).forEach(t=>{this.objectUrlsByField[t].forEach(r=>{URL.revokeObjectURL(r)})}),this.objectUrlsByField={},this.previewCache={})},getFileIcon(e){return e?e.startsWith("image/")?"mdi-image":e==="application/pdf"?"mdi-file-pdf-box":e.includes("word")||e.includes("msword")||e==="application/vnd.openxmlformats-officedocument.wordprocessingml.document"?"mdi-file-word":e.includes("excel")||e.includes("spreadsheet")||e==="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"?"mdi-file-excel":e.includes("powerpoint")||e.includes("presentation")||e==="application/vnd.openxmlformats-officedocument.presentationml.presentation"?"mdi-file-powerpoint":e==="text/plain"?"mdi-file-document":e.includes("zip")||e.includes("rar")||e.includes("7z")?"mdi-folder-zip":"mdi-file":"mdi-file"},getFileIconColor(e){return e?e.startsWith("image/")?"green":e==="application/pdf"?"red":e.includes("word")||e.includes("msword")||e==="application/vnd.openxmlformats-officedocument.wordprocessingml.document"?"blue":e.includes("excel")||e.includes("spreadsheet")||e==="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"?"green":e.includes("powerpoint")||e.includes("presentation")||e==="application/vnd.openxmlformats-officedocument.presentationml.presentation"?"orange":"grey":"grey"},getFileTypeDescription(e){return e?e==="application/pdf"?"PDF-Dokument":e.includes("word")||e.includes("msword")||e==="application/vnd.openxmlformats-officedocument.wordprocessingml.document"?"Word-Dokument":e.includes("excel")||e.includes("spreadsheet")||e==="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"?"Excel-Arbeitsmappe":e.includes("powerpoint")||e.includes("presentation")||e==="application/vnd.openxmlformats-officedocument.presentationml.presentation"?"PowerPoint-Präsentation":e==="text/plain"?"Textdatei":e.startsWith("image/")?"Bilddatei":"Datei":"Unbekannter Dateityp"},openFileModal(e){this.modalFile=e,this.fileModalOpen=!0},closeFileModal(){this.fileModalOpen=!1,this.modalFile=null},downloadFile(e){if(!e||!e.url||!e.name)return;if(e.isObjectUrl){const r=this.findFieldIdForFile(e);if(r){const n=this.formData[r],i=this.findOriginalFile(n,e.name);if(i){const s=document.createElement("a");s.href=URL.createObjectURL(i),s.download=e.name,document.body.appendChild(s),s.click(),document.body.removeChild(s),URL.revokeObjectURL(s.href);return}}}if(e.url.startsWith("data:")){const r=document.createElement("a");r.href=e.url,r.download=e.name,document.body.appendChild(r),r.click(),document.body.removeChild(r);return}const t=document.createElement("a");t.href=e.url,t.download=e.name,t.target="_blank",document.body.appendChild(t),t.click(),document.body.removeChild(t)},findFieldIdForFile(e){if(!this.userTask||!this.userTask.userTaskConfig||!this.userTask.userTaskConfig.formFields)return null;const t=this.userTask.userTaskConfig.formFields.filter(r=>r.type==="file");for(const r of t)if(this.getFilePreviewsForField(r.id).some(i=>i.name===e.name&&i.url===e.url))return r.id;return null},findOriginalFile(e,t){if(!e)return null;if(Array.isArray(e))for(const r of e){const n=this.extractFileFromItem(r);if(n&&n.name===t)return n}else{const r=this.extractFileFromItem(e);if(r&&r.name===t)return r}return null},extractFileFromItem(e){return e instanceof File?e:e&&e.file instanceof File?e.file:e instanceof FileList&&e.length>0?e[0]:e&&e.file instanceof FileList&&e.file.length>0?e.file[0]:null}}};function yp(e,t){return e==="enum"?t.enumValues.map(r=>({title:r.name,value:r.id})):null}const bp={className:"ui-dynamic-form-wrapper"},_p={key:0,style:{"margin-bottom":"0px"}},kp={key:0},vp=["data-columns"],wp={key:2},$p={class:"formkit-label"},xp={class:"formkit-help"},Cp={key:3,class:"ui-dynamic-form-file-wrapper"},Ap={key:0,class:"ui-dynamic-form-file-previews"},Sp={class:"ui-dynamic-form-preview-grid"},Ep=["onClick"],Tp=["src","alt"],Fp={key:1,class:"ui-dynamic-form-file-icon"},Rp={class:"ui-dynamic-form-preview-info"},Op={class:"ui-dynamic-form-preview-name"},Ip={class:"ui-dynamic-form-preview-size"},Np={key:1},Dp={key:1,style:{"padding-top":"32px"}},Pp={key:0},Mp=["src","alt"],Lp={key:1,class:"ui-dynamic-form-modal-file-icon"},Vp={class:"text-h6 mt-4"},zp={style:{"margin-top":"16px"}};function Bp(e,t,r,n,i,s){const a=o.resolveComponent("UIDynamicFormTitleText"),l=o.resolveComponent("v-icon"),c=o.resolveComponent("FormKit"),u=o.resolveComponent("v-col"),h=o.resolveComponent("v-row"),_=o.resolveComponent("v-alert"),C=o.resolveComponent("UIDynamicFormFooterAction"),m=o.resolveComponent("v-form"),k=o.resolveComponent("v-card-title"),p=o.resolveComponent("v-card-text"),w=o.resolveComponent("v-btn"),v=o.resolveComponent("v-spacer"),A=o.resolveComponent("v-card-actions"),E=o.resolveComponent("v-card"),$=o.resolveComponent("v-dialog");return o.openBlock(),o.createElementBlock("div",{className:"ui-dynamic-form-external-sizing-wrapper",style:o.normalizeStyle(r.props.card_size_styling)},[r.props.title_style==="outside"&&s.hasUserTask?(o.openBlock(),o.createBlock(a,{key:0,style:o.normalizeStyle(r.props.title_style),title:s.effectiveTitle,customStyles:r.props.title_custom_text_styling,titleIcon:r.props.title_icon,collapsible:r.props.collapsible||r.props.collapse_when_finished&&i.formIsFinished,collapsed:i.collapsed,toggleCollapse:s.toggleCollapse},null,8,["style","title","customStyles","titleIcon","collapsible","collapsed","toggleCollapse"])):o.createCommentVNode("",!0),o.createElementVNode("div",bp,[s.hasUserTask?(o.openBlock(),o.createElementBlock("p",_p,[o.createVNode(m,{ref:"form",modelValue:e.form,"onUpdate:modelValue":t[0]||(t[0]=b=>e.form=b),class:o.normalizeClass(s.dynamicClass)},{default:o.withCtx(()=>[r.props.title_style!="outside"?(o.openBlock(),o.createBlock(a,{key:0,style:o.normalizeStyle(r.props.title_style),title:s.effectiveTitle,customStyles:r.props.title_custom_text_styling,titleIcon:r.props.title_icon,collapsible:r.props.collapsible||r.props.collapse_when_finished&&i.formIsFinished,collapsed:i.collapsed,toggleCollapse:s.toggleCollapse},null,8,["style","title","customStyles","titleIcon","collapsible","collapsed","toggleCollapse"])):o.createCommentVNode("",!0),o.createVNode(o.Transition,{name:"cardCollapse"},{default:o.withCtx(()=>[i.collapsed?o.createCommentVNode("",!0):(o.openBlock(),o.createElementBlock("div",kp,[o.createElementVNode("div",{className:"ui-dynamic-form-formfield-positioner",style:o.normalizeStyle(r.props.inner_card_styling),"data-columns":r.props.form_columns||1},[o.createVNode(c,{id:"form",type:"group"},{default:o.withCtx(()=>[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(s.fields(),(b,d)=>(o.openBlock(),o.createBlock(h,{key:b,class:o.normalizeClass(b.type==="header"?"ui-dynamic-form-header-row":""),style:o.normalizeStyle(s.getRowWidthStyling(b,d))},{default:o.withCtx(()=>[o.createVNode(u,{cols:"12"},{default:o.withCtx(()=>[s.createComponent(b).innerHTML?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(s.createComponent(b).type),o.mergeProps({key:0,ref_for:!0},s.createComponent(b).props,{class:s.createComponent(b).class,innerHTML:s.createComponent(b).innerHTML,ref_for:!0,ref:g=>{d===0&&(i.firstFormFieldRef=g)}}),null,16,["class","innerHTML"])):s.createComponent(b).innerText?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(s.createComponent(b).type),o.mergeProps({key:1,ref_for:!0},s.createComponent(b).props,{ref_for:!0,ref:g=>{d===0&&(i.firstFormFieldRef=g)},modelValue:i.formData[b.id],"onUpdate:modelValue":g=>i.formData[b.id]=g}),{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(s.createComponent(b).innerText),1)]),_:2},1040,["modelValue","onUpdate:modelValue"])):s.createComponent(b).type=="v-slider"?(o.openBlock(),o.createElementBlock("div",wp,[o.createElementVNode("p",$p,o.toDisplayString(b.label),1),(o.openBlock(),o.createBlock(o.resolveDynamicComponent(s.createComponent(b).type),o.mergeProps({ref_for:!0},s.createComponent(b).props,{ref_for:!0,ref:g=>{d===0&&(i.firstFormFieldRef=g)},modelValue:b.defaultValue,"onUpdate:modelValue":g=>b.defaultValue=g}),null,16,["modelValue","onUpdate:modelValue"])),o.createElementVNode("p",xp,o.toDisplayString(b.customForm?b.customForm.hint:void 0),1)])):s.createComponent(b).isFileField?(o.openBlock(),o.createElementBlock("div",Cp,[s.getFilePreviewsForField(b.id).length>0?(o.openBlock(),o.createElementBlock("div",Ap,[t[3]||(t[3]=o.createElementVNode("h4",null,"Current files:",-1)),o.createElementVNode("div",Sp,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(s.getFilePreviewsForField(b.id),g=>(o.openBlock(),o.createElementBlock("div",{key:g.name,class:"ui-dynamic-form-preview-item",onClick:P=>s.openFileModal(g)},[g.isImage?(o.openBlock(),o.createElementBlock("img",{key:0,src:g.url,alt:g.name,class:"ui-dynamic-form-preview-image"},null,8,Tp)):(o.openBlock(),o.createElementBlock("div",Fp,[o.createVNode(l,{size:"48",color:s.getFileIconColor(g.type)},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(s.getFileIcon(g.type)),1)]),_:2},1032,["color"])])),o.createElementVNode("div",Rp,[o.createElementVNode("span",Op,o.toDisplayString(g.name),1),o.createElementVNode("span",Ip,o.toDisplayString(s.formatFileSize(g.size)),1)])],8,Ep))),128))])])):o.createCommentVNode("",!0),o.createVNode(c,{type:"file",id:b.id,name:s.createComponent(b).name,label:b.label,required:b.required,modelValue:i.formData[b.id],"onUpdate:modelValue":g=>i.formData[b.id]=g,help:s.createComponent(b).hint,innerClass:"reset-background",wrapperClass:"$remove:formkit-wrapper",labelClass:"ui-dynamic-form-input-label",inputClass:`input-${i.theme}`,readonly:s.createComponent(b).isReadOnly,disabled:s.createComponent(b).isReadOnly,multiple:s.createComponent(b).multiple,validation:s.createComponent(b).validation,validationVisibility:"live",ref_for:!0,ref:g=>{d===0&&(i.firstFormFieldRef=g)}},null,8,["id","name","label","required","modelValue","onUpdate:modelValue","help","inputClass","readonly","disabled","multiple","validation"])])):(o.openBlock(),o.createBlock(o.resolveDynamicComponent(s.createComponent(b).type),o.mergeProps({key:4,ref_for:!0},s.createComponent(b).props,{ref_for:!0,ref:g=>{d===0&&(i.firstFormFieldRef=g)},modelValue:i.formData[b.id],"onUpdate:modelValue":g=>i.formData[b.id]=g}),null,16,["modelValue","onUpdate:modelValue"]))]),_:2},1024)]),_:2},1032,["class","style"]))),128))]),_:1})],12,vp),o.createVNode(h,{class:o.normalizeClass(s.dynamicFooterClass)},{default:o.withCtx(()=>[i.errorMsg.length>0?(o.openBlock(),o.createBlock(h,{key:0,style:{padding:"12px"}},{default:o.withCtx(()=>[o.createVNode(_,{type:"error"},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(i.errorMsg),1)]),_:1})]),_:1})):o.createCommentVNode("",!0),r.props.actions_inside_card&&s.hasUserTask&&i.actions.length>0?(o.openBlock(),o.createBlock(C,{key:1,actions:i.actions,actionCallback:s.actionFn,formIsFinished:i.formIsFinished,style:{padding:"16px","padding-top":"0px"}},null,8,["actions","actionCallback","formIsFinished"])):o.createCommentVNode("",!0)]),_:1},8,["class"])]))]),_:1})]),_:1},8,["modelValue","class"])])):(o.openBlock(),o.createElementBlock("p",Np,[r.props.waiting_info.length>0||r.props.waiting_title.length>0?(o.openBlock(),o.createBlock(_,{key:0,text:r.props.waiting_info,title:r.props.waiting_title},null,8,["text","title"])):o.createCommentVNode("",!0)]))]),!r.props.actions_inside_card&&s.hasUserTask&&i.actions.length>0?(o.openBlock(),o.createElementBlock("div",Dp,[o.createVNode(C,{actions:i.actions,actionCallback:s.actionFn},null,8,["actions","actionCallback"])])):o.createCommentVNode("",!0),o.createVNode($,{modelValue:i.fileModalOpen,"onUpdate:modelValue":t[2]||(t[2]=b=>i.fileModalOpen=b),"max-width":"800px"},{default:o.withCtx(()=>[i.modalFile?(o.openBlock(),o.createBlock(E,{key:0},{default:o.withCtx(()=>[o.createVNode(k,{class:"headline"},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(i.modalFile.name),1)]),_:1}),o.createVNode(p,null,{default:o.withCtx(()=>[i.modalFile.isImage?(o.openBlock(),o.createElementBlock("div",Pp,[o.createElementVNode("img",{src:i.modalFile.url,alt:i.modalFile.name,style:{width:"100%","max-height":"70vh","object-fit":"contain"}},null,8,Mp)])):(o.openBlock(),o.createElementBlock("div",Lp,[o.createVNode(l,{size:"120",color:s.getFileIconColor(i.modalFile.type)},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(s.getFileIcon(i.modalFile.type)),1)]),_:1},8,["color"]),o.createElementVNode("p",Vp,o.toDisplayString(s.getFileTypeDescription(i.modalFile.type)),1)])),o.createElementVNode("div",zp,[t[4]||(t[4]=o.createElementVNode("strong",null,"Size:",-1)),o.createTextVNode(" "+o.toDisplayString(s.formatFileSize(i.modalFile.size)),1),t[5]||(t[5]=o.createElementVNode("br",null,null,-1)),t[6]||(t[6]=o.createElementVNode("strong",null,"Type:",-1)),o.createTextVNode(" "+o.toDisplayString(i.modalFile.type),1)])]),_:1}),o.createVNode(A,null,{default:o.withCtx(()=>[o.createVNode(w,{variant:"tonal",rounded:"lg",onClick:t[1]||(t[1]=b=>s.downloadFile(i.modalFile))},{default:o.withCtx(()=>[...t[7]||(t[7]=[o.createTextVNode(" Herunterladen ",-1)])]),_:1}),o.createVNode(v),o.createVNode(w,{variant:"flat",rounded:"lg",onClick:s.closeFileModal},{default:o.withCtx(()=>[...t[8]||(t[8]=[o.createTextVNode("Schließen",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})):o.createCommentVNode("",!0)]),_:1},8,["modelValue"])],4)}const Up=yn(gp,[["render",Bp]]);fe.UIDynamicForm=Up,Object.defineProperty(fe,Symbol.toStringTag,{value:"Module"})});
@@ -487,11 +487,12 @@ export default {
487
487
  });
488
488
 
489
489
  // Deaktiviere Scroll-Wertänderungen bei Number-Inputs
490
- document.addEventListener('wheel', (event) => {
491
- if (event.target.type === 'number' && document.activeElement === event.target) {
492
- event.preventDefault();
490
+ this.wheelHandler = (event) => {
491
+ if (event.target.type === 'number') {
492
+ event.target.blur();
493
493
  }
494
- }, { passive: false });
494
+ };
495
+ document.addEventListener('wheel', this.wheelHandler, { passive: true });
495
496
 
496
497
  this.$socket.on('msg-input:' + this.id, (msg) => {
497
498
  this.init(msg);
@@ -501,6 +502,9 @@ export default {
501
502
  unmounted() {
502
503
  this.$socket?.off('msg-input:' + this.id);
503
504
  this.cleanupObjectUrls();
505
+ if (this.wheelHandler) {
506
+ document.removeEventListener('wheel', this.wheelHandler);
507
+ }
504
508
  },
505
509
  methods: {
506
510
  createComponent(field) {