@nebularstreams/libmui 4.1.0 → 4.1.3
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/index.d.ts +5 -5
- package/dist/index.js +1 -1
- package/dist/libmui.esm.min.mjs +3 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -98,11 +98,11 @@ export function ConfirmPromise(
|
|
|
98
98
|
): Promise<{idx: number; name: string}>;
|
|
99
99
|
|
|
100
100
|
export function defineWidget(
|
|
101
|
-
view?: (...args:
|
|
102
|
-
oninit?: (...args:
|
|
103
|
-
oncreate?: (...args:
|
|
104
|
-
onremove?: (...args:
|
|
105
|
-
onupdate?: (...args:
|
|
101
|
+
view?: (...args: Object[]) => unknown,
|
|
102
|
+
oninit?: (...args: Object[]) => void,
|
|
103
|
+
oncreate?: (...args: Object[]) => void,
|
|
104
|
+
onremove?: (...args: Object[]) => void,
|
|
105
|
+
onupdate?: (...args: Object[]) => void
|
|
106
106
|
): MuiWidget;
|
|
107
107
|
|
|
108
108
|
export function makeLocalPath(path: string[]): string;
|
package/dist/index.js
CHANGED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import e from"mithril";function t(e,t,n,a,o){return{...e&&{view:e},...t&&{oninit:t},...n&&{oncreate:n},...o&&{onupdate:o},...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,o={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}})},i={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 o=t.onclick(a,t);o&&o.then&&o.catch&&(n.busy=!0,e.redraw(),o.then((()=>{n.busy=!1,e.redraw()})).catch((t=>{n.busy=!1,n.error=t,e.redraw()})))}),25)}}},[...t.icon&&!t.right?[e(o,t)]:[],...t.text?[e("span.pad-1.pad-h",{class:t.textClass||null},t.text)]:[],...t.icon&&t.right?[e(o,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 o=t.onClick(a,t);o&&o.then&&o.catch&&(n.busy=!0,e.redraw(),o.then((()=>{n.busy=!1,e.redraw()})).catch((t=>{n.busy=!1,n.error=t,e.redraw()})))}),25)}}},[...t.icon&&!t.right?[e(o,t)]:[],...t.text?[e("span.pad-1.pad-h",{class:t.textClass||null},t.text)]:[],...t.icon&&t.right?[e(o,t)]:[],...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(o,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,o)=>{const i=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:o||[]}),t.onSelected&&t.onSelected(n.current,n.currentParams,n.currentIndex!==i,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,o=-1!==a?e.items[a]:null;Object.assign(t,{currentIndex:a,current:o})},onupdate:({attrs:e,state:t})=>{(e.state||t).setItem=(n,...a)=>s(e,e.state||t,n,a)},view:({attrs:t,state:o})=>{o=t.state||o;const{current:s}=o;return e((t.element||"widget")+".selector"+(t.horizontal?".flexrow":".flexcol")+(t.className?"."+t.className:""),{...t.key&&{key:t.key},class:(o.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(i,{class:(t.class?t.class+" ":"")+(a(o,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()-o.clickts<200||(o.clickts=Date.now(),o.bodyHidden=!1,o.setItem(n))}}))))],...s?[...t.toggle&&!o.bodyHidden?[e(l,{class:"selectornotch "+(o.bodyHidden?"bodyhidden":"bodyshown"),icon:o.bodyHidden?"caret-up":"caret-down",title:o.bodyHidden?"expand panel":"contract panel",onClick:()=>{o.bodyHidden=!o.bodyHidden,e.redraw()}})]:[],...t.toggle&&o.bodyHidden?[]:[...s?.bodyTitle?[e(".bodytitle",s.bodyTitle)]:[],e(".grows.flexcol.ohidden.selectorbody",{class:t.bodyClass,role:"presentation"},[e(s.widget,n(s.attrs,t,o.currentParams),s.children)])],...t.closeButton?[e(i,{class:"closebutton absolute toright",icon:"times",onclick:()=>{o.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,o=[];function l(){const r=n||document.getElementById("notification-container");if(o.length){const n=o.splice(0,1)[0];!function(t,n){e.render(t,e(i,{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)=>{o.push({text:e,type:t}),a||l()},clear:()=>{o=[],l()}}},h={};const f=t((({attrs:t,state:n,children:a})=>{const{nofold:o,cardid:i,size:r,title:s,action:c,collapsedAction:u,collapsedClass:d,expandedClass:f,cols:p,element:m,busy:g,expandedView:v,collapsedView:y,titleWidget:b,titleAttrs:w,titleClass:x,bodyClass:C,titleExpanded:k,titleCollapsed:M,foldIcon:_="fa-chevron-down"}=t,I=!o&&(i?!h[i]:!!n.collapsed),E=I?y?y(t,n):[]:v?v(t,n):a||[],T=b?e(b,w||{}):s?e("span.ellipsis.ohidden.unfold",s):void 0,A=g?"fa-sync":`${_} ${I?"iscollapsed":"isexpanded"}`;return E.length||!t.skipEmpty?e(m||"ul",{class:"cardie ohidden "+(p?"flexcol ":"flexrow wrap ")+(t.class?" "+t.class:"")+(o?" expanded":" "+(I?"collapsed "+(d||""):"expanded "+(f||"")))+(r?" marg-"+r:"")+(b?" withwidget":"")+(g?" busycard":"")},[...T?[e(".title.grows.fabf.flexrow.pointer.unfold",o?{class:x||"pad-2"}:{class:`${x||"pad-2"} ${A||""}`,title:I?M||"Click to expand the options":k||M||"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(h).forEach((e=>{e.startsWith(n+"-")&&(h[e]=0)})),h[e]=t}}(i,I):n.collapsed=!n.collapsed,e.redraw())}},!c||!o&&I?u&&I?[e(l,u),T]:T:[e(l,c),T])]:[],...E.length?[e(".flexbreak"),e(".cardiebody.fadein-filter.grows",{class:(p?"flexcol ":"flexrow wrap")+" "+(C||"")},...E)]:[],...t.alwaysView?[t.alwaysView({attrs:t,state:n})]:[]]):[]}),(({attrs:e,state:t})=>{e.cardid||(t.collapsed=!e.nofold&&(e.cardid?!h[e.cardid]:!!e.collapsed))}),void 0,void 0,void 0);function p(e,t,n,a,o){return{...e&&{view:e},...t&&{oninit:t},...n&&{oncreate:n},...o&&{onupdate:o},...a&&{onremove:a}}}const g=p((({attrs:t,children:n})=>e(".separator",{class:t.class||"mini",...t.onClick&&{onclick:t.onClick}},[e("span.grows",t.text),...n||[]]))),v=t((({attrs:t})=>{const{value:n,field:a,toggle:o,element:i,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||{},h=Object.keys(d),f=h.length,p=(t.class||"")+(t.subclass?" "+t.subclass:" scaff scaff-b1");return f||r?[...t.label?[e(g,{text:t.label,class:t.labelClass||""})]:[],e((i||"div")+".buttonchoice.flexrow.ohidden",{class:p+(t.icon?" withicon fa-"+t.icon:""),title:t.title},e(".flexrow.grows.ohidden.wrap"+(t.icon?" scaff-left":""),h.length?h.map((i=>{const r=d[i],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(o&&c?void 0:r,i,n),e.redraw()}},t.render?t.render(r):r.caption||i)})):[e(".emptychoice.grows.al-center.align-self-center.unitheightsmall",t.emptyMessage)]))]:[]})),y=t((({attrs:t})=>{const{value:n,field:a,element:o,emptyMessage:i,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:[],h=Object.keys(u),f=Math.max(1,Math.trunc(Number(t.rows)||1)),p=Math.max(1,Math.trunc(Number(t.cols)||Math.ceil(h.length/f)||1)),m=Boolean(t.responsive),g=t.minCellWidth||"3rem",v=m?`repeat(auto-fit, minmax(min(100%, max(${g}, ${100/p+"%"})), 1fr))`:`repeat(${p}, minmax(0, 1fr))`,y=(t.class||"")+(t.subclass?` ${t.subclass}`:" scaff scaff-b1");return h.length||i?e((o||"div")+".buttonchoice.flexrow.ohidden",{class:y+(t.icon?` withicon fa-${t.icon}`:""),title:t.title},e(".grows.ohidden"+(t.icon?".scaff-left":""),{style:{display:"grid",gridTemplateColumns:v}},h.length?h.map((n=>{const o=u[n],i=t.raw&&a?o:o.value,r=a?i[a]:i,s=d.includes(r);return e(l,{icon:o.icon||void 0,class:"grows scaff-b0 "+(t.buttonClass?`${t.buttonClass} `:"rectbutton unitheightsmall ")+(o.class?`${o.class} `:"")+(s?"accent":""),title:s?o.titleOn||o.title:o.titleOff||o.title,"aria-pressed":String(s),onClick:a=>{const i=s?d.filter((e=>e!==r)):[...d,r];t.onchange?.(i,o,n,a),e.redraw()}},t.render?t.render(o):o.caption||n)})):[e(".emptychoice.grows.al-center.align-self-center.unitheightsmall",i)])):[]})),b=(e,t,n=!1)=>{if(n||"number"===e.type){const n=e.float?Number.parseFloat(t):Number.parseInt(t,10);return Number.isNaN(n)?void 0:n}return t},w=(e,t,n)=>{const a=t.hasOwnProperty("value")?t.value:e.value;return b(e,a,n)},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"}),o=new Hammer.Pan({direction:Hammer.DIRECTION_VERTICAL}),i=new Hammer.Tap;n.add([o,i]),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()},o=[...!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},class:(t.class||"")+(t.validator?n.isValid?" bg-ok":" bg-error":""),...t.title&&{title:t.title},value:w(t,n),placeholder:t.hint||"",...t.readonly?{readonly:"readonly"}:{oninput:e=>{n.value=b(t,e.target.value),e.fromoninput=!0,t.validator&&(n.isValid=t.validator(n.value)),t.onchange&&(t.oninput||t.onchange)(n.value,e)},onchange:e=>{t.onchange&&(t.validator&&(n.isValid=t.validator(n.value)),e.enterPressed=n.enterPressed,delete n.enterPressed,t.onchange(b(t,e.target.value),e),t.staticField?a(!0):delete n.value)},onblur:()=>{n.showInput&&a(!0)},onkeyup:e=>{n.showInput&&("Escape"===e.key?a(!0):"Enter"===e.key&&(n.value!==t.value&&n.value||(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),t.validator&&(n.isValid=t.validator(n.value)),t.onchange&&(t.oninput||t.onchange)(n.value,e,!0)},onchange:e=>{if(t.onchange){t.validator&&(n.isValid=t.validator(n.value));const o=b(t,e.target.value);a(!1),t.onchange(o,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,o)=>{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,o)}else delete n.dragging,delete n.value,e.redraw()}},...t.readonly||{onClick:()=>{n.showInput=!0,n.value=t.value,e.redraw()}}}),...o.length?[e(".span.actions",o)]:[]]))},oninit:({attrs:e,state:t})=>{if(e.staticField&&e.draginc){const n=w(e,t,!0);t.showInput=Number.isNaN(n)||null==n}}},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(o,{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(o,{size:t.size,icon:t.icon,class:t.iconClass,title:t.icontitle})]:[],(t.texts||[t.text]).map((t=>e(".pad-2.pad-h",t)))]))),M={view:({attrs:t})=>t.items.map((({name:n},a)=>e("option",{...t.state.index===a+(t.offset||0)&&{selected:!0}},n)))};let _;function I(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,o)=>{e.value&&(t.index=0),a.offset=o?n[o-1].offset+n[o-1].len:0,t.allItems=t.allItems.concat(a.items),e.value&&a.items.forEach(((n,o)=>{const i=n.value;(e.parser?e.parser(i):i)===e.value&&(t.index=o+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 E={view:({attrs:t,state:n})=>{const{groups:a}=n;return e("select",{"aria-label":t.caption,class:t.class,oninput:a=>{I(t,n);const o=n.index=a.target.selectedIndex,i=o>=0?n.allItems[o]:null;t.onchange&&i&&t.onchange(i.value,i,o),e.redraw()}},a?Object.values(a).map((t=>e("optgroup",{label:t.label},e(M,{items:t.items,offset:t.offset,state:n})))):e(M,{items:null!=t.items?t.items:[],state:n}))},oninit:({attrs:e,state:t})=>{Object.assign(t,{index:e.index||0,initial:e.value}),I(e,t)},oncreate:()=>{},onupdate:({attrs:t,state:n})=>{const a=void 0!==t.value&&n.initial!==t.value;(!n.groups&&!n.allItems||a)&&(I(t,n),a&&(n.initial=t.value,clearTimeout(_),_=setTimeout((()=>e.redraw()),50)))}};let T;function A(e){"function"==typeof T&&(T(),T=void 0),N.redraw&&(N.redraw(!0),delete N.redraw),e.style.display="none"}function N(t,n=!1,a=".modal-content"){const o=document.getElementById("modal-container");if(o.classList.toggle("iscustom",".modal-content"!==a),n&&(T=n,o.onclick=e=>{"modal-container"===e.target.id&&A(o)}),!t)return N.redraw&&(N.redraw(!0),delete N.redraw),void(null===t?o.style.display="none":A(o));o.style.display="flex",N.redraw=n=>{e.render(o,e(a,{role:"alertdialog","aria-labelledby":"modaltitle","aria-modal":!0},n||!t?[]:["function"==typeof t?t():t]))},N.redraw()}function S(){const e=document.getElementById("modal-container");return"none"!==e.style.display&&(A(e),!0)}const L=/\$([A-Za-z0-9_\/\:\=]+)\$/g,D=(e,t,n)=>z(e,t,{encode:n}),j=(e,t,n,a)=>z(e,t,{encode:n,unescape:a,dothrow:!0}),O={daterel:e=>new Date(e).toISOString()};function z(e,t,n){if(!e)return"";if("string"!=typeof e)return e;let a;return n=n||{},t=t||{},e.replace(L,((e,o)=>{let i=null,l=!1;o.indexOf("=")>0&&(a=o.split("="),o=a[0],l=3===a.length,i=l?n.dothrow?a[2]:null:a[1]);const r=o.split(":"),s=r[0],c=r[1]||null,u=s.split("/"),d=u.shift();let h=t[d];"number"==typeof h&&(h=""+h);let f=(u.length?P(h,u.join("/")):h)||i;if(null==f&&n.dothrow)throw new Error("Parameter "+d+(u.length?"/"+u.join("/"):"")+" is required");return null==f&&(f=n.hasOwnProperty("defvalue")?n.defvalue:"$"+s+(l?"=="+a[2]:"")+"$"),c&&O[c]&&(f=O[c](f)),n.unescape&&(f=unescape(f)),n.encode?escape(f):f}))}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 K=/[^0-9A-Z._\-]+/gi,B=/[^0-9A-Z_\-]+/gi;function F(e,t=!0){return t=t&&!e?.endsWith("."),e?e.trim().toLowerCase().replace(t?K:B,""):null}const R={tokenize:(e,t,n)=>z(e,t,{encode:n,defvalue:""}),tokenizeStrict:j,tokenizeObject:function e(t,n,a,o){const i=a?j:D,l=o?{}:t;if("string"==typeof t)return i(t,n);if("object"==typeof t){if(t.length){const o=[];for(const i of t)o.push(e(i,n,a,!0));return o}for(const o of Object.keys(t)){const r=t[o];l[o]="object"==typeof r?e(r,n,a,!0):"string"==typeof r?i(t[o],n):r}}return l},tokenizeKeep:D,tokenizeWithDefault:(e,t,n)=>z(e,t,null==n?null:{defvalue:n}),tokenizeUrl:function(e,t,n){n=n||{};const{message:a,getTitle:o,defaultTitle:i}=n,l=i||"Url",r="string"==typeof e?i:"object"==typeof e&&e.id&&e.id||l;if(o)return r;const s="string"==typeof e?e:"object"==typeof e&&e.url?e.url:null;try{return j(s,t||{},"...")}catch(e){return console.log("[TOKENIZER]",e.message),a||"(not enough parameters)"}},getPointedData:P,sanitizeFilename:F,generateFilename:(e,t=void 0)=>{const n=parseInt(md5(e).substring(24),16).toString(32);return(t?F(t)+"-":"")+n}};function $(t,n,a,o=!1){let i;return"function"==typeof o&&(i=o,o=!1),new Promise((l=>{const r=a.map(((e,t)=>({caption:e,onclick:()=>l({idx:t,name:e})})));!function(t,n,a=["CANCEL","OK"],o={}){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"))))]},{}),o.onCancel||!o.noCancel)}(t,n,r,{onCancel:i,noCancel:o})}))}function H(t,n,a,o){return new Promise((l=>{function r(e){N(null);try{l(e)}catch(e){}}const s=((e,t)=>{const n=[];if(t)for(const e of Object.keys(t))t[e]&&n.push("."+e);return(e||"")+n.join("")})(".popup.flexcol",{".favlist":(o=o||{}).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(i,{...a,onclick:()=>r({domItem:t,item:n,action:a})},a.caption)))])}),!0)}))}function V(e,t,n=void 0,a="YES",o="NO"){Y(e,[o,a],n).then((e=>{e?t(e):n&&n()})).catch((()=>{n&&n()}))}function Y(e,t=["NO","YES"],n="cancelled"){return new Promise(((a,o)=>{$(null,e,t,(()=>o(new Error(n)))).then((({idx:e})=>{e>=0?a(e):o(new Error(n))}))}))}const q=p((({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(o,{iconClass:"pad-2 pad-h",icon:n.checked?"toggle-on":"toggle-off"})]:[e(o,{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())})),W=window.structuredClone?window.structuredClone:e=>JSON.parse(JSON.stringify(e));function G(t,n,a={}){const{title:o,field:i,icon:l,textNew:r,textHint:s,resolve:c}=a,u=Array.isArray(t)?t.map((e=>({icon:l,caption:i?e[i]:e,onClick:t=>n(e,t)}))):Object.keys(t).map((e=>({icon:t[e].icon||l,caption:t[e].caption||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"):H(document.body,{title:o},[...r&&!i?[{icon:"plus",caption:r,onClick:()=>U(r,"",s,(t=>{t&&t&&t.trim()&&(n(t),e.redraw())}))}]:[],...u]).then((({action:e})=>e.onClick())).finally((()=>{}))}function U(e,t,n,a,o={}){setTimeout((()=>H(document.body,{title:e},[{type:"text",hint:n,value:t}]).then((({value:e})=>(o.refreshKey=String(Date.now()),a(e))))),100)}const X=[["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]],Z=p((({attrs:t})=>e("h2.marg-2.no-marg-bottom",t.title))),J=p((({attrs:t})=>{const{type:n="changes",meta:a,onInput:o,title:i,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(Z,{title:i})]:[],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),o(a)):d.add("Information is incomplete or invalid")}}))])])})),Q=p((({attrs:t})=>{const{parameters:n,preset:a,presetComponents:o,types:i,globalData:r,fetcher:s}=t,c=[],u=[],h=i?X:X.filter((e=>{const[,t,o,i,l]=e,s=t?a[t]:a,d=l?r:n,h=t?d[t]:d;let f=!1;if(o.length){for(const e of o)s&&void 0!==s[e]&&(f=c[i]=!0),void 0!==h[e]&&(f=u[i]=!0);return f}return f=!0,u[i]=!!h,c[i]=!!s,f}));return e("ul.flexrow.wrap.userdialog",h.length?h.map((h=>{const[f,p,m,g,v,y]=h,b=i?void 0:p?a[p]:a,w=v?r:n,x=i?void 0:p?w[p]:w,C=i||c[g],k=u[g];return[...o?[e(q,{title:`Include ${h[0]} in snapshots`,class:"grows unitheightsmall"+(o[g]?" accent":""),checked:!!o[g],onchange:n=>{o[g]=!o[g],e.redraw(),t.redraw&&t.redraw()}}),e(".grows",{class:C?"avail":"unavail"},f)]:[],...t.types?[]:[e(l,{class:"col-3"+(k?"avail":"unavail"),icon:"sync",title:`Copy ${f} from current state`,onClick:()=>{if(m.length){p&&!a[p]&&(a[p]={});const e=p?a[p]:a;for(const t of m)if(void 0!==x[t]){const n=y&&s?s(e[t],g):x[t];e[t]=W(n)}}else if(0===m.length&&p&&void 0!==x){const e=y&&s?s(x,g):x;a[p]=W(e)}t.redraw&&t.redraw(),d.add(`updated ${f} from current scene`)}}),e(l,{class:"col-3 "+(C?"":"disabled text-lo"),icon:"trash",title:`Delete ${f} in preset`,onClick:()=>C&&(()=>{if(m.length)for(const e of m)delete b[e];else 0===m.length&&p&&delete a[p];t.redraw&&t.redraw()})()})],e(".flexbreak")]})):e("h3","Preset is Empty"))}));var ee=Object.freeze({__proto__:null,choose:function(e,t={icon:"circle",onSelect:()=>{}}){const{icon:n,title:a,field:o,onSelect:i,parser:l=e=>e}=t,r=e.map(((e,t)=>({icon:o&&e.icon||n,caption:l(o?e[o]:e,e),onClick:n=>i(e,n,t)})));Array.isArray(e)&&!e.length?d.add("No items available"):H(document.body,{title:a},r).then((({action:e})=>e.onClick()))},promptEntity:(t,n,a,o={})=>new Promise(((i,l)=>{N(e(J,{meta:t,type:a,title:n,options:o,onInput:e=>i(e)}),(()=>{l(new Error("cancelled"))}))})),promptName:U,promptOptions:G,promptPreset:(t,n,a={})=>new Promise(((o,i)=>{N((()=>e(Q,{...a,preset:t,parameters:n,redraw:()=>N.redraw()})),(()=>{i(new Error("cancelled"))}))}))});const te=p((({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:o,field:i,onchange:l,textNew:r,textHint:s,resolve:c,icon:u}=e,d="function"==typeof n?n():n;G(a?"function"==typeof a?a():d[a]||[]:d,l,{title:t,field:i,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?V(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"})]:[]])]))),ne=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=o(t.class||"",t.parent),i=o("pointer",n);return o("shape shape1",i),o("shape shape2",i),o("bg bg1",n),o("bg bg2",n),e(n,a(t.cbs,i)),{background:n,pointer:i}}function n(t){var n=o(t.class,t.parent),i=o("pointer",n);return o("shape",i),o("bg",n),e(n,a(t.cbs,i)),{background:n,pointer:i}}return e.xyslider=t,e.slider=n,e;function a(e,t){var n={};for(var a in e)n[a]=o(e[a]);function o(e){return function(n){n.pointer=t,e(n)}}return n}function o(e,t){return i("div",e,t)}function i(e,t,n){var a=document.createElement(e);return t&&(a.className=t),n.appendChild(a),a}function l(e,t,n,a,o){var i=(t=c(t)).begin,l=t.change,u=t.end;r(e,n,(function(t){var n=f(h,l,e);function c(){s(document,a,n),s(document,o,c),h(u,e,t)}r(document,a,n),r(document,o,c),h(i,e,t)}))}function r(e,t,n){var a=!1;try{var o=Object.defineProperty({},"passive",{get:function(){a=!0}});window.addEventListener("testPassive",null,o),window.removeEventListener("testPassive",null,o)}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 h(e,t,n){n.preventDefault();var a=p(t),o=t.clientWidth*(window.SCALE||1),i=t.clientHeight*(window.SCALE||1),l={x:m(t,n),y:g(t,n)},r=(l.x-a.x)/o,s=(l.y-a.y)/i;e({x:isNaN(r)?0:r,y:isNaN(s)?0:s,cursor:l,elem:t,e:n})}function f(e){var t=Array.prototype.slice,n=t.apply(arguments,[1]);return function(){return e.apply(null,n.concat(t.apply(arguments)))}}function p(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(i);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,h=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])/h,s)}t.length<6&&(t=t.replace(/^#?([0-9a-f])([0-9a-f])([0-9a-f])$/i,"$1$1$2$2$3$3"));var f=t.match(/^#?([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])([0-9a-f][0-9a-f])$/i);if(f)return new e.RGB(parseInt(f[1],16)/255,parseInt(f[2],16)/255,parseInt(f[3],16)/255);if(e.CMYK){var p=t.match(new RegExp("^cmyk\\("+o.source+","+o.source+","+o.source+","+o.source+"\\)$","i"));if(p)return new e.CMYK(parseFloat(p[1])/100,parseFloat(p[2])/100,parseFloat(p[3])/100,parseFloat(p[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*/,o=/\s*(\.\d+|100|\d?\d(?:\.\d+)?)%\s*/,i=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,o,i){function l(t,n){var a={};for(var o 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(o)&&void 0===e[t].prototype[o]&&(e[t].prototype[o]=a[o])}e[a]=function(e){var t=Array.isArray(e)?e:arguments;o.forEach((function(e,n){var i=t[n];if("alpha"===e)this._alpha=isNaN(i)||i>1?1:i<0?0:i;else{if(isNaN(i))throw new Error("["+a+"]: Invalid color: ("+o.join(",")+")");"hue"===e?this._hue=i<0?i-Math.floor(i):i%1:this["_"+e]=i<0?0:i>1?1:i}}),this)},e[a].propertyNames=o;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 i=0;i<o.length;i+=1)if(Math.abs(this["_"+o[i]]-e["_"+o[i]])>t)return!1;return!0},r.toJSON=function(){return[a].concat(o.map((function(e){return this["_"+e]}),this))},i)if(i.hasOwnProperty(s)){var c=s.match(/^from(.*)$/);c?e[c[1].toUpperCase()].prototype[a.toLowerCase()]=i[s]:r[s]=i[s]}return r[a.toLowerCase()]=function(){return this},r.toString=function(){return"["+a+" "+o.map((function(e){return this["_"+e]}),this).join(", ")+"]"},o.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(o.map((function(n){return this["_"+n]+(e===n?t:0)}),this)):new this.constructor(o.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),o=t(this._blue);return new e.XYZ(.4124564*n+.3575761*a+.1804375*o,.2126729*n+.7151522*a+.072175*o,.0193339*n+.119192*a+.9503041*o,this._alpha)},rgb:function(){var t=this._x,n=this._y,a=this._z,o=function(e){return e>.0031308?1.055*Math.pow(e,1/2.4)-.055:12.92*e};return new e.RGB(o(3.2404542*t+-1.5371385*n+-.4985314*a),o(-.969266*t+1.8760108*n+.041556*a),o(.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),o=t(this._z/108.883);return new e.LAB(116*a-16,500*(n-a),200*(a-o),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,o=n-this._b/200;return new e.XYZ(95.047*t(a),100*t(n),108.883*t(o),this._alpha)}})},c=function(e){e.installColorSpace("HSV",["hue","saturation","value","alpha"],{rgb:function(){var t,n,a,o=this._hue,i=this._saturation,l=this._value,r=Math.min(5,Math.floor(6*o)),s=6*o-r,c=l*(1-i),u=l*(1-s*i),d=l*(1-(1-s)*i);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,o=n<=1?n:2-n;return t=o<1e-9?0:a/o,new e.HSL(this._hue,t,n/2,this._alpha)},fromRgb:function(){var t,n=this._red,a=this._green,o=this._blue,i=Math.max(n,a,o),l=i-Math.min(n,a,o),r=0===i?0:l/i,s=i;if(0===l)t=0;else switch(i){case n:t=(a-o)/l/6+(a<o?1:0);break;case a:t=(o-n)/l/6+1/3;break;case o: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,o=1-t,i=1-n,l=1-a,r=1;return t||n||a?(o=(o-(r=Math.min(o,Math.min(i,l))))/(1-r),i=(i-r)/(1-r),l=(l-r)/(1-r)):r=1,new e.CMYK(o,i,l,r,this._alpha)}})},h=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"}},f=function(e){e.installMethod("clearer",(function(e){return this.alpha(isNaN(e)?-.1:-e,!0)}))},p=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)},v=function(e){e.use(u),e.installMethod("lighten",(function(e){return this.lightness(isNaN(e)?.1:e,!0)}))},y=function(e){e.installMethod("mix",(function(t,n){t=e(t).rgb();var a=2*(n=1-(isNaN(n)?.5:n))-1,o=this._alpha-t._alpha,i=((a*o==-1?a:(a+o)/(1+a*o))+1)/2,l=1-i,r=this.rgb();return new e.RGB(r._red*i+t._red*l,r._green*i+t._green*l,r._blue*i+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),o=["_red","_green","_blue"];return o.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||(o.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(h).use(f).use(p).use(m).use(g).use(v).use(y).use(b).use(w).use(x).use(C).use(k)}()})),a=i(o,"div");function o(e,t,n){var a=document.createElement(e);return a.className=t,n.appendChild(a),a}function i(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:o,div:a,partial:i,labelInput:function(e,t,n,i){var l="colorPickerInput"+Math.floor(1001*Math.random()),r=a(e,n),s=function(e,t,n){var a=o("label","",t);a.innerHTML=e,n&&a.setAttribute("for",n);return a}(t,r,l),c=function(e,t,n,a){var i=o("input","",t);i.type=e,n&&(i.maxLength=n);a&&i.setAttribute("id",a);n&&(i.maxLength=n);return i}("text",r,i,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,o=n.limit||255,i=n.fix>=0?n.fix:0,l=(""+o).length+i;l=i?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=h,t.input.onkeydown=f,t.input.onkeyup=p,{name:e,e:t}}));function h(){t.done()}function f(e){e.ctrlKey||e.altKey||!/^[a-zA-Z]$/.test(e.key)||e.preventDefault()}function p(){var e=[a];d.forEach((function(t){e.push(t.e.input.value/o)})),c||e.push(t.getAlpha()),t.set(e)}return{change:function(e){d.forEach((function(t){t.e.input.value=(e[t.name]()*o).toFixed(i)}))}}},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,o=e.length;o<t;o++)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:o,change:o,end:function(){n.done()}}});function o(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,o){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,o=t.xyslider({parent:n,class:"twod",cbs:{begin:i,change:i,end:g}});function i(e){d=a.xy(d,{x:r.clamp(e.x,0,1),y:r.clamp(e.y,0,1)},o,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),o,l),m()}var u=h(e.color),d=a.init(u,o,l),p={change:[],done:[]};function m(e){e=f(e)?e:[];for(var t,n=p.change,a=0,o=n.length;a<o;a++)t=n[a],-1==e.indexOf(t.name)&&t.fn(d)}function g(){if(!u.equals(d)){for(var e=0,t=p.done.length;e<t;e++)p.done[e].fn(d);u=d}}var v={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(h(e),o,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?p[e].push({name:n,fn:t}):console.warn('Passed invalid evt name "'+e+'" to colorjoe.on'),this},removeAllListeners:function(e){if(e)p[e]=[];else for(var t in p)p[t]=[];return this}};return function(e,t,n){if(!n)return;var a,o,i,l=r.div("extras",e);n.forEach((function(e,n){f(e)?(o=e[0],i=e.length>1?e[1]:{}):(o=e,i={});var r=o in c.extras?c.extras[o]: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,o+n),i),a)t.on(s,a[s],o)}))}(n,v,e.extras),m(),v}({e:n,color:a,cbs:e,extras:o})};var n,a};for(var u in c.rgb=c({init:function(e,t,a){var o=n(e).hsv();return this.xy(o,{x:o.saturation(),y:1-o.value()},t,a),this.z(o,o.hue(),t,a),o},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 o=n(e).hsl();return this.xy(o,{x:o.hue(),y:1-o.saturation()},t,a),this.z(o,1-o.lightness(),t,a),o},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 h(e){if(!p(e))return n("#000");if(e.isColor)return e;var t=n(e);return t||(p(e)&&console.warn("Passed invalid color to colorjoe, using black instead"),n("#000"))}function f(e){return"[object Array]"===Object.prototype.toString.call(e)}function p(e){return void 0!==e}function m(e){return"function"==typeof e}function g(e){return e}var v=c;return window.OneColor=n,v}(),ae=p((()=>e(".colorjoe-frame.absolute")),null,(({attrs:e,dom:t})=>{window.SCALE=1,e.state.joe=(e.hsl?ne.hsl:ne.rgb)(t,e.color,e.noalpha?[]:["alpha"]),e.state.joe.on("change",(t=>{e.onColor(e.noalpha?t.css():t.cssa(),t)})).update()})),oe=[],ie=p((({attrs:t,state:n,children:a})=>e(".colorjoe-popper.flexcol",{class:t.noalpha?"no-alpha":""},[e(ae,{...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:oe[a]?"":"chequered",style:{...oe[a]&&{backgroundColor:oe[a]}},onclick:o=>{o.shiftKey?oe[a]=n.joe.get().css():oe[a]&&n.joe.set(oe[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())})]:[]])]))),le=p((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(ie,{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())})),re=[255,255,255,1];
|
|
2
|
+
/*! colorjoe - v4.1.1 - Juho Vepsalainen <bebraw@gmail.com> - MIT
|
|
3
|
+
https://bebraw.github.com/colorjoe - 2020-01-27 */var se=t((({attrs:t})=>{const{colors:n=[],max:a=8}=t,o=n.length,i=(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,o,i;if(0===t)a=o=i=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),o=l(s,r,e),i=l(s,r,e-1/3)}return[Math.round(255*a),Math.round(255*o),Math.round(255*i)]})(e[0],e[1],e[2]).join(",")+","+e[3]+")";return e(".flexrow.wrap.gradient.grows",{class:t.class},[...n.map(((a,o)=>e(le,{class:"grows",color:t.hsl?r(n[o]):i(n[o]),title:"Click to edit, or Shift-click to remove this color from the collection",hsl:t.hsl,onchange:(a,i)=>{let l;if(t.hsl){const e=i.hsl();l=[e.hue(),e.saturation(),e.lightness(),i.a()]}else l=[i.r(),i.g(),i.b(),i.a()];n[o]=l,t.onchange&&t.onchange(n),e.redraw()},onshiftclick:()=>{n.splice(o,1),t.onchange&&t.onchange(n),e.redraw()}}))),...o<a?[e(l,{icon:"plus",class:"unitheightsmall accent bg-window-lo "+(o?"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(re),t.onchange&&t.onchange(n),e.redraw()}})]:[]])}));const ce=t((({attrs:t})=>e(".flexrow.wrap.grows",{...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 o=t.value||0;Number.isNaN(o)&&(o=0),o-=n,void 0!==a&&o<a&&(o=a),t.onchange(o),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 o=t.value||0;void 0!==a&&o===a||(o+=n,t.onchange(o),e.redraw())}})]))),ue=t((({attrs:t,dom:n})=>e(".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:()=>H(n,{title:t.title},t.overflow.items).then((({action:e})=>e.onClick()))})]:[]]))),de=!!navigator.userAgent.match(/iPhone|iPad|iPod/i);let he,fe=!1;function pe(e,t,n){return Math.min(Math.max(e,t),n)}function me(e,t,n,a){if(n-t<=0)return t;if(a<=0)return pe(e,t,n);const o=Math.ceil((n-t)/a);return pe(t+Math.round(o*(e-t)/(n-t))*a,t,n)}function ge(){let t,n,a,o,i,l,r,s,c,u=0,d=!1,h=!1,f=4,p=1,m=0,g=10,v=0,y=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=pe(a,0,n);const o=me(a/n*(g-m)+m,m,g,y);return D(o),o}function x(t,a,o){return h?function(t,a){d=r=!0,l=n.getBoundingClientRect();const o=w(t,a);o!==v&&(v=o,c&&!1!==c(v)&&e.redraw())}(t,a):(i=o,d=!0,r=!1,l=n.getBoundingClientRect(),void(s||i.target.requestPointerLock()));var i,s}function C(e,t,n){return r?w(e,t):function(e,t,n){const a=n.shiftKey?f:n.metaKey||n.ctrlKey?4*f:p;let o,i;o="vertical"===b?n.movementY||0:n.movementX||0;let l=y>0?y:(g-m)/100;if(o<0)i=Math.max(v+l*a*o,m);else{if(!(o>0))return v;i=Math.min(v+l*a*o,g)}return i=me(i,m,g,y),D(i),i}(0,0,n)}function k(e){2!==u&&(u=1,0===e.button&&(window.addEventListener("mousemove",M),window.addEventListener("mouseup",_),x(e.clientX,e.clientY,e)))}function M(e){e.preventDefault(),N(e.clientX,e.clientY,e)}function _(e){window.removeEventListener("mousemove",M),window.removeEventListener("mouseup",_),S(e.clientX,e.clientY,e)}function I(e){if(1===u)return;t.addEventListener("touchmove",E),t.addEventListener("touchend",T);const n=e.changedTouches[0];x(n.clientX,n.clientY,e)}function E(e){e.preventDefault();const t=e.changedTouches[0];N(t.clientX,t.clientY,e)}function T(e){t.removeEventListener("touchmove",E),t.removeEventListener("touchend",T);const n=e.changedTouches[0];S(n.clientX,n.clientY,n)}function A(t){const n=t.keyCode;let a;if(33===n){t.preventDefault();let e=Math.max((g-m)/10,y);e<=0&&(e=1),a=me(v+e,m,g,y)}else if(34===n){t.preventDefault();let e=Math.max((g-m)/10,y);e<=0&&(e=1),a=me(v-e,m,g,y)}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=(y>0?y:(g-m)/10)*(t.shiftKey?.25:t.ctrlKey||t.metaKey?4:1);a=Math.max(v-e,m)}else if(38===n||39===n){t.preventDefault();let e=(y>0?y:(g-m)/10)*(t.shiftKey?.25:t.ctrlKey||t.metaKey?4:1);a=Math.min(v+e,g)}else 48===n&&(a=(g+m)/2);"number"==typeof a&&a!==v&&(v=a,D(v),s&&!1!==s(v)&&e.redraw())}function N(t,n,a){if(!d)return;const o=C(t,n,a);o!==v&&(v=o,c&&!1!==c(v)&&e.redraw())}function S(t,n,a){d&&(d=!1,v=C(t,n,a),s&&!1!==s(v)&&e.redraw(),r||document.exitPointerLock(),setTimeout((function(){d||(u=0)}),350))}function L(e){let t=(e-m)/(g-m);return"vertical"===b&&(t=1-t),String(100*t)+"%"}function D(e){const t=L(e),n=L(g-e+m);"vertical"===b?(i.style.top=t,a.style.height=t,o.style.height=n):(i.style.left=t,a.style.width=n,o.style.width=t)}function j(e){m=e.min,g=e.max,y="number"!=typeof e.step||Number.isNaN(e.step)?1:pe(e.step,0,g-m),b="vertical"===e.orientation?"vertical":"horizontal",s=e.onchange,c=e.ondrag,"number"==typeof e.value&&(v=pe(e.value,m,g)),h=!e.relative,f=e.factor&&e.factor[0]||4,p=e.factor&&e.factor[1]||1}return{oncreate:({attrs:e,dom:l})=>{de&&!fe&&(window.addEventListener("touchmove",(function(){})),fe=!0),j(e),t=l,n=t.querySelector(".mithril-range-bar"),a=n.querySelector(".mithril-range-bar-0"),o=n.querySelector(".mithril-range-bar-1"),i=n.querySelector(".mithril-range-handle"),t.addEventListener("mousedown",k),t.addEventListener("touchstart",I),t.addEventListener("keydown",A)},onremove:function(){window.removeEventListener("mousemove",M),window.removeEventListener("mouseup",_),t.removeEventListener("mousedown",k),t.removeEventListener("touchstart",I),t.removeEventListener("touchmove",E),t.removeEventListener("touchend",T),t.removeEventListener("keydown",A)},view:function({attrs:t,children:n}){const a=t.nokey?" nokey":"";j(t),v=me(v,m,g,y);const o={class:"mithril-range "+a+(t.relative?" isrelative ":" ")+(0===v?"atzero":v<0?"belowzero":"overzero")+(null!=t.class?" "+t.class:""),tabIndex:"0",role:"slider","aria-valuemin":String(m),"aria-valuemax":String(g),"aria-valuenow":String(v),"aria-orientation":b};t.id&&(o.id=t.id),t.ariaLabelledby&&(o["aria-labelledby"]=t.ariaLabelledby),t.disabled&&(o.style={pointerEvents:"none"},o["aria-disabled"]="true");const i=L(v),l=L(g-v+m);let r,s,c;return"vertical"===b?(r={top:i},s={height:i},c={height:l}):(r={left:i},s={width:l},c={width:i}),e("div",o,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(v)}))}}}const ve=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,o=Math.min(Math.max(a,n),t.maxMultiplier);t.curMultiplier!==o&&(t.curMultiplier=o,e.redraw())},ye=e=>e.value>=e.curMax*e.curMultiplier*.9&&e.maxMultiplier>1&&e.curMultiplier<=e.maxMultiplier-1?(e.curMultiplier++,!0):e.curMin<0?be(e):void 0,be=e=>{if(e.value<=e.curMin*e.curMultiplier*.9&&e.maxMultiplier>1&&e.curMultiplier<=e.maxMultiplier-1)return e.curMultiplier++,!0},we={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,o=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:o}),ye(n)||(clearTimeout(n.timer),n.timer=setTimeout(ve,1e3,n)),e.redraw()):n.initial!==o&&(Object.assign(n,{value:o,initial:o}),clearTimeout(he),he=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(ge,{onchange:a=>{n.value=a;!ye(n)&&n.curMultiplier>1&&(clearTimeout(n.timer),n.timer=setTimeout(ve,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):"")])])},xe={view:({attrs:t,state:n})=>e(we,{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)})},Ce={setTransState:()=>{console.warn("MainState: Not Implemented setTransState")},WIDGETS:{}};function ke(e){Object.assign(Ce,e)}function Me(e){return"string"==typeof e?Ce.WIDGETS[e]:e}const _e=t((({attrs:t})=>{const{icon:n,onchange:a,icons:o,state:i}=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:()=>Ce.setTransState("emoji",a,{icons:o})})}));function Ie(e,t){m.route(document.getElementById(e),t.default||"/",t.routes)}const Ee=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)))),Te=(t,n,a,o,i,l)=>{const r=t[n];Y("Choose an action for this preset",a&&l?["DELETE","RENAME","UPDATE","CANCEL"]:["DELETE","RENAME","CANCEL"]).then((i=>{0===i?(t.splice(n,1),o&&o(n),e.redraw()):1===i?setTimeout((()=>U("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===i&&a(!1,n)}))},Ae=t((({attrs:t,children:n})=>{const{title:a,noUpdate:o,items:i=[],current:r,altIndex:s,onEdit:c,emptyText:u,onAdd:d,onSelect:h,onDelete:f,addText:p="Add New",unconfirm:m,buttonClass:g,themeIcon:v,themeTitle:y}=t,b=[...i.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?(i.splice(n,1),f&&f(n),e.redraw()):Te(i,n,d,f,0,!o):h&&h(t,n,a.metaKey,a.shiftKey)}},(t.title||t.name||t.text||String(1+n)).substring(0,32)))),...!i.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"+(i.length?" some":" empty"),onClick:e=>d(e.ctrlKey||e.metaKey),text:i?.length?"":p})]:[],...!v&&t.currentWidget&&r>=0&&i[r]&&t.currentWidget(i[r],r)||[],...!v&&t.altCurrentWidget&&s>=0&&i[s]&&t.altCurrentWidget(i[s],r)||[],...n];return v?[e(Ee,{title:y,containerClass:t.containerClass,themeClass:t.themeClass,icon:v},b),...t.currentWidget&&r>=0&&i[r]&&t.currentWidget(i[r],r)||[],...t.altCurrentWidget&&s>=0&&i[s]&&t.altCurrentWidget(i[s],s)||[]]:b})),Ne=t((({attrs:t,children:n})=>{const{nocontainer:a,emptyText:o,title:i,addTitle:r,items:s,currentIndex:c,altIndex:u,onEdit:d,onDelta:h,onSelect:f,onAdd:p,addText:m,icon:g,buttonClass:v}=t,y=s&&s.length<=(t.max||15)||!h?e(Ae,{addTitle:r,emptyText:o,title:i,items:s,current:c,altIndex:u,onSelect:f,onAdd:p,onEdit:d,addText:m,icon:g,buttonClass:v},n):[e(l,{tabIndex:-1,icon:"caret-right",class:"unitheightsmall grows marg-1 no-marg-left",onClick:()=>h(-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:()=>h(1)}),...p?[e(l,{tabIndex:-1,icon:t.icon||"plus",class:"unitheightsmall marg-1 marg-v",onClick:()=>p()})]:[]];return a?y:s.length||!p?e(".flexrow.wrap.max.minusbar",{class:(t.dynclass?t.dynclass()+" ":"")+t.class},y):[]})),Se=t((({attrs:t})=>{if(!t.layer.items)return[];const{global:n,layer:a,remoteFirst:o,isCue:i}=t,{storyWrapper:l}=n,{id:r,items:s}=a,c=l.getTickerIndex(r,o),u=o?l.getTickerIndex(r,!1):void 0;return e(Ne,{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,o,i),onSelect:(e,t,n)=>l.setTickerIndex(a,t,n,o,i)})})),Le=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 De(e,t,n){return t?t[e]||n||e:n||e}const je={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",De(t.header,t.headers))]:[],e(".pad-2",De(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 Oe=!1;function ze(){Oe=!0}var Pe={taint:ze,taintRedraw:function(){const t=Oe;Oe=!0,t&&e.redraw()},isTainted:function(){return Oe},untaint:function(){Oe=!1,e.redraw()}};const Ke=-1!==navigator.userAgent.indexOf("Windows NT")?"\\":"/",Be=e=>e.join(Ke),Fe=(e,t)=>["file://",...e.split("\\"),...t].join("/");function Re(e){return new Promise(((t,n)=>{const a=new FileReader;a.onload=function(e){const a=e.target.result,o=new Image;o.onerror=function(t){e.target.value="",n(t)},o.onload=function(){t(o)},o.src=a},a.readAsDataURL(e)}))}const $e=t((({attrs:t})=>e(l,{class:"unitsizesmall rectbutton ohidden",icon:"images",onClick:()=>Ce.setTransState("image",void 0,{giphyQuery:"frame",onOverride:(n,a)=>{const o=a?t.parse?t.parse(a):a:void 0;o&&(t.onImage(o),e.redraw())}})}))),He=t((t=>{const{attrs:n}=t;return e("button.selectfile.relative",{...n.class&&{class:n.class}},[e(o,{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="")}})])})),Ve=t((({attrs:t})=>e(He,{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}])}))),Ye=t((({attrs:t})=>e(Ve,{class:t.class,icon:t.icon,text:t.text,accept:t.accept,iconClass:t.iconClass,textClass:t.textClass,onImageFiles:e=>{e.length&&Re(e[0].file).then(t.onImage).catch((e=>{t.onError&&t.onError(e)}))}}))),qe=t((({attrs:t})=>e(Ve,{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 o=a.target.result;o?e({name:n.name,url:o}):t(new Error("no data"))},a.readAsDataURL(n)}))).then(t.onImageUrl).catch((e=>{t.onError&&t.onError(e)}))}}))),We=t((({attrs:t})=>{const{fontFamily:n,state:a,onchange:o}=t;return e(".flexrow.grows.fontgroup",{class:t.class},[...n&&!t.nodelete?[e(l,{class:"scaff-right unitsize",icon:"trash",onClick:()=>{o(void 0),Ce.setTransState()}})]:[],e(l,{class:"grows transp font-125 ohidden",text:n||"default",icon:"font",onClick:()=>Ce.setTransState("fontsel",(e=>{o(e),Ce.setTransState()}))})])})),Ge={},Ue="needsUpdate",Xe="_rebuild_children",Ze=t((({children:e})=>[e])),Je=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)}))),Qe=t((({attrs:t})=>e(xe,{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"}))),et=t((({attrs:t,children:n})=>e(".flexrow.wrap",{class:t.class},t.source?Object.keys(t.source).map((n=>e(Me(t.widget)||Je,{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):[]))),tt=t((({attrs:t,state:n,children:a})=>[...t.keys.length>1?[e(".flexrow.wrap",{class:t.class},t.source?t.keys.map((a=>e(Je,{text:a,checked:n.current===a,class:t.selectorButtonClass||"transp",hint:t.hint,onchange:()=>{n.current=a,e.redraw()}}))):[])]:[],...n.current?[e(et,{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?Me(t.widget):void 0,max:t.max,mul:t.mul},a)]:[]]),(({attrs:e,state:t})=>{t.current=e.keys[0]})),nt=t((({attrs:t,children:n})=>{const a=t.source&&Array.isArray(t.source),o=a?t.source.map(((e,t)=>t)):t.keys||t.source&&Object.keys(t.source),i=()=>o&&o.length||t.add?[...t.cardie||t.noseparator?[]:[e(g,{class:t.separatorClass,text:t.caption})],e(".flexrow.wrap",{class:t.class},(t.source?o.map((n=>e(Me(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,o)=>{!e&&t.add&&o.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:()=>{U(`Enter new ${t.add} name`,"",`type ${t.add} name`,(n=>{n&&(n=F(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(f,{nofold:!1,size:1,cols:!1,title:t.caption,cardid:t.cardie,class:"relative grows"+(t.cardieClass?" "+t.cardieClass:""),expandedView:i}):i()})),at=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)}}))),ot=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((()=>{}))})),it=t((({attrs:t,state:n,children:a})=>{let i=0;const{meta:s,crit:c={},when:u={},sizes:h={},metaKeys:p=Object.keys(t.meta),global:m,parameters:y,auxParameters:b,clone:w,onchange:x,itemClass:M,wrapper:_,empty:I,name:T}=t,A=p.map((a=>{const r=s[a],p=r.when||(u?u[a]:void 0),T="object"==typeof r&&!r.length,A=T&&(r.auxTarget&&!r.target||t.auxTargetIsDefault)?b:y,N=T&&(r.target||r.forTarget)?A[r.target||A.forTarget]:A;if(!y||p&&!((e,t,n,a)=>"function"==typeof e?e(t,n):"string"==typeof e?!!a[e]:e.key?e.value?e.not?a[e.key]!==e.value:a[e.key]==e.value:e.not?!a[e.key]:!!a[e.key]:!!a[e.key])(p,y,b,N))return[];const S=T&&r.widget,L=!!T&&(r.update||c[a]),D=T&&r.key||a,j=T&&"group"===r.type,O=T&&"groupArray"===r.type,z="string"==typeof r||T&&"text"===r.type,P=T&&"json"===r.type,K="boolean"==typeof r||T&&"boolean"===r.type,B=T&&"number"===r.type,F=T&&!Number.isNaN(r.min),R=T&&"action"===r.type,$=T&&(r.choices||r.choose||r.chooseKey),H=T&&"keytoggle"===r.type,Y=T&&"iterakey"===r.type,G=T&&(r.options||r.optionsKey),U=T&&r.items,X=T&&"color"===r.type,Z=T&&"plusminus"===r.type,J=T&&"separator"===r.type,Q=T&&"static"===r.type,ee=T&&"emoji"===r.type,ne=T&&"font"===r.type,ae=T&&"notice"===r.type,oe=T&&"asset"===r.type,ie=J?"col-12":"col-"+(r.size||h[a]||4);if(!N)return[];const re=T&&r.altMeta&&s[r.altMeta],se=r.idx,ue=se>=0,de=T&&r.get?r.get(N,b,y):ue?N[D]?N[D][se]:0:N[D],he=re&&r.altMeta,fe=re&&re.key,pe=T&&r.set?e=>r.set(N,e&&w&&"object"==typeof e?W(e):e,b,y,se):(e,t,n)=>{const a=n||D,o=ue?se:n||D;let i=ue?N[a]:N;return se>=0&&!i&&(N[a]=i=[0,0,0]),i[o]=e&&w&&"object"==typeof e?W(e):e},me=t.onbeforechange?(e,n,o,i)=>!!t.onbeforechange(o||a,e,i||r)&&(pe(e,void 0,o),!0):pe;return i++,e(".grows.flexrow."+ie,{class:"mk_"+a+(T&&r.type?" ptype_"+r.type:"")+(z?"witharia":"")+(r.itemClass||M?" "+(r.itemClass||M):""),"aria-label":a},O?Array.isArray(de)?de.map(((n,a)=>r.small?e(it,{meta:r.items,crit:{},when:{},sizes:{},parameters:n,auxParameters:b,arrayInfo:{source:de,item:N,index:a},global:m,clone:w,onchange:x,itemClass:M,wrapper:_,empty:I,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:!1,AssetButton:t.AssetButton,CodeMirror:t.CodeMirror}):e(f,{class:"relative grows "+(r.class||"pad-h emby w-max")+(r.dynClass?" "+r.dynClass(y,b,a):""),title:r.dynTitle?r.dynTitle(y,b,a):r.title+" "+(a+1)+(n.title?" - "+n.title:""),cardid:r.cardid+"-"+a,nofold:!1,size:r.margin||0,expandedView:()=>[e(it,{meta:r.items,crit:{},when:{},sizes:{},parameters:n,auxParameters:b,global:m,clone:w,onchange:x,itemClass:M,wrapper:_,empty:I,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:!1,AssetButton:t.AssetButton,CodeMirror:t.CodeMirror})],titleExpended:r.titleExpanded||r.hint,titleCollapsed:r.titleCollapsed||r.hint}))).concat(r.addAction?[e(l,{...r.addAction,onClick:t=>{r.addAction.onClick?r.addAction.onClick(t,y,b):r.addAction.template&&de.push(W(r.addAction.template)),e.redraw()}})]:[]):[]:j?[e(f,{class:"relative grows "+(r.class||"emby w-max")+(r.dynClass?" "+r.dynClass(y,b):""),title:r.dynTitle?r.dynTitle(y,b):r.title,cardid:r.cardid,nofold:!1,size:r.margin||0,expandedView:()=>[e(it,{meta:r.items,crit:{},when:{},sizes:{},parameters:y,auxParameters:b,global:m,clone:w,onchange:x,itemClass:M,wrapper:_,empty:I,itemsDict:t.itemsDict,layer:t.layer,onAction:t.onAction,optionsDict:t.optionsDict,play:t.play,auxTargetIsDefault:t.auxTargetIsDefault,AssetButton:t.AssetButton,CodeMirror:t.CodeMirror}),...r.addAction?[e(l,{...r.addAction,onClick:t=>{r.addAction.onClick(t,y,b),e.redraw()}})]:[]],titleExpended:r.titleExpanded||r.hint,titleCollapsed:r.titleCollapsed||r.hint})]:J?[e(g,{class:r.class||"mini",text:"string"==typeof r.title?r.title:r.label||a})]:Q?r.icon?[e(o,{icon:r.icon,class:r.iconClass}),e(".innertext",{class:r.class,title:r.hint},de)]:[e(".innertext",{class:r.class,title:r.hint},de)]:S?[e(Me(r.widget),"function"==typeof r.attrs?r.attrs(de,n,((e,t)=>x(e||L,t?y:N,a,void 0,r)),m,t,N):r.attrs,r.children?r.children(de,n,((e,t)=>{x(e||L,t?y:N,a,void 0,r)}),m,t,N):[])]:Z?[e(ce,{max:r.max,min:r.min,title:r.title,label:r.label,value:de,onchange:e=>{me(e),x(L,N,a,void 0,r)}})]:z||P&&!t.CodeMirror?[e(C,{containerClass:"grows",class:r.inputClass,value:de,label:r.label,hint:T?r.hint:r,title:r.title,maxlength:T&&r.maxlength||256,...r.final&&{oninput:()=>{}},multi:P||r.multi,alwaysmulti:P||r.alwaysmulti,onchange:e=>{me(e),x(L,N,a,void 0,r)}})]:P?[e(Ze,[e(t.CodeMirror,{key:y.id,doc:de,schema:r.schema,templates:r.templates,hint:r.dynamicHint?r.dynamicHint(N):r.hint,empty:r.empty,onSave:e=>{null!==e&&(me(e||""),x(L,N,a,void 0,r),e||d.add(r.hint+" cleared"))}})])]:B?[e(C,{containerClass:"grows",class:r.inputClass,value:r.step>0&&r.step<1||r.float?void 0!==de?(parseFloat(de)||0).toFixed(3):"":de,type:"text",label:r.label,hint:T?r.hint:r,title:r.title,subtype:"number",...r.final&&{oninput:()=>{}},onchange:e=>{let t=r.step>0&&r.step<1||r.float,{min:n,max:o}=r;if(void 0===e)me(void 0);else{let a=t?parseFloat(e):parseInt(e,10);isNaN(a)?a=void 0:(a<n&&(a=n),a>o&&(a=o)),me(a)}x(L,N,a,void 0,r)}})]:ae?[e(k,r)]:oe?t.AssetButton?[e(t.AssetButton,{global:m,value:de,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:y,auxParameters:b,onchange:(e,n)=>{n&&n.shiftKey&&t.onShiftPress?t.onShiftPress(a,N,e):(void 0===e&&(e=r.nullValue||void 0),me(e),x(L,N,a,void 0,r))}})]:[e(l,{icon:r.icon,title:r.title,class:"unitheight",text:"No Asset Module"})]:ee?[e(_e,{class:"grows "+(r.class||"scaff scaff-b1 unitheight font-200"),icon:{glyph:de},icons:!1,onchange:e=>{me(e),x(L,N,a,void 0,r)}})]:ne?[e(We,{class:"grows "+(r.class||"scaff-right unitheight"),fontFamily:de,nodelete:r.nodelete,onchange:e=>{if(r.nodelete&&!e)return;me(e);const t=r.target||r.forTarget?y[r.target||r.forTarget]:y;x(e?L:"delete",t,a,!e,r)}})]:X?[e(le,{class:"grows "+(r.class||"unitheight")+(fe?" withalt":""),color:de,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(),t.a()]);me(n),x(L,N,a,void 0,r)},...fe&&{style:{"--data-altval":((N[fe]??re.min)-re.min)/(re.max-re.min)*100+"%"}}},re?[e(xe,{auto0:re.auto0,min:re.min,max:re.max,step:re.step||.1,...re.mul&&{multiplier:re.mul},class:"col-11 grows innerlabel order-first",title:re.title,value:N[fe]??re.min,onchange:e=>{me(e,void 0,fe,re),x(c[he],N,he,void 0,r)}})]:void 0)]:K?[e(T&&r.toggle?r.states?at:Je:q,{class:"grows "+(r.class||"unitheight"),text:T?r.title||r.label:a,icon:T?r.icon:void 0,noclass:r.noclass,subline:r.subline,checked:de,title:r.hint,hint:r.hint,inverted:T&&r.inverted,states:r.states,iconClass:r.iconClass,onchange:e=>{me(r.states?e:!!e),x(L,N,a,void 0,r)}})]:R?[e(l,{class:"grows "+(r.class||"accentbutton unitheight"),text:""===r.label?null:r.parse?r.parse(N,b):r.label||r.text||a,icon:r.icon,title:r.title||r.hint,onClick:e=>{const n=()=>{r.onClick?r.onClick(a,e,N,b,m,t):t.onAction&&t.onAction(a,e,A,t.arrayInfo)};r.confirm?V(r.confirm,n):n()}})]:H?[e(r.keys?tt:et,{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:de,onchange:()=>x(L,N,a,void 0,r),...r.customWidget||{}})]:Y?[e(nt,{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:de,onchange:()=>x(L,N,a,void 0,r),widget:r.keyWidget,keys:r.keys,add:r.add,targetParameters:N,auxParameters:b,empty:r.empty})]:$?[e(v,{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:de,title:r.title,onchange:e=>{let{value:t}=e;t||t>=0?(r.toggle&&t===de&&(t=!t),me(t),x(L,N,a,void 0,r)):(me(void 0),x(L,N,a,void 0,r)),ze()}})]:G?[e(te,{class:r.containerClass||"scaff scaff-b1",buttonClass:r.class||"unitheightsmall scaff-left",closeClass:r.buttonClass||void 0,textClass:r.textClass||"",locked:r.locked,value:de,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,label:r.label,title:r.question,itemsKey:"function"==typeof r.optionsKey?()=>r.optionsKey(N):r.optionsKey,items:r.options||t.optionsDict,removeIcon:r.removeIcon,nodelete:r.nodelete,onchange:(e,t)=>{t?.shiftKey?r.shiftPress&&r.shiftPress(N,b):("string"==typeof e&&(e=e.trim()),e?(me(r.values?r.values[e]:e,r.clone),x(L,N,a,!1,r)):(me(r.nullValue||void 0),x(L,N,a,!0,r)),ze())}})]:U?[e(E,{class:"grows scaff scaff-b1 "+(r.class||"unitheight"),value:de,emptyText:r.emptyText||"off",icon:r.icon,title:r.title,items:r.items,textClass:r.textClass||"",onchange:e=>{"string"==typeof e&&(e=e.trim()),e?(me(e),x(L,N,a,void 0,r)):(me(void 0),x(L,N,a,void 0,r)),ze()}})]:F?[e(xe,{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:parseFloat(de)??r??r.min,parser:r.parser,onchange:e=>{me(e),x(L,N,a,void 0,r)}})]:[e(xe,{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(de)||r[0],onchange:e=>{me(e),x(L,N,a,void 0,r)}})])}));return i||a.length?_?_(A.concat(a)):A.concat(a):I&&!a.length?e(r,I):[]})),lt=t((({attrs:t,children:n})=>{const{busy:a,parameters:o,auxParameters:i,cardid:l,size:s,index:c,titleWidget:u,parametersTitle:d,parametersBody:h,rootUpdate:p,global:m,layer:g,tableChildren:v,cols:y,onLayerReset:b,onAction:w,nofold:x,bodyClass:C,titleAction:k,AssetButton:M,CodeMirror:_,optionsDict:I}=t;return e(f,{busy:a,nofold:x,size:s,cols:y,title:h.titleCollapsed||h.title,titleCollapsed:h.titleCollapsed||h.title,titleExpanded:h.titleExpanded||h.title,action:k,expandedClass:t.expandedClass,onShiftOpen:()=>{},titleWidget:u||it,titleAttrs:{...d,onShiftPress:t.onShiftPress,confirm:t.confirmTitle,itemClass:"",parameters:o,auxParameters:i,clone:!0,global:m,layer:g,AssetButton:M,CodeMirror:_,optionsDict:I,onAction:w,onchange:(n,a,l,r,s)=>{ze();const c=s.rootUpdate||p;if(s?.onchange)s.onchange(n,a,o);else if(n){if("none"===c)return;"both"===c&&i?a[Ue]=i[Ue]=n:"parent"===c&&i?(a[Ue]=n,i[Ue]=!0):"target"===c&&a!==o?(a[Ue]=n,o[Ue]=!0):2===c?o[Ue]=n:1===c?a&&(a[Ue]=n):"string"==typeof c&&"both"!==c&&"parent"!==c&&"target"!==c?o[c]?(o[c][Ue]=n,o[Ue]=!0):o[Ue]=Xe:-1!==c&&a&&(a[Ue]=n)}else b&&b();t.onTitleChange&&t.onTitleChange(n,a,l,r),e.redraw()}},cardid:l,class:"withbottommargin relative"+(t.class?" "+t.class:""),bodyClass:C,expandedView:()=>[...h.meta?[e(it,{...h,confirm:t.confirmBody,itemClass:"pad-1",parameters:o,auxParameters:i,clone:!0,global:m,layer:g,index:c,play:t.play,itemsDict:t.itemsDict,optionsDict:I,AssetButton:M,CodeMirror:_,onAction:w,onchange:(n,a,l,r,s,c)=>{const u=s.rootUpdate||p;if(ze(),s?.onchange)s.onchange(n,a,o);else if(n){if("none"===u)return;"both"===u&&i?a[Ue]=i[Ue]=n:"parent"===u&&i?(a[Ue]=n,i[Ue]=!0):"target"===u&&a!==o?(a[Ue]=n,o[Ue]=!0):2===u?o[Ue]=n:1===u?a&&(a[Ue]=n):"string"==typeof u&&"both"!==u&&"parent"!==u&&"target"!==u?o[u]?(o[u][Ue]=n,o[Ue]=!0):o[Ue]=Xe:-1!==u&&a&&(a[Ue]=n)}else b&&b();t.onChange&&t.onChange(n,l,a,i,r,s,c,t),e.redraw()}},v)]:h.emptyMeta?[e(r,h.emptyMeta)]:[],...n||[]],collapsedView:t.collapsedView})})),rt=t((({attrs:t,state:n,children:a})=>{const{layer:o,property:i,colorProperty:r}=t,s=Ge[i],c=o[i],u=null!=c,d=u&&"object"==typeof c&&null!==c,h=d&&c,f=h&&h.exp,[,p]=f||[],m=h&&p&&Object.keys(p),g=d&&c?c.title:c,v=m&&m.length,y=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?Ce.setTransState("image",void 0,{giphyQuery:"frame",onOverride:(t,n)=>{const a=n&&s.images(n);a&&(o[i]=W(a),ze(),e.redraw())}}):(n.chooser=!n.chooser,e.redraw())}}),...o[i]?[e(l,{class:"clearfont unitheightsmall bg-accent",text:"X",onClick:()=>{delete o[i],ze(),e.redraw()}})]:s.images&&!g?[e(l,{class:"unitsizesmall rectbutton ohidden",icon:"images",onClick:()=>Ce.setTransState("image",void 0,{giphyQuery:"frame",onOverride:(t,n)=>{const a=n&&s.images(n);a&&(o[i]=W(a),ze(),e.redraw())}})})]:[]])]:[e(C,{class:"withicon-2"+(u?" has":"")+(t.class?" "+t.class:""),value:o[i]||"",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(),o[i]=t,ze(),e.redraw()}})],...v||y?[e(".flexrow.wrap.paramgroup",[...v?[e(it,{meta:p,metaKeys:m,parameters:h,onchange:()=>{delete c.calc,ze(),e.redraw()},AssetButton:t.AssetButton,CodeMirror:t.CodeMirror})]:[],...y?[e(".flexbreak"),e(xe,{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,ze(),e.redraw()}}),e(xe,{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,ze(),e.redraw()}})]:[]])]:[],...n.chooser&&s?[e(ot,{entity:t.entity,template:s,type:o.type,layer:o,onClick:t=>{n.chooser=!1,o[i]="object"==typeof t.value?W(t.value):t.value,t.color&&r&&(o[r]=t.color),ze(),e.redraw()}})]:[],...u?a:[]])}));export{i as Button,v as ButtonChoiceWidget,y as ButtonMultipleChoiceWidget,l as ButtonNew,f as CardieWidget,se as ColorJoePack,le as ColorJoeWidget,te as ComboPrompt,E as ComboWidget,$ as ConfirmPromise,Se as CoolContentTicker,Ne as CoolGenericTicker,je as CoolerEmpty,r as Empty,Le as EmptyButton,He as FileSelectButton,Ae as GenericButtonTicker,o as Icon,qe as ImageDataButton,Ye as ImageProcessButton,Ve as ImageSelectButton,C as InputWidget,Ce as MainState,ke as MainStateImplement,$e as MediaSelectButton,et as MultiToggleWidget,k as NoticeWidget,d as Notification,H as OverflowMenu,ee as OverflowUtils,lt as ParameterCardie,it as ParameterTable,ce as PlusMinus,Qe as RangeToggleWidget,xe as RangeWidget,c as Selector,g as Separator,_e as SmileysButton,q as SwitchWidget,rt as TemplatedInputWidget,Ee as ThematicWrapper,ue as TitleBarWidget,R as Tokenizer,S as clearModal,W as clone,V as confirm,Y as confirmPromise,p as defineWidget,Be as makeLocalPath,Fe as makeLocalUrl,Te as optionsPrompt,N as popupMessage,Re as processImage,Ie as startApp,Pe 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.1.
|
|
4
|
+
"version": "4.1.3",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"module": "dist/index.js",
|