@nebularstreams/libmui 0.1.23 → 2.0.1
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/libui.css +1 -0
- package/dist/libui.esm.js +1 -1
- package/dist/libui.esm.js.map +1 -1
- package/package.json +7 -5
- package/src/index.js +34 -0
package/dist/libui.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
body{background:#000 no-repeat 50%;background-size:cover;box-sizing:border-box;font-family:sans-serif;margin:0;overflow:hidden;padding:0}body.error:after{background:rgba(80,0,0,.8);border:1px solid rgba(255,25,25,.5);border-radius:1rem;bottom:0;box-sizing:border-box;color:#fff;content:attr(data-error);font-size:1.5rem;left:0;margin:2rem;padding:2rem;position:absolute;text-align:center;width:calc(100% - 4rem)}body.loading .popper,body.loading .ui-button,body.loading canvas{opacity:0}body.loading .progressbar{display:block}canvas{height:100%!important;position:absolute;width:100%!important}.progressbar{bottom:1rem;display:none;height:.5rem;left:1rem;position:absolute;right:1rem}.progressbar>div{background:#fff;border-radius:1rem;height:100%;left:0;position:absolute;top:0}.h-100{height:-webkit-fill-available}.w-100{width:-webkit-fill-available}.relative{position:relative}.absolute{position:absolute}.unitheight{height:2.54rem}.scaff-bottom{border-bottom:1px solid var(--border-color)}.cardiebody{align-items:self-start;display:flex;flex-direction:row}*{box-sizing:border-box}.pad-0{padding:0}.pad-1{padding:.25rem}.pad-2{padding:.5rem}.pad-3{padding:.75rem}.pad-4{padding:1rem}.pad-5{padding:1.25rem}.pad-6{padding:1.5rem}.pad-7{padding:1.75rem}.pad-8{padding:2rem}.pad-h{padding-bottom:0!important;padding-top:0!important}.pad-v{padding-left:0!important;padding-right:0!important}.marg-0{margin:0}.marg-1{margin:.25rem}.marg-2{margin:.5rem}.marg-3{margin:.75rem}.marg-4{margin:1rem}.marg-5{margin:1.25rem}.marg-6{margin:1.5rem}.marg-7{margin:1.75rem}.marg-8{margin:2rem}.marg-t{margin-bottom:0!important}.marg-b,.marg-t{margin-left:0!important;margin-right:0!important}.marg-b{margin-top:0!important}.marg-l{margin-right:0!important}.marg-l,.marg-r{margin-bottom:0!important;margin-top:0!important}.marg-r{margin-left:0!important}.marg-h{margin-bottom:0!important;margin-top:0!important}.marg-v{margin-left:0!important;margin-right:0!important}.col-1{width:8.33333%}.col-2{width:16.66667%}.col-3{width:25%}.col-4{width:33.33333%}.col-5{width:41.66667%}.col-6{width:50%}.col-7{width:58.33333%}.col-8{width:66.66667%}.col-9{width:75%}.col-10{width:83.33333%}.col-11{width:91.66667%}.col-12{width:100%}.al-right{text-align:right}.al-center{text-align:center}.no-marg-top{margin-top:0!important}.no-marg-bottom{margin-bottom:0!important}.no-marg-right{margin-right:0!important}.no-marg-left{margin-left:0!important}.no-pad-top{padding-top:0!important}.no-pad-bottom{padding-bottom:0!important}.no-pad-left{padding-left:0!important}.no-pad-right{padding-right:0!important}.order-first{order:-1}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.to-top{bottom:auto!important;top:0}.to-bottom{bottom:0;top:auto!important}.to-left{left:0;right:auto!important}.to-right{left:auto!important;right:0}.flexrow{display:flex;flex-direction:row}.flexcol{display:flex;flex-direction:column}.flexcenter{align-self:center;justify-content:center}.flexaround{justify-content:space-around}.flexeven{justify-content:space-evenly}.flex-al-center{align-items:center}.flex-al-end{align-items:flex-end}.flex-sal-center{align-self:center}.flex-sal-end{align-self:flex-end}.wrap{flex-wrap:wrap}.grows{flex-grow:1}.growsheight{flex-grow:1;height:50%}.noshrink{flex-shrink:0}.flexbreak{flex-basis:100%;height:0}.flexrow.rev{flex-direction:row-reverse}.flexcol.rev{flex-direction:column-reverse}.fullwidth{width:100%}.fullheight{height:100%}.halfwidth{width:50%}.halfheight{height:50%}.fitheight{height:fit-content}.fitwidth{width:fit-content}.unitheight{height:var(--unitsize);line-height:var(--unitsize)}.unitwidth{width:var(--unitsize)}.unitsize{height:var(--unitsize)!important;line-height:var(--unitsize)!important;width:var(--unitsize)!important}.unitheightsmall{height:var(--unitsize-small);line-height:var(--unitsize-small)}.unitsizesmall,.unitwidthsmall{width:var(--unitsize-small)}.unitsizesmall{height:var(--unitsize-small);line-height:var(--unitsize-small)}:root{--unitsize-mini:1.25rem;--unitsize-small:2rem;--unitsize:2.54rem}
|
package/dist/libui.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
function e(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var t,n;function r(){if(n)return t;function e(e,t,n,r,a,l){return{tag:e,key:t,attrs:n,children:r,text:a,dom:l,domSize:void 0,state:void 0,events:void 0,instance:void 0}}return n=1,e.normalize=function(t){return Array.isArray(t)?e("[",void 0,void 0,e.normalizeChildren(t),void 0,void 0):null==t||"boolean"==typeof t?null:"object"==typeof t?t:e("#",void 0,void 0,String(t),void 0,void 0)},e.normalizeChildren=function(t){var n=[];if(t.length){for(var r=null!=t[0]&&null!=t[0].key,a=1;a<t.length;a++)if((null!=t[a]&&null!=t[a].key)!==r)throw new TypeError(!r||null==t[a]&&"boolean"!=typeof t[a]?"In fragments, vnodes must either all have keys or none have keys.":"In fragments, vnodes must either all have keys or none have keys. You may wish to consider using an explicit keyed empty fragment, m.fragment({key: ...}), instead of a hole.");for(a=0;a<t.length;a++)n[a]=e.normalize(t[a])}return n},t=e}var a,l,o=r(),i=function(){var e,t=arguments[this],n=this+1;if(null==t?t={}:("object"!=typeof t||null!=t.tag||Array.isArray(t))&&(t={},n=this),arguments.length===n+1)e=arguments[n],Array.isArray(e)||(e=[e]);else for(e=[];n<arguments.length;)e.push(arguments[n++]);return o("",t.key,t,e)};function s(){return l?a:(l=1,a={}.hasOwnProperty)}var c=r(),u=i,d=s(),f=/(?:(^|#|\.)([^#\.\[\]]+))|(\[(.+?)(?:\s*=\s*("|'|)((?:\\["'\]]|.)*?)\5)?\])/g,p=Object.create(null);function h(e){for(var t,n="div",r=[],a={};t=f.exec(e);){var l=t[1],o=t[2];if(""===l&&""!==o)n=o;else if("#"===l)a.id=o;else if("."===l)r.push(o);else if("["===t[3][0]){var i=t[6];i&&(i=i.replace(/\\(["'])/g,"$1").replace(/\\\\/g,"\\")),"class"===t[4]?r.push(i):a[t[4]]=""===i?i:i||!0}}return r.length>0&&(a.className=r.join(" ")),function(e){for(var t in e)if(d.call(e,t))return!1;return!0}(a)&&(a=null),p[e]={tag:n,attrs:a}}var v=function(e){if(null==e||"string"!=typeof e&&"function"!=typeof e&&"function"!=typeof e.view)throw Error("The selector must be either a string or a component.");var t=u.apply(1,arguments);return"string"==typeof e&&(t.children=c.normalizeChildren(t.children),"["!==e)?function(e,t){var n=t.attrs,r=d.call(n,"class"),a=r?n.class:n.className;return t.tag=e.tag,null!=e.attrs?(n=Object.assign({},e.attrs,n),null==a&&null==e.attrs.className||(n.className=null!=a?null!=e.attrs.className?String(e.attrs.className)+" "+String(a):a:null!=e.attrs.className?e.attrs.className:null)):null!=a&&(n.className=a),r&&(n.class=null),"input"===e.tag&&d.call(n,"type")&&(n=Object.assign({type:n.type},n)),t.attrs=n,t}(p[e]||h(e),t):(t.tag=e,t)},g=r(),y=r(),w=i,b=v;b.trust=function(e){return null==e&&(e=""),g("<",void 0,void 0,e,void 0,void 0)},b.fragment=function(){var e=w.apply(0,arguments);return e.tag="[",e.children=y.normalizeChildren(e.children),e};var x=b,k=new WeakMap;var C,E,S,M,I={delayedRemoval:k,domFor:function*(e,t={}){var n=e.dom,r=e.domSize,a=t.generation;if(null!=n)do{var l=n.nextSibling;k.get(n)===a&&(yield n,r--),n=l}while(r)}};function T(){if(E)return C;E=1;var e=r(),t=I.delayedRemoval,n=I.domFor;return C=function(){var r,a,l={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"};function o(e){return e.ownerDocument}function i(e){return e.attrs&&e.attrs.xmlns||l[e.tag]}function s(e,t){if(e.state!==t)throw new Error("'vnode.state' must not be modified.")}function c(e){var t=e.state;try{return this.apply(t,arguments)}finally{s(e,t)}}function u(e){try{return o(e).activeElement}catch(e){return null}}function d(e,t,n,r,a,l,o){for(var i=n;i<r;i++){var s=t[i];null!=s&&f(e,s,a,o,l)}}function f(t,n,r,a,l){var s=n.tag;if("string"==typeof s)switch(n.state={},null!=n.attrs&&P(n.attrs,n,r),s){case"#":!function(e,t,n){t.dom=o(e).createTextNode(t.children),k(e,t.dom,n)}(t,n,l);break;case"<":p(t,n,a,l);break;case"[":!function(e,t,n,r,a){var l=o(e).createDocumentFragment();if(null!=t.children){var i=t.children;d(l,i,0,i.length,n,null,r)}t.dom=l.firstChild,t.domSize=l.childNodes.length,k(e,l,a)}(t,n,r,a,l);break;default:!function(e,t,n,r,a){var l=t.tag,s=t.attrs,c=s&&s.is;r=i(t)||r;var u=r?c?o(e).createElementNS(r,l,{is:c}):o(e).createElementNS(r,l):c?o(e).createElement(l,{is:c}):o(e).createElement(l);t.dom=u,null!=s&&function(e,t,n){for(var r in t)T(e,r,null,t[r],n)}(t,s,r);if(k(e,u,a),!C(t)&&null!=t.children){var f=t.children;d(u,f,0,f.length,n,null,r),"select"===t.tag&&null!=s&&function(e,t){if("value"in t)if(null===t.value)-1!==e.dom.selectedIndex&&(e.dom.value=null);else{var n=""+t.value;e.dom.value===n&&-1!==e.dom.selectedIndex||(e.dom.value=n)}"selectedIndex"in t&&T(e,"selectedIndex",null,t.selectedIndex,void 0)}(t,s)}}(t,n,r,a,l)}else!function(t,n,r,a,l){(function(t,n){var r;if("function"==typeof t.tag.view){if(t.state=Object.create(t.tag),null!=(r=t.state.view).$$reentrantLock$$)return;r.$$reentrantLock$$=!0}else{if(t.state=void 0,null!=(r=t.tag).$$reentrantLock$$)return;r.$$reentrantLock$$=!0,t.state=null!=t.tag.prototype&&"function"==typeof t.tag.prototype.view?new t.tag(t):t.tag(t)}P(t.state,t,n),null!=t.attrs&&P(t.attrs,t,n);if(t.instance=e.normalize(c.call(t.state.view,t)),t.instance===t)throw Error("A view cannot return the vnode it received as argument");r.$$reentrantLock$$=null})(n,r),null!=n.instance?(f(t,n.instance,r,a,l),n.dom=n.instance.dom,n.domSize=null!=n.dom?n.instance.domSize:0):n.domSize=0}(t,n,r,a,l)}var m={caption:"table",thead:"table",tbody:"table",tfoot:"table",tr:"tbody",th:"tr",td:"tr",colgroup:"table",col:"colgroup"};function p(e,t,n,r){var a=t.children.match(/^\s*?<(\w+)/im)||[],l=o(e).createElement(m[a[1]]||"div");"http://www.w3.org/2000/svg"===n?(l.innerHTML='<svg xmlns="http://www.w3.org/2000/svg">'+t.children+"</svg>",l=l.firstChild):l.innerHTML=t.children,t.dom=l.firstChild,t.domSize=l.childNodes.length;for(var i,s=o(e).createDocumentFragment();i=l.firstChild;)s.appendChild(i);k(e,s,r)}function h(e,t,n,r,a,l){if(t!==n&&(null!=t||null!=n))if(null==t||0===t.length)d(e,n,0,n.length,r,a,l);else if(null==n||0===n.length)E(e,t,0,t.length);else{var o=null!=t[0]&&null!=t[0].key,i=null!=n[0]&&null!=n[0].key,s=0,c=0;if(!o)for(;c<t.length&&null==t[c];)c++;if(!i)for(;s<n.length&&null==n[s];)s++;if(o!==i)E(e,t,c,t.length),d(e,n,s,n.length,r,a,l);else if(i){for(var u,m,p,h,y,k=t.length-1,C=n.length-1;k>=c&&C>=s&&(p=t[k],h=n[C],p.key===h.key);)p!==h&&v(e,p,h,r,a,l),null!=h.dom&&(a=h.dom),k--,C--;for(;k>=c&&C>=s&&(u=t[c],m=n[s],u.key===m.key);)c++,s++,u!==m&&v(e,u,m,r,b(t,c,a),l);for(;k>=c&&C>=s&&s!==C&&u.key===h.key&&p.key===m.key;)x(e,p,y=b(t,c,a)),p!==m&&v(e,p,m,r,y,l),++s<=--C&&x(e,u,a),u!==h&&v(e,u,h,r,a,l),null!=h.dom&&(a=h.dom),c++,p=t[--k],h=n[C],u=t[c],m=n[s];for(;k>=c&&C>=s&&p.key===h.key;)p!==h&&v(e,p,h,r,a,l),null!=h.dom&&(a=h.dom),C--,p=t[--k],h=n[C];if(s>C)E(e,t,c,k+1);else if(c>k)d(e,n,s,C+1,r,a,l);else{var M,I,T=a,z=C-s+1,L=new Array(z),O=0,N=0,j=2147483647,A=0;for(N=0;N<z;N++)L[N]=-1;for(N=C;N>=s;N--){null==M&&(M=g(t,c,k+1));var P=M[(h=n[N]).key];null!=P&&(j=P<j?P:-1,L[N-s]=P,p=t[P],t[P]=null,p!==h&&v(e,p,h,r,a,l),null!=h.dom&&(a=h.dom),A++)}if(a=T,A!==k-c+1&&E(e,t,c,k+1),0===A)d(e,n,s,C+1,r,a,l);else if(-1===j)for(I=function(e){var t=[0],n=0,r=0,a=0,l=w.length=e.length;for(a=0;a<l;a++)w[a]=e[a];for(a=0;a<l;++a)if(-1!==e[a]){var o=t[t.length-1];if(e[o]<e[a])w[a]=o,t.push(a);else{for(n=0,r=t.length-1;n<r;){var i=(n>>>1)+(r>>>1)+(n&r&1);e[t[i]]<e[a]?n=i+1:r=i}e[a]<e[t[n]]&&(n>0&&(w[a]=t[n-1]),t[n]=a)}}n=t.length,r=t[n-1];for(;n-- >0;)t[n]=r,r=w[r];return w.length=0,t}(L),O=I.length-1,N=C;N>=s;N--)m=n[N],-1===L[N-s]?f(e,m,r,l,a):I[O]===N-s?O--:x(e,m,a),null!=m.dom&&(a=n[N].dom);else for(N=C;N>=s;N--)m=n[N],-1===L[N-s]&&f(e,m,r,l,a),null!=m.dom&&(a=n[N].dom)}}else{var D=t.length<n.length?t.length:n.length;for(s=s<c?s:c;s<D;s++)(u=t[s])===(m=n[s])||null==u&&null==m||(null==u?f(e,m,r,l,b(t,s+1,a)):null==m?S(e,u):v(e,u,m,r,b(t,s+1,a),l));t.length>D&&E(e,t,s,t.length),n.length>D&&d(e,n,s,n.length,r,a,l)}}}function v(t,n,r,a,l,o){var s=n.tag;if(s===r.tag){if(r.state=n.state,r.events=n.events,function(e,t){do{var n;if(null!=e.attrs&&"function"==typeof e.attrs.onbeforeupdate)if(void 0!==(n=c.call(e.attrs.onbeforeupdate,e,t))&&!n)break;if("string"!=typeof e.tag&&"function"==typeof e.state.onbeforeupdate)if(void 0!==(n=c.call(e.state.onbeforeupdate,e,t))&&!n)break;return!1}while(0);return e.dom=t.dom,e.domSize=t.domSize,e.instance=t.instance,e.attrs=t.attrs,e.children=t.children,e.text=t.text,!0}(r,n))return;if("string"==typeof s)switch(null!=r.attrs&&D(r.attrs,r,a),s){case"#":!function(e,t){e.children.toString()!==t.children.toString()&&(e.dom.nodeValue=t.children);t.dom=e.dom}(n,r);break;case"<":!function(e,t,n,r,a){t.children!==n.children?(M(e,t,void 0),p(e,n,r,a)):(n.dom=t.dom,n.domSize=t.domSize)}(t,n,r,o,l);break;case"[":!function(e,t,n,r,a,l){h(e,t.children,n.children,r,a,l);var o=0,i=n.children;if(n.dom=null,null!=i){for(var s=0;s<i.length;s++){var c=i[s];null!=c&&null!=c.dom&&(null==n.dom&&(n.dom=c.dom),o+=c.domSize||1)}1!==o&&(n.domSize=o)}}(t,n,r,a,l,o);break;default:!function(e,t,n,r){var a=t.dom=e.dom;r=i(t)||r,function(e,t,n,r){t&&t===n&&console.warn("Don't reuse attrs object, use new object for every redraw, this will throw in next major");if(null!=n)for(var a in n)T(e,a,t&&t[a],n[a],r);var l;if(null!=t)for(var a in t)null==(l=t[a])||null!=n&&null!=n[a]||z(e,a,l,r)}(t,e.attrs,t.attrs,r),C(t)||h(a,e.children,t.children,n,null,r)}(n,r,a,o)}else!function(t,n,r,a,l,o){if(r.instance=e.normalize(c.call(r.state.view,r)),r.instance===r)throw Error("A view cannot return the vnode it received as argument");D(r.state,r,a),null!=r.attrs&&D(r.attrs,r,a);null!=r.instance?(null==n.instance?f(t,r.instance,a,o,l):v(t,n.instance,r.instance,a,l,o),r.dom=r.instance.dom,r.domSize=r.instance.domSize):null!=n.instance?(S(t,n.instance),r.dom=void 0,r.domSize=0):(r.dom=n.dom,r.domSize=n.domSize)}(t,n,r,a,l,o)}else S(t,n),f(t,r,a,o,l)}function g(e,t,n){for(var r=Object.create(null);t<n;t++){var a=e[t];if(null!=a){var l=a.key;null!=l&&(r[l]=t)}}return r}var y,w=[];function b(e,t,n){for(;t<e.length;t++)if(null!=e[t]&&null!=e[t].dom)return e[t].dom;return n}function x(e,t,r){if(null!=t.dom){var a;if(null==t.domSize)a=t.dom;else for(var l of(a=o(e).createDocumentFragment(),n(t)))a.appendChild(l);k(e,a,r)}}function k(e,t,n){null!=n?e.insertBefore(t,n):e.appendChild(t)}function C(e){if(null==e.attrs||null==e.attrs.contenteditable&&null==e.attrs.contentEditable)return!1;var t=e.children;if(null!=t&&1===t.length&&"<"===t[0].tag){var n=t[0].children;e.dom.innerHTML!==n&&(e.dom.innerHTML=n)}else if(null!=t&&0!==t.length)throw new Error("Child node of a contenteditable must be trusted.");return!0}function E(e,t,n,r){for(var a=n;a<r;a++){var l=t[a];null!=l&&S(e,l)}}function S(e,r){var l,o,i,u,d=0,f=r.state;"string"!=typeof r.tag&&"function"==typeof r.state.onbeforeremove&&(null!=(i=c.call(r.state.onbeforeremove,r))&&"function"==typeof i.then&&(d=1,l=i));r.attrs&&"function"==typeof r.attrs.onbeforeremove&&(null!=(i=c.call(r.attrs.onbeforeremove,r))&&"function"==typeof i.then&&(d|=2,o=i));if(s(r,f),d){for(var m of(u=a,n(r)))t.set(m,u);null!=l&&l.finally((function(){1&d&&((d&=2)||(s(r,f),I(r),M(e,r,u)))})),null!=o&&o.finally((function(){2&d&&((d&=1)||(s(r,f),I(r),M(e,r,u)))}))}else I(r),M(e,r,u)}function M(e,r,a){if(null!=r.dom)if(null==r.domSize)t.get(r.dom)===a&&e.removeChild(r.dom);else for(var l of n(r,{generation:a}))e.removeChild(l)}function I(e){if("string"!=typeof e.tag&&"function"==typeof e.state.onremove&&c.call(e.state.onremove,e),e.attrs&&"function"==typeof e.attrs.onremove&&c.call(e.attrs.onremove,e),"string"!=typeof e.tag)null!=e.instance&&I(e.instance);else{var t=e.children;if(Array.isArray(t))for(var n=0;n<t.length;n++){var r=t[n];null!=r&&I(r)}}}function T(e,t,n,r,a){if("key"!==t&&"is"!==t&&null!=r&&!L(t)&&(n!==r||function(e,t){return"value"===t||"checked"===t||"selectedIndex"===t||"selected"===t&&e.dom===u(e.dom)||"option"===e.tag&&e.dom.parentNode===u(e.dom)}(e,t)||"object"==typeof r)){if("o"===t[0]&&"n"===t[1])return A(e,t,r);if("xlink:"===t.slice(0,6))e.dom.setAttributeNS("http://www.w3.org/1999/xlink",t.slice(6),r);else if("style"===t)N(e.dom,n,r);else if(O(e,t,a)){if("value"===t){var l="input"===e.tag&&"file"===e.attrs.type;if(("input"===e.tag||"textarea"===e.tag)&&e.dom.value===""+r&&(l||e.dom===u(e.dom)))return;if("select"===e.tag&&null!==n&&e.dom.value===""+r)return;if("option"===e.tag&&null!==n&&e.dom.value===""+r)return;if(l&&""+r!="")return void console.error("`value` is read-only on file inputs!")}"input"===e.tag&&"type"===t?e.dom.setAttribute(t,r):e.dom[t]=r}else"boolean"==typeof r?r?e.dom.setAttribute(t,""):e.dom.removeAttribute(t):e.dom.setAttribute("className"===t?"class":t,r)}}function z(e,t,n,r){if("key"!==t&&"is"!==t&&null!=n&&!L(t))if("o"===t[0]&&"n"===t[1])A(e,t,void 0);else if("style"===t)N(e.dom,n,null);else if(!O(e,t,r)||"className"===t||"title"===t||"value"===t&&("option"===e.tag||"select"===e.tag&&-1===e.dom.selectedIndex&&e.dom===u(e.dom))||"input"===e.tag&&"type"===t){var a=t.indexOf(":");-1!==a&&(t=t.slice(a+1)),!1!==n&&e.dom.removeAttribute("className"===t?"class":t)}else e.dom[t]=null}function L(e){return"oninit"===e||"oncreate"===e||"onupdate"===e||"onremove"===e||"onbeforeremove"===e||"onbeforeupdate"===e}function O(e,t,n){return void 0===n&&(e.tag.indexOf("-")>-1||null!=e.attrs&&e.attrs.is||"href"!==t&&"list"!==t&&"form"!==t&&"width"!==t&&"height"!==t)&&t in e.dom}function N(e,t,n){if(t===n);else if(null==n)e.style="";else if("object"!=typeof n)e.style=n;else if(null==t||"object"!=typeof t)for(var r in e.style.cssText="",n){null!=(a=n[r])&&(r.includes("-")?e.style.setProperty(r,String(a)):e.style[r]=String(a))}else{for(var r in n){var a;null!=(a=n[r])&&(a=String(a))!==String(t[r])&&(r.includes("-")?e.style.setProperty(r,a):e.style[r]=a)}for(var r in t)null!=t[r]&&null==n[r]&&(r.includes("-")?e.style.removeProperty(r):e.style[r]="")}}function j(){this._=r}function A(e,t,n){if(null!=e.events){if(e.events._=r,e.events[t]===n)return;null==n||"function"!=typeof n&&"object"!=typeof n?(null!=e.events[t]&&e.dom.removeEventListener(t.slice(2),e.events,!1),e.events[t]=void 0):(null==e.events[t]&&e.dom.addEventListener(t.slice(2),e.events,!1),e.events[t]=n)}else null==n||"function"!=typeof n&&"object"!=typeof n||(e.events=new j,e.dom.addEventListener(t.slice(2),e.events,!1),e.events[t]=n)}function P(e,t,n){"function"==typeof e.oninit&&c.call(e.oninit,t),"function"==typeof e.oncreate&&n.push(c.bind(e.oncreate,t))}function D(e,t,n){"function"==typeof e.onupdate&&n.push(c.bind(e.onupdate,t))}return j.prototype=Object.create(null),j.prototype.handleEvent=function(e){var t,n=this["on"+e.type];"function"==typeof n?t=n.call(e.currentTarget,e):"function"==typeof n.handleEvent&&n.handleEvent(e),this._&&!1!==e.redraw&&(0,this._)(),!1===t&&(e.preventDefault(),e.stopPropagation())},function(t,n,l){if(!t)throw new TypeError("DOM element being rendered to does not exist.");if(null!=y&&t.contains(y))throw new TypeError("Node is currently being rendered to and thus is locked.");var o=r,i=y,s=[],c=u(t),d=t.namespaceURI;y=t,r="function"==typeof l?l:void 0,a={};try{null==t.vnodes&&(t.textContent=""),n=e.normalizeChildren(Array.isArray(n)?n:[n]),h(t,t.vnodes,n,s,null,"http://www.w3.org/1999/xhtml"===d?void 0:d),t.vnodes=n,null!=c&&u(t)!==c&&"function"==typeof c.focus&&c.focus();for(var f=0;f<s.length;f++)s[f]()}finally{r=o,y=i}}},C}function z(){return M?S:(M=1,S=T()("undefined"!=typeof window?window:null))}var L,O,N,j,A=r(),P=function(e,t,n){var r=[],a=!1,l=-1;function o(){for(l=0;l<r.length;l+=2)try{e(r[l],A(r[l+1]),i)}catch(e){n.error(e)}l=-1}function i(){a||(a=!0,t((function(){a=!1,o()})))}return i.sync=o,{mount:function(t,n){if(null!=n&&null==n.view&&"function"!=typeof n)throw new TypeError("m.mount expects a component, not a vnode.");var a=r.indexOf(t);a>=0&&(r.splice(a,2),a<=l&&(l-=2),e(t,[])),null!=n&&(r.push(t,n),e(t,A(n),i))},redraw:i}}(z(),"undefined"!=typeof requestAnimationFrame?requestAnimationFrame:null,"undefined"!=typeof console?console:null);function D(){return O?L:(O=1,L=function(e){if("[object Object]"!==Object.prototype.toString.call(e))return"";var t=[];for(var n in e)r(n,e[n]);return t.join("&");function r(e,n){if(Array.isArray(n))for(var a=0;a<n.length;a++)r(e+"["+a+"]",n[a]);else if("[object Object]"===Object.prototype.toString.call(n))for(var a in n)r(e+"["+a+"]",n[a]);else t.push(encodeURIComponent(e)+(null!=n&&""!==n?"="+encodeURIComponent(n):""))}})}function $(){if(j)return N;j=1;var e=D();return N=function(t,n){if(/:([^\/\.-]+)(\.{3})?:/.test(t))throw new SyntaxError("Template parameter names must be separated by either a '/', '-', or '.'.");if(null==n)return t;var r=t.indexOf("?"),a=t.indexOf("#"),l=a<0?t.length:a,o=r<0?l:r,i=t.slice(0,o),s={};Object.assign(s,n);var c=i.replace(/:([^\/\.-]+)(\.{3})?/g,(function(e,t,r){return delete s[t],null==n[t]?e:r?n[t]:encodeURIComponent(String(n[t]))})),u=c.indexOf("?"),d=c.indexOf("#"),f=d<0?c.length:d,m=u<0?f:u,p=c.slice(0,m);r>=0&&(p+=t.slice(r,l)),u>=0&&(p+=(r<0?"?":"&")+c.slice(u,f));var h=e(s);return h&&(p+=(r<0&&u<0?"?":"&")+h),a>=0&&(p+=t.slice(a)),d>=0&&(p+=(a<0?"":"&")+c.slice(d)),p}}var R,F,H,_,K,V,q,U,B,Y,X,J,W=$(),G=s(),Q=function(e,t){function n(e){return new Promise(e)}function r(e,t){for(var n in e.headers)if(G.call(e.headers,n)&&n.toLowerCase()===t)return!0;return!1}return n.prototype=Promise.prototype,n.__proto__=Promise,{request:function(a,l){"string"!=typeof a?(l=a,a=a.url):null==l&&(l={});var o=function(t,n){return new Promise((function(a,l){t=W(t,n.params);var o,i=null!=n.method?n.method.toUpperCase():"GET",s=n.body,c=(null==n.serialize||n.serialize===JSON.serialize)&&!(s instanceof e.FormData||s instanceof e.URLSearchParams),u=n.responseType||("function"==typeof n.extract?"":"json"),d=new e.XMLHttpRequest,f=!1,m=!1,p=d,h=d.abort;for(var v in d.abort=function(){f=!0,h.call(this)},d.open(i,t,!1!==n.async,"string"==typeof n.user?n.user:void 0,"string"==typeof n.password?n.password:void 0),c&&null!=s&&!r(n,"content-type")&&d.setRequestHeader("Content-Type","application/json; charset=utf-8"),"function"==typeof n.deserialize||r(n,"accept")||d.setRequestHeader("Accept","application/json, text/*"),n.withCredentials&&(d.withCredentials=n.withCredentials),n.timeout&&(d.timeout=n.timeout),d.responseType=u,n.headers)G.call(n.headers,v)&&d.setRequestHeader(v,n.headers[v]);d.onreadystatechange=function(e){if(!f&&4===e.target.readyState)try{var r,o=e.target.status>=200&&e.target.status<300||304===e.target.status||/^file:\/\//i.test(t),i=e.target.response;if("json"===u){if(!e.target.responseType&&"function"!=typeof n.extract)try{i=JSON.parse(e.target.responseText)}catch(e){i=null}}else u&&"text"!==u||null==i&&(i=e.target.responseText);if("function"==typeof n.extract?(i=n.extract(e.target,n),o=!0):"function"==typeof n.deserialize&&(i=n.deserialize(i)),o){if("function"==typeof n.type)if(Array.isArray(i))for(var s=0;s<i.length;s++)i[s]=new n.type(i[s]);else i=new n.type(i);a(i)}else{var c=function(){try{r=e.target.responseText}catch(e){r=i}var t=new Error(r);t.code=e.target.status,t.response=i,l(t)};0===d.status?setTimeout((function(){m||c()})):c()}}catch(e){l(e)}},d.ontimeout=function(e){m=!0;var t=new Error("Request timed out");t.code=e.target.status,l(t)},"function"==typeof n.config&&(d=n.config(d,n,t)||d)!==p&&(o=d.abort,d.abort=function(){f=!0,o.call(this)}),null==s?d.send():"function"==typeof n.serialize?d.send(n.serialize(s)):s instanceof e.FormData||s instanceof e.URLSearchParams?d.send(s):d.send(JSON.stringify(s))}))}(a,l);if(!0===l.background)return o;var i=0;function s(){0==--i&&"function"==typeof t&&t()}return function e(t){var r=t.then;return t.constructor=n,t.then=function(){i++;var n=r.apply(t,arguments);return n.then(s,(function(e){if(s(),0===i)throw e})),e(n)},t}(o)}}}("undefined"!=typeof window?window:null,P.redraw);function Z(){if(F)return R;function e(e){try{return decodeURIComponent(e)}catch(t){return e}}return F=1,R=function(t){if(""===t||null==t)return{};"?"===t.charAt(0)&&(t=t.slice(1));for(var n=t.split("&"),r={},a={},l=0;l<n.length;l++){var o=n[l].split("="),i=e(o[0]),s=2===o.length?e(o[1]):"";"true"===s?s=!0:"false"===s&&(s=!1);var c=i.split(/\]\[?|\[/),u=a;i.indexOf("[")>-1&&c.pop();for(var d=0;d<c.length;d++){var f=c[d],m=c[d+1],p=""==m||!isNaN(parseInt(m,10));if(""===f)null==r[i=c.slice(0,d).join()]&&(r[i]=Array.isArray(u)?u.length:0),f=r[i]++;else if("__proto__"===f)break;if(d===c.length-1)u[f]=s;else{var h=Object.getOwnPropertyDescriptor(u,f);null!=h&&(h=h.value),null==h&&(u[f]=h=p?[]:{}),u=h}}}return a}}function ee(){if(_)return H;_=1;var e=Z();return H=function(t){var n=t.indexOf("?"),r=t.indexOf("#"),a=r<0?t.length:r,l=n<0?a:n,o=t.slice(0,l).replace(/\/{2,}/g,"/");return o?"/"!==o[0]&&(o="/"+o):o="/",{path:o,params:n<0?{}:e(t.slice(n+1,a))}}}function te(){if(V)return K;V=1;var e=ee();return K=function(t){var n=e(t),r=Object.keys(n.params),a=[],l=new RegExp("^"+n.path.replace(/:([^\/.-]+)(\.{3}|\.(?!\.)|-)?|[\\^$*+.()|\[\]{}]/g,(function(e,t,n){return null==t?"\\"+e:(a.push({k:t,r:"..."===n}),"..."===n?"(.*)":"."===n?"([^/]+)\\.":"([^/]+)"+(n||""))}))+"$");return function(e){for(var t=0;t<r.length;t++)if(n.params[r[t]]!==e.params[r[t]])return!1;if(!a.length)return l.test(e.path);var o=l.exec(e.path);if(null==o)return!1;for(t=0;t<a.length;t++)e.params[a[t].k]=a[t].r?o[t+1]:decodeURIComponent(o[t+1]);return!0}}}function ne(){if(U)return q;U=1;var e=s(),t=new RegExp("^(?:key|oninit|oncreate|onbeforeupdate|onupdate|onbeforeremove|onremove)$");return q=function(n,r){var a={};if(null!=r)for(var l in n)e.call(n,l)&&!t.test(l)&&r.indexOf(l)<0&&(a[l]=n[l]);else for(var l in n)e.call(n,l)&&!t.test(l)&&(a[l]=n[l]);return a}}var re=x,ae=Q,le=P,oe=I,ie=function(){return re.apply(this,arguments)};ie.m=re,ie.trust=re.trust,ie.fragment=re.fragment,ie.Fragment="[",ie.mount=le.mount,ie.route=function(){if(J)return X;J=1;var e=P;return X=function(){if(Y)return B;Y=1;var e=r(),t=v,n=$(),a=ee(),l=te(),o=ne(),i={};function s(e){try{return decodeURIComponent(e)}catch(t){return e}}return B=function(r,c){var u,d,f,m,p,h,v=null==r?null:"function"==typeof r.setImmediate?r.setImmediate:r.setTimeout,g=Promise.resolve(),y=!1,w=!1,b=0,x=i,k={onbeforeupdate:function(){return!(!(b=b?2:1)||i===x)},onremove:function(){r.removeEventListener("popstate",S,!1),r.removeEventListener("hashchange",E,!1)},view:function(){if(b&&i!==x){var t=[e(f,m.key,m)];return x&&(t=x.render(t[0])),t}}},C=I.SKIP={};function E(){y=!1;var e=r.location.hash;"#"!==I.prefix[0]&&(e=r.location.search+e,"?"!==I.prefix[0]&&"/"!==(e=r.location.pathname+e)[0]&&(e="/"+e));var t=e.concat().replace(/(?:%[a-f89][a-f0-9])+/gim,s).slice(I.prefix.length),n=a(t);function l(e){console.error(e),M(d,null,{replace:!0})}Object.assign(n.params,r.history.state),function e(r){for(;r<u.length;r++)if(u[r].check(n)){var a=u[r].component,o=u[r].route,i=a,s=h=function(l){if(s===h){if(l===C)return e(r+1);f=null==l||"function"!=typeof l.view&&"function"!=typeof l?"div":l,m=n.params,p=t,h=null,x=a.render?a:null,2===b?c.redraw():(b=2,c.redraw.sync())}};return void(a.view||"function"==typeof a?(a={},s(i)):a.onmatch?g.then((function(){return a.onmatch(n.params,t,o)})).then(s,t===d?null:l):s("div"))}if(t===d)throw new Error("Could not resolve default route "+d+".");M(d,null,{replace:!0})}(0)}function S(){y||(y=!0,v(E))}function M(e,t,a){if(e=n(e,t),w){S();var l=a?a.state:null,o=a?a.title:null;a&&a.replace?r.history.replaceState(l,o,I.prefix+e):r.history.pushState(l,o,I.prefix+e)}else r.location.href=I.prefix+e}function I(e,t,n){if(!e)throw new TypeError("DOM element being rendered to does not exist.");if(u=Object.keys(n).map((function(e){if("/"!==e[0])throw new SyntaxError("Routes must start with a '/'.");if(/:([^\/\.-]+)(\.{3})?:/.test(e))throw new SyntaxError("Route parameter names must be separated with either '/', '.', or '-'.");return{route:e,component:n[e],check:l(e)}})),d=t,null!=t){var o=a(t);if(!u.some((function(e){return e.check(o)})))throw new ReferenceError("Default route doesn't match any known routes.")}"function"==typeof r.history.pushState?r.addEventListener("popstate",S,!1):"#"===I.prefix[0]&&r.addEventListener("hashchange",E,!1),w=!0,c.mount(e,k),E()}return I.set=function(e,t,n){null!=h&&((n=n||{}).replace=!0),h=null,M(e,t,n)},I.get=function(){return p},I.prefix="#!",I.Link={view:function(e){var r,a,l,i=t(e.attrs.selector||"a",o(e.attrs,["options","params","selector","onclick"]),e.children);return(i.attrs.disabled=Boolean(i.attrs.disabled))?(i.attrs.href=null,i.attrs["aria-disabled"]="true"):(r=e.attrs.options,a=e.attrs.onclick,l=n(i.attrs.href,e.attrs.params),i.attrs.href=I.prefix+l,i.attrs.onclick=function(e){var t;"function"==typeof a?t=a.call(e.currentTarget,e):null==a||"object"!=typeof a||"function"==typeof a.handleEvent&&a.handleEvent(e),!1===t||e.defaultPrevented||0!==e.button&&0!==e.which&&1!==e.which||e.currentTarget.target&&"_self"!==e.currentTarget.target||e.ctrlKey||e.metaKey||e.shiftKey||e.altKey||(e.preventDefault(),e.redraw=!1,I.set(l,null,r))}),i}},I.param=function(e){return m&&null!=e?m[e]:m},I},B}()("undefined"!=typeof window?window:null,e),X}(),ie.render=z(),ie.redraw=le.redraw,ie.request=ae.request,ie.parseQueryString=Z(),ie.buildQueryString=D(),ie.parsePathname=ee(),ie.buildPathname=$(),ie.vnode=r(),ie.censor=ne(),ie.domFor=oe.domFor;var se=e(ie);function ce(e,t,n){const r=("function"==typeof e?e(t):e)||{};return n&&(r.initialParams=n),r}const ue=({currentIndex:e},t)=>e===t,de={view:({attrs:e})=>se(`i.icon.${e.pack||"fas"}.fa-${e.icon||"cog"}${e.size?".fa-"+e.size+"x":""}`,{title:e.icontitle||void 0,role:"presentation",onclick:e.onclick||null,...e.iconClass&&{class:e.iconClass}})},fe={view:({attrs:e,state:t,children:n})=>se(e.download||e.link?"a.button":"button",{...e.link&&{href:e.link},...e.download&&{download:e.download},...e.target&&{target:e.target},"aria-label":e["aria-label"]||e.title||e.text,title:e.title||e["aria-label"],class:(e.class||"")+(t.busy?" busy":""),...t.error&&{"data-error":t.error.message},...e.onclick&&{onclick:n=>{clearTimeout(t.debounce),t.debounce=setTimeout((()=>{const r=e.onclick(n,e);r&&r.then&&r.catch&&(t.busy=!0,se.redraw(),r.then((()=>{t.busy=!1,se.redraw()})).catch((e=>{t.busy=!1,t.error=e,se.redraw()})))}),25)}}},[...e.icon&&!e.right?[se(de,e)]:[],...e.text?[se("span.pad-1.pad-h",{class:e.textClass||null},e.text)]:[],...e.icon&&e.right?[se(de,e)]:[],...n])},me={view:({attrs:e,state:t,children:n})=>se(e.download||e.link?"a.button":"button",{...e.link&&{href:e.link},...e.download&&{rel:"nofollow",download:e.download},...e.target&&{target:e.target},"aria-label":e["aria-label"]||e.title||e.text,title:e.title||e["aria-label"],class:(e.class||"")+(t.busy?" busy":""),...t.error&&{"data-error":t.error.message},...e.onClick&&{onclick:n=>{clearTimeout(t.debounce),t.debounce=setTimeout((()=>{const r=e.onClick(n,e);r&&r.then&&r.catch&&(t.busy=!0,se.redraw(),r.then((()=>{t.busy=!1,se.redraw()})).catch((e=>{t.busy=!1,t.error=e,se.redraw()})))}),25)}}},[...e.icon&&!e.right?[se(de,e)]:[],...e.text?[se("span.pad-1.pad-h",{class:e.textClass||null},e.text)]:[],...e.icon&&e.right?[se(de,e)]:[],...n])},pe={view:({attrs:e,children:t})=>se(".flexcol.flexcenter.al-center.grows.emptywidget",{...e.class&&{class:e.class},...e.key&&{key:e.key},role:"presentation"},[se(de,e),...e.message?[se(".marg-2.marg-v",{role:"status",class:e.size>4?"font-150":"font-100","aria-label":e.message},e.message.split("\n").map(((e,t,n)=>1===n.length?e:se("p.msg"+t,e))))]:[],...t?[se(".flexcol.additional",t)]:[]])},he=(e,t,n,r)=>{const a=t.currentIndex,l=t.currentParams;-1===n?Object.assign(t,{current:null,currentIndex:-1,currentParams:[]}):Object.assign(t,{current:e.items[n]||null,currentIndex:t.current?n:-1,currentParams:r||[]}),e.onSelected&&e.onSelected(t.current,t.currentParams,t.currentIndex!==a,l),se.redraw()},ve={oninit:({attrs:e,state:t})=>{(t=e.state||t).setItem=(n,...r)=>he(e,e.state||t,n,r);const n=!isNaN(t.currentIndex)?t.currentIndex:e.selected,r=e.items&&e.items.length?void 0!==n&&e.items[n]?n:e.noinitial?-1:0:-1,a=-1!==r?e.items[r]:null;Object.assign(t,{currentIndex:r,current:a})},onupdate:({attrs:e,state:t})=>{(e.state||t).setItem=(n,...r)=>he(e,e.state||t,n,r)},view:({attrs:e,state:t})=>{t=e.state||t;const{current:n}=t;return se((e.element||"widget")+".selector"+(e.horizontal?".flexrow":".flexcol")+(e.className?"."+e.className:""),{...e.key&&{key:e.key},class:(t.current?"hascurrent":"empty")+(e.class?" "+e.class:"")},[...e.hideonly&&!(e.items.length>1)||e.hidesel?[]:[se("nav.toolbar.fullwidth"+(e.horizontal?".flexcol":".flexrow"),{"aria-label":e["aria-label"]||e.title||"selector",class:e.toolbarClass},e.items.map(((e,n)=>se(fe,{class:(e.class?e.class+" ":"")+(ue(t,n)?"accent":"nel"),icon:e.icon||null,...e.title&&{title:e.title},...e["aria-label"]&&{"aria-label":e["aria-label"]},...e.text&&{text:e.text},onclick:()=>{Date.now()-t.clickts<200||(t.clickts=Date.now(),t.bodyHidden=!1,t.setItem(n))}}))))],...n?[...e.toggle&&!t.bodyHidden?[se(me,{class:"selectornotch "+(t.bodyHidden?"bodyhidden":"bodyshown"),icon:t.bodyHidden?"caret-up":"caret-down",title:t.bodyHidden?"expand panel":"contract panel",onClick:()=>{t.bodyHidden=!t.bodyHidden,se.redraw()}})]:[],...e.toggle&&t.bodyHidden?[]:[se(".grows.flexcol.ohidden",{class:e.bodyClass,role:"presentation"},[se(n.widget,ce(n.attrs,e,t.currentParams),n.children)])],...e.closeButton?[se(fe,{class:"closebutton absolute toright",icon:"times",onclick:()=>{t.setItem(-1)},"aria-label":"close item"})]:[]]:se(pe,e)])}},ge={info:"info",error:"exclamation-triangle",success:"check"};const ye=new function(e=5e3,t){let n,r=[];function a(){const l=t||document.getElementById("notification-container");if(r.length){const t=r.splice(0,1)[0];!function(e,t){se.render(e,se(fe,{class:"notification "+t.type,text:t.text,icon:ge[t.type]||"info",size:1,role:"status",onclick:a}))}(l,t),clearTimeout(n),n=setTimeout(a,t.timer||e)}else se.render(l,""),n=null}return{add:(e,t)=>{r.push({text:e,type:t}),n||a()},clear:()=>{r=[],a()}}};function we(e,t,n,r,a){return{...e&&{view:e},...t&&{oninit:t},...n&&{oncreate:n},...a&&{onupdate:a},...r&&{onremove:r}}}const be={};const xe=we((({attrs:e,state:t,children:n})=>{const{nofold:r,cardid:a,size:l,title:o,action:i,collapsedAction:s,collapsedClass:c,expandedClass:u,cols:d,element:f,busy:m,expandedView:p,collapsedView:h,titleWidget:v,titleAttrs:g,titleClass:y,bodyClass:w,titleExpanded:b,titleCollapsed:x}=e,k=!r&&(a?!be[a]:!!t.collapsed),C=k?h?h(e,t):[]:p?p(e,t):n||[],E=v?se(v,g||{}):o?se("span.ellipsis.ohidden.unfold",o):void 0,S=m?"fa-sync":"fa-caret-down "+(k?"iscollapsed":"isexpanded");return C.length||!e.skipEmpty?se(f||"ul",{class:"cardie ohidden noshrink "+(d?"flexcol ":"flexrow wrap ")+(e.class?" "+e.class:"")+(r?" expanded":" "+(k?"collapsed "+(c||""):"expanded "+(u||"")))+(l?" marg-"+l:" marg-2")+(v?" withwidget":"")+(m?" busycard":"")},[...E?[se(".title.grows.fabf.flexrow.pointer.unfold",r?{class:y||"pad-2"}:{class:`${y||"pad-2"} ${S||""}`,title:k?x||"Click to expand the options":b||x||"Click to collapse the options",onclick:n=>{n.target.classList.contains("unfold")&&(n.shiftKey&&e.onShiftOpen?e.onShiftOpen():e.cardid?function(e,t=0){if(e){const[n,r]=e.split("-");t&&n&&r&&Object.keys(be).forEach((e=>{e.startsWith(n+"-")&&(be[e]=0)})),be[e]=t}}(a,k):t.collapsed=!t.collapsed,se.redraw())}},!i||!r&&k?s&&k?[se(me,s),E]:E:[se(me,i),E])]:[],...C.length?[se(".flexbreak"),se(".cardiebody.fadein-filter.grows",{class:(d?"flexcol ":"flexrow wrap")+" "+(w||"")},...C)]:[],...e.alwaysView?[e.alwaysView({attrs:e,state:t})]:[]]):[]}),(({attrs:e,state:t})=>{e.cardid||(t.collapsed=!e.nofold&&(e.cardid?!be[e.cardid]:!!e.collapsed))}),void 0,void 0,void 0),ke=(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},Ce=(e,t,n)=>{const r=t.hasOwnProperty("value")?t.value:e.value;return ke(e,r,n)},Ee={view:e=>{const{attrs:t,state:n}=e;return n.attrs=t,se(".input-static.w-100.ellipsis",{class:(t.onDrag?"withdrag ":"")+(t.staticClass||"grows"),...t.staticTitle&&{title:t.staticTitle},...t.onDrag||{onclick:t.onClick},oncreate:({dom:n,state:r})=>{if(t.onDrag&&!t.readonly){const t=r.hammer=new Hammer.Manager(n,{touchAction:"pan-y"}),a=new Hammer.Pan({direction:Hammer.DIRECTION_VERTICAL}),l=new Hammer.Tap;t.add([a,l]),t.on("tap",(()=>e.state.attrs.onClick())),t.on("panup",(t=>e.state.attrs.onDrag(-1,t.srcEvent))),t.on("pandown",(t=>e.state.attrs.onDrag(1,t.srcEvent))),t.on("panend pancancel",(t=>e.state.attrs.onDrag(0,t.srcEvent)))}t.focus&&n.focus()},onremove:({state:e})=>{e.hammer&&e.hammer.destroy()}},t.value)}},Se={view:({attrs:e,state:t})=>{const n=e=>{t.value&&t.showInput&&delete t.showInput,delete t.value,e&&se.redraw()};return se(".textfield.flexcol.relative",{class:(e.label?"witharia":"")+(e.containerClass?" "+e.containerClass:""),...e.label&&{"aria-label":e.label}},[!e.staticField||!e.readonly&&t.showInput?!t.multi&&!e.alwaysmulti||e.type&&"text"!==e.type?se("input.w-100",{...e.id&&{id:e.id},type:e.type||"text",...void 0!==e.max&&{max:e.max},...void 0!==e.min&&{min:e.min},...e.step>0&&{step:e.step},...e.maxlength&&{maxlength:e.maxlength},class:(e.class||"")+(e.validator?t.isValid?" bg-ok":" bg-error":""),...e.title&&{title:e.title},value:Ce(e,t),placeholder:e.hint||"",oninput:n=>{t.value=ke(e,n.target.value),n.fromoninput=!0,e.validator&&(t.isValid=e.validator(t.value)),e.onchange&&(e.oninput||e.onchange)(t.value,n)},onchange:r=>{e.onchange&&(e.validator&&(t.isValid=e.validator(t.value)),r.enterPressed=t.enterPressed,delete t.enterPressed,e.onchange(ke(e,r.target.value),r),e.staticField?n(!0):delete t.value)},onblur:()=>{t.showInput&&n(!0)},onkeyup:r=>{t.showInput&&("Escape"===r.key?n(!0):"Enter"===r.key&&(t.value!==e.value&&t.value||(e.onchange(e.value,r),n(!0))))},onkeypress:n=>{t.showInput||"Enter"!==n.key||e.onenter&&e.onenter(n.target.value,n)}}):se("textarea.w-100",{class:e.class,value:Ce(e,t),...e.title&&{title:e.title},placeholder:e.hint||"",oninput:n=>{t.value=ke(e,n.target.value),e.validator&&(t.isValid=e.validator(t.value)),e.onchange&&(e.oninput||e.onchange)(t.value,n,!0)},onchange:r=>{if(e.onchange){e.validator&&(t.isValid=e.validator(t.value));const a=ke(e,r.target.value);n(!1),e.onchange(a,r,!0)}},onblur:()=>{t.showInput&&n(!0)},onkeyup:e=>{"Escape"===e.key&&t.showInput&&n(!1)}}):se(Ee,{readonly:e.readonly,staticClass:(t.dragging?"accent ":"")+(e.staticClass||""),staticTitle:e.staticTitle||e.draginc&&"Click then drag up and down to modify value, or just click to enter a custom value",value:e.displayTitle||Ce(e,t),focus:e.focus,...e.draginc&&!e.readonly&&{onDrag:(n,r)=>{if(n){t.dragging=!0;let a=Ce(e,t,!0);if(Number.isNaN(a)||void 0===a)return;a+=n*e.draginc,void 0!==e.max&&a>e.max&&(a=e.max),void 0!==e.min&&a<e.min&&(a=e.min),t.value="number"===e.type?a:String(a),e.onchange(t.value,r)}else delete t.dragging,delete t.value,se.redraw()}},...e.readonly||{onClick:()=>{t.showInput=!0,t.value=e.value,se.redraw()}}}),se(".span.actions.absolute.right.bottom",[...!e.multi||e.alwaysmulti||e.type&&"text"!==e.type?[]:[se(me,{icon:t.multi?"angle-double-up":"angle-double-down",class:"pad-2 transp",onClick:()=>{t.multi=!t.multi,se.redraw()}})],...e.actions?e.actions.map((e=>se(me,{...e,class:"transp pad-2"}))):[],...e.action?[se(me,{...e.action,class:"transp pad-2"})]:[]])])},oninit:({attrs:e,state:t})=>{if(e.staticField&&e.draginc){const n=Ce(e,t,!0);t.showInput=Number.isNaN(n)||null==n}}},Me=we((({attrs:e,children:t})=>t.length?se(".notice.cardie.flexcol.pad-3",{class:e.class||"marg-2 font-75"},se(".flexrow",[...e.icon?[se(de,e)]:[],se(".pad-2.pad-h",e.text)]),...t):se(".notice.cardie.flexrow.pad-3",{class:e.class||"marg-2 font-75",onclick:e.onClick},[...e.icon?[se(de,e)]:[],se(".pad-2.pad-h",e.text)]))),Ie=we((({attrs:e,state:t})=>se((e.unit||"")+".flexrow"+(e.subline?" withsubline":""),{class:e.class,text:e.text,title:e.title||null,onclick:()=>{t.checked=!t.checked,e.onchange&&e.onchange(t.checked),se.redraw()}},e.right?[...e.text?[se("span.grows.caption",e.subline?{"data-subline":e.subline}:{},e.text)]:[],se(de,{iconClass:"pad-2 pad-h",icon:t.checked?"toggle-on":"toggle-off"})]:[se(de,{iconClass:"pad-2 pad-h",icon:t.checked?"toggle-on":"toggle-off"}),...e.text?[se("span.grows.caption",e.subline?{"data-subline":e.subline}:{},e.text)]:[]])),(({attrs:e,state:t})=>{t.checked=t.original=e.checked}),null,null,(({attrs:e,state:t})=>{e.checked!==t.original&&(t.checked=t.original=e.checked,se.redraw())}));let Te;function ze(e){"function"==typeof Te&&(Te(),Te=void 0),e.style.display="none",delete Le.redraw}function Le(e,t=!1,n=".modal-content"){const r=document.getElementById("modal-container");if(r.classList.toggle("iscustom",".modal-content"!==n),t&&(Te=t,r.onclick=e=>{"modal-container"===e.target.id&&ze(r)}),!e)return delete Le.redraw,void(null===e?r.style.display="none":ze(r));r.style.display="flex",Le.redraw=()=>{se.render(r,se(n,{role:"alertdialog","aria-labelledby":"modaltitle","aria-modal":!0},["function"==typeof e?e():e]))},Le.redraw()}function Oe(){const e=document.getElementById("modal-container");return"none"!==e.style.display&&(ze(e),!0)}function Ne(e,t,n,r){return new Promise((a=>{function l(e){Le(null);try{a(e)}catch(e){}}const o=((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":(r=r||{}).favlist,".isfav":e&&e.classList.contains("isfav"),".isplay":e&&e.classList.contains("selected")});Le(se({view:()=>se(o,{onclick:n=>{if("INPUT"===n.target.nodeName)return;const r=n.target.getAttribute("data-action");r?l({domItem:e,item:t,action:r}):Le(null)}},[...t.title?[se("h3",{id:"modaltitle"},t.title)]:[],...n.map((n=>"text"===n.type?se("input.action",{value:n.value||"",type:"text",placeholder:n.hint||"",oncreate:({dom:e})=>e.focus(),onkeyup:r=>{27===r.keyCode&&l({domItem:e,item:t,action:n})},onchange:r=>{r.target.blur(),l({domItem:e,item:t,action:n,value:r.target.value})}}):se(fe,{...n,onclick:()=>l({domItem:e,item:t,action:n})},n.caption)))])}),!0)}))}const je=window.structuredClone?window.structuredClone:e=>JSON.parse(JSON.stringify(e));function Ae(e,t,n,r,a={}){setTimeout((()=>Ne(document.body,{title:e},[{type:"text",hint:n,value:t}]).then((({value:e})=>(a.refreshKey=String(Date.now()),r(e))))),100)}const Pe=[["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]],De=we((({attrs:e})=>se("h2.marg-2.no-marg-bottom",e.title))),$e=we((({attrs:e})=>{const{type:t="changes",meta:n,onInput:r,title:a,options:l}=e,o=n.title?.trim().length&&n.description?.trim().length,i=l&&l.embedded;return se(".flexcol.grows.ohidden.fadein",[...e.title?[se(De,{title:a})]:[],se(".flexrow.wrap.grows.pad-3.propsgroup.scrolly",[...e.notice?[se(Me,{class:"marg-1 marg-v withbottommargin font-75 col-12",size:1,icon:"info-circle",text:e.notice})]:[],se(".witharia.col-12.pad-1.pad-v",{"aria-label":t+" name"},se(Se,{class:"pad-2 pad-xh "+(o?"valid":"invalid"),value:n.title,maxlength:64,onchange:e=>{n.title=e,se.redraw()}})),...i?[]:[se(".col-12.witharia.pad-1.pad-v",{"aria-label":"description"},se(Se,{class:"pad-2 pad-xh "+(n.description?"valid":"invalid"),value:n.description,maxlength:240,multi:!0,alwaysmulti:!0,onchange:e=>{n.description=e,se.redraw()}})),se(".col-8.witharia.pad-1.pad-v",{"aria-label":"tags"},se(Se,{class:"pad-2 pad-xh",value:n.tags,maxlength:128,onchange:e=>{n.tags=e.toLowerCase().split(" ").join(",").split(",").filter((e=>e.length)).join(",")}})),se(".col-4.witharia.pad-1.pad-v",{"aria-label":"youtube video"},se(Se,{class:"pad-2 pad-xh",value:n.ytref||"",hint:"YouTube ID",maxlength:16,onchange:e=>{(e=e.trim())?-1===e.indexOf(" ")&&(n.ytref=e.trim()):delete n.ytref}}))],se(".col-4.witharia.pad-1.pad-v",{"aria-label":"content attribution"},se(Se,{class:"pad-2 pad-xh",value:n.author,hint:"author name",maxlength:128,onchange:e=>{n.author=e}})),se(".col-4.witharia.pad-1.pad-v",{"aria-label":"license or author link"},se(Se,{class:"pad-2 pad-xh",hint:"https://...",value:n.link,maxlength:128,onchange:e=>{n.link=e}})),se(".col-4.witharia.pad-1.pad-v",{"aria-label":"source domain"},se(Se,{class:"pad-2 pad-xh",value:n.source,hint:"example.com",maxlength:128,onchange:e=>{n.source=e}})),se(".col-12.al-right.marg-2.marg-v",se(me,{class:"noshrink accentbutton unitheightsmall col-4",text:"save "+t,onClick:()=>{n.title?.trim().length&&(i||n.description?.trim().length)?(Le(null),r(n)):ye.add("Information is incomplete or invalid")}}))])])})),Re=we((({attrs:e})=>{const{parameters:t,preset:n,presetComponents:r,types:a,globalData:l,fetcher:o}=e,i=[],s=[],c=a?Pe:Pe.filter((e=>{const[,r,a,o,c]=e,u=r?n[r]:n,d=c?l:t,f=r?d[r]:d;let m=!1;if(a.length){for(const e of a)u&&void 0!==u[e]&&(m=i[o]=!0),void 0!==f[e]&&(m=s[o]=!0);return m}return m=!0,s[o]=!!f,i[o]=!!u,m}));return se("ul.flexrow.wrap.userdialog",c.length?c.map((c=>{const[u,d,f,m,p,h]=c,v=a?void 0:d?n[d]:n,g=p?l:t,y=a?void 0:d?g[d]:g,w=a||i[m],b=s[m];return[...r?[se(Ie,{title:`Include ${c[0]} in snapshots`,class:"grows unitheightsmall"+(r[m]?" accent":""),checked:!!r[m],onchange:t=>{r[m]=!r[m],se.redraw(),e.redraw&&e.redraw()}}),se(".grows",{class:w?"avail":"unavail"},u)]:[],...e.types?[]:[se(me,{class:"col-3"+(b?"avail":"unavail"),icon:"sync",title:`Copy ${u} from current state`,onClick:()=>{if(f.length){d&&!n[d]&&(n[d]={});const e=d?n[d]:n;for(const t of f)if(void 0!==y[t]){const n=h&&o?o(e[t],m):y[t];e[t]=je(n)}}else if(0===f.length&&d&&void 0!==y){const e=h&&o?o(y,m):y;n[d]=je(e)}e.redraw&&e.redraw(),ye.add(`updated ${u} from current scene`)}}),se(me,{class:"col-3 "+(w?"":"disabled text-lo"),icon:"trash",title:`Delete ${u} in preset`,onClick:()=>w&&(()=>{if(f.length)for(const e of f)delete v[e];else 0===f.length&&d&&delete n[d];e.redraw&&e.redraw()})()})],se(".flexbreak")]})):se("h3","Preset is Empty"))}));var Fe=Object.freeze({__proto__:null,choose:function(e,t={icon:"circle",onSelect:()=>{}}){const{icon:n,title:r,field:a,onSelect:l,parser:o=e=>e}=t,i=e.map(((e,t)=>({icon:a&&e.icon||n,caption:o(a?e[a]:e,e),onClick:n=>l(e,n,t)})));Array.isArray(e)&&!e.length?ye.add("No items available"):Ne(document.body,{title:r},i).then((({action:e})=>e.onClick()))},promptEntity:(e,t,n,r={})=>new Promise(((a,l)=>{Le(se($e,{meta:e,type:n,title:t,options:r,onInput:e=>a(e)}),(()=>{l(new Error("cancelled"))}))})),promptName:Ae,promptOptions:function(e,t,n={}){const{title:r,field:a,icon:l,textNew:o,textHint:i,resolve:s}=n,c=Array.isArray(e)?e.map((e=>({icon:l,caption:a?e[a]:e,onClick:n=>t(e,n)}))):Object.keys(e).map((n=>({icon:e[n].icon||l,caption:e[n].caption||n,onClick:r=>t(s&&void 0!==e[n].value?e[n].value:e[n],r)})));Array.isArray(e)&&!e.length?ye.add("No items available"):Ne(document.body,{title:r},[...o&&!a?[{icon:"plus",caption:o,onClick:()=>Ae(o,"",i,(e=>{e&&e&&e.trim()&&(t(e),se.redraw())}))}]:[],...c]).then((({action:e})=>e.onClick())).finally((()=>{}))},promptPreset:(e,t,n={})=>new Promise(((r,a)=>{Le((()=>se(Re,{...n,preset:e,parameters:t,redraw:()=>Le.redraw()})),(()=>{a(new Error("cancelled"))}))}))});const He=we((({attrs:e,children:t})=>se(".separator",{class:e.class||"mini",...e.onClick&&{onclick:e.onClick}},[se("span.grows",e.text),...t||[]]))),_e=!!navigator.userAgent.match(/iPhone|iPad|iPod/i);let Ke,Ve=!1;function qe(e,t,n){return Math.min(Math.max(e,t),n)}function Ue(e,t,n,r){if(n-t<=0)return t;if(r<=0)return qe(e,t,n);const a=Math.ceil((n-t)/r);return qe(t+Math.round(a*(e-t)/(n-t))*r,t,n)}function Be(){let e,t,n,r,a,l,o,i,s,c=0,u=!1,d=!1,f=4,m=1,p=0,h=10,v=0,g=1,y="horizontal";function w(e,t){let n,r;"vertical"===y?(n=l.bottom-l.top,r=l.bottom-t):(n=l.right-l.left,r=e-l.left),r=qe(r,0,n);const a=Ue(r/n*(h-p)+p,p,h,g);return N(a),a}function b(e,n,r){return d?function(e,n){u=o=!0,l=t.getBoundingClientRect();const r=w(e,n);r!==v&&(v=r,s&&!1!==s(v)&&se.redraw())}(e,n):(a=r,u=!0,o=!1,l=t.getBoundingClientRect(),void(i||a.target.requestPointerLock()));var a,i}function x(e,t,n){return o?w(e,t):function(e,t,n){const r=n.shiftKey?f:n.metaKey||n.ctrlKey?4*f:m;let a,l;a="vertical"===y?n.movementY||0:n.movementX||0;let o=g>0?g:(h-p)/100;if(a<0)l=Math.max(v+o*r*a,p);else{if(!(a>0))return v;l=Math.min(v+o*r*a,h)}return l=Ue(l,p,h,g),N(l),l}(0,0,n)}function k(e){2!==c&&(c=1,0===e.button&&(window.addEventListener("mousemove",C),window.addEventListener("mouseup",E),b(e.clientX,e.clientY,e)))}function C(e){e.preventDefault(),z(e.clientX,e.clientY,e)}function E(e){window.removeEventListener("mousemove",C),window.removeEventListener("mouseup",E),L(e.clientX,e.clientY,e)}function S(t){if(1===c)return;e.addEventListener("touchmove",M),e.addEventListener("touchend",I);const n=t.changedTouches[0];b(n.clientX,n.clientY,t)}function M(e){e.preventDefault();const t=e.changedTouches[0];z(t.clientX,t.clientY,e)}function I(t){e.removeEventListener("touchmove",M),e.removeEventListener("touchend",I);const n=t.changedTouches[0];L(n.clientX,n.clientY,n)}function T(e){const t=e.keyCode;let n;if(33===t){e.preventDefault();let t=Math.max((h-p)/10,g);t<=0&&(t=1),n=Ue(v+t,p,h,g)}else if(34===t){e.preventDefault();let t=Math.max((h-p)/10,g);t<=0&&(t=1),n=Ue(v-t,p,h,g)}else if(35===t)e.preventDefault(),n=h;else if(36===t)e.preventDefault(),n=p;else if(37===t||40===t){e.preventDefault();let t=(g>0?g:(h-p)/10)*(e.shiftKey?.25:e.ctrlKey||e.metaKey?4:1);n=Math.max(v-t,p)}else if(38===t||39===t){e.preventDefault();let t=(g>0?g:(h-p)/10)*(e.shiftKey?.25:e.ctrlKey||e.metaKey?4:1);n=Math.min(v+t,h)}else 48===t&&(n=(h+p)/2);"number"==typeof n&&n!==v&&(v=n,N(v),i&&!1!==i(v)&&se.redraw())}function z(e,t,n){if(!u)return;const r=x(e,t,n);r!==v&&(v=r,s&&!1!==s(v)&&se.redraw())}function L(e,t,n){u&&(u=!1,v=x(e,t,n),i&&!1!==i(v)&&se.redraw(),o||document.exitPointerLock(),setTimeout((function(){u||(c=0)}),350))}function O(e){let t=(e-p)/(h-p);return"vertical"===y&&(t=1-t),String(100*t)+"%"}function N(e){const t=O(e),l=O(h-e+p);"vertical"===y?(a.style.top=t,n.style.height=t,r.style.height=l):(a.style.left=t,n.style.width=l,r.style.width=t)}function j(e){p=e.min,h=e.max,g="number"!=typeof e.step||Number.isNaN(e.step)?1:qe(e.step,0,h-p),y="vertical"===e.orientation?"vertical":"horizontal",i=e.onchange,s=e.ondrag,"number"==typeof e.value&&(v=qe(e.value,p,h)),d=!e.relative,f=e.factor&&e.factor[0]||4,m=e.factor&&e.factor[1]||1}return{oncreate:({attrs:l,dom:o})=>{_e&&!Ve&&(window.addEventListener("touchmove",(function(){})),Ve=!0),j(l),e=o,t=e.querySelector(".mithril-range-bar"),n=t.querySelector(".mithril-range-bar-0"),r=t.querySelector(".mithril-range-bar-1"),a=t.querySelector(".mithril-range-handle"),e.addEventListener("mousedown",k),e.addEventListener("touchstart",S),e.addEventListener("keydown",T)},onremove:function(){window.removeEventListener("mousemove",C),window.removeEventListener("mouseup",E),e.removeEventListener("mousedown",k),e.removeEventListener("touchstart",S),e.removeEventListener("touchmove",M),e.removeEventListener("touchend",I),e.removeEventListener("keydown",T)},view:function({attrs:e,children:t}){j(e),v=Ue(v,p,h,g);const n={class:"mithril-range nokey"+(e.relative?" isrelative ":" ")+(0===v?"atzero":v<0?"belowzero":"overzero")+(null!=e.class?" "+e.class:""),tabIndex:"0",role:"slider","aria-valuemin":String(p),"aria-valuemax":String(h),"aria-valuenow":String(v),"aria-orientation":y};e.id&&(n.id=e.id),e.ariaLabelledby&&(n["aria-labelledby"]=e.ariaLabelledby),e.disabled&&(n.style={pointerEvents:"none"},n["aria-disabled"]="true");const r=O(v),a=O(h-v+p);let l,o,i;return"vertical"===y?(l={top:r},o={height:r},i={height:a}):(l={left:r},o={width:a},i={width:r}),se("div",n,se("div",{class:"mithril-range-bar nokey"},se("div",{class:"mithril-range-bar-0 nokey",style:o}),se("div",{class:"mithril-range-bar-1 nokey",style:i}),se("div",{class:"mithril-range-handle nokey",style:l},t)),!!e.name&&se("input",{type:"hidden",name:e.name,value:String(v)}))}}}const Ye=e=>{const t=e.value>e.curMax?Math.ceil(e.value/e.curMax):1,n=e.curMin<0&&e.value<e.curMin?Math.abs(Math.ceil(e.value/e.curMin)):1,r=Math.min(Math.max(n,t),e.maxMultiplier);e.curMultiplier!==r&&(e.curMultiplier=r,se.redraw())},Xe=e=>e.value>=e.curMax*e.curMultiplier*.9&&e.maxMultiplier>1&&e.curMultiplier<=e.maxMultiplier-1?(e.curMultiplier++,!0):e.curMin<0?Je(e):void 0,Je=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:e,state:t})=>{const n=e.multiplier||1,r=e.value||0;t.curMax!==e.max||t.maxMultiplier!==n?(Object.assign(t,{curMax:e.max,curMin:e.min,maxMultiplier:n,value:e.value,initial:r}),Xe(t)||(clearTimeout(t.timer),t.timer=setTimeout(Ye,1e3,t)),se.redraw()):t.initial!==r&&(Object.assign(t,{value:r,initial:r}),clearTimeout(Ke),Ke=setTimeout((()=>se.redraw()),50))},view:({attrs:e,state:t})=>se(".range.flexcol.control.relative"+(e.multiplier>1?".withmultiplier":""),{...e.class&&{class:e.class},title:e.hint||"Click, then use arrows to finetune value if needed"},[...e.title?[se("label",{class:"rangelabel",htmlFor:t.id},e.title)]:[],se(Be,{onchange:n=>{t.value=n;!Xe(t)&&t.curMultiplier>1&&(clearTimeout(t.timer),t.timer=setTimeout(Ye,1e3,t)),e.onchange?e.onchange(n):se.redraw()},ondrag:n=>n!==t.value&&(t.value=n,e.ondrag&&e.ondrag(n),!0),value:t.value||0,min:(e.min||0)*t.curMultiplier,max:t.curMax*t.curMultiplier||100,step:e.step||1,relative:e.relative,factor:e.factor},[se(".currentval",e.parser?e.parser(t.value,e.step<1):t.value?e.step<1?t.value.toFixed(2):""+Math.floor(t.value):"")])])},Ge={view:({attrs:e,state:t})=>se(We,{value:e.value||0,min:e.min||0,max:e.max||100,step:e.step||.1,class:(e.disabled?"disabled ":"")+(e.class||""),title:e.title,multiplier:e.multiplier,hint:e.hint,parser:e.parser,relative:e.relative,factor:e.factor,getLabel:e=>e?""+e:"default",ondrag:n=>(t.changed=!0,t.value=n,e.onchange&&e.onchange(n,!0),!0),onchange:n=>(e.auto0?n=0:e.autoValue&&(n=e.autoValue),t.changed=!0,t.value=n,e.onchange&&e.onchange(n,!1),!0)})};function Qe(e,t){m.route(document.getElementById(e),t.default||"/",t.routes)}export{fe as Button,me as ButtonNew,xe as CardieWidget,pe as Empty,de as Icon,Se as InputWidget,Me as NoticeWidget,Fe as OverflowUtils,Ge as RangeWidget,ve as Selector,He as Separator,Ie as SwitchWidget,Oe as clearModal,we as defineWidget,Le as popupMessage,Qe as startApp};
|
|
1
|
+
import e from"mithril";function t(e,t,a,n,i){return{...e&&{view:e},...t&&{oninit:t},...a&&{oncreate:a},...i&&{onupdate:i},...n&&{onremove:n}}}function a(e,t,a){const n=("function"==typeof e?e(t):e)||{};return a&&(n.initialParams=a),n}const n=({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}})},l={view:({attrs:t,state:a,children:n})=>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||"")+(a.busy?" busy":""),...a.error&&{"data-error":a.error.message},...t.onclick&&{onclick:n=>{clearTimeout(a.debounce),a.debounce=setTimeout((()=>{const i=t.onclick(n,t);i&&i.then&&i.catch&&(a.busy=!0,e.redraw(),i.then((()=>{a.busy=!1,e.redraw()})).catch((t=>{a.busy=!1,a.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)]:[],...n])},r={view:({attrs:t,state:a,children:n})=>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||"")+(a.busy?" busy":""),...a.error&&{"data-error":a.error.message},...t.onClick&&{onclick:n=>{clearTimeout(a.debounce),a.debounce=setTimeout((()=>{const i=t.onClick(n,t);i&&i.then&&i.catch&&(a.busy=!0,e.redraw(),i.then((()=>{a.busy=!1,e.redraw()})).catch((t=>{a.busy=!1,a.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)]:[],...n])},o={view:({attrs:t,children:a})=>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,a,n)=>1===n.length?t:e("p.msg"+a,t))))]:[],...a?[e(".flexcol.additional",a)]:[]])},s=(t,a,n,i)=>{const l=a.currentIndex,r=a.currentParams;-1===n?Object.assign(a,{current:null,currentIndex:-1,currentParams:[]}):Object.assign(a,{current:t.items[n]||null,currentIndex:a.current?n:-1,currentParams:i||[]}),t.onSelected&&t.onSelected(a.current,a.currentParams,a.currentIndex!==l,r),e.redraw()},c={oninit:({attrs:e,state:t})=>{(t=e.state||t).setItem=(a,...n)=>s(e,e.state||t,a,n);const a=!isNaN(t.currentIndex)?t.currentIndex:e.selected,n=e.items&&e.items.length?void 0!==a&&e.items[a]?a:e.noinitial?-1:0:-1,i=-1!==n?e.items[n]:null;Object.assign(t,{currentIndex:n,current:i})},onupdate:({attrs:e,state:t})=>{(e.state||t).setItem=(a,...n)=>s(e,e.state||t,a,n)},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:"")},[...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,a)=>e(l,{class:(t.class?t.class+" ":"")+(n(i,a)?"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(a))}}))))],...s?[...t.toggle&&!i.bodyHidden?[e(r,{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?[]:[e(".grows.flexcol.ohidden",{class:t.bodyClass,role:"presentation"},[e(s.widget,a(s.attrs,t,i.currentParams),s.children)])],...t.closeButton?[e(l,{class:"closebutton absolute toright",icon:"times",onclick:()=>{i.setItem(-1)},"aria-label":"close item"})]:[]]:e(o,t)])}},d={info:"info",error:"exclamation-triangle",success:"check"};const u=new function(t=5e3,a){let n,i=[];function r(){const o=a||document.getElementById("notification-container");if(i.length){const a=i.splice(0,1)[0];!function(t,a){e.render(t,e(l,{class:"notification "+a.type,text:a.text,icon:d[a.type]||"info",size:1,role:"status",onclick:r}))}(o,a),clearTimeout(n),n=setTimeout(r,a.timer||t)}else e.render(o,""),n=null}return{add:(e,t)=>{i.push({text:e,type:t}),n||r()},clear:()=>{i=[],r()}}},p={};const h=t((({attrs:t,state:a,children:n})=>{const{nofold:i,cardid:l,size:o,title:s,action:c,collapsedAction:d,collapsedClass:u,expandedClass:m,cols:h,element:v,busy:g,expandedView:f,collapsedView:w,titleWidget:y,titleAttrs:b,titleClass:x,bodyClass:k,titleExpanded:M,titleCollapsed:C}=t,I=!i&&(l?!p[l]:!!a.collapsed),E=I?w?w(t,a):[]:f?f(t,a):n||[],L=y?e(y,b||{}):s?e("span.ellipsis.ohidden.unfold",s):void 0,T=g?"fa-sync":"fa-caret-down "+(I?"iscollapsed":"isexpanded");return E.length||!t.skipEmpty?e(v||"ul",{class:"cardie ohidden noshrink "+(h?"flexcol ":"flexrow wrap ")+(t.class?" "+t.class:"")+(i?" expanded":" "+(I?"collapsed "+(u||""):"expanded "+(m||"")))+(o?" marg-"+o:" marg-2")+(y?" withwidget":"")+(g?" busycard":"")},[...L?[e(".title.grows.fabf.flexrow.pointer.unfold",i?{class:x||"pad-2"}:{class:`${x||"pad-2"} ${T||""}`,title:I?C||"Click to expand the options":M||C||"Click to collapse the options",onclick:n=>{n.target.classList.contains("unfold")&&(n.shiftKey&&t.onShiftOpen?t.onShiftOpen():t.cardid?function(e,t=0){if(e){const[a,n]=e.split("-");t&&a&&n&&Object.keys(p).forEach((e=>{e.startsWith(a+"-")&&(p[e]=0)})),p[e]=t}}(l,I):a.collapsed=!a.collapsed,e.redraw())}},!c||!i&&I?d&&I?[e(r,d),L]:L:[e(r,c),L])]:[],...E.length?[e(".flexbreak"),e(".cardiebody.fadein-filter.grows",{class:(h?"flexcol ":"flexrow wrap")+" "+(k||"")},...E)]:[],...t.alwaysView?[t.alwaysView({attrs:t,state:a})]:[]]):[]}),(({attrs:e,state:t})=>{e.cardid||(t.collapsed=!e.nofold&&(e.cardid?!p[e.cardid]:!!e.collapsed))}),void 0,void 0,void 0),v=(e,t,a=!1)=>{if(a||"number"===e.type){const a=e.float?Number.parseFloat(t):Number.parseInt(t,10);return Number.isNaN(a)?void 0:a}return t},g=(e,t,a)=>{const n=t.hasOwnProperty("value")?t.value:e.value;return v(e,n,a)},f={view:t=>{const{attrs:a,state:n}=t;return n.attrs=a,e(".input-static.w-100.ellipsis",{class:(a.onDrag?"withdrag ":"")+(a.staticClass||"grows"),...a.staticTitle&&{title:a.staticTitle},...a.onDrag||{onclick:a.onClick},oncreate:({dom:e,state:n})=>{if(a.onDrag&&!a.readonly){const a=n.hammer=new Hammer.Manager(e,{touchAction:"pan-y"}),i=new Hammer.Pan({direction:Hammer.DIRECTION_VERTICAL}),l=new Hammer.Tap;a.add([i,l]),a.on("tap",(()=>t.state.attrs.onClick())),a.on("panup",(e=>t.state.attrs.onDrag(-1,e.srcEvent))),a.on("pandown",(e=>t.state.attrs.onDrag(1,e.srcEvent))),a.on("panend pancancel",(e=>t.state.attrs.onDrag(0,e.srcEvent)))}a.focus&&e.focus()},onremove:({state:e})=>{e.hammer&&e.hammer.destroy()}},a.value)}},w={view:({attrs:t,state:a})=>{const n=t=>{a.value&&a.showInput&&delete a.showInput,delete a.value,t&&e.redraw()};return e(".textfield.flexcol.relative",{class:(t.label?"witharia":"")+(t.containerClass?" "+t.containerClass:""),...t.label&&{"aria-label":t.label}},[!t.staticField||!t.readonly&&a.showInput?!a.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?a.isValid?" bg-ok":" bg-error":""),...t.title&&{title:t.title},value:g(t,a),placeholder:t.hint||"",oninput:e=>{a.value=v(t,e.target.value),e.fromoninput=!0,t.validator&&(a.isValid=t.validator(a.value)),t.onchange&&(t.oninput||t.onchange)(a.value,e)},onchange:e=>{t.onchange&&(t.validator&&(a.isValid=t.validator(a.value)),e.enterPressed=a.enterPressed,delete a.enterPressed,t.onchange(v(t,e.target.value),e),t.staticField?n(!0):delete a.value)},onblur:()=>{a.showInput&&n(!0)},onkeyup:e=>{a.showInput&&("Escape"===e.key?n(!0):"Enter"===e.key&&(a.value!==t.value&&a.value||(t.onchange(t.value,e),n(!0))))},onkeypress:e=>{a.showInput||"Enter"!==e.key||t.onenter&&t.onenter(e.target.value,e)}}):e("textarea.w-100",{class:t.class,value:g(t,a),...t.title&&{title:t.title},placeholder:t.hint||"",oninput:e=>{a.value=v(t,e.target.value),t.validator&&(a.isValid=t.validator(a.value)),t.onchange&&(t.oninput||t.onchange)(a.value,e,!0)},onchange:e=>{if(t.onchange){t.validator&&(a.isValid=t.validator(a.value));const i=v(t,e.target.value);n(!1),t.onchange(i,e,!0)}},onblur:()=>{a.showInput&&n(!0)},onkeyup:e=>{"Escape"===e.key&&a.showInput&&n(!1)}}):e(f,{readonly:t.readonly,staticClass:(a.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||g(t,a),focus:t.focus,...t.draginc&&!t.readonly&&{onDrag:(n,i)=>{if(n){a.dragging=!0;let e=g(t,a,!0);if(Number.isNaN(e)||void 0===e)return;e+=n*t.draginc,void 0!==t.max&&e>t.max&&(e=t.max),void 0!==t.min&&e<t.min&&(e=t.min),a.value="number"===t.type?e:String(e),t.onchange(a.value,i)}else delete a.dragging,delete a.value,e.redraw()}},...t.readonly||{onClick:()=>{a.showInput=!0,a.value=t.value,e.redraw()}}}),e(".span.actions.absolute.right.bottom",[...!t.multi||t.alwaysmulti||t.type&&"text"!==t.type?[]:[e(r,{icon:a.multi?"angle-double-up":"angle-double-down",class:"pad-2 transp",onClick:()=>{a.multi=!a.multi,e.redraw()}})],...t.actions?t.actions.map((t=>e(r,{...t,class:"transp pad-2"}))):[],...t.action?[e(r,{...t.action,class:"transp pad-2"})]:[]])])},oninit:({attrs:e,state:t})=>{if(e.staticField&&e.draginc){const a=g(e,t,!0);t.showInput=Number.isNaN(a)||null==a}}},y=t((({attrs:t,children:a})=>a.length?e(".notice.cardie.flexcol.pad-3",{class:t.class||"marg-2 font-75"},e(".flexrow",[...t.icon?[e(i,t)]:[],e(".pad-2.pad-h",t.text)]),...a):e(".notice.cardie.flexrow.pad-3",{class:t.class||"marg-2 font-75",onclick:t.onClick},[...t.icon?[e(i,t)]:[],e(".pad-2.pad-h",t.text)])));function b(e,t,a,n,i){return{...e&&{view:e},...t&&{oninit:t},...a&&{oncreate:a},...i&&{onupdate:i},...n&&{onremove:n}}}const x=b((({attrs:t,state:a})=>e((t.unit||"")+".flexrow"+(t.subline?" withsubline":""),{class:t.class,text:t.text,title:t.title||null,onclick:()=>{a.checked=!a.checked,t.onchange&&t.onchange(a.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:a.checked?"toggle-on":"toggle-off"})]:[e(i,{iconClass:"pad-2 pad-h",icon:a.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:a})=>{t.checked!==a.original&&(a.checked=a.original=t.checked,e.redraw())}));let k;function M(e){"function"==typeof k&&(k(),k=void 0),e.style.display="none",delete C.redraw}function C(t,a=!1,n=".modal-content"){const i=document.getElementById("modal-container");if(i.classList.toggle("iscustom",".modal-content"!==n),a&&(k=a,i.onclick=e=>{"modal-container"===e.target.id&&M(i)}),!t)return delete C.redraw,void(null===t?i.style.display="none":M(i));i.style.display="flex",C.redraw=()=>{e.render(i,e(n,{role:"alertdialog","aria-labelledby":"modaltitle","aria-modal":!0},["function"==typeof t?t():t]))},C.redraw()}function I(){const e=document.getElementById("modal-container");return"none"!==e.style.display&&(M(e),!0)}function E(t,a,n,i){return new Promise((r=>{function o(e){C(null);try{r(e)}catch(e){}}const s=((e,t)=>{const a=[];if(t)for(const e of Object.keys(t))t[e]&&a.push("."+e);return(e||"")+a.join("")})(".popup.flexcol",{".favlist":(i=i||{}).favlist,".isfav":t&&t.classList.contains("isfav"),".isplay":t&&t.classList.contains("selected")});C(e({view:()=>e(s,{onclick:e=>{if("INPUT"===e.target.nodeName)return;const n=e.target.getAttribute("data-action");n?o({domItem:t,item:a,action:n}):C(null)}},[...a.title?[e("h3",{id:"modaltitle"},a.title)]:[],...n.map((n=>"text"===n.type?e("input.action",{value:n.value||"",type:"text",placeholder:n.hint||"",oncreate:({dom:e})=>e.focus(),onkeyup:e=>{27===e.keyCode&&o({domItem:t,item:a,action:n})},onchange:e=>{e.target.blur(),o({domItem:t,item:a,action:n,value:e.target.value})}}):e(l,{...n,onclick:()=>o({domItem:t,item:a,action:n})},n.caption)))])}),!0)}))}const L=window.structuredClone?window.structuredClone:e=>JSON.parse(JSON.stringify(e));function T(e,t,a,n,i={}){setTimeout((()=>E(document.body,{title:e},[{type:"text",hint:a,value:t}]).then((({value:e})=>(i.refreshKey=String(Date.now()),n(e))))),100)}const N=[["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]],D=b((({attrs:t})=>e("h2.marg-2.no-marg-bottom",t.title))),P=b((({attrs:t})=>{const{type:a="changes",meta:n,onInput:i,title:l,options:o}=t,s=n.title?.trim().length&&n.description?.trim().length,c=o&&o.embedded;return e(".flexcol.grows.ohidden.fadein",[...t.title?[e(D,{title:l})]:[],e(".flexrow.wrap.grows.pad-3.propsgroup.scrolly",[...t.notice?[e(y,{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":a+" name"},e(w,{class:"pad-2 pad-xh "+(s?"valid":"invalid"),value:n.title,maxlength:64,onchange:t=>{n.title=t,e.redraw()}})),...c?[]:[e(".col-12.witharia.pad-1.pad-v",{"aria-label":"description"},e(w,{class:"pad-2 pad-xh "+(n.description?"valid":"invalid"),value:n.description,maxlength:240,multi:!0,alwaysmulti:!0,onchange:t=>{n.description=t,e.redraw()}})),e(".col-8.witharia.pad-1.pad-v",{"aria-label":"tags"},e(w,{class:"pad-2 pad-xh",value:n.tags,maxlength:128,onchange:e=>{n.tags=e.toLowerCase().split(" ").join(",").split(",").filter((e=>e.length)).join(",")}})),e(".col-4.witharia.pad-1.pad-v",{"aria-label":"youtube video"},e(w,{class:"pad-2 pad-xh",value:n.ytref||"",hint:"YouTube ID",maxlength:16,onchange:e=>{(e=e.trim())?-1===e.indexOf(" ")&&(n.ytref=e.trim()):delete n.ytref}}))],e(".col-4.witharia.pad-1.pad-v",{"aria-label":"content attribution"},e(w,{class:"pad-2 pad-xh",value:n.author,hint:"author name",maxlength:128,onchange:e=>{n.author=e}})),e(".col-4.witharia.pad-1.pad-v",{"aria-label":"license or author link"},e(w,{class:"pad-2 pad-xh",hint:"https://...",value:n.link,maxlength:128,onchange:e=>{n.link=e}})),e(".col-4.witharia.pad-1.pad-v",{"aria-label":"source domain"},e(w,{class:"pad-2 pad-xh",value:n.source,hint:"example.com",maxlength:128,onchange:e=>{n.source=e}})),e(".col-12.al-right.marg-2.marg-v",e(r,{class:"noshrink accentbutton unitheightsmall col-4",text:"save "+a,onClick:()=>{n.title?.trim().length&&(c||n.description?.trim().length)?(C(null),i(n)):u.add("Information is incomplete or invalid")}}))])])})),S=b((({attrs:t})=>{const{parameters:a,preset:n,presetComponents:i,types:l,globalData:o,fetcher:s}=t,c=[],d=[],m=l?N:N.filter((e=>{const[,t,i,l,r]=e,s=t?n[t]:n,u=r?o:a,m=t?u[t]:u;let p=!1;if(i.length){for(const e of i)s&&void 0!==s[e]&&(p=c[l]=!0),void 0!==m[e]&&(p=d[l]=!0);return p}return p=!0,d[l]=!!m,c[l]=!!s,p}));return e("ul.flexrow.wrap.userdialog",m.length?m.map((m=>{const[p,h,v,g,f,w]=m,y=l?void 0:h?n[h]:n,b=f?o:a,k=l?void 0:h?b[h]:b,M=l||c[g],C=d[g];return[...i?[e(x,{title:`Include ${m[0]} in snapshots`,class:"grows unitheightsmall"+(i[g]?" accent":""),checked:!!i[g],onchange:a=>{i[g]=!i[g],e.redraw(),t.redraw&&t.redraw()}}),e(".grows",{class:M?"avail":"unavail"},p)]:[],...t.types?[]:[e(r,{class:"col-3"+(C?"avail":"unavail"),icon:"sync",title:`Copy ${p} from current state`,onClick:()=>{if(v.length){h&&!n[h]&&(n[h]={});const e=h?n[h]:n;for(const t of v)if(void 0!==k[t]){const a=w&&s?s(e[t],g):k[t];e[t]=L(a)}}else if(0===v.length&&h&&void 0!==k){const e=w&&s?s(k,g):k;n[h]=L(e)}t.redraw&&t.redraw(),u.add(`updated ${p} from current scene`)}}),e(r,{class:"col-3 "+(M?"":"disabled text-lo"),icon:"trash",title:`Delete ${p} in preset`,onClick:()=>M&&(()=>{if(v.length)for(const e of v)delete y[e];else 0===v.length&&h&&delete n[h];t.redraw&&t.redraw()})()})],e(".flexbreak")]})):e("h3","Preset is Empty"))}));var O=Object.freeze({__proto__:null,choose:function(e,t={icon:"circle",onSelect:()=>{}}){const{icon:a,title:n,field:i,onSelect:l,parser:r=e=>e}=t,o=e.map(((e,t)=>({icon:i&&e.icon||a,caption:r(i?e[i]:e,e),onClick:a=>l(e,a,t)})));Array.isArray(e)&&!e.length?u.add("No items available"):E(document.body,{title:n},o).then((({action:e})=>e.onClick()))},promptEntity:(t,a,n,i={})=>new Promise(((l,r)=>{C(e(P,{meta:t,type:n,title:a,options:i,onInput:e=>l(e)}),(()=>{r(new Error("cancelled"))}))})),promptName:T,promptOptions:function(t,a,n={}){const{title:i,field:l,icon:r,textNew:o,textHint:s,resolve:c}=n,d=Array.isArray(t)?t.map((e=>({icon:r,caption:l?e[l]:e,onClick:t=>a(e,t)}))):Object.keys(t).map((e=>({icon:t[e].icon||r,caption:t[e].caption||e,onClick:n=>a(c&&void 0!==t[e].value?t[e].value:t[e],n)})));Array.isArray(t)&&!t.length?u.add("No items available"):E(document.body,{title:i},[...o&&!l?[{icon:"plus",caption:o,onClick:()=>T(o,"",s,(t=>{t&&t&&t.trim()&&(a(t),e.redraw())}))}]:[],...d]).then((({action:e})=>e.onClick())).finally((()=>{}))},promptPreset:(t,a,n={})=>new Promise(((i,l)=>{C((()=>e(S,{...n,preset:t,parameters:a,redraw:()=>C.redraw()})),(()=>{l(new Error("cancelled"))}))}))});const z=b((({attrs:t,children:a})=>e(".separator",{class:t.class||"mini",...t.onClick&&{onclick:t.onClick}},[e("span.grows",t.text),...a||[]]))),V=!!navigator.userAgent.match(/iPhone|iPad|iPod/i);let j,A=!1;function H(e,t,a){return Math.min(Math.max(e,t),a)}function K(e,t,a,n){if(a-t<=0)return t;if(n<=0)return H(e,t,a);const i=Math.ceil((a-t)/n);return H(t+Math.round(i*(e-t)/(a-t))*n,t,a)}function F(){let t,a,n,i,l,r,o,s,c,d=0,u=!1,m=!1,p=4,h=1,v=0,g=10,f=0,w=1,y="horizontal";function b(e,t){let a,n;"vertical"===y?(a=r.bottom-r.top,n=r.bottom-t):(a=r.right-r.left,n=e-r.left),n=H(n,0,a);const i=K(n/a*(g-v)+v,v,g,w);return O(i),i}function x(t,n,i){return m?function(t,n){u=o=!0,r=a.getBoundingClientRect();const i=b(t,n);i!==f&&(f=i,c&&!1!==c(f)&&e.redraw())}(t,n):(l=i,u=!0,o=!1,r=a.getBoundingClientRect(),void(s||l.target.requestPointerLock()));var l,s}function k(e,t,a){return o?b(e,t):function(e,t,a){const n=a.shiftKey?p:a.metaKey||a.ctrlKey?4*p:h;let i,l;i="vertical"===y?a.movementY||0:a.movementX||0;let r=w>0?w:(g-v)/100;if(i<0)l=Math.max(f+r*n*i,v);else{if(!(i>0))return f;l=Math.min(f+r*n*i,g)}return l=K(l,v,g,w),O(l),l}(0,0,a)}function M(e){2!==d&&(d=1,0===e.button&&(window.addEventListener("mousemove",C),window.addEventListener("mouseup",I),x(e.clientX,e.clientY,e)))}function C(e){e.preventDefault(),D(e.clientX,e.clientY,e)}function I(e){window.removeEventListener("mousemove",C),window.removeEventListener("mouseup",I),P(e.clientX,e.clientY,e)}function E(e){if(1===d)return;t.addEventListener("touchmove",L),t.addEventListener("touchend",T);const a=e.changedTouches[0];x(a.clientX,a.clientY,e)}function L(e){e.preventDefault();const t=e.changedTouches[0];D(t.clientX,t.clientY,e)}function T(e){t.removeEventListener("touchmove",L),t.removeEventListener("touchend",T);const a=e.changedTouches[0];P(a.clientX,a.clientY,a)}function N(t){const a=t.keyCode;let n;if(33===a){t.preventDefault();let e=Math.max((g-v)/10,w);e<=0&&(e=1),n=K(f+e,v,g,w)}else if(34===a){t.preventDefault();let e=Math.max((g-v)/10,w);e<=0&&(e=1),n=K(f-e,v,g,w)}else if(35===a)t.preventDefault(),n=g;else if(36===a)t.preventDefault(),n=v;else if(37===a||40===a){t.preventDefault();let e=(w>0?w:(g-v)/10)*(t.shiftKey?.25:t.ctrlKey||t.metaKey?4:1);n=Math.max(f-e,v)}else if(38===a||39===a){t.preventDefault();let e=(w>0?w:(g-v)/10)*(t.shiftKey?.25:t.ctrlKey||t.metaKey?4:1);n=Math.min(f+e,g)}else 48===a&&(n=(g+v)/2);"number"==typeof n&&n!==f&&(f=n,O(f),s&&!1!==s(f)&&e.redraw())}function D(t,a,n){if(!u)return;const i=k(t,a,n);i!==f&&(f=i,c&&!1!==c(f)&&e.redraw())}function P(t,a,n){u&&(u=!1,f=k(t,a,n),s&&!1!==s(f)&&e.redraw(),o||document.exitPointerLock(),setTimeout((function(){u||(d=0)}),350))}function S(e){let t=(e-v)/(g-v);return"vertical"===y&&(t=1-t),String(100*t)+"%"}function O(e){const t=S(e),a=S(g-e+v);"vertical"===y?(l.style.top=t,n.style.height=t,i.style.height=a):(l.style.left=t,n.style.width=a,i.style.width=t)}function z(e){v=e.min,g=e.max,w="number"!=typeof e.step||Number.isNaN(e.step)?1:H(e.step,0,g-v),y="vertical"===e.orientation?"vertical":"horizontal",s=e.onchange,c=e.ondrag,"number"==typeof e.value&&(f=H(e.value,v,g)),m=!e.relative,p=e.factor&&e.factor[0]||4,h=e.factor&&e.factor[1]||1}return{oncreate:({attrs:e,dom:r})=>{V&&!A&&(window.addEventListener("touchmove",(function(){})),A=!0),z(e),t=r,a=t.querySelector(".mithril-range-bar"),n=a.querySelector(".mithril-range-bar-0"),i=a.querySelector(".mithril-range-bar-1"),l=a.querySelector(".mithril-range-handle"),t.addEventListener("mousedown",M),t.addEventListener("touchstart",E),t.addEventListener("keydown",N)},onremove:function(){window.removeEventListener("mousemove",C),window.removeEventListener("mouseup",I),t.removeEventListener("mousedown",M),t.removeEventListener("touchstart",E),t.removeEventListener("touchmove",L),t.removeEventListener("touchend",T),t.removeEventListener("keydown",N)},view:function({attrs:t,children:a}){z(t),f=K(f,v,g,w);const n={class:"mithril-range nokey"+(t.relative?" isrelative ":" ")+(0===f?"atzero":f<0?"belowzero":"overzero")+(null!=t.class?" "+t.class:""),tabIndex:"0",role:"slider","aria-valuemin":String(v),"aria-valuemax":String(g),"aria-valuenow":String(f),"aria-orientation":y};t.id&&(n.id=t.id),t.ariaLabelledby&&(n["aria-labelledby"]=t.ariaLabelledby),t.disabled&&(n.style={pointerEvents:"none"},n["aria-disabled"]="true");const i=S(f),l=S(g-f+v);let r,o,s;return"vertical"===y?(r={top:i},o={height:i},s={height:l}):(r={left:i},o={width:l},s={width:i}),e("div",n,e("div",{class:"mithril-range-bar nokey"},e("div",{class:"mithril-range-bar-0 nokey",style:o}),e("div",{class:"mithril-range-bar-1 nokey",style:s}),e("div",{class:"mithril-range-handle nokey",style:r},a)),!!t.name&&e("input",{type:"hidden",name:t.name,value:String(f)}))}}}const $=t=>{const a=t.value>t.curMax?Math.ceil(t.value/t.curMax):1,n=t.curMin<0&&t.value<t.curMin?Math.abs(Math.ceil(t.value/t.curMin)):1,i=Math.min(Math.max(n,a),t.maxMultiplier);t.curMultiplier!==i&&(t.curMultiplier=i,e.redraw())},Y=e=>e.value>=e.curMax*e.curMultiplier*.9&&e.maxMultiplier>1&&e.curMultiplier<=e.maxMultiplier-1?(e.curMultiplier++,!0):e.curMin<0?B(e):void 0,B=e=>{if(e.value<=e.curMin*e.curMultiplier*.9&&e.maxMultiplier>1&&e.curMultiplier<=e.maxMultiplier-1)return e.curMultiplier++,!0},X={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:a})=>{const n=t.multiplier||1,i=t.value||0;a.curMax!==t.max||a.maxMultiplier!==n?(Object.assign(a,{curMax:t.max,curMin:t.min,maxMultiplier:n,value:t.value,initial:i}),Y(a)||(clearTimeout(a.timer),a.timer=setTimeout($,1e3,a)),e.redraw()):a.initial!==i&&(Object.assign(a,{value:i,initial:i}),clearTimeout(j),j=setTimeout((()=>e.redraw()),50))},view:({attrs:t,state:a})=>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:a.id},t.title)]:[],e(F,{onchange:n=>{a.value=n;!Y(a)&&a.curMultiplier>1&&(clearTimeout(a.timer),a.timer=setTimeout($,1e3,a)),t.onchange?t.onchange(n):e.redraw()},ondrag:e=>e!==a.value&&(a.value=e,t.ondrag&&t.ondrag(e),!0),value:a.value||0,min:(t.min||0)*a.curMultiplier,max:a.curMax*a.curMultiplier||100,step:t.step||1,relative:t.relative,factor:t.factor},[e(".currentval",t.parser?t.parser(a.value,t.step<1):a.value?t.step<1?a.value.toFixed(2):""+Math.floor(a.value):"")])])},q={view:({attrs:t,state:a})=>e(X,{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=>(a.changed=!0,a.value=e,t.onchange&&t.onchange(e,!0),!0),onchange:e=>(t.auto0?e=0:t.autoValue&&(e=t.autoValue),a.changed=!0,a.value=e,t.onchange&&t.onchange(e,!1),!0)})};function _(e,t){m.route(document.getElementById(e),t.default||"/",t.routes)}export{l as Button,r as ButtonNew,h as CardieWidget,o as Empty,i as Icon,w as InputWidget,y as NoticeWidget,O as OverflowUtils,q as RangeWidget,c as Selector,z as Separator,x as SwitchWidget,I as clearModal,b as defineWidget,C as popupMessage,_ as startApp};
|
|
2
2
|
//# sourceMappingURL=libui.esm.js.map
|