@nebularstreams/libmui 4.3.106 → 4.3.107
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/libmui.esm.min.mjs +1 -1
- package/package.json +1 -1
package/dist/libmui.esm.min.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import e from"mithril";function t(e,t,n,a,i){return{...e&&{view:e},...t&&{oninit:t},...n&&{oncreate:n},...i&&{onupdate:i},...a&&{onremove:a}}}function n(e,t,n){const a=("function"==typeof e?e(t):e)||{};return n&&(a.initialParams=n),a}const a=({currentIndex:e},t)=>e===t,i={view:({attrs:t})=>e(`i.icon.${t.pack||"fas"}.fa-${t.icon||"cog"}${t.size?".fa-"+t.size+"x":""}`,{title:t.icontitle||void 0,role:"presentation",onclick:t.onclick||null,...t.iconClass&&{class:t.iconClass}})},o={view:({attrs:t,state:n,children:a})=>e(t.download||t.link?"a.button":"button",{...t.link&&{href:t.link},...t.download&&{download:t.download},...t.target&&{target:t.target},"aria-label":t["aria-label"]||t.title||t.text,title:t.title||t["aria-label"],class:(t.class||"")+(n.busy?" busy":""),...n.error&&{"data-error":n.error.message},...t.onclick&&{onclick:a=>{clearTimeout(n.debounce),n.debounce=setTimeout((()=>{const i=t.onclick(a,t);i&&i.then&&i.catch&&(n.busy=!0,e.redraw(),i.then((()=>{n.busy=!1,e.redraw()})).catch((t=>{n.busy=!1,n.error=t,e.redraw()})))}),25)}}},[...t.icon&&!t.right?[e(i,t)]:[],...t.text?[e("span.pad-1.pad-h",{class:t.textClass||null},t.text)]:[],...t.icon&&t.right?[e(i,t)]:[],...a])},l={view:({attrs:t,state:n,children:a})=>e(t.download||t.link?"a.button":"button",{...t.link&&{href:t.link},...t.download&&{rel:"nofollow",download:t.download},...t.target&&{target:t.target},"aria-label":t["aria-label"]||t.title||t.text,title:t.title||t["aria-label"],class:(t.class||"")+(n.busy?" busy":""),...n.error&&{"data-error":n.error.message},...t.onClick&&{onclick:a=>{clearTimeout(n.debounce),n.debounce=setTimeout((()=>{const i=t.onClick(a,t);i&&i.then&&i.catch&&(n.busy=!0,e.redraw(),i.then((()=>{n.busy=!1,e.redraw()})).catch((t=>{n.busy=!1,n.error=t,e.redraw()})))}),25)}},...t.onRightClick&&{oncontextmenu:a=>{const i=t.onRightClick(a,t);i&&i.then&&i.catch&&(n.busy=!0,e.redraw(),i.then((()=>{n.busy=!1,e.redraw()})).catch((t=>{n.busy=!1,n.error=t,e.redraw()})))}},...t.disabled&&{disabled:!0}},[...t.icon&&!t.right?[e(i,{iconClass:t.iconClass,icon:t.icon})]:[],...t.text?[e("span.pad-1.pad-h",{class:t.textClass||null},t.text)]:[],...t.icon&&t.right?[e(i,{iconClass:t.iconClass,icon:t.icon})]:[],...a])},r={view:({attrs:t,children:n})=>e(".flexcol.flexcenter.al-center.grows.emptywidget",{...t.class&&{class:t.class},...t.key&&{key:t.key},role:"presentation"},[e(i,t),...t.message?[e(".marg-2.marg-v",{role:"status",class:t.size>4?"font-150":"font-100","aria-label":t.message},t.message.split("\n").map(((t,n,a)=>1===a.length?t:e("p.msg"+n,t))))]:[],...n?[e(".flexcol.additional",n)]:[]])},s=(t,n,a,i)=>{const o=n.currentIndex,l=n.currentParams;-1===a?Object.assign(n,{current:null,currentIndex:-1,currentParams:[]}):Object.assign(n,{current:t.items[a]||null,currentIndex:n.current?a:-1,currentParams:i||[]}),t.onSelected&&t.onSelected(n.current,n.currentParams,n.currentIndex!==o,l),e.redraw()},c={oninit:({attrs:e,state:t})=>{(t=e.state||t).setItem=(n,...a)=>s(e,e.state||t,n,a);const n=!isNaN(t.currentIndex)?t.currentIndex:e.selected,a=e.items&&e.items.length?void 0!==n&&e.items[n]?n:e.noinitial?-1:0:-1,i=-1!==a?e.items[a]:null;Object.assign(t,{currentIndex:a,current:i})},onupdate:({attrs:e,state:t})=>{(e.state||t).setItem=(n,...a)=>s(e,e.state||t,n,a)},view:({attrs:t,state:i})=>{i=t.state||i;const{current:s}=i;return e((t.element||"widget")+".selector"+(t.horizontal?".flexrow":".flexcol")+(t.className?"."+t.className:""),{...t.key&&{key:t.key},class:(i.current?"hascurrent":"empty")+(t.class?" "+t.class:"")+(s?.bodyTitle?" withbodytitle":"")},[...t.hideonly&&!(t.items.length>1)||t.hidesel?[]:[e("nav.toolbar.fullwidth"+(t.horizontal?".flexcol":".flexrow"),{"aria-label":t["aria-label"]||t.title||"selector",class:t.toolbarClass},t.items.map(((t,n)=>e(o,{class:(t.class?t.class+" ":"")+(a(i,n)?"accent":"nel"),icon:t.icon||null,...t.title&&{title:t.title},...t["aria-label"]&&{"aria-label":t["aria-label"]},...t.text&&{text:t.text},onclick:()=>{Date.now()-i.clickts<200||(i.clickts=Date.now(),i.bodyHidden=!1,i.setItem(n))}}))))],...s?[...t.toggle&&!i.bodyHidden?[e(l,{class:"selectornotch "+(i.bodyHidden?"bodyhidden":"bodyshown"),icon:i.bodyHidden?"caret-up":"caret-down",title:i.bodyHidden?"expand panel":"contract panel",onClick:()=>{i.bodyHidden=!i.bodyHidden,e.redraw()}})]:[],...t.toggle&&i.bodyHidden?[]:[...s?.bodyTitle?[e(".bodytitle",s.bodyTitle)]:[],e(".grows.flexcol.ohidden.selectorbody",{class:t.bodyClass,role:"presentation"},[e(s.widget,n(s.attrs,t,i.currentParams),s.children)])],...t.closeButton?[e(o,{class:"closebutton absolute toright",icon:"times",onclick:()=>{i.setItem(-1)},"aria-label":"close item"})]:[]]:e(r,t)])}},u={info:"info",error:"exclamation-triangle",success:"check"};const d=new function(t=5e3,n){let a,i=[];function l(){const r=n||document.getElementById("notification-container");if(i.length){const n=i.splice(0,1)[0];!function(t,n){e.render(t,e(o,{class:"notification "+n.type,text:n.text,icon:u[n.type]||"info",size:1,role:"status",onclick:l}))}(r,n),clearTimeout(a),a=setTimeout(l,n.timer||t)}else e.render(r,""),a=null}return{add:(e,t)=>{i.push({text:e,type:t}),a||l()},clear:()=>{i=[],l()}}},f={};const p=t((({attrs:t,state:n,children:a})=>{const{nofold:i,cardid:o,size:r,title:s,action:c,collapsedAction:u,collapsedClass:d,expandedClass:p,cols:h,element:m,busy:g,expandedView:y,collapsedView:v,titleWidget:b,titleAttrs:w,titleClass:x,bodyClass:C,titleExpanded:k,titleCollapsed:A,foldIcon:M="fa-chevron-down"}=t,T=!i&&(o?!f[o]:!!n.collapsed),I=T?v?v(t,n):[]:y?y(t,n):a||[],_=b?e(b,w||{}):s?e("span.ellipsis.ohidden.unfold.grows",s):void 0,E=g?"fa-sync":`${M} ${T?"iscollapsed":"isexpanded"}`;return I.length||!t.skipEmpty?e(m||"ul",{class:"cardie ohidden "+(h?"flexcol ":"flexrow wrap ")+(t.class?" "+t.class:"")+(i?" expanded":" "+(T?"collapsed "+(d||""):"expanded "+(p||"")))+(r?" marg-"+r:"")+(b?" withwidget":"")+(g?" busycard":"")},[..._?[e(".title.grows.fabf.flexrow.pointer.unfold",i?{class:x||"pad-2"}:{class:`${x||"pad-2"} ${E||""}`,title:T?A||"Click to expand the options":k||A||"Click to collapse the options",onclick:a=>{a.target.classList.contains("unfold")&&(a.shiftKey&&t.onShiftOpen?t.onShiftOpen():t.cardid?function(e,t=0){if(e){const[n,a]=e.split("-");t&&n&&a&&Object.keys(f).forEach((e=>{e.startsWith(n+"-")&&(f[e]=0)})),f[e]=t}}(o,T):n.collapsed=!n.collapsed,e.redraw())}},!c||!i&&T?u&&T?[...Array.isArray(u)?u.map((t=>e(l,t))):[e(l,u)],_]:_:[...Array.isArray(c)?c.map((t=>e(l,t))):[e(l,c)],_])]:[],...I.length?[e(".flexbreak"),e(".cardiebody.fadein-filter.grows",{class:(h?"flexcol ":"flexrow wrap")+" "+(C||"")},...I)]:[],...t.alwaysView?[t.alwaysView({attrs:t,state:n})]:[]]):[]}),(({attrs:e,state:t})=>{e.cardid||(t.collapsed=!e.nofold&&(e.cardid?!f[e.cardid]:!!e.collapsed))}),void 0,void 0,void 0);function h(e,t,n,a,i){return{...e&&{view:e},...t&&{oninit:t},...n&&{oncreate:n},...i&&{onupdate:i},...a&&{onremove:a}}}const g=h((({attrs:t,children:n})=>e(".separator",{class:t.class||"mini",...t.onClick&&{onclick:t.onClick}},[e("span.grows",t.text),...n||[]]))),y=t((({attrs:t})=>{const{value:n,field:a,toggle:i,element:o,emptyMessage:r,chooseKey:s,chooseDict:c}=t,u=!t.choose&&s&&c?c[s]:t.choose,d=u?u.map((e=>({value:e,caption:e}))):t.choices||{},f=Object.keys(d),p=f.length,h=(t.class||"")+(t.subclass?" "+t.subclass:" scaff scaff-b1");return p||r?[...t.label?[e(g,{text:t.label,class:t.labelClass||""})]:[],e((o||"div")+".buttonchoice.flexrow.ohidden",{class:h+(t.icon?" withicon fa-"+t.icon:""),title:t.title},e(".flexrow.grows.ohidden.wrap"+(t.icon?" scaff-left":""),f.length?f.map((o=>{const r=d[o],s=t.raw&&a?r:r.value,c=(a?s[a]:s)===n;return e(l,{icon:r.icon||void 0,class:"grows scaff-b0 "+(t.buttonClass?t.buttonClass+" ":"rectbutton unitheightsmall ")+(r.class?r.class+" ":"")+(c?"accent":""),title:r.current?r.titleOn||r.title:r.titleOff||r.title,onClick:n=>{t.onchange(i&&c?void 0:r,o,n),e.redraw()}},t.render?t.render(r):r.caption||o)})):[e(".emptychoice.grows.al-center.align-self-center.unitheightsmall",t.emptyMessage)]))]:[]})),v=t((({attrs:t})=>{const{value:n,field:a,element:i,emptyMessage:o,chooseKey:r,chooseDict:s}=t,c=!t.choose&&r&&s?s[r]:t.choose,u=c?c.map((e=>({value:e,caption:e}))):t.choices||{},d=Array.isArray(n)?n:[],f=Object.keys(u),p=Math.max(1,Math.trunc(Number(t.rows)||1)),h=Math.max(1,Math.trunc(Number(t.cols)||Math.ceil(f.length/p)||1)),m=Boolean(t.responsive),g=t.minCellWidth||"3rem",y=m?`repeat(auto-fit, minmax(min(100%, max(${g}, ${100/h+"%"})), 1fr))`:`repeat(${h}, minmax(0, 1fr))`,v=(t.class||"")+(t.subclass?` ${t.subclass}`:" scaff scaff-b1");return f.length||o?e((i||"div")+".buttonchoice.flexrow.ohidden",{class:v+(t.icon?` withicon fa-${t.icon}`:""),title:t.title},e(".grows.ohidden"+(t.icon?".scaff-left":""),{style:{display:"grid",gridTemplateColumns:y}},f.length?f.map((n=>{const i=u[n],o=t.raw&&a?i:i.value,r=a?o[a]:o,s=d.includes(r);return e(l,{icon:i.icon||void 0,class:"grows scaff-b0 "+(t.buttonClass?`${t.buttonClass} `:"rectbutton unitheightsmall ")+(i.class?`${i.class} `:"")+(s?"accent":""),title:s?i.titleOn||i.title:i.titleOff||i.title,"aria-pressed":String(s),onClick:a=>{const o=s?d.filter((e=>e!==r)):[...d,r];t.onchange?.(o,i,n,a),e.redraw()}},t.render?t.render(i):i.caption||n)})):[e(".emptychoice.grows.al-center.align-self-center.unitheightsmall",o)])):[]})),b=(e,t,n=!1,a=!1)=>{if(n||"number"===e.type){const n=e.float?!a&&e.fixed?Number.parseFloat(t).toFixed(e.fixed):Number.parseFloat(e.fixed):Number.parseInt(t,10);return Number.isNaN(n)?void 0:n}return"number"===e.subtype&&e.fixed&&!a&&(t=parseFloat(t).toFixed(e.fixed)),t},w=(e,t,n)=>{const a=t.hasOwnProperty("value")?t.value:e.value;return b(e,a,n,t.fromoninput)},x={view:t=>{const{attrs:n,state:a}=t;return a.attrs=n,e(".input-static.w-100.ellipsis",{class:(n.onDrag?"withdrag ":"")+(n.staticClass||"grows"),...n.staticTitle&&{title:n.staticTitle},...n.onDrag||{onclick:n.onClick},oncreate:({dom:e,state:a})=>{if(n.onDrag&&!n.readonly){const n=a.hammer=new Hammer.Manager(e,{touchAction:"pan-y"}),i=new Hammer.Pan({direction:Hammer.DIRECTION_VERTICAL}),o=new Hammer.Tap;n.add([i,o]),n.on("tap",(()=>t.state.attrs.onClick())),n.on("panup",(e=>t.state.attrs.onDrag(-1,e.srcEvent))),n.on("pandown",(e=>t.state.attrs.onDrag(1,e.srcEvent))),n.on("panend pancancel",(e=>t.state.attrs.onDrag(0,e.srcEvent)))}n.focus&&e.focus()},onremove:({state:e})=>{e.hammer&&e.hammer.destroy()}},n.value)}},C={view:({attrs:t,state:n})=>{const a=t=>{n.value&&n.showInput&&delete n.showInput,delete n.value,t&&e.redraw()},i=[...!t.multi||t.alwaysmulti||t.type&&"text"!==t.type?[]:[e(l,{icon:n.multi?"angle-double-up":"angle-double-down",class:"pad-2 transp inputaction",onClick:()=>{n.multi=!n.multi,e.redraw()}})],...t.actions?t.actions.map((t=>e(l,{...t,class:"inputaction transp pad-2"}))):[],...t.action?[e(l,{...t.action,class:"inputaction transp pad-2"})]:[]];return e(".textfield.flexcol.relative",{class:(t.label?"witharia":"")+(t.containerClass?" "+t.containerClass:""),...t.label&&{"aria-label":t.label}},e(".textfieldinner.flexrow",[!t.staticField||!t.readonly&&n.showInput?!n.multi&&!t.alwaysmulti||t.type&&"text"!==t.type?e("input.w-100",{...t.id&&{id:t.id},type:t.type||"text",...void 0!==t.max&&{max:t.max},...void 0!==t.min&&{min:t.min},...t.step>0&&{step:t.step},...t.maxlength&&{maxlength:t.maxlength},...t.title&&{title:t.title},class:(t.class||"")+(n.isValid?"":" bg-error"),value:w(t,n),placeholder:t.hint||"",...t.readonly?{readonly:"readonly"}:{oninput:e=>{n.value=b(t,e.target.value,!1,!0),e.fromoninput=n.fromoninput=!0,n.checkValid(),t.final||n.isValid&&(t.onchange||t.oninput)&&(t.oninput||t.onchange)(n.value,e)},onchange:e=>{t.onchange&&(n.value=b(t,e.target.value,!1),n.checkValid(),e.enterPressed=n.enterPressed,delete n.enterPressed,delete n.fromoninput,n.isValid&&t.onchange(n.value,e,!1),t.staticField?a(!0):delete n.value)},onblur:()=>{n.showInput&&a(!0)},...Number.isFinite(t.step)&&"number"===t.subtype&&{onmousewheel:a=>{if(a.shiftKey&&a.wheelDelta){let i=Number.parseFloat(t.value);i+=t.step*(a.wheelDelta>0?1:-1),i=Number.isFinite(t.max)?Math.min(i,t.max):i,i=Number.isFinite(t.min)?Math.max(i,t.min):i,i=t.float?t.fixed?i.toFixed(t.fixed):i:Math.floor(i),i=n.value=String(i),t.onchange(i,a),e.redraw()}}},onkeyup:e=>{n.showInput&&("Escape"===e.key?a(!0):"Enter"===e.key&&(n.value!==t.value&&n.value||(n.checkValid(),n.isValid&&t.onchange(t.value,e),a(!0))))},onbeforeinput:e=>{"number"===t.subtype&&e.data&&!/^[0-9.\-]$/.test(e.data)&&e.preventDefault()},inputmode:"number"===t.subtype?"decimal":void 0,onkeypress:e=>{n.showInput||"Enter"!==e.key||t.onenter&&t.onenter(e.target.value,e)}}}):e("textarea.w-100",{class:t.class,value:w(t,n),...t.title&&{title:t.title},placeholder:t.hint||"",oninput:e=>{n.value=b(t,e.target.value),n.checkValid(),t.final||t.onchange&&n.isValid&&(t.oninput||t.onchange)(n.value,e,!0)},onchange:e=>{t.onchange&&(n.value=b(t,e.target.value),n.checkValid(),a(!1),n.isValid&&t.onchange(n.value,e,!0))},onblur:()=>{n.showInput&&a(!0)},onkeyup:e=>{"Escape"===e.key&&n.showInput&&a(!1)}}):e(x,{readonly:t.readonly,staticClass:(n.dragging?"accent ":"")+(t.staticClass||""),staticTitle:t.staticTitle||t.draginc&&"Click then drag up and down to modify value, or just click to enter a custom value",value:t.displayTitle||w(t,n),focus:t.focus,...t.draginc&&!t.readonly&&{onDrag:(a,i)=>{if(a){n.dragging=!0;let e=w(t,n,!0);if(Number.isNaN(e)||void 0===e)return;e+=a*t.draginc,void 0!==t.max&&e>t.max&&(e=t.max),void 0!==t.min&&e<t.min&&(e=t.min),n.value="number"===t.type?e:String(e),t.onchange(n.value,i)}else delete n.dragging,delete n.value,e.redraw()}},...t.readonly||{onClick:()=>{n.showInput=!0,n.value=t.value,e.redraw()}}}),...i.length?[e(".span.actions",i)]:[]]))},oninit:({attrs:t,state:n})=>{if(t.staticField&&t.draginc){const e=w(t,n,!0);n.showInput=Number.isNaN(e)||null==e}if(t.pattern)try{n.regexp=new RegExp(t.pattern)}catch(e){}n.checkValid=()=>{let a=!0;t.validator&&(a=t.validator(n.value)),n.regexp&&(a=a&&n.regexp.test(n.value)),t.nodelete&&(a=a&&""!==n.value),a!==n.isValid&&(n.isValid=a,e.redraw())}}},k=t((({attrs:t,children:n})=>n.length?e(".notice.cardie.flexcol.pad-3",{class:t.class||"marg-2 font-75",...t.key&&{key:t.key}},e(".flexrow",[...t.icon?[e(i,{size:t.size,icon:t.icon,class:t.iconClass,title:t.icontitle})]:[],...t.text?[e(".pad-2.pad-h",t.text)]:[],...t.html?[e(".innerhtml",e.trust(t.html))]:[]]),...n):e(".notice.cardie.flexrow.pad-3",{class:t.class||"marg-2 font-75",onclick:t.onClick,...t.key&&{key:t.key}},[...t.icon?[e(i,{size:t.size,icon:t.icon,class:t.iconClass,title:t.icontitle})]:[],(t.texts||[t.text]).map((t=>e(".pad-2.pad-h",t)))]))),A={view:({attrs:t})=>t.items.map((({name:n},a)=>e("option",{...t.state.index===a+(t.offset||0)&&{selected:!0}},n)))};let M;function T(e,t){if(e.groups){t.groups={},t.allItems=[],e.parsed=!0;Object.keys(e.groups).forEach((n=>{t.groups[n]={label:n,len:e.groups[n].length,items:e.groups[n]}}));const n=Object.values(t.groups);n.forEach(((a,i)=>{e.value&&(t.index=0),a.offset=i?n[i-1].offset+n[i-1].len:0,t.allItems=t.allItems.concat(a.items),e.value&&a.items.forEach(((n,i)=>{const o=n.value;(e.parser?e.parser(o):o)===e.value&&(t.index=i+a.offset)}))}))}else if(e.items){t.index=0;for(let n=0,a=e.items.length;n<a;n++){const a=e.items[n].value;if((e.parser?e.parser(a):a)===e.value){t.index=n;break}}t.allItems=e.items}else t.allItems=[]}const I={view:({attrs:t,state:n})=>{const{groups:a}=n;return e("select",{"aria-label":t.caption,class:t.class,oninput:a=>{T(t,n);const i=n.index=a.target.selectedIndex,o=i>=0?n.allItems[i]:null;t.onchange&&o&&t.onchange(o.value,o,i),e.redraw()}},a?Object.values(a).map((t=>e("optgroup",{label:t.label},e(A,{items:t.items,offset:t.offset,state:n})))):e(A,{items:null!=t.items?t.items:[],state:n}))},oninit:({attrs:e,state:t})=>{Object.assign(t,{index:e.index||0,initial:e.value}),T(e,t)},oncreate:()=>{},onupdate:({attrs:t,state:n})=>{const a=void 0!==t.value&&n.initial!==t.value;(!n.groups&&!n.allItems||a)&&(T(t,n),a&&(n.initial=t.value,clearTimeout(M),M=setTimeout((()=>e.redraw()),50)))}};let _;function E(e){"function"==typeof _&&(_(),_=void 0),N.redraw&&(N.redraw(!0),delete N.redraw),e.style.display="none"}function N(t,n=!1,a=".modal-content"){const i=document.getElementById("modal-container");if(i.classList.toggle("iscustom",".modal-content"!==a),n&&(_=n,i.onclick=e=>{"modal-container"===e.target.id&&E(i)}),!t)return N.redraw&&(N.redraw(!0),delete N.redraw),void(null===t?i.style.display="none":E(i));i.style.display="flex",N.redraw=n=>{e.render(i,e(a,{role:"alertdialog","aria-labelledby":"modaltitle","aria-modal":!0},n||!t?[]:["function"==typeof t?t():t]))},N.redraw()}function D(){const e=document.getElementById("modal-container");return"none"!==e.style.display&&(E(e),!0)}const S=/\$([A-Za-z0-9_\/\:\=]+)\$/g,j=(e,t,n)=>O(e,t,{encode:n}),z=(e,t,n,a)=>O(e,t,{encode:n,unescape:a,dothrow:!0}),L={daterel:e=>new Date(e).toISOString()};function O(e,t,n){if(!e)return"";if("string"!=typeof e)return e;let a;return n=n||{},t=t||{},e.replace(S,((e,i)=>{let o=null,l=!1;i.indexOf("=")>0&&(a=i.split("="),i=a[0],l=3===a.length,o=l?n.dothrow?a[2]:null:a[1]);const r=i.split(":"),s=r[0],c=r[1]||null,u=s.split("/"),d=u.shift();let f=t[d];"number"==typeof f&&(f=""+f);let p=(u.length?P(f,u.join("/")):f)||o;if(null==p&&n.dothrow)throw new Error("Parameter "+d+(u.length?"/"+u.join("/"):"")+" is required");return null==p&&(p=n.hasOwnProperty("defvalue")?n.defvalue:"$"+s+(l?"=="+a[2]:"")+"$"),c&&L[c]&&(p=L[c](p)),n.unescape&&(p=unescape(p)),n.encode?escape(p):p}))}const P=function(e,t){if(!t)return e;try{const n=t.split("/");let a=e;for(const e in n)if(a=a[n[e]],!a){a=null;break}return a}catch(e){return null}};const F=/[^0-9A-Z._\-]+/gi,K=/[^0-9A-Z_\-]+/gi;function B(e,t=!0){return t=t&&!e?.endsWith("."),e?e.trim().toLowerCase().replace(t?F:K,""):null}const R={tokenize:(e,t,n)=>O(e,t,{encode:n,defvalue:""}),tokenizeStrict:z,tokenizeObject:function e(t,n,a,i){const o=a?z:j,l=i?{}:t;if("string"==typeof t)return o(t,n);if("object"==typeof t){if(t.length){const i=[];for(const o of t)i.push(e(o,n,a,!0));return i}for(const i of Object.keys(t)){const r=t[i];l[i]="object"==typeof r?e(r,n,a,!0):"string"==typeof r?o(t[i],n):r}}return l},tokenizeKeep:j,tokenizeWithDefault:(e,t,n)=>O(e,t,null==n?null:{defvalue:n}),tokenizeUrl:function(e,t,n){n=n||{};const{message:a,getTitle:i,defaultTitle:o}=n,l=o||"Url",r="string"==typeof e?o:"object"==typeof e&&e.id&&e.id||l;if(i)return r;const s="string"==typeof e?e:"object"==typeof e&&e.url?e.url:null;try{return z(s,t||{},"...")}catch(e){return console.log("[TOKENIZER]",e.message),a||"(not enough parameters)"}},getPointedData:P,sanitizeFilename:B,generateFilename:(e,t=void 0)=>{const n=parseInt(md5(e).substring(24),16).toString(32);return(t?B(t)+"-":"")+n}},V=(e,t)=>{const n=[];if(t)for(const e of Object.keys(t))t[e]&&n.push("."+e);return(e||"")+n.join("")},$=(e,t)=>{const n=e?[e]:[];if(t)for(const e of Object.keys(t))t[e]&&n.push(e);return n.join(" ")};function H(t,n,a,i=!1){let o;return"function"==typeof i&&(o=i,i=!1),new Promise((l=>{const r=a.map(((e,t)=>({caption:e,onclick:()=>l({idx:t,name:e})})));!function(t,n,a=["CANCEL","OK"],i={}){N(e({view:()=>[...t?[e("h3",t)]:[],...n?[e("h4",n)]:[],e(".container",a.map((t=>e("button",{onclick:()=>{document.getElementById("modal-container").style.display="none",t.onclick&&t.onclick(t.caption)}},t.caption||"OK"))))]},{}),i.onCancel||!i.noCancel)}(t,n,r,{onCancel:o,noCancel:i})}))}function Y(t,n,a,i){return new Promise((l=>{function r(e){N(null);try{l(e)}catch(e){}}const s=V(".popup.flexcol",{".favlist":(i=i||{}).favlist,".isfav":t&&t.classList.contains("isfav"),".isplay":t&&t.classList.contains("selected")});N(e({view:()=>e(s,{onclick:e=>{if("INPUT"===e.target.nodeName)return;const a=e.target.getAttribute("data-action");a?r({domItem:t,item:n,action:a}):N(null)}},[...n.title?[e("h3",{id:"modaltitle"},n.title)]:[],...a.map((a=>"text"===a.type?e("input.action",{value:a.value||"",type:"text",placeholder:a.hint||"",oncreate:({dom:e})=>e.focus(),onkeyup:e=>{27===e.keyCode&&r({domItem:t,item:n,action:a})},onchange:e=>{e.target.blur(),r({domItem:t,item:n,action:a,value:e.target.value})}}):e(o,{...a,onclick:()=>r({domItem:t,item:n,action:a})},a.caption)))])}),!0)}))}function q(t,n,a,i,o=!1){n=n||{};const{arrayClass:l="isarray",arrayChildClass:r="ischildren",objectClass:s="isobject"}=n;return e("ul",{...n.attrs||{},class:n.class},t?[...(n.keys||Object.keys(t)).map((a=>{const c=t[a]||null,u=null!==c&&"object"==typeof c,d=u&&c.length,f=(i?i+"_":"")+a;return e("li.field_"+(n.start||"")+f,{class:(d?l:u?s+" ":"")+(o?r:""),"data-title":n.titles&&n.titles[a]||a,...n.itemAttrs||{}},u?[e(".subvalues",q(c,{...n,keys:null},null,(i?i+"_":"")+a,d))]:n.renderer&&n.renderer[f]?n.renderer[f](c):e("span.value",t[a]))})),...a||[]]:[e(".empty",{})])}const W={view:({attrs:t,children:n})=>{let a;try{a=t.pointer?P(t.object,t.pointer):t.object}catch(n){return e(r,{message:n.message,...t})}return a?q(a,t,n):e(r,t)}};function G(e,t,n=void 0,a="YES",i="NO"){U(e,[i,a],n).then((e=>{e?t(e):n&&n()})).catch((()=>{n&&n()}))}function U(e,t=["NO","YES"],n="cancelled"){return new Promise(((a,i)=>{H(null,e,t,(()=>i(new Error(n)))).then((({idx:e})=>{e>=0?a(e):i(new Error(n))}))}))}const X=h((({attrs:t,state:n})=>e((t.unit||"")+".flexrow"+(t.subline?" withsubline":""),{class:t.class,text:t.text,title:t.title||null,onclick:()=>{n.checked=!n.checked,t.onchange&&t.onchange(n.checked),e.redraw()}},t.right?[...t.text?[e("span.grows.caption",t.subline?{"data-subline":t.subline}:{},t.text)]:[],e(i,{iconClass:"pad-2 pad-h",icon:n.checked?"toggle-on":"toggle-off"})]:[e(i,{iconClass:"pad-2 pad-h",icon:n.checked?"toggle-on":"toggle-off"}),...t.text?[e("span.grows.caption",t.subline?{"data-subline":t.subline}:{},t.text)]:[]])),(({attrs:e,state:t})=>{t.checked=t.original=e.checked}),null,null,(({attrs:t,state:n})=>{t.checked!==n.original&&(n.checked=n.original=t.checked,e.redraw())})),Z=window.structuredClone?window.structuredClone:e=>JSON.parse(JSON.stringify(e));function J(t,n,a={}){const{title:i,field:o,icon:l,textNew:r,textHint:s,resolve:c}=a,u=Array.isArray(t)?t.map((e=>({icon:e.icon||l,caption:o?e[o]:e,onClick:t=>n(e,t)}))):Object.keys(t).map((e=>({icon:t[e].icon||l,caption:t[e].caption||t[e].label||e,onClick:a=>n(c&&void 0!==t[e].value?t[e].value:t[e],a)})));Array.isArray(t)&&!t.length?d.add("No items available"):Y(document.body,{title:i},[...r&&!o?[{icon:"plus",caption:r,onClick:()=>Q(r,"",s,(t=>{t&&t&&t.trim()&&(n(t),e.redraw())}))}]:[],...u]).then((({action:e})=>e.onClick())).finally((()=>{}))}function Q(e,t,n,a,i={}){setTimeout((()=>Y(document.body,{title:e},[{type:"text",hint:n,value:t}]).then((({value:e})=>(i.refreshKey=String(Date.now()),a(e))))),100)}const ee=[["Lights and Fog",null,["amblight","l0","l1","l2","l3","fog"],0],["Face and Accessories",null,["facekit"],1],["Particle settings",null,["particles"],2],["Video Segmentation","common",["segcam","mask","green"],3,!0],["Video Effects",null,["fxconfig"],9],["Video Plane","val",["xvideo","yvideo","zvideo","rvideo","svideo","video"],4],["Main Camera","val",["ypos","xpos","zoom","yaw","pitch","roll","ai"],5],["Drone Camera","val",["free"],6],["Followed Agent","val",["track"],10],["Game Camera","val",["orbit","track","ocam"],7,void 0,!0],["Transition Speed","val",["spd"],8]],te=h((({attrs:t})=>e("h2.marg-2.no-marg-bottom",t.title))),ne=h((({attrs:t})=>{const{type:n="changes",meta:a,onInput:i,title:o,options:r}=t,s=a.title?.trim().length&&a.description?.trim().length,c=r&&r.embedded;return e(".flexcol.grows.ohidden.fadein",[...t.title?[e(te,{title:o})]:[],e(".flexrow.wrap.grows.pad-3.propsgroup.scrolly",[...t.notice?[e(k,{class:"marg-1 marg-v withbottommargin font-75 col-12",size:1,icon:"info-circle",text:t.notice})]:[],e(".witharia.col-12.pad-1.pad-v",{"aria-label":n+" name"},e(C,{class:"pad-2 pad-xh "+(s?"valid":"invalid"),value:a.title,maxlength:64,onchange:t=>{a.title=t,e.redraw()}})),...c?[]:[e(".col-12.witharia.pad-1.pad-v",{"aria-label":"description"},e(C,{class:"pad-2 pad-xh "+(a.description?"valid":"invalid"),value:a.description,maxlength:240,multi:!0,alwaysmulti:!0,onchange:t=>{a.description=t,e.redraw()}})),e(".col-8.witharia.pad-1.pad-v",{"aria-label":"tags"},e(C,{class:"pad-2 pad-xh",value:a.tags,maxlength:128,onchange:e=>{a.tags=e.toLowerCase().split(" ").join(",").split(",").filter((e=>e.length)).join(",")}})),e(".col-4.witharia.pad-1.pad-v",{"aria-label":"youtube video"},e(C,{class:"pad-2 pad-xh",value:a.ytref||"",hint:"YouTube ID",maxlength:16,onchange:e=>{(e=e.trim())?-1===e.indexOf(" ")&&(a.ytref=e.trim()):delete a.ytref}}))],e(".col-4.witharia.pad-1.pad-v",{"aria-label":"content attribution"},e(C,{class:"pad-2 pad-xh",value:a.author,hint:"author name",maxlength:128,onchange:e=>{a.author=e}})),e(".col-4.witharia.pad-1.pad-v",{"aria-label":"license or author link"},e(C,{class:"pad-2 pad-xh",hint:"https://...",value:a.link,maxlength:128,onchange:e=>{a.link=e}})),e(".col-4.witharia.pad-1.pad-v",{"aria-label":"source domain"},e(C,{class:"pad-2 pad-xh",value:a.source,hint:"example.com",maxlength:128,onchange:e=>{a.source=e}})),e(".col-12.al-right.marg-2.marg-v",e(l,{class:"noshrink accentbutton unitheightsmall col-4",text:"save "+n,onClick:()=>{a.title?.trim().length&&(c||a.description?.trim().length)?(N(null),i(a)):d.add("Information is incomplete or invalid")}}))])])})),ae=h((({attrs:t})=>{const{parameters:n,preset:a,presetComponents:i,types:o,globalData:r,fetcher:s}=t,c=[],u=[],f=o?ee:ee.filter((e=>{const[,t,i,o,l]=e,s=t?a[t]:a,d=l?r:n,f=t?d[t]:d;let p=!1;if(i.length){for(const e of i)s&&void 0!==s[e]&&(p=c[o]=!0),void 0!==f[e]&&(p=u[o]=!0);return p}return p=!0,u[o]=!!f,c[o]=!!s,p}));return e("ul.flexrow.wrap.userdialog",f.length?f.map((f=>{const[p,h,m,g,y,v]=f,b=o?void 0:h?a[h]:a,w=y?r:n,x=o?void 0:h?w[h]:w,C=o||c[g],k=u[g];return[...i?[e(X,{title:`Include ${f[0]} in snapshots`,class:"grows unitheightsmall"+(i[g]?" accent":""),checked:!!i[g],onchange:n=>{i[g]=!i[g],e.redraw(),t.redraw&&t.redraw()}}),e(".grows",{class:C?"avail":"unavail"},p)]:[],...t.types?[]:[e(l,{class:"col-3"+(k?"avail":"unavail"),icon:"sync",title:`Copy ${p} from current state`,onClick:()=>{if(m.length){h&&!a[h]&&(a[h]={});const e=h?a[h]:a;for(const t of m)if(void 0!==x[t]){const n=v&&s?s(e[t],g):x[t];e[t]=Z(n)}}else if(0===m.length&&h&&void 0!==x){const e=v&&s?s(x,g):x;a[h]=Z(e)}t.redraw&&t.redraw(),d.add(`updated ${p} from current scene`)}}),e(l,{class:"col-3 "+(C?"":"disabled text-lo"),icon:"trash",title:`Delete ${p} in preset`,onClick:()=>C&&(()=>{if(m.length)for(const e of m)delete b[e];else 0===m.length&&h&&delete a[h];t.redraw&&t.redraw()})()})],e(".flexbreak")]})):e("h3","Preset is Empty"))}));var ie=Object.freeze({__proto__:null,choose:function(e,t={icon:"circle",onSelect:()=>{}}){const{icon:n,title:a,field:i,onSelect:o,parser:l=e=>e}=t,r=e.map(((e,t)=>({icon:i&&e.icon||n,caption:l(i?e[i]:e,e),onClick:n=>o(e,n,t)})));Array.isArray(e)&&!e.length?d.add("No items available"):Y(document.body,{title:a},r).then((({action:e})=>e.onClick()))},promptEntity:(t,n,a,i={})=>new Promise(((o,l)=>{N(e(ne,{meta:t,type:a,title:n,options:i,onInput:e=>o(e)}),(()=>{l(new Error("cancelled"))}))})),promptName:Q,promptOptions:J,promptPreset:(t,n,a={})=>new Promise(((i,o)=>{N((()=>e(ae,{...a,preset:t,parameters:n,redraw:()=>N.redraw()})),(()=>{o(new Error("cancelled"))}))}))});const oe=h((({attrs:t})=>e(".flexcol.combocontainer.grows",{class:(t.outerClass||"")+" "+(t.label?"witharia":""),...t.label&&{"aria-label":t.label},title:t.hint},[e(".flexrow.combowidget.bg-inputs",{class:(t.value?"yesvalue ":"novalue ")+(t.class||"")},[e(l,{class:"transp combovalue grows flexrow "+(t.buttonClass||"")+(t.innerLabel?" witharia":""),textClass:"grows "+t.textClass,iconClass:"noshrink",...t.innerLabel&&{"aria-label":t.innerLabel},onClick:e=>{e.shiftKey?t.onchange(void 0,e):t.locked||function(e){const{title:t,items:n,itemsKey:a,itemsText:i,field:o,onchange:l,textNew:r,textHint:s,resolve:c,icon:u,item:d}=e,f="function"==typeof n?n():n;J(a?"function"==typeof a?a():f[a]?"function"==typeof f[a]?f[a](d)||[]:f[a]||[]:[]:f,l,{title:t,field:o,icon:u,textNew:r,textHint:s,resolve:c})}(t)},...t.value?{icon:t.value?.icon||t.icon,text:t.field||t.fieldTitle?t.value[t.fieldTitle||t.field]:t.itemsText&&t.itemsText[t.value]||t.value}:{icon:t.emptyIcon||(t.emptyText?"":"plus"),text:t.emptyText||""}}),t.value&&!t.nodelete?[e(l,{class:"clrcombo pad-2 pad-h transp "+(t.closeClass||"scaff-left"),onClick:n=>{const{field:a}=t;if(!t.confirm||n.shiftKey||n.metaKey||n.ctrlKey||n.altKey)t.onchange(a?void 0:"",n);else{const e="function"==typeof t.confirm?t.confirm():t.confirm;e?G(e,(()=>{t.onchange(a?void 0:"",n)})):t.onchange(a?void 0:"",n)}e.redraw()},icon:t.removeIcon||"times",title:t.removeHint||"remove this item"})]:[]])]))),le=function(){"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;function e(e,t){return e(t={exports:{}},t.exports),t.exports}var t=e((function(e,t){var n;e.exports=(n=function(){function e(e,t){e?(l(e,t,"touchstart","touchmove","touchend"),l(e,t,"mousedown","mousemove","mouseup")):console.warn("drag is missing elem!")}function t(t){var n=i(t.class||"",t.parent),o=i("pointer",n);return i("shape shape1",o),i("shape shape2",o),i("bg bg1",n),i("bg bg2",n),e(n,a(t.cbs,o)),{background:n,pointer:o}}function n(t){var n=i(t.class,t.parent),o=i("pointer",n);return i("shape",o),i("bg",n),e(n,a(t.cbs,o)),{background:n,pointer:o}}return e.xyslider=t,e.slider=n,e;function a(e,t){var n={};for(var a in e)n[a]=i(e[a]);function i(e){return function(n){n.pointer=t,e(n)}}return n}function i(e,t){return o("div",e,t)}function o(e,t,n){var a=document.createElement(e);return t&&(a.className=t),n.appendChild(a),a}function l(e,t,n,a,i){var o=(t=c(t)).begin,l=t.change,u=t.end;r(e,n,(function(t){var n=p(f,l,e);function c(){s(document,a,n),s(document,i,c),f(u,e,t)}r(document,a,n),r(document,i,c),f(o,e,t)}))}function r(e,t,n){var a=!1;try{var i=Object.defineProperty({},"passive",{get:function(){a=!0}});window.addEventListener("testPassive",null,i),window.removeEventListener("testPassive",null,i)}catch(e){}e.addEventListener(t,n,!!a&&{passive:!1})}function s(e,t,n){e.removeEventListener(t,n,!1)}function c(e){return e?{begin:e.begin||d,change:e.change||d,end:e.end||d}:{begin:function(e){t={x:e.elem.offsetLeft,y:e.elem.offsetTop},n=e.cursor},change:function(e){u(e.elem,"left",t.x+e.cursor.x-n.x+"px"),u(e.elem,"top",t.y+e.cursor.y-n.y+"px")},end:d};var t,n}function u(e,t,n){e.style[t]=n}function d(){}function f(e,t,n){n.preventDefault();var a=h(t),i=t.clientWidth*(window.SCALE||1),o=t.clientHeight*(window.SCALE||1),l={x:m(t,n),y:g(t,n)},r=(l.x-a.x)/i,s=(l.y-a.y)/o;e({x:isNaN(r)?0:r,y:isNaN(s)?0:s,cursor:l,elem:t,e:n})}function p(e){var t=Array.prototype.slice,n=t.apply(arguments,[1]);return function(){return e.apply(null,n.concat(t.apply(arguments)))}}function h(e){var t=e.getBoundingClientRect();return{x:t.left,y:t.top}}function m(e,t){var n=t.touches?t.touches[t.touches.length-1]:t;return Math.floor(n.clientX)}function g(e,t){var n=t.touches?t.touches[t.touches.length-1]:t;return Math.floor(n.clientY)}}(),n)})),n=e((function(e,t){e.exports=function(){function e(t){if(Array.isArray(t)){if("string"==typeof t[0]&&"function"==typeof e[t[0]])return new e[t[0]](t.slice(1,t.length));if(4===t.length)return new e.RGB(t[0]/255,t[1]/255,t[2]/255,t[3]/255)}else if("string"==typeof t){var a=t.toLowerCase();e.namedColors[a]&&(t="#"+e.namedColors[a]),"transparent"===a&&(t="rgba(0,0,0,0)");var l=t.match(o);if(l){var r=l[1].toUpperCase(),s=n(l[8])?l[8]:parseFloat(l[8]),c="H"===r[0],u=l[3]?100:c?360:255,d=l[5]||c?100:255,f=l[7]||c?100:255;if(n(e[r]))throw new Error("color."+r+" is not installed.");return new e[r](parseFloat(l[2])/u,parseFloat(l[4])/d,parseFloat(l[6])/f,s)}t.length<6&&(t=t.replace(/^#?([0-9a-f])([0-9a-f])([0-9a-f])$/i,"$1$1$2$2$3$3"));var p=t.match(/^#?([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])$/i);if(p)return new e.RGB(parseInt(p[1],16)/255,parseInt(p[2],16)/255,parseInt(p[3],16)/255);if(e.CMYK){var h=t.match(new RegExp("^cmyk\\("+i.source+","+i.source+","+i.source+","+i.source+"\\)$","i"));if(h)return new e.CMYK(parseFloat(h[1])/100,parseFloat(h[2])/100,parseFloat(h[3])/100,parseFloat(h[4])/100)}}else if("object"==typeof t&&t.isColor)return t;return!1}var t=[],n=function(e){return void 0===e},a=/\s*(\.\d+|\d+(?:\.\d+)?)(%)?\s*/,i=/\s*(\.\d+|100|\d?\d(?:\.\d+)?)%\s*/,o=new RegExp("^(rgb|hsl|hsv)a?\\("+a.source+","+a.source+","+a.source+"(?:,"+/\s*(\.\d+|\d+(?:\.\d+)?)\s*/.source+")?\\)$","i");e.namedColors={},e.installColorSpace=function(a,i,o){function l(t,n){var a={};for(var i in a[n.toLowerCase()]=function(){return this.rgb()[n.toLowerCase()]()},e[n].propertyNames.forEach((function(e){var t="black"===e?"k":e.charAt(0);a[e]=a[t]=function(t,a){return this[n.toLowerCase()]()[e](t,a)}})),a)a.hasOwnProperty(i)&&void 0===e[t].prototype[i]&&(e[t].prototype[i]=a[i])}e[a]=function(e){var t=Array.isArray(e)?e:arguments;i.forEach((function(e,n){var o=t[n];if("alpha"===e)this._alpha=isNaN(o)||o>1?1:o<0?0:o;else{if(isNaN(o))throw new Error("["+a+"]: Invalid color: ("+i.join(",")+")");"hue"===e?this._hue=o<0?o-Math.floor(o):o%1:this["_"+e]=o<0?0:o>1?1:o}}),this)},e[a].propertyNames=i;var r=e[a].prototype;for(var s in["valueOf","hex","hexa","css","cssa"].forEach((function(e){r[e]=r[e]||("RGB"===a?r.hex:function(){return this.rgb()[e]()})})),r.isColor=!0,r.equals=function(e,t){n(t)&&(t=1e-10),e=e[a.toLowerCase()]();for(var o=0;o<i.length;o+=1)if(Math.abs(this["_"+i[o]]-e["_"+i[o]])>t)return!1;return!0},r.toJSON=function(){return[a].concat(i.map((function(e){return this["_"+e]}),this))},o)if(o.hasOwnProperty(s)){var c=s.match(/^from(.*)$/);c?e[c[1].toUpperCase()].prototype[a.toLowerCase()]=o[s]:r[s]=o[s]}return r[a.toLowerCase()]=function(){return this},r.toString=function(){return"["+a+" "+i.map((function(e){return this["_"+e]}),this).join(", ")+"]"},i.forEach((function(e){var t="black"===e?"k":e.charAt(0);r[e]=r[t]=function(t,n){return void 0===t?this["_"+e]:n?new this.constructor(i.map((function(n){return this["_"+n]+(e===n?t:0)}),this)):new this.constructor(i.map((function(n){return e===n?t:this["_"+n]}),this))}})),t.forEach((function(e){l(a,e),l(e,a)})),t.push(a),e},e.pluginList=[],e.use=function(t){return-1===e.pluginList.indexOf(t)&&(this.pluginList.push(t),t(e)),e},e.installMethod=function(n,a){return t.forEach((function(t){e[t].prototype[n]=a})),this},e.installColorSpace("RGB",["red","green","blue","alpha"],{hex:function(){var e=(65536*Math.round(255*this._red)+256*Math.round(255*this._green)+Math.round(255*this._blue)).toString(16);return"#"+"00000".substr(0,6-e.length)+e},hexa:function(){var e=Math.round(255*this._alpha).toString(16);return"#"+"00".substr(0,2-e.length)+e+this.hex().substr(1,6)},css:function(){return"rgb("+Math.round(255*this._red)+","+Math.round(255*this._green)+","+Math.round(255*this._blue)+")"},cssa:function(){return"rgba("+Math.round(255*this._red)+","+Math.round(255*this._green)+","+Math.round(255*this._blue)+","+this._alpha+")"}});var l=e,r=function(e){e.installColorSpace("XYZ",["x","y","z","alpha"],{fromRgb:function(){var t=function(e){return e>.04045?Math.pow((e+.055)/1.055,2.4):e/12.92},n=t(this._red),a=t(this._green),i=t(this._blue);return new e.XYZ(.4124564*n+.3575761*a+.1804375*i,.2126729*n+.7151522*a+.072175*i,.0193339*n+.119192*a+.9503041*i,this._alpha)},rgb:function(){var t=this._x,n=this._y,a=this._z,i=function(e){return e>.0031308?1.055*Math.pow(e,1/2.4)-.055:12.92*e};return new e.RGB(i(3.2404542*t+-1.5371385*n+-.4985314*a),i(-.969266*t+1.8760108*n+.041556*a),i(.0556434*t+-.2040259*n+1.0572252*a),this._alpha)},lab:function(){var t=function(e){return e>.008856?Math.pow(e,1/3):7.787037*e+4/29},n=t(this._x/95.047),a=t(this._y/100),i=t(this._z/108.883);return new e.LAB(116*a-16,500*(n-a),200*(a-i),this._alpha)}})},s=function(e){e.use(r),e.installColorSpace("LAB",["l","a","b","alpha"],{fromRgb:function(){return this.xyz().lab()},rgb:function(){return this.xyz().rgb()},xyz:function(){var t=function(e){var t=Math.pow(e,3);return t>.008856?t:(e-16/116)/7.87},n=(this._l+16)/116,a=this._a/500+n,i=n-this._b/200;return new e.XYZ(95.047*t(a),100*t(n),108.883*t(i),this._alpha)}})},c=function(e){e.installColorSpace("HSV",["hue","saturation","value","alpha"],{rgb:function(){var t,n,a,i=this._hue,o=this._saturation,l=this._value,r=Math.min(5,Math.floor(6*i)),s=6*i-r,c=l*(1-o),u=l*(1-s*o),d=l*(1-(1-s)*o);switch(r){case 0:t=l,n=d,a=c;break;case 1:t=u,n=l,a=c;break;case 2:t=c,n=l,a=d;break;case 3:t=c,n=u,a=l;break;case 4:t=d,n=c,a=l;break;case 5:t=l,n=c,a=u}return new e.RGB(t,n,a,this._alpha)},hsl:function(){var t,n=(2-this._saturation)*this._value,a=this._saturation*this._value,i=n<=1?n:2-n;return t=i<1e-9?0:a/i,new e.HSL(this._hue,t,n/2,this._alpha)},fromRgb:function(){var t,n=this._red,a=this._green,i=this._blue,o=Math.max(n,a,i),l=o-Math.min(n,a,i),r=0===o?0:l/o,s=o;if(0===l)t=0;else switch(o){case n:t=(a-i)/l/6+(a<i?1:0);break;case a:t=(i-n)/l/6+1/3;break;case i:t=(n-a)/l/6+2/3}return new e.HSV(t,r,s,this._alpha)}})},u=function(e){e.use(c),e.installColorSpace("HSL",["hue","saturation","lightness","alpha"],{hsv:function(){var t,n=2*this._lightness,a=this._saturation*(n<=1?n:2-n);return t=n+a<1e-9?0:2*a/(n+a),new e.HSV(this._hue,t,(n+a)/2,this._alpha)},rgb:function(){return this.hsv().rgb()},fromRgb:function(){return this.hsv().hsl()}})},d=function(e){e.installColorSpace("CMYK",["cyan","magenta","yellow","black","alpha"],{rgb:function(){return new e.RGB(1-this._cyan*(1-this._black)-this._black,1-this._magenta*(1-this._black)-this._black,1-this._yellow*(1-this._black)-this._black,this._alpha)},fromRgb:function(){var t=this._red,n=this._green,a=this._blue,i=1-t,o=1-n,l=1-a,r=1;return t||n||a?(i=(i-(r=Math.min(i,Math.min(o,l))))/(1-r),o=(o-r)/(1-r),l=(l-r)/(1-r)):r=1,new e.CMYK(i,o,l,r,this._alpha)}})},f=function(e){e.namedColors={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgrey:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",grey:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"639",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"}},p=function(e){e.installMethod("clearer",(function(e){return this.alpha(isNaN(e)?-.1:-e,!0)}))},h=function(e){e.use(u),e.installMethod("darken",(function(e){return this.lightness(isNaN(e)?-.1:-e,!0)}))},m=function(e){e.use(u),e.installMethod("desaturate",(function(e){return this.saturation(isNaN(e)?-.1:-e,!0)}))},g=function(e){function t(){var t=this.rgb(),n=.3*t._red+.59*t._green+.11*t._blue;return new e.RGB(n,n,n,t._alpha)}e.installMethod("greyscale",t).installMethod("grayscale",t)},y=function(e){e.use(u),e.installMethod("lighten",(function(e){return this.lightness(isNaN(e)?.1:e,!0)}))},v=function(e){e.installMethod("mix",(function(t,n){t=e(t).rgb();var a=2*(n=1-(isNaN(n)?.5:n))-1,i=this._alpha-t._alpha,o=((a*i==-1?a:(a+i)/(1+a*i))+1)/2,l=1-o,r=this.rgb();return new e.RGB(r._red*o+t._red*l,r._green*o+t._green*l,r._blue*o+t._blue*l,r._alpha*n+t._alpha*(1-n))}))},b=function(e){e.installMethod("negate",(function(){var t=this.rgb();return new e.RGB(1-t._red,1-t._green,1-t._blue,this._alpha)}))},w=function(e){e.installMethod("opaquer",(function(e){return this.alpha(isNaN(e)?.1:e,!0)}))},x=function(e){e.use(u),e.installMethod("rotate",(function(e){return this.hue((e||0)/360,!0)}))},C=function(e){e.use(u),e.installMethod("saturate",(function(e){return this.saturation(isNaN(e)?.1:e,!0)}))},k=function(e){e.installMethod("toAlpha",(function(e){var t=this.rgb(),n=e(e).rgb(),a=new e.RGB(0,0,0,t._alpha),i=["_red","_green","_blue"];return i.forEach((function(e){t[e]<1e-10?a[e]=t[e]:t[e]>n[e]?a[e]=(t[e]-n[e])/(1-n[e]):t[e]>n[e]?a[e]=(n[e]-t[e])/n[e]:a[e]=0})),a._red>a._green?a._red>a._blue?t._alpha=a._red:t._alpha=a._blue:a._green>a._blue?t._alpha=a._green:t._alpha=a._blue,t._alpha<1e-10||(i.forEach((function(e){t[e]=(t[e]-n[e])/t._alpha+n[e]})),t._alpha*=a._alpha),t}))};return l.use(r).use(s).use(c).use(u).use(d).use(f).use(p).use(h).use(m).use(g).use(y).use(v).use(b).use(w).use(x).use(C).use(k)}()})),a=o(i,"div");function i(e,t,n){var a=document.createElement(e);return a.className=t,n.appendChild(a),a}function o(e){var t=Array.prototype.slice,n=t.apply(arguments,[1]);return function(){return e.apply(null,n.concat(t.apply(arguments)))}}function l(e,t,n){return Math.min(Math.max(e,t),n)}var r={clamp:l,e:i,div:a,partial:o,labelInput:function(e,t,n,o){var l="colorPickerInput"+Math.floor(1001*Math.random()),r=a(e,n),s=function(e,t,n){var a=i("label","",t);a.innerHTML=e,n&&a.setAttribute("for",n);return a}(t,r,l),c=function(e,t,n,a){var o=i("input","",t);o.type=e,n&&(o.maxLength=n);a&&o.setAttribute("id",a);n&&(o.maxLength=n);return o}("text",r,o,l);return{label:s,input:c}},X:function(e,t){e.style.left=l(100*t,0,100)+"%"},Y:function(e,t){e.style.top=l(100*t,0,100)+"%"},BG:function(e,t){e.style.background=t}};var s={currentColor:function(e){var t=r.div("currentColorContainer",e),n=r.div("currentColor",t);return{change:function(e){r.BG(n,e.cssa())}}},fields:function(e,t,n){var a=n.space,i=n.limit||255,o=n.fix>=0?n.fix:0,l=(""+i).length+o;l=o?l+1:l;var s=a.split(""),c="A"==a[a.length-1];if(a=c?a.slice(0,-1):a,["RGB","HSL","HSV","CMYK"].indexOf(a)<0)return console.warn("Invalid field names",a);var u=r.div("colorFields",e),d=s.map((function(e){e=e.toLowerCase();var t=r.labelInput("color "+e,e,u,l);return t.input.onblur=f,t.input.onkeydown=p,t.input.onkeyup=h,{name:e,e:t}}));function f(){t.done()}function p(e){e.ctrlKey||e.altKey||!/^[a-zA-Z]$/.test(e.key)||e.preventDefault()}function h(){var e=[a];d.forEach((function(t){e.push(t.e.input.value/i)})),c||e.push(t.getAlpha()),t.set(e)}return{change:function(e){d.forEach((function(t){t.e.input.value=(e[t.name]()*i).toFixed(o)}))}}},hex:function(e,t,n){var a=r.labelInput("hex",n.label||"",e,7);return a.input.value="#",a.input.onkeyup=function(e){var n=e.keyCode||e.which,a=e.target.value;a=function(e,t,n){for(var a=e,i=e.length;i<t;i++)a+=n;return a}(a="#"==a[0]?a:"#"+a,7,"0"),13==n&&t.set(a)},a.input.onblur=function(e){t.set(e.target.value),t.done()},{change:function(e){a.input.value="#"==a.input.value[0]?"#":"",a.input.value+=e.hex().slice(1)}}},alpha:function(e,n){var a=t.slider({parent:e,class:"oned alpha chequered",cbs:{begin:i,change:i,end:function(){n.done()}}});function i(e){var t=r.clamp(e.y,0,1);r.Y(e.pointer,t),n.setAlpha(1-t)}return{change:function(e){r.Y(a.pointer,1-e.alpha())}}},close:function(e,t,n){var a=r.e("a",n.class||"close",e);a.href="#",a.innerHTML=n.label||"Close",a.onclick=function(e){e.preventDefault(),t.hide()}}},c=function(e){return n=m,(a=[e.init,e.xy,e.z]).map(n).filter(g).length!=a.length?console.warn("colorjoe: missing cb"):function(n,a,i){return function(e){if(!e.e)return console.warn("colorjoe: missing element");var n=function(e){return"string"==typeof e}(e.e)?document.getElementById(e.e):e.e;n.className="colorPicker";var a=e.cbs,i=t.xyslider({parent:n,class:"twod",cbs:{begin:o,change:o,end:g}});function o(e){d=a.xy(d,{x:r.clamp(e.x,0,1),y:r.clamp(e.y,0,1)},i,l),m()}var l=t.slider({parent:n,class:"oned",cbs:{begin:s,change:s,end:g}});function s(e){d=a.z(d,r.clamp(e.y,0,1),i,l),m()}var u=f(e.color),d=a.init(u,i,l),h={change:[],done:[]};function m(e){e=p(e)?e:[];for(var t,n=h.change,a=0,i=n.length;a<i;a++)t=n[a],-1==e.indexOf(t.name)&&t.fn(d)}function g(){if(!u.equals(d)){for(var e=0,t=h.done.length;e<t;e++)h.done[e].fn(d);u=d}}var y={e:n,done:function(){return g(),this},update:function(e){return m(e),this},hide:function(){return n.style.display="none",this},show:function(){return n.style.display="",this},get:function(){return d},set:function(e){var t=this.get();return d=a.init(f(e),i,l),t.equals(d)||this.update(),this},getAlpha:function(){return d.alpha()},setAlpha:function(e){return d=d.alpha(e),this.update(),this},on:function(e,t,n){return"change"==e||"done"==e?h[e].push({name:n,fn:t}):console.warn('Passed invalid evt name "'+e+'" to colorjoe.on'),this},removeAllListeners:function(e){if(e)h[e]=[];else for(var t in h)h[t]=[];return this}};return function(e,t,n){if(!n)return;var a,i,o,l=r.div("extras",e);n.forEach((function(e,n){p(e)?(i=e[0],o=e.length>1?e[1]:{}):(i=e,o={});var r=i in c.extras?c.extras[i]:null;if(r)for(var s in a=r(l,function(e,t){var n=function(e){var t={};for(var n in e)t[n]=e[n];return t}(e);return n.update=function(){e.update([t])},n}(t,i+n),o),a)t.on(s,a[s],i)}))}(n,y,e.extras),m(),y}({e:n,color:a,cbs:e,extras:i})};var n,a};for(var u in c.rgb=c({init:function(e,t,a){var i=n(e).hsv();return this.xy(i,{x:i.saturation(),y:1-i.value()},t,a),this.z(i,i.hue(),t,a),i},xy:function(e,t,n){return r.X(n.pointer,t.x),r.Y(n.pointer,t.y),e.saturation(t.x).value(1-t.y)},z:function(e,t,n,a){return r.Y(a.pointer,t),d(n.background,t),e.hue(t)}}),c.hsl=c({init:function(e,t,a){var i=n(e).hsl();return this.xy(i,{x:i.hue(),y:1-i.saturation()},t,a),this.z(i,1-i.lightness(),t,a),i},xy:function(e,t,n,a){return r.X(n.pointer,t.x),r.Y(n.pointer,t.y),d(a.background,t.x),e.hue(t.x).saturation(1-t.y)},z:function(e,t,n,a){return r.Y(a.pointer,t),e.lightness(1-t)}}),c.extras={},c.registerExtra=function(e,t){e in c.extras&&console.warn('Extra "'+e+'"has been registered already!'),c.extras[e]=t},s)c.registerExtra(u,s[u]);function d(e,t){r.BG(e,new n.HSV(t,1,1).cssa())}function f(e){if(!h(e))return n("#000");if(e.isColor)return e;var t=n(e);return t||(h(e)&&console.warn("Passed invalid color to colorjoe, using black instead"),n("#000"))}function p(e){return"[object Array]"===Object.prototype.toString.call(e)}function h(e){return void 0!==e}function m(e){return"function"==typeof e}function g(e){return e}var y=c;return window.OneColor=n,y}(),re=h((()=>e(".colorjoe-frame.absolute")),null,(({attrs:e,dom:t})=>{window.SCALE=1,e.state.joe=(e.hsl?le.hsl:le.rgb)(t,e.color,e.noalpha?[]:["alpha"]),e.state.joe.on("change",(t=>{e.onColor(e.noalpha?t.css():t.cssa(),t)})).update()})),se=[],ce=h((({attrs:t,state:n,children:a})=>e(".colorjoe-popper.flexcol",{class:t.noalpha?"no-alpha":""},[e(re,{...t,state:n}),...a,e(".flexrow.extended.w-100.scaff-top.pad-2.wrap",[[0,1,2,3,4,5,6,7,8].map((a=>e("button.scaff.scaff-b1.marg-1.unitheightsmall.grows",{class:se[a]?"":"chequered",style:{...se[a]&&{backgroundColor:se[a]}},onclick:i=>{i.shiftKey?se[a]=n.joe.get().css():se[a]&&n.joe.set(se[a]),t.onRedraw?t.onRedraw():e.redraw()}}))),e(".flexbreak"),...t.onRemove?[e("button.scaff.scaff-b1.unitheightsmall.marg-1.pad-2.pad-h.grows.fabf.transp.bg-accent.fa-trash",{onclick:()=>t.onRemove(n.joe.get())})]:[]])]))),ue=h((t=>{const{attrs:n,state:a}=t;return[e(".colorjoe-cell.chequered",{class:(n.class||"")+(a.shown?" open":""),title:n.title,...n.style&&{style:n.style}},[e(".inset",{style:{backgroundColor:a.color},...n.caption&&{"data-caption":n.caption,class:"titled"},onclick:a=>{n.onshiftclick&&(a.shiftKey||a.ctrlKey)?n.onshiftclick():(t=>{N((()=>e(ce,{noalpha:t.attrs.noalpha,color:t.state.color,hsl:t.attrs.hsl,onColor:(n,a)=>{t.state.color=n,t.attrs.onchange&&t.attrs.onchange(n,a),e.redraw()},onRemove:()=>{t.attrs.onchange&&t.attrs.onchange(null,null),N(null)},onRedraw:()=>{N.redraw(),e.redraw()}},t.children)),(()=>{}),".modal-content-popper")})(t)}})])]}),(({attrs:e,state:t})=>{t.original=e.color,t.color=t.original||"rgba(0,0,0,0)"}),null,null,(({attrs:t,state:n})=>{n.original!==t.color&&(n.original=t.color,n.color=n.original||"rgba(0,0,0,0)",e.redraw())})),de=[255,255,255,1];
|
|
2
2
|
/*! colorjoe - v4.1.1 - Juho Vepsalainen <bebraw@gmail.com> - MIT
|
|
3
|
-
https://bebraw.github.com/colorjoe - 2020-01-27 */var fe=t((({attrs:t})=>{const{colors:n=[],max:a=8}=t,i=n.length,o=(e=[0,0,0,0])=>"rgba("+e.map(((e,t)=>t<3?Math.floor(255*e):e)).join(",")+")",r=(e=[0,0,0,0])=>"rgba("+((e,t,n)=>{let a,i,o;if(0===t)a=i=o=n;else{const l=(e,t,n)=>(n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e),r=n<.5?n*(1+t):n+t-n*t,s=2*n-r;a=l(s,r,e+1/3),i=l(s,r,e),o=l(s,r,e-1/3)}return[Math.round(255*a),Math.round(255*i),Math.round(255*o)]})(e[0],e[1],e[2]).join(",")+","+e[3]+")";return e(".flexrow.wrap.gradient.grows",{class:t.class},[...n.map(((a,i)=>e(ue,{class:"grows",color:t.hsl?r(n[i]):o(n[i]),title:"Click to edit, or Shift-click to remove this color from the collection",hsl:t.hsl,onchange:(a,o)=>{let l;if(t.hsl){const e=o.hsl();l=[e.hue(),e.saturation(),e.lightness(),o.a()]}else l=[o.r(),o.g(),o.b(),o.a()];n[i]=l,t.onchange&&t.onchange(n),e.redraw()},onshiftclick:()=>{n.splice(i,1),t.onchange&&t.onchange(n),e.redraw()}}))),...i<a?[e(l,{icon:"plus",class:"unitheightsmall accent bg-window-lo "+(i?"mini":"grows"),title:"Add a new color to the collection, or SHIFT-CLICK to delete all colors",onClick:a=>{a.shiftKey?n.splice(0,n.length):n.push(de),t.onchange&&t.onchange(n),e.redraw()}})]:[]])}));const pe=t((({attrs:t})=>e(".flexrow.wrap.grows.plusminus",{...t.label&&{"aria-label":t.label},class:(t.label?"witharia":"")+" "+(t.class||""),title:t.title||""},[e(l,{icon:t.iconMinus??"minus",class:"unitsizesmall "+(t.buttonClass||"transp"),title:t.title?"decrease the "+t.title:"",onClick:()=>{const{step:n=1,min:a=0}=t;let i=t.value||0;Number.isNaN(i)&&(i=0),i-=n,void 0!==a&&i<a&&(i=a),t.onchange(i),e.redraw()}}),e(".currentvalue.al-center.grows.unitheightsmall",{title:t.title},t.parser?t.parser(t.value):String(t.value||0)),e(l,{icon:t.iconPlus??"plus",class:"unitsizesmall "+(t.buttonClass||"transp"),title:t.title?"increase the "+t.title:"",onClick:()=>{const{step:n=1,max:a=0}=t;let i=t.value||0;void 0!==a&&i===a||(i+=n,t.onchange(i),e.redraw())}})]))),he=t((({attrs:t,dom:n})=>e("nav.titlebar.noshrink.flexrow",{class:t.class?" "+t.class:"unitheight bg-window-hi pad-2 pad-h shadow-2 font-125",...t.onTitleClick&&{onclick:t.onTitleClick}},[...t.onClick?[e(l,{icon:"arrow-left",onClick:()=>t.onClick()})]:[],...t.logo?[e("img.title-logo",{src:t.logo})]:[],...t.editable&&t.onchange?[e(C,{containerClass:"grows"+(t.onClick?"":" pad-2 pad-h"),hint:t.title,onchange:t.onchange,oninput:()=>{},value:t.value})]:[e("span.grows.ellipsis",{class:t.onClick?"":"pad-2 pad-h"},t.title)],...t.auxaction?[e(l,{icon:t.auxaction.icon,class:t.auxaction.class,title:t.auxaction.title,onClick:t.auxaction.onClick})]:[],...t.auxactions?t.auxactions.map((t=>e(l,{class:t.class,title:t.title,icon:t.icon,text:t.caption,onClick:t.onClick}))):[],...t.action?[e(l,{icon:t.action.icon,class:t.action.class,title:t.action.title,onClick:t.action.onClick})]:[],...t.overflow?[e(l,{icon:t.overflow.icon||"ellipsis-v",class:t.overflow.class||"",onClick:()=>Y(n,{title:t.title},t.overflow.items).then((({action:e})=>e.onClick()))})]:[]]))),me=!!navigator.userAgent.match(/iPhone|iPad|iPod/i);let ge,ye=!1;function ve(e,t,n){return Math.min(Math.max(e,t),n)}function be(e,t,n,a){if(n-t<=0)return t;if(a<=0)return ve(e,t,n);const i=Math.ceil((n-t)/a);return ve(t+Math.round(i*(e-t)/(n-t))*a,t,n)}function we(){let t,n,a,i,o,l,r,s,c,u=0,d=!1,f=!1,p=4,h=1,m=0,g=10,y=0,v=1,b="horizontal";function w(e,t){let n,a;"vertical"===b?(n=l.bottom-l.top,a=l.bottom-t):(n=l.right-l.left,a=e-l.left),a=ve(a,0,n);const i=be(a/n*(g-m)+m,m,g,v);return j(i),i}function x(t,a,i){return f?function(t,a){d=r=!0,l=n.getBoundingClientRect();const i=w(t,a);i!==y&&(y=i,c&&!1!==c(y)&&e.redraw())}(t,a):(o=i,d=!0,r=!1,l=n.getBoundingClientRect(),void(s||o.target.requestPointerLock()));var o,s}function C(e,t,n){return r?w(e,t):function(e,t,n){const a=n.shiftKey?p:n.metaKey||n.ctrlKey?4*p:h;let i,o;i="vertical"===b?n.movementY||0:n.movementX||0;let l=v>0?v:(g-m)/100;if(i<0)o=Math.max(y+l*a*i,m);else{if(!(i>0))return y;o=Math.min(y+l*a*i,g)}return o=be(o,m,g,v),j(o),o}(0,0,n)}function k(e){2!==u&&(u=1,0===e.button&&(window.addEventListener("mousemove",A),window.addEventListener("mouseup",M),x(e.clientX,e.clientY,e)))}function A(e){e.preventDefault(),N(e.clientX,e.clientY,e)}function M(e){window.removeEventListener("mousemove",A),window.removeEventListener("mouseup",M),D(e.clientX,e.clientY,e)}function T(e){if(1===u)return;t.addEventListener("touchmove",I),t.addEventListener("touchend",_);const n=e.changedTouches[0];x(n.clientX,n.clientY,e)}function I(e){e.preventDefault();const t=e.changedTouches[0];N(t.clientX,t.clientY,e)}function _(e){t.removeEventListener("touchmove",I),t.removeEventListener("touchend",_);const n=e.changedTouches[0];D(n.clientX,n.clientY,n)}function E(t){const n=t.keyCode;let a;if(33===n){t.preventDefault();let e=Math.max((g-m)/10,v);e<=0&&(e=1),a=be(y+e,m,g,v)}else if(34===n){t.preventDefault();let e=Math.max((g-m)/10,v);e<=0&&(e=1),a=be(y-e,m,g,v)}else if(35===n)t.preventDefault(),a=g;else if(36===n)t.preventDefault(),a=m;else if(37===n||40===n){t.preventDefault();let e=(v>0?v:(g-m)/10)*(t.shiftKey?.25:t.ctrlKey||t.metaKey?4:1);a=Math.max(y-e,m)}else if(38===n||39===n){t.preventDefault();let e=(v>0?v:(g-m)/10)*(t.shiftKey?.25:t.ctrlKey||t.metaKey?4:1);a=Math.min(y+e,g)}else 48===n&&(a=(g+m)/2);"number"==typeof a&&a!==y&&(y=a,j(y),s&&!1!==s(y)&&e.redraw())}function N(t,n,a){if(!d)return;const i=C(t,n,a);i!==y&&(y=i,c&&!1!==c(y)&&e.redraw())}function D(t,n,a){d&&(d=!1,y=C(t,n,a),s&&!1!==s(y)&&e.redraw(),r||document.exitPointerLock(),setTimeout((function(){d||(u=0)}),350))}function S(e){let t=(e-m)/(g-m);return"vertical"===b&&(t=1-t),String(100*t)+"%"}function j(e){const t=S(e),n=S(g-e+m);"vertical"===b?(o.style.top=t,a.style.height=t,i.style.height=n):(o.style.left=t,a.style.width=n,i.style.width=t)}function z(e){m=e.min,g=e.max,v="number"!=typeof e.step||Number.isNaN(e.step)?1:ve(e.step,0,g-m),b="vertical"===e.orientation?"vertical":"horizontal",s=e.onchange,c=e.ondrag,"number"==typeof e.value&&(y=ve(e.value,m,g)),f=!e.relative,p=e.factor&&e.factor[0]||4,h=e.factor&&e.factor[1]||1}return{oncreate:({attrs:e,dom:l})=>{me&&!ye&&(window.addEventListener("touchmove",(function(){})),ye=!0),z(e),t=l,n=t.querySelector(".mithril-range-bar"),a=n.querySelector(".mithril-range-bar-0"),i=n.querySelector(".mithril-range-bar-1"),o=n.querySelector(".mithril-range-handle"),t.addEventListener("mousedown",k),t.addEventListener("touchstart",T),t.addEventListener("keydown",E)},onremove:function(){window.removeEventListener("mousemove",A),window.removeEventListener("mouseup",M),t.removeEventListener("mousedown",k),t.removeEventListener("touchstart",T),t.removeEventListener("touchmove",I),t.removeEventListener("touchend",_),t.removeEventListener("keydown",E)},view:function({attrs:t,children:n}){const a=t.nokey?" nokey":"";z(t),y=be(y,m,g,v);const i={class:"mithril-range "+a+(t.relative?" isrelative ":" ")+(0===y?"atzero":y<0?"belowzero":"overzero")+(null!=t.class?" "+t.class:""),tabIndex:"0",role:"slider","aria-valuemin":String(m),"aria-valuemax":String(g),"aria-valuenow":String(y),"aria-orientation":b};t.id&&(i.id=t.id),t.ariaLabelledby&&(i["aria-labelledby"]=t.ariaLabelledby),t.disabled&&(i.style={pointerEvents:"none"},i["aria-disabled"]="true");const o=S(y),l=S(g-y+m);let r,s,c;return"vertical"===b?(r={top:o},s={height:o},c={height:l}):(r={left:o},s={width:l},c={width:o}),e("div",i,e("div",{class:"mithril-range-bar"+a},e("div",{class:"mithril-range-bar-0"+a,style:s}),e("div",{class:"mithril-range-bar-1"+a,style:c}),e("div",{class:"mithril-range-handle"+a,style:r},n)),!!t.name&&e("input",{type:"hidden",name:t.name,value:String(y)}))}}}const xe=t=>{const n=t.value>t.curMax?Math.ceil(t.value/t.curMax):1,a=t.curMin<0&&t.value<t.curMin?Math.abs(Math.ceil(t.value/t.curMin)):1,i=Math.min(Math.max(a,n),t.maxMultiplier);t.curMultiplier!==i&&(t.curMultiplier=i,e.redraw())},Ce=e=>e.value>=e.curMax*e.curMultiplier*.9&&e.maxMultiplier>1&&e.curMultiplier<=e.maxMultiplier-1?(e.curMultiplier++,!0):e.curMin<0?ke(e):void 0,ke=e=>{if(e.value<=e.curMin*e.curMultiplier*.9&&e.maxMultiplier>1&&e.curMultiplier<=e.maxMultiplier-1)return e.curMultiplier++,!0},Ae={oninit:({attrs:e,state:t})=>{Object.assign(t,{value:e.value||0,initial:e.value||0,curMax:e.max,curMin:e.min,curMultiplier:1,maxMultiplier:e.multiplier||1,id:"I"+Date.now()}),t.maxMultiplier>1&&(t.value>e.max?t.curMultiplier=Math.ceil(t.value/e.max):e.min<0&&t.value<e.min&&(t.curMultiplier=Math.abs(Math.ceil(t.value/e.min))))},onupdate:({attrs:t,state:n})=>{const a=t.multiplier||1,i=t.value||0;n.curMax!==t.max||n.maxMultiplier!==a?(Object.assign(n,{curMax:t.max,curMin:t.min,maxMultiplier:a,value:t.value,initial:i}),Ce(n)||(clearTimeout(n.timer),n.timer=setTimeout(xe,1e3,n)),e.redraw()):n.initial!==i&&(Object.assign(n,{value:i,initial:i}),clearTimeout(ge),ge=setTimeout((()=>e.redraw()),50))},view:({attrs:t,state:n})=>e(".range.flexcol.control.relative"+(t.multiplier>1?".withmultiplier":""),{...t.class&&{class:t.class},title:t.hint||"Click, then use arrows to finetune value if needed"},[...t.title?[e("label",{class:"rangelabel",htmlFor:n.id},t.title)]:[],e(we,{onchange:a=>{n.value=a;!Ce(n)&&n.curMultiplier>1&&(clearTimeout(n.timer),n.timer=setTimeout(xe,1e3,n)),t.onchange?t.onchange(a):e.redraw()},ondrag:e=>e!==n.value&&(n.value=e,t.ondrag&&t.ondrag(e),!0),value:n.value||0,min:(t.min||0)*n.curMultiplier,max:n.curMax*n.curMultiplier||100,step:t.step||1,relative:t.relative,factor:t.factor},[e(".currentval",t.parser?t.parser(n.value,t.step<1):n.value?t.step<1?n.value.toFixed(2):""+Math.floor(n.value):"")])])},Me={view:({attrs:t,state:n})=>e(Ae,{value:t.value||0,min:t.min||0,max:t.max||100,step:t.step||.1,class:(t.disabled?"disabled ":"")+(t.class||""),title:t.title,multiplier:t.multiplier,hint:t.hint,parser:t.parser,relative:t.relative,factor:t.factor,getLabel:e=>e?""+e:"default",ondrag:e=>(n.changed=!0,n.value=e,t.onchange&&t.onchange(e,!0),!0),onchange:e=>(t.auto0?e=0:t.autoValue&&(e=t.autoValue),n.changed=!0,n.value=e,t.onchange&&t.onchange(e,!1),!0)})},Te={setTransState:()=>{console.warn("MainState: Not Implemented setTransState")},WIDGETS:{}};function Ie(e){Object.assign(Te,e)}function _e(e){return"string"==typeof e?Te.WIDGETS[e]:e}const Ee=t((({attrs:t})=>{const{icon:n,onchange:a,icons:i,state:o}=t;return e(l,{title:"Click to select icon or emoji for this marker",class:"chequered "+(t.class||"font-200"),icon:n&&n.icon,text:n&&n.glyph,onClick:()=>Te.setTransState("emoji",a,{icons:i})})}));function Ne(e,t){m.route(document.getElementById(e),t.default||"/",t.routes)}const De=t((({attrs:t,children:n})=>e(".buttonchoice.withicon.flexrow.scaff.scaff-b1.fadein.ohidden.fa-"+(t.icon||"gear"),{class:t.containerClass||"col-11 grows marg-1",title:t.title},e((t.themeClass?t.themeClass:".flexrow.wrap")+".grows.col-11.ohidden.scaff-left.bg-inputs",{class:t.class},n)))),Se=(t,n,a,i,o,l)=>{const r=t[n];U("Choose an action for this preset",a&&l?["DELETE","RENAME","UPDATE","CANCEL"]:["DELETE","RENAME","CANCEL"]).then((o=>{0===o?(t.splice(n,1),i&&i(n),e.redraw()):1===o?setTimeout((()=>Q("Rename Preset",r.title||"","type a name for this preset",(t=>{t&&(t=t.trim())&&(r.title=t.substring(0,24),e.redraw())}))),10):a&&2===o&&a(!1,n)}))},je=t((({attrs:t,children:n})=>{const{title:a,noUpdate:i,items:o=[],current:r,altIndex:s,onEdit:c,emptyText:u,onAdd:d,onSelect:f,onDelete:p,addText:h="Add New",unconfirm:m,buttonClass:g,themeIcon:y,themeTitle:v}=t,b=[...o.map(((t,n)=>e("button.grows.marg-1.ellipsis.ohidden.hasShift",{class:(g||"unitheightsmall scaff-b1")+(n===r?" accent":"")+(n===s?" alt-accent":""),title:a,onclick:a=>{a.metaKey&&c?c(t):d&&a.shiftKey?m?(o.splice(n,1),p&&p(n),e.redraw()):Se(o,n,d,p,0,!i):f&&f(t,n,a.metaKey,a.shiftKey)}},(t.title||t.name||t.text||String(1+n)).substring(0,32)))),...!o.length&&u?[e(".grows.marg-1.ellipsis.ohidden.al-center",u)]:[],...d?[e(l,{tabIndex:-1,icon:t.icon||"plus",title:t.addTitle||"Add a new item",class:"pad-2 pad-h al-center unitheightsmall transp addbut scaff-left bg-window-lo grows"+(o.length?" some":" empty"),onClick:e=>d(e.ctrlKey||e.metaKey),text:o?.length?"":h})]:[],...!y&&t.currentWidget&&r>=0&&o[r]&&t.currentWidget(o[r],r)||[],...!y&&t.altCurrentWidget&&s>=0&&o[s]&&t.altCurrentWidget(o[s],r)||[],...n];return y?[e(De,{title:v,containerClass:t.containerClass,themeClass:t.themeClass,icon:y},b),...t.currentWidget&&r>=0&&o[r]&&t.currentWidget(o[r],r)||[],...t.altCurrentWidget&&s>=0&&o[s]&&t.altCurrentWidget(o[s],s)||[]]:b})),ze=t((({attrs:t,children:n})=>{const{nocontainer:a,emptyText:i,title:o,addTitle:r,items:s,currentIndex:c,altIndex:u,onEdit:d,onDelta:f,onSelect:p,onAdd:h,addText:m,icon:g,buttonClass:y}=t,v=s&&s.length<=(t.max||15)||!f?e(je,{addTitle:r,emptyText:i,title:o,items:s,current:c,altIndex:u,onSelect:p,onAdd:h,onEdit:d,addText:m,icon:g,buttonClass:y},n):[e(l,{tabIndex:-1,icon:"caret-right",class:"unitheightsmall grows marg-1 no-marg-left",onClick:()=>f(-1)}),...s?[e(".scaff.unitheightsmall.value.al-center.bg-window-lo.grows.marg-1.no-marg-left ",1+c+" / "+s.length)]:[],e(l,{tabIndex:-1,icon:"caret-left",class:"unitheightsmall grows marg-1 marg-v",onClick:()=>f(1)}),...h?[e(l,{tabIndex:-1,icon:t.icon||"plus",class:"unitheightsmall marg-1 marg-v",onClick:()=>h()})]:[]];return a?v:s.length||!h?e(".flexrow.wrap.max.minusbar",{class:(t.dynclass?t.dynclass()+" ":"")+t.class},v):[]})),Le=t((({attrs:t})=>{if(!t.layer.items)return[];const{global:n,layer:a,remoteFirst:i,isCue:o}=t,{storyWrapper:l}=n,{id:r,items:s}=a,c=l.getTickerIndex(r,i),u=i?l.getTickerIndex(r,!1):void 0;return e(ze,{title:t.title,onAdd:t.onAdd,class:"marg-1 marg-h grows",items:s,currentIndex:c,altIndex:u,current:s[c]||void 0,onDelta:e=>l.tickLayer(a,e,i,o),onSelect:(e,t,n)=>l.setTickerIndex(a,t,n,i,o)})})),Oe=t((({attrs:t})=>e(r,{size:2,icon:t.icon,class:"pad-2"},[...t.texts.map((t=>e(".text",t))),...t.buttonText?[e(l,{class:"font-125 accentbutton unitheightsmall",icon:t.icon||"plus",text:t.buttonText,onClick:t.onClick})]:[],...t.buttonAlt?[e(l,{class:"font-125 accentbutton unitheightsmall",icon:t.iconAlt||"plus",text:t.buttonTextAlt,onClick:t.onClick})]:[]])));function Pe(e,t,n){return t?t[e]||n||e:n||e}const Fe={oninit:({attrs:e})=>{e.oninit&&e.oninit()},view:({attrs:t})=>e(r,{class:t.class,icon:t.icon,size:t.size||4},[...t.header?[e("h3.pad-2.marg-0",Pe(t.header,t.headers))]:[],e(".pad-2",Pe(t.message,t.messages)),...t.action?[e(l,{text:t.action.caption,class:"accentbutton marg-4 marg-v pad-2 font-150",onClick:t.action.onclick})]:[],...t.actions?t.actions.map((t=>e(l,{text:t.caption,class:"accentbutton marg-4 marg-v pad-2 font-150",onClick:t.onclick}))):[]])};let Ke=!1;function Be(){Ke=!0}var Re={taint:Be,taintRedraw:function(){const t=Ke;Ke=!0,t&&e.redraw()},isTainted:function(){return Ke},untaint:function(){Ke=!1,e.redraw()}};const Ve=-1!==navigator.userAgent.indexOf("Windows NT")?"\\":"/",$e=e=>e.join(Ve),He=(e,t)=>["file://",...e.split("\\"),...t].join("/");function Ye(e){return new Promise(((t,n)=>{const a=new FileReader;a.onload=function(e){const a=e.target.result,i=new Image;i.onerror=function(t){e.target.value="",n(t)},i.onload=function(){t(i)},i.src=a},a.readAsDataURL(e)}))}const qe=t((({attrs:t})=>e(l,{class:"unitsizesmall rectbutton ohidden",icon:"images",onClick:()=>Te.setTransState("image",void 0,{giphyQuery:"frame",onOverride:n=>{const a=n?t.parse?t.parse(n):n:void 0;a&&(t.onImage(a),e.redraw())}})}))),We=t((t=>{const{attrs:n}=t;return e("button.selectfile.relative",{...n.class&&{class:n.class}},[e(i,{icon:n.icon||"upload",iconClass:n.iconClass}),...n.text?[e("span.text",{class:n.textClass},n.text)]:[],e("input",{class:"absolute w-100 h-100 ohidden",type:"file",accept:n.accept||null,title:n.title,onchange:e=>{e.target.files&&e.target.files.length&&(n.onFile(e.target.files[0]),e.target.value="")}})])})),Ge=t((({attrs:t})=>e(We,{class:t.class,accept:t.accept||"image/*",icon:t.icon||"image",iconClass:t.iconClass,textClass:t.textClass,text:t.text,onFile:e=>t.onImageFiles([{type:"image",file:e}])}))),Ue=t((({attrs:t})=>e(Ge,{class:t.class,icon:t.icon,text:t.text,accept:t.accept,iconClass:t.iconClass,textClass:t.textClass,onImageFiles:e=>{e.length&&Ye(e[0].file).then(t.onImage).catch((e=>{t.onError&&t.onError(e)}))}}))),Xe=t((({attrs:t})=>e(Ge,{class:t.class,icon:t.icon,text:t.text,accept:t.accept,iconClass:t.iconClass,textClass:t.textClass,onImageFiles:e=>{var n;e.length&&(n=e[0].file,new Promise(((e,t)=>{const a=new FileReader;a.onload=function(a){const i=a.target.result;i?e({name:n.name,url:i}):t(new Error("no data"))},a.readAsDataURL(n)}))).then(t.onImageUrl).catch((e=>{t.onError&&t.onError(e)}))}}))),Ze=t((({attrs:t})=>{const{fontFamily:n,state:a,onchange:i}=t;return e(".flexrow.grows.fontgroup",{class:t.class},[...n&&!t.nodelete?[e(l,{class:"scaff-right unitsize",icon:"trash",onClick:()=>{i(void 0),Te.setTransState()}})]:[],e(l,{class:"grows transp font-125 ohidden",text:n||"default",icon:"font",onClick:()=>Te.setTransState("fontsel",(e=>{i(e),Te.setTransState()}))})])})),Je={},Qe=h((({attrs:t})=>{const{metaDef:n,value:a,onchange:i}=t,{default:o=[0,0],length:l=0,min:r,max:s,float:c,title:u,class:d,labels:f,numbersClass:p,draginc:h,final:m,fixed:g,step:y}=n,v=a&&Array.isArray(a)?a:o;let b=v;if(l&&b.length!==l){const e=[];for(let t=0;t<l;t++)e.push(v[t]??0);b=e}return e(".flexrow.vector-container.w-100",{class:d,...u&&{"aria-label":u,title:u}},b.map(((t,n)=>e(C,{containerClass:"grows",class:p||"",value:String(c?parseFloat(t)||0:parseInt(t,10)||0),...Array.isArray(f)&&{label:f[n]||""},...h&&{staticField:!0,draginc:h},type:"text",hint:"0",subtype:"number",fixed:g,step:y,final:!!m,onchange:e=>{let t=c?parseFloat(e):parseInt(e,10);isNaN(t)?t=o[n]||0:(void 0!==r&&t<r&&(t=r),void 0!==s&&t>s&&(t=s)),b[n]=t,i(b)}}))))})),et="needsUpdate",tt="_rebuild_children",nt=t((({children:e})=>[e])),at=t((({attrs:t})=>e(l,{text:t.text,icon:t.icon,title:t.hint,iconClass:t.iconClass,class:(t.checked?t.inverted?"":"accent ":t.inverted?"accent ":"")+(t.class||"")+(t.noclass||" tgbutton"),onClick:()=>t.onchange(!t.checked)}))),it=t((({attrs:t})=>e(Me,{min:0,max:t.max||1,step:.1,...t.mul&&{multiplier:t.mul},class:"tgrange grows innerlabel",title:t.text,value:t.value??0,hint:t.hint,onchange:e=>t.onchange(e),parser:e=>e||"OFF"}))),ot=t((({attrs:t,children:n})=>e(".flexrow.wrap",{class:t.class},t.source?Object.keys(t.source).map((n=>e(_e(t.widget)||at,{text:n,icon:t.icon,checked:!!t.source[n],hint:t.hint,value:t.source[n],class:t.buttonClass,max:t.max,mul:t.mul,onchange:e=>{t.source[n]=e>=0?e:!!e,t.onchange(n)}}))).concat(n):[]))),lt=t((({attrs:t,state:n,children:a})=>[...t.keys.length>1?[e(".flexrow.wrap",{class:t.class},t.source?t.keys.map((a=>e(at,{text:a,checked:n.current===a,class:t.selectorButtonClass||"transp",hint:t.hint,onchange:()=>{n.current=a,e.redraw()}}))):[])]:[],...n.current?[e(ot,{class:t.class,source:t.source[n.current],icon:t.icon,buttonClass:t.buttonClass,onchange:t.onchange,hint:t.hint,widget:t.nocustom!==n.current?_e(t.widget):void 0,max:t.max,mul:t.mul},a)]:[]]),(({attrs:e,state:t})=>{t.current=e.keys[0]})),rt=t((({attrs:t,children:n})=>{const a=t.source&&Array.isArray(t.source),i=a?t.source.map(((e,t)=>t)):t.keys||t.source&&Object.keys(t.source),o=()=>i&&i.length||t.add?[...t.cardie||t.noseparator?[]:[e(g,{class:t.separatorClass,text:t.caption})],e(".flexrow.wrap",{class:t.class},(t.source?i.map((n=>e(_e(t.widget.name),{keyName:n,class:t.widgetClass,...("function"==typeof t.widget.attrs?t.widget.attrs(t,n):t.widget.attrs)||{},value:t.source[n],parameters:t.targetParameters,onchange:(e,i)=>{!e&&t.add&&i.shiftKey?a?t.source.splice(n,1):delete t.source[n]:t.source[n]=e,t.onchange(n)}}))):[]).concat(t.add&&!t.keys?[e(l,{icon:"plus",class:t.addButtonClass||"marg-1 transp leftbutton grows unitsizesmall",text:`add ${t.add}`,onClick:()=>{Q(`Enter new ${t.add} name`,"",`type ${t.add} name`,(n=>{n&&(n=B(n).toLowerCase()),n&&(a?t.source.push(""):t.source[n]||(t.source[n]="",e.redraw()))}))}})]:[]).concat(n))]:t.empty?e(r,t.empty):[];return t.cardie?e(p,{nofold:!1,size:1,cols:!1,title:t.caption,cardid:t.cardie,class:"relative grows"+(t.cardieClass?" "+t.cardieClass:""),expandedView:o}):o()})),st=t((({attrs:t})=>e(l,{text:t.states[Number.parseInt(t.checked,10)||0]||"---",icon:t.icon,hint:t.hint,class:"tgbutton "+(t.checked?t.inverted?"":"accent ":t.inverted?"accent ":"")+(t.class||""),onClick:()=>{let e=Number.parseInt(t.checked,10)||0;e++,e%=t.states.length,t.onchange(e)}}))),ct=t((({attrs:t,state:n})=>{const a=t.template.presets.concat(n.files||[]);return e(".templatepresets.flexrow.wrap",{class:t.class},a.length?a.map((n=>e(t.template.render,{item:n,title:"Apply "+t.template.name+" to "+t.type,onClick:()=>t.onClick(n),layer:t.layer}))):t.template.empty?e(k,t.template.empty):e(".emptybox","No presets available"))}),(({attrs:t,state:n})=>{t.template.files&&t.entity&&t.template.files(t.entity).then((t=>{n.files=t,e.redraw()})).catch((()=>{}))})),ut=(e,t={},n,a="metaField")=>e.array?e.array:(e[a]&&n?t[n[e[a]]]:t)||{},dt=(e,t,n)=>({...ut(t,t.items,n),...t.dynamicItems&&e.itemsDict&&ut(t,e.itemsDict[t.dynamicItems],n,"dynamicMetaField")||{}}),ft=t((({attrs:t,state:n,children:a})=>{let o=0;const{meta:s,crit:c={},when:u={},sizes:f={},metaKeys:h=Object.keys(t.meta),parameters:m,auxParameters:v,clone:b,onchange:w,itemClass:x,wrapper:A,onAction:M,empty:T,initializeTargets:_,transformers:E,name:N}=t,D="object"==typeof E,S=(e,t)=>e.get?"function"==typeof e.get?e.get:D&&"string"==typeof e.get&&"function"==typeof E[e.get]?((e,t)=>n=>E[e.get](n[t]))(e,t):void 0:void 0,j=(e,t)=>e.set?"function"==typeof e.set?e.set:D&&"string"==typeof e.set&&"function"==typeof E[e.set]?((e,t)=>(n,a)=>{n[t]=E[e.set](a)})(e,t):void 0:void 0,z=h.map((a=>{const r=s[a];m&&r.target&&void 0===m[r.target]&&"object"==typeof _&&(m[r.target]=structuredClone(_));const h=r.when||(u?u[a]:void 0),N="object"==typeof r&&!Array.isArray(r),D=r.auxTarget&&!r.target||t.auxTargetIsDefault?v:m,z=r.target||r.forTarget?D[r.target||D.forTarget]:D;if(!m||h&&!((e,t,n,a)=>{const i=e.is||e.value,o=e.key;return"function"==typeof e?e(t,n):"string"==typeof e?!!a[e]:o?i?e.not?a[o]!==i:a[o]==i:Array.isArray(e.values)?e.not?-1===e.values.indexOf(a[o]):-1!==e.values.indexOf(a[o]):e.not?!a[o]:!!a[o]:!!e.containsKey&&"object"==typeof a&&a.hasOwnProperty(e.containsKey)})(h,m,v,z)||!N)return[];const L=r.widget,O=r.update||c[a],P=r.key||a,F="group"===r.type,K="groupArray"===r.type,B="array"===r.type,R="string"==typeof r||"text"===r.type,V="json"===r.type,$="boolean"==typeof r||"boolean"===r.type,H="vector"===r.type,Y="number"===r.type,q="range"===r.type&&!Number.isNaN(r.min),W="action"===r.type,U=r.choices||r.choose||r.chooseKey,Q="keytoggle"===r.type,ee="iterakey"===r.type,te=r.options||r.optionsKey,ne=r.items,ae="color"===r.type,ie="plusminus"===r.type,le="separator"===r.type,re="static"===r.type||"dragTarget"===r.type,se="emoji"===r.type,ce="font"===r.type,de="notice"===r.type,fe="asset"===r.type,he=le?"col-12":"col-"+(r.size||f[a]||4);if(!z)return[];z&&void 0===z[P]&&r.default&&(z[P]=r.default);const me=r.altMeta&&s[r.altMeta],ge=me&&r.altMeta,ye=me&&me.key,ve=r.idx,be=ve>=0,we=S(r,ye||P),xe=we?we(z,v,m,ve,ye):be?z[P]?z[P][ve]:0:z[P],Ce=(e,t,n)=>{const a=j(r,n||P);if(!a){const t=be?ve:n||P;return(be?z[n||P]:z)[t]=e&&b&&"object"==typeof e?Z(e):e}a(z,e&&b&&"object"==typeof e?Z(e):e,v,m,ve,n)},ke=t.onbeforechange?(e,n,i,o)=>!!t.onbeforechange(i||a,e,o||r)&&(Ce(e,0,i),!0):Ce;return o++,e(".grows.flexrow."+he,{class:"mk_"+a+(r.type?" ptype_"+r.type:"")+(R?"witharia":"")+(r.itemClass||x?" "+(r.itemClass||x):""),"aria-label":a},B?Array.isArray(xe)&&r.meta?xe.map(((n,i)=>{const o={value:n};return[e(ft,{meta:{value:r.meta},parameters:o,auxParameters:v,clone:b,onchange:()=>{xe[i]=o.value,w(O,z,a,xe)},itemClass:x,wrapper:A,empty:T,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:!1,AssetButton:t.AssetButton,initializeTargets:t.initializeTargets,transformers:E})]})).concat(r.addAction?[e(l,{...r.addAction,onClick:t=>{if(r.addAction.onClick)r.addAction.onClick(t,m,v);else if(r.addAction.template)xe.push(Z(r.addAction.template));else{(()=>M(a,t,null,xe,r.addAction))()}e.redraw()}})]:[]):[]:K?(Array.isArray(xe)?xe.map(((n,i)=>r.small?e(ft,{meta:dt(t,r,n),crit:{},when:{},sizes:{},parameters:n,auxParameters:v,arrayInfo:{source:xe,item:n,index:i},clone:b,onchange:w,itemClass:x,wrapper:A,empty:T,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:!1,AssetButton:t.AssetButton,CodeMirror:t.CodeMirror,initializeTargets:t.initializeTargets,transformers:E}):e(p,{class:"relative grows "+(r.class||"pad-h emby w-max")+(r.dynClass?" "+r.dynClass(m,v,i):""),title:r.titleField?n[r.titleField]||r.title+" #"+(i+1):r.dynTitle?r.dynTitle(m,v,i):r.title+" #"+(i+1)+(n.title?" - "+n.title:""),cardid:r.cardid+"-"+i,nofold:!1,size:r.margin||0,expandedView:()=>[e(ft,{meta:dt(t,r,n),crit:{},when:{},sizes:{},parameters:n,auxParameters:v,clone:b,onchange:w,itemClass:x,wrapper:A,empty:T,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:!1,AssetButton:t.AssetButton,CodeMirror:t.CodeMirror,initializeTargets:t.initializeTargets,transformers:E})],titleExpanded:r.titleExpanded||r.hint,titleCollapsed:r.titleCollapsed||r.hint,...M&&r.itemAction?Array.isArray(r.itemAction)?{action:r.itemAction.map((e=>({...e,onClick:t=>{const i=()=>M(a,t,n,xe,e);e.confirm?G(e.confirm,i):i()}})))}:{action:{...r.itemAction,onClick:e=>{const t=()=>M(a,e,n,xe,r.itemAction);r.itemAction.confirm?G(r.itemAction.confirm,t):t()}}}:{},...r.itemCollapsedAction&&M&&{collapsedAction:{...r.itemCollapsedAction,onClick:e=>{const t=()=>M(a,e,n,xe,r.itemCollapsedAction);r.itemCollapsedAction.confirm?G(r.itemCollapsedAction.confirm,t):t()}}}}))):r.object&&xe&&"object"==typeof xe?Object.entries(xe).map((([n,i],o)=>e(p,{class:"relative grows "+(r.class||"pad-h emby w-max")+(r.dynClass?" "+r.dynClass(m,v,o):""),title:r.titleField?i[r.titleField]||n:r.dynTitle?r.dynTitle(m,v,o):n,cardid:r.cardid+"-"+n,nofold:!1,size:r.margin||0,expandedView:()=>[e(ft,{meta:dt(t,r,i),crit:{},when:{},sizes:{},parameters:i,auxParameters:v,clone:b,onchange:w,itemClass:x,wrapper:A,empty:T,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:!1,AssetButton:t.AssetButton,CodeMirror:t.CodeMirror,initializeTargets:t.initializeTargets})],titleExpanded:r.titleExpanded||r.hint,titleCollapsed:r.titleCollapsed||r.hint,...r.itemAction&&M&&{action:{...r.itemAction,onClick:e=>{const t=()=>M(a,e,i,xe,r.itemAction);r.itemAction.confirm?G(r.itemAction.confirm,t):t()}}},...r.itemCollapsedAction&&M&&{collapsedAction:{...r.itemCollapsedAction,onClick:e=>{const t=()=>M(a,e,i,xe,r.itemCollapsedAction);r.itemCollapsedAction.confirm?G(r.itemCollapsedAction.confirm,t):t()}}}}))):[]).concat(r.addAction?[e(l,{...r.addAction,onClick:t=>{if(r.addAction.onClick)r.addAction.onClick(t,m,v);else if(r.addAction.template)xe.push(Z(r.addAction.template));else{(()=>M(a,t,null,xe,r.addAction))()}e.redraw()}})]:[]):F?[e(p,{class:"relative grows "+(r.class||"emby w-max")+(r.dynClass?" "+r.dynClass(m,v):""),title:r.dynTitle?r.dynTitle(m,v):r.title,cardid:r.cardid,nofold:!1,size:r.margin||0,expandedView:()=>[e(ft,{meta:dt(t,r,z),crit:{},when:{},sizes:{},parameters:m,auxParameters:v,clone:b,onchange:w,itemClass:x,wrapper:A,empty:T,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:t.auxTargetIsDefault,AssetButton:t.AssetButton,CodeMirror:t.CodeMirror,initializeTargets:t.initializeTargets,transformers:E}),...r.addAction?[e(l,{...r.addAction,onClick:t=>{r.addAction.onClick(t,m,v),e.redraw()}})]:[]],titleExpanded:r.titleExpanded||r.hint,titleCollapsed:r.titleCollapsed||r.hint,...r.titleAction&&M&&{action:{...r.titleAction,onClick:e=>{const t=()=>M(a,e,z,null,r.titleAction);r.titleAction.confirm?G(r.titleAction.confirm,t):t()}}},...r.titleCollapsedAction&&M&&{collapsedAction:{...r.titleCollapsedAction,onClick:e=>{const t=()=>M(a,e,z,null,r.titleCollapsedAction);r.titleCollapsedAction.confirm?G(r.titleCollapsedAction.confirm,t):t()}}}})]:le?[e(g,{class:r.class||"mini",text:"string"==typeof r.title?r.title:r.label||a})]:re?[e(".textwrapper.flexcol.grows",{...r.label&&{"aria-label":r.label,class:"witharia"}},e(".textcontainer.flexrow",[...r.icon?[e(i,{icon:r.icon,class:r.iconClass})]:[],e(".innertext",{class:r.class,title:r.hint,..."dragTarget"===r.type&&{ondragover:e=>{Array.from(e.dataTransfer?.types||[]).includes("application/x-nebular-world-asset+json")&&(e.preventDefault(),e.dataTransfer.dropEffect="copy")},ondrop:e=>{const t=e.dataTransfer?.getData("application/x-nebular-world-asset+json");if(t)try{const n=JSON.parse(t),i=(r.accepts||[]).map((e=>e.replace(/^\./,"").toLowerCase()));if(1!==n.version||"asset"!==n.kind||"string"!=typeof n.path||"string"!=typeof n.type||i.length&&!i.includes(n.type.toLowerCase()))return;e.preventDefault(),e.stopPropagation(),ke(n.path),w(O,z,a,void 0,r)}catch{}}}},xe)]))]:L?[e(_e(r.widget),"function"==typeof r.attrs?r.attrs(xe,n,((e,t)=>w(e||O,t?m:z,a,void 0,r)),null,t,z):r.attrs||t,r.children?r.children(xe,n,((e,t)=>{w(e||O,t?m:z,a,void 0,r)}),null,t,z):[])]:ie?[e(pe,{max:r.max,min:r.min,title:r.title,label:r.label,value:xe,onchange:e=>{ke(e),w(O,z,a,void 0,r)}})]:R||V&&!t.CodeMirror?[e(C,{containerClass:"grows",class:r.inputClass,value:xe,label:r.label,hint:N?r.hint:r,title:r.title,maxlength:N&&r.maxlength||256,final:!!r.final,nodelete:!!r.readonly,readonly:!!r.readonly,multi:V||r.multi,alwaysmulti:V||r.alwaysmulti,onchange:e=>{ke(e),w(O,z,a,void 0,r)}})]:V?[e(nt,[e(t.CodeMirror,{key:m.id,doc:xe,schema:r.schema,templates:r.templates,hint:r.dynamicHint?r.dynamicHint(z):r.hint,empty:r.empty,onSave:e=>{null!==e&&(ke(e||""),w(O,z,a,void 0,r),e||d.add(r.hint+" cleared"))}})])]:Y?[e(C,{containerClass:"grows",class:r.inputClass,value:r.step>0&&r.step<1||r.float?Number.isFinite(parseFloat(xe))?parseFloat(xe):Number.isFinite(r.default)?String(r.default):"":xe,type:"text",label:r.label,...Number.isFinite(r.step)&&{step:r.step},hint:N?r.hint:r,title:r.title,subtype:"number",fixed:r.fixed,nodelete:!!r.nodelete,...r.draginc&&{staticField:!0,draginc:r.draginc},final:!!r.final,onchange:e=>{let t=r.step>0&&r.step<1||r.float,{min:n,max:i}=r;if(void 0===e)ke(void 0);else{let a=t?parseFloat(e):parseInt(e,10);isNaN(a)?a=void 0:(a<n&&(a=n),a>i&&(a=i)),ke(a)}w(O,z,a,void 0,r)}})]:H?[e(Qe,{metaDef:r,value:xe,onchange:e=>{ke(e),w(O,z,a,void 0,r)}})]:de?[e(k,r)]:fe?t.AssetButton?[e(t.AssetButton,{value:xe,confirm:r.confirm,class:"grows "+(r.containerClass||"scaff scaff-b1"),buttonClass:r.buttonClass||"unitheight scaff-left",readonly:r.readonly,closeClass:r.closeClass,textClass:r.textClass||"",iconClass:r.iconClass||"",field:r.field,types:r.types,subtype:r.subtype,file:r.file,pack:r.pack,shiftUpdate:r.shiftUpdate,shiftIcon:r.shiftIcon,removeIcon:r.removeIcon,emptyValue:r.emptyText||"off",emptyText:r.emptyText||"off",emptyIcon:r.emptyIcon||r.icon,icon:r.icon,title:r.title,titleCollapsed:r.titleCollapsed,titleClass:"pad-2 pad-v no-pad-bottom",parameters:m,auxParameters:v,onchange:(e,n)=>{n&&n.shiftKey&&t.onShiftPress?t.onShiftPress(a,z,e):(void 0===e&&(e=r.nullValue||void 0),ke(e),w(O,z,a,void 0,r))}})]:[e(l,{icon:r.icon,title:r.title,class:"unitheight",text:"No Asset Module"})]:se?[e(Ee,{class:"grows "+(r.class||"scaff scaff-b1 unitheight font-200"),icon:{glyph:xe},icons:!1,onchange:e=>{ke(e),w(O,z,a,void 0,r)}})]:ce?[e(Ze,{class:"grows "+(r.class||"scaff-right unitheight"),fontFamily:xe,nodelete:r.nodelete,onchange:e=>{if(r.nodelete&&!e)return;ke(e);const t=r.target||r.forTarget?m[r.target||r.forTarget]:m;w(e?O:"delete",t,a,!e,r)}})]:ae?[e(".colorwrapper.flexcol.grows",{...r.label&&{"aria-label":r.label,class:"witharia"}},e(ue,{class:"grows "+(r.class||"unitheight")+(ye?" withalt":""),color:xe,caption:r.caption,noalpha:r.noalpha,remove:r.remove,onchange:(e,t)=>{let n=e;if(n)if(r.hsl){const e=t.hsl();n=[e.hue(),e.saturation(),e.lightness()]}else r.rgba?n=[t.r(),t.g(),t.b(),r.noalpha?1:t.a()]:r.hex&&(n=t.hex());ke(n),w(O,z,a,void 0,r)},...ye&&{style:{"--data-altval":((z[ye]??me.min)-me.min)/(me.max-me.min)*100+"%"}}},me?[e(Me,{auto0:me.auto0,min:me.min,max:me.max,step:me.step||.1,...me.mul&&{multiplier:me.mul},class:"col-11 grows innerlabel order-first",title:me.title,value:Number.isFinite(z[ye])?z[ye]:me.min,onchange:e=>{ke(e,void 0,ye,me),w(c[ge],z,ge,void 0,r)}})]:void 0))]:$?[e(r.toggle?r.states?st:at:X,{class:"grows "+(r.class||"unitheight"),text:N?r.title||r.label:a,icon:N?r.icon:void 0,noclass:r.noclass,subline:r.subline,checked:xe,title:r.hint,hint:r.hint,inverted:r.inverted,states:r.states,iconClass:r.iconClass,onchange:e=>{ke(r.states?e:!!e),w(O,z,a,void 0,r)}})]:W?[e(l,{class:"grows "+(r.class||"accentbutton unitheightsmall"),text:""===r.label?null:r.parse?r.parse(z,v):r.label||r.text||a,icon:r.icon,title:r.title||r.hint,onClick:e=>{if(r.popup)J(r.popup,(n=>{const i=()=>{n.onClick?n.onClick(a,e,z,v,n,t):t.onAction&&t.onAction(a,e,D,t.arrayInfo,n)};n.confirm?G(n.confirm,i):i()}),{field:"label"});else{const n=()=>{r.onClick?r.onClick(a,e,z,v,r,t):t.onAction&&t.onAction(a,e,D,t.arrayInfo,r)};r.confirm?G(r.confirm,n):n()}}})]:Q?[e(r.keys?lt:ot,{class:"col-12 "+(r.toggle?"istoggler":""),icon:r.icon,buttonClass:r.buttonClass,selectorClass:r.selectorClass||"grows",selectorButtonClass:r.selectorButtonClass,keys:r.keys,hint:r.hint,nocustom:r.nocustom,source:xe,onchange:()=>w(O,z,a,void 0,r),...r.customWidget||{}})]:ee?[e(rt,{class:"col-12"+(r.class?" "+r.class:""),buttonClass:r.widgetClass,cardie:r.cardie,cardieClass:r.cardieClass,addButtonClass:r.addButtonClass,caption:r.caption,separatorClass:r.separatorClass,noseparator:r.noseparator,source:xe,onchange:()=>w(O,z,a,void 0,r),widget:r.keyWidget,keys:r.keys,add:r.add,targetParameters:z,auxParameters:v,empty:r.empty})]:U?[e(y,{class:"col-12 "+(r.toggle?"istoggler":""),subclass:r.class,buttonClass:r.buttonClass,choices:r.choices,choose:r.choose,chooseKey:r.chooseKey,chooseDict:t.chooseDict,label:r.label,field:r.field,icon:r.icon,value:xe,title:r.title,onchange:e=>{let{value:t}=e;t||t>=0?(r.toggle&&t===xe&&(t=!t),ke(t),w(O,z,a,void 0,r)):(ke(void 0),w(O,z,a,void 0,r)),Be()}})]:te?[e(oe,{class:r.containerClass||"scaff scaff-b1",buttonClass:r.class||"unitheightsmall scaff-left",closeClass:r.buttonClass||void 0,textClass:r.textClass||"",locked:r.locked,value:xe,field:r.field,fieldTitle:r.fieldTitle,emptyText:r.emptyText||"off",emptyIcon:r.emptyIcon||r.icon,confirm:r.confirm,icon:r.icon||t.icon,hint:r.hint||r.title,label:r.label,title:r.question,itemsKey:"function"==typeof r.optionsKey?()=>r.optionsKey(z):r.optionsKey,items:r.options||t.optionsDict,removeIcon:r.removeIcon,nodelete:r.nodelete,item:m,onchange:(e,t)=>{t?.shiftKey?r.shiftPress?r.shiftPress(z,v):r.shiftAction&&M?.(a,t,z,xe,r.shiftAction):("string"==typeof e&&(e=e.trim()),e?(ke(r.values?r.values[e]:e,r.clone),w(O,z,a,!1,r)):(ke(r.nullValue||void 0),w(O,z,a,!0,r)),Be())}})]:ne?[e(I,{class:"grows scaff scaff-b1 "+(r.class||"unitheight"),value:xe,emptyText:r.emptyText||"off",icon:r.icon,title:r.title,items:dt(t,r.items,z),textClass:r.textClass||"",onchange:e=>{"string"==typeof e&&(e=e.trim()),e?(ke(e),w(O,z,a,void 0,r)):(ke(void 0),w(O,z,a,void 0,r)),Be()}})]:q?[e(Me,{auto0:r.auto0,relative:!r.auto0&&!r.absolute,factor:r.factor,min:r.min,max:r.max,step:r.step||.1,...r.mul?{multiplier:r.mul}:{},class:"col-11 grows innerlabel",title:r.label||r.title||(-1===a.indexOf("-")?a:a.substring(a.lastIndexOf("-")+1)),hint:r.hint,value:Number.isFinite(xe)?xe:Number.isFinite(r.default)?r.default:r.min,parser:r.parser,field:r.field,onchange:e=>{ke(e),w(O,z,a,void 0,r)}})]:[e(Me,{min:r[0],max:r[1],step:r[2]||.1,...r[3]?{multiplier:r[3]}:{},class:"col-11 grows innerlabel",title:r[4]||(-1===a.indexOf("-")?a:a.substring(a.lastIndexOf("-")+1)),value:parseFloat(xe)||r[0],onchange:e=>{ke(e),w(O,z,a,void 0,r)}})])}));return o||a.length?A?A(z.concat(a)):z.concat(a):T&&!a.length?e(r,T):[]})),pt=t((({attrs:t,children:n})=>{const{busy:a,parameters:i,auxParameters:o,cardid:l,size:s,index:c,titleWidget:u,parametersTitle:d,parametersBody:f,rootUpdate:h,layer:m,tableChildren:g,cols:y,onLayerReset:v,onAction:b,nofold:w,bodyClass:x,titleAction:C,AssetButton:k,CodeMirror:A,optionsDict:M}=t;return e(p,{busy:a,nofold:w,size:s,cols:y,title:f.titleCollapsed||f.title,titleCollapsed:f.titleCollapsed||f.title,titleExpanded:f.titleExpanded||f.title,action:C,expandedClass:t.expandedClass,onShiftOpen:()=>{},titleWidget:u||ft,titleAttrs:{...d,onShiftPress:t.onShiftPress,confirm:t.confirmTitle,itemClass:"",parameters:i,auxParameters:o,clone:!0,layer:m,AssetButton:k,CodeMirror:A,optionsDict:M,initializeTargets:t.initializeTargets,onAction:b,onchange:(n,a,l,r,s)=>{Be();const c=s.rootUpdate||h;if(s?.onchange)s.onchange(n,a,i);else if(n){if("none"===c)return;"both"===c&&o?a[et]=o[et]=n:"parent"===c&&o?(a[et]=n,o[et]=!0):"target"===c&&a!==i?(a[et]=n,i[et]=!0):2===c?i[et]=n:1===c?a&&(a[et]=n):"string"==typeof c&&"both"!==c&&"parent"!==c&&"target"!==c?i[c]?(i[c][et]=n,i[et]=!0):i[et]=tt:-1!==c&&a&&(a[et]=n)}else v&&v();t.onTitleChange&&t.onTitleChange(n,a,l,r),e.redraw()}},cardid:l,class:"withbottommargin relative"+(t.class?" "+t.class:""),bodyClass:x,expandedView:()=>[...f.meta?[e(ft,{...f,confirm:t.confirmBody,itemClass:"pad-1",parameters:i,auxParameters:o,clone:!0,layer:m,index:c,play:t.play,itemsDict:t.itemsDict,initializeTargets:t.initializeTargets,optionsDict:M,AssetButton:k,CodeMirror:A,onAction:b,onchange:(n,a,l,r,s,c)=>{const u=s.rootUpdate||h;if(Be(),s?.onchange)s.onchange(n,a,i);else if(n){if("none"===u)return;"both"===u&&o?a[et]=o[et]=n:"parent"===u&&o?(a[et]=n,o[et]=!0):"target"===u&&a!==i?(a[et]=n,i[et]=!0):2===u?i[et]=n:1===u?a&&(a[et]=n):"string"==typeof u&&"both"!==u&&"parent"!==u&&"target"!==u?i[u]?(i[u][et]=n,i[et]=!0):i[et]=tt:-1!==u&&a&&(a[et]=n)}else v&&v();t.onChange&&t.onChange(n,l,a,o,r,s,c,t),e.redraw()}},g)]:f.emptyMeta?[e(r,f.emptyMeta)]:[],...n||[]],collapsedView:t.collapsedView})})),ht=t((({attrs:t,state:n,children:a})=>{const{layer:i,property:o,colorProperty:r}=t,s=Je[o],c=i[o],u=null!=c,d=u&&"object"==typeof c&&null!==c,f=d&&c,p=f&&f.exp,[,h]=p||[],m=f&&h&&Object.keys(h),g=d&&c?c.title:c,y=m&&m.length,v=t.size&&d;return e("li.coord.witharia.relative.templatedinput",{"aria-label":t["aria-label"],class:(n.chooser&&s?t.chooserClass:t.containerClass)||"col-12"},[...t.docs?[e("a.extlink.absolute.to-right.to-top.font-75.pad-2.pointer",{target:"tool",onclick:()=>{NIPX.sys.open(t.docs.url)}},t.docs.caption||"docs")]:[],t.chooser?[e(".flexrow.grows.fontgroup",[e(l,{class:"grows unitheightsmall rectbutton ohidden",text:g||"--- NONE ---",icon:t.icon,onClick:t=>{!n.chooser&&t.shiftKey&&s.images?Te.setTransState("image",void 0,{giphyQuery:"frame",onOverride:t=>{const n=t&&s.images(t);n&&(i[o]=Z(n),Be(),e.redraw())}}):(n.chooser=!n.chooser,e.redraw())}}),...i[o]?[e(l,{class:"clearfont unitheightsmall bg-accent",text:"X",onClick:()=>{delete i[o],Be(),e.redraw()}})]:s.images&&!g?[e(l,{class:"unitsizesmall rectbutton ohidden",icon:"images",onClick:()=>Te.setTransState("image",void 0,{giphyQuery:"frame",onOverride:t=>{const n=t&&s.images(t);n&&(i[o]=Z(n),Be(),e.redraw())}})})]:[]])]:[e(C,{class:"withicon-2"+(u?" has":"")+(t.class?" "+t.class:""),value:i[o]||"",hint:t.hint,title:t.title,maxlength:t.maxlength||2048,multi:t.multi,actions:[{icon:"plus",onClick:()=>{n.chooser=!n.chooser,e.redraw()}}],onchange:t=>{t=t.split("\n").join(" ").trim(),i[o]=t,Be(),e.redraw()}})],...y||v?[e(".flexrow.wrap.paramgroup",[...y?[e(ft,{meta:h,metaKeys:m,parameters:f,onchange:()=>{delete c.calc,Be(),e.redraw()},AssetButton:t.AssetButton,CodeMirror:t.CodeMirror})]:[],...v?[e(".flexbreak"),e(Me,{class:"col-6 grows innerlabel",title:"size x",min:0,max:100,step:.1,relative:!0,value:parseFloat(c.w)||0,onchange:t=>{c.w=t,Be(),e.redraw()}}),e(Me,{class:"col-6 grows innerlabel",title:"size y",min:0,max:100,step:.1,relative:!0,value:parseFloat(c.h)||0,onchange:t=>{c.h=t,Be(),e.redraw()}})]:[]])]:[],...n.chooser&&s?[e(ct,{entity:t.entity,template:s,type:i.type,layer:i,onClick:t=>{n.chooser=!1,i[o]="object"==typeof t.value?Z(t.value):t.value,t.color&&r&&(i[r]=t.color),Be(),e.redraw()}})]:[],...u?a:[]])}));export{o as Button,y as ButtonChoiceWidget,v as ButtonMultipleChoiceWidget,l as ButtonNew,p as CardieWidget,fe as ColorJoePack,ue as ColorJoeWidget,oe as ComboPrompt,I as ComboWidget,H as ConfirmPromise,Le as CoolContentTicker,ze as CoolGenericTicker,Fe as CoolerEmpty,r as Empty,Oe as EmptyButton,We as FileSelectButton,je as GenericButtonTicker,i as Icon,Xe as ImageDataButton,Ue as ImageProcessButton,Ge as ImageSelectButton,C as InputWidget,W as JSONWidget,Te as MainState,Ie as MainStateImplement,qe as MediaSelectButton,ot as MultiToggleWidget,k as NoticeWidget,d as Notification,Y as OverflowMenu,ie as OverflowUtils,pt as ParameterCardie,ft as ParameterTable,pe as PlusMinus,it as RangeToggleWidget,Me as RangeWidget,c as Selector,g as Separator,Ee as SmileysButton,X as SwitchWidget,ht as TemplatedInputWidget,De as ThematicWrapper,he as TitleBarWidget,R as Tokenizer,D as clearModal,Z as clone,G as confirm,U as confirmPromise,h as defineWidget,$e as makeLocalPath,He as makeLocalUrl,Se as optionsPrompt,$ as packClass,V as packClassString,N as popupMessage,Ye as processImage,Ne as startApp,Re as tainter};
|
|
3
|
+
https://bebraw.github.com/colorjoe - 2020-01-27 */var fe=t((({attrs:t})=>{const{colors:n=[],max:a=8}=t,i=n.length,o=(e=[0,0,0,0])=>"rgba("+e.map(((e,t)=>t<3?Math.floor(255*e):e)).join(",")+")",r=(e=[0,0,0,0])=>"rgba("+((e,t,n)=>{let a,i,o;if(0===t)a=i=o=n;else{const l=(e,t,n)=>(n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e),r=n<.5?n*(1+t):n+t-n*t,s=2*n-r;a=l(s,r,e+1/3),i=l(s,r,e),o=l(s,r,e-1/3)}return[Math.round(255*a),Math.round(255*i),Math.round(255*o)]})(e[0],e[1],e[2]).join(",")+","+e[3]+")";return e(".flexrow.wrap.gradient.grows",{class:t.class},[...n.map(((a,i)=>e(ue,{class:"grows",color:t.hsl?r(n[i]):o(n[i]),title:"Click to edit, or Shift-click to remove this color from the collection",hsl:t.hsl,onchange:(a,o)=>{let l;if(t.hsl){const e=o.hsl();l=[e.hue(),e.saturation(),e.lightness(),o.a()]}else l=[o.r(),o.g(),o.b(),o.a()];n[i]=l,t.onchange&&t.onchange(n),e.redraw()},onshiftclick:()=>{n.splice(i,1),t.onchange&&t.onchange(n),e.redraw()}}))),...i<a?[e(l,{icon:"plus",class:"unitheightsmall accent bg-window-lo "+(i?"mini":"grows"),title:"Add a new color to the collection, or SHIFT-CLICK to delete all colors",onClick:a=>{a.shiftKey?n.splice(0,n.length):n.push(de),t.onchange&&t.onchange(n),e.redraw()}})]:[]])}));const pe=t((({attrs:t})=>e(".flexrow.wrap.grows.plusminus",{...t.label&&{"aria-label":t.label},class:(t.label?"witharia":"")+" "+(t.class||""),title:t.title||""},[e(l,{icon:t.iconMinus??"minus",class:"unitsizesmall "+(t.buttonClass||"transp"),title:t.title?"decrease the "+t.title:"",onClick:()=>{const{step:n=1,min:a=0}=t;let i=t.value||0;Number.isNaN(i)&&(i=0),i-=n,void 0!==a&&i<a&&(i=a),t.onchange(i),e.redraw()}}),e(".currentvalue.al-center.grows.unitheightsmall",{title:t.title},t.parser?t.parser(t.value):String(t.value||0)),e(l,{icon:t.iconPlus??"plus",class:"unitsizesmall "+(t.buttonClass||"transp"),title:t.title?"increase the "+t.title:"",onClick:()=>{const{step:n=1,max:a=0}=t;let i=t.value||0;void 0!==a&&i===a||(i+=n,t.onchange(i),e.redraw())}})]))),he=t((({attrs:t,dom:n})=>e("nav.titlebar.noshrink.flexrow",{class:t.class?" "+t.class:"unitheight bg-window-hi pad-2 pad-h shadow-2 font-125",...t.onTitleClick&&{onclick:t.onTitleClick}},[...t.onClick?[e(l,{icon:"arrow-left",onClick:()=>t.onClick()})]:[],...t.logo?[e("img.title-logo",{src:t.logo})]:[],...t.editable&&t.onchange?[e(C,{containerClass:"grows"+(t.onClick?"":" pad-2 pad-h"),hint:t.title,onchange:t.onchange,oninput:()=>{},value:t.value})]:[e("span.grows.ellipsis",{class:t.onClick?"":"pad-2 pad-h"},t.title)],...t.auxaction?[e(l,{icon:t.auxaction.icon,class:t.auxaction.class,title:t.auxaction.title,onClick:t.auxaction.onClick})]:[],...t.auxactions?t.auxactions.map((t=>e(l,{class:t.class,title:t.title,icon:t.icon,text:t.caption,onClick:t.onClick}))):[],...t.action?[e(l,{icon:t.action.icon,class:t.action.class,title:t.action.title,onClick:t.action.onClick})]:[],...t.overflow?[e(l,{icon:t.overflow.icon||"ellipsis-v",class:t.overflow.class||"",onClick:()=>Y(n,{title:t.title},t.overflow.items).then((({action:e})=>e.onClick()))})]:[]]))),me=!!navigator.userAgent.match(/iPhone|iPad|iPod/i);let ge,ye=!1;function ve(e,t,n){return Math.min(Math.max(e,t),n)}function be(e,t,n,a){if(n-t<=0)return t;if(a<=0)return ve(e,t,n);const i=Math.ceil((n-t)/a);return ve(t+Math.round(i*(e-t)/(n-t))*a,t,n)}function we(){let t,n,a,i,o,l,r,s,c,u=0,d=!1,f=!1,p=4,h=1,m=0,g=10,y=0,v=1,b="horizontal";function w(e,t){let n,a;"vertical"===b?(n=l.bottom-l.top,a=l.bottom-t):(n=l.right-l.left,a=e-l.left),a=ve(a,0,n);const i=be(a/n*(g-m)+m,m,g,v);return j(i),i}function x(t,a,i){return f?function(t,a){d=r=!0,l=n.getBoundingClientRect();const i=w(t,a);i!==y&&(y=i,c&&!1!==c(y)&&e.redraw())}(t,a):(o=i,d=!0,r=!1,l=n.getBoundingClientRect(),void(s||o.target.requestPointerLock()));var o,s}function C(e,t,n){return r?w(e,t):function(e,t,n){const a=n.shiftKey?p:n.metaKey||n.ctrlKey?4*p:h;let i,o;i="vertical"===b?n.movementY||0:n.movementX||0;let l=v>0?v:(g-m)/100;if(i<0)o=Math.max(y+l*a*i,m);else{if(!(i>0))return y;o=Math.min(y+l*a*i,g)}return o=be(o,m,g,v),j(o),o}(0,0,n)}function k(e){2!==u&&(u=1,0===e.button&&(window.addEventListener("mousemove",A),window.addEventListener("mouseup",M),x(e.clientX,e.clientY,e)))}function A(e){e.preventDefault(),N(e.clientX,e.clientY,e)}function M(e){window.removeEventListener("mousemove",A),window.removeEventListener("mouseup",M),D(e.clientX,e.clientY,e)}function T(e){if(1===u)return;t.addEventListener("touchmove",I),t.addEventListener("touchend",_);const n=e.changedTouches[0];x(n.clientX,n.clientY,e)}function I(e){e.preventDefault();const t=e.changedTouches[0];N(t.clientX,t.clientY,e)}function _(e){t.removeEventListener("touchmove",I),t.removeEventListener("touchend",_);const n=e.changedTouches[0];D(n.clientX,n.clientY,n)}function E(t){const n=t.keyCode;let a;if(33===n){t.preventDefault();let e=Math.max((g-m)/10,v);e<=0&&(e=1),a=be(y+e,m,g,v)}else if(34===n){t.preventDefault();let e=Math.max((g-m)/10,v);e<=0&&(e=1),a=be(y-e,m,g,v)}else if(35===n)t.preventDefault(),a=g;else if(36===n)t.preventDefault(),a=m;else if(37===n||40===n){t.preventDefault();let e=(v>0?v:(g-m)/10)*(t.shiftKey?.25:t.ctrlKey||t.metaKey?4:1);a=Math.max(y-e,m)}else if(38===n||39===n){t.preventDefault();let e=(v>0?v:(g-m)/10)*(t.shiftKey?.25:t.ctrlKey||t.metaKey?4:1);a=Math.min(y+e,g)}else 48===n&&(a=(g+m)/2);"number"==typeof a&&a!==y&&(y=a,j(y),s&&!1!==s(y)&&e.redraw())}function N(t,n,a){if(!d)return;const i=C(t,n,a);i!==y&&(y=i,c&&!1!==c(y)&&e.redraw())}function D(t,n,a){d&&(d=!1,y=C(t,n,a),s&&!1!==s(y)&&e.redraw(),r||document.exitPointerLock(),setTimeout((function(){d||(u=0)}),350))}function S(e){let t=(e-m)/(g-m);return"vertical"===b&&(t=1-t),String(100*t)+"%"}function j(e){const t=S(e),n=S(g-e+m);"vertical"===b?(o.style.top=t,a.style.height=t,i.style.height=n):(o.style.left=t,a.style.width=n,i.style.width=t)}function z(e){m=e.min,g=e.max,v="number"!=typeof e.step||Number.isNaN(e.step)?1:ve(e.step,0,g-m),b="vertical"===e.orientation?"vertical":"horizontal",s=e.onchange,c=e.ondrag,"number"==typeof e.value&&(y=ve(e.value,m,g)),f=!e.relative,p=e.factor&&e.factor[0]||4,h=e.factor&&e.factor[1]||1}return{oncreate:({attrs:e,dom:l})=>{me&&!ye&&(window.addEventListener("touchmove",(function(){})),ye=!0),z(e),t=l,n=t.querySelector(".mithril-range-bar"),a=n.querySelector(".mithril-range-bar-0"),i=n.querySelector(".mithril-range-bar-1"),o=n.querySelector(".mithril-range-handle"),t.addEventListener("mousedown",k),t.addEventListener("touchstart",T),t.addEventListener("keydown",E)},onremove:function(){window.removeEventListener("mousemove",A),window.removeEventListener("mouseup",M),t.removeEventListener("mousedown",k),t.removeEventListener("touchstart",T),t.removeEventListener("touchmove",I),t.removeEventListener("touchend",_),t.removeEventListener("keydown",E)},view:function({attrs:t,children:n}){const a=t.nokey?" nokey":"";z(t),y=be(y,m,g,v);const i={class:"mithril-range "+a+(t.relative?" isrelative ":" ")+(0===y?"atzero":y<0?"belowzero":"overzero")+(null!=t.class?" "+t.class:""),tabIndex:"0",role:"slider","aria-valuemin":String(m),"aria-valuemax":String(g),"aria-valuenow":String(y),"aria-orientation":b};t.id&&(i.id=t.id),t.ariaLabelledby&&(i["aria-labelledby"]=t.ariaLabelledby),t.disabled&&(i.style={pointerEvents:"none"},i["aria-disabled"]="true");const o=S(y),l=S(g-y+m);let r,s,c;return"vertical"===b?(r={top:o},s={height:o},c={height:l}):(r={left:o},s={width:l},c={width:o}),e("div",i,e("div",{class:"mithril-range-bar"+a},e("div",{class:"mithril-range-bar-0"+a,style:s}),e("div",{class:"mithril-range-bar-1"+a,style:c}),e("div",{class:"mithril-range-handle"+a,style:r},n)),!!t.name&&e("input",{type:"hidden",name:t.name,value:String(y)}))}}}const xe=t=>{const n=t.value>t.curMax?Math.ceil(t.value/t.curMax):1,a=t.curMin<0&&t.value<t.curMin?Math.abs(Math.ceil(t.value/t.curMin)):1,i=Math.min(Math.max(a,n),t.maxMultiplier);t.curMultiplier!==i&&(t.curMultiplier=i,e.redraw())},Ce=e=>e.value>=e.curMax*e.curMultiplier*.9&&e.maxMultiplier>1&&e.curMultiplier<=e.maxMultiplier-1?(e.curMultiplier++,!0):e.curMin<0?ke(e):void 0,ke=e=>{if(e.value<=e.curMin*e.curMultiplier*.9&&e.maxMultiplier>1&&e.curMultiplier<=e.maxMultiplier-1)return e.curMultiplier++,!0},Ae={oninit:({attrs:e,state:t})=>{Object.assign(t,{value:e.value||0,initial:e.value||0,curMax:e.max,curMin:e.min,curMultiplier:1,maxMultiplier:e.multiplier||1,id:"I"+Date.now()}),t.maxMultiplier>1&&(t.value>e.max?t.curMultiplier=Math.ceil(t.value/e.max):e.min<0&&t.value<e.min&&(t.curMultiplier=Math.abs(Math.ceil(t.value/e.min))))},onupdate:({attrs:t,state:n})=>{const a=t.multiplier||1,i=t.value||0;n.curMax!==t.max||n.maxMultiplier!==a?(Object.assign(n,{curMax:t.max,curMin:t.min,maxMultiplier:a,value:t.value,initial:i}),Ce(n)||(clearTimeout(n.timer),n.timer=setTimeout(xe,1e3,n)),e.redraw()):n.initial!==i&&(Object.assign(n,{value:i,initial:i}),clearTimeout(ge),ge=setTimeout((()=>e.redraw()),50))},view:({attrs:t,state:n})=>e(".range.flexcol.control.relative"+(t.multiplier>1?".withmultiplier":""),{...t.class&&{class:t.class},title:t.hint||"Click, then use arrows to finetune value if needed"},[...t.title?[e("label",{class:"rangelabel",htmlFor:n.id},t.title)]:[],e(we,{onchange:a=>{n.value=a;!Ce(n)&&n.curMultiplier>1&&(clearTimeout(n.timer),n.timer=setTimeout(xe,1e3,n)),t.onchange?t.onchange(a):e.redraw()},ondrag:e=>e!==n.value&&(n.value=e,t.ondrag&&t.ondrag(e),!0),value:n.value||0,min:(t.min||0)*n.curMultiplier,max:n.curMax*n.curMultiplier||100,step:t.step||1,relative:t.relative,factor:t.factor},[e(".currentval",t.parser?t.parser(n.value,t.step<1):n.value?t.step<1?n.value.toFixed(2):""+Math.floor(n.value):"")])])},Me={view:({attrs:t,state:n})=>e(Ae,{value:t.value||0,min:t.min||0,max:t.max||100,step:t.step||.1,class:(t.disabled?"disabled ":"")+(t.class||""),title:t.title,multiplier:t.multiplier,hint:t.hint,parser:t.parser,relative:t.relative,factor:t.factor,getLabel:e=>e?""+e:"default",ondrag:e=>(n.changed=!0,n.value=e,t.onchange&&t.onchange(e,!0),!0),onchange:e=>(t.auto0?e=0:t.autoValue&&(e=t.autoValue),n.changed=!0,n.value=e,t.onchange&&t.onchange(e,!1),!0)})},Te={setTransState:()=>{console.warn("MainState: Not Implemented setTransState")},WIDGETS:{}};function Ie(e){Object.assign(Te,e)}function _e(e){return"string"==typeof e?Te.WIDGETS[e]:e}const Ee=t((({attrs:t})=>{const{icon:n,onchange:a,icons:i,state:o}=t;return e(l,{title:"Click to select icon or emoji for this marker",class:"chequered "+(t.class||"font-200"),icon:n&&n.icon,text:n&&n.glyph,onClick:()=>Te.setTransState("emoji",a,{icons:i})})}));function Ne(e,t){m.route(document.getElementById(e),t.default||"/",t.routes)}const De=t((({attrs:t,children:n})=>e(".buttonchoice.withicon.flexrow.scaff.scaff-b1.fadein.ohidden.fa-"+(t.icon||"gear"),{class:t.containerClass||"col-11 grows marg-1",title:t.title},e((t.themeClass?t.themeClass:".flexrow.wrap")+".grows.col-11.ohidden.scaff-left.bg-inputs",{class:t.class},n)))),Se=(t,n,a,i,o,l)=>{const r=t[n];U("Choose an action for this preset",a&&l?["DELETE","RENAME","UPDATE","CANCEL"]:["DELETE","RENAME","CANCEL"]).then((o=>{0===o?(t.splice(n,1),i&&i(n),e.redraw()):1===o?setTimeout((()=>Q("Rename Preset",r.title||"","type a name for this preset",(t=>{t&&(t=t.trim())&&(r.title=t.substring(0,24),e.redraw())}))),10):a&&2===o&&a(!1,n)}))},je=t((({attrs:t,children:n})=>{const{title:a,noUpdate:i,items:o=[],current:r,altIndex:s,onEdit:c,emptyText:u,onAdd:d,onSelect:f,onDelete:p,addText:h="Add New",unconfirm:m,buttonClass:g,themeIcon:y,themeTitle:v}=t,b=[...o.map(((t,n)=>e("button.grows.marg-1.ellipsis.ohidden.hasShift",{class:(g||"unitheightsmall scaff-b1")+(n===r?" accent":"")+(n===s?" alt-accent":""),title:a,onclick:a=>{a.metaKey&&c?c(t):d&&a.shiftKey?m?(o.splice(n,1),p&&p(n),e.redraw()):Se(o,n,d,p,0,!i):f&&f(t,n,a.metaKey,a.shiftKey)}},(t.title||t.name||t.text||String(1+n)).substring(0,32)))),...!o.length&&u?[e(".grows.marg-1.ellipsis.ohidden.al-center",u)]:[],...d?[e(l,{tabIndex:-1,icon:t.icon||"plus",title:t.addTitle||"Add a new item",class:"pad-2 pad-h al-center unitheightsmall transp addbut scaff-left bg-window-lo grows"+(o.length?" some":" empty"),onClick:e=>d(e.ctrlKey||e.metaKey),text:o?.length?"":h})]:[],...!y&&t.currentWidget&&r>=0&&o[r]&&t.currentWidget(o[r],r)||[],...!y&&t.altCurrentWidget&&s>=0&&o[s]&&t.altCurrentWidget(o[s],r)||[],...n];return y?[e(De,{title:v,containerClass:t.containerClass,themeClass:t.themeClass,icon:y},b),...t.currentWidget&&r>=0&&o[r]&&t.currentWidget(o[r],r)||[],...t.altCurrentWidget&&s>=0&&o[s]&&t.altCurrentWidget(o[s],s)||[]]:b})),ze=t((({attrs:t,children:n})=>{const{nocontainer:a,emptyText:i,title:o,addTitle:r,items:s,currentIndex:c,altIndex:u,onEdit:d,onDelta:f,onSelect:p,onAdd:h,addText:m,icon:g,buttonClass:y}=t,v=s&&s.length<=(t.max||15)||!f?e(je,{addTitle:r,emptyText:i,title:o,items:s,current:c,altIndex:u,onSelect:p,onAdd:h,onEdit:d,addText:m,icon:g,buttonClass:y},n):[e(l,{tabIndex:-1,icon:"caret-right",class:"unitheightsmall grows marg-1 no-marg-left",onClick:()=>f(-1)}),...s?[e(".scaff.unitheightsmall.value.al-center.bg-window-lo.grows.marg-1.no-marg-left ",1+c+" / "+s.length)]:[],e(l,{tabIndex:-1,icon:"caret-left",class:"unitheightsmall grows marg-1 marg-v",onClick:()=>f(1)}),...h?[e(l,{tabIndex:-1,icon:t.icon||"plus",class:"unitheightsmall marg-1 marg-v",onClick:()=>h()})]:[]];return a?v:s.length||!h?e(".flexrow.wrap.max.minusbar",{class:(t.dynclass?t.dynclass()+" ":"")+t.class},v):[]})),Le=t((({attrs:t})=>{if(!t.layer.items)return[];const{global:n,layer:a,remoteFirst:i,isCue:o}=t,{storyWrapper:l}=n,{id:r,items:s}=a,c=l.getTickerIndex(r,i),u=i?l.getTickerIndex(r,!1):void 0;return e(ze,{title:t.title,onAdd:t.onAdd,class:"marg-1 marg-h grows",items:s,currentIndex:c,altIndex:u,current:s[c]||void 0,onDelta:e=>l.tickLayer(a,e,i,o),onSelect:(e,t,n)=>l.setTickerIndex(a,t,n,i,o)})})),Oe=t((({attrs:t})=>e(r,{size:2,icon:t.icon,class:"pad-2"},[...t.texts.map((t=>e(".text",t))),...t.buttonText?[e(l,{class:"font-125 accentbutton unitheightsmall",icon:t.icon||"plus",text:t.buttonText,onClick:t.onClick})]:[],...t.buttonAlt?[e(l,{class:"font-125 accentbutton unitheightsmall",icon:t.iconAlt||"plus",text:t.buttonTextAlt,onClick:t.onClick})]:[]])));function Pe(e,t,n){return t?t[e]||n||e:n||e}const Fe={oninit:({attrs:e})=>{e.oninit&&e.oninit()},view:({attrs:t})=>e(r,{class:t.class,icon:t.icon,size:t.size||4},[...t.header?[e("h3.pad-2.marg-0",Pe(t.header,t.headers))]:[],e(".pad-2",Pe(t.message,t.messages)),...t.action?[e(l,{text:t.action.caption,class:"accentbutton marg-4 marg-v pad-2 font-150",onClick:t.action.onclick})]:[],...t.actions?t.actions.map((t=>e(l,{text:t.caption,class:"accentbutton marg-4 marg-v pad-2 font-150",onClick:t.onclick}))):[]])};let Ke=!1;function Be(){Ke=!0}var Re={taint:Be,taintRedraw:function(){const t=Ke;Ke=!0,t&&e.redraw()},isTainted:function(){return Ke},untaint:function(){Ke=!1,e.redraw()}};const Ve=-1!==navigator.userAgent.indexOf("Windows NT")?"\\":"/",$e=e=>e.join(Ve),He=(e,t)=>["file://",...e.split("\\"),...t].join("/");function Ye(e){return new Promise(((t,n)=>{const a=new FileReader;a.onload=function(e){const a=e.target.result,i=new Image;i.onerror=function(t){e.target.value="",n(t)},i.onload=function(){t(i)},i.src=a},a.readAsDataURL(e)}))}const qe=t((({attrs:t})=>e(l,{class:"unitsizesmall rectbutton ohidden",icon:"images",onClick:()=>Te.setTransState("image",void 0,{giphyQuery:"frame",onOverride:n=>{const a=n?t.parse?t.parse(n):n:void 0;a&&(t.onImage(a),e.redraw())}})}))),We=t((t=>{const{attrs:n}=t;return e("button.selectfile.relative",{...n.class&&{class:n.class}},[e(i,{icon:n.icon||"upload",iconClass:n.iconClass}),...n.text?[e("span.text",{class:n.textClass},n.text)]:[],e("input",{class:"absolute w-100 h-100 ohidden",type:"file",accept:n.accept||null,title:n.title,onchange:e=>{e.target.files&&e.target.files.length&&(n.onFile(e.target.files[0]),e.target.value="")}})])})),Ge=t((({attrs:t})=>e(We,{class:t.class,accept:t.accept||"image/*",icon:t.icon||"image",iconClass:t.iconClass,textClass:t.textClass,text:t.text,onFile:e=>t.onImageFiles([{type:"image",file:e}])}))),Ue=t((({attrs:t})=>e(Ge,{class:t.class,icon:t.icon,text:t.text,accept:t.accept,iconClass:t.iconClass,textClass:t.textClass,onImageFiles:e=>{e.length&&Ye(e[0].file).then(t.onImage).catch((e=>{t.onError&&t.onError(e)}))}}))),Xe=t((({attrs:t})=>e(Ge,{class:t.class,icon:t.icon,text:t.text,accept:t.accept,iconClass:t.iconClass,textClass:t.textClass,onImageFiles:e=>{var n;e.length&&(n=e[0].file,new Promise(((e,t)=>{const a=new FileReader;a.onload=function(a){const i=a.target.result;i?e({name:n.name,url:i}):t(new Error("no data"))},a.readAsDataURL(n)}))).then(t.onImageUrl).catch((e=>{t.onError&&t.onError(e)}))}}))),Ze=t((({attrs:t})=>{const{fontFamily:n,state:a,onchange:i}=t;return e(".flexrow.grows.fontgroup",{class:t.class},[...n&&!t.nodelete?[e(l,{class:"scaff-right unitsize",icon:"trash",onClick:()=>{i(void 0),Te.setTransState()}})]:[],e(l,{class:"grows transp font-125 ohidden",text:n||"default",icon:"font",onClick:()=>Te.setTransState("fontsel",(e=>{i(e),Te.setTransState()}))})])})),Je={},Qe=h((({attrs:t})=>{const{metaDef:n,value:a,onchange:i}=t,{default:o=[0,0],length:l=0,min:r,max:s,float:c,title:u,class:d,labels:f,numbersClass:p,draginc:h,final:m,fixed:g,step:y}=n,v=a&&Array.isArray(a)?a:o;let b=v;if(l&&b.length!==l){const e=[];for(let t=0;t<l;t++)e.push(v[t]??0);b=e}return e(".flexrow.vector-container.w-100",{class:d,...u&&{"aria-label":u,title:u}},b.map(((t,n)=>e(C,{containerClass:"grows",class:p||"",value:String(c?parseFloat(t)||0:parseInt(t,10)||0),...Array.isArray(f)&&{label:f[n]||""},...h&&{staticField:!0,draginc:h},type:"text",hint:"0",subtype:"number",fixed:g,step:y,float:c,final:!!m,onchange:e=>{let t=c?parseFloat(e):parseInt(e,10);isNaN(t)?t=o[n]||0:(void 0!==r&&t<r&&(t=r),void 0!==s&&t>s&&(t=s)),b[n]=t,i(b)}}))))})),et="needsUpdate",tt="_rebuild_children",nt=t((({children:e})=>[e])),at=t((({attrs:t})=>e(l,{text:t.text,icon:t.icon,title:t.hint,iconClass:t.iconClass,class:(t.checked?t.inverted?"":"accent ":t.inverted?"accent ":"")+(t.class||"")+(t.noclass||" tgbutton"),onClick:()=>t.onchange(!t.checked)}))),it=t((({attrs:t})=>e(Me,{min:0,max:t.max||1,step:.1,...t.mul&&{multiplier:t.mul},class:"tgrange grows innerlabel",title:t.text,value:t.value??0,hint:t.hint,onchange:e=>t.onchange(e),parser:e=>e||"OFF"}))),ot=t((({attrs:t,children:n})=>e(".flexrow.wrap",{class:t.class},t.source?Object.keys(t.source).map((n=>e(_e(t.widget)||at,{text:n,icon:t.icon,checked:!!t.source[n],hint:t.hint,value:t.source[n],class:t.buttonClass,max:t.max,mul:t.mul,onchange:e=>{t.source[n]=e>=0?e:!!e,t.onchange(n)}}))).concat(n):[]))),lt=t((({attrs:t,state:n,children:a})=>[...t.keys.length>1?[e(".flexrow.wrap",{class:t.class},t.source?t.keys.map((a=>e(at,{text:a,checked:n.current===a,class:t.selectorButtonClass||"transp",hint:t.hint,onchange:()=>{n.current=a,e.redraw()}}))):[])]:[],...n.current?[e(ot,{class:t.class,source:t.source[n.current],icon:t.icon,buttonClass:t.buttonClass,onchange:t.onchange,hint:t.hint,widget:t.nocustom!==n.current?_e(t.widget):void 0,max:t.max,mul:t.mul},a)]:[]]),(({attrs:e,state:t})=>{t.current=e.keys[0]})),rt=t((({attrs:t,children:n})=>{const a=t.source&&Array.isArray(t.source),i=a?t.source.map(((e,t)=>t)):t.keys||t.source&&Object.keys(t.source),o=()=>i&&i.length||t.add?[...t.cardie||t.noseparator?[]:[e(g,{class:t.separatorClass,text:t.caption})],e(".flexrow.wrap",{class:t.class},(t.source?i.map((n=>e(_e(t.widget.name),{keyName:n,class:t.widgetClass,...("function"==typeof t.widget.attrs?t.widget.attrs(t,n):t.widget.attrs)||{},value:t.source[n],parameters:t.targetParameters,onchange:(e,i)=>{!e&&t.add&&i.shiftKey?a?t.source.splice(n,1):delete t.source[n]:t.source[n]=e,t.onchange(n)}}))):[]).concat(t.add&&!t.keys?[e(l,{icon:"plus",class:t.addButtonClass||"marg-1 transp leftbutton grows unitsizesmall",text:`add ${t.add}`,onClick:()=>{Q(`Enter new ${t.add} name`,"",`type ${t.add} name`,(n=>{n&&(n=B(n).toLowerCase()),n&&(a?t.source.push(""):t.source[n]||(t.source[n]="",e.redraw()))}))}})]:[]).concat(n))]:t.empty?e(r,t.empty):[];return t.cardie?e(p,{nofold:!1,size:1,cols:!1,title:t.caption,cardid:t.cardie,class:"relative grows"+(t.cardieClass?" "+t.cardieClass:""),expandedView:o}):o()})),st=t((({attrs:t})=>e(l,{text:t.states[Number.parseInt(t.checked,10)||0]||"---",icon:t.icon,hint:t.hint,class:"tgbutton "+(t.checked?t.inverted?"":"accent ":t.inverted?"accent ":"")+(t.class||""),onClick:()=>{let e=Number.parseInt(t.checked,10)||0;e++,e%=t.states.length,t.onchange(e)}}))),ct=t((({attrs:t,state:n})=>{const a=t.template.presets.concat(n.files||[]);return e(".templatepresets.flexrow.wrap",{class:t.class},a.length?a.map((n=>e(t.template.render,{item:n,title:"Apply "+t.template.name+" to "+t.type,onClick:()=>t.onClick(n),layer:t.layer}))):t.template.empty?e(k,t.template.empty):e(".emptybox","No presets available"))}),(({attrs:t,state:n})=>{t.template.files&&t.entity&&t.template.files(t.entity).then((t=>{n.files=t,e.redraw()})).catch((()=>{}))})),ut=(e,t={},n,a="metaField")=>e.array?e.array:(e[a]&&n?t[n[e[a]]]:t)||{},dt=(e,t,n)=>({...ut(t,t.items,n),...t.dynamicItems&&e.itemsDict&&ut(t,e.itemsDict[t.dynamicItems],n,"dynamicMetaField")||{}}),ft=t((({attrs:t,state:n,children:a})=>{let o=0;const{meta:s,crit:c={},when:u={},sizes:f={},metaKeys:h=Object.keys(t.meta),parameters:m,auxParameters:v,clone:b,onchange:w,itemClass:x,wrapper:A,onAction:M,empty:T,initializeTargets:_,transformers:E,name:N}=t,D="object"==typeof E,S=(e,t)=>e.get?"function"==typeof e.get?e.get:D&&"string"==typeof e.get&&"function"==typeof E[e.get]?((e,t)=>n=>E[e.get](n[t]))(e,t):void 0:void 0,j=(e,t)=>e.set?"function"==typeof e.set?e.set:D&&"string"==typeof e.set&&"function"==typeof E[e.set]?((e,t)=>(n,a)=>{n[t]=E[e.set](a)})(e,t):void 0:void 0,z=h.map((a=>{const r=s[a];m&&r.target&&void 0===m[r.target]&&"object"==typeof _&&(m[r.target]=structuredClone(_));const h=r.when||(u?u[a]:void 0),N="object"==typeof r&&!Array.isArray(r),D=r.auxTarget&&!r.target||t.auxTargetIsDefault?v:m,z=r.target||r.forTarget?D[r.target||D.forTarget]:D;if(!m||h&&!((e,t,n,a)=>{const i=e.is||e.value,o=e.key;return"function"==typeof e?e(t,n):"string"==typeof e?!!a[e]:o?i?e.not?a[o]!==i:a[o]==i:Array.isArray(e.values)?e.not?-1===e.values.indexOf(a[o]):-1!==e.values.indexOf(a[o]):e.not?!a[o]:!!a[o]:!!e.containsKey&&"object"==typeof a&&a.hasOwnProperty(e.containsKey)})(h,m,v,z)||!N)return[];const L=r.widget,O=r.update||c[a],P=r.key||a,F="group"===r.type,K="groupArray"===r.type,B="array"===r.type,R="string"==typeof r||"text"===r.type,V="json"===r.type,$="boolean"==typeof r||"boolean"===r.type,H="vector"===r.type,Y="number"===r.type,q="range"===r.type&&!Number.isNaN(r.min),W="action"===r.type,U=r.choices||r.choose||r.chooseKey,Q="keytoggle"===r.type,ee="iterakey"===r.type,te=r.options||r.optionsKey,ne=r.items,ae="color"===r.type,ie="plusminus"===r.type,le="separator"===r.type,re="static"===r.type||"dragTarget"===r.type,se="emoji"===r.type,ce="font"===r.type,de="notice"===r.type,fe="asset"===r.type,he=le?"col-12":"col-"+(r.size||f[a]||4);if(!z)return[];z&&void 0===z[P]&&r.default&&(z[P]=r.default);const me=r.altMeta&&s[r.altMeta],ge=me&&r.altMeta,ye=me&&me.key,ve=r.idx,be=ve>=0,we=S(r,ye||P),xe=we?we(z,v,m,ve,ye):be?z[P]?z[P][ve]:0:z[P],Ce=(e,t,n)=>{const a=j(r,n||P);if(!a){const t=be?ve:n||P;return(be?z[n||P]:z)[t]=e&&b&&"object"==typeof e?Z(e):e}a(z,e&&b&&"object"==typeof e?Z(e):e,v,m,ve,n)},ke=t.onbeforechange?(e,n,i,o)=>!!t.onbeforechange(i||a,e,o||r)&&(Ce(e,0,i),!0):Ce;return o++,e(".grows.flexrow."+he,{class:"mk_"+a+(r.type?" ptype_"+r.type:"")+(R?"witharia":"")+(r.itemClass||x?" "+(r.itemClass||x):""),"aria-label":a},B?Array.isArray(xe)&&r.meta?xe.map(((n,i)=>{const o={value:n};return[e(ft,{meta:{value:r.meta},parameters:o,auxParameters:v,clone:b,onchange:()=>{xe[i]=o.value,w(O,z,a,xe)},itemClass:x,wrapper:A,empty:T,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:!1,AssetButton:t.AssetButton,initializeTargets:t.initializeTargets,transformers:E})]})).concat(r.addAction?[e(l,{...r.addAction,onClick:t=>{if(r.addAction.onClick)r.addAction.onClick(t,m,v);else if(r.addAction.template)xe.push(Z(r.addAction.template));else{(()=>M(a,t,null,xe,r.addAction))()}e.redraw()}})]:[]):[]:K?(Array.isArray(xe)?xe.map(((n,i)=>r.small?e(ft,{meta:dt(t,r,n),crit:{},when:{},sizes:{},parameters:n,auxParameters:v,arrayInfo:{source:xe,item:n,index:i},clone:b,onchange:w,itemClass:x,wrapper:A,empty:T,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:!1,AssetButton:t.AssetButton,CodeMirror:t.CodeMirror,initializeTargets:t.initializeTargets,transformers:E}):e(p,{class:"relative grows "+(r.class||"pad-h emby w-max")+(r.dynClass?" "+r.dynClass(m,v,i):""),title:r.titleField?n[r.titleField]||r.title+" #"+(i+1):r.dynTitle?r.dynTitle(m,v,i):r.title+" #"+(i+1)+(n.title?" - "+n.title:""),cardid:r.cardid+"-"+i,nofold:!1,size:r.margin||0,expandedView:()=>[e(ft,{meta:dt(t,r,n),crit:{},when:{},sizes:{},parameters:n,auxParameters:v,clone:b,onchange:w,itemClass:x,wrapper:A,empty:T,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:!1,AssetButton:t.AssetButton,CodeMirror:t.CodeMirror,initializeTargets:t.initializeTargets,transformers:E})],titleExpanded:r.titleExpanded||r.hint,titleCollapsed:r.titleCollapsed||r.hint,...M&&r.itemAction?Array.isArray(r.itemAction)?{action:r.itemAction.map((e=>({...e,onClick:t=>{const i=()=>M(a,t,n,xe,e);e.confirm?G(e.confirm,i):i()}})))}:{action:{...r.itemAction,onClick:e=>{const t=()=>M(a,e,n,xe,r.itemAction);r.itemAction.confirm?G(r.itemAction.confirm,t):t()}}}:{},...r.itemCollapsedAction&&M&&{collapsedAction:{...r.itemCollapsedAction,onClick:e=>{const t=()=>M(a,e,n,xe,r.itemCollapsedAction);r.itemCollapsedAction.confirm?G(r.itemCollapsedAction.confirm,t):t()}}}}))):r.object&&xe&&"object"==typeof xe?Object.entries(xe).map((([n,i],o)=>e(p,{class:"relative grows "+(r.class||"pad-h emby w-max")+(r.dynClass?" "+r.dynClass(m,v,o):""),title:r.titleField?i[r.titleField]||n:r.dynTitle?r.dynTitle(m,v,o):n,cardid:r.cardid+"-"+n,nofold:!1,size:r.margin||0,expandedView:()=>[e(ft,{meta:dt(t,r,i),crit:{},when:{},sizes:{},parameters:i,auxParameters:v,clone:b,onchange:w,itemClass:x,wrapper:A,empty:T,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:!1,AssetButton:t.AssetButton,CodeMirror:t.CodeMirror,initializeTargets:t.initializeTargets})],titleExpanded:r.titleExpanded||r.hint,titleCollapsed:r.titleCollapsed||r.hint,...r.itemAction&&M&&{action:{...r.itemAction,onClick:e=>{const t=()=>M(a,e,i,xe,r.itemAction);r.itemAction.confirm?G(r.itemAction.confirm,t):t()}}},...r.itemCollapsedAction&&M&&{collapsedAction:{...r.itemCollapsedAction,onClick:e=>{const t=()=>M(a,e,i,xe,r.itemCollapsedAction);r.itemCollapsedAction.confirm?G(r.itemCollapsedAction.confirm,t):t()}}}}))):[]).concat(r.addAction?[e(l,{...r.addAction,onClick:t=>{if(r.addAction.onClick)r.addAction.onClick(t,m,v);else if(r.addAction.template)xe.push(Z(r.addAction.template));else{(()=>M(a,t,null,xe,r.addAction))()}e.redraw()}})]:[]):F?[e(p,{class:"relative grows "+(r.class||"emby w-max")+(r.dynClass?" "+r.dynClass(m,v):""),title:r.dynTitle?r.dynTitle(m,v):r.title,cardid:r.cardid,nofold:!1,size:r.margin||0,expandedView:()=>[e(ft,{meta:dt(t,r,z),crit:{},when:{},sizes:{},parameters:m,auxParameters:v,clone:b,onchange:w,itemClass:x,wrapper:A,empty:T,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:t.auxTargetIsDefault,AssetButton:t.AssetButton,CodeMirror:t.CodeMirror,initializeTargets:t.initializeTargets,transformers:E}),...r.addAction?[e(l,{...r.addAction,onClick:t=>{r.addAction.onClick(t,m,v),e.redraw()}})]:[]],titleExpanded:r.titleExpanded||r.hint,titleCollapsed:r.titleCollapsed||r.hint,...r.titleAction&&M&&{action:{...r.titleAction,onClick:e=>{const t=()=>M(a,e,z,null,r.titleAction);r.titleAction.confirm?G(r.titleAction.confirm,t):t()}}},...r.titleCollapsedAction&&M&&{collapsedAction:{...r.titleCollapsedAction,onClick:e=>{const t=()=>M(a,e,z,null,r.titleCollapsedAction);r.titleCollapsedAction.confirm?G(r.titleCollapsedAction.confirm,t):t()}}}})]:le?[e(g,{class:r.class||"mini",text:"string"==typeof r.title?r.title:r.label||a})]:re?[e(".textwrapper.flexcol.grows",{...r.label&&{"aria-label":r.label,class:"witharia"}},e(".textcontainer.flexrow",[...r.icon?[e(i,{icon:r.icon,class:r.iconClass})]:[],e(".innertext",{class:r.class,title:r.hint,..."dragTarget"===r.type&&{ondragover:e=>{Array.from(e.dataTransfer?.types||[]).includes("application/x-nebular-world-asset+json")&&(e.preventDefault(),e.dataTransfer.dropEffect="copy")},ondrop:e=>{const t=e.dataTransfer?.getData("application/x-nebular-world-asset+json");if(t)try{const n=JSON.parse(t),i=(r.accepts||[]).map((e=>e.replace(/^\./,"").toLowerCase()));if(1!==n.version||"asset"!==n.kind||"string"!=typeof n.path||"string"!=typeof n.type||i.length&&!i.includes(n.type.toLowerCase()))return;e.preventDefault(),e.stopPropagation(),ke(n.path),w(O,z,a,void 0,r)}catch{}}}},xe)]))]:L?[e(_e(r.widget),"function"==typeof r.attrs?r.attrs(xe,n,((e,t)=>w(e||O,t?m:z,a,void 0,r)),null,t,z):r.attrs||t,r.children?r.children(xe,n,((e,t)=>{w(e||O,t?m:z,a,void 0,r)}),null,t,z):[])]:ie?[e(pe,{max:r.max,min:r.min,title:r.title,label:r.label,value:xe,onchange:e=>{ke(e),w(O,z,a,void 0,r)}})]:R||V&&!t.CodeMirror?[e(C,{containerClass:"grows",class:r.inputClass,value:xe,label:r.label,hint:N?r.hint:r,title:r.title,maxlength:N&&r.maxlength||256,final:!!r.final,nodelete:!!r.readonly,readonly:!!r.readonly,multi:V||r.multi,alwaysmulti:V||r.alwaysmulti,onchange:e=>{ke(e),w(O,z,a,void 0,r)}})]:V?[e(nt,[e(t.CodeMirror,{key:m.id,doc:xe,schema:r.schema,templates:r.templates,hint:r.dynamicHint?r.dynamicHint(z):r.hint,empty:r.empty,onSave:e=>{null!==e&&(ke(e||""),w(O,z,a,void 0,r),e||d.add(r.hint+" cleared"))}})])]:Y?[e(C,{containerClass:"grows",class:r.inputClass,value:r.step>0&&r.step<1||r.float?Number.isFinite(parseFloat(xe))?parseFloat(xe):Number.isFinite(r.default)?String(r.default):"":xe,type:"text",label:r.label,...Number.isFinite(r.step)&&{step:r.step},hint:N?r.hint:r,title:r.title,subtype:"number",fixed:r.fixed,nodelete:!!r.nodelete,...r.draginc&&{staticField:!0,draginc:r.draginc},final:!!r.final,onchange:e=>{let t=r.step>0&&r.step<1||r.float,{min:n,max:i}=r;if(void 0===e)ke(void 0);else{let a=t?parseFloat(e):parseInt(e,10);isNaN(a)?a=void 0:(a<n&&(a=n),a>i&&(a=i)),ke(a)}w(O,z,a,void 0,r)}})]:H?[e(Qe,{metaDef:r,value:xe,onchange:e=>{ke(e),w(O,z,a,void 0,r)}})]:de?[e(k,r)]:fe?t.AssetButton?[e(t.AssetButton,{value:xe,confirm:r.confirm,class:"grows "+(r.containerClass||"scaff scaff-b1"),buttonClass:r.buttonClass||"unitheight scaff-left",readonly:r.readonly,closeClass:r.closeClass,textClass:r.textClass||"",iconClass:r.iconClass||"",field:r.field,types:r.types,subtype:r.subtype,file:r.file,pack:r.pack,shiftUpdate:r.shiftUpdate,shiftIcon:r.shiftIcon,removeIcon:r.removeIcon,emptyValue:r.emptyText||"off",emptyText:r.emptyText||"off",emptyIcon:r.emptyIcon||r.icon,icon:r.icon,title:r.title,titleCollapsed:r.titleCollapsed,titleClass:"pad-2 pad-v no-pad-bottom",parameters:m,auxParameters:v,onchange:(e,n)=>{n&&n.shiftKey&&t.onShiftPress?t.onShiftPress(a,z,e):(void 0===e&&(e=r.nullValue||void 0),ke(e),w(O,z,a,void 0,r))}})]:[e(l,{icon:r.icon,title:r.title,class:"unitheight",text:"No Asset Module"})]:se?[e(Ee,{class:"grows "+(r.class||"scaff scaff-b1 unitheight font-200"),icon:{glyph:xe},icons:!1,onchange:e=>{ke(e),w(O,z,a,void 0,r)}})]:ce?[e(Ze,{class:"grows "+(r.class||"scaff-right unitheight"),fontFamily:xe,nodelete:r.nodelete,onchange:e=>{if(r.nodelete&&!e)return;ke(e);const t=r.target||r.forTarget?m[r.target||r.forTarget]:m;w(e?O:"delete",t,a,!e,r)}})]:ae?[e(".colorwrapper.flexcol.grows",{...r.label&&{"aria-label":r.label,class:"witharia"}},e(ue,{class:"grows "+(r.class||"unitheight")+(ye?" withalt":""),color:xe,caption:r.caption,noalpha:r.noalpha,remove:r.remove,onchange:(e,t)=>{let n=e;if(n)if(r.hsl){const e=t.hsl();n=[e.hue(),e.saturation(),e.lightness()]}else r.rgba?n=[t.r(),t.g(),t.b(),r.noalpha?1:t.a()]:r.hex&&(n=t.hex());ke(n),w(O,z,a,void 0,r)},...ye&&{style:{"--data-altval":((z[ye]??me.min)-me.min)/(me.max-me.min)*100+"%"}}},me?[e(Me,{auto0:me.auto0,min:me.min,max:me.max,step:me.step||.1,...me.mul&&{multiplier:me.mul},class:"col-11 grows innerlabel order-first",title:me.title,value:Number.isFinite(z[ye])?z[ye]:me.min,onchange:e=>{ke(e,void 0,ye,me),w(c[ge],z,ge,void 0,r)}})]:void 0))]:$?[e(r.toggle?r.states?st:at:X,{class:"grows "+(r.class||"unitheight"),text:N?r.title||r.label:a,icon:N?r.icon:void 0,noclass:r.noclass,subline:r.subline,checked:xe,title:r.hint,hint:r.hint,inverted:r.inverted,states:r.states,iconClass:r.iconClass,onchange:e=>{ke(r.states?e:!!e),w(O,z,a,void 0,r)}})]:W?[e(l,{class:"grows "+(r.class||"accentbutton unitheightsmall"),text:""===r.label?null:r.parse?r.parse(z,v):r.label||r.text||a,icon:r.icon,title:r.title||r.hint,onClick:e=>{if(r.popup)J(r.popup,(n=>{const i=()=>{n.onClick?n.onClick(a,e,z,v,n,t):t.onAction&&t.onAction(a,e,D,t.arrayInfo,n)};n.confirm?G(n.confirm,i):i()}),{field:"label"});else{const n=()=>{r.onClick?r.onClick(a,e,z,v,r,t):t.onAction&&t.onAction(a,e,D,t.arrayInfo,r)};r.confirm?G(r.confirm,n):n()}}})]:Q?[e(r.keys?lt:ot,{class:"col-12 "+(r.toggle?"istoggler":""),icon:r.icon,buttonClass:r.buttonClass,selectorClass:r.selectorClass||"grows",selectorButtonClass:r.selectorButtonClass,keys:r.keys,hint:r.hint,nocustom:r.nocustom,source:xe,onchange:()=>w(O,z,a,void 0,r),...r.customWidget||{}})]:ee?[e(rt,{class:"col-12"+(r.class?" "+r.class:""),buttonClass:r.widgetClass,cardie:r.cardie,cardieClass:r.cardieClass,addButtonClass:r.addButtonClass,caption:r.caption,separatorClass:r.separatorClass,noseparator:r.noseparator,source:xe,onchange:()=>w(O,z,a,void 0,r),widget:r.keyWidget,keys:r.keys,add:r.add,targetParameters:z,auxParameters:v,empty:r.empty})]:U?[e(y,{class:"col-12 "+(r.toggle?"istoggler":""),subclass:r.class,buttonClass:r.buttonClass,choices:r.choices,choose:r.choose,chooseKey:r.chooseKey,chooseDict:t.chooseDict,label:r.label,field:r.field,icon:r.icon,value:xe,title:r.title,onchange:e=>{let{value:t}=e;t||t>=0?(r.toggle&&t===xe&&(t=!t),ke(t),w(O,z,a,void 0,r)):(ke(void 0),w(O,z,a,void 0,r)),Be()}})]:te?[e(oe,{class:r.containerClass||"scaff scaff-b1",buttonClass:r.class||"unitheightsmall scaff-left",closeClass:r.buttonClass||void 0,textClass:r.textClass||"",locked:r.locked,value:xe,field:r.field,fieldTitle:r.fieldTitle,emptyText:r.emptyText||"off",emptyIcon:r.emptyIcon||r.icon,confirm:r.confirm,icon:r.icon||t.icon,hint:r.hint||r.title,label:r.label,title:r.question,itemsKey:"function"==typeof r.optionsKey?()=>r.optionsKey(z):r.optionsKey,items:r.options||t.optionsDict,removeIcon:r.removeIcon,nodelete:r.nodelete,item:m,onchange:(e,t)=>{t?.shiftKey?r.shiftPress?r.shiftPress(z,v):r.shiftAction&&M?.(a,t,z,xe,r.shiftAction):("string"==typeof e&&(e=e.trim()),e?(ke(r.values?r.values[e]:e,r.clone),w(O,z,a,!1,r)):(ke(r.nullValue||void 0),w(O,z,a,!0,r)),Be())}})]:ne?[e(I,{class:"grows scaff scaff-b1 "+(r.class||"unitheight"),value:xe,emptyText:r.emptyText||"off",icon:r.icon,title:r.title,items:dt(t,r.items,z),textClass:r.textClass||"",onchange:e=>{"string"==typeof e&&(e=e.trim()),e?(ke(e),w(O,z,a,void 0,r)):(ke(void 0),w(O,z,a,void 0,r)),Be()}})]:q?[e(Me,{auto0:r.auto0,relative:!r.auto0&&!r.absolute,factor:r.factor,min:r.min,max:r.max,step:r.step||.1,...r.mul?{multiplier:r.mul}:{},class:"col-11 grows innerlabel",title:r.label||r.title||(-1===a.indexOf("-")?a:a.substring(a.lastIndexOf("-")+1)),hint:r.hint,value:Number.isFinite(xe)?xe:Number.isFinite(r.default)?r.default:r.min,parser:r.parser,field:r.field,onchange:e=>{ke(e),w(O,z,a,void 0,r)}})]:[e(Me,{min:r[0],max:r[1],step:r[2]||.1,...r[3]?{multiplier:r[3]}:{},class:"col-11 grows innerlabel",title:r[4]||(-1===a.indexOf("-")?a:a.substring(a.lastIndexOf("-")+1)),value:parseFloat(xe)||r[0],onchange:e=>{ke(e),w(O,z,a,void 0,r)}})])}));return o||a.length?A?A(z.concat(a)):z.concat(a):T&&!a.length?e(r,T):[]})),pt=t((({attrs:t,children:n})=>{const{busy:a,parameters:i,auxParameters:o,cardid:l,size:s,index:c,titleWidget:u,parametersTitle:d,parametersBody:f,rootUpdate:h,layer:m,tableChildren:g,cols:y,onLayerReset:v,onAction:b,nofold:w,bodyClass:x,titleAction:C,AssetButton:k,CodeMirror:A,optionsDict:M}=t;return e(p,{busy:a,nofold:w,size:s,cols:y,title:f.titleCollapsed||f.title,titleCollapsed:f.titleCollapsed||f.title,titleExpanded:f.titleExpanded||f.title,action:C,expandedClass:t.expandedClass,onShiftOpen:()=>{},titleWidget:u||ft,titleAttrs:{...d,onShiftPress:t.onShiftPress,confirm:t.confirmTitle,itemClass:"",parameters:i,auxParameters:o,clone:!0,layer:m,AssetButton:k,CodeMirror:A,optionsDict:M,initializeTargets:t.initializeTargets,onAction:b,onchange:(n,a,l,r,s)=>{Be();const c=s.rootUpdate||h;if(s?.onchange)s.onchange(n,a,i);else if(n){if("none"===c)return;"both"===c&&o?a[et]=o[et]=n:"parent"===c&&o?(a[et]=n,o[et]=!0):"target"===c&&a!==i?(a[et]=n,i[et]=!0):2===c?i[et]=n:1===c?a&&(a[et]=n):"string"==typeof c&&"both"!==c&&"parent"!==c&&"target"!==c?i[c]?(i[c][et]=n,i[et]=!0):i[et]=tt:-1!==c&&a&&(a[et]=n)}else v&&v();t.onTitleChange&&t.onTitleChange(n,a,l,r),e.redraw()}},cardid:l,class:"withbottommargin relative"+(t.class?" "+t.class:""),bodyClass:x,expandedView:()=>[...f.meta?[e(ft,{...f,confirm:t.confirmBody,itemClass:"pad-1",parameters:i,auxParameters:o,clone:!0,layer:m,index:c,play:t.play,itemsDict:t.itemsDict,initializeTargets:t.initializeTargets,optionsDict:M,AssetButton:k,CodeMirror:A,onAction:b,onchange:(n,a,l,r,s,c)=>{const u=s.rootUpdate||h;if(Be(),s?.onchange)s.onchange(n,a,i);else if(n){if("none"===u)return;"both"===u&&o?a[et]=o[et]=n:"parent"===u&&o?(a[et]=n,o[et]=!0):"target"===u&&a!==i?(a[et]=n,i[et]=!0):2===u?i[et]=n:1===u?a&&(a[et]=n):"string"==typeof u&&"both"!==u&&"parent"!==u&&"target"!==u?i[u]?(i[u][et]=n,i[et]=!0):i[et]=tt:-1!==u&&a&&(a[et]=n)}else v&&v();t.onChange&&t.onChange(n,l,a,o,r,s,c,t),e.redraw()}},g)]:f.emptyMeta?[e(r,f.emptyMeta)]:[],...n||[]],collapsedView:t.collapsedView})})),ht=t((({attrs:t,state:n,children:a})=>{const{layer:i,property:o,colorProperty:r}=t,s=Je[o],c=i[o],u=null!=c,d=u&&"object"==typeof c&&null!==c,f=d&&c,p=f&&f.exp,[,h]=p||[],m=f&&h&&Object.keys(h),g=d&&c?c.title:c,y=m&&m.length,v=t.size&&d;return e("li.coord.witharia.relative.templatedinput",{"aria-label":t["aria-label"],class:(n.chooser&&s?t.chooserClass:t.containerClass)||"col-12"},[...t.docs?[e("a.extlink.absolute.to-right.to-top.font-75.pad-2.pointer",{target:"tool",onclick:()=>{NIPX.sys.open(t.docs.url)}},t.docs.caption||"docs")]:[],t.chooser?[e(".flexrow.grows.fontgroup",[e(l,{class:"grows unitheightsmall rectbutton ohidden",text:g||"--- NONE ---",icon:t.icon,onClick:t=>{!n.chooser&&t.shiftKey&&s.images?Te.setTransState("image",void 0,{giphyQuery:"frame",onOverride:t=>{const n=t&&s.images(t);n&&(i[o]=Z(n),Be(),e.redraw())}}):(n.chooser=!n.chooser,e.redraw())}}),...i[o]?[e(l,{class:"clearfont unitheightsmall bg-accent",text:"X",onClick:()=>{delete i[o],Be(),e.redraw()}})]:s.images&&!g?[e(l,{class:"unitsizesmall rectbutton ohidden",icon:"images",onClick:()=>Te.setTransState("image",void 0,{giphyQuery:"frame",onOverride:t=>{const n=t&&s.images(t);n&&(i[o]=Z(n),Be(),e.redraw())}})})]:[]])]:[e(C,{class:"withicon-2"+(u?" has":"")+(t.class?" "+t.class:""),value:i[o]||"",hint:t.hint,title:t.title,maxlength:t.maxlength||2048,multi:t.multi,actions:[{icon:"plus",onClick:()=>{n.chooser=!n.chooser,e.redraw()}}],onchange:t=>{t=t.split("\n").join(" ").trim(),i[o]=t,Be(),e.redraw()}})],...y||v?[e(".flexrow.wrap.paramgroup",[...y?[e(ft,{meta:h,metaKeys:m,parameters:f,onchange:()=>{delete c.calc,Be(),e.redraw()},AssetButton:t.AssetButton,CodeMirror:t.CodeMirror})]:[],...v?[e(".flexbreak"),e(Me,{class:"col-6 grows innerlabel",title:"size x",min:0,max:100,step:.1,relative:!0,value:parseFloat(c.w)||0,onchange:t=>{c.w=t,Be(),e.redraw()}}),e(Me,{class:"col-6 grows innerlabel",title:"size y",min:0,max:100,step:.1,relative:!0,value:parseFloat(c.h)||0,onchange:t=>{c.h=t,Be(),e.redraw()}})]:[]])]:[],...n.chooser&&s?[e(ct,{entity:t.entity,template:s,type:i.type,layer:i,onClick:t=>{n.chooser=!1,i[o]="object"==typeof t.value?Z(t.value):t.value,t.color&&r&&(i[r]=t.color),Be(),e.redraw()}})]:[],...u?a:[]])}));export{o as Button,y as ButtonChoiceWidget,v as ButtonMultipleChoiceWidget,l as ButtonNew,p as CardieWidget,fe as ColorJoePack,ue as ColorJoeWidget,oe as ComboPrompt,I as ComboWidget,H as ConfirmPromise,Le as CoolContentTicker,ze as CoolGenericTicker,Fe as CoolerEmpty,r as Empty,Oe as EmptyButton,We as FileSelectButton,je as GenericButtonTicker,i as Icon,Xe as ImageDataButton,Ue as ImageProcessButton,Ge as ImageSelectButton,C as InputWidget,W as JSONWidget,Te as MainState,Ie as MainStateImplement,qe as MediaSelectButton,ot as MultiToggleWidget,k as NoticeWidget,d as Notification,Y as OverflowMenu,ie as OverflowUtils,pt as ParameterCardie,ft as ParameterTable,pe as PlusMinus,it as RangeToggleWidget,Me as RangeWidget,c as Selector,g as Separator,Ee as SmileysButton,X as SwitchWidget,ht as TemplatedInputWidget,De as ThematicWrapper,he as TitleBarWidget,R as Tokenizer,D as clearModal,Z as clone,G as confirm,U as confirmPromise,h as defineWidget,$e as makeLocalPath,He as makeLocalUrl,Se as optionsPrompt,$ as packClass,V as packClassString,N as popupMessage,Ye as processImage,Ne as startApp,Re as tainter};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nebularstreams/libmui",
|
|
3
3
|
"description": "Lightweight, high-performance Mithril widget library for modern websites and JavaScript applications.",
|
|
4
|
-
"version": "4.3.
|
|
4
|
+
"version": "4.3.107",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"module": "dist/index.js",
|