@scribehow/shaders
Version:
WebGL shaders used across various Scribe surfaces on web.
2 lines • 377 kB
JavaScript
var ScribeShaders=(function(exports){'use strict';var Bl=Object.defineProperty;var jl=Object.getOwnPropertySymbols;var hd=Object.prototype.hasOwnProperty,cd=Object.prototype.propertyIsEnumerable;var zl=(n,t,e)=>t in n?Bl(n,t,{enumerable:true,configurable:true,writable:true,value:e}):n[t]=e,Ul=(n,t)=>{for(var e in t||(t={}))hd.call(t,e)&&zl(n,e,t[e]);if(jl)for(var e of jl(t))cd.call(t,e)&&zl(n,e,t[e]);return n};var $l=(n,t)=>()=>(n&&(t=n(n=0)),t);var ql=(n,t)=>{for(var e in t)Bl(n,e,{get:t[e],enumerable:true});};var ci=(n,t,e)=>new Promise((i,s)=>{var r=l=>{try{a(e.next(l));}catch(h){s(h);}},o=l=>{try{a(e.throw(l));}catch(h){s(h);}},a=l=>l.done?i(l.value):Promise.resolve(l.value).then(r,o);a((e=e.apply(n,t)).next());});var Hp={};ql(Hp,{BladeApi:()=>Vt,ButtonApi:()=>ki,FolderApi:()=>Cn,ListBladeApi:()=>Ti,ListInputBindingApi:()=>ze,Pane:()=>Fo,Semver:()=>bn,SeparatorBladeApi:()=>Ii,SliderBladeApi:()=>Ni,SliderInputBindingApi:()=>Di,TabApi:()=>Mi,TabPageApi:()=>Si,TextBladeApi:()=>ji,TpChangeEvent:()=>Jt,VERSION:()=>If});function O(n){return n==null}function Ao(n){return n!==null&&typeof n=="object"}function dr(n){return n!==null&&typeof n=="object"}function Td(n,t){if(n.length!==t.length)return false;for(let e=0;e<n.length;e++)if(n[e]!==t[e])return false;return true}function fe(n,t){return Array.from(new Set([...Object.keys(n),...Object.keys(t)])).reduce((i,s)=>{let r=n[s],o=t[s];return dr(r)&&dr(o)?Object.assign(Object.assign({},i),{[s]:fe(r,o)}):Object.assign(Object.assign({},i),{[s]:s in t?o:r})},{})}function Oo(n){return Ao(n)?"target"in n:false}function R(n,t){let e=t==null?void 0:t.constraint,i=t==null?void 0:t.equals;return !e&&!i?new vr(n):new mr(n,t)}function Nd(n){return [new fr(n),(t,e)=>{n.setRawValue(t,e);}]}function Do(n){return (t,e)=>{for(let i=0;i<n.length;i++){let s=n[i](t,e);if(s!=="")return s}return ""}}function vn(n,t){var e;let i=n.substr(t).match(/^\s+/);return (e=i&&i[0])!==null&&e!==void 0?e:""}function Bd(n,t){let e=n.substr(t,1);return e.match(/^[1-9]$/)?e:""}function fn(n,t){var e;let i=n.substr(t).match(/^[0-9]+/);return (e=i&&i[0])!==null&&e!==void 0?e:""}function Ud(n,t){let e=fn(n,t);if(e!=="")return e;let i=n.substr(t,1);if(t+=1,i!=="-"&&i!=="+")return "";let s=fn(n,t);return s===""?"":i+s}function Ro(n,t){let e=n.substr(t,1);if(t+=1,e.toLowerCase()!=="e")return "";let i=Ud(n,t);return i===""?"":e+i}function Jc(n,t){let e=n.substr(t,1);if(e==="0")return e;let i=Bd(n,t);return t+=i.length,i===""?"":i+fn(n,t)}function $d(n,t){let e=Jc(n,t);if(t+=e.length,e==="")return "";let i=n.substr(t,1);if(t+=i.length,i!==".")return "";let s=fn(n,t);return t+=s.length,e+i+s+Ro(n,t)}function qd(n,t){let e=n.substr(t,1);if(t+=e.length,e!==".")return "";let i=fn(n,t);return t+=i.length,i===""?"":e+i+Ro(n,t)}function Kd(n,t){let e=Jc(n,t);return t+=e.length,e===""?"":e+Ro(n,t)}function Hd(n,t){var e;let i=n.substr(t).match(/^[01]+/);return (e=i&&i[0])!==null&&e!==void 0?e:""}function Gd(n,t){let e=n.substr(t,2);if(t+=e.length,e.toLowerCase()!=="0b")return "";let i=Hd(n,t);return i===""?"":e+i}function Yd(n,t){var e;let i=n.substr(t).match(/^[0-7]+/);return (e=i&&i[0])!==null&&e!==void 0?e:""}function Xd(n,t){let e=n.substr(t,2);if(t+=e.length,e.toLowerCase()!=="0o")return "";let i=Yd(n,t);return i===""?"":e+i}function Qd(n,t){var e;let i=n.substr(t).match(/^[0-9a-f]+/i);return (e=i&&i[0])!==null&&e!==void 0?e:""}function Zd(n,t){let e=n.substr(t,2);if(t+=e.length,e.toLowerCase()!=="0x")return "";let i=Qd(n,t);return i===""?"":e+i}function em(n,t){let e=tm(n,t);return t+=e.length,e===""?null:{evaluable:new wr(e),cursor:t}}function nm(n,t){let e=n.substr(t,1);if(t+=e.length,e!=="(")return null;let i=ep(n,t);if(!i)return null;t=i.cursor,t+=vn(n,t).length;let s=n.substr(t,1);return t+=s.length,s!==")"?null:{evaluable:i.evaluable,cursor:t}}function im(n,t){var e;return (e=em(n,t))!==null&&e!==void 0?e:nm(n,t)}function tp(n,t){let e=im(n,t);if(e)return e;let i=n.substr(t,1);if(t+=i.length,i!=="+"&&i!=="-"&&i!=="~")return null;let s=tp(n,t);return s?(t=s.cursor,{cursor:t,evaluable:new xr(i,s.evaluable)}):null}function sm(n,t,e){e+=vn(t,e).length;let i=n.filter(s=>t.startsWith(s,e))[0];return i?(e+=i.length,e+=vn(t,e).length,{cursor:e,operator:i}):null}function rm(n,t){return (e,i)=>{let s=n(e,i);if(!s)return null;i=s.cursor;let r=s.evaluable;for(;;){let o=sm(t,e,i);if(!o)break;i=o.cursor;let a=n(e,i);if(!a)return null;i=a.cursor,r=new gr(o.operator,r,a.evaluable);}return r?{cursor:i,evaluable:r}:null}}function ep(n,t){return t+=vn(n,t).length,om(n,t)}function am(n){let t=ep(n,0);return !t||t.cursor+vn(n,t.cursor).length!==n.length?null:t.evaluable}function It(n){var t;let e=am(n);return (t=e==null?void 0:e.evaluate())!==null&&t!==void 0?t:null}function np(n){if(typeof n=="number")return n;if(typeof n=="string"){let t=It(n);if(!O(t))return t}return 0}function lm(n){return String(n)}function ht(n){return t=>t.toFixed(Math.max(Math.min(n,20),0))}function A(n,t,e,i,s){let r=(n-t)/(e-t);return i+r*(s-i)}function Sc(n){return String(n.toFixed(10)).split(".")[1].replace(/0+$/,"").length}function Y(n,t,e){return Math.min(Math.max(n,t),e)}function ip(n,t){return (n%t+t)%t}function hm(n,t){return O(n.step)?Math.max(Sc(t),2):Sc(n.step)}function sp(n){var t;return (t=n.step)!==null&&t!==void 0?t:1}function rp(n,t){var e;let i=Math.abs((e=n.step)!==null&&e!==void 0?e:t);return i===0?.1:Math.pow(10,Math.floor(Math.log10(i))-1)}function op(n,t){return O(n.step)?null:new _r(n.step,t)}function ap(n){return !O(n.max)&&!O(n.min)?new be({max:n.max,min:n.min}):!O(n.max)||!O(n.min)?new br({max:n.max,min:n.min}):null}function lp(n,t){var e,i,s;return {formatter:(e=n.format)!==null&&e!==void 0?e:ht(hm(n,t)),keyScale:(i=n.keyScale)!==null&&i!==void 0?i:sp(n),pointerScale:(s=n.pointerScale)!==null&&s!==void 0?s:rp(n,t)}}function hp(n){return {format:n.optional.function,keyScale:n.optional.number,max:n.optional.number,min:n.optional.number,pointerScale:n.optional.number,step:n.optional.number}}function To(n){return {constraint:n.constraint,textProps:k.fromObject(lp(n.params,n.initialValue))}}function cm(n){if(!("binding"in n))return false;let t=n.binding;return Oo(t)&&"read"in t&&"write"in t}function pm(n,t){let i=Object.keys(t).reduce((s,r)=>{if(s===void 0)return;let o=t[r],a=o(n[r]);return a.succeeded?Object.assign(Object.assign({},s),{[r]:a.value}):void 0},{});return i}function um(n,t){return n.reduce((e,i)=>{if(e===void 0)return;let s=t(i);if(!(!s.succeeded||s.value===void 0))return [...e,s.value]},[])}function dm(n){return n===null?false:typeof n=="object"}function Dt(n){return t=>e=>{if(!t&&e===void 0)return {succeeded:false,value:void 0};if(t&&e===void 0)return {succeeded:true,value:void 0};let i=n(e);return i!==void 0?{succeeded:true,value:i}:{succeeded:false,value:void 0}}}function Lc(n){return {custom:t=>Dt(t)(n),boolean:Dt(t=>typeof t=="boolean"?t:void 0)(n),number:Dt(t=>typeof t=="number"?t:void 0)(n),string:Dt(t=>typeof t=="string"?t:void 0)(n),function:Dt(t=>typeof t=="function"?t:void 0)(n),constant:t=>Dt(e=>e===t?t:void 0)(n),raw:Dt(t=>t)(n),object:t=>Dt(e=>{if(dm(e))return pm(e,t)})(n),array:t=>Dt(e=>{if(Array.isArray(e))return um(e,t)})(n)}}function N(n,t){let e=t(kr),i=kr.required.object(e)(n);return i.succeeded?i.value:void 0}function ct(n,t,e,i){if(t&&!t(n))return false;let s=N(n,e);return s?i(s):false}function pt(n,t){var e;return fe((e=n==null?void 0:n())!==null&&e!==void 0?e:{},t)}function ve(n){return "value"in n}function cp(n){if(!Ao(n)||!("binding"in n))return false;let t=n.binding;return Oo(t)}function Ci(n){n.offsetHeight;}function mm(n,t){let e=n.style.transition;n.style.transition="none",t(),n.style.transition=e;}function Io(n){return n.ontouchstart!==void 0}function vm(){return globalThis}function fm(){return vm().document}function bm(n){let t=n.ownerDocument.defaultView;return t&&"document"in t?n.getContext("2d",{willReadFrequently:true}):null}function Bi(n,t){let e=n.createElementNS(Pt,"svg");return e.innerHTML=_m[t],e}function pp(n,t,e){n.insertBefore(t,n.children[e]);}function No(n){n.parentElement&&n.parentElement.removeChild(n);}function up(n){for(;n.children.length>0;)n.removeChild(n.children[0]);}function wm(n){for(;n.childNodes.length>0;)n.removeChild(n.childNodes[0]);}function dp(n){return n.relatedTarget?n.relatedTarget:"explicitOriginalTarget"in n?n.explicitOriginalTarget:null}function Tt(n,t){n.emitter.on("change",e=>{t(e.rawValue);}),t(n.rawValue);}function Mt(n,t,e){Tt(n.value(t),e);}function M(n){return (e,i)=>[gm,"-",n,"v",e?`_${e}`:"",i?`-${i}`:""].join("")}function xm(n,t){let e=n.createDocumentFragment();return t.split(`
`).map(s=>n.createTextNode(s)).forEach((s,r)=>{r>0&&e.appendChild(n.createElement("br")),e.appendChild(s);}),e}function Cm(){return ["veryfirst","first","last","verylast"]}function Oc(n){let t=Object.assign({},n);return delete t.value,t}function ym(n){return ve(n)&&cp(n.value)}function Em(n){return ve(n)&&cm(n.value)}function mp(n,t){for(;n.length<t;)n.push(void 0);}function Pm(n){let t=[];return mp(t,n),t}function km(n){let t=n.indexOf(void 0);return t<0?n:n.slice(0,t)}function Vm(n,t){let e=[...km(n),t];return e.length>n.length?e.splice(0,e.length-n.length):mp(e,n.length),e}function Mm(n){if(!("binding"in n))return false;let t=n.binding;return Oo(t)&&"read"in t&&!("write"in t)}function Sm(n){return ve(n)&&Mm(n.value)}function Lm(n,t,e){e?n.classList.add(t):n.classList.remove(t);}function $e(n,t){return e=>{Lm(n,t,e);}}function jo(n,t){Tt(n,e=>{t.textContent=e!=null?e:"";});}function st(n){return Object.assign({core:qe},n)}function Am(n,t){return n.addBlade(Object.assign(Object.assign({},t),{view:"button"}))}function Om(n,t){return n.addBlade(Object.assign(Object.assign({},t),{view:"folder"}))}function Dm(n,t){return n.addBlade(Object.assign(Object.assign({},t),{view:"tab"}))}function Rm(n){return Ao(n)?"refresh"in n&&typeof n.refresh=="function":false}function Tm(n,t){if(!xi.isBindable(n))throw X.notBindable();return new xi(n,t)}function Or(n){return "rackController"in n}function Im(n,t){for(let e=0;e<n.length;e++){let i=n[e];if(ve(i)&&i.value===t)return i}return null}function Nm(n){return Or(n)?n.rackController.rack.bcSet_:null}function Ke(){return new k({positions:R([],{equals:Td})})}function jm(n,t){let e=0;return mm(t,()=>{n.set("expandedHeight",null),n.set("temporaryExpanded",true),Ci(t),e=t.clientHeight,n.set("temporaryExpanded",null),Ci(t);}),e}function Dc(n,t){t.style.height=n.styleHeight;}function zo(n,t){n.value("expanded").emitter.on("beforechange",()=>{if(n.set("completed",false),O(n.get("expandedHeight"))){let e=jm(n,t);e>0&&n.set("expandedHeight",e);}n.set("shouldFixHeight",true),Ci(t);}),n.emitter.on("change",()=>{Dc(n,t);}),Dc(n,t),t.addEventListener("transitionend",e=>{e.propertyName==="height"&&n.cleanUpTransition();});}function Rc(n,t){return $e(n,Bm(void 0,t))}function Um(n,t){let e=n.accept(t.params);if(!e)return null;let i=N(t.params,s=>({disabled:s.optional.boolean,hidden:s.optional.boolean}));return n.controller({blade:Ke(),document:t.document,params:Object.assign(Object.assign({},e.params),{disabled:i==null?void 0:i.disabled,hidden:i==null?void 0:i.hidden}),viewProps:jt.create({disabled:i==null?void 0:i.disabled,hidden:i==null?void 0:i.hidden})})}function Fi(n,t){if(n instanceof t)return n;if(n instanceof we){let e=n.constraints.reduce((i,s)=>i||(s instanceof t?s:null),null);if(e)return e}return null}function On(n){var t;let e=kr;if(Array.isArray(n))return (t=N({items:n},i=>({items:i.required.array(i.required.object({text:i.required.string,value:i.required.raw}))})))===null||t===void 0?void 0:t.items;if(typeof n=="object")return e.required.raw(n).value}function Bo(n){if(Array.isArray(n))return n;let t=[];return Object.keys(n).forEach(e=>{t.push({text:e,value:n[e]});}),t}function Uo(n){return O(n)?null:new ge(Bo(n))}function $m(n){return String(n)}function bp(n){return n==="false"?false:!!n}function zc(n){return $m(n)}function qm(n){return t=>n.reduce((e,i)=>e!==null?e:i(t),null)}function Oi(n){return Km(n)+"%"}function _p(n){return String(n)}function Hr(n){return n}function We({primary:n,secondary:t,forward:e,backward:i}){let s=false;function r(o){s||(s=true,o(),s=false);}n.emitter.on("change",o=>{r(()=>{t.setRawValue(e(n.rawValue,t.rawValue),o.options);});}),t.emitter.on("change",o=>{r(()=>{n.setRawValue(i(n.rawValue,t.rawValue),o.options);}),r(()=>{t.setRawValue(e(n.rawValue,t.rawValue),o.options);});}),r(()=>{t.setRawValue(e(n.rawValue,t.rawValue),{forceEmit:false,last:true});});}function lt(n,t){let e=n*(t.altKey?.1:1)*(t.shiftKey?10:1);return t.upKey?+e:t.downKey?-e:0}function Pn(n){return {altKey:n.altKey,downKey:n.key==="ArrowDown",shiftKey:n.shiftKey,upKey:n.key==="ArrowUp"}}function zt(n){return {altKey:n.altKey,downKey:n.key==="ArrowLeft",shiftKey:n.shiftKey,upKey:n.key==="ArrowRight"}}function Wm(n){return n==="ArrowUp"||n==="ArrowDown"}function wp(n){return Wm(n)||n==="ArrowLeft"||n==="ArrowRight"}function ar(n,t){var e,i;let s=t.ownerDocument.defaultView,r=t.getBoundingClientRect();return {x:n.pageX-(((e=s&&s.scrollX)!==null&&e!==void 0?e:0)+r.left),y:n.pageY-(((i=s&&s.scrollY)!==null&&i!==void 0?i:0)+r.top)}}function gp(n){return {sliderProps:new k({keyScale:n.keyScale,max:n.max,min:n.min}),textProps:new k({formatter:R(n.formatter),keyScale:n.keyScale,pointerScale:R(n.pointerScale)})}}function xp(n){return `--${Hm[n]}`}function kn(n){return hp(n)}function Xt(n){if(dr(n))return N(n,kn)}function Rt(n,t){if(!n)return;let e=[],i=op(n,t);i&&e.push(i);let s=ap(n);return s&&e.push(s),new we(e)}function Gm(n){return n?n.major===qe.major:false}function Cp(n){if(n==="inline"||n==="popup")return n}function Dn(n,t){n.write(t);}function Ym(n){let t=[],e=Uo(n.options);return e&&t.push(e),new we(t)}function Qm(n,t,e){let i=Y(n/255,0,1),s=Y(t/255,0,1),r=Y(e/255,0,1),o=Math.max(i,s,r),a=Math.min(i,s,r),l=o-a,h=0,c=0,p=(a+o)/2;return l!==0&&(c=l/(1-Math.abs(o+a-1)),i===o?h=(s-r)/l:s===o?h=2+(r-i)/l:h=4+(i-s)/l,h=h/6+(h<0?1:0)),[h*360,c*100,p*100]}function Zm(n,t,e){let i=(n%360+360)%360,s=Y(t/100,0,1),r=Y(e/100,0,1),o=(1-Math.abs(2*r-1))*s,a=o*(1-Math.abs(i/60%2-1)),l=r-o/2,h,c,p;return i>=0&&i<60?[h,c,p]=[o,a,0]:i>=60&&i<120?[h,c,p]=[a,o,0]:i>=120&&i<180?[h,c,p]=[0,o,a]:i>=180&&i<240?[h,c,p]=[0,a,o]:i>=240&&i<300?[h,c,p]=[a,0,o]:[h,c,p]=[o,0,a],[(h+l)*255,(c+l)*255,(p+l)*255]}function Jm(n,t,e){let i=Y(n/255,0,1),s=Y(t/255,0,1),r=Y(e/255,0,1),o=Math.max(i,s,r),a=Math.min(i,s,r),l=o-a,h;l===0?h=0:o===i?h=60*(((s-r)/l%6+6)%6):o===s?h=60*((r-i)/l+2):h=60*((i-s)/l+4);let c=o===0?0:l/o,p=o;return [h,c*100,p*100]}function yp(n,t,e){let i=ip(n,360),s=Y(t/100,0,1),r=Y(e/100,0,1),o=r*s,a=o*(1-Math.abs(i/60%2-1)),l=r-o,h,c,p;return i>=0&&i<60?[h,c,p]=[o,a,0]:i>=60&&i<120?[h,c,p]=[a,o,0]:i>=120&&i<180?[h,c,p]=[0,o,a]:i>=180&&i<240?[h,c,p]=[0,a,o]:i>=240&&i<300?[h,c,p]=[a,0,o]:[h,c,p]=[o,0,a],[(h+l)*255,(c+l)*255,(p+l)*255]}function tv(n,t,e){let i=e+t*(100-Math.abs(2*e-100))/200;return [n,i!==0?t*(100-Math.abs(2*e-100))/i:0,e+t*(100-Math.abs(2*e-100))/(2*100)]}function ev(n,t,e){let i=100-Math.abs(e*(200-t)/100-100);return [n,i!==0?t*e/i:0,e*(200-t)/(2*100)]}function Lt(n){return [n[0],n[1],n[2]]}function Ui(n,t){return [n[0],n[1],n[2],t]}function Ue(n,t){return [t==="float"?1:n==="rgb"?255:360,t==="float"?1:n==="rgb"?255:100,t==="float"?1:n==="rgb"?255:100]}function iv(n,t){return n===t?t:ip(n,t)}function Ep(n,t,e){var i;let s=Ue(t,e);return [t==="rgb"?Y(n[0],0,s[0]):iv(n[0],s[0]),Y(n[1],0,s[1]),Y(n[2],0,s[2]),Y((i=n[3])!==null&&i!==void 0?i:1,0,1)]}function Bc(n,t,e,i){let s=Ue(t,e),r=Ue(t,i);return n.map((o,a)=>o/s[a]*r[a])}function Pp(n,t,e){let i=Bc(n,t.mode,t.type,"int"),s=nv[t.mode][e.mode](...i);return Bc(s,e.mode,"int",e.type)}function sv(n){return n==="int"?"int":n==="float"?"float":void 0}function $o(n){return N(n,t=>({color:t.optional.object({alpha:t.optional.boolean,type:t.optional.custom(sv)}),expanded:t.optional.boolean,picker:t.optional.custom(Cp),readonly:t.optional.constant(false)}))}function ye(n){return n?.1:1}function kp(n){var t;return (t=n.color)===null||t===void 0?void 0:t.type}function qo(n,t,e){return rv[e](n,t)}function ov(n){return n.type==="float"}function av(n){return n.type==="int"}function lv(n){let t=n.getComponents(),e=Ue(n.mode,"int");return new L([Math.round(A(t[0],0,1,0,e[0])),Math.round(A(t[1],0,1,0,e[1])),Math.round(A(t[2],0,1,0,e[2])),t[3]],n.mode)}function hv(n){let t=n.getComponents(),e=Ue(n.mode,"int");return new Vn([A(t[0],0,e[0],0,1),A(t[1],0,e[1],0,1),A(t[2],0,e[2],0,1),t[3]],n.mode)}function it(n,t){if(n.type===t)return n;if(av(n)&&t==="float")return hv(n);if(ov(n)&&t==="int")return lv(n);throw X.shouldNeverHappen()}function cv(n,t){return n.alpha===t.alpha&&n.mode===t.mode&&n.notation===t.notation&&n.type===t.type}function dt(n,t){let e=n.match(/^(.+)%$/);return Math.min(e?parseFloat(e[1])*.01*t:parseFloat(n),t)}function Vp(n){let t=n.match(/^([0-9.]+?)(deg|grad|rad|turn)$/);if(!t)return parseFloat(n);let e=parseFloat(t[1]),i=t[2];return pv[i](e)}function Mp(n){let t=n.match(/^rgb\(\s*([0-9A-Fa-f.]+%?)\s*,\s*([0-9A-Fa-f.]+%?)\s*,\s*([0-9A-Fa-f.]+%?)\s*\)$/);if(!t)return null;let e=[dt(t[1],255),dt(t[2],255),dt(t[3],255)];return isNaN(e[0])||isNaN(e[1])||isNaN(e[2])?null:e}function uv(n){let t=Mp(n);return t?new L(t,"rgb"):null}function Sp(n){let t=n.match(/^rgba\(\s*([0-9A-Fa-f.]+%?)\s*,\s*([0-9A-Fa-f.]+%?)\s*,\s*([0-9A-Fa-f.]+%?)\s*,\s*([0-9A-Fa-f.]+%?)\s*\)$/);if(!t)return null;let e=[dt(t[1],255),dt(t[2],255),dt(t[3],255),dt(t[4],1)];return isNaN(e[0])||isNaN(e[1])||isNaN(e[2])||isNaN(e[3])?null:e}function dv(n){let t=Sp(n);return t?new L(t,"rgb"):null}function Lp(n){let t=n.match(/^hsl\(\s*([0-9A-Fa-f.]+(?:deg|grad|rad|turn)?)\s*,\s*([0-9A-Fa-f.]+%?)\s*,\s*([0-9A-Fa-f.]+%?)\s*\)$/);if(!t)return null;let e=[Vp(t[1]),dt(t[2],100),dt(t[3],100)];return isNaN(e[0])||isNaN(e[1])||isNaN(e[2])?null:e}function mv(n){let t=Lp(n);return t?new L(t,"hsl"):null}function Fp(n){let t=n.match(/^hsla\(\s*([0-9A-Fa-f.]+(?:deg|grad|rad|turn)?)\s*,\s*([0-9A-Fa-f.]+%?)\s*,\s*([0-9A-Fa-f.]+%?)\s*,\s*([0-9A-Fa-f.]+%?)\s*\)$/);if(!t)return null;let e=[Vp(t[1]),dt(t[2],100),dt(t[3],100),dt(t[4],1)];return isNaN(e[0])||isNaN(e[1])||isNaN(e[2])||isNaN(e[3])?null:e}function vv(n){let t=Fp(n);return t?new L(t,"hsl"):null}function Ap(n){let t=n.match(/^#([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])$/);if(t)return [parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)];let e=n.match(/^(?:#|0x)([0-9A-Fa-f]{2})([0-9A-Fa-f]{2})([0-9A-Fa-f]{2})$/);return e?[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16)]:null}function fv(n){let t=Ap(n);return t?new L(t,"rgb"):null}function Op(n){let t=n.match(/^#([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])$/);if(t)return [parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16),A(parseInt(t[4]+t[4],16),0,255,0,1)];let e=n.match(/^(?:#|0x)?([0-9A-Fa-f]{2})([0-9A-Fa-f]{2})([0-9A-Fa-f]{2})([0-9A-Fa-f]{2})$/);return e?[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16),A(parseInt(e[4],16),0,255,0,1)]:null}function bv(n){let t=Op(n);return t?new L(t,"rgb"):null}function Dp(n){let t=n.match(/^\{\s*r\s*:\s*([0-9A-Fa-f.]+%?)\s*,\s*g\s*:\s*([0-9A-Fa-f.]+%?)\s*,\s*b\s*:\s*([0-9A-Fa-f.]+%?)\s*\}$/);if(!t)return null;let e=[parseFloat(t[1]),parseFloat(t[2]),parseFloat(t[3])];return isNaN(e[0])||isNaN(e[1])||isNaN(e[2])?null:e}function Uc(n){return t=>{let e=Dp(t);return e?qo(e,"rgb",n):null}}function Rp(n){let t=n.match(/^\{\s*r\s*:\s*([0-9A-Fa-f.]+%?)\s*,\s*g\s*:\s*([0-9A-Fa-f.]+%?)\s*,\s*b\s*:\s*([0-9A-Fa-f.]+%?)\s*,\s*a\s*:\s*([0-9A-Fa-f.]+%?)\s*\}$/);if(!t)return null;let e=[parseFloat(t[1]),parseFloat(t[2]),parseFloat(t[3]),parseFloat(t[4])];return isNaN(e[0])||isNaN(e[1])||isNaN(e[2])||isNaN(e[3])?null:e}function $c(n){return t=>{let e=Rp(t);return e?qo(e,"rgb",n):null}}function wv(n){return _v.reduce((t,{parser:e,result:i})=>t||(e(n)?i:null),null)}function gv(n,t="int"){let e=wv(n);return e?e.notation==="hex"&&t!=="float"?Object.assign(Object.assign({},e),{type:"int"}):e.notation==="func"?Object.assign(Object.assign({},e),{type:t}):null:null}function Rn(n){let t=[fv,bv,uv,dv,mv,vv];t.push(Uc("int"),$c("int"));let e=qm(t);return i=>{let s=e(i);return s?it(s,n):null}}function xv(n){let t=Rn("int");if(typeof n!="string")return L.black();let e=t(n);return e!=null?e:L.black()}function Tp(n){let t=Y(Math.floor(n),0,255).toString(16);return t.length===1?`0${t}`:t}function Ko(n,t="#"){let e=Lt(n.getComponents("rgb")).map(Tp).join("");return `${t}${e}`}function Wo(n,t="#"){let e=n.getComponents("rgb"),i=[e[0],e[1],e[2],e[3]*255].map(Tp).join("");return `${t}${i}`}function Ip(n){let t=ht(0),e=it(n,"int");return `rgb(${Lt(e.getComponents("rgb")).map(s=>t(s)).join(", ")})`}function wi(n){let t=ht(2),e=ht(0);return `rgba(${it(n,"int").getComponents("rgb").map((r,o)=>(o===3?t:e)(r)).join(", ")})`}function Cv(n){let t=[ht(0),Oi,Oi],e=it(n,"int");return `hsl(${Lt(e.getComponents("hsl")).map((s,r)=>t[r](s)).join(", ")})`}function yv(n){let t=[ht(0),Oi,Oi,ht(2)];return `hsla(${it(n,"int").getComponents("hsl").map((s,r)=>t[r](s)).join(", ")})`}function Np(n,t){let e=ht(t==="float"?2:0),i=["r","g","b"],s=it(n,t);return `{${Lt(s.getComponents("rgb")).map((o,a)=>`${i[a]}: ${e(o)}`).join(", ")}}`}function Ev(n){return t=>Np(t,n)}function jp(n,t){let e=ht(2),i=ht(t==="float"?2:0),s=["r","g","b","a"];return `{${it(n,t).getComponents("rgb").map((a,l)=>{let h=l===3?e:i;return `${s[l]}: ${h(a)}`}).join(", ")}}`}function Pv(n){return t=>jp(t,n)}function zp(n){return kv.reduce((t,e)=>t||(cv(e.format,n)?e.stringifier:null),null)}function Vv(n){let t=n.createElement("select"),e=[{text:"RGB",value:"rgb"},{text:"HSL",value:"hsl"},{text:"HSV",value:"hsv"},{text:"HEX",value:"hex"}];return t.appendChild(e.reduce((i,s)=>{let r=n.createElement("option");return r.textContent=s.text,r.value=s.value,i.appendChild(r),i},n.createDocumentFragment())),t}function Mv(n){return ht(n==="float"?2:0)}function Sv(n,t,e){let i=Ue(n,t)[e];return new be({min:0,max:i})}function Lv(n,t,e){return new Ce(n,{arrayPosition:e===0?"fst":e===2?"lst":"mid",parser:t.parser,props:k.fromObject({formatter:Mv(t.colorType),keyScale:ye(false),pointerScale:t.colorType==="float"?.01:1}),value:R(0,{constraint:Sv(t.colorMode,t.colorType,e)}),viewProps:t.viewProps})}function Fv(n,t){let e={colorMode:t.colorMode,colorType:t.colorType,parser:It,viewProps:t.viewProps};return [0,1,2].map(i=>{let s=Lv(n,e,i);return We({primary:t.value,secondary:s.value,forward(r){return it(r,t.colorType).getComponents(t.colorMode)[i]},backward(r,o){let a=t.colorMode,h=it(r,t.colorType).getComponents(a);h[i]=o;let c=qo(Ui(Lt(h),h[3]),a,t.colorType);return it(c,"int")}}),s})}function Av(n,t){let e=new xe(n,{parser:Rn("int"),props:k.fromObject({formatter:Ko}),value:R(L.black()),viewProps:t.viewProps});return We({primary:t.value,secondary:e.value,forward:i=>new L(Lt(i.getComponents()),i.mode),backward:(i,s)=>new L(Ui(Lt(s.getComponents(i.mode)),i.getComponents()[3]),i.mode)}),[e]}function Ov(n){return n!=="hex"}function Dv(n){return Lt(n.getComponents("rgb")).reduce((t,e)=>t<<8|Math.floor(e)&255,0)}function Rv(n){return n.getComponents("rgb").reduce((t,e,i)=>{let s=Math.floor(i===3?e*255:e)&255;return t<<8|s},0)>>>0}function Tv(n){return new L([n>>16&255,n>>8&255,n&255],"rgb")}function Iv(n){return new L([n>>24&255,n>>16&255,n>>8&255,A(n&255,0,255,0,1)],"rgb")}function Nv(n){return typeof n!="number"?L.black():Tv(n)}function jv(n){return typeof n!="number"?L.black():Iv(n)}function gi(n,t){return typeof n!="object"||O(n)?false:t in n&&typeof n[t]=="number"}function Bp(n){return gi(n,"r")&&gi(n,"g")&&gi(n,"b")}function Up(n){return Bp(n)&&gi(n,"a")}function $p(n){return Bp(n)}function Ho(n,t){if(n.mode!==t.mode||n.type!==t.type)return false;let e=n.getComponents(),i=t.getComponents();for(let s=0;s<e.length;s++)if(e[s]!==i[s])return false;return true}function Kc(n){return "a"in n?[n.r,n.g,n.b,n.a]:[n.r,n.g,n.b]}function zv(n){let t=zp(n);return t?(e,i)=>{Dn(e,t(i));}:null}function Bv(n){let t=n?Rv:Dv;return (e,i)=>{Dn(e,t(i));}}function Uv(n,t,e){let s=it(t,e).toRgbaObject();n.writeProperty("r",s.r),n.writeProperty("g",s.g),n.writeProperty("b",s.b),n.writeProperty("a",s.a);}function $v(n,t,e){let s=it(t,e).toRgbaObject();n.writeProperty("r",s.r),n.writeProperty("g",s.g),n.writeProperty("b",s.b);}function qv(n,t){return (e,i)=>{n?Uv(e,i,t):$v(e,i,t);}}function Kv(n){var t;return !!(!((t=n==null?void 0:n.color)===null||t===void 0)&&t.alpha)}function Wv(n){return n?t=>Wo(t,"0x"):t=>Ko(t,"0x")}function Hv(n){return "color"in n||n.view==="color"}function Yv(n,t){if(!$p(n))return it(L.black(),t);if(t==="int"){let e=Kc(n);return new L(e,"rgb")}if(t==="float"){let e=Kc(n);return new Vn(e,"rgb")}return it(L.black(),"int")}function Xv(n){return Up(n)}function Qv(n){return t=>{let e=Yv(t,n);return it(e,"int")}}function Zv(n,t){return e=>n?jp(e,t):Np(e,t)}function ef(n,t,e){return new Ce(n,{arrayPosition:e===0?"fst":e===t.axes.length-1?"lst":"mid",parser:t.parser,props:t.axes[e].textProps,value:R(0,{constraint:t.axes[e].constraint}),viewProps:t.viewProps})}function nf(n,t){let e=[],i=op(n,t);i&&e.push(i);let s=ap(n);s&&e.push(s);let r=Uo(n.options);return r&&e.push(r),new we(e)}function Hc(n,t,e){return [lt(t[0],zt(n)),lt(t[1],Pn(n))*(e?1:-1)]}function rf(n){return kt.isObject(n)?new kt(n.x,n.y):new kt}function of(n,t){n.writeProperty("x",t.x),n.writeProperty("y",t.y);}function af(n,t){return new Sn({assembly:qp,components:[Rt(Object.assign(Object.assign({},n),n.x),t.x),Rt(Object.assign(Object.assign({},n),n.y),t.y)]})}function Gc(n,t){var e,i;if(!O(n.min)||!O(n.max))return Math.max(Math.abs((e=n.min)!==null&&e!==void 0?e:0),Math.abs((i=n.max)!==null&&i!==void 0?i:0));let s=sp(n);return Math.max(Math.abs(s)*10,Math.abs(t)*10)}function lf(n,t){var e,i;let s=Gc(fe(n,(e=n.x)!==null&&e!==void 0?e:{}),t.x),r=Gc(fe(n,(i=n.y)!==null&&i!==void 0?i:{}),t.y);return Math.max(s,r)}function hf(n){if(!("y"in n))return false;let t=n.y;return t&&"inverted"in t?!!t.inverted:false}function pf(n){return Qt.isObject(n)?new Qt(n.x,n.y,n.z):new Qt}function uf(n,t){n.writeProperty("x",t.x),n.writeProperty("y",t.y),n.writeProperty("z",t.z);}function df(n,t){return new Sn({assembly:Kp,components:[Rt(Object.assign(Object.assign({},n),n.x),t.x),Rt(Object.assign(Object.assign({},n),n.y),t.y),Rt(Object.assign(Object.assign({},n),n.z),t.z)]})}function vf(n){return Zt.isObject(n)?new Zt(n.x,n.y,n.z,n.w):new Zt}function ff(n,t){n.writeProperty("x",t.x),n.writeProperty("y",t.y),n.writeProperty("z",t.z),n.writeProperty("w",t.w);}function bf(n,t){return new Sn({assembly:Wp,components:[Rt(Object.assign(Object.assign({},n),n.x),t.x),Rt(Object.assign(Object.assign({},n),n.y),t.y),Rt(Object.assign(Object.assign({},n),n.z),t.z),Rt(Object.assign(Object.assign({},n),n.w),t.w)]})}function wf(n){let t=[],e=Uo(n.options);return e&&t.push(e),new we(t)}function yo(n){return O(n.format)?ht(2):n.format}function Cf(n){var t;return n.value.rawValue.length===1?new An(n.document,{formatter:yo(n.params),value:n.value,viewProps:n.viewProps}):new Fn(n.document,{formatter:yo(n.params),rows:(t=n.params.rows)!==null&&t!==void 0?t:Tn.monitor.defaultRows,value:n.value,viewProps:n.viewProps})}function yf(n){var t,e,i;return new Ri(n.document,{formatter:yo(n.params),rows:(t=n.params.rows)!==null&&t!==void 0?t:Tn.monitor.defaultRows,props:k.fromObject({max:(e=n.params.max)!==null&&e!==void 0?e:100,min:(i=n.params.min)!==null&&i!==void 0?i:0}),value:n.value,viewProps:n.viewProps})}function Qc(n){return n.view==="graph"}function kf(n,t){var e;let i=n.accept(t.target.read(),t.params);if(O(i))return null;let s={target:t.target,initialValue:i.initialValue,params:i.params},r=N(t.params,p=>({disabled:p.optional.boolean,hidden:p.optional.boolean,label:p.optional.string,tag:p.optional.string})),o=n.binding.reader(s),a=n.binding.constraint?n.binding.constraint(s):void 0,l=new Po({reader:o,target:t.target,writer:n.binding.writer(s)}),h=new Pr(R(o(i.initialValue),{constraint:a,equals:n.binding.equals}),l),c=n.controller({constraint:a,document:t.document,initialValue:i.initialValue,params:i.params,value:h,viewProps:jt.create({disabled:r==null?void 0:r.disabled,hidden:r==null?void 0:r.hidden})});return new Vr(t.document,{blade:Ke(),props:k.fromObject({label:"label"in t.params?(e=r==null?void 0:r.label)!==null&&e!==void 0?e:null:t.target.key}),tag:r==null?void 0:r.tag,value:h,valueController:c})}function Vf(n,t){return t===0?new Ur:new $r(n,t!=null?t:Tn.monitor.defaultInterval)}function Mf(n,t){var e,i,s;let r=n.accept(t.target.read(),t.params);if(O(r))return null;let o={target:t.target,initialValue:r.initialValue,params:r.params},a=N(t.params,u=>({bufferSize:u.optional.number,disabled:u.optional.boolean,hidden:u.optional.boolean,interval:u.optional.number,label:u.optional.string})),l=n.binding.reader(o),h=(i=(e=a==null?void 0:a.bufferSize)!==null&&e!==void 0?e:n.binding.defaultBufferSize&&n.binding.defaultBufferSize(r.params))!==null&&i!==void 0?i:1,c=new Mr({binding:new ko({reader:l,target:t.target}),bufferSize:h,ticker:Vf(t.document,a==null?void 0:a.interval)}),p=n.controller({document:t.document,params:r.params,value:c,viewProps:jt.create({disabled:a==null?void 0:a.disabled,hidden:a==null?void 0:a.hidden})});return p.viewProps.bindDisabled(c.ticker),p.viewProps.handleDispose(()=>{c.ticker.dispose();}),new Sr(t.document,{blade:Ke(),props:k.fromObject({label:"label"in t.params?(s=a==null?void 0:a.label)!==null&&s!==void 0?s:null:t.target.key}),value:c,valueController:p})}function Lf(){let n=new Vo(Sf);return [cf,mf,_f,gf,sf,tf,Jv,Gv,Xm,xf,Pf,Ef,Fm,zm,fp].forEach(t=>{n.register("core",t);}),n}function Rf(n){let t=n.createElement("div");return t.classList.add(M("dfw")()),n.body&&n.body.appendChild(t),t}function Tf(n,t,e){if(n.querySelector(`style[data-tp-style=${t}]`))return;let i=n.createElement("style");i.dataset.tpStyle=t,i.textContent=e,n.head.appendChild(i);}var Id,X,xi,z,mr,vr,fr,k,be,br,_r,wr,jd,gr,zd,xr,Wd,Jd,tm,om,Vt,Ne,Jt,Cr,yr,Er,_e,Pr,kr,Pt,_m,gm,pn,yi,Ei,Fc,Ac,je,Nt,Pi,Vr,Mr,Sr,ki,rr,Lr,Fr,Vi,bn,qe,Fm,Ar,_n,wn,Dr,Rr,gn,xn,Cn,vp,Tr,yn,zm,Bm,jt,Tc,Ir,un,Nr,jr,En,Mi,Si,Ic,zr,dn,Br,Li,fp,ze,Ur,$r,we,ge,or,qr,St,Nc,Kr,Ai,jc,Wr,xe,Km,Bt,ut,Gr,Ce,lr,Yr,Xr,hr,Qr,Be,Hm,_i,Zr,Jr,Xm,me,to,nv,L,Ht,eo,Vn,rv,pv,_v,kv,mn,no,io,Te,so,ro,cr,oo,ao,pr,qc,lo,ho,co,ur,po,uo,Mn,Gv,Jv,tf,Sn,Wc,mo,Ln,Di,sf,kt,qp,Ie,vo,Gt,fo,bo,_o,cf,Qt,Kp,mf,Zt,Wp,_f,gf,Tn,Yc,wo,Fn,Xc,go,An,xf,xo,Yt,Co,Ri,Ef,Pf,Eo,Po,ko,Vo,Sf,Ti,Ii,Ni,ji,Ff,Mo,So,Zc,Lo,zi,Af,Of,Df,Fo,If,Gp=$l(()=>{Id={alreadydisposed:()=>"View has been already disposed",invalidparams:n=>`Invalid parameters for '${n.name}'`,nomatchingcontroller:n=>`No matching controller for '${n.key}'`,nomatchingview:n=>`No matching view for '${JSON.stringify(n.params)}'`,notbindable:()=>"Value is not bindable",notcompatible:n=>`Not compatible with plugin '${n.id}'`,propertynotfound:n=>`Property '${n.name}' not found`,shouldneverhappen:()=>"This error should never happen"},X=class n{static alreadyDisposed(){return new n({type:"alreadydisposed"})}static notBindable(){return new n({type:"notbindable"})}static notCompatible(t,e){return new n({type:"notcompatible",context:{id:`${t}.${e}`}})}static propertyNotFound(t){return new n({type:"propertynotfound",context:{name:t}})}static shouldNeverHappen(){return new n({type:"shouldneverhappen"})}constructor(t){var e;this.message=(e=Id[t.type](t.context))!==null&&e!==void 0?e:"Unexpected error",this.name=this.constructor.name,this.stack=new Error(this.message).stack,this.type=t.type;}toString(){return this.message}},xi=class n{constructor(t,e){this.obj_=t,this.key=e;}static isBindable(t){return !(t===null||typeof t!="object"&&typeof t!="function")}read(){return this.obj_[this.key]}write(t){this.obj_[this.key]=t;}writeProperty(t,e){let i=this.read();if(!n.isBindable(i))throw X.notBindable();if(!(t in i))throw X.propertyNotFound(t);i[t]=e;}},z=class{constructor(){this.observers_={};}on(t,e,i){var s;let r=this.observers_[t];return r||(r=this.observers_[t]=[]),r.push({handler:e,key:(s=i==null?void 0:i.key)!==null&&s!==void 0?s:e}),this}off(t,e){let i=this.observers_[t];return i&&(this.observers_[t]=i.filter(s=>s.key!==e)),this}emit(t,e){let i=this.observers_[t];i&&i.forEach(s=>{s.handler(e);});}},mr=class{constructor(t,e){var i;this.constraint_=e==null?void 0:e.constraint,this.equals_=(i=e==null?void 0:e.equals)!==null&&i!==void 0?i:(s,r)=>s===r,this.emitter=new z,this.rawValue_=t;}get constraint(){return this.constraint_}get rawValue(){return this.rawValue_}set rawValue(t){this.setRawValue(t,{forceEmit:false,last:true});}setRawValue(t,e){let i=e!=null?e:{forceEmit:false,last:true},s=this.constraint_?this.constraint_.constrain(t):t,r=this.rawValue_;this.equals_(r,s)&&!i.forceEmit||(this.emitter.emit("beforechange",{sender:this}),this.rawValue_=s,this.emitter.emit("change",{options:i,previousRawValue:r,rawValue:s,sender:this}));}},vr=class{constructor(t){this.emitter=new z,this.value_=t;}get rawValue(){return this.value_}set rawValue(t){this.setRawValue(t,{forceEmit:false,last:true});}setRawValue(t,e){let i=e!=null?e:{forceEmit:false,last:true},s=this.value_;s===t&&!i.forceEmit||(this.emitter.emit("beforechange",{sender:this}),this.value_=t,this.emitter.emit("change",{options:i,previousRawValue:s,rawValue:this.value_,sender:this}));}},fr=class{constructor(t){this.emitter=new z,this.onValueBeforeChange_=this.onValueBeforeChange_.bind(this),this.onValueChange_=this.onValueChange_.bind(this),this.value_=t,this.value_.emitter.on("beforechange",this.onValueBeforeChange_),this.value_.emitter.on("change",this.onValueChange_);}get rawValue(){return this.value_.rawValue}onValueBeforeChange_(t){this.emitter.emit("beforechange",Object.assign(Object.assign({},t),{sender:this}));}onValueChange_(t){this.emitter.emit("change",Object.assign(Object.assign({},t),{sender:this}));}};k=class n{constructor(t){this.emitter=new z,this.valMap_=t;for(let e in this.valMap_)this.valMap_[e].emitter.on("change",()=>{this.emitter.emit("change",{key:e,sender:this});});}static createCore(t){return Object.keys(t).reduce((i,s)=>Object.assign(i,{[s]:R(t[s])}),{})}static fromObject(t){let e=this.createCore(t);return new n(e)}get(t){return this.valMap_[t].rawValue}set(t,e){this.valMap_[t].rawValue=e;}value(t){return this.valMap_[t]}},be=class{constructor(t){this.values=k.fromObject({max:t.max,min:t.min});}constrain(t){let e=this.values.get("max"),i=this.values.get("min");return Math.min(Math.max(t,i),e)}},br=class{constructor(t){this.values=k.fromObject({max:t.max,min:t.min});}constrain(t){let e=this.values.get("max"),i=this.values.get("min"),s=t;return O(i)||(s=Math.max(s,i)),O(e)||(s=Math.min(s,e)),s}},_r=class{constructor(t,e=0){this.step=t,this.origin=e;}constrain(t){let e=this.origin%this.step,i=Math.round((t-e)/this.step);return e+i*this.step}},wr=class{constructor(t){this.text=t;}evaluate(){return Number(this.text)}toString(){return this.text}},jd={"**":(n,t)=>Math.pow(n,t),"*":(n,t)=>n*t,"/":(n,t)=>n/t,"%":(n,t)=>n%t,"+":(n,t)=>n+t,"-":(n,t)=>n-t,"<<":(n,t)=>n<<t,">>":(n,t)=>n>>t,">>>":(n,t)=>n>>>t,"&":(n,t)=>n&t,"^":(n,t)=>n^t,"|":(n,t)=>n|t},gr=class{constructor(t,e,i){this.left=e,this.operator=t,this.right=i;}evaluate(){let t=jd[this.operator];if(!t)throw new Error(`unexpected binary operator: '${this.operator}`);return t(this.left.evaluate(),this.right.evaluate())}toString(){return ["b(",this.left.toString(),this.operator,this.right.toString(),")"].join(" ")}},zd={"+":n=>n,"-":n=>-n,"~":n=>~n},xr=class{constructor(t,e){this.operator=t,this.expression=e;}evaluate(){let t=zd[this.operator];if(!t)throw new Error(`unexpected unary operator: '${this.operator}`);return t(this.expression.evaluate())}toString(){return ["u(",this.operator,this.expression.toString(),")"].join(" ")}};Wd=Do([$d,qd,Kd]);Jd=Do([Gd,Xd,Zd]),tm=Do([Jd,Wd]);om=[["**"],["*","/","%"],["+","-"],["<<",">>>",">>"],["&"],["^"],["|"]].reduce((n,t)=>rm(n,t),tp);Vt=class{constructor(t){this.controller=t;}get element(){return this.controller.view.element}get disabled(){return this.controller.viewProps.get("disabled")}set disabled(t){this.controller.viewProps.set("disabled",t);}get hidden(){return this.controller.viewProps.get("hidden")}set hidden(t){this.controller.viewProps.set("hidden",t);}dispose(){this.controller.viewProps.set("disposed",true);}importState(t){return this.controller.importState(t)}exportState(){return this.controller.exportState()}},Ne=class{constructor(t){this.target=t;}},Jt=class extends Ne{constructor(t,e,i){super(t),this.value=e,this.last=i!=null?i:true;}},Cr=class extends Ne{constructor(t,e){super(t),this.expanded=e;}},yr=class extends Ne{constructor(t,e){super(t),this.index=e;}},Er=class extends Ne{constructor(t,e){super(t),this.native=e;}},_e=class extends Vt{constructor(t){super(t),this.onValueChange_=this.onValueChange_.bind(this),this.emitter_=new z,this.controller.value.emitter.on("change",this.onValueChange_);}get label(){return this.controller.labelController.props.get("label")}set label(t){this.controller.labelController.props.set("label",t);}get key(){return this.controller.value.binding.target.key}get tag(){return this.controller.tag}set tag(t){this.controller.tag=t;}on(t,e){let i=e.bind(this);return this.emitter_.on(t,s=>{i(s);},{key:e}),this}off(t,e){return this.emitter_.off(t,e),this}refresh(){this.controller.value.fetch();}onValueChange_(t){let e=this.controller.value;this.emitter_.emit("change",new Jt(this,e.binding.target.read(),t.options.last));}},Pr=class{constructor(t,e){this.onValueBeforeChange_=this.onValueBeforeChange_.bind(this),this.onValueChange_=this.onValueChange_.bind(this),this.binding=e,this.value_=t,this.value_.emitter.on("beforechange",this.onValueBeforeChange_),this.value_.emitter.on("change",this.onValueChange_),this.emitter=new z;}get rawValue(){return this.value_.rawValue}set rawValue(t){this.value_.rawValue=t;}setRawValue(t,e){this.value_.setRawValue(t,e);}fetch(){this.value_.rawValue=this.binding.read();}push(){this.binding.write(this.value_.rawValue);}onValueBeforeChange_(t){this.emitter.emit("beforechange",Object.assign(Object.assign({},t),{sender:this}));}onValueChange_(t){this.push(),this.emitter.emit("change",Object.assign(Object.assign({},t),{sender:this}));}};kr={optional:Lc(true),required:Lc(false)};Pt="http://www.w3.org/2000/svg";_m={check:'<path d="M2 8l4 4l8 -8"/>',dropdown:'<path d="M5 7h6l-3 3 z"/>',p2dpad:'<path d="M8 4v8"/><path d="M4 8h8"/><circle cx="12" cy="12" r="1.2"/>'};gm="tp";pn=M("lbl");yi=class{constructor(t,e){this.element=t.createElement("div"),this.element.classList.add(pn()),e.viewProps.bindClassModifiers(this.element);let i=t.createElement("div");i.classList.add(pn("l")),Mt(e.props,"label",r=>{O(r)?this.element.classList.add(pn(void 0,"nol")):(this.element.classList.remove(pn(void 0,"nol")),wm(i),i.appendChild(xm(t,r)));}),this.element.appendChild(i),this.labelElement=i;let s=t.createElement("div");s.classList.add(pn("v")),this.element.appendChild(s),this.valueElement=s;}},Ei=class{constructor(t,e){this.props=e.props,this.valueController=e.valueController,this.viewProps=e.valueController.viewProps,this.view=new yi(t,{props:e.props,viewProps:this.viewProps}),this.view.valueElement.appendChild(this.valueController.view.element);}importProps(t){return ct(t,null,e=>({label:e.optional.string}),e=>(this.props.set("label",e.label),true))}exportProps(){return pt(null,{label:this.props.get("label")})}};Fc=M(""),Ac={veryfirst:"vfst",first:"fst",last:"lst",verylast:"vlst"},je=class{constructor(t){this.parent_=null,this.blade=t.blade,this.view=t.view,this.viewProps=t.viewProps;let e=this.view.element;this.blade.value("positions").emitter.on("change",()=>{Cm().forEach(i=>{e.classList.remove(Fc(void 0,Ac[i]));}),this.blade.get("positions").forEach(i=>{e.classList.add(Fc(void 0,Ac[i]));});}),this.viewProps.handleDispose(()=>{No(e);});}get parent(){return this.parent_}set parent(t){this.parent_=t,this.viewProps.set("parent",this.parent_?this.parent_.viewProps:null);}importState(t){return ct(t,null,e=>({disabled:e.required.boolean,hidden:e.required.boolean}),e=>(this.viewProps.importState(e),true))}exportState(){return pt(null,Object.assign({},this.viewProps.exportState()))}},Nt=class extends je{constructor(t,e){if(e.value!==e.valueController.value)throw X.shouldNeverHappen();let i=e.valueController.viewProps,s=new Ei(t,{blade:e.blade,props:e.props,valueController:e.valueController});super(Object.assign(Object.assign({},e),{view:new yi(t,{props:e.props,viewProps:i}),viewProps:i})),this.labelController=s,this.value=e.value,this.valueController=e.valueController,this.view.valueElement.appendChild(this.valueController.view.element);}importState(t){return ct(t,e=>{var i,s,r;return super.importState(e)&&this.labelController.importProps(e)&&((r=(s=(i=this.valueController).importProps)===null||s===void 0?void 0:s.call(i,t))!==null&&r!==void 0?r:true)},e=>({value:e.optional.raw}),e=>(e.value&&(this.value.rawValue=e.value),true))}exportState(){var t,e,i;return pt(()=>super.exportState(),Object.assign(Object.assign({value:this.value.rawValue},this.labelController.exportProps()),(i=(e=(t=this.valueController).exportProps)===null||e===void 0?void 0:e.call(t))!==null&&i!==void 0?i:{}))}};Pi=class extends Nt{constructor(t,e){super(t,e),this.tag=e.tag;}importState(t){return ct(t,e=>super.importState(Oc(t)),e=>({tag:e.optional.string}),e=>(this.tag=e.tag,true))}exportState(){return pt(()=>Oc(super.exportState()),{binding:{key:this.value.binding.target.key,value:this.value.binding.target.read()},tag:this.tag})}};Vr=class extends Pi{importState(t){return ct(t,e=>super.importState(e),e=>({binding:e.required.object({value:e.required.raw})}),e=>(this.value.binding.inject(e.binding.value),this.value.fetch(),true))}};Mr=class{constructor(t){this.emitter=new z,this.onTick_=this.onTick_.bind(this),this.onValueBeforeChange_=this.onValueBeforeChange_.bind(this),this.onValueChange_=this.onValueChange_.bind(this),this.binding=t.binding,this.value_=R(Pm(t.bufferSize)),this.value_.emitter.on("beforechange",this.onValueBeforeChange_),this.value_.emitter.on("change",this.onValueChange_),this.ticker=t.ticker,this.ticker.emitter.on("tick",this.onTick_),this.fetch();}get rawValue(){return this.value_.rawValue}set rawValue(t){this.value_.rawValue=t;}setRawValue(t,e){this.value_.setRawValue(t,e);}fetch(){this.value_.rawValue=Vm(this.value_.rawValue,this.binding.read());}onTick_(){this.fetch();}onValueBeforeChange_(t){this.emitter.emit("beforechange",Object.assign(Object.assign({},t),{sender:this}));}onValueChange_(t){this.emitter.emit("change",Object.assign(Object.assign({},t),{sender:this}));}};Sr=class extends Pi{exportState(){return pt(()=>super.exportState(),{binding:{readonly:true}})}};ki=class extends Vt{get label(){return this.controller.labelController.props.get("label")}set label(t){this.controller.labelController.props.set("label",t);}get title(){var t;return (t=this.controller.buttonController.props.get("title"))!==null&&t!==void 0?t:""}set title(t){this.controller.buttonController.props.set("title",t);}on(t,e){let i=e.bind(this);return this.controller.buttonController.emitter.on(t,r=>{i(new Er(this,r.nativeEvent));}),this}off(t,e){return this.controller.buttonController.emitter.off(t,e),this}};rr=M("btn"),Lr=class{constructor(t,e){this.element=t.createElement("div"),this.element.classList.add(rr()),e.viewProps.bindClassModifiers(this.element);let i=t.createElement("button");i.classList.add(rr("b")),e.viewProps.bindDisabled(i),this.element.appendChild(i),this.buttonElement=i;let s=t.createElement("div");s.classList.add(rr("t")),jo(e.props.value("title"),s),this.buttonElement.appendChild(s);}},Fr=class{constructor(t,e){this.emitter=new z,this.onClick_=this.onClick_.bind(this),this.props=e.props,this.viewProps=e.viewProps,this.view=new Lr(t,{props:this.props,viewProps:this.viewProps}),this.view.buttonElement.addEventListener("click",this.onClick_);}importProps(t){return ct(t,null,e=>({title:e.optional.string}),e=>(this.props.set("title",e.title),true))}exportProps(){return pt(null,{title:this.props.get("title")})}onClick_(t){this.emitter.emit("click",{nativeEvent:t,sender:this});}},Vi=class extends je{constructor(t,e){let i=new Fr(t,{props:e.buttonProps,viewProps:e.viewProps}),s=new Ei(t,{blade:e.blade,props:e.labelProps,valueController:i});super({blade:e.blade,view:s.view,viewProps:e.viewProps}),this.buttonController=i,this.labelController=s;}importState(t){return ct(t,e=>super.importState(e)&&this.buttonController.importProps(e)&&this.labelController.importProps(e),()=>({}),()=>true)}exportState(){return pt(()=>super.exportState(),Object.assign(Object.assign({},this.buttonController.exportProps()),this.labelController.exportProps()))}},bn=class{constructor(t){let[e,i]=t.split("-"),s=e.split(".");this.major=parseInt(s[0],10),this.minor=parseInt(s[1],10),this.patch=parseInt(s[2],10),this.prerelease=i!=null?i:null;}toString(){let t=[this.major,this.minor,this.patch].join(".");return this.prerelease!==null?[t,this.prerelease].join("-"):t}},qe=new bn("2.0.5");Fm=st({id:"button",type:"blade",accept(n){let t=N(n,e=>({title:e.required.string,view:e.required.constant("button"),label:e.optional.string}));return t?{params:t}:null},controller(n){return new Vi(n.document,{blade:n.blade,buttonProps:k.fromObject({title:n.params.title}),labelProps:k.fromObject({label:n.params.label}),viewProps:n.viewProps})},api(n){return n.controller instanceof Vi?new ki(n.controller):null}});Ar=class{constructor(t,e){this.onRackValueChange_=this.onRackValueChange_.bind(this),this.controller_=t,this.emitter_=new z,this.pool_=e,this.controller_.rack.emitter.on("valuechange",this.onRackValueChange_);}get children(){return this.controller_.rack.children.map(t=>this.pool_.createApi(t))}addBinding(t,e,i){let s=i!=null?i:{},r=this.controller_.element.ownerDocument,o=this.pool_.createBinding(r,Tm(t,e),s),a=this.pool_.createBindingApi(o);return this.add(a,s.index)}addFolder(t){return Om(this,t)}addButton(t){return Am(this,t)}addTab(t){return Dm(this,t)}add(t,e){let i=t.controller;return this.controller_.rack.add(i,e),t}remove(t){this.controller_.rack.remove(t.controller);}addBlade(t){let e=this.controller_.element.ownerDocument,i=this.pool_.createBlade(e,t),s=this.pool_.createApi(i);return this.add(s,t.index)}on(t,e){let i=e.bind(this);return this.emitter_.on(t,s=>{i(s);},{key:e}),this}off(t,e){return this.emitter_.off(t,e),this}refresh(){this.children.forEach(t=>{Rm(t)&&t.refresh();});}onRackValueChange_(t){let e=t.bladeController,i=this.pool_.createApi(e),s=cp(e.value)?e.value.binding:null;this.emitter_.emit("change",new Jt(i,s?s.target.read():e.value.rawValue,t.options.last));}},_n=class extends Vt{constructor(t,e){super(t),this.rackApi_=new Ar(t.rackController,e);}refresh(){this.rackApi_.refresh();}},wn=class extends je{constructor(t){super({blade:t.blade,view:t.view,viewProps:t.rackController.viewProps}),this.rackController=t.rackController;}importState(t){return ct(t,e=>super.importState(e),e=>({children:e.required.array(e.required.raw)}),e=>this.rackController.rack.children.every((i,s)=>i.importState(e.children[s])))}exportState(){return pt(()=>super.exportState(),{children:this.rackController.rack.children.map(t=>t.exportState())})}};Dr=class{constructor(t){this.emitter=new z,this.items_=[],this.cache_=new Set,this.onSubListAdd_=this.onSubListAdd_.bind(this),this.onSubListRemove_=this.onSubListRemove_.bind(this),this.extract_=t;}get items(){return this.items_}allItems(){return Array.from(this.cache_)}find(t){for(let e of this.allItems())if(t(e))return e;return null}includes(t){return this.cache_.has(t)}add(t,e){if(this.includes(t))throw X.shouldNeverHappen();let i=e!==void 0?e:this.items_.length;this.items_.splice(i,0,t),this.cache_.add(t);let s=this.extract_(t);s&&(s.emitter.on("add",this.onSubListAdd_),s.emitter.on("remove",this.onSubListRemove_),s.allItems().forEach(r=>{this.cache_.add(r);})),this.emitter.emit("add",{index:i,item:t,root:this,target:this});}remove(t){let e=this.items_.indexOf(t);if(e<0)return;this.items_.splice(e,1),this.cache_.delete(t);let i=this.extract_(t);i&&(i.allItems().forEach(s=>{this.cache_.delete(s);}),i.emitter.off("add",this.onSubListAdd_),i.emitter.off("remove",this.onSubListRemove_)),this.emitter.emit("remove",{index:e,item:t,root:this,target:this});}onSubListAdd_(t){this.cache_.add(t.item),this.emitter.emit("add",{index:t.index,item:t.item,root:this,target:t.target});}onSubListRemove_(t){this.cache_.delete(t.item),this.emitter.emit("remove",{index:t.index,item:t.item,root:this,target:t.target});}};Rr=class{constructor(t){var e,i;this.emitter=new z,this.onBladePositionsChange_=this.onBladePositionsChange_.bind(this),this.onSetAdd_=this.onSetAdd_.bind(this),this.onSetRemove_=this.onSetRemove_.bind(this),this.onChildDispose_=this.onChildDispose_.bind(this),this.onChildPositionsChange_=this.onChildPositionsChange_.bind(this),this.onChildValueChange_=this.onChildValueChange_.bind(this),this.onChildViewPropsChange_=this.onChildViewPropsChange_.bind(this),this.onRackLayout_=this.onRackLayout_.bind(this),this.onRackValueChange_=this.onRackValueChange_.bind(this),this.blade_=(e=t.blade)!==null&&e!==void 0?e:null,(i=this.blade_)===null||i===void 0||i.value("positions").emitter.on("change",this.onBladePositionsChange_),this.viewProps=t.viewProps,this.bcSet_=new Dr(Nm),this.bcSet_.emitter.on("add",this.onSetAdd_),this.bcSet_.emitter.on("remove",this.onSetRemove_);}get children(){return this.bcSet_.items}add(t,e){var i;(i=t.parent)===null||i===void 0||i.remove(t),t.parent=this,this.bcSet_.add(t,e);}remove(t){t.parent=null,this.bcSet_.remove(t);}find(t){return this.bcSet_.allItems().filter(t)}onSetAdd_(t){this.updatePositions_();let e=t.target===t.root;if(this.emitter.emit("add",{bladeController:t.item,index:t.index,root:e,sender:this}),!e)return;let i=t.item;if(i.viewProps.emitter.on("change",this.onChildViewPropsChange_),i.blade.value("positions").emitter.on("change",this.onChildPositionsChange_),i.viewProps.handleDispose(this.onChildDisp