@iebh/tera-fy 2.3.11 → 2.3.12
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/CHANGELOG.md +25 -0
- package/api.md +8 -11
- package/dist/plugin.vue2.es2019.js +7 -7
- package/dist/terafy.bootstrapper.es2019.js +2 -2
- package/dist/terafy.bootstrapper.js +2 -2
- package/dist/terafy.es2019.js +5 -5
- package/dist/terafy.js +5 -5
- package/eslint.config.js +4 -66
- package/lib/{projectFile.ts → projectFile.js} +52 -76
- package/lib/syncro/{entities.ts → entities.js} +14 -83
- package/lib/syncro/{keyed.ts → keyed.js} +46 -68
- package/lib/syncro/{syncro.ts → syncro.js} +104 -136
- package/lib/{terafy.bootstrapper.ts → terafy.bootstrapper.js} +20 -30
- package/lib/{terafy.client.ts → terafy.client.js} +85 -84
- package/lib/{terafy.proxy.ts → terafy.proxy.js} +12 -26
- package/lib/{terafy.server.ts → terafy.server.js} +204 -229
- package/package.json +20 -39
- package/plugins/{base.ts → base.js} +3 -5
- package/plugins/{firebase.ts → firebase.js} +22 -21
- package/plugins/{vite.ts → vite.js} +3 -3
- package/plugins/{vue2.ts → vue2.js} +8 -10
- package/plugins/{vue3.ts → vue3.js} +7 -10
- package/utils/mixin.js +15 -0
- package/utils/{pathTools.ts → pathTools.js} +8 -9
- package/widgets/tera-file-select.vue +1 -1
- package/dist/lib/projectFile.d.ts +0 -190
- package/dist/lib/projectFile.js +0 -305
- package/dist/lib/projectFile.js.map +0 -1
- package/dist/lib/syncro/entities.d.ts +0 -34
- package/dist/lib/syncro/entities.js +0 -212
- package/dist/lib/syncro/entities.js.map +0 -1
- package/dist/lib/syncro/keyed (Rhino's conflicted copy 2026-05-10).js +0 -287
- package/dist/lib/syncro/keyed.d.ts +0 -95
- package/dist/lib/syncro/keyed.js +0 -288
- package/dist/lib/syncro/keyed.js (Rhino's conflicted copy 2026-05-10).map +0 -1
- package/dist/lib/syncro/keyed.js.map +0 -1
- package/dist/lib/syncro/syncro (Rhino's conflicted copy 2026-05-10).js +0 -765
- package/dist/lib/syncro/syncro.d (Rhino's conflicted copy 2026-05-10).ts +0 -336
- package/dist/lib/syncro/syncro.d.ts +0 -343
- package/dist/lib/syncro/syncro.js +0 -771
- package/dist/lib/syncro/syncro.js (Rhino's conflicted copy 2026-05-10).map +0 -1
- package/dist/lib/syncro/syncro.js.map +0 -1
- package/dist/lib/terafy.bootstrapper.d.ts +0 -42
- package/dist/lib/terafy.bootstrapper.js +0 -129
- package/dist/lib/terafy.bootstrapper.js.map +0 -1
- package/dist/lib/terafy.client.d.ts +0 -555
- package/dist/lib/terafy.client.js +0 -1153
- package/dist/lib/terafy.client.js.map +0 -1
- package/dist/lib/terafy.proxy.d.ts +0 -66
- package/dist/lib/terafy.proxy.js +0 -130
- package/dist/lib/terafy.proxy.js.map +0 -1
- package/dist/lib/terafy.server.d.ts +0 -697
- package/dist/lib/terafy.server.js +0 -2062
- package/dist/lib/terafy.server.js.map +0 -1
- package/dist/plugin.vue2.es2019 (Rhino's conflicted copy 2026-05-10).js +0 -1271
- package/dist/plugins/base.d.ts +0 -20
- package/dist/plugins/base.js +0 -22
- package/dist/plugins/base.js.map +0 -1
- package/dist/plugins/firebase.d.ts +0 -62
- package/dist/plugins/firebase.js +0 -123
- package/dist/plugins/firebase.js.map +0 -1
- package/dist/plugins/vite.d.ts +0 -12
- package/dist/plugins/vite.js +0 -22
- package/dist/plugins/vite.js.map +0 -1
- package/dist/plugins/vue2.d.ts +0 -67
- package/dist/plugins/vue2.js +0 -104
- package/dist/plugins/vue2.js.map +0 -1
- package/dist/plugins/vue3.d.ts +0 -63
- package/dist/plugins/vue3.js +0 -93
- package/dist/plugins/vue3.js.map +0 -1
- package/dist/utils/mixin.d.ts +0 -11
- package/dist/utils/mixin.js +0 -15
- package/dist/utils/mixin.js.map +0 -1
- package/dist/utils/pDefer.d.ts +0 -16
- package/dist/utils/pDefer.js +0 -19
- package/dist/utils/pDefer.js.map +0 -1
- package/dist/utils/pathTools.d.ts +0 -70
- package/dist/utils/pathTools.js +0 -120
- package/dist/utils/pathTools.js.map +0 -1
- package/tsconfig.json +0 -30
- package/utils/mixin.ts +0 -18
- package/utils/pDefer.ts +0 -27
package/dist/terafy.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
var Oo=typeof global=="object"&&global&&global.Object===Object&&global,mt=Oo;var jo=typeof self=="object"&&self&&self.Object===Object&&self,Ao=mt||jo||Function("return this")(),c=Ao;var So=c.Symbol,x=So;var Qt=Object.prototype,Io=Qt.hasOwnProperty,_o=Qt.toString,at=x?x.toStringTag:void 0;function Eo(t){var e=Io.call(t,at),r=t[at];try{t[at]=void 0;var o=!0}catch{}var a=_o.call(t);return o&&(e?t[at]=r:delete t[at]),a}var te=Eo;var Fo=Object.prototype,Co=Fo.toString;function Mo(t){return Co.call(t)}var ee=Mo;var No="[object Null]",Ro="[object Undefined]",re=x?x.toStringTag:void 0;function Lo(t){return t==null?t===void 0?Ro:No:re&&re in Object(t)?te(t):ee(t)}var w=Lo;function Bo(t){return t!=null&&typeof t=="object"}var v=Bo;var Do="[object Symbol]";function ko(t){return typeof t=="symbol"||v(t)&&w(t)==Do}var D=ko;function Uo(t,e){for(var r=-1,o=t==null?0:t.length,a=Array(o);++r<o;)a[r]=e(t[r],r,t);return a}var ut=Uo;var Go=Array.isArray,g=Go;var zo=1/0,oe=x?x.prototype:void 0,ae=oe?oe.toString:void 0;function ie(t){if(typeof t=="string")return t;if(g(t))return ut(t,ie)+"";if(D(t))return ae?ae.call(t):"";var e=t+"";return e=="0"&&1/t==-zo?"-0":e}var ne=ie;function Ko(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var P=Ko;function Wo(t){return t}var se=Wo;var Yo="[object AsyncFunction]",$o="[object Function]",Ho="[object GeneratorFunction]",Vo="[object Proxy]";function qo(t){if(!P(t))return!1;var e=w(t);return e==$o||e==Ho||e==Yo||e==Vo}var dt=qo;var Zo=c["__core-js_shared__"],ct=Zo;var fe=(function(){var t=/[^.]+$/.exec(ct&&ct.keys&&ct.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function Jo(t){return!!fe&&fe in t}var pe=Jo;var Xo=Function.prototype,Qo=Xo.toString;function ta(t){if(t!=null){try{return Qo.call(t)}catch{}try{return t+""}catch{}}return""}var A=ta;var ea=/[\\^$.*+?()[\]{}|]/g,ra=/^\[object .+?Constructor\]$/,oa=Function.prototype,aa=Object.prototype,ia=oa.toString,na=aa.hasOwnProperty,sa=RegExp("^"+ia.call(na).replace(ea,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function fa(t){if(!P(t)||pe(t))return!1;var e=dt(t)?sa:ra;return e.test(A(t))}var le=fa;function pa(t,e){return t?.[e]}var me=pa;function la(t,e){var r=me(t,e);return le(r)?r:void 0}var T=la;var ma=T(c,"WeakMap"),ht=ma;var ue=Object.create,ua=(function(){function t(){}return function(e){if(!P(e))return{};if(ue)return ue(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}})(),de=ua;function da(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}var ce=da;function ca(t,e){var r=-1,o=t.length;for(e||(e=Array(o));++r<o;)e[r]=t[r];return e}var he=ca;var ha=800,ga=16,xa=Date.now;function ya(t){var e=0,r=0;return function(){var o=xa(),a=ga-(o-r);if(r=o,a>0){if(++e>=ha)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var ge=ya;function ba(t){return function(){return t}}var xe=ba;var va=(function(){try{var t=T(Object,"defineProperty");return t({},"",{}),t}catch{}})(),k=va;var Ta=k?function(t,e){return k(t,"toString",{configurable:!0,enumerable:!1,value:xe(e),writable:!0})}:se,ye=Ta;var wa=ge(ye),be=wa;function Pa(t,e){for(var r=-1,o=t==null?0:t.length;++r<o&&e(t[r],r,t)!==!1;);return t}var ve=Pa;var Oa=9007199254740991,ja=/^(?:0|[1-9]\d*)$/;function Aa(t,e){var r=typeof t;return e=e??Oa,!!e&&(r=="number"||r!="symbol"&&ja.test(t))&&t>-1&&t%1==0&&t<e}var U=Aa;function Sa(t,e,r){e=="__proto__"&&k?k(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var gt=Sa;function Ia(t,e){return t===e||t!==t&&e!==e}var xt=Ia;var _a=Object.prototype,Ea=_a.hasOwnProperty;function Fa(t,e,r){var o=t[e];(!(Ea.call(t,e)&&xt(o,r))||r===void 0&&!(e in t))&>(t,e,r)}var G=Fa;function Ca(t,e,r,o){var a=!r;r||(r={});for(var n=-1,i=e.length;++n<i;){var s=e[n],f=o?o(r[s],t[s],s,r,t):void 0;f===void 0&&(f=t[s]),a?gt(r,s,f):G(r,s,f)}return r}var j=Ca;var Te=Math.max;function Ma(t,e,r){return e=Te(e===void 0?t.length-1:e,0),function(){for(var o=arguments,a=-1,n=Te(o.length-e,0),i=Array(n);++a<n;)i[a]=o[e+a];a=-1;for(var s=Array(e+1);++a<e;)s[a]=o[a];return s[e]=r(i),ce(t,this,s)}}var we=Ma;var Na=9007199254740991;function Ra(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Na}var z=Ra;function La(t){return t!=null&&z(t.length)&&!dt(t)}var yt=La;var Ba=Object.prototype;function Da(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||Ba;return t===r}var K=Da;function ka(t,e){for(var r=-1,o=Array(t);++r<t;)o[r]=e(r);return o}var Pe=ka;var Ua="[object Arguments]";function Ga(t){return v(t)&&w(t)==Ua}var Ut=Ga;var Oe=Object.prototype,za=Oe.hasOwnProperty,Ka=Oe.propertyIsEnumerable,Wa=Ut((function(){return arguments})())?Ut:function(t){return v(t)&&za.call(t,"callee")&&!Ka.call(t,"callee")},W=Wa;function Ya(){return!1}var je=Ya;var Ie=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Ae=Ie&&typeof module=="object"&&module&&!module.nodeType&&module,$a=Ae&&Ae.exports===Ie,Se=$a?c.Buffer:void 0,Ha=Se?Se.isBuffer:void 0,Va=Ha||je,bt=Va;var qa="[object Arguments]",Za="[object Array]",Ja="[object Boolean]",Xa="[object Date]",Qa="[object Error]",ti="[object Function]",ei="[object Map]",ri="[object Number]",oi="[object Object]",ai="[object RegExp]",ii="[object Set]",ni="[object String]",si="[object WeakMap]",fi="[object ArrayBuffer]",pi="[object DataView]",li="[object Float32Array]",mi="[object Float64Array]",ui="[object Int8Array]",di="[object Int16Array]",ci="[object Int32Array]",hi="[object Uint8Array]",gi="[object Uint8ClampedArray]",xi="[object Uint16Array]",yi="[object Uint32Array]",u={};u[li]=u[mi]=u[ui]=u[di]=u[ci]=u[hi]=u[gi]=u[xi]=u[yi]=!0;u[qa]=u[Za]=u[fi]=u[Ja]=u[pi]=u[Xa]=u[Qa]=u[ti]=u[ei]=u[ri]=u[oi]=u[ai]=u[ii]=u[ni]=u[si]=!1;function bi(t){return v(t)&&z(t.length)&&!!u[w(t)]}var _e=bi;function vi(t){return function(e){return t(e)}}var Y=vi;var Ee=typeof exports=="object"&&exports&&!exports.nodeType&&exports,it=Ee&&typeof module=="object"&&module&&!module.nodeType&&module,Ti=it&&it.exports===Ee,Gt=Ti&&mt.process,wi=(function(){try{var t=it&&it.require&&it.require("util").types;return t||Gt&&Gt.binding&&Gt.binding("util")}catch{}})(),S=wi;var Fe=S&&S.isTypedArray,Pi=Fe?Y(Fe):_e,Ce=Pi;var Oi=Object.prototype,ji=Oi.hasOwnProperty;function Ai(t,e){var r=g(t),o=!r&&W(t),a=!r&&!o&&bt(t),n=!r&&!o&&!a&&Ce(t),i=r||o||a||n,s=i?Pe(t.length,String):[],f=s.length;for(var p in t)(e||ji.call(t,p))&&!(i&&(p=="length"||a&&(p=="offset"||p=="parent")||n&&(p=="buffer"||p=="byteLength"||p=="byteOffset")||U(p,f)))&&s.push(p);return s}var vt=Ai;function Si(t,e){return function(r){return t(e(r))}}var Tt=Si;var Ii=Tt(Object.keys,Object),Me=Ii;var _i=Object.prototype,Ei=_i.hasOwnProperty;function Fi(t){if(!K(t))return Me(t);var e=[];for(var r in Object(t))Ei.call(t,r)&&r!="constructor"&&e.push(r);return e}var Ne=Fi;function Ci(t){return yt(t)?vt(t):Ne(t)}var $=Ci;function Mi(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}var Re=Mi;var Ni=Object.prototype,Ri=Ni.hasOwnProperty;function Li(t){if(!P(t))return Re(t);var e=K(t),r=[];for(var o in t)o=="constructor"&&(e||!Ri.call(t,o))||r.push(o);return r}var Le=Li;function Bi(t){return yt(t)?vt(t,!0):Le(t)}var H=Bi;var Di=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ki=/^\w*$/;function Ui(t,e){if(g(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||D(t)?!0:ki.test(t)||!Di.test(t)||e!=null&&t in Object(e)}var Be=Ui;var Gi=T(Object,"create"),I=Gi;function zi(){this.__data__=I?I(null):{},this.size=0}var De=zi;function Ki(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var ke=Ki;var Wi="__lodash_hash_undefined__",Yi=Object.prototype,$i=Yi.hasOwnProperty;function Hi(t){var e=this.__data__;if(I){var r=e[t];return r===Wi?void 0:r}return $i.call(e,t)?e[t]:void 0}var Ue=Hi;var Vi=Object.prototype,qi=Vi.hasOwnProperty;function Zi(t){var e=this.__data__;return I?e[t]!==void 0:qi.call(e,t)}var Ge=Zi;var Ji="__lodash_hash_undefined__";function Xi(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=I&&e===void 0?Ji:e,this}var ze=Xi;function V(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var o=t[e];this.set(o[0],o[1])}}V.prototype.clear=De;V.prototype.delete=ke;V.prototype.get=Ue;V.prototype.has=Ge;V.prototype.set=ze;var zt=V;function Qi(){this.__data__=[],this.size=0}var Ke=Qi;function tn(t,e){for(var r=t.length;r--;)if(xt(t[r][0],e))return r;return-1}var F=tn;var en=Array.prototype,rn=en.splice;function on(t){var e=this.__data__,r=F(e,t);if(r<0)return!1;var o=e.length-1;return r==o?e.pop():rn.call(e,r,1),--this.size,!0}var We=on;function an(t){var e=this.__data__,r=F(e,t);return r<0?void 0:e[r][1]}var Ye=an;function nn(t){return F(this.__data__,t)>-1}var $e=nn;function sn(t,e){var r=this.__data__,o=F(r,t);return o<0?(++this.size,r.push([t,e])):r[o][1]=e,this}var He=sn;function q(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var o=t[e];this.set(o[0],o[1])}}q.prototype.clear=Ke;q.prototype.delete=We;q.prototype.get=Ye;q.prototype.has=$e;q.prototype.set=He;var C=q;var fn=T(c,"Map"),M=fn;function pn(){this.size=0,this.__data__={hash:new zt,map:new(M||C),string:new zt}}var Ve=pn;function ln(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}var qe=ln;function mn(t,e){var r=t.__data__;return qe(e)?r[typeof e=="string"?"string":"hash"]:r.map}var N=mn;function un(t){var e=N(this,t).delete(t);return this.size-=e?1:0,e}var Ze=un;function dn(t){return N(this,t).get(t)}var Je=dn;function cn(t){return N(this,t).has(t)}var Xe=cn;function hn(t,e){var r=N(this,t),o=r.size;return r.set(t,e),this.size+=r.size==o?0:1,this}var Qe=hn;function Z(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var o=t[e];this.set(o[0],o[1])}}Z.prototype.clear=Ve;Z.prototype.delete=Ze;Z.prototype.get=Je;Z.prototype.has=Xe;Z.prototype.set=Qe;var nt=Z;var gn="Expected a function";function Kt(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(gn);var r=function(){var o=arguments,a=e?e.apply(this,o):o[0],n=r.cache;if(n.has(a))return n.get(a);var i=t.apply(this,o);return r.cache=n.set(a,i)||n,i};return r.cache=new(Kt.Cache||nt),r}Kt.Cache=nt;var tr=Kt;var xn=500;function yn(t){var e=tr(t,function(o){return r.size===xn&&r.clear(),o}),r=e.cache;return e}var er=yn;var bn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,vn=/\\(\\)?/g,Tn=er(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(bn,function(r,o,a,n){e.push(a?n.replace(vn,"$1"):o||r)}),e}),rr=Tn;function wn(t){return t==null?"":ne(t)}var or=wn;function Pn(t,e){return g(t)?t:Be(t,e)?[t]:rr(or(t))}var O=Pn;var On=1/0;function jn(t){if(typeof t=="string"||D(t))return t;var e=t+"";return e=="0"&&1/t==-On?"-0":e}var R=jn;function An(t,e){e=O(e,t);for(var r=0,o=e.length;t!=null&&r<o;)t=t[R(e[r++])];return r&&r==o?t:void 0}var wt=An;function Sn(t,e){for(var r=-1,o=e.length,a=t.length;++r<o;)t[a+r]=e[r];return t}var J=Sn;var ar=x?x.isConcatSpreadable:void 0;function In(t){return g(t)||W(t)||!!(ar&&t&&t[ar])}var ir=In;function nr(t,e,r,o,a){var n=-1,i=t.length;for(r||(r=ir),a||(a=[]);++n<i;){var s=t[n];e>0&&r(s)?e>1?nr(s,e-1,r,o,a):J(a,s):o||(a[a.length]=s)}return a}var sr=nr;function _n(t){var e=t==null?0:t.length;return e?sr(t,1):[]}var fr=_n;function En(t){return be(we(t,void 0,fr),t+"")}var Pt=En;var Fn=Tt(Object.getPrototypeOf,Object),X=Fn;var Cn="[object Object]",Mn=Function.prototype,Nn=Object.prototype,pr=Mn.toString,Rn=Nn.hasOwnProperty,Ln=pr.call(Object);function Bn(t){if(!v(t)||w(t)!=Cn)return!1;var e=X(t);if(e===null)return!0;var r=Rn.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&pr.call(r)==Ln}var lr=Bn;function Dn(t,e,r){var o=-1,a=t.length;e<0&&(e=-e>a?0:a+e),r=r>a?a:r,r<0&&(r+=a),a=e>r?0:r-e>>>0,e>>>=0;for(var n=Array(a);++o<a;)n[o]=t[o+e];return n}var mr=Dn;function kn(){this.__data__=new C,this.size=0}var ur=kn;function Un(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}var dr=Un;function Gn(t){return this.__data__.get(t)}var cr=Gn;function zn(t){return this.__data__.has(t)}var hr=zn;var Kn=200;function Wn(t,e){var r=this.__data__;if(r instanceof C){var o=r.__data__;if(!M||o.length<Kn-1)return o.push([t,e]),this.size=++r.size,this;r=this.__data__=new nt(o)}return r.set(t,e),this.size=r.size,this}var gr=Wn;function Q(t){var e=this.__data__=new C(t);this.size=e.size}Q.prototype.clear=ur;Q.prototype.delete=dr;Q.prototype.get=cr;Q.prototype.has=hr;Q.prototype.set=gr;var xr=Q;function Yn(t,e){return t&&j(e,$(e),t)}var yr=Yn;function $n(t,e){return t&&j(e,H(e),t)}var br=$n;var Pr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,vr=Pr&&typeof module=="object"&&module&&!module.nodeType&&module,Hn=vr&&vr.exports===Pr,Tr=Hn?c.Buffer:void 0,wr=Tr?Tr.allocUnsafe:void 0;function Vn(t,e){if(e)return t.slice();var r=t.length,o=wr?wr(r):new t.constructor(r);return t.copy(o),o}var Or=Vn;function qn(t,e){for(var r=-1,o=t==null?0:t.length,a=0,n=[];++r<o;){var i=t[r];e(i,r,t)&&(n[a++]=i)}return n}var jr=qn;function Zn(){return[]}var Ot=Zn;var Jn=Object.prototype,Xn=Jn.propertyIsEnumerable,Ar=Object.getOwnPropertySymbols,Qn=Ar?function(t){return t==null?[]:(t=Object(t),jr(Ar(t),function(e){return Xn.call(t,e)}))}:Ot,tt=Qn;function ts(t,e){return j(t,tt(t),e)}var Sr=ts;var es=Object.getOwnPropertySymbols,rs=es?function(t){for(var e=[];t;)J(e,tt(t)),t=X(t);return e}:Ot,jt=rs;function os(t,e){return j(t,jt(t),e)}var Ir=os;function as(t,e,r){var o=e(t);return g(t)?o:J(o,r(t))}var At=as;function is(t){return At(t,$,tt)}var _r=is;function ns(t){return At(t,H,jt)}var St=ns;var ss=T(c,"DataView"),It=ss;var fs=T(c,"Promise"),_t=fs;var ps=T(c,"Set"),Et=ps;var Er="[object Map]",ls="[object Object]",Fr="[object Promise]",Cr="[object Set]",Mr="[object WeakMap]",Nr="[object DataView]",ms=A(It),us=A(M),ds=A(_t),cs=A(Et),hs=A(ht),L=w;(It&&L(new It(new ArrayBuffer(1)))!=Nr||M&&L(new M)!=Er||_t&&L(_t.resolve())!=Fr||Et&&L(new Et)!=Cr||ht&&L(new ht)!=Mr)&&(L=function(t){var e=w(t),r=e==ls?t.constructor:void 0,o=r?A(r):"";if(o)switch(o){case ms:return Nr;case us:return Er;case ds:return Fr;case cs:return Cr;case hs:return Mr}return e});var et=L;var gs=Object.prototype,xs=gs.hasOwnProperty;function ys(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&xs.call(t,"index")&&(r.index=t.index,r.input=t.input),r}var Rr=ys;var bs=c.Uint8Array,Wt=bs;function vs(t){var e=new t.constructor(t.byteLength);return new Wt(e).set(new Wt(t)),e}var rt=vs;function Ts(t,e){var r=e?rt(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}var Lr=Ts;var ws=/\w*$/;function Ps(t){var e=new t.constructor(t.source,ws.exec(t));return e.lastIndex=t.lastIndex,e}var Br=Ps;var Dr=x?x.prototype:void 0,kr=Dr?Dr.valueOf:void 0;function Os(t){return kr?Object(kr.call(t)):{}}var Ur=Os;function js(t,e){var r=e?rt(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var Gr=js;var As="[object Boolean]",Ss="[object Date]",Is="[object Map]",_s="[object Number]",Es="[object RegExp]",Fs="[object Set]",Cs="[object String]",Ms="[object Symbol]",Ns="[object ArrayBuffer]",Rs="[object DataView]",Ls="[object Float32Array]",Bs="[object Float64Array]",Ds="[object Int8Array]",ks="[object Int16Array]",Us="[object Int32Array]",Gs="[object Uint8Array]",zs="[object Uint8ClampedArray]",Ks="[object Uint16Array]",Ws="[object Uint32Array]";function Ys(t,e,r){var o=t.constructor;switch(e){case Ns:return rt(t);case As:case Ss:return new o(+t);case Rs:return Lr(t,r);case Ls:case Bs:case Ds:case ks:case Us:case Gs:case zs:case Ks:case Ws:return Gr(t,r);case Is:return new o;case _s:case Cs:return new o(t);case Es:return Br(t);case Fs:return new o;case Ms:return Ur(t)}}var zr=Ys;function $s(t){return typeof t.constructor=="function"&&!K(t)?de(X(t)):{}}var Kr=$s;var Hs="[object Map]";function Vs(t){return v(t)&&et(t)==Hs}var Wr=Vs;var Yr=S&&S.isMap,qs=Yr?Y(Yr):Wr,$r=qs;var Zs="[object Set]";function Js(t){return v(t)&&et(t)==Zs}var Hr=Js;var Vr=S&&S.isSet,Xs=Vr?Y(Vr):Hr,qr=Xs;var Qs=1,tf=2,ef=4,Zr="[object Arguments]",rf="[object Array]",of="[object Boolean]",af="[object Date]",nf="[object Error]",Jr="[object Function]",sf="[object GeneratorFunction]",ff="[object Map]",pf="[object Number]",Xr="[object Object]",lf="[object RegExp]",mf="[object Set]",uf="[object String]",df="[object Symbol]",cf="[object WeakMap]",hf="[object ArrayBuffer]",gf="[object DataView]",xf="[object Float32Array]",yf="[object Float64Array]",bf="[object Int8Array]",vf="[object Int16Array]",Tf="[object Int32Array]",wf="[object Uint8Array]",Pf="[object Uint8ClampedArray]",Of="[object Uint16Array]",jf="[object Uint32Array]",m={};m[Zr]=m[rf]=m[hf]=m[gf]=m[of]=m[af]=m[xf]=m[yf]=m[bf]=m[vf]=m[Tf]=m[ff]=m[pf]=m[Xr]=m[lf]=m[mf]=m[uf]=m[df]=m[wf]=m[Pf]=m[Of]=m[jf]=!0;m[nf]=m[Jr]=m[cf]=!1;function Ft(t,e,r,o,a,n){var i,s=e&Qs,f=e&tf,p=e&ef;if(r&&(i=a?r(t,o,a,n):r(t)),i!==void 0)return i;if(!P(t))return t;var y=g(t);if(y){if(i=Rr(t),!s)return he(t,i)}else{var h=et(t),B=h==Jr||h==sf;if(bt(t))return Or(t,s);if(h==Xr||h==Zr||B&&!a){if(i=f||B?{}:Kr(t),!s)return f?Ir(t,br(i,t)):Sr(t,yr(i,t))}else{if(!m[h])return a?t:{};i=zr(t,h,s)}}n||(n=new xr);var ot=n.get(t);if(ot)return ot;n.set(t,i),qr(t)?t.forEach(function(b){i.add(Ft(b,e,r,b,t,n))}):$r(t)&&t.forEach(function(b,l){i.set(l,Ft(b,e,r,l,t,n))});var st=p?f?St:_r:f?H:$,ft=y?void 0:st(t);return ve(ft||t,function(b,l){ft&&(l=b,b=t[l]),G(i,l,Ft(b,e,r,l,t,n))}),i}var Ct=Ft;var Af=1,Sf=4;function If(t){return Ct(t,Af|Sf)}var Yt=If;function _f(t,e){return t!=null&&e in Object(t)}var Qr=_f;function Ef(t,e,r){e=O(e,t);for(var o=-1,a=e.length,n=!1;++o<a;){var i=R(e[o]);if(!(n=t!=null&&r(t,i)))break;t=t[i]}return n||++o!=a?n:(a=t==null?0:t.length,!!a&&z(a)&&U(i,a)&&(g(t)||W(t)))}var to=Ef;function Ff(t,e){return t!=null&&to(t,e,Qr)}var eo=Ff;function Cf(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}var ro=Cf;function Mf(t,e){return e.length<2?t:wt(t,mr(e,0,-1))}var oo=Mf;var Nf=Object.prototype,Rf=Nf.hasOwnProperty;function Lf(t,e){e=O(e,t);var r=-1,o=e.length;if(!o)return!0;for(var a=t==null||typeof t!="object"&&typeof t!="function";++r<o;){var n=e[r];if(typeof n=="string"){if(n==="__proto__"&&!Rf.call(t,"__proto__"))return!1;if(n==="constructor"&&r+1<o&&typeof e[r+1]=="string"&&e[r+1]==="prototype"){if(a&&r===0)continue;return!1}}}var i=oo(t,e);return i==null||delete i[R(ro(e))]}var ao=Lf;function Bf(t){return lr(t)?void 0:t}var io=Bf;var Df=1,kf=2,Uf=4,Gf=Pt(function(t,e){var r={};if(t==null)return r;var o=!1;e=ut(e,function(n){return n=O(n,t),o||(o=n.length>1),n}),j(t,St(t),r),o&&(r=Ct(r,Df|kf|Uf,io));for(var a=e.length;a--;)ao(r,e[a]);return r}),$t=Gf;function zf(t,e,r,o){if(!P(t))return t;e=O(e,t);for(var a=-1,n=e.length,i=n-1,s=t;s!=null&&++a<n;){var f=R(e[a]),p=r;if(f==="__proto__"||f==="constructor"||f==="prototype")return t;if(a!=i){var y=s[f];p=o?o(y,f,s):void 0,p===void 0&&(p=P(y)?y:U(e[a+1])?[]:{})}G(s,f,p),s=s[f]}return t}var no=zf;function Kf(t,e,r){for(var o=-1,a=e.length,n={};++o<a;){var i=e[o],s=wt(t,i);r(s,i)&&no(n,O(i,t),s)}return n}var so=Kf;function Wf(t,e){return so(t,e,function(r,o){return eo(t,o)})}var fo=Wf;var Yf=Pt(function(t,e){return t==null?{}:fo(t,e)}),Mt=Yf;function po(t){return{all:t=t||new Map,on:function(e,r){var o=t.get(e);o?o.push(r):t.set(e,[r])},off:function(e,r){var o=t.get(e);o&&(r?o.splice(o.indexOf(r)>>>0,1):t.set(e,[]))},emit:function(e,r){var o=t.get(e);o&&o.slice().map(function(a){a(r)}),(o=t.get("*"))&&o.slice().map(function(a){a(e,r)})}}}var lo="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var Ht=(t=21)=>{let e="",r=crypto.getRandomValues(new Uint8Array(t|=0));for(;t--;)e+=lo[r[t]&63];return e};var $f="Invalid number",Hf="Invalid rounding method";var Nt="jedec";var uo="bits",co="byte",ho="bytes",Vf="kbit";var go="array",qf="function",xo="object",Zf="string",yo="exponent",Jf="round";var Rt={symbol:{iec:{bits:["bit","Kibit","Mibit","Gibit","Tibit","Pibit","Eibit","Zibit","Yibit"],bytes:["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"]},jedec:{bits:["bit","Kbit","Mbit","Gbit","Tbit","Pbit","Ebit","Zbit","Ybit"],bytes:["B","KB","MB","GB","TB","PB","EB","ZB","YB"]}},fullform:{iec:["","kibi","mebi","gibi","tebi","pebi","exbi","zebi","yobi"],jedec:["","kilo","mega","giga","tera","peta","exa","zetta","yotta"]}},Xf=[1,1024,1048576,1073741824,1099511627776,0x4000000000000,1152921504606847e3,11805916207174113e5,12089258196146292e8],Qf=[1,1e3,1e6,1e9,1e12,1e15,1e18,1e21,1e24],tp=Math.log(1024),ep=Math.log(1e3),mo={si:{isDecimal:!0,ceil:1e3,actualStandard:Nt},iec:{isDecimal:!1,ceil:1024,actualStandard:"iec"},[Nt]:{isDecimal:!1,ceil:1024,actualStandard:Nt}};function rp(t,e){return mo[t]?mo[t]:e===2?{isDecimal:!1,ceil:1024,actualStandard:"iec"}:{isDecimal:!0,ceil:1e3,actualStandard:Nt}}function op(t,e,r,o,a,n,i,s){let f=[];f[0]=t>0?0 .toPrecision(t):0;let p=f[1]=Rt.symbol[e][r?uo:ho][0];return i===yo?0:(o[f[1]]&&(f[1]=o[f[1]]),a&&(f[1]=n[0]||Rt.fullform[e][0]+(r?"bit":co)),i===go?f:i===xo?{value:f[0],symbol:f[1],exponent:0,unit:p}:f.join(s))}function bo(t,e,r,o,a){let n=r?Qf[e]:Xf[e],i=t/n;return o&&(i*=8,i>=a&&e<8&&(i/=a,e++)),{result:i,e}}function ap(t,e,r,o,a,n,i,s,f){let p=t.toPrecision(e);if(p.includes("e")&&r<8){r++;let{result:y}=bo(o,r,a,n,i),h=f>0?Math.pow(10,f):1;p=(h===1?s(y):s(y*h)/h).toPrecision(e)}return{value:p,e:r}}function ip(t,e,r,o,a,n){let i=t;if(e===!0?i=i.toLocaleString():e.length>0?i=i.toLocaleString(e,r):o.length>0&&(i=i.toString().replace(".",o)),a&&n>0){let s=i.toString(),f=o||(s.match(/(\D)/g)||[]).pop()||".",p=s.split(f),y=p[1]||"",h=y.length,B=n-h;i=`${p[0]}${f}${y.padEnd(h+B,"0")}`}return i}function vo(t,{bits:e=!1,pad:r=!1,base:o=-1,round:a=2,locale:n="",localeOptions:i={},separator:s="",spacer:f=" ",symbols:p={},standard:y="",output:h=Zf,fullform:B=!1,fullforms:ot=[],exponent:st=-1,roundingMethod:ft=Jf,precision:b=0}={}){let l=st,E=Number(t),d=[],Lt=0,qt="",{isDecimal:pt,ceil:Bt,actualStandard:Dt}=rp(y,o),Zt=B===!0,Jt=E<0,lt=Math[ft];if(typeof t!="bigint"&&isNaN(t))throw new TypeError($f);if(typeof lt!==qf)throw new TypeError(Hf);if(Jt&&(E=-E),E===0)return op(b,Dt,e,p,Zt,ot,h,f);if((l===-1||isNaN(l))&&(l=Math.floor(pt?Math.log(E)/ep:Math.log(E)/tp),l<0&&(l=0)),l>8&&(b>0&&(b+=8-l),l=8),h===yo)return l;let{result:To,e:wo}=bo(E,l,pt,e,Bt);Lt=To,l=wo;let kt=l>0&&a>0?Math.pow(10,a):1;if(d[0]=kt===1?lt(Lt):lt(Lt*kt)/kt,d[0]===Bt&&l<8&&st===-1&&(d[0]=1,l++),b>0){let Xt=ap(d[0],b,l,E,pt,e,Bt,lt,a);d[0]=Xt.value,l=Xt.e}let Po=Rt.symbol[Dt][e?uo:ho];return qt=d[1]=pt&&l===1?e?Vf:"kB":Po[l],Jt&&(d[0]=-d[0]),p[d[1]]&&(d[1]=p[d[1]]),d[0]=ip(d[0],n,i,s,r,a),Zt&&(d[1]=ot[l]||Rt.fullform[Dt][l]+(e?"bit":co)+(d[0]===1?"":"s")),h===go?d:h===xo?{value:d[0],symbol:d[1],exponent:l,unit:qt}:f===" "?`${d[0]} ${d[1]}`:d.join(f)}var _=class t{_tera;id;sbId;name;icon;path;url;teraUrl;parsedName;created;createdFormatted;modified;modifiedFormatted;accessed;accessedFormatted;size;sizeFormatted;mime;meta={};isFolder;files;constructor(e){if(!e.tera)throw new Error("Basic file requires a `tera` key to access the Tera instance");Object.assign(this,$t(e,"encodeIdFunction")),e.encodeIdFunction&&typeof e.encodeIdFunction=="function"&&(this.id=e.encodeIdFunction(this.id));let r=this.tera;Object.defineProperty(this,"_tera",{enumerable:!1,configurable:!1,get(){return r}}),delete this.tera,this.created&&typeof this.created=="string"&&(this.created=new Date(this.created)),this.modified&&typeof this.modified=="string"&&(this.modified=new Date(this.modified)),this.accessed&&typeof this.accessed=="string"&&(this.accessed=new Date(this.accessed)),this.isFolder&&(this.files=this.files?.map(o=>{let a=o.path.split(/\//).slice(3).join("/"),n=this.url+"/"+o.name;return o.meta.reflib&&(n=n.replace(/\/project\/download\//,"/project/library/")),new t({tera:this._tera,...o,sbId:o.id,id:o.path,encodeIdFunction:e.encodeIdFunction,path:a,url:n})})),this.teraUrl=this.url.replace(/^https?:\/\/(?:.+?)\/projects\/(?:.+?)\/project\/(.+)$/,"/project/$1"),this.sizeFormatted=vo(this.size||0,{spacer:""}),this.createdFormatted=this.created?this.created.toLocaleDateString():"Unknown created date",this.modifiedFormatted=this.modified?this.modified.toLocaleDateString():"Unknown modified date",this.accessedFormatted=this.accessed?this.accessed.toLocaleDateString():"Unknown access date"}getContents(e){return this._tera.getProjectFileContents(this.id,e)}setContents(e){return this._tera.setProjectFileContents(this.id,e,{})}getRefs(){return this._tera.getProjectLibrary(this.id)}setRefs(e){return this._tera.setProjectLibrary(this.id,e)}serialize(){return Mt(this,["id","sbId","name","icon","path","url","parsedName","created","modified","accessed","size","mime","meta"])}static deserialize(e){let r=Mt(e,["tera","id","sbId","name","icon","path","url","parsedName","created","modified","accessed","size","mime","meta"]);return new t(r)}};var Vt=class{settings={session:null,devMode:!1,verbosity:1,mode:"detect",modeTimeout:300,modeFallback:"child",modeOverrides:{child(e){e.siteUrl=="https://tera-tools.com/embed"&&(e.siteUrl="https://dev.tera-tools.com/embed")}},siteUrl:"https://tera-tools.com/embed",restrictOrigin:"*",frameSandbox:["allow-forms","allow-modals","allow-orientation-lock","allow-pointer-lock","allow-popups","allow-popups-to-escape-sandbox","allow-presentation","allow-same-origin","allow-scripts","allow-top-navigation"],handshakeInterval:1e3,handshakeTimeout:1e4,debugPaths:null};events=po();dom={el:null,iframe:null,popup:null,stylesheet:null};methods=["handshake","setServerVerbosity","getUser","requireUser","getCredentials","getKindeToken","bindProject","getProject","getProjects","setActiveProject","requireProject","selectProject","getNamespace","setNamespace","listNamespaces","getProjectState","setProjectState","setProjectStateDefaults","setProjectStateRefresh","getProjectFileContents","deleteProjectFile","setProjectFileContents","createProjectFolder","deleteProjectFolder","selectProjectLibrary","getProjectLibrary","setProjectLibrary","projectLog","setPage","uiAlert","uiConfirm","uiJson","uiPanic","uiProgress","uiPrompt","uiThrow","uiSplat","uiWindow"];plugins=[];namespaces={};send(e){let r=Ht();return this.acceptPostboxes[r]={},this.acceptPostboxes[r].promise=new Promise((o,a)=>{Object.assign(this.acceptPostboxes[r],{resolve:o,reject:a}),this.sendRaw({id:r,...e})}),this.acceptPostboxes[r].promise}sendRaw(e){let r;try{if(r={TERA:1,id:e.id||Ht(),...Yt(e)},this.settings.mode=="parent")window.parent.postMessage(r,this.settings.restrictOrigin);else if(this.settings.mode=="child")this.dom.iframe.contentWindow.postMessage(r,this.settings.restrictOrigin);else if(this.settings.mode=="popup")this.dom.popup.postMessage(r,this.settings.restrictOrigin);else throw this.settings.mode=="detect"?new Error("Call init() or detectMode() before trying to send data to determine the mode"):new Error(`Unknown TERA communication mode "${this.settings.mode}"`)}catch(o){throw this.debug("ERROR",1,"Message compose client->server:",o),this.debug("ERROR",1,"Attempted to dispatch payload client->server",r),o}}rpc(e,...r){return this.send({action:"rpc",method:e,args:r})}acceptMessage(e){if(e.origin==window.location.origin)return Promise.resolve();let r=e.data;return!r.TERA||!r.id?Promise.resolve():(this.debug("INFO",3,"Received message",r),r?.action=="response"&&this.acceptPostboxes[r.id]?(r.isError===!0?this.acceptPostboxes[r.id].reject(r.response):this.acceptPostboxes[r.id].resolve(r.response),Promise.resolve()):r?.action=="rpc"?Promise.resolve().then(()=>this[r.method].apply(this,r.args)).then(o=>this.sendRaw({id:r.id,action:"response",response:o})).catch(o=>{console.warn(`TERA-FY client threw on RPC:${r.method}:`,o),this.sendRaw({id:r.id,action:"response",isError:!0,response:o&&o.toString()})}):r?.action=="event"?Promise.resolve().then(()=>this.events.emit(r.event,...r.payload)).catch(o=>{throw console.warn(`TERA-FY client threw while handling emitted event "${r.event}"`,{message:r}),o}):r?.id?(this.debug("INFO",3,`Ignoring message ID ${r.id} - was meant for someone else?`),Promise.resolve()):(this.debug("INFO",3,"Unexpected incoming TERA-FY CLIENT message",{message:r}),Promise.resolve()))}acceptPostboxes={};mountNamespace(e){if(!/^[\w-]+$/.test(e))throw new Error("Namespaces must be alphanumeric + hyphens + underscores");return this.namespaces[e]?Promise.resolve(this.namespaces[e]):Promise.resolve().then(()=>this._mountNamespace(e)).then(()=>this.namespaces[e]||Promise.reject(`teraFy.mountNamespace('${e}') resolved but no namespace has been mounted`))}_mountNamespace(e){throw console.warn(`teraFy._mountNamespace() for ${e} has not been overridden by a TERA-fy plugin, load one to add this functionality for your preferred framework`),new Error("teraFy._mountNamespace() is not supported")}unmountNamespace(e){return this.namespaces[e]?this._unmountNamespace(e):Promise.resolve()}_unmountNamespace(e){console.warn(`teraFy.unbindNamespace() for ${e} has not been overridden by a TERA-fy plugin, load one to add this functionality for your preferred framework`)}constructor(e){e&&this.set(e)}initPromise=null;init(e){if(e&&this.set(e),this.initPromise)return this.initPromise;window.addEventListener("message",this.acceptMessage.bind(this));let r=this;return this.initPromise=Promise.resolve().then(()=>this.settings.session||="tfy-"+this.getEntropicString(16)).then(()=>this.debug("INFO",4,"[0/6] Init","Session",this.settings.session,"against",this.settings.siteUrl)).then(()=>{this.settings.devMode&&(this.settings.debugPaths?this.settings.debugPaths=this.settings.debugPaths.map(o=>Array.isArray(o)?o.join("."):typeof o=="string"?o:(()=>{throw new Error("Unknown path type - should be an array or string in dotted notation")})()):this.settings.debugPaths=null,this.debug("INFO",0,"Watching state paths",this.settings.debugPaths))}).then(()=>this.detectMode()).then(o=>{if(this.debug("INFO",4,"[1/6] Setting client mode to",o),this.settings.mode=o,this.settings.modeOverrides[o])return this.debug("INFO",4,"[1/6] Applying specific config overrides for mode",o),this.settings.modeOverrides[o](this.settings)}).then(()=>this.debug("INFO",4,"[2/6] Injecting comms + styles + methods")).then(()=>Promise.all([this.injectComms(),this.injectStylesheet(),this.injectMethods()])).then(()=>{if(this.settings.verbosity<=1){this.debug("INFO",4,"[3/6] Skip - Server verbosity is already at 1");return}else return this.debug("INFO",4,`[3/6] Set server verbosity to ${this.settings.verbosity}`),this.rpc("setServerVerbosity",this.settings.verbosity)}).then(()=>this.debug("INFO",4,`[4/6] Set server mode to "${this.settings.mode}"`)).then(()=>this.rpc("setServerMode",this.settings.mode=="child"?"embedded":this.settings.mode=="parent"?"frame":this.settings.mode=="popup"?"popup":(()=>{throw new Error(`Unknown server mode "${this.settings.mode}"`)})())).then(()=>this.debug("INFO",4,"[5/6] Run client plugins")).then(()=>Promise.all(this.plugins.map(o=>o.init.call(r,this.settings)))).then(()=>(this.debug("INFO",4,"[6/6] Init complete"),r)).catch(o=>{throw this.debug("WARN",0,"Init process fault",o),o}),this.initPromise}detectMode(){return this.settings.mode!="detect"?Promise.resolve(this.settings.mode):window.self===window.parent?Promise.resolve(this.settings.modeFallback):Promise.resolve().then(()=>this.settings.mode="parent").then(()=>new Promise((e,r)=>{let o=setTimeout(()=>r("TIMEOUT"),this.settings.modeTimeout);this.rpc("handshake").then(()=>clearTimeout(o)).then(()=>e()).catch(r)})).then(()=>"parent").catch(()=>this.settings.modeFallback)}injectComms(){switch(this.settings.mode){case"child":return Promise.resolve().then(()=>new Promise(e=>{this.debug("INFO",2,"Injecting TERA site as iFrame child"),this.dom.el=document.createElement("div"),this.dom.el.id="tera-fy",this.dom.el.classList.toggle("dev-mode",this.settings.devMode),this.dom.el.classList.add("minimized"),document.body.append(this.dom.el),this.dom.el.addEventListener("click",()=>this.dom.el.classList.toggle("minimized")),this.dom.iframe=document.createElement("iframe"),this.dom.iframe.setAttribute("sandbox",this.settings.frameSandbox.join(" ")),this.dom.iframe.addEventListener("load",()=>{this.debug("INFO",3,"Embedded iframe ready"),e()}),this.dom.iframe.src=this.settings.siteUrl,this.dom.el.append(this.dom.iframe)})).then(()=>this.handshakeLoop());case"parent":return this.debug("INFO",2,"Using TERA window parent"),Promise.resolve();case"popup":return this.debug("INFO",2,"Injecting TERA site as a popup window"),this.dom.popup=window.open(this.settings.siteUrl,"_blank","popup=1, location=0, menubar=0, status=0, scrollbars=0, width=500, height=600"),this.handshakeLoop().then(()=>this.debug("INFO",3,"Popup window accepted handshake"));default:throw new Error(`Unsupported mode "${this.settings.mode}" when calling injectComms()`)}}handshakeLoop(e){let r={handshakeInterval:this.settings.handshakeInterval,handshakeTimeout:this.settings.handshakeTimeout,...e};return new Promise((o,a)=>{let n=0,i,s=setTimeout(()=>{clearTimeout(i),a("TIMEOUT")},r.handshakeTimeout),f=()=>{this.debug("INFO",4,"Trying handshake",++n),clearTimeout(i),i=setTimeout(f,r.handshakeInterval),this.rpc("handshake").then(()=>{clearTimeout(s),clearTimeout(i)}).then(()=>o()).catch(a)};f()})}injectStylesheet(){switch(this.settings.mode){case"child":this.dom.stylesheet=document.createElement("style"),this.dom.stylesheet.innerHTML=[":root {","--TERA-accent: #4d659c;","}","#tera-fy {","display: none;","position: fixed;","right: 50px;","bottom: 50px;","width: 300px;","height: 150px;","background: transparent;","body:not(.tera-fy-focus) &.minimized.dev-mode {","background: var(--TERA-accent) !important;","opacity: 0.5;","right: 0px;","bottom: 0px;","width: 30px;","height: 30px;","transition: opacity 0.2s ease-out;","cursor: pointer;","border: none;","border-top-left-radius: 30px;","border-top: 2px solid var(--TERA-accent);","border-left: 2px solid var(--TERA-accent);","display: flex;","justify-content: center;","align-items: center;","&::before {","margin: 2px 0 0 0;",'content: "\u{1F300}";',"color: #FFF;","}","&:hover {","opacity: 1;","}","& > iframe {","display: none;","}","}","body:not(.tera-fy-focus) &:not(.minimized) {","&::before {","display: flex;","align-items: center;","justify-content: center;","cursor: pointer;","background: var(--TERA-accent) !important;","opacity: 0.5;","transition: opacity 0.2s ease-out;","position: absolute;","right: 0px;","bottom: 0px;","width: 20px;","height: 20px;","margin: 2px 0 0 0;",'content: "\u2B68";',"color: #FFF;","border: none;","border-top-left-radius: 30px;","border-top: 2px solid var(--TERA-accent);","border-left: 2px solid var(--TERA-accent);","}","&:hover::before {","opacity: 1;","}","}","&.dev-mode {","display: flex;","border: 5px solid var(--TERA-accent);","background: #FFF;","}","& > iframe {","width: 100%;","height: 100%;","}","}","body.tera-fy-focus {","overflow: hidden;","& #tera-fy {","display: flex !important;","position: fixed !important;","top: 0px !important;","width: 100vw !important;","height: 100vh !important;","left: 0px !important;","z-index: 10000 !important;","}","}"].join(`
|
|
2
|
-
`),document.head.append(this.dom.stylesheet);break;case"parent":case"popup":break;default:throw new Error(`Unsupported mode "${this.settings.mode}" when injectStylesheet()`)}return Promise.resolve()}injectMethods(){return this.methods.forEach(e=>this[e]=this.rpc.bind(this,e)),Promise.resolve()}debug(...e){if(!this.settings.devMode||this.settings.verbosity<1)return;let r="log",o=1;typeof e[0]=="string"&&["INFO","LOG","WARN","ERROR"].includes(e[0])&&(r=e.shift().toLowerCase()),typeof e[0]=="number"&&(o=e[0],e.shift()),!(this.settings.verbosity<o)&&console[r]("%c[TERA-FY CLIENT]","font-weight: bold; color: #ff5722;",...e)}set(e,r,o){let a={ignoreNullish:!0,...o};return typeof e=="string"?(!a.ignoreNullish||r!=null)&&(this.settings[e]=r):Object.assign(this.settings,e),this.toggleDevMode(this.settings.devMode)}setIfDev(e,r,o){return!this.settings.devMode||r===void 0?this:this.set(e,r,o)}use(e,r){let o=typeof e=="function"?new e(this,r):typeof e=="object"?e:typeof e=="string"?(()=>{throw new Error("use(String) is not yet supported")})():(()=>{throw new Error("Expected use() call to be provided with a class initializer")})();return this.mixin(this,o),this.plugins.push(o),this}mixin(e,r){let o=[],a=r;do o.unshift(a);while(a=Object.getPrototypeOf(a));o.forEach(
|
|
1
|
+
var So=typeof global=="object"&&global&&global.Object===Object&&global,mt=So;var jo=typeof self=="object"&&self&&self.Object===Object&&self,Ao=mt||jo||Function("return this")(),d=Ao;var Io=d.Symbol,y=Io;var ee=Object.prototype,_o=ee.hasOwnProperty,Eo=ee.toString,st=y?y.toStringTag:void 0;function Co(t){var e=_o.call(t,st),r=t[st];try{t[st]=void 0;var o=!0}catch{}var a=Eo.call(t);return o&&(e?t[st]=r:delete t[st]),a}var re=Co;var Fo=Object.prototype,No=Fo.toString;function Mo(t){return No.call(t)}var oe=Mo;var Ro="[object Null]",Lo="[object Undefined]",ae=y?y.toStringTag:void 0;function Bo(t){return t==null?t===void 0?Lo:Ro:ae&&ae in Object(t)?re(t):oe(t)}var T=Bo;function Do(t){return t!=null&&typeof t=="object"}var v=Do;var ko="[object Symbol]";function Uo(t){return typeof t=="symbol"||v(t)&&T(t)==ko}var G=Uo;function Go(t,e){for(var r=-1,o=t==null?0:t.length,a=Array(o);++r<o;)a[r]=e(t[r],r,t);return a}var ut=Go;var zo=Array.isArray,x=zo;var Ko=1/0,ie=y?y.prototype:void 0,se=ie?ie.toString:void 0;function ne(t){if(typeof t=="string")return t;if(x(t))return ut(t,ne)+"";if(G(t))return se?se.call(t):"";var e=t+"";return e=="0"&&1/t==-Ko?"-0":e}var fe=ne;function Wo(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var P=Wo;function Yo(t){return t}var pe=Yo;var $o="[object AsyncFunction]",Ho="[object Function]",Vo="[object GeneratorFunction]",qo="[object Proxy]";function Jo(t){if(!P(t))return!1;var e=T(t);return e==Ho||e==Vo||e==$o||e==qo}var dt=Jo;var Zo=d["__core-js_shared__"],ct=Zo;var le=(function(){var t=/[^.]+$/.exec(ct&&ct.keys&&ct.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function Xo(t){return!!le&&le in t}var me=Xo;var Qo=Function.prototype,ta=Qo.toString;function ea(t){if(t!=null){try{return ta.call(t)}catch{}try{return t+""}catch{}}return""}var _=ea;var ra=/[\\^$.*+?()[\]{}|]/g,oa=/^\[object .+?Constructor\]$/,aa=Function.prototype,ia=Object.prototype,sa=aa.toString,na=ia.hasOwnProperty,fa=RegExp("^"+sa.call(na).replace(ra,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function pa(t){if(!P(t)||me(t))return!1;var e=dt(t)?fa:oa;return e.test(_(t))}var ue=pa;function la(t,e){return t?.[e]}var de=la;function ma(t,e){var r=de(t,e);return ue(r)?r:void 0}var w=ma;var ua=w(d,"WeakMap"),ht=ua;var ce=Object.create,da=(function(){function t(){}return function(e){if(!P(e))return{};if(ce)return ce(e);t.prototype=e;var r=new t;return t.prototype=void 0,r}})(),he=da;function ca(t,e,r){switch(r.length){case 0:return t.call(e);case 1:return t.call(e,r[0]);case 2:return t.call(e,r[0],r[1]);case 3:return t.call(e,r[0],r[1],r[2])}return t.apply(e,r)}var xe=ca;function ha(t,e){var r=-1,o=t.length;for(e||(e=Array(o));++r<o;)e[r]=t[r];return e}var ge=ha;var xa=800,ga=16,ba=Date.now;function ya(t){var e=0,r=0;return function(){var o=ba(),a=ga-(o-r);if(r=o,a>0){if(++e>=xa)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var be=ya;function va(t){return function(){return t}}var ye=va;var wa=(function(){try{var t=w(Object,"defineProperty");return t({},"",{}),t}catch{}})(),z=wa;var Ta=z?function(t,e){return z(t,"toString",{configurable:!0,enumerable:!1,value:ye(e),writable:!0})}:pe,ve=Ta;var Pa=be(ve),we=Pa;function Oa(t,e){for(var r=-1,o=t==null?0:t.length;++r<o&&e(t[r],r,t)!==!1;);return t}var Te=Oa;var Sa=9007199254740991,ja=/^(?:0|[1-9]\d*)$/;function Aa(t,e){var r=typeof t;return e=e??Sa,!!e&&(r=="number"||r!="symbol"&&ja.test(t))&&t>-1&&t%1==0&&t<e}var K=Aa;function Ia(t,e,r){e=="__proto__"&&z?z(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var xt=Ia;function _a(t,e){return t===e||t!==t&&e!==e}var gt=_a;var Ea=Object.prototype,Ca=Ea.hasOwnProperty;function Fa(t,e,r){var o=t[e];(!(Ca.call(t,e)&>(o,r))||r===void 0&&!(e in t))&&xt(t,e,r)}var W=Fa;function Na(t,e,r,o){var a=!r;r||(r={});for(var i=-1,s=e.length;++i<s;){var n=e[i],f=o?o(r[n],t[n],n,r,t):void 0;f===void 0&&(f=t[n]),a?xt(r,n,f):W(r,n,f)}return r}var I=Na;var Pe=Math.max;function Ma(t,e,r){return e=Pe(e===void 0?t.length-1:e,0),function(){for(var o=arguments,a=-1,i=Pe(o.length-e,0),s=Array(i);++a<i;)s[a]=o[e+a];a=-1;for(var n=Array(e+1);++a<e;)n[a]=o[a];return n[e]=r(s),xe(t,this,n)}}var Oe=Ma;var Ra=9007199254740991;function La(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Ra}var Y=La;function Ba(t){return t!=null&&Y(t.length)&&!dt(t)}var bt=Ba;var Da=Object.prototype;function ka(t){var e=t&&t.constructor,r=typeof e=="function"&&e.prototype||Da;return t===r}var $=ka;function Ua(t,e){for(var r=-1,o=Array(t);++r<t;)o[r]=e(r);return o}var Se=Ua;var Ga="[object Arguments]";function za(t){return v(t)&&T(t)==Ga}var kt=za;var je=Object.prototype,Ka=je.hasOwnProperty,Wa=je.propertyIsEnumerable,Ya=kt((function(){return arguments})())?kt:function(t){return v(t)&&Ka.call(t,"callee")&&!Wa.call(t,"callee")},H=Ya;function $a(){return!1}var Ae=$a;var Ee=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Ie=Ee&&typeof module=="object"&&module&&!module.nodeType&&module,Ha=Ie&&Ie.exports===Ee,_e=Ha?d.Buffer:void 0,Va=_e?_e.isBuffer:void 0,qa=Va||Ae,yt=qa;var Ja="[object Arguments]",Za="[object Array]",Xa="[object Boolean]",Qa="[object Date]",ti="[object Error]",ei="[object Function]",ri="[object Map]",oi="[object Number]",ai="[object Object]",ii="[object RegExp]",si="[object Set]",ni="[object String]",fi="[object WeakMap]",pi="[object ArrayBuffer]",li="[object DataView]",mi="[object Float32Array]",ui="[object Float64Array]",di="[object Int8Array]",ci="[object Int16Array]",hi="[object Int32Array]",xi="[object Uint8Array]",gi="[object Uint8ClampedArray]",bi="[object Uint16Array]",yi="[object Uint32Array]",m={};m[mi]=m[ui]=m[di]=m[ci]=m[hi]=m[xi]=m[gi]=m[bi]=m[yi]=!0;m[Ja]=m[Za]=m[pi]=m[Xa]=m[li]=m[Qa]=m[ti]=m[ei]=m[ri]=m[oi]=m[ai]=m[ii]=m[si]=m[ni]=m[fi]=!1;function vi(t){return v(t)&&Y(t.length)&&!!m[T(t)]}var Ce=vi;function wi(t){return function(e){return t(e)}}var V=wi;var Fe=typeof exports=="object"&&exports&&!exports.nodeType&&exports,nt=Fe&&typeof module=="object"&&module&&!module.nodeType&&module,Ti=nt&&nt.exports===Fe,Ut=Ti&&mt.process,Pi=(function(){try{var t=nt&&nt.require&&nt.require("util").types;return t||Ut&&Ut.binding&&Ut.binding("util")}catch{}})(),E=Pi;var Ne=E&&E.isTypedArray,Oi=Ne?V(Ne):Ce,Me=Oi;var Si=Object.prototype,ji=Si.hasOwnProperty;function Ai(t,e){var r=x(t),o=!r&&H(t),a=!r&&!o&&yt(t),i=!r&&!o&&!a&&Me(t),s=r||o||a||i,n=s?Se(t.length,String):[],f=n.length;for(var p in t)(e||ji.call(t,p))&&!(s&&(p=="length"||a&&(p=="offset"||p=="parent")||i&&(p=="buffer"||p=="byteLength"||p=="byteOffset")||K(p,f)))&&n.push(p);return n}var vt=Ai;function Ii(t,e){return function(r){return t(e(r))}}var wt=Ii;var _i=wt(Object.keys,Object),Re=_i;var Ei=Object.prototype,Ci=Ei.hasOwnProperty;function Fi(t){if(!$(t))return Re(t);var e=[];for(var r in Object(t))Ci.call(t,r)&&r!="constructor"&&e.push(r);return e}var Le=Fi;function Ni(t){return bt(t)?vt(t):Le(t)}var q=Ni;function Mi(t){var e=[];if(t!=null)for(var r in Object(t))e.push(r);return e}var Be=Mi;var Ri=Object.prototype,Li=Ri.hasOwnProperty;function Bi(t){if(!P(t))return Be(t);var e=$(t),r=[];for(var o in t)o=="constructor"&&(e||!Li.call(t,o))||r.push(o);return r}var De=Bi;function Di(t){return bt(t)?vt(t,!0):De(t)}var J=Di;var ki=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Ui=/^\w*$/;function Gi(t,e){if(x(t))return!1;var r=typeof t;return r=="number"||r=="symbol"||r=="boolean"||t==null||G(t)?!0:Ui.test(t)||!ki.test(t)||e!=null&&t in Object(e)}var ke=Gi;var zi=w(Object,"create"),C=zi;function Ki(){this.__data__=C?C(null):{},this.size=0}var Ue=Ki;function Wi(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var Ge=Wi;var Yi="__lodash_hash_undefined__",$i=Object.prototype,Hi=$i.hasOwnProperty;function Vi(t){var e=this.__data__;if(C){var r=e[t];return r===Yi?void 0:r}return Hi.call(e,t)?e[t]:void 0}var ze=Vi;var qi=Object.prototype,Ji=qi.hasOwnProperty;function Zi(t){var e=this.__data__;return C?e[t]!==void 0:Ji.call(e,t)}var Ke=Zi;var Xi="__lodash_hash_undefined__";function Qi(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=C&&e===void 0?Xi:e,this}var We=Qi;function Z(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var o=t[e];this.set(o[0],o[1])}}Z.prototype.clear=Ue;Z.prototype.delete=Ge;Z.prototype.get=ze;Z.prototype.has=Ke;Z.prototype.set=We;var Gt=Z;function ts(){this.__data__=[],this.size=0}var Ye=ts;function es(t,e){for(var r=t.length;r--;)if(gt(t[r][0],e))return r;return-1}var R=es;var rs=Array.prototype,os=rs.splice;function as(t){var e=this.__data__,r=R(e,t);if(r<0)return!1;var o=e.length-1;return r==o?e.pop():os.call(e,r,1),--this.size,!0}var $e=as;function is(t){var e=this.__data__,r=R(e,t);return r<0?void 0:e[r][1]}var He=is;function ss(t){return R(this.__data__,t)>-1}var Ve=ss;function ns(t,e){var r=this.__data__,o=R(r,t);return o<0?(++this.size,r.push([t,e])):r[o][1]=e,this}var qe=ns;function X(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var o=t[e];this.set(o[0],o[1])}}X.prototype.clear=Ye;X.prototype.delete=$e;X.prototype.get=He;X.prototype.has=Ve;X.prototype.set=qe;var L=X;var fs=w(d,"Map"),B=fs;function ps(){this.size=0,this.__data__={hash:new Gt,map:new(B||L),string:new Gt}}var Je=ps;function ls(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}var Ze=ls;function ms(t,e){var r=t.__data__;return Ze(e)?r[typeof e=="string"?"string":"hash"]:r.map}var D=ms;function us(t){var e=D(this,t).delete(t);return this.size-=e?1:0,e}var Xe=us;function ds(t){return D(this,t).get(t)}var Qe=ds;function cs(t){return D(this,t).has(t)}var tr=cs;function hs(t,e){var r=D(this,t),o=r.size;return r.set(t,e),this.size+=r.size==o?0:1,this}var er=hs;function Q(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e<r;){var o=t[e];this.set(o[0],o[1])}}Q.prototype.clear=Je;Q.prototype.delete=Xe;Q.prototype.get=Qe;Q.prototype.has=tr;Q.prototype.set=er;var ft=Q;var xs="Expected a function";function zt(t,e){if(typeof t!="function"||e!=null&&typeof e!="function")throw new TypeError(xs);var r=function(){var o=arguments,a=e?e.apply(this,o):o[0],i=r.cache;if(i.has(a))return i.get(a);var s=t.apply(this,o);return r.cache=i.set(a,s)||i,s};return r.cache=new(zt.Cache||ft),r}zt.Cache=ft;var rr=zt;var gs=500;function bs(t){var e=rr(t,function(o){return r.size===gs&&r.clear(),o}),r=e.cache;return e}var or=bs;var ys=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,vs=/\\(\\)?/g,ws=or(function(t){var e=[];return t.charCodeAt(0)===46&&e.push(""),t.replace(ys,function(r,o,a,i){e.push(a?i.replace(vs,"$1"):o||r)}),e}),ar=ws;function Ts(t){return t==null?"":fe(t)}var ir=Ts;function Ps(t,e){return x(t)?t:ke(t,e)?[t]:ar(ir(t))}var O=Ps;var Os=1/0;function Ss(t){if(typeof t=="string"||G(t))return t;var e=t+"";return e=="0"&&1/t==-Os?"-0":e}var F=Ss;function js(t,e){e=O(e,t);for(var r=0,o=e.length;t!=null&&r<o;)t=t[F(e[r++])];return r&&r==o?t:void 0}var Tt=js;function As(t,e){for(var r=-1,o=e.length,a=t.length;++r<o;)t[a+r]=e[r];return t}var tt=As;var sr=y?y.isConcatSpreadable:void 0;function Is(t){return x(t)||H(t)||!!(sr&&t&&t[sr])}var nr=Is;function fr(t,e,r,o,a){var i=-1,s=t.length;for(r||(r=nr),a||(a=[]);++i<s;){var n=t[i];e>0&&r(n)?e>1?fr(n,e-1,r,o,a):tt(a,n):o||(a[a.length]=n)}return a}var pr=fr;function _s(t){var e=t==null?0:t.length;return e?pr(t,1):[]}var lr=_s;function Es(t){return we(Oe(t,void 0,lr),t+"")}var Pt=Es;var Cs=wt(Object.getPrototypeOf,Object),et=Cs;var Fs="[object Object]",Ns=Function.prototype,Ms=Object.prototype,mr=Ns.toString,Rs=Ms.hasOwnProperty,Ls=mr.call(Object);function Bs(t){if(!v(t)||T(t)!=Fs)return!1;var e=et(t);if(e===null)return!0;var r=Rs.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&mr.call(r)==Ls}var ur=Bs;function Ds(t,e,r){var o=-1,a=t.length;e<0&&(e=-e>a?0:a+e),r=r>a?a:r,r<0&&(r+=a),a=e>r?0:r-e>>>0,e>>>=0;for(var i=Array(a);++o<a;)i[o]=t[o+e];return i}var dr=Ds;function ks(){this.__data__=new L,this.size=0}var cr=ks;function Us(t){var e=this.__data__,r=e.delete(t);return this.size=e.size,r}var hr=Us;function Gs(t){return this.__data__.get(t)}var xr=Gs;function zs(t){return this.__data__.has(t)}var gr=zs;var Ks=200;function Ws(t,e){var r=this.__data__;if(r instanceof L){var o=r.__data__;if(!B||o.length<Ks-1)return o.push([t,e]),this.size=++r.size,this;r=this.__data__=new ft(o)}return r.set(t,e),this.size=r.size,this}var br=Ws;function rt(t){var e=this.__data__=new L(t);this.size=e.size}rt.prototype.clear=cr;rt.prototype.delete=hr;rt.prototype.get=xr;rt.prototype.has=gr;rt.prototype.set=br;var yr=rt;function Ys(t,e){return t&&I(e,q(e),t)}var vr=Ys;function $s(t,e){return t&&I(e,J(e),t)}var wr=$s;var Sr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Tr=Sr&&typeof module=="object"&&module&&!module.nodeType&&module,Hs=Tr&&Tr.exports===Sr,Pr=Hs?d.Buffer:void 0,Or=Pr?Pr.allocUnsafe:void 0;function Vs(t,e){if(e)return t.slice();var r=t.length,o=Or?Or(r):new t.constructor(r);return t.copy(o),o}var jr=Vs;function qs(t,e){for(var r=-1,o=t==null?0:t.length,a=0,i=[];++r<o;){var s=t[r];e(s,r,t)&&(i[a++]=s)}return i}var Ar=qs;function Js(){return[]}var Ot=Js;var Zs=Object.prototype,Xs=Zs.propertyIsEnumerable,Ir=Object.getOwnPropertySymbols,Qs=Ir?function(t){return t==null?[]:(t=Object(t),Ar(Ir(t),function(e){return Xs.call(t,e)}))}:Ot,ot=Qs;function tn(t,e){return I(t,ot(t),e)}var _r=tn;var en=Object.getOwnPropertySymbols,rn=en?function(t){for(var e=[];t;)tt(e,ot(t)),t=et(t);return e}:Ot,St=rn;function on(t,e){return I(t,St(t),e)}var Er=on;function an(t,e,r){var o=e(t);return x(t)?o:tt(o,r(t))}var jt=an;function sn(t){return jt(t,q,ot)}var Cr=sn;function nn(t){return jt(t,J,St)}var At=nn;var fn=w(d,"DataView"),It=fn;var pn=w(d,"Promise"),_t=pn;var ln=w(d,"Set"),Et=ln;var Fr="[object Map]",mn="[object Object]",Nr="[object Promise]",Mr="[object Set]",Rr="[object WeakMap]",Lr="[object DataView]",un=_(It),dn=_(B),cn=_(_t),hn=_(Et),xn=_(ht),k=T;(It&&k(new It(new ArrayBuffer(1)))!=Lr||B&&k(new B)!=Fr||_t&&k(_t.resolve())!=Nr||Et&&k(new Et)!=Mr||ht&&k(new ht)!=Rr)&&(k=function(t){var e=T(t),r=e==mn?t.constructor:void 0,o=r?_(r):"";if(o)switch(o){case un:return Lr;case dn:return Fr;case cn:return Nr;case hn:return Mr;case xn:return Rr}return e});var at=k;var gn=Object.prototype,bn=gn.hasOwnProperty;function yn(t){var e=t.length,r=new t.constructor(e);return e&&typeof t[0]=="string"&&bn.call(t,"index")&&(r.index=t.index,r.input=t.input),r}var Br=yn;var vn=d.Uint8Array,Kt=vn;function wn(t){var e=new t.constructor(t.byteLength);return new Kt(e).set(new Kt(t)),e}var it=wn;function Tn(t,e){var r=e?it(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}var Dr=Tn;var Pn=/\w*$/;function On(t){var e=new t.constructor(t.source,Pn.exec(t));return e.lastIndex=t.lastIndex,e}var kr=On;var Ur=y?y.prototype:void 0,Gr=Ur?Ur.valueOf:void 0;function Sn(t){return Gr?Object(Gr.call(t)):{}}var zr=Sn;function jn(t,e){var r=e?it(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var Kr=jn;var An="[object Boolean]",In="[object Date]",_n="[object Map]",En="[object Number]",Cn="[object RegExp]",Fn="[object Set]",Nn="[object String]",Mn="[object Symbol]",Rn="[object ArrayBuffer]",Ln="[object DataView]",Bn="[object Float32Array]",Dn="[object Float64Array]",kn="[object Int8Array]",Un="[object Int16Array]",Gn="[object Int32Array]",zn="[object Uint8Array]",Kn="[object Uint8ClampedArray]",Wn="[object Uint16Array]",Yn="[object Uint32Array]";function $n(t,e,r){var o=t.constructor;switch(e){case Rn:return it(t);case An:case In:return new o(+t);case Ln:return Dr(t,r);case Bn:case Dn:case kn:case Un:case Gn:case zn:case Kn:case Wn:case Yn:return Kr(t,r);case _n:return new o;case En:case Nn:return new o(t);case Cn:return kr(t);case Fn:return new o;case Mn:return zr(t)}}var Wr=$n;function Hn(t){return typeof t.constructor=="function"&&!$(t)?he(et(t)):{}}var Yr=Hn;var Vn="[object Map]";function qn(t){return v(t)&&at(t)==Vn}var $r=qn;var Hr=E&&E.isMap,Jn=Hr?V(Hr):$r,Vr=Jn;var Zn="[object Set]";function Xn(t){return v(t)&&at(t)==Zn}var qr=Xn;var Jr=E&&E.isSet,Qn=Jr?V(Jr):qr,Zr=Qn;var tf=1,ef=2,rf=4,Xr="[object Arguments]",of="[object Array]",af="[object Boolean]",sf="[object Date]",nf="[object Error]",Qr="[object Function]",ff="[object GeneratorFunction]",pf="[object Map]",lf="[object Number]",to="[object Object]",mf="[object RegExp]",uf="[object Set]",df="[object String]",cf="[object Symbol]",hf="[object WeakMap]",xf="[object ArrayBuffer]",gf="[object DataView]",bf="[object Float32Array]",yf="[object Float64Array]",vf="[object Int8Array]",wf="[object Int16Array]",Tf="[object Int32Array]",Pf="[object Uint8Array]",Of="[object Uint8ClampedArray]",Sf="[object Uint16Array]",jf="[object Uint32Array]",l={};l[Xr]=l[of]=l[xf]=l[gf]=l[af]=l[sf]=l[bf]=l[yf]=l[vf]=l[wf]=l[Tf]=l[pf]=l[lf]=l[to]=l[mf]=l[uf]=l[df]=l[cf]=l[Pf]=l[Of]=l[Sf]=l[jf]=!0;l[nf]=l[Qr]=l[hf]=!1;function Ct(t,e,r,o,a,i){var s,n=e&tf,f=e&ef,p=e&rf;if(r&&(s=a?r(t,o,a,i):r(t)),s!==void 0)return s;if(!P(t))return t;var h=x(t);if(h){if(s=Br(t),!n)return ge(t,s)}else{var c=at(t),S=c==Qr||c==ff;if(yt(t))return jr(t,n);if(c==to||c==Xr||S&&!a){if(s=f||S?{}:Yr(t),!n)return f?Er(t,wr(s,t)):_r(t,vr(s,t))}else{if(!l[c])return a?t:{};s=Wr(t,c,n)}}i||(i=new yr);var g=i.get(t);if(g)return g;i.set(t,s),Zr(t)?t.forEach(function(j){s.add(Ct(j,e,r,j,t,i))}):Vr(t)&&t.forEach(function(j,u){s.set(u,Ct(j,e,r,u,t,i))});var b=p?f?At:Cr:f?J:q,M=h?void 0:b(t);return Te(M||t,function(j,u){M&&(u=j,j=t[u]),W(s,u,Ct(j,e,r,u,t,i))}),s}var Ft=Ct;var Af=1,If=4;function _f(t){return Ft(t,Af|If)}var Wt=_f;function Ef(t,e){return t!=null&&e in Object(t)}var eo=Ef;function Cf(t,e,r){e=O(e,t);for(var o=-1,a=e.length,i=!1;++o<a;){var s=F(e[o]);if(!(i=t!=null&&r(t,s)))break;t=t[s]}return i||++o!=a?i:(a=t==null?0:t.length,!!a&&Y(a)&&K(s,a)&&(x(t)||H(t)))}var ro=Cf;function Ff(t,e){return t!=null&&ro(t,e,eo)}var oo=Ff;function Nf(t){var e=t==null?0:t.length;return e?t[e-1]:void 0}var ao=Nf;function Mf(t,e){return e.length<2?t:Tt(t,dr(e,0,-1))}var io=Mf;var Rf=Object.prototype,Lf=Rf.hasOwnProperty;function Bf(t,e){e=O(e,t);var r=-1,o=e.length;if(!o)return!0;for(;++r<o;){var a=F(e[r]);if(a==="__proto__"&&!Lf.call(t,"__proto__")||(a==="constructor"||a==="prototype")&&r<o-1)return!1}var i=io(t,e);return i==null||delete i[F(ao(e))]}var so=Bf;function Df(t){return ur(t)?void 0:t}var no=Df;var kf=1,Uf=2,Gf=4,zf=Pt(function(t,e){var r={};if(t==null)return r;var o=!1;e=ut(e,function(i){return i=O(i,t),o||(o=i.length>1),i}),I(t,At(t),r),o&&(r=Ft(r,kf|Uf|Gf,no));for(var a=e.length;a--;)so(r,e[a]);return r}),Yt=zf;function Kf(t,e,r,o){if(!P(t))return t;e=O(e,t);for(var a=-1,i=e.length,s=i-1,n=t;n!=null&&++a<i;){var f=F(e[a]),p=r;if(f==="__proto__"||f==="constructor"||f==="prototype")return t;if(a!=s){var h=n[f];p=o?o(h,f,n):void 0,p===void 0&&(p=P(h)?h:K(e[a+1])?[]:{})}W(n,f,p),n=n[f]}return t}var fo=Kf;function Wf(t,e,r){for(var o=-1,a=e.length,i={};++o<a;){var s=e[o],n=Tt(t,s);r(n,s)&&fo(i,O(s,t),n)}return i}var po=Wf;function Yf(t,e){return po(t,e,function(r,o){return oo(t,o)})}var lo=Yf;var $f=Pt(function(t,e){return t==null?{}:lo(t,e)}),Nt=$f;function mo(t){return{all:t=t||new Map,on:function(e,r){var o=t.get(e);o?o.push(r):t.set(e,[r])},off:function(e,r){var o=t.get(e);o&&(r?o.splice(o.indexOf(r)>>>0,1):t.set(e,[]))},emit:function(e,r){var o=t.get(e);o&&o.slice().map(function(a){a(r)}),(o=t.get("*"))&&o.slice().map(function(a){a(e,r)})}}}var uo="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var $t=(t=21)=>{let e="",r=crypto.getRandomValues(new Uint8Array(t|=0));for(;t--;)e+=uo[r[t]&63];return e};var co="Invalid number",Hf="Invalid rounding method";var Mt="jedec";var Vf="bits",xo="byte",qf="bytes",Jf="kbit";var go="array",Zf="function",bo="object",Xf="string",yo="exponent",Qf="round";var pt={symbol:{iec:{bits:["bit","Kibit","Mibit","Gibit","Tibit","Pibit","Eibit","Zibit","Yibit"],bytes:["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"]},jedec:{bits:["bit","Kbit","Mbit","Gbit","Tbit","Pbit","Ebit","Zbit","Ybit"],bytes:["B","KB","MB","GB","TB","PB","EB","ZB","YB"]}},fullform:{iec:["","kibi","mebi","gibi","tebi","pebi","exbi","zebi","yobi"],jedec:["","kilo","mega","giga","tera","peta","exa","zetta","yotta"]}},tp=[1,1024,1048576,1073741824,1099511627776,0x4000000000000,1152921504606847e3,11805916207174113e5,12089258196146292e8],ep=[1,1e3,1e6,1e9,1e12,1e15,1e18,1e21,1e24],rp=Math.log(1024),op=Math.log(1e3),ho={si:{isDecimal:!0,ceil:1e3,actualStandard:Mt},iec:{isDecimal:!1,ceil:1024,actualStandard:"iec"},[Mt]:{isDecimal:!1,ceil:1024,actualStandard:Mt}};function ap(t,e){return ho[t]?ho[t]:e===2?{isDecimal:!1,ceil:1024,actualStandard:"iec"}:{isDecimal:!0,ceil:1e3,actualStandard:Mt}}function ip(t,e,r,o,a,i,s,n,f){let p;return t>0?p=0 .toPrecision(t):p=0,s===yo?0:(f||(f=r?pt.symbol[e].bits[0]:pt.symbol[e].bytes[0]),o[f]&&(f=o[f]),a&&(i[0]?f=i[0]:(f=pt.fullform[e][0],r?f+="bit":f+=xo)),s===go?[p,f]:s===bo?{value:p,symbol:f,exponent:0,unit:f}:p+n+f)}function vo(t,e,r,o,a,i=!0){let s;r?s=ep[e]:s=tp[e];let n=t/s;return o&&(n*=8,i&&n>=a&&e<8&&(n/=a,e++)),{result:n,e}}function sp(t,e,r,o,a,i,s,n,f,p){typeof t=="string"&&(t=parseFloat(t));let h=t.toPrecision(e),c=p===-1||isNaN(p);if(h.includes("e")&&r<8&&c){r++;let{result:S}=vo(o,r,a,i,s),g;f>0?g=Math.pow(10,f):g=1;let b;g===1?b=n(S):b=n(S*g)/g,h=b.toPrecision(e)}return{value:h,e:r}}function np(t,e,r,o,a,i){let s=t;if(e===!0?s=s.toLocaleString():e.length>0?s=s.toLocaleString(e,r):o.length>0&&(s=s.toString().replace(".",o)),a&&i>0){let n=s.toString(),f=o||(n.slice(1).match(/[.,]/g)||[]).pop()||".",p=n.split(f),h=p[1]||"",c=h.length,S=i-c;s=`${p[0]}${f}${h.padEnd(c+S,"0")}`}return s}function fp(t,e,r,o,a){return(e===-1||isNaN(e))&&(o?e=Math.floor(Math.log(t)/op):e=Math.floor(Math.log(t)/rp),e<0&&(e=0)),e>8?(a>0&&(a+=8-e),{e:8,precision:a}):{e,precision:a}}function pp(t,e,r,o,a,i){let s;r>0&&o>0?s=Math.pow(10,o):s=1;let n;return s===1?n=a(t):n=a(t*s)/s,n===e&&r<8&&i&&(n=1,r++),{value:n,e:r}}function lp(t,e,r,o){let a=pt.symbol[t][e?Vf:qf],i;return o&&r===1?e?i=Jf:i="kB":i=a[r],i}function mp(t,e,r,o,a,i,s,n,f,p,h,c,S){if(e&&(t[0]=-t[0]),r[t[1]]&&(t[1]=r[t[1]]),t[0]=np(t[0],o,a,i,s,n),f){let g;S?g="bit":g=xo;let b;typeof t[0]=="string"?b=parseFloat(t[0]):b=t[0];let M;b===1?M="":M="s",p[c]?t[1]=p[c]:t[1]=pt.fullform[h][c]+g+M}}function up(t,e,r,o,a){if(o===go)return t;if(o===bo)return{value:t[0],symbol:t[1],exponent:e,unit:r};let i;return a===" "?i=`${t[0]} ${t[1]}`:i=t.join(a),i}function wo(t,{bits:e=!1,pad:r=!1,base:o=-1,round:a=2,locale:i="",localeOptions:s={},separator:n="",spacer:f=" ",symbols:p={},standard:h="",output:c=Xf,fullform:S=!1,fullforms:g=[],exponent:b=-1,roundingMethod:M=Qf,precision:j=0}={}){let u=b,A,U=[],Vt=0,Rt="";if(typeof t=="bigint")A=Number(t);else{if(A=Number(t),isNaN(t))throw new TypeError(co);if(!isFinite(A))throw new TypeError(co)}let{isDecimal:lt,ceil:Lt,actualStandard:Bt}=ap(h,o),qt=S===!0,Jt=A<0,Dt=Math[M];if(typeof Dt!==Zf)throw new TypeError(Hf);if(Jt&&(A=-A),A===0)return ip(j,Bt,e,p,qt,g,c,f);let{e:To,precision:Zt}=fp(A,u,b,lt,j);u=To;let Xt=b===-1||isNaN(b);if(c===yo)return u;let{result:Po,e:Oo}=vo(A,u,lt,e,Lt,Xt);Vt=Po,u=Oo;let Qt=pp(Vt,Lt,u,a,Dt,Xt);if(U[0]=Qt.value,u=Qt.e,Zt>0){let te=sp(U[0],Zt,u,A,lt,e,Lt,Dt,a,b);U[0]=te.value,u=te.e}return Rt=lp(Bt,e,u,lt),U[1]=Rt,mp(U,Jt,p,i,s,n,r,a,qt,g,Bt,u,e),up(U,u,Rt,c,f)}var N=class t{_tera;id;sbId;name;icon;path;url;teraUrl;parsedName;created;createdFormatted;modified;modifiedFormatted;accessed;accessedFormatted;size;sizeFormatted;mime;meta={};isFolder;files;constructor(e){if(!e.tera)throw new Error("Basic file requires a `tera` key to access the Tera instance");Object.assign(this,Yt(e,"encodeIdFunction")),e.encodeIdFunction&&typeof e.encodeIdFunction=="function"&&(this.id=e.encodeIdFunction(this.id));let r=this.tera;Object.defineProperty(this,"_tera",{enumerable:!1,configurable:!1,get(){return r}}),delete this.tera,this.created&&typeof this.created=="string"&&(this.created=new Date(this.created)),this.modified&&typeof this.modified=="string"&&(this.modified=new Date(this.modified)),this.accessed&&typeof this.accessed=="string"&&(this.accessed=new Date(this.accessed)),this.isFolder&&(this.files=this.files?.map(o=>{let a=o.path.split(/\//).slice(3).join("/"),i=this.url+"/"+o.name;return o.meta.reflib&&(i=i.replace(/\/project\/download\//,"/project/library/")),new t({tera:r,...o,sbId:o.id,id:o.path,encodeIdFunction:e.encodeIdFunction,path:a,url:i})})),this.teraUrl=this.url.replace(/^https?:\/\/(?:.+?)\/projects\/(?:.+?)\/project\/(.+)$/,"/project/$1"),this.sizeFormatted=wo(this.size||0,{spacer:""}),this.createdFormatted=this.created?this.created.toLocaleDateString():"Unknown created date",this.modifiedFormatted=this.modified?this.modified.toLocaleDateString():"Unknown modified date",this.accessedFormatted=this.accessed?this.accessed.toLocaleDateString():"Unknown access date"}getContents(e){return this._tera.getProjectFileContents(this.id,e)}setContents(e){return this._tera.setProjectFileContents(this.id,e,{})}getRefs(){return this._tera.getProjectLibrary(this.id)}setRefs(e){return this._tera.setProjectLibrary(this.id,e)}serialize(){return Nt(this,["id","sbId","name","icon","path","url","parsedName","created","modified","accessed","size","mime","meta"])}static deserialize(e){let r=Nt(e,["tera","id","sbId","name","icon","path","url","parsedName","created","modified","accessed","size","mime","meta"]);return new t(r)}};var Ht=class{settings={session:null,devMode:!1,verbosity:1,mode:"detect",modeTimeout:300,modeFallback:"child",modeOverrides:{child(e){e.siteUrl=="https://tera-tools.com/embed"&&(e.siteUrl="https://dev.tera-tools.com/embed")}},siteUrl:"https://tera-tools.com/embed",restrictOrigin:"*",frameSandbox:["allow-forms","allow-modals","allow-orientation-lock","allow-pointer-lock","allow-popups","allow-popups-to-escape-sandbox","allow-presentation","allow-same-origin","allow-scripts","allow-top-navigation"],handshakeInterval:1e3,handshakeTimeout:1e4,debugPaths:null};events=mo();dom={el:null,iframe:null,popup:null,stylesheet:null};methods=["handshake","setServerVerbosity","getUser","requireUser","getCredentials","getKindeToken","bindProject","getProject","getProjects","setActiveProject","requireProject","selectProject","getNamespace","setNamespace","listNamespaces","getProjectState","setProjectState","setProjectStateDefaults","setProjectStateRefresh","getProjectFileContents","deleteProjectFile","setProjectFileContents","createProjectFolder","deleteProjectFolder","selectProjectLibrary","getProjectLibrary","setProjectLibrary","projectLog","setPage","uiAlert","uiConfirm","uiJson","uiPanic","uiProgress","uiPrompt","uiThrow","uiSplat","uiWindow"];plugins=[];namespaces={};send(e){let r=$t();return this.acceptPostboxes[r]={},this.acceptPostboxes[r].promise=new Promise((o,a)=>{Object.assign(this.acceptPostboxes[r],{resolve:o,reject:a}),this.sendRaw({id:r,...e})}),this.acceptPostboxes[r].promise}sendRaw(e){let r;try{if(r={TERA:1,id:e.id||$t(),...Wt(e)},this.settings.mode=="parent")window.parent.postMessage(r,this.settings.restrictOrigin);else if(this.settings.mode=="child")this.dom.iframe.contentWindow.postMessage(r,this.settings.restrictOrigin);else if(this.settings.mode=="popup")this.dom.popup.postMessage(r,this.settings.restrictOrigin);else throw this.settings.mode=="detect"?new Error("Call init() or detectMode() before trying to send data to determine the mode"):new Error(`Unknown TERA communication mode "${this.settings.mode}"`)}catch(o){throw this.debug("ERROR",1,"Message compose client->server:",o),this.debug("ERROR",1,"Attempted to dispatch payload client->server",r),o}}rpc(e,...r){return this.send({action:"rpc",method:e,args:r})}acceptMessage(e){if(e.origin==window.location.origin)return Promise.resolve();let r=e.data;return!r.TERA||!r.id?Promise.resolve():(this.debug("INFO",3,"Received message",r),r?.action=="response"&&this.acceptPostboxes[r.id]?(r.isError===!0?this.acceptPostboxes[r.id].reject(r.response):this.acceptPostboxes[r.id].resolve(r.response),Promise.resolve()):r?.action=="rpc"?Promise.resolve().then(()=>this[r.method].apply(this,r.args)).then(o=>this.sendRaw({id:r.id,action:"response",response:o})).catch(o=>{console.warn(`TERA-FY client threw on RPC:${r.method}:`,o),this.sendRaw({id:r.id,action:"response",isError:!0,response:o&&o.toString()})}):r?.action=="event"?Promise.resolve().then(()=>this.events.emit(r.event,...r.payload)).catch(o=>{throw console.warn(`TERA-FY client threw while handling emitted event "${r.event}"`,{message:r}),o}):r?.id?(this.debug("INFO",3,`Ignoring message ID ${r.id} - was meant for someone else?`),Promise.resolve()):(this.debug("INFO",3,"Unexpected incoming TERA-FY CLIENT message",{message:r}),Promise.resolve()))}acceptPostboxes={};mountNamespace(e){if(!/^[\w-]+$/.test(e))throw new Error("Namespaces must be alphanumeric + hyphens + underscores");return this.namespaces[e]?Promise.resolve(this.namespaces[e]):Promise.resolve().then(()=>this._mountNamespace(e)).then(()=>this.namespaces[e]||Promise.reject(`teraFy.mountNamespace('${e}') resolved but no namespace has been mounted`))}_mountNamespace(e){throw console.warn(`teraFy._mountNamespace() for ${e} has not been overridden by a TERA-fy plugin, load one to add this functionality for your preferred framework`),new Error("teraFy._mountNamespace() is not supported")}unmountNamespace(e){return this.namespaces[e]?this._unmountNamespace(e):Promise.resolve()}_unmountNamespace(e){console.warn(`teraFy.unbindNamespace() for ${e} has not been overridden by a TERA-fy plugin, load one to add this functionality for your preferred framework`)}constructor(e){e&&this.set(e)}initPromise=null;init(e){if(e&&this.set(e),this.initPromise)return this.initPromise;window.addEventListener("message",this.acceptMessage.bind(this));let r=this;return this.initPromise=Promise.resolve().then(()=>this.settings.session||="tfy-"+this.getEntropicString(16)).then(()=>this.debug("INFO",4,"[0/6] Init","Session",this.settings.session,"against",this.settings.siteUrl)).then(()=>{this.settings.devMode&&(this.settings.debugPaths?this.settings.debugPaths=this.settings.debugPaths.map(o=>Array.isArray(o)?o.join("."):typeof o=="string"?o:(()=>{throw new Error("Unknown path type - should be an array or string in dotted notation")})()):this.settings.debugPaths=null,this.debug("INFO",0,"Watching state paths",this.settings.debugPaths))}).then(()=>this.detectMode()).then(o=>{if(this.debug("INFO",4,"[1/6] Setting client mode to",o),this.settings.mode=o,this.settings.modeOverrides[o])return this.debug("INFO",4,"[1/6] Applying specific config overrides for mode",o),this.settings.modeOverrides[o](this.settings)}).then(()=>this.debug("INFO",4,"[2/6] Injecting comms + styles + methods")).then(()=>Promise.all([this.injectComms(),this.injectStylesheet(),this.injectMethods()])).then(()=>{if(this.settings.verbosity<=1){this.debug("INFO",4,"[3/6] Skip - Server verbosity is already at 1");return}else return this.debug("INFO",4,`[3/6] Set server verbosity to ${this.settings.verbosity}`),this.rpc("setServerVerbosity",this.settings.verbosity)}).then(()=>this.debug("INFO",4,`[4/6] Set server mode to "${this.settings.mode}"`)).then(()=>this.rpc("setServerMode",this.settings.mode=="child"?"embedded":this.settings.mode=="parent"?"frame":this.settings.mode=="popup"?"popup":(()=>{throw new Error(`Unknown server mode "${this.settings.mode}"`)})())).then(()=>this.debug("INFO",4,"[5/6] Run client plugins")).then(()=>Promise.all(this.plugins.map(o=>o.init.call(r,this.settings)))).then(()=>(this.debug("INFO",4,"[6/6] Init complete"),r)).catch(o=>{throw this.debug("WARN",0,"Init process fault",o),o}),this.initPromise}detectMode(){return this.settings.mode!="detect"?Promise.resolve(this.settings.mode):window.self===window.parent?Promise.resolve(this.settings.modeFallback):Promise.resolve().then(()=>this.settings.mode="parent").then(()=>new Promise((e,r)=>{let o=setTimeout(()=>r("TIMEOUT"),this.settings.modeTimeout);this.rpc("handshake").then(()=>clearTimeout(o)).then(()=>e()).catch(r)})).then(()=>"parent").catch(()=>this.settings.modeFallback)}injectComms(){switch(this.settings.mode){case"child":return Promise.resolve().then(()=>new Promise(e=>{this.debug("INFO",2,"Injecting TERA site as iFrame child"),this.dom.el=document.createElement("div"),this.dom.el.id="tera-fy",this.dom.el.classList.toggle("dev-mode",this.settings.devMode),this.dom.el.classList.add("minimized"),document.body.append(this.dom.el),this.dom.el.addEventListener("click",()=>this.dom.el.classList.toggle("minimized")),this.dom.iframe=document.createElement("iframe"),this.dom.iframe.setAttribute("sandbox",this.settings.frameSandbox.join(" ")),this.dom.iframe.addEventListener("load",()=>{this.debug("INFO",3,"Embedded iframe ready"),e()}),this.dom.iframe.src=this.settings.siteUrl,this.dom.el.append(this.dom.iframe)})).then(()=>this.handshakeLoop());case"parent":return this.debug("INFO",2,"Using TERA window parent"),Promise.resolve();case"popup":return this.debug("INFO",2,"Injecting TERA site as a popup window"),this.dom.popup=window.open(this.settings.siteUrl,"_blank","popup=1, location=0, menubar=0, status=0, scrollbars=0, width=500, height=600"),this.handshakeLoop().then(()=>this.debug("INFO",3,"Popup window accepted handshake"));default:throw new Error(`Unsupported mode "${this.settings.mode}" when calling injectComms()`)}}handshakeLoop(e){let r={handshakeInterval:this.settings.handshakeInterval,handshakeTimeout:this.settings.handshakeTimeout,...e};return new Promise((o,a)=>{let i=0,s,n=setTimeout(()=>{clearTimeout(s),a("TIMEOUT")},r.handshakeTimeout),f=()=>{this.debug("INFO",4,"Trying handshake",++i),clearTimeout(s),s=setTimeout(f,r.handshakeInterval),this.rpc("handshake").then(()=>{clearTimeout(n),clearTimeout(s)}).then(()=>o()).catch(a)};f()})}injectStylesheet(){switch(this.settings.mode){case"child":this.dom.stylesheet=document.createElement("style"),this.dom.stylesheet.innerHTML=[":root {","--TERA-accent: #4d659c;","}","#tera-fy {","display: none;","position: fixed;","right: 50px;","bottom: 50px;","width: 300px;","height: 150px;","background: transparent;","body:not(.tera-fy-focus) &.minimized.dev-mode {","background: var(--TERA-accent) !important;","opacity: 0.5;","right: 0px;","bottom: 0px;","width: 30px;","height: 30px;","transition: opacity 0.2s ease-out;","cursor: pointer;","border: none;","border-top-left-radius: 30px;","border-top: 2px solid var(--TERA-accent);","border-left: 2px solid var(--TERA-accent);","display: flex;","justify-content: center;","align-items: center;","&::before {","margin: 2px 0 0 0;",'content: "\u{1F300}";',"color: #FFF;","}","&:hover {","opacity: 1;","}","& > iframe {","display: none;","}","}","body:not(.tera-fy-focus) &:not(.minimized) {","&::before {","display: flex;","align-items: center;","justify-content: center;","cursor: pointer;","background: var(--TERA-accent) !important;","opacity: 0.5;","transition: opacity 0.2s ease-out;","position: absolute;","right: 0px;","bottom: 0px;","width: 20px;","height: 20px;","margin: 2px 0 0 0;",'content: "\u2B68";',"color: #FFF;","border: none;","border-top-left-radius: 30px;","border-top: 2px solid var(--TERA-accent);","border-left: 2px solid var(--TERA-accent);","}","&:hover::before {","opacity: 1;","}","}","&.dev-mode {","display: flex;","border: 5px solid var(--TERA-accent);","background: #FFF;","}","& > iframe {","width: 100%;","height: 100%;","}","}","body.tera-fy-focus {","overflow: hidden;","& #tera-fy {","display: flex !important;","position: fixed !important;","top: 0px !important;","width: 100vw !important;","height: 100vh !important;","left: 0px !important;","z-index: 10000 !important;","}","}"].join(`
|
|
2
|
+
`),document.head.append(this.dom.stylesheet);break;case"parent":case"popup":break;default:throw new Error(`Unsupported mode "${this.settings.mode}" when injectStylesheet()`)}return Promise.resolve()}injectMethods(){return this.methods.forEach(e=>this[e]=this.rpc.bind(this,e)),Promise.resolve()}debug(...e){if(!this.settings.devMode||this.settings.verbosity<1)return;let r="log",o=1;typeof e[0]=="string"&&["INFO","LOG","WARN","ERROR"].includes(e[0])&&(r=e.shift().toLowerCase()),typeof e[0]=="number"&&(o=e[0],e.shift()),!(this.settings.verbosity<o)&&console[r]("%c[TERA-FY CLIENT]","font-weight: bold; color: #ff5722;",...e)}set(e,r,o){let a={ignoreNullish:!0,...o};return typeof e=="string"?(!a.ignoreNullish||r!=null)&&(this.settings[e]=r):Object.assign(this.settings,e),this.toggleDevMode(this.settings.devMode)}setIfDev(e,r,o){return!this.settings.devMode||r===void 0?this:this.set(e,r,o)}use(e,r){let o=typeof e=="function"?new e(this,r):typeof e=="object"?e:typeof e=="string"?(()=>{throw new Error("use(String) is not yet supported")})():(()=>{throw new Error("Expected use() call to be provided with a class initializer")})();return this.mixin(this,o),this.plugins.push(o),this}mixin(e,r){let o=[],a=r;do o.unshift(a);while(a=Object.getPrototypeOf(a));o.forEach(i=>Object.getOwnPropertyNames(i).filter(s=>!["constructor","init","prototype","name"].includes(s)&&!s.startsWith("__")).forEach(s=>{typeof r[s]=="function"?Object.defineProperty(e,s,{enumerable:!1,value:r[s].bind(e)}):e[s]=r[s]}))}toggleDevMode(e="toggle"){return e==="toggle"?this.settings.devMode=!this.settings.devMode:e==="proxy"?Object.assign(this.settings,{devMode:!0,siteUrl:"http://localhost:7334/embed",mode:"child"}):this.settings.devMode=!!e,this.settings.devMode&&(this.settings.restrictOrigin="*"),this.dom?.el&&this.dom.el.classList.toggle("dev-mode",this.settings.devMode),this}toggleFocus(e="toggle"){this.debug("INFO",2,"Request focus",{isFocused:e}),globalThis.document.body.classList.toggle("tera-fy-focus",e==="toggle"?void 0:e)}getEntropicString(e=32){let r=new Uint32Array(4);return window.crypto.getRandomValues(r),btoa(String.fromCodePoint(...new Uint8Array(r.buffer))).replace(/[+/]/g,"").slice(0,e)}selectProjectFile(e){return this.rpc("selectProjectFile",e).then(r=>r&&new N({tera:this,...r}))}getProjectFiles(e){return this.rpc("getProjectFiles",e).then(r=>r.map(o=>new N({tera:this,...o})))}getProjectFile(e,r){return this.rpc("getProjectFile",e,r).then(o=>o&&new N({tera:this,...o}))}createProjectFile(e){return this.rpc("createProjectFile",e).then(r=>r&&new N({tera:this,...r}))}moveProjectFile(e,r,o){return this.rpc("moveProjectFile",e,r,o).then(a=>a?new N({tera:this,...a}):null)}};export{Ht as default};
|
|
3
3
|
/*! Bundled license information:
|
|
4
4
|
|
|
5
5
|
lodash-es/lodash.js:
|
|
6
6
|
(**
|
|
7
7
|
* @license
|
|
8
8
|
* Lodash (Custom Build) <https://lodash.com/>
|
|
9
|
-
* Build: `lodash modularize exports="es" -o ./`
|
|
9
|
+
* Build: `lodash modularize exports="es" --repo lodash/lodash#4.18.1 -o ./`
|
|
10
10
|
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
|
|
11
11
|
* Released under MIT license <https://lodash.com/license>
|
|
12
12
|
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
|
@@ -17,8 +17,8 @@ filesize/dist/filesize.js:
|
|
|
17
17
|
(**
|
|
18
18
|
* filesize
|
|
19
19
|
*
|
|
20
|
-
* @copyright
|
|
20
|
+
* @copyright 2026 Jason Mulligan <jason.mulligan@avoidwork.com>
|
|
21
21
|
* @license BSD-3-Clause
|
|
22
|
-
* @version 11.0.
|
|
22
|
+
* @version 11.0.17
|
|
23
23
|
*)
|
|
24
24
|
*/
|
package/eslint.config.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import {globalIgnores} from 'eslint/config';
|
|
2
|
-
import RulesMFDC
|
|
3
|
-
import tseslint from 'typescript-eslint';
|
|
4
|
-
import globals from 'globals';
|
|
2
|
+
import RulesMFDC from '@momsfriendlydevco/eslint-config';
|
|
5
3
|
|
|
6
|
-
export default
|
|
4
|
+
export default [
|
|
7
5
|
globalIgnores([
|
|
8
6
|
'.*',
|
|
9
7
|
'docs/',
|
|
@@ -25,70 +23,10 @@ export default tseslint.config(
|
|
|
25
23
|
// Include the base configuration from MFDC
|
|
26
24
|
...RulesMFDC,
|
|
27
25
|
|
|
28
|
-
//
|
|
29
|
-
{
|
|
30
|
-
files: ['lib/**/*.ts'], // Apply this only to files in the 'lib' directory
|
|
31
|
-
languageOptions: {
|
|
32
|
-
globals: {
|
|
33
|
-
...globals.browser, // Adds all browser globals like 'window', 'document', etc.
|
|
34
|
-
},
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
|
|
38
|
-
// Add TypeScript specific configurations
|
|
39
|
-
{
|
|
40
|
-
// Apply these settings ONLY to .ts files
|
|
41
|
-
files: ['**/*.ts'],
|
|
42
|
-
// Use recommended TypeScript rules (includes parser/plugin setup)
|
|
43
|
-
// Using recommendedTypeChecked enables rules that require type information
|
|
44
|
-
extends: [
|
|
45
|
-
...tseslint.configs.recommendedTypeChecked,
|
|
46
|
-
],
|
|
47
|
-
// Configure the parser to find your tsconfig.json for type-aware linting
|
|
48
|
-
languageOptions: {
|
|
49
|
-
parserOptions: {
|
|
50
|
-
project: true, // Tells TS ESLint to find and use tsconfig.json
|
|
51
|
-
tsconfigRootDir: import.meta.dirname, // Helps ESLint find tsconfig.json relative to eslint.config.js
|
|
52
|
-
},
|
|
53
|
-
},
|
|
54
|
-
rules: {
|
|
55
|
-
// Not needed with TS
|
|
56
|
-
'jsdoc/require-returns-type': 'off',
|
|
57
|
-
// This rule sometimes gives worse syntax
|
|
58
|
-
'unicorn/prefer-ternary': 'off',
|
|
59
|
-
// Loosen rules until proper TS annotation
|
|
60
|
-
'@typescript-eslint/no-explicit-any': 'off',
|
|
61
|
-
'@typescript-eslint/no-unsafe-return': 'off',
|
|
62
|
-
'@typescript-eslint/no-unsafe-call': 'off',
|
|
63
|
-
'@typescript-eslint/no-unsafe-assignment': 'off',
|
|
64
|
-
'@typescript-eslint/no-unsafe-argument': 'off',
|
|
65
|
-
'@typescript-eslint/no-unsafe-member-access': 'off',
|
|
66
|
-
'@typescript-eslint/prefer-promise-reject-errors': 'off',
|
|
67
|
-
...JSCommon,
|
|
68
|
-
},
|
|
69
|
-
},
|
|
70
|
-
|
|
71
|
-
// Your existing global override - this will apply to both JS and TS files
|
|
72
|
-
// If you only want this for JS, you could add `files: ['**/*.js']` here.
|
|
26
|
+
// Global overrides
|
|
73
27
|
{
|
|
74
28
|
rules: {
|
|
75
29
|
'unicorn/prefer-global-this': 'off',
|
|
76
30
|
},
|
|
77
31
|
},
|
|
78
|
-
|
|
79
|
-
// MC overrides so the TypeScript linter can STFU
|
|
80
|
-
...(['rhino', 'slab', 'snow'].includes(process.env.NODE_ENV) ? [{
|
|
81
|
-
rules: {
|
|
82
|
-
'no-undef': 'warn',
|
|
83
|
-
'prefer-const': 'off',
|
|
84
|
-
'@typescript-eslint/ban-ts-comment': 'off', // Allow `// @ts-ignore`
|
|
85
|
-
'@typescript-eslint/no-explicit-any': 'off', // Stop complaining about `:any` definitions
|
|
86
|
-
'@typescript-eslint/no-unsafe-argument': 'off',
|
|
87
|
-
'@typescript-eslint/no-unsafe-assignment': 'off',
|
|
88
|
-
'@typescript-eslint/no-unsafe-call': 'off',
|
|
89
|
-
'@typescript-eslint/no-unsafe-member-access': 'off',
|
|
90
|
-
'@typescript-eslint/no-unsafe-return': 'off',
|
|
91
|
-
'unicorn/numeric-separators-style': 'warn',
|
|
92
|
-
},
|
|
93
|
-
}] : []),
|
|
94
|
-
);
|
|
32
|
+
];
|